@charset "UTF-8";

/**
 * Foundation for Sites by ZURB
 * Version 6.5.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */

@font-face {
    font-family: 'microsquare-boldext';
    src: url('https://www.wrightmorgan.com/wp-content/themes/FoundationPress/dist/assets/fonts/microsquare-boldext.woff2') format('woff2'),
         url('https://www.wrightmorgan.com/wp-content/themes/FoundationPress/dist/assets/fonts/fonts/microsquare-boldext.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}


.woocommerce-store-notice {
    z-index: 9999999 !important;
}

.nav_product_grid {
    position: relative;
    z-index: 50;
}

.nav_product_grid .woocommerce ul.products {
    margin: 0 !important;
}

.nav_product_grid .woocommerce ul.products li.product {
    height: auto !important;
    margin: 0 0 5px !important;
    /* display: flex !important; */
    /* align-items: center; */
}

.nav_product_grid .woocommerce ul.products li.product .onsale,
.nav_product_grid .woocommerce ul.products li.product .price {
    display: none !important;
}

.nav_product_grid .woocommerce ul.products li.product a {
    display: flex;
    align-items: center;
    transition: all .3s ease-in-out;
}

.nav_product_grid .woocommerce ul.products li.product img {
    position: relative !important;
    width: auto !important;
    height: 35px !important;
    transform: translate3d(0,0,0) !important;
}

.nav_product_grid .woocommerce ul.products li.product h2.woocommerce-loop-product__title {
    position: relative !important;
    display: inline-block !important;
    background-color: transparent !important;
    color: #1f303d !important;
    padding: 4px 0px 4px 8px !important;
    bottom: auto !important;
    /* transform: translate3d(0,0,0) !important; */
    font-size: 1rem !important;
}

.nav_product_grid .woocommerce ul.products li.product h2.woocommerce-loop-product__title::after {
    display: none !important;
}

/* @media screen and (min-width: 40em) {

    .nav_product_grid .woocommerce ul.products li.product img {
        height: 60px !important;
    }

    .nav_product_grid .woocommerce ul.products li.product h2.woocommerce-loop-product__title {
        font-size: 2.2vw !important;
    }

} */

@media screen and (max-width: 1024px) {

    .nav_product_grid .woocommerce ul.products li.product {
        width: 100% !important;
    }

}

@media screen and (min-width: 1025px) {

    .nav_product_grid .woocommerce ul.products li.product img {
        height: 80px !important;
    }

    .nav_product_grid .woocommerce ul.products li.product h2.woocommerce-loop-product__title {
        font-size: 1.8vw !important;
    }

    .nav_product_grid .woocommerce ul.products li.product a:hover {
        opacity: .5;
    }

    .nav_product_grid .woocommerce ul.products li.product {
        padding: 0 5px !important;
    }

}

@media screen and (min-width: 75em) {

    .nav_product_grid .woocommerce ul.products li.product h2.woocommerce-loop-product__title {
        font-size: 1.5vw !important;
    }

}

@media screen and (min-width: 90em) {

    .nav_product_grid .woocommerce ul.products li.product h2.woocommerce-loop-product__title {
        font-size: 1.3vw !important;
    }

}






::placeholder {
    color: #646464 !important;
}

.bottomLine {
    padding-bottom: 20px;
    margin-bottom: 30px;
    border-bottom: 1px solid #bebebe;
}

.sizing_addendum {
    font-size: 60%;
    display: block;
}

.single h1.lit_product_title .sizing_addendum {
    display: none;
}

.location_block {
    margin: 20px auto 30px;
    overflow: hidden;
}

.dealr_list_rappa {
/*    margin-bottom: 15px;*/
    padding: 0 1%;
}

.country_header {
    padding: 12px 15px 15px;
    margin: 20px auto;
    line-height: 1;
    color: #fff;
    background-color: #1f303d;
    border-bottom: 4px solid #53c8e9;
}

.state_header {
    padding: 0 5px 15px;
    margin-bottom: 10px;
    border-bottom: 1px solid #82b9aa;
}

.dealr_line {
    padding-bottom: 12px;
    margin-bottom: 8px;
    border-bottom: 1px solid #ddd;
}

.dealr_moniker,
.dealr_digits,
.dealr_website {
    position: relative;
    display: inline-block;
    line-height: 1.9;
}

.dealr_moniker:before,
.dealr_digits:before,
.dealr_website:before {
    content: '';
    display: inline-block;
    top: 3px;
    width: 20px;
    height: 20px;
    position: relative;
    margin-right: 5px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}


.dealr_moniker:before {
    background-image: url('/images/dealr_icon_business.svg');
}

.dealr_digits:before {
    background-image: url('/images/dealr_icon_phone.svg');
}

.dealr_website:before {
    background-image: url('/images/dealr_icon_web.svg');
}


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=90em";
}

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

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

body {
    margin: 0;
    padding: 0;
    background: #fefefe;
    font-family: "Work Sans", sans-serif;
    font-weight: 400;
    line-height: 1.5;
    color: #545454;
    -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: 0;
}

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

.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;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    border-radius: 0;
    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: 100rem;
    margin-right: auto;
    margin-left: auto;
}

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

.row::after {
    clear: both;
}

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

.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;
    }
}

@media screen and (min-width: 75em) {
    .row .row {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem;
    }
}

@media screen and (min-width: 90em) {
    .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.gutter-small > .column,
.row.gutter-small > .columns {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
}

.row.gutter-medium > .column,
.row.gutter-medium > .columns {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
}

.column,
.columns {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
}

@media print,
screen and (min-width: 40em) {

    .column,
    .columns {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }
}

.column,
.columns,
.column:last-child:not(:first-child),
.columns:last-child:not(:first-child) {
    float: left;
    clear: none;
}

.column:last-child:not(:first-child),
.columns:last-child:not(:first-child) {
    float: right;
}

.column.end:last-child:last-child,
.end.columns:last-child:last-child {
    float: left;
}

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

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

.small-1 {
    width: 8.33333%;
}

.small-push-1 {
    position: relative;
    left: 8.33333%;
}

.small-pull-1 {
    position: relative;
    left: -8.33333%;
}

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

.small-2 {
    width: 16.66667%;
}

.small-push-2 {
    position: relative;
    left: 16.66667%;
}

.small-pull-2 {
    position: relative;
    left: -16.66667%;
}

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

.small-3 {
    width: 25%;
}

.small-push-3 {
    position: relative;
    left: 25%;
}

.small-pull-3 {
    position: relative;
    left: -25%;
}

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

.small-4 {
    width: 33.33333%;
}

.small-push-4 {
    position: relative;
    left: 33.33333%;
}

.small-pull-4 {
    position: relative;
    left: -33.33333%;
}

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

.small-5 {
    width: 41.66667%;
}

.small-push-5 {
    position: relative;
    left: 41.66667%;
}

.small-pull-5 {
    position: relative;
    left: -41.66667%;
}

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

.small-6 {
    width: 50%;
}

.small-push-6 {
    position: relative;
    left: 50%;
}

.small-pull-6 {
    position: relative;
    left: -50%;
}

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

.small-7 {
    width: 58.33333%;
}

.small-push-7 {
    position: relative;
    left: 58.33333%;
}

.small-pull-7 {
    position: relative;
    left: -58.33333%;
}

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

.small-8 {
    width: 66.66667%;
}

.small-push-8 {
    position: relative;
    left: 66.66667%;
}

.small-pull-8 {
    position: relative;
    left: -66.66667%;
}

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

.small-9 {
    width: 75%;
}

.small-push-9 {
    position: relative;
    left: 75%;
}

.small-pull-9 {
    position: relative;
    left: -75%;
}

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

.small-10 {
    width: 83.33333%;
}

.small-push-10 {
    position: relative;
    left: 83.33333%;
}

.small-pull-10 {
    position: relative;
    left: -83.33333%;
}

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

.small-11 {
    width: 91.66667%;
}

.small-push-11 {
    position: relative;
    left: 91.66667%;
}

.small-pull-11 {
    position: relative;
    left: -91.66667%;
}

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

.small-12 {
    width: 100%;
}

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

.small-up-1 > .column,
.small-up-1 > .columns {
    float: left;
    width: 100%;
}

.small-up-1 > .column:nth-of-type(1n),
.small-up-1 > .columns:nth-of-type(1n) {
    clear: none;
}

.small-up-1 > .column:nth-of-type(1n+1),
.small-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
}

.small-up-1 > .column:last-child,
.small-up-1 > .columns:last-child {
    float: left;
}

.small-up-2 > .column,
.small-up-2 > .columns {
    float: left;
    width: 50%;
}

.small-up-2 > .column:nth-of-type(1n),
.small-up-2 > .columns:nth-of-type(1n) {
    clear: none;
}

.small-up-2 > .column:nth-of-type(2n+1),
.small-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
}

.small-up-2 > .column:last-child,
.small-up-2 > .columns:last-child {
    float: left;
}

.small-up-3 > .column,
.small-up-3 > .columns {
    float: left;
    width: 33.33333%;
}

.small-up-3 > .column:nth-of-type(1n),
.small-up-3 > .columns:nth-of-type(1n) {
    clear: none;
}

.small-up-3 > .column:nth-of-type(3n+1),
.small-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
}

.small-up-3 > .column:last-child,
.small-up-3 > .columns:last-child {
    float: left;
}

.small-up-4 > .column,
.small-up-4 > .columns {
    float: left;
    width: 25%;
}

.small-up-4 > .column:nth-of-type(1n),
.small-up-4 > .columns:nth-of-type(1n) {
    clear: none;
}

.small-up-4 > .column:nth-of-type(4n+1),
.small-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
}

.small-up-4 > .column:last-child,
.small-up-4 > .columns:last-child {
    float: left;
}

.small-up-5 > .column,
.small-up-5 > .columns {
    float: left;
    width: 20%;
}

.small-up-5 > .column:nth-of-type(1n),
.small-up-5 > .columns:nth-of-type(1n) {
    clear: none;
}

.small-up-5 > .column:nth-of-type(5n+1),
.small-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
}

.small-up-5 > .column:last-child,
.small-up-5 > .columns:last-child {
    float: left;
}

.small-up-6 > .column,
.small-up-6 > .columns {
    float: left;
    width: 16.66667%;
}

.small-up-6 > .column:nth-of-type(1n),
.small-up-6 > .columns:nth-of-type(1n) {
    clear: none;
}

.small-up-6 > .column:nth-of-type(6n+1),
.small-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
}

.small-up-6 > .column:last-child,
.small-up-6 > .columns:last-child {
    float: left;
}

.small-up-7 > .column,
.small-up-7 > .columns {
    float: left;
    width: 14.28571%;
}

.small-up-7 > .column:nth-of-type(1n),
.small-up-7 > .columns:nth-of-type(1n) {
    clear: none;
}

.small-up-7 > .column:nth-of-type(7n+1),
.small-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
}

.small-up-7 > .column:last-child,
.small-up-7 > .columns:last-child {
    float: left;
}

.small-up-8 > .column,
.small-up-8 > .columns {
    float: left;
    width: 12.5%;
}

.small-up-8 > .column:nth-of-type(1n),
.small-up-8 > .columns:nth-of-type(1n) {
    clear: none;
}

.small-up-8 > .column:nth-of-type(8n+1),
.small-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
}

.small-up-8 > .column:last-child,
.small-up-8 > .columns:last-child {
    float: left;
}

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

.small-collapse .row {
    margin-right: 0;
    margin-left: 0;
}

.expanded.row .small-collapse.row {
    margin-right: 0;
    margin-left: 0;
}

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

.small-centered {
    margin-right: auto;
    margin-left: auto;
}

.small-centered,
.small-centered:last-child:not(:first-child) {
    float: none;
    clear: both;
}

.small-uncentered,
.small-push-0,
.small-pull-0 {
    position: static;
    margin-right: 0;
    margin-left: 0;
}

.small-uncentered,
.small-uncentered:last-child:not(:first-child),
.small-push-0,
.small-push-0:last-child:not(:first-child),
.small-pull-0,
.small-pull-0:last-child:not(:first-child) {
    float: left;
    clear: none;
}

.small-uncentered:last-child:not(:first-child),
.small-push-0:last-child:not(:first-child),
.small-pull-0:last-child:not(:first-child) {
    float: right;
}

@media print,
screen and (min-width: 40em) {
    .medium-1 {
        width: 8.33333%;
    }

    .medium-push-1 {
        position: relative;
        left: 8.33333%;
    }

    .medium-pull-1 {
        position: relative;
        left: -8.33333%;
    }

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

    .medium-2 {
        width: 16.66667%;
    }

    .medium-push-2 {
        position: relative;
        left: 16.66667%;
    }

    .medium-pull-2 {
        position: relative;
        left: -16.66667%;
    }

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

    .medium-3 {
        width: 25%;
    }

    .medium-push-3 {
        position: relative;
        left: 25%;
    }

    .medium-pull-3 {
        position: relative;
        left: -25%;
    }

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

    .medium-4 {
        width: 33.33333%;
    }

    .medium-push-4 {
        position: relative;
        left: 33.33333%;
    }

    .medium-pull-4 {
        position: relative;
        left: -33.33333%;
    }

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

    .medium-5 {
        width: 41.66667%;
    }

    .medium-push-5 {
        position: relative;
        left: 41.66667%;
    }

    .medium-pull-5 {
        position: relative;
        left: -41.66667%;
    }

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

    .medium-6 {
        width: 50%;
    }

    .medium-push-6 {
        position: relative;
        left: 50%;
    }

    .medium-pull-6 {
        position: relative;
        left: -50%;
    }

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

    .medium-7 {
        width: 58.33333%;
    }

    .medium-push-7 {
        position: relative;
        left: 58.33333%;
    }

    .medium-pull-7 {
        position: relative;
        left: -58.33333%;
    }

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

    .medium-8 {
        width: 66.66667%;
    }

    .medium-push-8 {
        position: relative;
        left: 66.66667%;
    }

    .medium-pull-8 {
        position: relative;
        left: -66.66667%;
    }

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

    .medium-9 {
        width: 75%;
    }

    .medium-push-9 {
        position: relative;
        left: 75%;
    }

    .medium-pull-9 {
        position: relative;
        left: -75%;
    }

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

    .medium-10 {
        width: 83.33333%;
    }

    .medium-push-10 {
        position: relative;
        left: 83.33333%;
    }

    .medium-pull-10 {
        position: relative;
        left: -83.33333%;
    }

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

    .medium-11 {
        width: 91.66667%;
    }

    .medium-push-11 {
        position: relative;
        left: 91.66667%;
    }

    .medium-pull-11 {
        position: relative;
        left: -91.66667%;
    }

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

    .medium-12 {
        width: 100%;
    }

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

    .medium-up-1 > .column,
    .medium-up-1 > .columns {
        float: left;
        width: 100%;
    }

    .medium-up-1 > .column:nth-of-type(1n),
    .medium-up-1 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .medium-up-1 > .column:nth-of-type(1n+1),
    .medium-up-1 > .columns:nth-of-type(1n+1) {
        clear: both;
    }

    .medium-up-1 > .column:last-child,
    .medium-up-1 > .columns:last-child {
        float: left;
    }

    .medium-up-2 > .column,
    .medium-up-2 > .columns {
        float: left;
        width: 50%;
    }

    .medium-up-2 > .column:nth-of-type(1n),
    .medium-up-2 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .medium-up-2 > .column:nth-of-type(2n+1),
    .medium-up-2 > .columns:nth-of-type(2n+1) {
        clear: both;
    }

    .medium-up-2 > .column:last-child,
    .medium-up-2 > .columns:last-child {
        float: left;
    }

    .medium-up-3 > .column,
    .medium-up-3 > .columns {
        float: left;
        width: 33.33333%;
    }

    .medium-up-3 > .column:nth-of-type(1n),
    .medium-up-3 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .medium-up-3 > .column:nth-of-type(3n+1),
    .medium-up-3 > .columns:nth-of-type(3n+1) {
        clear: both;
    }

    .medium-up-3 > .column:last-child,
    .medium-up-3 > .columns:last-child {
        float: left;
    }

    .medium-up-4 > .column,
    .medium-up-4 > .columns {
        float: left;
        width: 25%;
    }

    .medium-up-4 > .column:nth-of-type(1n),
    .medium-up-4 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .medium-up-4 > .column:nth-of-type(4n+1),
    .medium-up-4 > .columns:nth-of-type(4n+1) {
        clear: both;
    }

    .medium-up-4 > .column:last-child,
    .medium-up-4 > .columns:last-child {
        float: left;
    }

    .medium-up-5 > .column,
    .medium-up-5 > .columns {
        float: left;
        width: 20%;
    }

    .medium-up-5 > .column:nth-of-type(1n),
    .medium-up-5 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .medium-up-5 > .column:nth-of-type(5n+1),
    .medium-up-5 > .columns:nth-of-type(5n+1) {
        clear: both;
    }

    .medium-up-5 > .column:last-child,
    .medium-up-5 > .columns:last-child {
        float: left;
    }

    .medium-up-6 > .column,
    .medium-up-6 > .columns {
        float: left;
        width: 16.66667%;
    }

    .medium-up-6 > .column:nth-of-type(1n),
    .medium-up-6 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .medium-up-6 > .column:nth-of-type(6n+1),
    .medium-up-6 > .columns:nth-of-type(6n+1) {
        clear: both;
    }

    .medium-up-6 > .column:last-child,
    .medium-up-6 > .columns:last-child {
        float: left;
    }

    .medium-up-7 > .column,
    .medium-up-7 > .columns {
        float: left;
        width: 14.28571%;
    }

    .medium-up-7 > .column:nth-of-type(1n),
    .medium-up-7 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .medium-up-7 > .column:nth-of-type(7n+1),
    .medium-up-7 > .columns:nth-of-type(7n+1) {
        clear: both;
    }

    .medium-up-7 > .column:last-child,
    .medium-up-7 > .columns:last-child {
        float: left;
    }

    .medium-up-8 > .column,
    .medium-up-8 > .columns {
        float: left;
        width: 12.5%;
    }

    .medium-up-8 > .column:nth-of-type(1n),
    .medium-up-8 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .medium-up-8 > .column:nth-of-type(8n+1),
    .medium-up-8 > .columns:nth-of-type(8n+1) {
        clear: both;
    }

    .medium-up-8 > .column:last-child,
    .medium-up-8 > .columns:last-child {
        float: left;
    }

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

    .medium-collapse .row {
        margin-right: 0;
        margin-left: 0;
    }

    .expanded.row .medium-collapse.row {
        margin-right: 0;
        margin-left: 0;
    }

    .medium-uncollapse > .column,
    .medium-uncollapse > .columns {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }

    .medium-centered {
        margin-right: auto;
        margin-left: auto;
    }

    .medium-centered,
    .medium-centered:last-child:not(:first-child) {
        float: none;
        clear: both;
    }

    .medium-uncentered,
    .medium-push-0,
    .medium-pull-0 {
        position: static;
        margin-right: 0;
        margin-left: 0;
    }

    .medium-uncentered,
    .medium-uncentered:last-child:not(:first-child),
    .medium-push-0,
    .medium-push-0:last-child:not(:first-child),
    .medium-pull-0,
    .medium-pull-0:last-child:not(:first-child) {
        float: left;
        clear: none;
    }

    .medium-uncentered:last-child:not(:first-child),
    .medium-push-0:last-child:not(:first-child),
    .medium-pull-0:last-child:not(:first-child) {
        float: right;
    }
}

@media print,
screen and (min-width: 64em) {
    .large-1 {
        width: 8.33333%;
    }

    .large-push-1 {
        position: relative;
        left: 8.33333%;
    }

    .large-pull-1 {
        position: relative;
        left: -8.33333%;
    }

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

    .large-2 {
        width: 16.66667%;
    }

    .large-push-2 {
        position: relative;
        left: 16.66667%;
    }

    .large-pull-2 {
        position: relative;
        left: -16.66667%;
    }

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

    .large-3 {
        width: 25%;
    }

    .large-push-3 {
        position: relative;
        left: 25%;
    }

    .large-pull-3 {
        position: relative;
        left: -25%;
    }

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

    .large-4 {
        width: 33.33333%;
    }

    .large-push-4 {
        position: relative;
        left: 33.33333%;
    }

    .large-pull-4 {
        position: relative;
        left: -33.33333%;
    }

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

    .large-5 {
        width: 41.66667%;
    }

    .large-push-5 {
        position: relative;
        left: 41.66667%;
    }

    .large-pull-5 {
        position: relative;
        left: -41.66667%;
    }

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

    .large-6 {
        width: 50%;
    }

    .large-push-6 {
        position: relative;
        left: 50%;
    }

    .large-pull-6 {
        position: relative;
        left: -50%;
    }

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

    .large-7 {
        width: 58.33333%;
    }

    .large-push-7 {
        position: relative;
        left: 58.33333%;
    }

    .large-pull-7 {
        position: relative;
        left: -58.33333%;
    }

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

    .large-8 {
        width: 66.66667%;
    }

    .large-push-8 {
        position: relative;
        left: 66.66667%;
    }

    .large-pull-8 {
        position: relative;
        left: -66.66667%;
    }

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

    .large-9 {
        width: 75%;
    }

    .large-push-9 {
        position: relative;
        left: 75%;
    }

    .large-pull-9 {
        position: relative;
        left: -75%;
    }

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

    .large-10 {
        width: 83.33333%;
    }

    .large-push-10 {
        position: relative;
        left: 83.33333%;
    }

    .large-pull-10 {
        position: relative;
        left: -83.33333%;
    }

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

    .large-11 {
        width: 91.66667%;
    }

    .large-push-11 {
        position: relative;
        left: 91.66667%;
    }

    .large-pull-11 {
        position: relative;
        left: -91.66667%;
    }

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

    .large-12 {
        width: 100%;
    }

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

    .large-up-1 > .column,
    .large-up-1 > .columns {
        float: left;
        width: 100%;
    }

    .large-up-1 > .column:nth-of-type(1n),
    .large-up-1 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .large-up-1 > .column:nth-of-type(1n+1),
    .large-up-1 > .columns:nth-of-type(1n+1) {
        clear: both;
    }

    .large-up-1 > .column:last-child,
    .large-up-1 > .columns:last-child {
        float: left;
    }

    .large-up-2 > .column,
    .large-up-2 > .columns {
        float: left;
        width: 50%;
    }

    .large-up-2 > .column:nth-of-type(1n),
    .large-up-2 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .large-up-2 > .column:nth-of-type(2n+1),
    .large-up-2 > .columns:nth-of-type(2n+1) {
        clear: both;
    }

    .large-up-2 > .column:last-child,
    .large-up-2 > .columns:last-child {
        float: left;
    }

    .large-up-3 > .column,
    .large-up-3 > .columns {
        float: left;
        width: 33.33333%;
    }

    .large-up-3 > .column:nth-of-type(1n),
    .large-up-3 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .large-up-3 > .column:nth-of-type(3n+1),
    .large-up-3 > .columns:nth-of-type(3n+1) {
        clear: both;
    }

    .large-up-3 > .column:last-child,
    .large-up-3 > .columns:last-child {
        float: left;
    }

    .large-up-4 > .column,
    .large-up-4 > .columns {
        float: left;
        width: 25%;
    }

    .large-up-4 > .column:nth-of-type(1n),
    .large-up-4 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .large-up-4 > .column:nth-of-type(4n+1),
    .large-up-4 > .columns:nth-of-type(4n+1) {
        clear: both;
    }

    .large-up-4 > .column:last-child,
    .large-up-4 > .columns:last-child {
        float: left;
    }

    .large-up-5 > .column,
    .large-up-5 > .columns {
        float: left;
        width: 20%;
    }

    .large-up-5 > .column:nth-of-type(1n),
    .large-up-5 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .large-up-5 > .column:nth-of-type(5n+1),
    .large-up-5 > .columns:nth-of-type(5n+1) {
        clear: both;
    }

    .large-up-5 > .column:last-child,
    .large-up-5 > .columns:last-child {
        float: left;
    }

    .large-up-6 > .column,
    .large-up-6 > .columns {
        float: left;
        width: 16.66667%;
    }

    .large-up-6 > .column:nth-of-type(1n),
    .large-up-6 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .large-up-6 > .column:nth-of-type(6n+1),
    .large-up-6 > .columns:nth-of-type(6n+1) {
        clear: both;
    }

    .large-up-6 > .column:last-child,
    .large-up-6 > .columns:last-child {
        float: left;
    }

    .large-up-7 > .column,
    .large-up-7 > .columns {
        float: left;
        width: 14.28571%;
    }

    .large-up-7 > .column:nth-of-type(1n),
    .large-up-7 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .large-up-7 > .column:nth-of-type(7n+1),
    .large-up-7 > .columns:nth-of-type(7n+1) {
        clear: both;
    }

    .large-up-7 > .column:last-child,
    .large-up-7 > .columns:last-child {
        float: left;
    }

    .large-up-8 > .column,
    .large-up-8 > .columns {
        float: left;
        width: 12.5%;
    }

    .large-up-8 > .column:nth-of-type(1n),
    .large-up-8 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .large-up-8 > .column:nth-of-type(8n+1),
    .large-up-8 > .columns:nth-of-type(8n+1) {
        clear: both;
    }

    .large-up-8 > .column:last-child,
    .large-up-8 > .columns:last-child {
        float: left;
    }

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

    .large-collapse .row {
        margin-right: 0;
        margin-left: 0;
    }

    .expanded.row .large-collapse.row {
        margin-right: 0;
        margin-left: 0;
    }

    .large-uncollapse > .column,
    .large-uncollapse > .columns {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }

    .large-centered {
        margin-right: auto;
        margin-left: auto;
    }

    .large-centered,
    .large-centered:last-child:not(:first-child) {
        float: none;
        clear: both;
    }

    .large-uncentered,
    .large-push-0,
    .large-pull-0 {
        position: static;
        margin-right: 0;
        margin-left: 0;
    }

    .large-uncentered,
    .large-uncentered:last-child:not(:first-child),
    .large-push-0,
    .large-push-0:last-child:not(:first-child),
    .large-pull-0,
    .large-pull-0:last-child:not(:first-child) {
        float: left;
        clear: none;
    }

    .large-uncentered:last-child:not(:first-child),
    .large-push-0:last-child:not(:first-child),
    .large-pull-0:last-child:not(:first-child) {
        float: right;
    }
}

@media screen and (min-width: 75em) {
    .xlarge-1 {
        width: 8.33333%;
    }

    .xlarge-push-1 {
        position: relative;
        left: 8.33333%;
    }

    .xlarge-pull-1 {
        position: relative;
        left: -8.33333%;
    }

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

    .xlarge-2 {
        width: 16.66667%;
    }

    .xlarge-push-2 {
        position: relative;
        left: 16.66667%;
    }

    .xlarge-pull-2 {
        position: relative;
        left: -16.66667%;
    }

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

    .xlarge-3 {
        width: 25%;
    }

    .xlarge-push-3 {
        position: relative;
        left: 25%;
    }

    .xlarge-pull-3 {
        position: relative;
        left: -25%;
    }

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

    .xlarge-4 {
        width: 33.33333%;
    }

    .xlarge-push-4 {
        position: relative;
        left: 33.33333%;
    }

    .xlarge-pull-4 {
        position: relative;
        left: -33.33333%;
    }

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

    .xlarge-5 {
        width: 41.66667%;
    }

    .xlarge-push-5 {
        position: relative;
        left: 41.66667%;
    }

    .xlarge-pull-5 {
        position: relative;
        left: -41.66667%;
    }

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

    .xlarge-6 {
        width: 50%;
    }

    .xlarge-push-6 {
        position: relative;
        left: 50%;
    }

    .xlarge-pull-6 {
        position: relative;
        left: -50%;
    }

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

    .xlarge-7 {
        width: 58.33333%;
    }

    .xlarge-push-7 {
        position: relative;
        left: 58.33333%;
    }

    .xlarge-pull-7 {
        position: relative;
        left: -58.33333%;
    }

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

    .xlarge-8 {
        width: 66.66667%;
    }

    .xlarge-push-8 {
        position: relative;
        left: 66.66667%;
    }

    .xlarge-pull-8 {
        position: relative;
        left: -66.66667%;
    }

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

    .xlarge-9 {
        width: 75%;
    }

    .xlarge-push-9 {
        position: relative;
        left: 75%;
    }

    .xlarge-pull-9 {
        position: relative;
        left: -75%;
    }

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

    .xlarge-10 {
        width: 83.33333%;
    }

    .xlarge-push-10 {
        position: relative;
        left: 83.33333%;
    }

    .xlarge-pull-10 {
        position: relative;
        left: -83.33333%;
    }

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

    .xlarge-11 {
        width: 91.66667%;
    }

    .xlarge-push-11 {
        position: relative;
        left: 91.66667%;
    }

    .xlarge-pull-11 {
        position: relative;
        left: -91.66667%;
    }

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

    .xlarge-12 {
        width: 100%;
    }

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

    .xlarge-up-1 > .column,
    .xlarge-up-1 > .columns {
        float: left;
        width: 100%;
    }

    .xlarge-up-1 > .column:nth-of-type(1n),
    .xlarge-up-1 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .xlarge-up-1 > .column:nth-of-type(1n+1),
    .xlarge-up-1 > .columns:nth-of-type(1n+1) {
        clear: both;
    }

    .xlarge-up-1 > .column:last-child,
    .xlarge-up-1 > .columns:last-child {
        float: left;
    }

    .xlarge-up-2 > .column,
    .xlarge-up-2 > .columns {
        float: left;
        width: 50%;
    }

    .xlarge-up-2 > .column:nth-of-type(1n),
    .xlarge-up-2 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .xlarge-up-2 > .column:nth-of-type(2n+1),
    .xlarge-up-2 > .columns:nth-of-type(2n+1) {
        clear: both;
    }

    .xlarge-up-2 > .column:last-child,
    .xlarge-up-2 > .columns:last-child {
        float: left;
    }

    .xlarge-up-3 > .column,
    .xlarge-up-3 > .columns {
        float: left;
        width: 33.33333%;
    }

    .xlarge-up-3 > .column:nth-of-type(1n),
    .xlarge-up-3 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .xlarge-up-3 > .column:nth-of-type(3n+1),
    .xlarge-up-3 > .columns:nth-of-type(3n+1) {
        clear: both;
    }

    .xlarge-up-3 > .column:last-child,
    .xlarge-up-3 > .columns:last-child {
        float: left;
    }

    .xlarge-up-4 > .column,
    .xlarge-up-4 > .columns {
        float: left;
        width: 25%;
    }

    .xlarge-up-4 > .column:nth-of-type(1n),
    .xlarge-up-4 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .xlarge-up-4 > .column:nth-of-type(4n+1),
    .xlarge-up-4 > .columns:nth-of-type(4n+1) {
        clear: both;
    }

    .xlarge-up-4 > .column:last-child,
    .xlarge-up-4 > .columns:last-child {
        float: left;
    }

    .xlarge-up-5 > .column,
    .xlarge-up-5 > .columns {
        float: left;
        width: 20%;
    }

    .xlarge-up-5 > .column:nth-of-type(1n),
    .xlarge-up-5 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .xlarge-up-5 > .column:nth-of-type(5n+1),
    .xlarge-up-5 > .columns:nth-of-type(5n+1) {
        clear: both;
    }

    .xlarge-up-5 > .column:last-child,
    .xlarge-up-5 > .columns:last-child {
        float: left;
    }

    .xlarge-up-6 > .column,
    .xlarge-up-6 > .columns {
        float: left;
        width: 16.66667%;
    }

    .xlarge-up-6 > .column:nth-of-type(1n),
    .xlarge-up-6 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .xlarge-up-6 > .column:nth-of-type(6n+1),
    .xlarge-up-6 > .columns:nth-of-type(6n+1) {
        clear: both;
    }

    .xlarge-up-6 > .column:last-child,
    .xlarge-up-6 > .columns:last-child {
        float: left;
    }

    .xlarge-up-7 > .column,
    .xlarge-up-7 > .columns {
        float: left;
        width: 14.28571%;
    }

    .xlarge-up-7 > .column:nth-of-type(1n),
    .xlarge-up-7 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .xlarge-up-7 > .column:nth-of-type(7n+1),
    .xlarge-up-7 > .columns:nth-of-type(7n+1) {
        clear: both;
    }

    .xlarge-up-7 > .column:last-child,
    .xlarge-up-7 > .columns:last-child {
        float: left;
    }

    .xlarge-up-8 > .column,
    .xlarge-up-8 > .columns {
        float: left;
        width: 12.5%;
    }

    .xlarge-up-8 > .column:nth-of-type(1n),
    .xlarge-up-8 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .xlarge-up-8 > .column:nth-of-type(8n+1),
    .xlarge-up-8 > .columns:nth-of-type(8n+1) {
        clear: both;
    }

    .xlarge-up-8 > .column:last-child,
    .xlarge-up-8 > .columns:last-child {
        float: left;
    }

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

    .xlarge-collapse .row {
        margin-right: 0;
        margin-left: 0;
    }

    .expanded.row .xlarge-collapse.row {
        margin-right: 0;
        margin-left: 0;
    }

    .xlarge-uncollapse > .column,
    .xlarge-uncollapse > .columns {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }

    .xlarge-centered {
        margin-right: auto;
        margin-left: auto;
    }

    .xlarge-centered,
    .xlarge-centered:last-child:not(:first-child) {
        float: none;
        clear: both;
    }

    .xlarge-uncentered,
    .xlarge-push-0,
    .xlarge-pull-0 {
        position: static;
        margin-right: 0;
        margin-left: 0;
    }

    .xlarge-uncentered,
    .xlarge-uncentered:last-child:not(:first-child),
    .xlarge-push-0,
    .xlarge-push-0:last-child:not(:first-child),
    .xlarge-pull-0,
    .xlarge-pull-0:last-child:not(:first-child) {
        float: left;
        clear: none;
    }

    .xlarge-uncentered:last-child:not(:first-child),
    .xlarge-push-0:last-child:not(:first-child),
    .xlarge-pull-0:last-child:not(:first-child) {
        float: right;
    }
}

@media screen and (min-width: 90em) {
    .xxlarge-1 {
        width: 8.33333%;
    }

    .xxlarge-push-1 {
        position: relative;
        left: 8.33333%;
    }

    .xxlarge-pull-1 {
        position: relative;
        left: -8.33333%;
    }

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

    .xxlarge-2 {
        width: 16.66667%;
    }

    .xxlarge-push-2 {
        position: relative;
        left: 16.66667%;
    }

    .xxlarge-pull-2 {
        position: relative;
        left: -16.66667%;
    }

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

    .xxlarge-3 {
        width: 25%;
    }

    .xxlarge-push-3 {
        position: relative;
        left: 25%;
    }

    .xxlarge-pull-3 {
        position: relative;
        left: -25%;
    }

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

    .xxlarge-4 {
        width: 33.33333%;
    }

    .xxlarge-push-4 {
        position: relative;
        left: 33.33333%;
    }

    .xxlarge-pull-4 {
        position: relative;
        left: -33.33333%;
    }

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

    .xxlarge-5 {
        width: 41.66667%;
    }

    .xxlarge-push-5 {
        position: relative;
        left: 41.66667%;
    }

    .xxlarge-pull-5 {
        position: relative;
        left: -41.66667%;
    }

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

    .xxlarge-6 {
        width: 50%;
    }

    .xxlarge-push-6 {
        position: relative;
        left: 50%;
    }

    .xxlarge-pull-6 {
        position: relative;
        left: -50%;
    }

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

    .xxlarge-7 {
        width: 58.33333%;
    }

    .xxlarge-push-7 {
        position: relative;
        left: 58.33333%;
    }

    .xxlarge-pull-7 {
        position: relative;
        left: -58.33333%;
    }

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

    .xxlarge-8 {
        width: 66.66667%;
    }

    .xxlarge-push-8 {
        position: relative;
        left: 66.66667%;
    }

    .xxlarge-pull-8 {
        position: relative;
        left: -66.66667%;
    }

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

    .xxlarge-9 {
        width: 75%;
    }

    .xxlarge-push-9 {
        position: relative;
        left: 75%;
    }

    .xxlarge-pull-9 {
        position: relative;
        left: -75%;
    }

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

    .xxlarge-10 {
        width: 83.33333%;
    }

    .xxlarge-push-10 {
        position: relative;
        left: 83.33333%;
    }

    .xxlarge-pull-10 {
        position: relative;
        left: -83.33333%;
    }

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

    .xxlarge-11 {
        width: 91.66667%;
    }

    .xxlarge-push-11 {
        position: relative;
        left: 91.66667%;
    }

    .xxlarge-pull-11 {
        position: relative;
        left: -91.66667%;
    }

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

    .xxlarge-12 {
        width: 100%;
    }

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

    .xxlarge-up-1 > .column,
    .xxlarge-up-1 > .columns {
        float: left;
        width: 100%;
    }

    .xxlarge-up-1 > .column:nth-of-type(1n),
    .xxlarge-up-1 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .xxlarge-up-1 > .column:nth-of-type(1n+1),
    .xxlarge-up-1 > .columns:nth-of-type(1n+1) {
        clear: both;
    }

    .xxlarge-up-1 > .column:last-child,
    .xxlarge-up-1 > .columns:last-child {
        float: left;
    }

    .xxlarge-up-2 > .column,
    .xxlarge-up-2 > .columns {
        float: left;
        width: 50%;
    }

    .xxlarge-up-2 > .column:nth-of-type(1n),
    .xxlarge-up-2 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .xxlarge-up-2 > .column:nth-of-type(2n+1),
    .xxlarge-up-2 > .columns:nth-of-type(2n+1) {
        clear: both;
    }

    .xxlarge-up-2 > .column:last-child,
    .xxlarge-up-2 > .columns:last-child {
        float: left;
    }

    .xxlarge-up-3 > .column,
    .xxlarge-up-3 > .columns {
        float: left;
        width: 33.33333%;
    }

    .xxlarge-up-3 > .column:nth-of-type(1n),
    .xxlarge-up-3 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .xxlarge-up-3 > .column:nth-of-type(3n+1),
    .xxlarge-up-3 > .columns:nth-of-type(3n+1) {
        clear: both;
    }

    .xxlarge-up-3 > .column:last-child,
    .xxlarge-up-3 > .columns:last-child {
        float: left;
    }

    .xxlarge-up-4 > .column,
    .xxlarge-up-4 > .columns {
        float: left;
        width: 25%;
    }

    .xxlarge-up-4 > .column:nth-of-type(1n),
    .xxlarge-up-4 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .xxlarge-up-4 > .column:nth-of-type(4n+1),
    .xxlarge-up-4 > .columns:nth-of-type(4n+1) {
        clear: both;
    }

    .xxlarge-up-4 > .column:last-child,
    .xxlarge-up-4 > .columns:last-child {
        float: left;
    }

    .xxlarge-up-5 > .column,
    .xxlarge-up-5 > .columns {
        float: left;
        width: 20%;
    }

    .xxlarge-up-5 > .column:nth-of-type(1n),
    .xxlarge-up-5 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .xxlarge-up-5 > .column:nth-of-type(5n+1),
    .xxlarge-up-5 > .columns:nth-of-type(5n+1) {
        clear: both;
    }

    .xxlarge-up-5 > .column:last-child,
    .xxlarge-up-5 > .columns:last-child {
        float: left;
    }

    .xxlarge-up-6 > .column,
    .xxlarge-up-6 > .columns {
        float: left;
        width: 16.66667%;
    }

    .xxlarge-up-6 > .column:nth-of-type(1n),
    .xxlarge-up-6 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .xxlarge-up-6 > .column:nth-of-type(6n+1),
    .xxlarge-up-6 > .columns:nth-of-type(6n+1) {
        clear: both;
    }

    .xxlarge-up-6 > .column:last-child,
    .xxlarge-up-6 > .columns:last-child {
        float: left;
    }

    .xxlarge-up-7 > .column,
    .xxlarge-up-7 > .columns {
        float: left;
        width: 14.28571%;
    }

    .xxlarge-up-7 > .column:nth-of-type(1n),
    .xxlarge-up-7 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .xxlarge-up-7 > .column:nth-of-type(7n+1),
    .xxlarge-up-7 > .columns:nth-of-type(7n+1) {
        clear: both;
    }

    .xxlarge-up-7 > .column:last-child,
    .xxlarge-up-7 > .columns:last-child {
        float: left;
    }

    .xxlarge-up-8 > .column,
    .xxlarge-up-8 > .columns {
        float: left;
        width: 12.5%;
    }

    .xxlarge-up-8 > .column:nth-of-type(1n),
    .xxlarge-up-8 > .columns:nth-of-type(1n) {
        clear: none;
    }

    .xxlarge-up-8 > .column:nth-of-type(8n+1),
    .xxlarge-up-8 > .columns:nth-of-type(8n+1) {
        clear: both;
    }

    .xxlarge-up-8 > .column:last-child,
    .xxlarge-up-8 > .columns:last-child {
        float: left;
    }

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

    .xxlarge-collapse .row {
        margin-right: 0;
        margin-left: 0;
    }

    .expanded.row .xxlarge-collapse.row {
        margin-right: 0;
        margin-left: 0;
    }

    .xxlarge-uncollapse > .column,
    .xxlarge-uncollapse > .columns {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }

    .xxlarge-centered {
        margin-right: auto;
        margin-left: auto;
    }

    .xxlarge-centered,
    .xxlarge-centered:last-child:not(:first-child) {
        float: none;
        clear: both;
    }

    .xxlarge-uncentered,
    .xxlarge-push-0,
    .xxlarge-pull-0 {
        position: static;
        margin-right: 0;
        margin-left: 0;
    }

    .xxlarge-uncentered,
    .xxlarge-uncentered:last-child:not(:first-child),
    .xxlarge-push-0,
    .xxlarge-push-0:last-child:not(:first-child),
    .xxlarge-pull-0,
    .xxlarge-pull-0:last-child:not(:first-child) {
        float: left;
        clear: none;
    }

    .xxlarge-uncentered:last-child:not(:first-child),
    .xxlarge-push-0:last-child:not(:first-child),
    .xxlarge-pull-0:last-child:not(:first-child) {
        float: right;
    }
}

.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;
    }
}

.row {
    max-width: 100rem;
    margin-right: auto;
    margin-left: auto;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
    -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;
    }
}

@media screen and (min-width: 75em) {
    .row .row {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem;
    }
}

@media screen and (min-width: 90em) {
    .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 {
    -webkit-flex: 1 1 0px;
    -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 {
    -webkit-flex: 0 0 8.33333%;
    -ms-flex: 0 0 8.33333%;
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.small-up-1 {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

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

.small-up-2 {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

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

.small-up-3 {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

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

.small-up-4 {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

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

.small-up-5 {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

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

.small-up-6 {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

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

.small-up-7 {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

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

.small-up-8 {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.small-up-8 > .column,
.small-up-8 > .columns {
    -webkit-flex: 0 0 12.5%;
    -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 {
        -webkit-flex: 0 0 8.33333%;
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%;
    }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    .medium-up-1 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .medium-up-2 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .medium-up-3 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .medium-up-4 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .medium-up-5 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .medium-up-6 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .medium-up-7 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .medium-up-8 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .medium-up-8 > .column,
    .medium-up-8 > .columns {
        -webkit-flex: 0 0 12.5%;
        -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 {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
    }
}

.row.medium-unstack > .column,
.row.medium-unstack > .columns {
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
}

@media print,
screen and (min-width: 40em) {

    .row.medium-unstack > .column,
    .row.medium-unstack > .columns {
        -webkit-flex: 1 1 0px;
        -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 {
        -webkit-flex: 0 0 8.33333%;
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%;
    }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    .large-up-1 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .large-up-2 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .large-up-3 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .large-up-4 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .large-up-5 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .large-up-6 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .large-up-7 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .large-up-8 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .large-up-8 > .column,
    .large-up-8 > .columns {
        -webkit-flex: 0 0 12.5%;
        -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 {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
    }
}

.row.large-unstack > .column,
.row.large-unstack > .columns {
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
}

@media print,
screen and (min-width: 64em) {

    .row.large-unstack > .column,
    .row.large-unstack > .columns {
        -webkit-flex: 1 1 0px;
        -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;
    }
}

@media screen and (min-width: 75em) {
    .xlarge-1 {
        -webkit-flex: 0 0 8.33333%;
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%;
    }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    .xlarge-up-1 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .xlarge-up-2 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .xlarge-up-3 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .xlarge-up-4 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .xlarge-up-5 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .xlarge-up-6 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .xlarge-up-7 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .xlarge-up-8 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

@media screen and (min-width: 75em) and (min-width: 75em) {
    .xlarge-expand {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
    }
}

.row.xlarge-unstack > .column,
.row.xlarge-unstack > .columns {
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
}

@media screen and (min-width: 75em) {

    .row.xlarge-unstack > .column,
    .row.xlarge-unstack > .columns {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
    }
}

@media screen and (min-width: 75em) {

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

    .xlarge-uncollapse > .column,
    .xlarge-uncollapse > .columns {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }
}

@media screen and (min-width: 90em) {
    .xxlarge-1 {
        -webkit-flex: 0 0 8.33333%;
        -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
        max-width: 8.33333%;
    }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    .xxlarge-up-1 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .xxlarge-up-2 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .xxlarge-up-3 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .xxlarge-up-4 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .xxlarge-up-5 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .xxlarge-up-6 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .xxlarge-up-7 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

    .xxlarge-up-8 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

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

@media screen and (min-width: 90em) and (min-width: 90em) {
    .xxlarge-expand {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
    }
}

.row.xxlarge-unstack > .column,
.row.xxlarge-unstack > .columns {
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
}

@media screen and (min-width: 90em) {

    .row.xxlarge-unstack > .column,
    .row.xxlarge-unstack > .columns {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
    }
}

@media screen and (min-width: 90em) {

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

    .xxlarge-uncollapse > .column,
    .xxlarge-uncollapse > .columns {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }
}

.shrink {
    -webkit-flex: 0 0 auto;
    -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;
    }
}

.grid-container {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 100rem;
    margin: 0 auto;
}

@media print,
screen and (min-width: 40em) {
    .grid-container {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }
}

.grid-container.fluid {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 100%;
    margin: 0 auto;
}

@media print,
screen and (min-width: 40em) {
    .grid-container.fluid {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }
}

.grid-container.full {
    padding-right: 0;
    padding-left: 0;
    max-width: 100%;
    margin: 0 auto;
}

.grid-x {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
}

.cell {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    min-height: 0px;
    min-width: 0px;
    width: 100%;
}

.cell.auto {
    -webkit-flex: 1 1 0px;
    -ms-flex: 1 1 0px;
    flex: 1 1 0px;
}

.cell.shrink {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
}

.grid-x > .auto {
    width: auto;
}

.grid-x > .shrink {
    width: auto;
}

.grid-x > .small-shrink,
.grid-x > .small-full,
.grid-x > .small-1,
.grid-x > .small-2,
.grid-x > .small-3,
.grid-x > .small-4,
.grid-x > .small-5,
.grid-x > .small-6,
.grid-x > .small-7,
.grid-x > .small-8,
.grid-x > .small-9,
.grid-x > .small-10,
.grid-x > .small-11,
.grid-x > .small-12 {
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
}

@media print,
screen and (min-width: 40em) {

    .grid-x > .medium-shrink,
    .grid-x > .medium-full,
    .grid-x > .medium-1,
    .grid-x > .medium-2,
    .grid-x > .medium-3,
    .grid-x > .medium-4,
    .grid-x > .medium-5,
    .grid-x > .medium-6,
    .grid-x > .medium-7,
    .grid-x > .medium-8,
    .grid-x > .medium-9,
    .grid-x > .medium-10,
    .grid-x > .medium-11,
    .grid-x > .medium-12 {
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }
}

@media print,
screen and (min-width: 64em) {

    .grid-x > .large-shrink,
    .grid-x > .large-full,
    .grid-x > .large-1,
    .grid-x > .large-2,
    .grid-x > .large-3,
    .grid-x > .large-4,
    .grid-x > .large-5,
    .grid-x > .large-6,
    .grid-x > .large-7,
    .grid-x > .large-8,
    .grid-x > .large-9,
    .grid-x > .large-10,
    .grid-x > .large-11,
    .grid-x > .large-12 {
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }
}

@media screen and (min-width: 75em) {

    .grid-x > .xlarge-shrink,
    .grid-x > .xlarge-full,
    .grid-x > .xlarge-1,
    .grid-x > .xlarge-2,
    .grid-x > .xlarge-3,
    .grid-x > .xlarge-4,
    .grid-x > .xlarge-5,
    .grid-x > .xlarge-6,
    .grid-x > .xlarge-7,
    .grid-x > .xlarge-8,
    .grid-x > .xlarge-9,
    .grid-x > .xlarge-10,
    .grid-x > .xlarge-11,
    .grid-x > .xlarge-12 {
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }
}

@media screen and (min-width: 90em) {

    .grid-x > .xxlarge-shrink,
    .grid-x > .xxlarge-full,
    .grid-x > .xxlarge-1,
    .grid-x > .xxlarge-2,
    .grid-x > .xxlarge-3,
    .grid-x > .xxlarge-4,
    .grid-x > .xxlarge-5,
    .grid-x > .xxlarge-6,
    .grid-x > .xxlarge-7,
    .grid-x > .xxlarge-8,
    .grid-x > .xxlarge-9,
    .grid-x > .xxlarge-10,
    .grid-x > .xxlarge-11,
    .grid-x > .xxlarge-12 {
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }
}

.grid-x > .small-1,
.grid-x > .small-2,
.grid-x > .small-3,
.grid-x > .small-4,
.grid-x > .small-5,
.grid-x > .small-6,
.grid-x > .small-7,
.grid-x > .small-8,
.grid-x > .small-9,
.grid-x > .small-10,
.grid-x > .small-11,
.grid-x > .small-12 {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
}

.grid-x > .small-1 {
    width: 8.33333%;
}

.grid-x > .small-2 {
    width: 16.66667%;
}

.grid-x > .small-3 {
    width: 25%;
}

.grid-x > .small-4 {
    width: 33.33333%;
}

.grid-x > .small-5 {
    width: 41.66667%;
}

.grid-x > .small-6 {
    width: 50%;
}

.grid-x > .small-7 {
    width: 58.33333%;
}

.grid-x > .small-8 {
    width: 66.66667%;
}

.grid-x > .small-9 {
    width: 75%;
}

.grid-x > .small-10 {
    width: 83.33333%;
}

.grid-x > .small-11 {
    width: 91.66667%;
}

.grid-x > .small-12 {
    width: 100%;
}

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

    .grid-x > .medium-shrink,
    .grid-x > .medium-1,
    .grid-x > .medium-2,
    .grid-x > .medium-3,
    .grid-x > .medium-4,
    .grid-x > .medium-5,
    .grid-x > .medium-6,
    .grid-x > .medium-7,
    .grid-x > .medium-8,
    .grid-x > .medium-9,
    .grid-x > .medium-10,
    .grid-x > .medium-11,
    .grid-x > .medium-12 {
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    }

    .grid-x > .medium-shrink {
        width: auto;
    }

    .grid-x > .medium-1 {
        width: 8.33333%;
    }

    .grid-x > .medium-2 {
        width: 16.66667%;
    }

    .grid-x > .medium-3 {
        width: 25%;
    }

    .grid-x > .medium-4 {
        width: 33.33333%;
    }

    .grid-x > .medium-5 {
        width: 41.66667%;
    }

    .grid-x > .medium-6 {
        width: 50%;
    }

    .grid-x > .medium-7 {
        width: 58.33333%;
    }

    .grid-x > .medium-8 {
        width: 66.66667%;
    }

    .grid-x > .medium-9 {
        width: 75%;
    }

    .grid-x > .medium-10 {
        width: 83.33333%;
    }

    .grid-x > .medium-11 {
        width: 91.66667%;
    }

    .grid-x > .medium-12 {
        width: 100%;
    }
}

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

    .grid-x > .large-shrink,
    .grid-x > .large-1,
    .grid-x > .large-2,
    .grid-x > .large-3,
    .grid-x > .large-4,
    .grid-x > .large-5,
    .grid-x > .large-6,
    .grid-x > .large-7,
    .grid-x > .large-8,
    .grid-x > .large-9,
    .grid-x > .large-10,
    .grid-x > .large-11,
    .grid-x > .large-12 {
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    }

    .grid-x > .large-shrink {
        width: auto;
    }

    .grid-x > .large-1 {
        width: 8.33333%;
    }

    .grid-x > .large-2 {
        width: 16.66667%;
    }

    .grid-x > .large-3 {
        width: 25%;
    }

    .grid-x > .large-4 {
        width: 33.33333%;
    }

    .grid-x > .large-5 {
        width: 41.66667%;
    }

    .grid-x > .large-6 {
        width: 50%;
    }

    .grid-x > .large-7 {
        width: 58.33333%;
    }

    .grid-x > .large-8 {
        width: 66.66667%;
    }

    .grid-x > .large-9 {
        width: 75%;
    }

    .grid-x > .large-10 {
        width: 83.33333%;
    }

    .grid-x > .large-11 {
        width: 91.66667%;
    }

    .grid-x > .large-12 {
        width: 100%;
    }
}

@media screen and (min-width: 75em) {
    .grid-x > .xlarge-auto {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        width: auto;
    }

    .grid-x > .xlarge-shrink,
    .grid-x > .xlarge-1,
    .grid-x > .xlarge-2,
    .grid-x > .xlarge-3,
    .grid-x > .xlarge-4,
    .grid-x > .xlarge-5,
    .grid-x > .xlarge-6,
    .grid-x > .xlarge-7,
    .grid-x > .xlarge-8,
    .grid-x > .xlarge-9,
    .grid-x > .xlarge-10,
    .grid-x > .xlarge-11,
    .grid-x > .xlarge-12 {
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    }

    .grid-x > .xlarge-shrink {
        width: auto;
    }

    .grid-x > .xlarge-1 {
        width: 8.33333%;
    }

    .grid-x > .xlarge-2 {
        width: 16.66667%;
    }

    .grid-x > .xlarge-3 {
        width: 25%;
    }

    .grid-x > .xlarge-4 {
        width: 33.33333%;
    }

    .grid-x > .xlarge-5 {
        width: 41.66667%;
    }

    .grid-x > .xlarge-6 {
        width: 50%;
    }

    .grid-x > .xlarge-7 {
        width: 58.33333%;
    }

    .grid-x > .xlarge-8 {
        width: 66.66667%;
    }

    .grid-x > .xlarge-9 {
        width: 75%;
    }

    .grid-x > .xlarge-10 {
        width: 83.33333%;
    }

    .grid-x > .xlarge-11 {
        width: 91.66667%;
    }

    .grid-x > .xlarge-12 {
        width: 100%;
    }
}

@media screen and (min-width: 90em) {
    .grid-x > .xxlarge-auto {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        width: auto;
    }

    .grid-x > .xxlarge-shrink,
    .grid-x > .xxlarge-1,
    .grid-x > .xxlarge-2,
    .grid-x > .xxlarge-3,
    .grid-x > .xxlarge-4,
    .grid-x > .xxlarge-5,
    .grid-x > .xxlarge-6,
    .grid-x > .xxlarge-7,
    .grid-x > .xxlarge-8,
    .grid-x > .xxlarge-9,
    .grid-x > .xxlarge-10,
    .grid-x > .xxlarge-11,
    .grid-x > .xxlarge-12 {
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    }

    .grid-x > .xxlarge-shrink {
        width: auto;
    }

    .grid-x > .xxlarge-1 {
        width: 8.33333%;
    }

    .grid-x > .xxlarge-2 {
        width: 16.66667%;
    }

    .grid-x > .xxlarge-3 {
        width: 25%;
    }

    .grid-x > .xxlarge-4 {
        width: 33.33333%;
    }

    .grid-x > .xxlarge-5 {
        width: 41.66667%;
    }

    .grid-x > .xxlarge-6 {
        width: 50%;
    }

    .grid-x > .xxlarge-7 {
        width: 58.33333%;
    }

    .grid-x > .xxlarge-8 {
        width: 66.66667%;
    }

    .grid-x > .xxlarge-9 {
        width: 75%;
    }

    .grid-x > .xxlarge-10 {
        width: 83.33333%;
    }

    .grid-x > .xxlarge-11 {
        width: 91.66667%;
    }

    .grid-x > .xxlarge-12 {
        width: 100%;
    }
}

.grid-margin-x:not(.grid-x) > .cell {
    width: auto;
}

.grid-margin-y:not(.grid-y) > .cell {
    height: auto;
}

.grid-margin-x {
    margin-left: -0.625rem;
    margin-right: -0.625rem;
}

@media print,
screen and (min-width: 40em) {
    .grid-margin-x {
        margin-left: -0.9375rem;
        margin-right: -0.9375rem;
    }
}

.grid-margin-x > .cell {
    width: calc(100% - 1.25rem);
    margin-left: 0.625rem;
    margin-right: 0.625rem;
}

@media print,
screen and (min-width: 40em) {
    .grid-margin-x > .cell {
        width: calc(100% - 1.875rem);
        margin-left: 0.9375rem;
        margin-right: 0.9375rem;
    }
}

.grid-margin-x > .auto {
    width: auto;
}

.grid-margin-x > .shrink {
    width: auto;
}

.grid-margin-x > .small-1 {
    width: calc(8.33333% - 1.25rem);
}

.grid-margin-x > .small-2 {
    width: calc(16.66667% - 1.25rem);
}

.grid-margin-x > .small-3 {
    width: calc(25% - 1.25rem);
}

.grid-margin-x > .small-4 {
    width: calc(33.33333% - 1.25rem);
}

.grid-margin-x > .small-5 {
    width: calc(41.66667% - 1.25rem);
}

.grid-margin-x > .small-6 {
    width: calc(50% - 1.25rem);
}

.grid-margin-x > .small-7 {
    width: calc(58.33333% - 1.25rem);
}

.grid-margin-x > .small-8 {
    width: calc(66.66667% - 1.25rem);
}

.grid-margin-x > .small-9 {
    width: calc(75% - 1.25rem);
}

.grid-margin-x > .small-10 {
    width: calc(83.33333% - 1.25rem);
}

.grid-margin-x > .small-11 {
    width: calc(91.66667% - 1.25rem);
}

.grid-margin-x > .small-12 {
    width: calc(100% - 1.25rem);
}

@media print,
screen and (min-width: 40em) {
    .grid-margin-x > .auto {
        width: auto;
    }

    .grid-margin-x > .shrink {
        width: auto;
    }

    .grid-margin-x > .small-1 {
        width: calc(8.33333% - 1.875rem);
    }

    .grid-margin-x > .small-2 {
        width: calc(16.66667% - 1.875rem);
    }

    .grid-margin-x > .small-3 {
        width: calc(25% - 1.875rem);
    }

    .grid-margin-x > .small-4 {
        width: calc(33.33333% - 1.875rem);
    }

    .grid-margin-x > .small-5 {
        width: calc(41.66667% - 1.875rem);
    }

    .grid-margin-x > .small-6 {
        width: calc(50% - 1.875rem);
    }

    .grid-margin-x > .small-7 {
        width: calc(58.33333% - 1.875rem);
    }

    .grid-margin-x > .small-8 {
        width: calc(66.66667% - 1.875rem);
    }

    .grid-margin-x > .small-9 {
        width: calc(75% - 1.875rem);
    }

    .grid-margin-x > .small-10 {
        width: calc(83.33333% - 1.875rem);
    }

    .grid-margin-x > .small-11 {
        width: calc(91.66667% - 1.875rem);
    }

    .grid-margin-x > .small-12 {
        width: calc(100% - 1.875rem);
    }

    .grid-margin-x > .medium-auto {
        width: auto;
    }

    .grid-margin-x > .medium-shrink {
        width: auto;
    }

    .grid-margin-x > .medium-1 {
        width: calc(8.33333% - 1.875rem);
    }

    .grid-margin-x > .medium-2 {
        width: calc(16.66667% - 1.875rem);
    }

    .grid-margin-x > .medium-3 {
        width: calc(25% - 1.875rem);
    }

    .grid-margin-x > .medium-4 {
        width: calc(33.33333% - 1.875rem);
    }

    .grid-margin-x > .medium-5 {
        width: calc(41.66667% - 1.875rem);
    }

    .grid-margin-x > .medium-6 {
        width: calc(50% - 1.875rem);
    }

    .grid-margin-x > .medium-7 {
        width: calc(58.33333% - 1.875rem);
    }

    .grid-margin-x > .medium-8 {
        width: calc(66.66667% - 1.875rem);
    }

    .grid-margin-x > .medium-9 {
        width: calc(75% - 1.875rem);
    }

    .grid-margin-x > .medium-10 {
        width: calc(83.33333% - 1.875rem);
    }

    .grid-margin-x > .medium-11 {
        width: calc(91.66667% - 1.875rem);
    }

    .grid-margin-x > .medium-12 {
        width: calc(100% - 1.875rem);
    }
}

@media print,
screen and (min-width: 64em) {
    .grid-margin-x > .large-auto {
        width: auto;
    }

    .grid-margin-x > .large-shrink {
        width: auto;
    }

    .grid-margin-x > .large-1 {
        width: calc(8.33333% - 1.875rem);
    }

    .grid-margin-x > .large-2 {
        width: calc(16.66667% - 1.875rem);
    }

    .grid-margin-x > .large-3 {
        width: calc(25% - 1.875rem);
    }

    .grid-margin-x > .large-4 {
        width: calc(33.33333% - 1.875rem);
    }

    .grid-margin-x > .large-5 {
        width: calc(41.66667% - 1.875rem);
    }

    .grid-margin-x > .large-6 {
        width: calc(50% - 1.875rem);
    }

    .grid-margin-x > .large-7 {
        width: calc(58.33333% - 1.875rem);
    }

    .grid-margin-x > .large-8 {
        width: calc(66.66667% - 1.875rem);
    }

    .grid-margin-x > .large-9 {
        width: calc(75% - 1.875rem);
    }

    .grid-margin-x > .large-10 {
        width: calc(83.33333% - 1.875rem);
    }

    .grid-margin-x > .large-11 {
        width: calc(91.66667% - 1.875rem);
    }

    .grid-margin-x > .large-12 {
        width: calc(100% - 1.875rem);
    }
}

@media screen and (min-width: 75em) {
    .grid-margin-x > .xlarge-auto {
        width: auto;
    }

    .grid-margin-x > .xlarge-shrink {
        width: auto;
    }

    .grid-margin-x > .xlarge-1 {
        width: calc(8.33333% - 1.875rem);
    }

    .grid-margin-x > .xlarge-2 {
        width: calc(16.66667% - 1.875rem);
    }

    .grid-margin-x > .xlarge-3 {
        width: calc(25% - 1.875rem);
    }

    .grid-margin-x > .xlarge-4 {
        width: calc(33.33333% - 1.875rem);
    }

    .grid-margin-x > .xlarge-5 {
        width: calc(41.66667% - 1.875rem);
    }

    .grid-margin-x > .xlarge-6 {
        width: calc(50% - 1.875rem);
    }

    .grid-margin-x > .xlarge-7 {
        width: calc(58.33333% - 1.875rem);
    }

    .grid-margin-x > .xlarge-8 {
        width: calc(66.66667% - 1.875rem);
    }

    .grid-margin-x > .xlarge-9 {
        width: calc(75% - 1.875rem);
    }

    .grid-margin-x > .xlarge-10 {
        width: calc(83.33333% - 1.875rem);
    }

    .grid-margin-x > .xlarge-11 {
        width: calc(91.66667% - 1.875rem);
    }

    .grid-margin-x > .xlarge-12 {
        width: calc(100% - 1.875rem);
    }
}

@media screen and (min-width: 90em) {
    .grid-margin-x > .xxlarge-auto {
        width: auto;
    }

    .grid-margin-x > .xxlarge-shrink {
        width: auto;
    }

    .grid-margin-x > .xxlarge-1 {
        width: calc(8.33333% - 1.875rem);
    }

    .grid-margin-x > .xxlarge-2 {
        width: calc(16.66667% - 1.875rem);
    }

    .grid-margin-x > .xxlarge-3 {
        width: calc(25% - 1.875rem);
    }

    .grid-margin-x > .xxlarge-4 {
        width: calc(33.33333% - 1.875rem);
    }

    .grid-margin-x > .xxlarge-5 {
        width: calc(41.66667% - 1.875rem);
    }

    .grid-margin-x > .xxlarge-6 {
        width: calc(50% - 1.875rem);
    }

    .grid-margin-x > .xxlarge-7 {
        width: calc(58.33333% - 1.875rem);
    }

    .grid-margin-x > .xxlarge-8 {
        width: calc(66.66667% - 1.875rem);
    }

    .grid-margin-x > .xxlarge-9 {
        width: calc(75% - 1.875rem);
    }

    .grid-margin-x > .xxlarge-10 {
        width: calc(83.33333% - 1.875rem);
    }

    .grid-margin-x > .xxlarge-11 {
        width: calc(91.66667% - 1.875rem);
    }

    .grid-margin-x > .xxlarge-12 {
        width: calc(100% - 1.875rem);
    }
}

.grid-padding-x .grid-padding-x {
    margin-right: -0.625rem;
    margin-left: -0.625rem;
}

@media print,
screen and (min-width: 40em) {
    .grid-padding-x .grid-padding-x {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem;
    }
}

.grid-container:not(.full) > .grid-padding-x {
    margin-right: -0.625rem;
    margin-left: -0.625rem;
}

@media print,
screen and (min-width: 40em) {
    .grid-container:not(.full) > .grid-padding-x {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem;
    }
}

.grid-padding-x > .cell {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
}

@media print,
screen and (min-width: 40em) {
    .grid-padding-x > .cell {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }
}

.small-up-1 > .cell {
    width: 100%;
}

.small-up-2 > .cell {
    width: 50%;
}

.small-up-3 > .cell {
    width: 33.33333%;
}

.small-up-4 > .cell {
    width: 25%;
}

.small-up-5 > .cell {
    width: 20%;
}

.small-up-6 > .cell {
    width: 16.66667%;
}

.small-up-7 > .cell {
    width: 14.28571%;
}

.small-up-8 > .cell {
    width: 12.5%;
}

@media print,
screen and (min-width: 40em) {
    .medium-up-1 > .cell {
        width: 100%;
    }

    .medium-up-2 > .cell {
        width: 50%;
    }

    .medium-up-3 > .cell {
        width: 33.33333%;
    }

    .medium-up-4 > .cell {
        width: 25%;
    }

    .medium-up-5 > .cell {
        width: 20%;
    }

    .medium-up-6 > .cell {
        width: 16.66667%;
    }

    .medium-up-7 > .cell {
        width: 14.28571%;
    }

    .medium-up-8 > .cell {
        width: 12.5%;
    }
}

@media print,
screen and (min-width: 64em) {
    .large-up-1 > .cell {
        width: 100%;
    }

    .large-up-2 > .cell {
        width: 50%;
    }

    .large-up-3 > .cell {
        width: 33.33333%;
    }

    .large-up-4 > .cell {
        width: 25%;
    }

    .large-up-5 > .cell {
        width: 20%;
    }

    .large-up-6 > .cell {
        width: 16.66667%;
    }

    .large-up-7 > .cell {
        width: 14.28571%;
    }

    .large-up-8 > .cell {
        width: 12.5%;
    }
}

@media screen and (min-width: 75em) {
    .xlarge-up-1 > .cell {
        width: 100%;
    }

    .xlarge-up-2 > .cell {
        width: 50%;
    }

    .xlarge-up-3 > .cell {
        width: 33.33333%;
    }

    .xlarge-up-4 > .cell {
        width: 25%;
    }

    .xlarge-up-5 > .cell {
        width: 20%;
    }

    .xlarge-up-6 > .cell {
        width: 16.66667%;
    }

    .xlarge-up-7 > .cell {
        width: 14.28571%;
    }

    .xlarge-up-8 > .cell {
        width: 12.5%;
    }
}

@media screen and (min-width: 90em) {
    .xxlarge-up-1 > .cell {
        width: 100%;
    }

    .xxlarge-up-2 > .cell {
        width: 50%;
    }

    .xxlarge-up-3 > .cell {
        width: 33.33333%;
    }

    .xxlarge-up-4 > .cell {
        width: 25%;
    }

    .xxlarge-up-5 > .cell {
        width: 20%;
    }

    .xxlarge-up-6 > .cell {
        width: 16.66667%;
    }

    .xxlarge-up-7 > .cell {
        width: 14.28571%;
    }

    .xxlarge-up-8 > .cell {
        width: 12.5%;
    }
}

.grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 1.25rem);
}

.grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 1.25rem);
}

.grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 1.25rem);
}

.grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 1.25rem);
}

.grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 1.25rem);
}

.grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 1.25rem);
}

.grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 1.25rem);
}

.grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 1.25rem);
}

@media print,
screen and (min-width: 40em) {
    .grid-margin-x.small-up-1 > .cell {
        width: calc(100% - 1.875rem);
    }

    .grid-margin-x.small-up-2 > .cell {
        width: calc(50% - 1.875rem);
    }

    .grid-margin-x.small-up-3 > .cell {
        width: calc(33.33333% - 1.875rem);
    }

    .grid-margin-x.small-up-4 > .cell {
        width: calc(25% - 1.875rem);
    }

    .grid-margin-x.small-up-5 > .cell {
        width: calc(20% - 1.875rem);
    }

    .grid-margin-x.small-up-6 > .cell {
        width: calc(16.66667% - 1.875rem);
    }

    .grid-margin-x.small-up-7 > .cell {
        width: calc(14.28571% - 1.875rem);
    }

    .grid-margin-x.small-up-8 > .cell {
        width: calc(12.5% - 1.875rem);
    }

    .grid-margin-x.medium-up-1 > .cell {
        width: calc(100% - 1.875rem);
    }

    .grid-margin-x.medium-up-2 > .cell {
        width: calc(50% - 1.875rem);
    }

    .grid-margin-x.medium-up-3 > .cell {
        width: calc(33.33333% - 1.875rem);
    }

    .grid-margin-x.medium-up-4 > .cell {
        width: calc(25% - 1.875rem);
    }

    .grid-margin-x.medium-up-5 > .cell {
        width: calc(20% - 1.875rem);
    }

    .grid-margin-x.medium-up-6 > .cell {
        width: calc(16.66667% - 1.875rem);
    }

    .grid-margin-x.medium-up-7 > .cell {
        width: calc(14.28571% - 1.875rem);
    }

    .grid-margin-x.medium-up-8 > .cell {
        width: calc(12.5% - 1.875rem);
    }
}

@media print,
screen and (min-width: 64em) {
    .grid-margin-x.large-up-1 > .cell {
        width: calc(100% - 1.875rem);
    }

    .grid-margin-x.large-up-2 > .cell {
        width: calc(50% - 1.875rem);
    }

    .grid-margin-x.large-up-3 > .cell {
        width: calc(33.33333% - 1.875rem);
    }

    .grid-margin-x.large-up-4 > .cell {
        width: calc(25% - 1.875rem);
    }

    .grid-margin-x.large-up-5 > .cell {
        width: calc(20% - 1.875rem);
    }

    .grid-margin-x.large-up-6 > .cell {
        width: calc(16.66667% - 1.875rem);
    }

    .grid-margin-x.large-up-7 > .cell {
        width: calc(14.28571% - 1.875rem);
    }

    .grid-margin-x.large-up-8 > .cell {
        width: calc(12.5% - 1.875rem);
    }
}

@media screen and (min-width: 75em) {
    .grid-margin-x.xlarge-up-1 > .cell {
        width: calc(100% - 1.875rem);
    }

    .grid-margin-x.xlarge-up-2 > .cell {
        width: calc(50% - 1.875rem);
    }

    .grid-margin-x.xlarge-up-3 > .cell {
        width: calc(33.33333% - 1.875rem);
    }

    .grid-margin-x.xlarge-up-4 > .cell {
        width: calc(25% - 1.875rem);
    }

    .grid-margin-x.xlarge-up-5 > .cell {
        width: calc(20% - 1.875rem);
    }

    .grid-margin-x.xlarge-up-6 > .cell {
        width: calc(16.66667% - 1.875rem);
    }

    .grid-margin-x.xlarge-up-7 > .cell {
        width: calc(14.28571% - 1.875rem);
    }

    .grid-margin-x.xlarge-up-8 > .cell {
        width: calc(12.5% - 1.875rem);
    }
}

@media screen and (min-width: 90em) {
    .grid-margin-x.xxlarge-up-1 > .cell {
        width: calc(100% - 1.875rem);
    }

    .grid-margin-x.xxlarge-up-2 > .cell {
        width: calc(50% - 1.875rem);
    }

    .grid-margin-x.xxlarge-up-3 > .cell {
        width: calc(33.33333% - 1.875rem);
    }

    .grid-margin-x.xxlarge-up-4 > .cell {
        width: calc(25% - 1.875rem);
    }

    .grid-margin-x.xxlarge-up-5 > .cell {
        width: calc(20% - 1.875rem);
    }

    .grid-margin-x.xxlarge-up-6 > .cell {
        width: calc(16.66667% - 1.875rem);
    }

    .grid-margin-x.xxlarge-up-7 > .cell {
        width: calc(14.28571% - 1.875rem);
    }

    .grid-margin-x.xxlarge-up-8 > .cell {
        width: calc(12.5% - 1.875rem);
    }
}

.small-margin-collapse {
    margin-right: 0;
    margin-left: 0;
}

.small-margin-collapse > .cell {
    margin-right: 0;
    margin-left: 0;
}

.small-margin-collapse > .small-1 {
    width: 8.33333%;
}

.small-margin-collapse > .small-2 {
    width: 16.66667%;
}

.small-margin-collapse > .small-3 {
    width: 25%;
}

.small-margin-collapse > .small-4 {
    width: 33.33333%;
}

.small-margin-collapse > .small-5 {
    width: 41.66667%;
}

.small-margin-collapse > .small-6 {
    width: 50%;
}

.small-margin-collapse > .small-7 {
    width: 58.33333%;
}

.small-margin-collapse > .small-8 {
    width: 66.66667%;
}

.small-margin-collapse > .small-9 {
    width: 75%;
}

.small-margin-collapse > .small-10 {
    width: 83.33333%;
}

.small-margin-collapse > .small-11 {
    width: 91.66667%;
}

.small-margin-collapse > .small-12 {
    width: 100%;
}

@media print,
screen and (min-width: 40em) {
    .small-margin-collapse > .medium-1 {
        width: 8.33333%;
    }

    .small-margin-collapse > .medium-2 {
        width: 16.66667%;
    }

    .small-margin-collapse > .medium-3 {
        width: 25%;
    }

    .small-margin-collapse > .medium-4 {
        width: 33.33333%;
    }

    .small-margin-collapse > .medium-5 {
        width: 41.66667%;
    }

    .small-margin-collapse > .medium-6 {
        width: 50%;
    }

    .small-margin-collapse > .medium-7 {
        width: 58.33333%;
    }

    .small-margin-collapse > .medium-8 {
        width: 66.66667%;
    }

    .small-margin-collapse > .medium-9 {
        width: 75%;
    }

    .small-margin-collapse > .medium-10 {
        width: 83.33333%;
    }

    .small-margin-collapse > .medium-11 {
        width: 91.66667%;
    }

    .small-margin-collapse > .medium-12 {
        width: 100%;
    }
}

@media print,
screen and (min-width: 64em) {
    .small-margin-collapse > .large-1 {
        width: 8.33333%;
    }

    .small-margin-collapse > .large-2 {
        width: 16.66667%;
    }

    .small-margin-collapse > .large-3 {
        width: 25%;
    }

    .small-margin-collapse > .large-4 {
        width: 33.33333%;
    }

    .small-margin-collapse > .large-5 {
        width: 41.66667%;
    }

    .small-margin-collapse > .large-6 {
        width: 50%;
    }

    .small-margin-collapse > .large-7 {
        width: 58.33333%;
    }

    .small-margin-collapse > .large-8 {
        width: 66.66667%;
    }

    .small-margin-collapse > .large-9 {
        width: 75%;
    }

    .small-margin-collapse > .large-10 {
        width: 83.33333%;
    }

    .small-margin-collapse > .large-11 {
        width: 91.66667%;
    }

    .small-margin-collapse > .large-12 {
        width: 100%;
    }
}

@media screen and (min-width: 75em) {
    .small-margin-collapse > .xlarge-1 {
        width: 8.33333%;
    }

    .small-margin-collapse > .xlarge-2 {
        width: 16.66667%;
    }

    .small-margin-collapse > .xlarge-3 {
        width: 25%;
    }

    .small-margin-collapse > .xlarge-4 {
        width: 33.33333%;
    }

    .small-margin-collapse > .xlarge-5 {
        width: 41.66667%;
    }

    .small-margin-collapse > .xlarge-6 {
        width: 50%;
    }

    .small-margin-collapse > .xlarge-7 {
        width: 58.33333%;
    }

    .small-margin-collapse > .xlarge-8 {
        width: 66.66667%;
    }

    .small-margin-collapse > .xlarge-9 {
        width: 75%;
    }

    .small-margin-collapse > .xlarge-10 {
        width: 83.33333%;
    }

    .small-margin-collapse > .xlarge-11 {
        width: 91.66667%;
    }

    .small-margin-collapse > .xlarge-12 {
        width: 100%;
    }
}

@media screen and (min-width: 90em) {
    .small-margin-collapse > .xxlarge-1 {
        width: 8.33333%;
    }

    .small-margin-collapse > .xxlarge-2 {
        width: 16.66667%;
    }

    .small-margin-collapse > .xxlarge-3 {
        width: 25%;
    }

    .small-margin-collapse > .xxlarge-4 {
        width: 33.33333%;
    }

    .small-margin-collapse > .xxlarge-5 {
        width: 41.66667%;
    }

    .small-margin-collapse > .xxlarge-6 {
        width: 50%;
    }

    .small-margin-collapse > .xxlarge-7 {
        width: 58.33333%;
    }

    .small-margin-collapse > .xxlarge-8 {
        width: 66.66667%;
    }

    .small-margin-collapse > .xxlarge-9 {
        width: 75%;
    }

    .small-margin-collapse > .xxlarge-10 {
        width: 83.33333%;
    }

    .small-margin-collapse > .xxlarge-11 {
        width: 91.66667%;
    }

    .small-margin-collapse > .xxlarge-12 {
        width: 100%;
    }
}

.small-padding-collapse {
    margin-right: 0;
    margin-left: 0;
}

.small-padding-collapse > .cell {
    padding-right: 0;
    padding-left: 0;
}

@media print,
screen and (min-width: 40em) {
    .medium-margin-collapse {
        margin-right: 0;
        margin-left: 0;
    }

    .medium-margin-collapse > .cell {
        margin-right: 0;
        margin-left: 0;
    }
}

@media print,
screen and (min-width: 40em) {
    .medium-margin-collapse > .small-1 {
        width: 8.33333%;
    }

    .medium-margin-collapse > .small-2 {
        width: 16.66667%;
    }

    .medium-margin-collapse > .small-3 {
        width: 25%;
    }

    .medium-margin-collapse > .small-4 {
        width: 33.33333%;
    }

    .medium-margin-collapse > .small-5 {
        width: 41.66667%;
    }

    .medium-margin-collapse > .small-6 {
        width: 50%;
    }

    .medium-margin-collapse > .small-7 {
        width: 58.33333%;
    }

    .medium-margin-collapse > .small-8 {
        width: 66.66667%;
    }

    .medium-margin-collapse > .small-9 {
        width: 75%;
    }

    .medium-margin-collapse > .small-10 {
        width: 83.33333%;
    }

    .medium-margin-collapse > .small-11 {
        width: 91.66667%;
    }

    .medium-margin-collapse > .small-12 {
        width: 100%;
    }
}

@media print,
screen and (min-width: 40em) {
    .medium-margin-collapse > .medium-1 {
        width: 8.33333%;
    }

    .medium-margin-collapse > .medium-2 {
        width: 16.66667%;
    }

    .medium-margin-collapse > .medium-3 {
        width: 25%;
    }

    .medium-margin-collapse > .medium-4 {
        width: 33.33333%;
    }

    .medium-margin-collapse > .medium-5 {
        width: 41.66667%;
    }

    .medium-margin-collapse > .medium-6 {
        width: 50%;
    }

    .medium-margin-collapse > .medium-7 {
        width: 58.33333%;
    }

    .medium-margin-collapse > .medium-8 {
        width: 66.66667%;
    }

    .medium-margin-collapse > .medium-9 {
        width: 75%;
    }

    .medium-margin-collapse > .medium-10 {
        width: 83.33333%;
    }

    .medium-margin-collapse > .medium-11 {
        width: 91.66667%;
    }

    .medium-margin-collapse > .medium-12 {
        width: 100%;
    }
}

@media print,
screen and (min-width: 64em) {
    .medium-margin-collapse > .large-1 {
        width: 8.33333%;
    }

    .medium-margin-collapse > .large-2 {
        width: 16.66667%;
    }

    .medium-margin-collapse > .large-3 {
        width: 25%;
    }

    .medium-margin-collapse > .large-4 {
        width: 33.33333%;
    }

    .medium-margin-collapse > .large-5 {
        width: 41.66667%;
    }

    .medium-margin-collapse > .large-6 {
        width: 50%;
    }

    .medium-margin-collapse > .large-7 {
        width: 58.33333%;
    }

    .medium-margin-collapse > .large-8 {
        width: 66.66667%;
    }

    .medium-margin-collapse > .large-9 {
        width: 75%;
    }

    .medium-margin-collapse > .large-10 {
        width: 83.33333%;
    }

    .medium-margin-collapse > .large-11 {
        width: 91.66667%;
    }

    .medium-margin-collapse > .large-12 {
        width: 100%;
    }
}

@media screen and (min-width: 75em) {
    .medium-margin-collapse > .xlarge-1 {
        width: 8.33333%;
    }

    .medium-margin-collapse > .xlarge-2 {
        width: 16.66667%;
    }

    .medium-margin-collapse > .xlarge-3 {
        width: 25%;
    }

    .medium-margin-collapse > .xlarge-4 {
        width: 33.33333%;
    }

    .medium-margin-collapse > .xlarge-5 {
        width: 41.66667%;
    }

    .medium-margin-collapse > .xlarge-6 {
        width: 50%;
    }

    .medium-margin-collapse > .xlarge-7 {
        width: 58.33333%;
    }

    .medium-margin-collapse > .xlarge-8 {
        width: 66.66667%;
    }

    .medium-margin-collapse > .xlarge-9 {
        width: 75%;
    }

    .medium-margin-collapse > .xlarge-10 {
        width: 83.33333%;
    }

    .medium-margin-collapse > .xlarge-11 {
        width: 91.66667%;
    }

    .medium-margin-collapse > .xlarge-12 {
        width: 100%;
    }
}

@media screen and (min-width: 90em) {
    .medium-margin-collapse > .xxlarge-1 {
        width: 8.33333%;
    }

    .medium-margin-collapse > .xxlarge-2 {
        width: 16.66667%;
    }

    .medium-margin-collapse > .xxlarge-3 {
        width: 25%;
    }

    .medium-margin-collapse > .xxlarge-4 {
        width: 33.33333%;
    }

    .medium-margin-collapse > .xxlarge-5 {
        width: 41.66667%;
    }

    .medium-margin-collapse > .xxlarge-6 {
        width: 50%;
    }

    .medium-margin-collapse > .xxlarge-7 {
        width: 58.33333%;
    }

    .medium-margin-collapse > .xxlarge-8 {
        width: 66.66667%;
    }

    .medium-margin-collapse > .xxlarge-9 {
        width: 75%;
    }

    .medium-margin-collapse > .xxlarge-10 {
        width: 83.33333%;
    }

    .medium-margin-collapse > .xxlarge-11 {
        width: 91.66667%;
    }

    .medium-margin-collapse > .xxlarge-12 {
        width: 100%;
    }
}

@media print,
screen and (min-width: 40em) {
    .medium-padding-collapse {
        margin-right: 0;
        margin-left: 0;
    }

    .medium-padding-collapse > .cell {
        padding-right: 0;
        padding-left: 0;
    }
}

@media print,
screen and (min-width: 64em) {
    .large-margin-collapse {
        margin-right: 0;
        margin-left: 0;
    }

    .large-margin-collapse > .cell {
        margin-right: 0;
        margin-left: 0;
    }
}

@media print,
screen and (min-width: 64em) {
    .large-margin-collapse > .small-1 {
        width: 8.33333%;
    }

    .large-margin-collapse > .small-2 {
        width: 16.66667%;
    }

    .large-margin-collapse > .small-3 {
        width: 25%;
    }

    .large-margin-collapse > .small-4 {
        width: 33.33333%;
    }

    .large-margin-collapse > .small-5 {
        width: 41.66667%;
    }

    .large-margin-collapse > .small-6 {
        width: 50%;
    }

    .large-margin-collapse > .small-7 {
        width: 58.33333%;
    }

    .large-margin-collapse > .small-8 {
        width: 66.66667%;
    }

    .large-margin-collapse > .small-9 {
        width: 75%;
    }

    .large-margin-collapse > .small-10 {
        width: 83.33333%;
    }

    .large-margin-collapse > .small-11 {
        width: 91.66667%;
    }

    .large-margin-collapse > .small-12 {
        width: 100%;
    }
}

@media print,
screen and (min-width: 64em) {
    .large-margin-collapse > .medium-1 {
        width: 8.33333%;
    }

    .large-margin-collapse > .medium-2 {
        width: 16.66667%;
    }

    .large-margin-collapse > .medium-3 {
        width: 25%;
    }

    .large-margin-collapse > .medium-4 {
        width: 33.33333%;
    }

    .large-margin-collapse > .medium-5 {
        width: 41.66667%;
    }

    .large-margin-collapse > .medium-6 {
        width: 50%;
    }

    .large-margin-collapse > .medium-7 {
        width: 58.33333%;
    }

    .large-margin-collapse > .medium-8 {
        width: 66.66667%;
    }

    .large-margin-collapse > .medium-9 {
        width: 75%;
    }

    .large-margin-collapse > .medium-10 {
        width: 83.33333%;
    }

    .large-margin-collapse > .medium-11 {
        width: 91.66667%;
    }

    .large-margin-collapse > .medium-12 {
        width: 100%;
    }
}

@media print,
screen and (min-width: 64em) {
    .large-margin-collapse > .large-1 {
        width: 8.33333%;
    }

    .large-margin-collapse > .large-2 {
        width: 16.66667%;
    }

    .large-margin-collapse > .large-3 {
        width: 25%;
    }

    .large-margin-collapse > .large-4 {
        width: 33.33333%;
    }

    .large-margin-collapse > .large-5 {
        width: 41.66667%;
    }

    .large-margin-collapse > .large-6 {
        width: 50%;
    }

    .large-margin-collapse > .large-7 {
        width: 58.33333%;
    }

    .large-margin-collapse > .large-8 {
        width: 66.66667%;
    }

    .large-margin-collapse > .large-9 {
        width: 75%;
    }

    .large-margin-collapse > .large-10 {
        width: 83.33333%;
    }

    .large-margin-collapse > .large-11 {
        width: 91.66667%;
    }

    .large-margin-collapse > .large-12 {
        width: 100%;
    }
}

@media screen and (min-width: 75em) {
    .large-margin-collapse > .xlarge-1 {
        width: 8.33333%;
    }

    .large-margin-collapse > .xlarge-2 {
        width: 16.66667%;
    }

    .large-margin-collapse > .xlarge-3 {
        width: 25%;
    }

    .large-margin-collapse > .xlarge-4 {
        width: 33.33333%;
    }

    .large-margin-collapse > .xlarge-5 {
        width: 41.66667%;
    }

    .large-margin-collapse > .xlarge-6 {
        width: 50%;
    }

    .large-margin-collapse > .xlarge-7 {
        width: 58.33333%;
    }

    .large-margin-collapse > .xlarge-8 {
        width: 66.66667%;
    }

    .large-margin-collapse > .xlarge-9 {
        width: 75%;
    }

    .large-margin-collapse > .xlarge-10 {
        width: 83.33333%;
    }

    .large-margin-collapse > .xlarge-11 {
        width: 91.66667%;
    }

    .large-margin-collapse > .xlarge-12 {
        width: 100%;
    }
}

@media screen and (min-width: 90em) {
    .large-margin-collapse > .xxlarge-1 {
        width: 8.33333%;
    }

    .large-margin-collapse > .xxlarge-2 {
        width: 16.66667%;
    }

    .large-margin-collapse > .xxlarge-3 {
        width: 25%;
    }

    .large-margin-collapse > .xxlarge-4 {
        width: 33.33333%;
    }

    .large-margin-collapse > .xxlarge-5 {
        width: 41.66667%;
    }

    .large-margin-collapse > .xxlarge-6 {
        width: 50%;
    }

    .large-margin-collapse > .xxlarge-7 {
        width: 58.33333%;
    }

    .large-margin-collapse > .xxlarge-8 {
        width: 66.66667%;
    }

    .large-margin-collapse > .xxlarge-9 {
        width: 75%;
    }

    .large-margin-collapse > .xxlarge-10 {
        width: 83.33333%;
    }

    .large-margin-collapse > .xxlarge-11 {
        width: 91.66667%;
    }

    .large-margin-collapse > .xxlarge-12 {
        width: 100%;
    }
}

@media print,
screen and (min-width: 64em) {
    .large-padding-collapse {
        margin-right: 0;
        margin-left: 0;
    }

    .large-padding-collapse > .cell {
        padding-right: 0;
        padding-left: 0;
    }
}

@media screen and (min-width: 75em) {
    .xlarge-margin-collapse {
        margin-right: 0;
        margin-left: 0;
    }

    .xlarge-margin-collapse > .cell {
        margin-right: 0;
        margin-left: 0;
    }
}

@media screen and (min-width: 75em) {
    .xlarge-margin-collapse > .small-1 {
        width: 8.33333%;
    }

    .xlarge-margin-collapse > .small-2 {
        width: 16.66667%;
    }

    .xlarge-margin-collapse > .small-3 {
        width: 25%;
    }

    .xlarge-margin-collapse > .small-4 {
        width: 33.33333%;
    }

    .xlarge-margin-collapse > .small-5 {
        width: 41.66667%;
    }

    .xlarge-margin-collapse > .small-6 {
        width: 50%;
    }

    .xlarge-margin-collapse > .small-7 {
        width: 58.33333%;
    }

    .xlarge-margin-collapse > .small-8 {
        width: 66.66667%;
    }

    .xlarge-margin-collapse > .small-9 {
        width: 75%;
    }

    .xlarge-margin-collapse > .small-10 {
        width: 83.33333%;
    }

    .xlarge-margin-collapse > .small-11 {
        width: 91.66667%;
    }

    .xlarge-margin-collapse > .small-12 {
        width: 100%;
    }
}

@media screen and (min-width: 75em) {
    .xlarge-margin-collapse > .medium-1 {
        width: 8.33333%;
    }

    .xlarge-margin-collapse > .medium-2 {
        width: 16.66667%;
    }

    .xlarge-margin-collapse > .medium-3 {
        width: 25%;
    }

    .xlarge-margin-collapse > .medium-4 {
        width: 33.33333%;
    }

    .xlarge-margin-collapse > .medium-5 {
        width: 41.66667%;
    }

    .xlarge-margin-collapse > .medium-6 {
        width: 50%;
    }

    .xlarge-margin-collapse > .medium-7 {
        width: 58.33333%;
    }

    .xlarge-margin-collapse > .medium-8 {
        width: 66.66667%;
    }

    .xlarge-margin-collapse > .medium-9 {
        width: 75%;
    }

    .xlarge-margin-collapse > .medium-10 {
        width: 83.33333%;
    }

    .xlarge-margin-collapse > .medium-11 {
        width: 91.66667%;
    }

    .xlarge-margin-collapse > .medium-12 {
        width: 100%;
    }
}

@media screen and (min-width: 75em) {
    .xlarge-margin-collapse > .large-1 {
        width: 8.33333%;
    }

    .xlarge-margin-collapse > .large-2 {
        width: 16.66667%;
    }

    .xlarge-margin-collapse > .large-3 {
        width: 25%;
    }

    .xlarge-margin-collapse > .large-4 {
        width: 33.33333%;
    }

    .xlarge-margin-collapse > .large-5 {
        width: 41.66667%;
    }

    .xlarge-margin-collapse > .large-6 {
        width: 50%;
    }

    .xlarge-margin-collapse > .large-7 {
        width: 58.33333%;
    }

    .xlarge-margin-collapse > .large-8 {
        width: 66.66667%;
    }

    .xlarge-margin-collapse > .large-9 {
        width: 75%;
    }

    .xlarge-margin-collapse > .large-10 {
        width: 83.33333%;
    }

    .xlarge-margin-collapse > .large-11 {
        width: 91.66667%;
    }

    .xlarge-margin-collapse > .large-12 {
        width: 100%;
    }
}

@media screen and (min-width: 75em) {
    .xlarge-margin-collapse > .xlarge-1 {
        width: 8.33333%;
    }

    .xlarge-margin-collapse > .xlarge-2 {
        width: 16.66667%;
    }

    .xlarge-margin-collapse > .xlarge-3 {
        width: 25%;
    }

    .xlarge-margin-collapse > .xlarge-4 {
        width: 33.33333%;
    }

    .xlarge-margin-collapse > .xlarge-5 {
        width: 41.66667%;
    }

    .xlarge-margin-collapse > .xlarge-6 {
        width: 50%;
    }

    .xlarge-margin-collapse > .xlarge-7 {
        width: 58.33333%;
    }

    .xlarge-margin-collapse > .xlarge-8 {
        width: 66.66667%;
    }

    .xlarge-margin-collapse > .xlarge-9 {
        width: 75%;
    }

    .xlarge-margin-collapse > .xlarge-10 {
        width: 83.33333%;
    }

    .xlarge-margin-collapse > .xlarge-11 {
        width: 91.66667%;
    }

    .xlarge-margin-collapse > .xlarge-12 {
        width: 100%;
    }
}

@media screen and (min-width: 90em) {
    .xlarge-margin-collapse > .xxlarge-1 {
        width: 8.33333%;
    }

    .xlarge-margin-collapse > .xxlarge-2 {
        width: 16.66667%;
    }

    .xlarge-margin-collapse > .xxlarge-3 {
        width: 25%;
    }

    .xlarge-margin-collapse > .xxlarge-4 {
        width: 33.33333%;
    }

    .xlarge-margin-collapse > .xxlarge-5 {
        width: 41.66667%;
    }

    .xlarge-margin-collapse > .xxlarge-6 {
        width: 50%;
    }

    .xlarge-margin-collapse > .xxlarge-7 {
        width: 58.33333%;
    }

    .xlarge-margin-collapse > .xxlarge-8 {
        width: 66.66667%;
    }

    .xlarge-margin-collapse > .xxlarge-9 {
        width: 75%;
    }

    .xlarge-margin-collapse > .xxlarge-10 {
        width: 83.33333%;
    }

    .xlarge-margin-collapse > .xxlarge-11 {
        width: 91.66667%;
    }

    .xlarge-margin-collapse > .xxlarge-12 {
        width: 100%;
    }
}

@media screen and (min-width: 75em) {
    .xlarge-padding-collapse {
        margin-right: 0;
        margin-left: 0;
    }

    .xlarge-padding-collapse > .cell {
        padding-right: 0;
        padding-left: 0;
    }
}

@media screen and (min-width: 90em) {
    .xxlarge-margin-collapse {
        margin-right: 0;
        margin-left: 0;
    }

    .xxlarge-margin-collapse > .cell {
        margin-right: 0;
        margin-left: 0;
    }
}

@media screen and (min-width: 90em) {
    .xxlarge-margin-collapse > .small-1 {
        width: 8.33333%;
    }

    .xxlarge-margin-collapse > .small-2 {
        width: 16.66667%;
    }

    .xxlarge-margin-collapse > .small-3 {
        width: 25%;
    }

    .xxlarge-margin-collapse > .small-4 {
        width: 33.33333%;
    }

    .xxlarge-margin-collapse > .small-5 {
        width: 41.66667%;
    }

    .xxlarge-margin-collapse > .small-6 {
        width: 50%;
    }

    .xxlarge-margin-collapse > .small-7 {
        width: 58.33333%;
    }

    .xxlarge-margin-collapse > .small-8 {
        width: 66.66667%;
    }

    .xxlarge-margin-collapse > .small-9 {
        width: 75%;
    }

    .xxlarge-margin-collapse > .small-10 {
        width: 83.33333%;
    }

    .xxlarge-margin-collapse > .small-11 {
        width: 91.66667%;
    }

    .xxlarge-margin-collapse > .small-12 {
        width: 100%;
    }
}

@media screen and (min-width: 90em) {
    .xxlarge-margin-collapse > .medium-1 {
        width: 8.33333%;
    }

    .xxlarge-margin-collapse > .medium-2 {
        width: 16.66667%;
    }

    .xxlarge-margin-collapse > .medium-3 {
        width: 25%;
    }

    .xxlarge-margin-collapse > .medium-4 {
        width: 33.33333%;
    }

    .xxlarge-margin-collapse > .medium-5 {
        width: 41.66667%;
    }

    .xxlarge-margin-collapse > .medium-6 {
        width: 50%;
    }

    .xxlarge-margin-collapse > .medium-7 {
        width: 58.33333%;
    }

    .xxlarge-margin-collapse > .medium-8 {
        width: 66.66667%;
    }

    .xxlarge-margin-collapse > .medium-9 {
        width: 75%;
    }

    .xxlarge-margin-collapse > .medium-10 {
        width: 83.33333%;
    }

    .xxlarge-margin-collapse > .medium-11 {
        width: 91.66667%;
    }

    .xxlarge-margin-collapse > .medium-12 {
        width: 100%;
    }
}

@media screen and (min-width: 90em) {
    .xxlarge-margin-collapse > .large-1 {
        width: 8.33333%;
    }

    .xxlarge-margin-collapse > .large-2 {
        width: 16.66667%;
    }

    .xxlarge-margin-collapse > .large-3 {
        width: 25%;
    }

    .xxlarge-margin-collapse > .large-4 {
        width: 33.33333%;
    }

    .xxlarge-margin-collapse > .large-5 {
        width: 41.66667%;
    }

    .xxlarge-margin-collapse > .large-6 {
        width: 50%;
    }

    .xxlarge-margin-collapse > .large-7 {
        width: 58.33333%;
    }

    .xxlarge-margin-collapse > .large-8 {
        width: 66.66667%;
    }

    .xxlarge-margin-collapse > .large-9 {
        width: 75%;
    }

    .xxlarge-margin-collapse > .large-10 {
        width: 83.33333%;
    }

    .xxlarge-margin-collapse > .large-11 {
        width: 91.66667%;
    }

    .xxlarge-margin-collapse > .large-12 {
        width: 100%;
    }
}

@media screen and (min-width: 90em) {
    .xxlarge-margin-collapse > .xlarge-1 {
        width: 8.33333%;
    }

    .xxlarge-margin-collapse > .xlarge-2 {
        width: 16.66667%;
    }

    .xxlarge-margin-collapse > .xlarge-3 {
        width: 25%;
    }

    .xxlarge-margin-collapse > .xlarge-4 {
        width: 33.33333%;
    }

    .xxlarge-margin-collapse > .xlarge-5 {
        width: 41.66667%;
    }

    .xxlarge-margin-collapse > .xlarge-6 {
        width: 50%;
    }

    .xxlarge-margin-collapse > .xlarge-7 {
        width: 58.33333%;
    }

    .xxlarge-margin-collapse > .xlarge-8 {
        width: 66.66667%;
    }

    .xxlarge-margin-collapse > .xlarge-9 {
        width: 75%;
    }

    .xxlarge-margin-collapse > .xlarge-10 {
        width: 83.33333%;
    }

    .xxlarge-margin-collapse > .xlarge-11 {
        width: 91.66667%;
    }

    .xxlarge-margin-collapse > .xlarge-12 {
        width: 100%;
    }
}

@media screen and (min-width: 90em) {
    .xxlarge-margin-collapse > .xxlarge-1 {
        width: 8.33333%;
    }

    .xxlarge-margin-collapse > .xxlarge-2 {
        width: 16.66667%;
    }

    .xxlarge-margin-collapse > .xxlarge-3 {
        width: 25%;
    }

    .xxlarge-margin-collapse > .xxlarge-4 {
        width: 33.33333%;
    }

    .xxlarge-margin-collapse > .xxlarge-5 {
        width: 41.66667%;
    }

    .xxlarge-margin-collapse > .xxlarge-6 {
        width: 50%;
    }

    .xxlarge-margin-collapse > .xxlarge-7 {
        width: 58.33333%;
    }

    .xxlarge-margin-collapse > .xxlarge-8 {
        width: 66.66667%;
    }

    .xxlarge-margin-collapse > .xxlarge-9 {
        width: 75%;
    }

    .xxlarge-margin-collapse > .xxlarge-10 {
        width: 83.33333%;
    }

    .xxlarge-margin-collapse > .xxlarge-11 {
        width: 91.66667%;
    }

    .xxlarge-margin-collapse > .xxlarge-12 {
        width: 100%;
    }
}

@media screen and (min-width: 90em) {
    .xxlarge-padding-collapse {
        margin-right: 0;
        margin-left: 0;
    }

    .xxlarge-padding-collapse > .cell {
        padding-right: 0;
        padding-left: 0;
    }
}

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

.grid-margin-x > .small-offset-0 {
    margin-left: calc(0% + 0.625rem);
}

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

.grid-margin-x > .small-offset-1 {
    margin-left: calc(8.33333% + 0.625rem);
}

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

.grid-margin-x > .small-offset-2 {
    margin-left: calc(16.66667% + 0.625rem);
}

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

.grid-margin-x > .small-offset-3 {
    margin-left: calc(25% + 0.625rem);
}

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

.grid-margin-x > .small-offset-4 {
    margin-left: calc(33.33333% + 0.625rem);
}

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

.grid-margin-x > .small-offset-5 {
    margin-left: calc(41.66667% + 0.625rem);
}

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

.grid-margin-x > .small-offset-6 {
    margin-left: calc(50% + 0.625rem);
}

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

.grid-margin-x > .small-offset-7 {
    margin-left: calc(58.33333% + 0.625rem);
}

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

.grid-margin-x > .small-offset-8 {
    margin-left: calc(66.66667% + 0.625rem);
}

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

.grid-margin-x > .small-offset-9 {
    margin-left: calc(75% + 0.625rem);
}

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

.grid-margin-x > .small-offset-10 {
    margin-left: calc(83.33333% + 0.625rem);
}

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

.grid-margin-x > .small-offset-11 {
    margin-left: calc(91.66667% + 0.625rem);
}

@media print,
screen and (min-width: 40em) {
    .medium-offset-0 {
        margin-left: 0%;
    }

    .grid-margin-x > .medium-offset-0 {
        margin-left: calc(0% + 0.9375rem);
    }

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

    .grid-margin-x > .medium-offset-1 {
        margin-left: calc(8.33333% + 0.9375rem);
    }

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

    .grid-margin-x > .medium-offset-2 {
        margin-left: calc(16.66667% + 0.9375rem);
    }

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

    .grid-margin-x > .medium-offset-3 {
        margin-left: calc(25% + 0.9375rem);
    }

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

    .grid-margin-x > .medium-offset-4 {
        margin-left: calc(33.33333% + 0.9375rem);
    }

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

    .grid-margin-x > .medium-offset-5 {
        margin-left: calc(41.66667% + 0.9375rem);
    }

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

    .grid-margin-x > .medium-offset-6 {
        margin-left: calc(50% + 0.9375rem);
    }

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

    .grid-margin-x > .medium-offset-7 {
        margin-left: calc(58.33333% + 0.9375rem);
    }

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

    .grid-margin-x > .medium-offset-8 {
        margin-left: calc(66.66667% + 0.9375rem);
    }

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

    .grid-margin-x > .medium-offset-9 {
        margin-left: calc(75% + 0.9375rem);
    }

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

    .grid-margin-x > .medium-offset-10 {
        margin-left: calc(83.33333% + 0.9375rem);
    }

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

    .grid-margin-x > .medium-offset-11 {
        margin-left: calc(91.66667% + 0.9375rem);
    }
}

@media print,
screen and (min-width: 64em) {
    .large-offset-0 {
        margin-left: 0%;
    }

    .grid-margin-x > .large-offset-0 {
        margin-left: calc(0% + 0.9375rem);
    }

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

    .grid-margin-x > .large-offset-1 {
        margin-left: calc(8.33333% + 0.9375rem);
    }

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

    .grid-margin-x > .large-offset-2 {
        margin-left: calc(16.66667% + 0.9375rem);
    }

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

    .grid-margin-x > .large-offset-3 {
        margin-left: calc(25% + 0.9375rem);
    }

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

    .grid-margin-x > .large-offset-4 {
        margin-left: calc(33.33333% + 0.9375rem);
    }

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

    .grid-margin-x > .large-offset-5 {
        margin-left: calc(41.66667% + 0.9375rem);
    }

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

    .grid-margin-x > .large-offset-6 {
        margin-left: calc(50% + 0.9375rem);
    }

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

    .grid-margin-x > .large-offset-7 {
        margin-left: calc(58.33333% + 0.9375rem);
    }

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

    .grid-margin-x > .large-offset-8 {
        margin-left: calc(66.66667% + 0.9375rem);
    }

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

    .grid-margin-x > .large-offset-9 {
        margin-left: calc(75% + 0.9375rem);
    }

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

    .grid-margin-x > .large-offset-10 {
        margin-left: calc(83.33333% + 0.9375rem);
    }

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

    .grid-margin-x > .large-offset-11 {
        margin-left: calc(91.66667% + 0.9375rem);
    }
}

@media screen and (min-width: 75em) {
    .xlarge-offset-0 {
        margin-left: 0%;
    }

    .grid-margin-x > .xlarge-offset-0 {
        margin-left: calc(0% + 0.9375rem);
    }

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

    .grid-margin-x > .xlarge-offset-1 {
        margin-left: calc(8.33333% + 0.9375rem);
    }

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

    .grid-margin-x > .xlarge-offset-2 {
        margin-left: calc(16.66667% + 0.9375rem);
    }

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

    .grid-margin-x > .xlarge-offset-3 {
        margin-left: calc(25% + 0.9375rem);
    }

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

    .grid-margin-x > .xlarge-offset-4 {
        margin-left: calc(33.33333% + 0.9375rem);
    }

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

    .grid-margin-x > .xlarge-offset-5 {
        margin-left: calc(41.66667% + 0.9375rem);
    }

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

    .grid-margin-x > .xlarge-offset-6 {
        margin-left: calc(50% + 0.9375rem);
    }

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

    .grid-margin-x > .xlarge-offset-7 {
        margin-left: calc(58.33333% + 0.9375rem);
    }

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

    .grid-margin-x > .xlarge-offset-8 {
        margin-left: calc(66.66667% + 0.9375rem);
    }

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

    .grid-margin-x > .xlarge-offset-9 {
        margin-left: calc(75% + 0.9375rem);
    }

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

    .grid-margin-x > .xlarge-offset-10 {
        margin-left: calc(83.33333% + 0.9375rem);
    }

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

    .grid-margin-x > .xlarge-offset-11 {
        margin-left: calc(91.66667% + 0.9375rem);
    }
}

@media screen and (min-width: 90em) {
    .xxlarge-offset-0 {
        margin-left: 0%;
    }

    .grid-margin-x > .xxlarge-offset-0 {
        margin-left: calc(0% + 0.9375rem);
    }

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

    .grid-margin-x > .xxlarge-offset-1 {
        margin-left: calc(8.33333% + 0.9375rem);
    }

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

    .grid-margin-x > .xxlarge-offset-2 {
        margin-left: calc(16.66667% + 0.9375rem);
    }

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

    .grid-margin-x > .xxlarge-offset-3 {
        margin-left: calc(25% + 0.9375rem);
    }

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

    .grid-margin-x > .xxlarge-offset-4 {
        margin-left: calc(33.33333% + 0.9375rem);
    }

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

    .grid-margin-x > .xxlarge-offset-5 {
        margin-left: calc(41.66667% + 0.9375rem);
    }

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

    .grid-margin-x > .xxlarge-offset-6 {
        margin-left: calc(50% + 0.9375rem);
    }

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

    .grid-margin-x > .xxlarge-offset-7 {
        margin-left: calc(58.33333% + 0.9375rem);
    }

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

    .grid-margin-x > .xxlarge-offset-8 {
        margin-left: calc(66.66667% + 0.9375rem);
    }

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

    .grid-margin-x > .xxlarge-offset-9 {
        margin-left: calc(75% + 0.9375rem);
    }

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

    .grid-margin-x > .xxlarge-offset-10 {
        margin-left: calc(83.33333% + 0.9375rem);
    }

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

    .grid-margin-x > .xxlarge-offset-11 {
        margin-left: calc(91.66667% + 0.9375rem);
    }
}

.grid-y {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: column nowrap;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
}

.grid-y > .cell {
    width: auto;
    max-width: none;
}

.grid-y > .auto {
    height: auto;
}

.grid-y > .shrink {
    height: auto;
}

.grid-y > .small-shrink,
.grid-y > .small-full,
.grid-y > .small-1,
.grid-y > .small-2,
.grid-y > .small-3,
.grid-y > .small-4,
.grid-y > .small-5,
.grid-y > .small-6,
.grid-y > .small-7,
.grid-y > .small-8,
.grid-y > .small-9,
.grid-y > .small-10,
.grid-y > .small-11,
.grid-y > .small-12 {
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
}

@media print,
screen and (min-width: 40em) {

    .grid-y > .medium-shrink,
    .grid-y > .medium-full,
    .grid-y > .medium-1,
    .grid-y > .medium-2,
    .grid-y > .medium-3,
    .grid-y > .medium-4,
    .grid-y > .medium-5,
    .grid-y > .medium-6,
    .grid-y > .medium-7,
    .grid-y > .medium-8,
    .grid-y > .medium-9,
    .grid-y > .medium-10,
    .grid-y > .medium-11,
    .grid-y > .medium-12 {
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }
}

@media print,
screen and (min-width: 64em) {

    .grid-y > .large-shrink,
    .grid-y > .large-full,
    .grid-y > .large-1,
    .grid-y > .large-2,
    .grid-y > .large-3,
    .grid-y > .large-4,
    .grid-y > .large-5,
    .grid-y > .large-6,
    .grid-y > .large-7,
    .grid-y > .large-8,
    .grid-y > .large-9,
    .grid-y > .large-10,
    .grid-y > .large-11,
    .grid-y > .large-12 {
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }
}

@media screen and (min-width: 75em) {

    .grid-y > .xlarge-shrink,
    .grid-y > .xlarge-full,
    .grid-y > .xlarge-1,
    .grid-y > .xlarge-2,
    .grid-y > .xlarge-3,
    .grid-y > .xlarge-4,
    .grid-y > .xlarge-5,
    .grid-y > .xlarge-6,
    .grid-y > .xlarge-7,
    .grid-y > .xlarge-8,
    .grid-y > .xlarge-9,
    .grid-y > .xlarge-10,
    .grid-y > .xlarge-11,
    .grid-y > .xlarge-12 {
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }
}

@media screen and (min-width: 90em) {

    .grid-y > .xxlarge-shrink,
    .grid-y > .xxlarge-full,
    .grid-y > .xxlarge-1,
    .grid-y > .xxlarge-2,
    .grid-y > .xxlarge-3,
    .grid-y > .xxlarge-4,
    .grid-y > .xxlarge-5,
    .grid-y > .xxlarge-6,
    .grid-y > .xxlarge-7,
    .grid-y > .xxlarge-8,
    .grid-y > .xxlarge-9,
    .grid-y > .xxlarge-10,
    .grid-y > .xxlarge-11,
    .grid-y > .xxlarge-12 {
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }
}

.grid-y > .small-1,
.grid-y > .small-2,
.grid-y > .small-3,
.grid-y > .small-4,
.grid-y > .small-5,
.grid-y > .small-6,
.grid-y > .small-7,
.grid-y > .small-8,
.grid-y > .small-9,
.grid-y > .small-10,
.grid-y > .small-11,
.grid-y > .small-12 {
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
}

.grid-y > .small-1 {
    height: 8.33333%;
}

.grid-y > .small-2 {
    height: 16.66667%;
}

.grid-y > .small-3 {
    height: 25%;
}

.grid-y > .small-4 {
    height: 33.33333%;
}

.grid-y > .small-5 {
    height: 41.66667%;
}

.grid-y > .small-6 {
    height: 50%;
}

.grid-y > .small-7 {
    height: 58.33333%;
}

.grid-y > .small-8 {
    height: 66.66667%;
}

.grid-y > .small-9 {
    height: 75%;
}

.grid-y > .small-10 {
    height: 83.33333%;
}

.grid-y > .small-11 {
    height: 91.66667%;
}

.grid-y > .small-12 {
    height: 100%;
}

@media print,
screen and (min-width: 40em) {
    .grid-y > .medium-auto {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        height: auto;
    }

    .grid-y > .medium-shrink,
    .grid-y > .medium-1,
    .grid-y > .medium-2,
    .grid-y > .medium-3,
    .grid-y > .medium-4,
    .grid-y > .medium-5,
    .grid-y > .medium-6,
    .grid-y > .medium-7,
    .grid-y > .medium-8,
    .grid-y > .medium-9,
    .grid-y > .medium-10,
    .grid-y > .medium-11,
    .grid-y > .medium-12 {
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    }

    .grid-y > .medium-shrink {
        height: auto;
    }

    .grid-y > .medium-1 {
        height: 8.33333%;
    }

    .grid-y > .medium-2 {
        height: 16.66667%;
    }

    .grid-y > .medium-3 {
        height: 25%;
    }

    .grid-y > .medium-4 {
        height: 33.33333%;
    }

    .grid-y > .medium-5 {
        height: 41.66667%;
    }

    .grid-y > .medium-6 {
        height: 50%;
    }

    .grid-y > .medium-7 {
        height: 58.33333%;
    }

    .grid-y > .medium-8 {
        height: 66.66667%;
    }

    .grid-y > .medium-9 {
        height: 75%;
    }

    .grid-y > .medium-10 {
        height: 83.33333%;
    }

    .grid-y > .medium-11 {
        height: 91.66667%;
    }

    .grid-y > .medium-12 {
        height: 100%;
    }
}

@media print,
screen and (min-width: 64em) {
    .grid-y > .large-auto {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        height: auto;
    }

    .grid-y > .large-shrink,
    .grid-y > .large-1,
    .grid-y > .large-2,
    .grid-y > .large-3,
    .grid-y > .large-4,
    .grid-y > .large-5,
    .grid-y > .large-6,
    .grid-y > .large-7,
    .grid-y > .large-8,
    .grid-y > .large-9,
    .grid-y > .large-10,
    .grid-y > .large-11,
    .grid-y > .large-12 {
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    }

    .grid-y > .large-shrink {
        height: auto;
    }

    .grid-y > .large-1 {
        height: 8.33333%;
    }

    .grid-y > .large-2 {
        height: 16.66667%;
    }

    .grid-y > .large-3 {
        height: 25%;
    }

    .grid-y > .large-4 {
        height: 33.33333%;
    }

    .grid-y > .large-5 {
        height: 41.66667%;
    }

    .grid-y > .large-6 {
        height: 50%;
    }

    .grid-y > .large-7 {
        height: 58.33333%;
    }

    .grid-y > .large-8 {
        height: 66.66667%;
    }

    .grid-y > .large-9 {
        height: 75%;
    }

    .grid-y > .large-10 {
        height: 83.33333%;
    }

    .grid-y > .large-11 {
        height: 91.66667%;
    }

    .grid-y > .large-12 {
        height: 100%;
    }
}

@media screen and (min-width: 75em) {
    .grid-y > .xlarge-auto {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        height: auto;
    }

    .grid-y > .xlarge-shrink,
    .grid-y > .xlarge-1,
    .grid-y > .xlarge-2,
    .grid-y > .xlarge-3,
    .grid-y > .xlarge-4,
    .grid-y > .xlarge-5,
    .grid-y > .xlarge-6,
    .grid-y > .xlarge-7,
    .grid-y > .xlarge-8,
    .grid-y > .xlarge-9,
    .grid-y > .xlarge-10,
    .grid-y > .xlarge-11,
    .grid-y > .xlarge-12 {
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    }

    .grid-y > .xlarge-shrink {
        height: auto;
    }

    .grid-y > .xlarge-1 {
        height: 8.33333%;
    }

    .grid-y > .xlarge-2 {
        height: 16.66667%;
    }

    .grid-y > .xlarge-3 {
        height: 25%;
    }

    .grid-y > .xlarge-4 {
        height: 33.33333%;
    }

    .grid-y > .xlarge-5 {
        height: 41.66667%;
    }

    .grid-y > .xlarge-6 {
        height: 50%;
    }

    .grid-y > .xlarge-7 {
        height: 58.33333%;
    }

    .grid-y > .xlarge-8 {
        height: 66.66667%;
    }

    .grid-y > .xlarge-9 {
        height: 75%;
    }

    .grid-y > .xlarge-10 {
        height: 83.33333%;
    }

    .grid-y > .xlarge-11 {
        height: 91.66667%;
    }

    .grid-y > .xlarge-12 {
        height: 100%;
    }
}

@media screen and (min-width: 90em) {
    .grid-y > .xxlarge-auto {
        -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
        height: auto;
    }

    .grid-y > .xxlarge-shrink,
    .grid-y > .xxlarge-1,
    .grid-y > .xxlarge-2,
    .grid-y > .xxlarge-3,
    .grid-y > .xxlarge-4,
    .grid-y > .xxlarge-5,
    .grid-y > .xxlarge-6,
    .grid-y > .xxlarge-7,
    .grid-y > .xxlarge-8,
    .grid-y > .xxlarge-9,
    .grid-y > .xxlarge-10,
    .grid-y > .xxlarge-11,
    .grid-y > .xxlarge-12 {
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    }

    .grid-y > .xxlarge-shrink {
        height: auto;
    }

    .grid-y > .xxlarge-1 {
        height: 8.33333%;
    }

    .grid-y > .xxlarge-2 {
        height: 16.66667%;
    }

    .grid-y > .xxlarge-3 {
        height: 25%;
    }

    .grid-y > .xxlarge-4 {
        height: 33.33333%;
    }

    .grid-y > .xxlarge-5 {
        height: 41.66667%;
    }

    .grid-y > .xxlarge-6 {
        height: 50%;
    }

    .grid-y > .xxlarge-7 {
        height: 58.33333%;
    }

    .grid-y > .xxlarge-8 {
        height: 66.66667%;
    }

    .grid-y > .xxlarge-9 {
        height: 75%;
    }

    .grid-y > .xxlarge-10 {
        height: 83.33333%;
    }

    .grid-y > .xxlarge-11 {
        height: 91.66667%;
    }

    .grid-y > .xxlarge-12 {
        height: 100%;
    }
}

.grid-padding-y .grid-padding-y {
    margin-top: -0.625rem;
    margin-bottom: -0.625rem;
}

@media print,
screen and (min-width: 40em) {
    .grid-padding-y .grid-padding-y {
        margin-top: -0.9375rem;
        margin-bottom: -0.9375rem;
    }
}

.grid-padding-y > .cell {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
}

@media print,
screen and (min-width: 40em) {
    .grid-padding-y > .cell {
        padding-top: 0.9375rem;
        padding-bottom: 0.9375rem;
    }
}

.grid-margin-y {
    margin-top: -0.625rem;
    margin-bottom: -0.625rem;
}

@media print,
screen and (min-width: 40em) {
    .grid-margin-y {
        margin-top: -0.9375rem;
        margin-bottom: -0.9375rem;
    }
}

.grid-margin-y > .cell {
    height: calc(100% - 1.25rem);
    margin-top: 0.625rem;
    margin-bottom: 0.625rem;
}

@media print,
screen and (min-width: 40em) {
    .grid-margin-y > .cell {
        height: calc(100% - 1.875rem);
        margin-top: 0.9375rem;
        margin-bottom: 0.9375rem;
    }
}

.grid-margin-y > .auto {
    height: auto;
}

.grid-margin-y > .shrink {
    height: auto;
}

.grid-margin-y > .small-1 {
    height: calc(8.33333% - 1.25rem);
}

.grid-margin-y > .small-2 {
    height: calc(16.66667% - 1.25rem);
}

.grid-margin-y > .small-3 {
    height: calc(25% - 1.25rem);
}

.grid-margin-y > .small-4 {
    height: calc(33.33333% - 1.25rem);
}

.grid-margin-y > .small-5 {
    height: calc(41.66667% - 1.25rem);
}

.grid-margin-y > .small-6 {
    height: calc(50% - 1.25rem);
}

.grid-margin-y > .small-7 {
    height: calc(58.33333% - 1.25rem);
}

.grid-margin-y > .small-8 {
    height: calc(66.66667% - 1.25rem);
}

.grid-margin-y > .small-9 {
    height: calc(75% - 1.25rem);
}

.grid-margin-y > .small-10 {
    height: calc(83.33333% - 1.25rem);
}

.grid-margin-y > .small-11 {
    height: calc(91.66667% - 1.25rem);
}

.grid-margin-y > .small-12 {
    height: calc(100% - 1.25rem);
}

@media print,
screen and (min-width: 40em) {
    .grid-margin-y > .auto {
        height: auto;
    }

    .grid-margin-y > .shrink {
        height: auto;
    }

    .grid-margin-y > .small-1 {
        height: calc(8.33333% - 1.875rem);
    }

    .grid-margin-y > .small-2 {
        height: calc(16.66667% - 1.875rem);
    }

    .grid-margin-y > .small-3 {
        height: calc(25% - 1.875rem);
    }

    .grid-margin-y > .small-4 {
        height: calc(33.33333% - 1.875rem);
    }

    .grid-margin-y > .small-5 {
        height: calc(41.66667% - 1.875rem);
    }

    .grid-margin-y > .small-6 {
        height: calc(50% - 1.875rem);
    }

    .grid-margin-y > .small-7 {
        height: calc(58.33333% - 1.875rem);
    }

    .grid-margin-y > .small-8 {
        height: calc(66.66667% - 1.875rem);
    }

    .grid-margin-y > .small-9 {
        height: calc(75% - 1.875rem);
    }

    .grid-margin-y > .small-10 {
        height: calc(83.33333% - 1.875rem);
    }

    .grid-margin-y > .small-11 {
        height: calc(91.66667% - 1.875rem);
    }

    .grid-margin-y > .small-12 {
        height: calc(100% - 1.875rem);
    }

    .grid-margin-y > .medium-auto {
        height: auto;
    }

    .grid-margin-y > .medium-shrink {
        height: auto;
    }

    .grid-margin-y > .medium-1 {
        height: calc(8.33333% - 1.875rem);
    }

    .grid-margin-y > .medium-2 {
        height: calc(16.66667% - 1.875rem);
    }

    .grid-margin-y > .medium-3 {
        height: calc(25% - 1.875rem);
    }

    .grid-margin-y > .medium-4 {
        height: calc(33.33333% - 1.875rem);
    }

    .grid-margin-y > .medium-5 {
        height: calc(41.66667% - 1.875rem);
    }

    .grid-margin-y > .medium-6 {
        height: calc(50% - 1.875rem);
    }

    .grid-margin-y > .medium-7 {
        height: calc(58.33333% - 1.875rem);
    }

    .grid-margin-y > .medium-8 {
        height: calc(66.66667% - 1.875rem);
    }

    .grid-margin-y > .medium-9 {
        height: calc(75% - 1.875rem);
    }

    .grid-margin-y > .medium-10 {
        height: calc(83.33333% - 1.875rem);
    }

    .grid-margin-y > .medium-11 {
        height: calc(91.66667% - 1.875rem);
    }

    .grid-margin-y > .medium-12 {
        height: calc(100% - 1.875rem);
    }
}

@media print,
screen and (min-width: 64em) {
    .grid-margin-y > .large-auto {
        height: auto;
    }

    .grid-margin-y > .large-shrink {
        height: auto;
    }

    .grid-margin-y > .large-1 {
        height: calc(8.33333% - 1.875rem);
    }

    .grid-margin-y > .large-2 {
        height: calc(16.66667% - 1.875rem);
    }

    .grid-margin-y > .large-3 {
        height: calc(25% - 1.875rem);
    }

    .grid-margin-y > .large-4 {
        height: calc(33.33333% - 1.875rem);
    }

    .grid-margin-y > .large-5 {
        height: calc(41.66667% - 1.875rem);
    }

    .grid-margin-y > .large-6 {
        height: calc(50% - 1.875rem);
    }

    .grid-margin-y > .large-7 {
        height: calc(58.33333% - 1.875rem);
    }

    .grid-margin-y > .large-8 {
        height: calc(66.66667% - 1.875rem);
    }

    .grid-margin-y > .large-9 {
        height: calc(75% - 1.875rem);
    }

    .grid-margin-y > .large-10 {
        height: calc(83.33333% - 1.875rem);
    }

    .grid-margin-y > .large-11 {
        height: calc(91.66667% - 1.875rem);
    }

    .grid-margin-y > .large-12 {
        height: calc(100% - 1.875rem);
    }
}

@media screen and (min-width: 75em) {
    .grid-margin-y > .xlarge-auto {
        height: auto;
    }

    .grid-margin-y > .xlarge-shrink {
        height: auto;
    }

    .grid-margin-y > .xlarge-1 {
        height: calc(8.33333% - 1.875rem);
    }

    .grid-margin-y > .xlarge-2 {
        height: calc(16.66667% - 1.875rem);
    }

    .grid-margin-y > .xlarge-3 {
        height: calc(25% - 1.875rem);
    }

    .grid-margin-y > .xlarge-4 {
        height: calc(33.33333% - 1.875rem);
    }

    .grid-margin-y > .xlarge-5 {
        height: calc(41.66667% - 1.875rem);
    }

    .grid-margin-y > .xlarge-6 {
        height: calc(50% - 1.875rem);
    }

    .grid-margin-y > .xlarge-7 {
        height: calc(58.33333% - 1.875rem);
    }

    .grid-margin-y > .xlarge-8 {
        height: calc(66.66667% - 1.875rem);
    }

    .grid-margin-y > .xlarge-9 {
        height: calc(75% - 1.875rem);
    }

    .grid-margin-y > .xlarge-10 {
        height: calc(83.33333% - 1.875rem);
    }

    .grid-margin-y > .xlarge-11 {
        height: calc(91.66667% - 1.875rem);
    }

    .grid-margin-y > .xlarge-12 {
        height: calc(100% - 1.875rem);
    }
}

@media screen and (min-width: 90em) {
    .grid-margin-y > .xxlarge-auto {
        height: auto;
    }

    .grid-margin-y > .xxlarge-shrink {
        height: auto;
    }

    .grid-margin-y > .xxlarge-1 {
        height: calc(8.33333% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-2 {
        height: calc(16.66667% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-3 {
        height: calc(25% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-4 {
        height: calc(33.33333% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-5 {
        height: calc(41.66667% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-6 {
        height: calc(50% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-7 {
        height: calc(58.33333% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-8 {
        height: calc(66.66667% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-9 {
        height: calc(75% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-10 {
        height: calc(83.33333% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-11 {
        height: calc(91.66667% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-12 {
        height: calc(100% - 1.875rem);
    }
}

.grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 100vw;
}

.cell .grid-frame {
    width: 100%;
}

.cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
}

.cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
}

.cell-block-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    max-height: 100%;
}

.cell-block-container > .grid-x {
    max-height: 100%;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

@media print,
screen and (min-width: 40em) {
    .medium-grid-frame {
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        width: 100vw;
    }

    .cell .medium-grid-frame {
        width: 100%;
    }

    .medium-cell-block {
        overflow-x: auto;
        max-width: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }

    .medium-cell-block-container {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        max-height: 100%;
    }

    .medium-cell-block-container > .grid-x {
        max-height: 100%;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }

    .medium-cell-block-y {
        overflow-y: auto;
        max-height: 100%;
        min-height: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }
}

@media print,
screen and (min-width: 64em) {
    .large-grid-frame {
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        width: 100vw;
    }

    .cell .large-grid-frame {
        width: 100%;
    }

    .large-cell-block {
        overflow-x: auto;
        max-width: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }

    .large-cell-block-container {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        max-height: 100%;
    }

    .large-cell-block-container > .grid-x {
        max-height: 100%;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }

    .large-cell-block-y {
        overflow-y: auto;
        max-height: 100%;
        min-height: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }
}

@media screen and (min-width: 75em) {
    .xlarge-grid-frame {
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        width: 100vw;
    }

    .cell .xlarge-grid-frame {
        width: 100%;
    }

    .xlarge-cell-block {
        overflow-x: auto;
        max-width: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }

    .xlarge-cell-block-container {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        max-height: 100%;
    }

    .xlarge-cell-block-container > .grid-x {
        max-height: 100%;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }

    .xlarge-cell-block-y {
        overflow-y: auto;
        max-height: 100%;
        min-height: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }
}

@media screen and (min-width: 90em) {
    .xxlarge-grid-frame {
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        width: 100vw;
    }

    .cell .xxlarge-grid-frame {
        width: 100%;
    }

    .xxlarge-cell-block {
        overflow-x: auto;
        max-width: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }

    .xxlarge-cell-block-container {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        max-height: 100%;
    }

    .xxlarge-cell-block-container > .grid-x {
        max-height: 100%;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }

    .xxlarge-cell-block-y {
        overflow-y: auto;
        max-height: 100%;
        min-height: 100%;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }
}

.grid-y.grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    height: 100vh;
}

@media print,
screen and (min-width: 40em) {
    .grid-y.medium-grid-frame {
        width: auto;
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        height: 100vh;
    }
}

@media print,
screen and (min-width: 64em) {
    .grid-y.large-grid-frame {
        width: auto;
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        height: 100vh;
    }
}

@media screen and (min-width: 75em) {
    .grid-y.xlarge-grid-frame {
        width: auto;
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        height: 100vh;
    }
}

@media screen and (min-width: 90em) {
    .grid-y.xxlarge-grid-frame {
        width: auto;
        overflow: hidden;
        position: relative;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-align-items: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        height: 100vh;
    }
}

.cell .grid-y.grid-frame {
    height: 100%;
}

@media print,
screen and (min-width: 40em) {
    .cell .grid-y.medium-grid-frame {
        height: 100%;
    }
}

@media print,
screen and (min-width: 64em) {
    .cell .grid-y.large-grid-frame {
        height: 100%;
    }
}

@media screen and (min-width: 75em) {
    .cell .grid-y.xlarge-grid-frame {
        height: 100%;
    }
}

@media screen and (min-width: 90em) {
    .cell .grid-y.xxlarge-grid-frame {
        height: 100%;
    }
}

.grid-margin-y {
    margin-top: -0.625rem;
    margin-bottom: -0.625rem;
}

@media print,
screen and (min-width: 40em) {
    .grid-margin-y {
        margin-top: -0.9375rem;
        margin-bottom: -0.9375rem;
    }
}

.grid-margin-y > .cell {
    height: calc(100% - 1.25rem);
    margin-top: 0.625rem;
    margin-bottom: 0.625rem;
}

@media print,
screen and (min-width: 40em) {
    .grid-margin-y > .cell {
        height: calc(100% - 1.875rem);
        margin-top: 0.9375rem;
        margin-bottom: 0.9375rem;
    }
}

.grid-margin-y > .auto {
    height: auto;
}

.grid-margin-y > .shrink {
    height: auto;
}

.grid-margin-y > .small-1 {
    height: calc(8.33333% - 1.25rem);
}

.grid-margin-y > .small-2 {
    height: calc(16.66667% - 1.25rem);
}

.grid-margin-y > .small-3 {
    height: calc(25% - 1.25rem);
}

.grid-margin-y > .small-4 {
    height: calc(33.33333% - 1.25rem);
}

.grid-margin-y > .small-5 {
    height: calc(41.66667% - 1.25rem);
}

.grid-margin-y > .small-6 {
    height: calc(50% - 1.25rem);
}

.grid-margin-y > .small-7 {
    height: calc(58.33333% - 1.25rem);
}

.grid-margin-y > .small-8 {
    height: calc(66.66667% - 1.25rem);
}

.grid-margin-y > .small-9 {
    height: calc(75% - 1.25rem);
}

.grid-margin-y > .small-10 {
    height: calc(83.33333% - 1.25rem);
}

.grid-margin-y > .small-11 {
    height: calc(91.66667% - 1.25rem);
}

.grid-margin-y > .small-12 {
    height: calc(100% - 1.25rem);
}

@media print,
screen and (min-width: 40em) {
    .grid-margin-y > .auto {
        height: auto;
    }

    .grid-margin-y > .shrink {
        height: auto;
    }

    .grid-margin-y > .small-1 {
        height: calc(8.33333% - 1.875rem);
    }

    .grid-margin-y > .small-2 {
        height: calc(16.66667% - 1.875rem);
    }

    .grid-margin-y > .small-3 {
        height: calc(25% - 1.875rem);
    }

    .grid-margin-y > .small-4 {
        height: calc(33.33333% - 1.875rem);
    }

    .grid-margin-y > .small-5 {
        height: calc(41.66667% - 1.875rem);
    }

    .grid-margin-y > .small-6 {
        height: calc(50% - 1.875rem);
    }

    .grid-margin-y > .small-7 {
        height: calc(58.33333% - 1.875rem);
    }

    .grid-margin-y > .small-8 {
        height: calc(66.66667% - 1.875rem);
    }

    .grid-margin-y > .small-9 {
        height: calc(75% - 1.875rem);
    }

    .grid-margin-y > .small-10 {
        height: calc(83.33333% - 1.875rem);
    }

    .grid-margin-y > .small-11 {
        height: calc(91.66667% - 1.875rem);
    }

    .grid-margin-y > .small-12 {
        height: calc(100% - 1.875rem);
    }

    .grid-margin-y > .medium-auto {
        height: auto;
    }

    .grid-margin-y > .medium-shrink {
        height: auto;
    }

    .grid-margin-y > .medium-1 {
        height: calc(8.33333% - 1.875rem);
    }

    .grid-margin-y > .medium-2 {
        height: calc(16.66667% - 1.875rem);
    }

    .grid-margin-y > .medium-3 {
        height: calc(25% - 1.875rem);
    }

    .grid-margin-y > .medium-4 {
        height: calc(33.33333% - 1.875rem);
    }

    .grid-margin-y > .medium-5 {
        height: calc(41.66667% - 1.875rem);
    }

    .grid-margin-y > .medium-6 {
        height: calc(50% - 1.875rem);
    }

    .grid-margin-y > .medium-7 {
        height: calc(58.33333% - 1.875rem);
    }

    .grid-margin-y > .medium-8 {
        height: calc(66.66667% - 1.875rem);
    }

    .grid-margin-y > .medium-9 {
        height: calc(75% - 1.875rem);
    }

    .grid-margin-y > .medium-10 {
        height: calc(83.33333% - 1.875rem);
    }

    .grid-margin-y > .medium-11 {
        height: calc(91.66667% - 1.875rem);
    }

    .grid-margin-y > .medium-12 {
        height: calc(100% - 1.875rem);
    }
}

@media print,
screen and (min-width: 64em) {
    .grid-margin-y > .large-auto {
        height: auto;
    }

    .grid-margin-y > .large-shrink {
        height: auto;
    }

    .grid-margin-y > .large-1 {
        height: calc(8.33333% - 1.875rem);
    }

    .grid-margin-y > .large-2 {
        height: calc(16.66667% - 1.875rem);
    }

    .grid-margin-y > .large-3 {
        height: calc(25% - 1.875rem);
    }

    .grid-margin-y > .large-4 {
        height: calc(33.33333% - 1.875rem);
    }

    .grid-margin-y > .large-5 {
        height: calc(41.66667% - 1.875rem);
    }

    .grid-margin-y > .large-6 {
        height: calc(50% - 1.875rem);
    }

    .grid-margin-y > .large-7 {
        height: calc(58.33333% - 1.875rem);
    }

    .grid-margin-y > .large-8 {
        height: calc(66.66667% - 1.875rem);
    }

    .grid-margin-y > .large-9 {
        height: calc(75% - 1.875rem);
    }

    .grid-margin-y > .large-10 {
        height: calc(83.33333% - 1.875rem);
    }

    .grid-margin-y > .large-11 {
        height: calc(91.66667% - 1.875rem);
    }

    .grid-margin-y > .large-12 {
        height: calc(100% - 1.875rem);
    }
}

@media screen and (min-width: 75em) {
    .grid-margin-y > .xlarge-auto {
        height: auto;
    }

    .grid-margin-y > .xlarge-shrink {
        height: auto;
    }

    .grid-margin-y > .xlarge-1 {
        height: calc(8.33333% - 1.875rem);
    }

    .grid-margin-y > .xlarge-2 {
        height: calc(16.66667% - 1.875rem);
    }

    .grid-margin-y > .xlarge-3 {
        height: calc(25% - 1.875rem);
    }

    .grid-margin-y > .xlarge-4 {
        height: calc(33.33333% - 1.875rem);
    }

    .grid-margin-y > .xlarge-5 {
        height: calc(41.66667% - 1.875rem);
    }

    .grid-margin-y > .xlarge-6 {
        height: calc(50% - 1.875rem);
    }

    .grid-margin-y > .xlarge-7 {
        height: calc(58.33333% - 1.875rem);
    }

    .grid-margin-y > .xlarge-8 {
        height: calc(66.66667% - 1.875rem);
    }

    .grid-margin-y > .xlarge-9 {
        height: calc(75% - 1.875rem);
    }

    .grid-margin-y > .xlarge-10 {
        height: calc(83.33333% - 1.875rem);
    }

    .grid-margin-y > .xlarge-11 {
        height: calc(91.66667% - 1.875rem);
    }

    .grid-margin-y > .xlarge-12 {
        height: calc(100% - 1.875rem);
    }
}

@media screen and (min-width: 90em) {
    .grid-margin-y > .xxlarge-auto {
        height: auto;
    }

    .grid-margin-y > .xxlarge-shrink {
        height: auto;
    }

    .grid-margin-y > .xxlarge-1 {
        height: calc(8.33333% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-2 {
        height: calc(16.66667% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-3 {
        height: calc(25% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-4 {
        height: calc(33.33333% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-5 {
        height: calc(41.66667% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-6 {
        height: calc(50% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-7 {
        height: calc(58.33333% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-8 {
        height: calc(66.66667% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-9 {
        height: calc(75% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-10 {
        height: calc(83.33333% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-11 {
        height: calc(91.66667% - 1.875rem);
    }

    .grid-margin-y > .xxlarge-12 {
        height: calc(100% - 1.875rem);
    }
}

.grid-frame.grid-margin-y {
    height: calc(100vh + 1.25rem);
}

@media print,
screen and (min-width: 40em) {
    .grid-frame.grid-margin-y {
        height: calc(100vh + 1.875rem);
    }
}

@media print,
screen and (min-width: 64em) {
    .grid-frame.grid-margin-y {
        height: calc(100vh + 1.875rem);
    }
}

@media screen and (min-width: 75em) {
    .grid-frame.grid-margin-y {
        height: calc(100vh + 1.875rem);
    }
}

@media screen and (min-width: 90em) {
    .grid-frame.grid-margin-y {
        height: calc(100vh + 1.875rem);
    }
}

@media print,
screen and (min-width: 40em) {
    .grid-margin-y.medium-grid-frame {
        height: calc(100vh + 1.875rem);
    }
}

@media print,
screen and (min-width: 64em) {
    .grid-margin-y.large-grid-frame {
        height: calc(100vh + 1.875rem);
    }
}

@media screen and (min-width: 75em) {
    .grid-margin-y.xlarge-grid-frame {
        height: calc(100vh + 1.875rem);
    }
}

@media screen and (min-width: 90em) {
    .grid-margin-y.xxlarge-grid-frame {
        height: calc(100vh + 1.875rem);
    }
}

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.5;
    text-rendering: optimizeLegibility;
}

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

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

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

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
    font-family: "Work Sans", sans-serif;
    font-style: normal;
    font-weight: 600;
    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.4;
    margin-top: 0;
    margin-bottom: 0.5rem;
}

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

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

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

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

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

@media print,
screen and (min-width: 40em) {

    h1,
    .h1 {
        font-size: 3rem;
    }

    h2,
    .h2 {
        font-size: 2.5rem;
    }

    h3,
    .h3 {
        font-size: 1.9375rem;
    }

    h4,
    .h4 {
        font-size: 1.5625rem;
    }

    h5,
    .h5 {
        font-size: 1.25rem;
    }

    h6,
    .h6 {
        font-size: 1rem;
    } 
}

a {
    line-height: inherit;
    color: #53c8e9;
    text-decoration: none;
    cursor: pointer;
}

a:hover,
a:focus {
    color: #7dd6fc;
}

a img {
    border: 0;
}

hr {
    clear: both;
    max-width: 100rem;
    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.5;
}

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: 600;
}

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: #e6e6e6;
    font-family: Consolas, "Liberation Mono", Courier, monospace;
    font-weight: 600;
    color: #0a0a0a;
}

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

.subheader {
    margin-top: 0.2rem;
    margin-bottom: 0.5rem;
    font-weight: 600;
    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;
    }
}

@media screen and (min-width: 75em) {
    .xlarge-text-left {
        text-align: left;
    }

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

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

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

@media screen and (min-width: 90em) {
    .xxlarge-text-left {
        text-align: left;
    }

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

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

    .xxlarge-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 {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    padding: 0.85em 1em;
    border: 1px solid transparent;
    border-radius: 0;
    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: #1779ba;
    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 {
    outline: 0;
}

.button:hover,
.wp-block-button .wp-block-button__link:hover,
.button:focus,
.wp-block-button .wp-block-button__link:focus {
    background-color: #14679e;
    color: #fefefe;
}

.button.tiny,
.wp-block-button .tiny.wp-block-button__link {
    font-size: 0.6rem;
}

.button.small,
.wp-block-button .small.wp-block-button__link {
    font-size: 0.75rem;
}

.button.large,
.wp-block-button .large.wp-block-button__link {
    font-size: 1.25rem;
}

.button.expanded,
.wp-block-button .expanded.wp-block-button__link {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-left: 0;
}

.button.primary,
.wp-block-button .primary.wp-block-button__link {
    background-color: #1779ba;
    color: #fefefe;
}

.button.primary:hover,
.wp-block-button .primary.wp-block-button__link:hover,
.button.primary:focus,
.wp-block-button .primary.wp-block-button__link:focus {
    background-color: #126195;
    color: #fefefe;
}

.button.secondary,
.wp-block-button .secondary.wp-block-button__link {
    background-color: #767676;
    color: #fefefe;
}

.button.secondary:hover,
.wp-block-button .secondary.wp-block-button__link:hover,
.button.secondary:focus,
.wp-block-button .secondary.wp-block-button__link:focus {
    background-color: #5e5e5e;
    color: #fefefe;
}

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

.button.success:hover,
.wp-block-button .success.wp-block-button__link:hover,
.button.success:focus,
.wp-block-button .success.wp-block-button__link:focus {
    background-color: #22bb5b;
    color: #0a0a0a;
}

.button.warning,
.wp-block-button .warning.wp-block-button__link {
    background-color: #ffae00;
    color: #0a0a0a;
}

.button.warning:hover,
.wp-block-button .warning.wp-block-button__link:hover,
.button.warning:focus,
.wp-block-button .warning.wp-block-button__link:focus {
    background-color: #cc8b00;
    color: #0a0a0a;
}

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

.button.alert:hover,
.wp-block-button .alert.wp-block-button__link:hover,
.button.alert:focus,
.wp-block-button .alert.wp-block-button__link:focus {
    background-color: #a53b2a;
    color: #fefefe;
}

.button.disabled,
.wp-block-button .disabled.wp-block-button__link,
.button[disabled],
.wp-block-button .wp-block-button__link[disabled] {
    opacity: 0.25;
    cursor: not-allowed;
}

.button.disabled,
.wp-block-button .disabled.wp-block-button__link,
.button.disabled:hover,
.wp-block-button .disabled.wp-block-button__link:hover,
.button.disabled:focus,
.wp-block-button .disabled.wp-block-button__link:focus,
.button[disabled],
.wp-block-button .wp-block-button__link[disabled],
.button[disabled]:hover,
.wp-block-button .wp-block-button__link[disabled]:hover,
.button[disabled]:focus,
.wp-block-button .wp-block-button__link[disabled]:focus {
    background-color: #1779ba;
    color: #fefefe;
}

.button.disabled.primary,
.wp-block-button .disabled.primary.wp-block-button__link,
.button[disabled].primary,
.wp-block-button .wp-block-button__link[disabled].primary {
    opacity: 0.25;
    cursor: not-allowed;
}

.button.disabled.primary,
.wp-block-button .disabled.primary.wp-block-button__link,
.button.disabled.primary:hover,
.wp-block-button .disabled.primary.wp-block-button__link:hover,
.button.disabled.primary:focus,
.wp-block-button .disabled.primary.wp-block-button__link:focus,
.button[disabled].primary,
.wp-block-button .wp-block-button__link[disabled].primary,
.button[disabled].primary:hover,
.wp-block-button .wp-block-button__link[disabled].primary:hover,
.button[disabled].primary:focus,
.wp-block-button .wp-block-button__link[disabled].primary:focus {
    background-color: #1779ba;
    color: #fefefe;
}

.button.disabled.secondary,
.wp-block-button .disabled.secondary.wp-block-button__link,
.button[disabled].secondary,
.wp-block-button .wp-block-button__link[disabled].secondary {
    opacity: 0.25;
    cursor: not-allowed;
}

.button.disabled.secondary,
.wp-block-button .disabled.secondary.wp-block-button__link,
.button.disabled.secondary:hover,
.wp-block-button .disabled.secondary.wp-block-button__link:hover,
.button.disabled.secondary:focus,
.wp-block-button .disabled.secondary.wp-block-button__link:focus,
.button[disabled].secondary,
.wp-block-button .wp-block-button__link[disabled].secondary,
.button[disabled].secondary:hover,
.wp-block-button .wp-block-button__link[disabled].secondary:hover,
.button[disabled].secondary:focus,
.wp-block-button .wp-block-button__link[disabled].secondary:focus {
    background-color: #767676;
    color: #fefefe;
}

.button.disabled.success,
.wp-block-button .disabled.success.wp-block-button__link,
.button[disabled].success,
.wp-block-button .wp-block-button__link[disabled].success {
    opacity: 0.25;
    cursor: not-allowed;
}

.button.disabled.success,
.wp-block-button .disabled.success.wp-block-button__link,
.button.disabled.success:hover,
.wp-block-button .disabled.success.wp-block-button__link:hover,
.button.disabled.success:focus,
.wp-block-button .disabled.success.wp-block-button__link:focus,
.button[disabled].success,
.wp-block-button .wp-block-button__link[disabled].success,
.button[disabled].success:hover,
.wp-block-button .wp-block-button__link[disabled].success:hover,
.button[disabled].success:focus,
.wp-block-button .wp-block-button__link[disabled].success:focus {
    background-color: #3adb76;
    color: #0a0a0a;
}

.button.disabled.warning,
.wp-block-button .disabled.warning.wp-block-button__link,
.button[disabled].warning,
.wp-block-button .wp-block-button__link[disabled].warning {
    opacity: 0.25;
    cursor: not-allowed;
}

.button.disabled.warning,
.wp-block-button .disabled.warning.wp-block-button__link,
.button.disabled.warning:hover,
.wp-block-button .disabled.warning.wp-block-button__link:hover,
.button.disabled.warning:focus,
.wp-block-button .disabled.warning.wp-block-button__link:focus,
.button[disabled].warning,
.wp-block-button .wp-block-button__link[disabled].warning,
.button[disabled].warning:hover,
.wp-block-button .wp-block-button__link[disabled].warning:hover,
.button[disabled].warning:focus,
.wp-block-button .wp-block-button__link[disabled].warning:focus {
    background-color: #ffae00;
    color: #0a0a0a;
}

.button.disabled.alert,
.wp-block-button .disabled.alert.wp-block-button__link,
.button[disabled].alert,
.wp-block-button .wp-block-button__link[disabled].alert {
    opacity: 0.25;
    cursor: not-allowed;
}

.button.disabled.alert,
.wp-block-button .disabled.alert.wp-block-button__link,
.button.disabled.alert:hover,
.wp-block-button .disabled.alert.wp-block-button__link:hover,
.button.disabled.alert:focus,
.wp-block-button .disabled.alert.wp-block-button__link:focus,
.button[disabled].alert,
.wp-block-button .wp-block-button__link[disabled].alert,
.button[disabled].alert:hover,
.wp-block-button .wp-block-button__link[disabled].alert:hover,
.button[disabled].alert:focus,
.wp-block-button .wp-block-button__link[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 {
    border: 1px solid #1779ba;
    color: #1779ba;
}

.button.hollow,
.wp-block-button .hollow.wp-block-button__link,
.wp-block-button.is-style-outline .wp-block-button__link,
.button.hollow:hover,
.wp-block-button .hollow.wp-block-button__link:hover,
.wp-block-button.is-style-outline .wp-block-button__link:hover,
.button.hollow:focus,
.wp-block-button .hollow.wp-block-button__link:focus,
.wp-block-button.is-style-outline .wp-block-button__link: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,
.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,
.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,
.button.hollow[disabled],
.wp-block-button .hollow.wp-block-button__link[disabled],
.wp-block-button.is-style-outline .wp-block-button__link[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,
.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 {
    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,
.button.hollow:focus,
.wp-block-button .hollow.wp-block-button__link:focus,
.wp-block-button.is-style-outline .wp-block-button__link:focus {
    border-color: #0c3d5d;
    color: #0c3d5d;
}

.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,
.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],
.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,
.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] {
    border: 1px solid #1779ba;
    color: #1779ba;
}

.button.hollow.primary,
.wp-block-button .hollow.primary.wp-block-button__link,
.wp-block-button.is-style-outline .primary.wp-block-button__link {
    border: 1px solid #1779ba;
    color: #1779ba;
}

.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,
.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 {
    border-color: #0c3d5d;
    color: #0c3d5d;
}

.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,
.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],
.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,
.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] {
    border: 1px solid #1779ba;
    color: #1779ba;
}

.button.hollow.secondary,
.wp-block-button .hollow.secondary.wp-block-button__link,
.wp-block-button.is-style-outline .secondary.wp-block-button__link {
    border: 1px solid #767676;
    color: #767676;
}

.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,
.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 {
    border-color: #3b3b3b;
    color: #3b3b3b;
}

.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,
.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],
.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,
.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] {
    border: 1px solid #767676;
    color: #767676;
}

.button.hollow.success,
.wp-block-button .hollow.success.wp-block-button__link,
.wp-block-button.is-style-outline .success.wp-block-button__link {
    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,
.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 {
    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,
.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],
.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,
.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] {
    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 {
    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,
.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 {
    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,
.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],
.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,
.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] {
    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 {
    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,
.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 {
    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,
.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],
.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,
.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] {
    border: 1px solid #cc4b37;
    color: #cc4b37;
}

.button.clear,
.wp-block-button .clear.wp-block-button__link {
    border: 1px solid #1779ba;
    color: #1779ba;
}

.button.clear,
.wp-block-button .clear.wp-block-button__link,
.button.clear:hover,
.wp-block-button .clear.wp-block-button__link:hover,
.button.clear:focus,
.wp-block-button .clear.wp-block-button__link:focus {
    background-color: transparent;
}

.button.clear.disabled,
.wp-block-button .clear.disabled.wp-block-button__link,
.button.clear.disabled:hover,
.wp-block-button .clear.disabled.wp-block-button__link:hover,
.button.clear.disabled:focus,
.wp-block-button .clear.disabled.wp-block-button__link:focus,
.button.clear[disabled],
.wp-block-button .clear.wp-block-button__link[disabled],
.button.clear[disabled]:hover,
.wp-block-button .clear.wp-block-button__link[disabled]:hover,
.button.clear[disabled]:focus,
.wp-block-button .clear.wp-block-button__link[disabled]:focus {
    background-color: transparent;
}

.button.clear:hover,
.wp-block-button .clear.wp-block-button__link:hover,
.button.clear:focus,
.wp-block-button .clear.wp-block-button__link:focus {
    border-color: #0c3d5d;
    color: #0c3d5d;
}

.button.clear:hover.disabled,
.wp-block-button .clear.wp-block-button__link:hover.disabled,
.button.clear:hover[disabled],
.wp-block-button .clear.wp-block-button__link:hover[disabled],
.button.clear:focus.disabled,
.wp-block-button .clear.wp-block-button__link:focus.disabled,
.button.clear:focus[disabled],
.wp-block-button .clear.wp-block-button__link:focus[disabled] {
    border: 1px solid #1779ba;
    color: #1779ba;
}

.button.clear,
.wp-block-button .clear.wp-block-button__link,
.button.clear.disabled,
.wp-block-button .clear.disabled.wp-block-button__link,
.button.clear[disabled],
.wp-block-button .clear.wp-block-button__link[disabled],
.button.clear:hover,
.wp-block-button .clear.wp-block-button__link:hover,
.button.clear:hover.disabled,
.wp-block-button .clear.wp-block-button__link:hover.disabled,
.button.clear:hover[disabled],
.wp-block-button .clear.wp-block-button__link:hover[disabled],
.button.clear:focus,
.wp-block-button .clear.wp-block-button__link:focus,
.button.clear:focus.disabled,
.wp-block-button .clear.wp-block-button__link:focus.disabled,
.button.clear:focus[disabled],
.wp-block-button .clear.wp-block-button__link:focus[disabled] {
    border-color: transparent;
}

.button.clear.primary,
.wp-block-button .clear.primary.wp-block-button__link {
    border: 1px solid #1779ba;
    color: #1779ba;
}

.button.clear.primary:hover,
.wp-block-button .clear.primary.wp-block-button__link:hover,
.button.clear.primary:focus,
.wp-block-button .clear.primary.wp-block-button__link:focus {
    border-color: #0c3d5d;
    color: #0c3d5d;
}

.button.clear.primary:hover.disabled,
.wp-block-button .clear.primary.wp-block-button__link:hover.disabled,
.button.clear.primary:hover[disabled],
.wp-block-button .clear.primary.wp-block-button__link:hover[disabled],
.button.clear.primary:focus.disabled,
.wp-block-button .clear.primary.wp-block-button__link:focus.disabled,
.button.clear.primary:focus[disabled],
.wp-block-button .clear.primary.wp-block-button__link:focus[disabled] {
    border: 1px solid #1779ba;
    color: #1779ba;
}

.button.clear.primary,
.wp-block-button .clear.primary.wp-block-button__link,
.button.clear.primary.disabled,
.wp-block-button .clear.primary.disabled.wp-block-button__link,
.button.clear.primary[disabled],
.wp-block-button .clear.primary.wp-block-button__link[disabled],
.button.clear.primary:hover,
.wp-block-button .clear.primary.wp-block-button__link:hover,
.button.clear.primary:hover.disabled,
.wp-block-button .clear.primary.wp-block-button__link:hover.disabled,
.button.clear.primary:hover[disabled],
.wp-block-button .clear.primary.wp-block-button__link:hover[disabled],
.button.clear.primary:focus,
.wp-block-button .clear.primary.wp-block-button__link:focus,
.button.clear.primary:focus.disabled,
.wp-block-button .clear.primary.wp-block-button__link:focus.disabled,
.button.clear.primary:focus[disabled],
.wp-block-button .clear.primary.wp-block-button__link:focus[disabled] {
    border-color: transparent;
}

.button.clear.secondary,
.wp-block-button .clear.secondary.wp-block-button__link {
    border: 1px solid #767676;
    color: #767676;
}

.button.clear.secondary:hover,
.wp-block-button .clear.secondary.wp-block-button__link:hover,
.button.clear.secondary:focus,
.wp-block-button .clear.secondary.wp-block-button__link:focus {
    border-color: #3b3b3b;
    color: #3b3b3b;
}

.button.clear.secondary:hover.disabled,
.wp-block-button .clear.secondary.wp-block-button__link:hover.disabled,
.button.clear.secondary:hover[disabled],
.wp-block-button .clear.secondary.wp-block-button__link:hover[disabled],
.button.clear.secondary:focus.disabled,
.wp-block-button .clear.secondary.wp-block-button__link:focus.disabled,
.button.clear.secondary:focus[disabled],
.wp-block-button .clear.secondary.wp-block-button__link:focus[disabled] {
    border: 1px solid #767676;
    color: #767676;
}

.button.clear.secondary,
.wp-block-button .clear.secondary.wp-block-button__link,
.button.clear.secondary.disabled,
.wp-block-button .clear.secondary.disabled.wp-block-button__link,
.button.clear.secondary[disabled],
.wp-block-button .clear.secondary.wp-block-button__link[disabled],
.button.clear.secondary:hover,
.wp-block-button .clear.secondary.wp-block-button__link:hover,
.button.clear.secondary:hover.disabled,
.wp-block-button .clear.secondary.wp-block-button__link:hover.disabled,
.button.clear.secondary:hover[disabled],
.wp-block-button .clear.secondary.wp-block-button__link:hover[disabled],
.button.clear.secondary:focus,
.wp-block-button .clear.secondary.wp-block-button__link:focus,
.button.clear.secondary:focus.disabled,
.wp-block-button .clear.secondary.wp-block-button__link:focus.disabled,
.button.clear.secondary:focus[disabled],
.wp-block-button .clear.secondary.wp-block-button__link:focus[disabled] {
    border-color: transparent;
}

.button.clear.success,
.wp-block-button .clear.success.wp-block-button__link {
    border: 1px solid #3adb76;
    color: #3adb76;
}

.button.clear.success:hover,
.wp-block-button .clear.success.wp-block-button__link:hover,
.button.clear.success:focus,
.wp-block-button .clear.success.wp-block-button__link:focus {
    border-color: #157539;
    color: #157539;
}

.button.clear.success:hover.disabled,
.wp-block-button .clear.success.wp-block-button__link:hover.disabled,
.button.clear.success:hover[disabled],
.wp-block-button .clear.success.wp-block-button__link:hover[disabled],
.button.clear.success:focus.disabled,
.wp-block-button .clear.success.wp-block-button__link:focus.disabled,
.button.clear.success:focus[disabled],
.wp-block-button .clear.success.wp-block-button__link:focus[disabled] {
    border: 1px solid #3adb76;
    color: #3adb76;
}

.button.clear.success,
.wp-block-button .clear.success.wp-block-button__link,
.button.clear.success.disabled,
.wp-block-button .clear.success.disabled.wp-block-button__link,
.button.clear.success[disabled],
.wp-block-button .clear.success.wp-block-button__link[disabled],
.button.clear.success:hover,
.wp-block-button .clear.success.wp-block-button__link:hover,
.button.clear.success:hover.disabled,
.wp-block-button .clear.success.wp-block-button__link:hover.disabled,
.button.clear.success:hover[disabled],
.wp-block-button .clear.success.wp-block-button__link:hover[disabled],
.button.clear.success:focus,
.wp-block-button .clear.success.wp-block-button__link:focus,
.button.clear.success:focus.disabled,
.wp-block-button .clear.success.wp-block-button__link:focus.disabled,
.button.clear.success:focus[disabled],
.wp-block-button .clear.success.wp-block-button__link:focus[disabled] {
    border-color: transparent;
}

.button.clear.warning,
.wp-block-button .clear.warning.wp-block-button__link {
    border: 1px solid #ffae00;
    color: #ffae00;
}

.button.clear.warning:hover,
.wp-block-button .clear.warning.wp-block-button__link:hover,
.button.clear.warning:focus,
.wp-block-button .clear.warning.wp-block-button__link:focus {
    border-color: #805700;
    color: #805700;
}

.button.clear.warning:hover.disabled,
.wp-block-button .clear.warning.wp-block-button__link:hover.disabled,
.button.clear.warning:hover[disabled],
.wp-block-button .clear.warning.wp-block-button__link:hover[disabled],
.button.clear.warning:focus.disabled,
.wp-block-button .clear.warning.wp-block-button__link:focus.disabled,
.button.clear.warning:focus[disabled],
.wp-block-button .clear.warning.wp-block-button__link:focus[disabled] {
    border: 1px solid #ffae00;
    color: #ffae00;
}

.button.clear.warning,
.wp-block-button .clear.warning.wp-block-button__link,
.button.clear.warning.disabled,
.wp-block-button .clear.warning.disabled.wp-block-button__link,
.button.clear.warning[disabled],
.wp-block-button .clear.warning.wp-block-button__link[disabled],
.button.clear.warning:hover,
.wp-block-button .clear.warning.wp-block-button__link:hover,
.button.clear.warning:hover.disabled,
.wp-block-button .clear.warning.wp-block-button__link:hover.disabled,
.button.clear.warning:hover[disabled],
.wp-block-button .clear.warning.wp-block-button__link:hover[disabled],
.button.clear.warning:focus,
.wp-block-button .clear.warning.wp-block-button__link:focus,
.button.clear.warning:focus.disabled,
.wp-block-button .clear.warning.wp-block-button__link:focus.disabled,
.button.clear.warning:focus[disabled],
.wp-block-button .clear.warning.wp-block-button__link:focus[disabled] {
    border-color: transparent;
}

.button.clear.alert,
.wp-block-button .clear.alert.wp-block-button__link {
    border: 1px solid #cc4b37;
    color: #cc4b37;
}

.button.clear.alert:hover,
.wp-block-button .clear.alert.wp-block-button__link:hover,
.button.clear.alert:focus,
.wp-block-button .clear.alert.wp-block-button__link:focus {
    border-color: #67251a;
    color: #67251a;
}

.button.clear.alert:hover.disabled,
.wp-block-button .clear.alert.wp-block-button__link:hover.disabled,
.button.clear.alert:hover[disabled],
.wp-block-button .clear.alert.wp-block-button__link:hover[disabled],
.button.clear.alert:focus.disabled,
.wp-block-button .clear.alert.wp-block-button__link:focus.disabled,
.button.clear.alert:focus[disabled],
.wp-block-button .clear.alert.wp-block-button__link:focus[disabled] {
    border: 1px solid #cc4b37;
    color: #cc4b37;
}

.button.clear.alert,
.wp-block-button .clear.alert.wp-block-button__link,
.button.clear.alert.disabled,
.wp-block-button .clear.alert.disabled.wp-block-button__link,
.button.clear.alert[disabled],
.wp-block-button .clear.alert.wp-block-button__link[disabled],
.button.clear.alert:hover,
.wp-block-button .clear.alert.wp-block-button__link:hover,
.button.clear.alert:hover.disabled,
.wp-block-button .clear.alert.wp-block-button__link:hover.disabled,
.button.clear.alert:hover[disabled],
.wp-block-button .clear.alert.wp-block-button__link:hover[disabled],
.button.clear.alert:focus,
.wp-block-button .clear.alert.wp-block-button__link:focus,
.button.clear.alert:focus.disabled,
.wp-block-button .clear.alert.wp-block-button__link:focus.disabled,
.button.clear.alert:focus[disabled],
.wp-block-button .clear.alert.wp-block-button__link:focus[disabled] {
    border-color: transparent;
}

.button.dropdown::after,
.wp-block-button .dropdown.wp-block-button__link::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: 1em;
}

.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,
.button.dropdown.clear::after,
.wp-block-button .dropdown.clear.wp-block-button__link::after {
    border-top-color: #1779ba;
}

.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,
.button.dropdown.clear.primary::after,
.wp-block-button .dropdown.clear.primary.wp-block-button__link::after {
    border-top-color: #1779ba;
}

.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,
.button.dropdown.clear.secondary::after,
.wp-block-button .dropdown.clear.secondary.wp-block-button__link::after {
    border-top-color: #767676;
}

.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,
.button.dropdown.clear.success::after,
.wp-block-button .dropdown.clear.success.wp-block-button__link::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,
.button.dropdown.clear.warning::after,
.wp-block-button .dropdown.clear.warning.wp-block-button__link::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,
.button.dropdown.clear.alert::after,
.wp-block-button .dropdown.clear.alert.wp-block-button__link::after {
    border-top-color: #cc4b37;
}

.button.arrow-only::after,
.wp-block-button .arrow-only.wp-block-button__link::after {
    top: -0.1em;
    float: none;
    margin-left: 0;
}

a.button:hover,
.wp-block-button a.wp-block-button__link:hover,
a.button:focus,
.wp-block-button a.wp-block-button__link: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: 600;
    line-height: 1.5;
    color: #0a0a0a;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
    -webkit-appearance: none;
    -moz-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: #e6e6e6;
    cursor: not-allowed;
}

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

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

::-webkit-input-placeholder {
    color: #fefefe;
}

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

::placeholder {
    color: #fefefe;
}

[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 0 .9rem;
    font-size: inherit;
    font-weight: 600;
    line-height: 1.8;
    color: #444;
}

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: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    margin-bottom: 1rem;
    -webkit-align-items: stretch;
    -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: #e6e6e6;
    color: #0a0a0a;
    text-align: center;
    white-space: nowrap;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    -webkit-align-items: center;
    -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;
    -webkit-flex: 1 1 0px;
    -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: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex: 0 0 auto;
    -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 {
    -webkit-align-self: stretch;
    -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;
    -moz-appearance: none;
    appearance: none;
    border: 1px solid #cacaca;
    border-radius: 0;
    background-color: #fefefe;
    font-family: inherit;
    font-size: 1rem;
    font-weight: 600;
    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: #e6e6e6;
    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)::-webkit-input-placeholder {
    color: #cc4b37;
}

.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: 600;
    color: #cc4b37;
}

.form-error.is-visible {
    display: block;
}

.thumbnail {
    display: inline-block;
    max-width: 100%;
    margin-bottom: 1rem;
    border: solid 4px #fefefe;
    border-radius: 0;
    box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
    line-height: 0;
}

a.thumbnail {
    transition: box-shadow 200ms ease-out;
}

a.thumbnail:hover,
a.thumbnail:focus {
    box-shadow: 0 0 6px 1px rgba(23, 121, 186, 0.5);
}

a.thumbnail image {
    box-shadow: none;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    .medium-order-2 {
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2;
    }

    .medium-order-3 {
        -webkit-order: 3;
        -ms-flex-order: 3;
        order: 3;
    }

    .medium-order-4 {
        -webkit-order: 4;
        -ms-flex-order: 4;
        order: 4;
    }

    .medium-order-5 {
        -webkit-order: 5;
        -ms-flex-order: 5;
        order: 5;
    }

    .medium-order-6 {
        -webkit-order: 6;
        -ms-flex-order: 6;
        order: 6;
    }
}

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

    .large-order-2 {
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2;
    }

    .large-order-3 {
        -webkit-order: 3;
        -ms-flex-order: 3;
        order: 3;
    }

    .large-order-4 {
        -webkit-order: 4;
        -ms-flex-order: 4;
        order: 4;
    }

    .large-order-5 {
        -webkit-order: 5;
        -ms-flex-order: 5;
        order: 5;
    }

    .large-order-6 {
        -webkit-order: 6;
        -ms-flex-order: 6;
        order: 6;
    }
}

@media screen and (min-width: 75em) {
    .xlarge-order-1 {
        -webkit-order: 1;
        -ms-flex-order: 1;
        order: 1;
    }

    .xlarge-order-2 {
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2;
    }

    .xlarge-order-3 {
        -webkit-order: 3;
        -ms-flex-order: 3;
        order: 3;
    }

    .xlarge-order-4 {
        -webkit-order: 4;
        -ms-flex-order: 4;
        order: 4;
    }

    .xlarge-order-5 {
        -webkit-order: 5;
        -ms-flex-order: 5;
        order: 5;
    }

    .xlarge-order-6 {
        -webkit-order: 6;
        -ms-flex-order: 6;
        order: 6;
    }
}

@media screen and (min-width: 90em) {
    .xxlarge-order-1 {
        -webkit-order: 1;
        -ms-flex-order: 1;
        order: 1;
    }

    .xxlarge-order-2 {
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2;
    }

    .xxlarge-order-3 {
        -webkit-order: 3;
        -ms-flex-order: 3;
        order: 3;
    }

    .xxlarge-order-4 {
        -webkit-order: 4;
        -ms-flex-order: 4;
        order: 4;
    }

    .xxlarge-order-5 {
        -webkit-order: 5;
        -ms-flex-order: 5;
        order: 5;
    }

    .xxlarge-order-6 {
        -webkit-order: 6;
        -ms-flex-order: 6;
        order: 6;
    }
}

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

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

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

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

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

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

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

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

@media print,
screen and (min-width: 40em) {
    .medium-flex-container {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
    }

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

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

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

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

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

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

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

@media print,
screen and (min-width: 64em) {
    .large-flex-container {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
    }

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

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

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

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

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

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

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

@media screen and (min-width: 75em) {
    .xlarge-flex-container {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
    }

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

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

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

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

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

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

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

@media screen and (min-width: 90em) {
    .xxlarge-flex-container {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
    }

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

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

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

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

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

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

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

/*
  My custom styles:
  Add your scss files below to structure your project styles
*/
.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: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
    -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: 0;
    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(23, 121, 186, 0.5);
}

.gallery .gallery-icon > a image {
    box-shadow: none;
}

.gallery .gallery-icon > img {
    display: inline-block;
    max-width: 100%;
    margin-bottom: 1rem;
    border: solid 4px #fefefe;
    border-radius: 0;
    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: #1779ba;
}

.has-primary-color {
    color: #1779ba;
}

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

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

.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: #1779ba;
}

.wp-block-button .wp-block-button__link.has-primary-color {
    color: #1779ba;
}

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

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

.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.85em 1em;
    border: 1px solid transparent;
    border-radius: 0;
    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: #1779ba;
    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: #14679e;
    color: #fefefe;
}

.inset_content {
    padding: 0 6%;
}

cite {
    color: #444;
    position: relative;
    top: -15px;
}

.grecaptcha-badge {
    z-index: -1;
    opacity: 0;
}

body,
.entry-content {
    background-color: #fbfbfb;
}

a {
    color: #53c8e9;
    font-weight: 600;
    transition: all .3s ease-in-out;
}

strong {
    font-weight: 600;
}

p {
    margin-bottom: 2rem;
}

.smalltxt {
    font-size: 60%;
}

.updated {
    font-size: .9rem;
}

.largertxt {
    font-size: 1.1rem;
    font-weight: 600;
}

@media print,
screen and (min-width: 64em) {
    .largertxt {
        font-size: 1.2rem;
    }
}

hr {
    margin: 1.5em auto 2.2em;
}

.followtheleader {
    display: block;
    margin-bottom: 4px;
}

@media print,
screen and (min-width: 64em) {
    .followtheleader {
        display: inline-block;
        margin-bottom: auto;
    }
}

.centered {
    text-align: center;
}

.documents_rappa {
    overflow: hidden;
    margin-bottom: 40px;
}

@media print,
screen and (min-width: 64em) {
    .documents_rappa {
        -webkit-column-count: 2;
        column-count: 2;
    }
}

@media screen and (min-width: 90em) {
    .documents_rappa {
        -webkit-column-count: 3;
        column-count: 3;
    }
}

.doc_line {
    margin-bottom: 1.5rem;
}

.doc_download {
    font-size: 1.1rem;
    font-weight: 600;
    position: relative;
}

.doc_download:before {
    content: '';
    position: relative;
    display: inline-block;
    margin-right: 8px;
    height: 25px;
    width: 18px;
    top: 5px;
    background-image: url("/images/icon_document.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.doc_download:after {
    content: '\203a';
    color: #979797;
    position: absolute;
    right: -15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    display: inline-block;
    margin-left: 8px;
    transition: all .3s ease-in-out;
}

.doc_download:hover:after {
    right: -20px;
}

@media screen and (min-width: 75em) {
    .notlgdesktop {
        display: none;
    }
}

.post_snippet {
    padding-bottom: 10px;
}

.post_snippet p {
    margin-bottom: .5em;
}

.positions_block {
    margin-top: 1em;
}

.joblistings h5 {
    margin-bottom: 0;
    padding: 15px;
}

.backlink {
    margin-top: 20px;
    margin-bottom: 50px;
}

.backlink a {
    display: inline-block;
    padding: 6px 12px 10px;
    color: #82b9aa;
    background-color: #1f303d;
    border-radius: 6px;
}

@media print,
screen and (min-width: 40em) {

    .column,
    .columns,
    .columns {
        padding-right: 2%;
        padding-left: 2%;
    }
}

.wp-block-separator {
    border-top: 0;
    border-bottom: 1px solid #ddd;
}

.nopad {
    padding: 0 !important;
}

section {
    padding: 60px 0;
}

.riseup {
    z-index: 25 !important;
}

@media print,
screen and (min-width: 40em) {
    section {
        padding: 80px 0;
    }
}

@media print,
screen and (min-width: 64em) {
    section {
        padding: 100px 0;
    }
}

.section_rappa {
    margin: 0 auto;
    overflow: hidden;
}

.section_rappa hr {
    margin: 3rem auto;
}

.topnbottom {
    margin: 30px auto;
}

textarea {
    resize: none;
}

.map_rappa {
    position: relative;
    width: 100%;
    padding-top: 76%;
    overflow: hidden;
    margin: 20px auto 30px;
    border: 2px solid #979797;
}

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

@media print,
screen and (min-width: 40em) {
    .map_rappa {
        padding-top: 64%;
    }
}

@media print,
screen and (min-width: 64em) {
    .map_rappa {
        padding-top: 50%;
    }
}

blockquote,
blockquote p {
    color: #fff;
    font-size: 1.1rem;
    font-weight: 600;
}

@media screen and (min-width: 75em) {

    blockquote,
    blockquote p {
        font-size: 1.2rem;
    }
}

blockquote {
    display: inline-block;
    border: none;
    padding: 25px 25px 5px;
    margin: 10px auto 40px;
    background-color: #2f8b73;
    border-bottom: 8px solid #1f303d;
    overflow: hidden;
}

@media screen and (min-width: 90em) {
    blockquote {
        padding: 30px 30px 10px;
    }
}

blockquote.testimony {
    background-color: #1f303d;
}

blockquote.testimony p {
    color: #82b9aa;
}

blockquote.testimony cite {
    color: #fff;
}

@media print,
screen and (min-width: 64em) {
    ul.two_columns {
        -webkit-column-count: 2;
        column-count: 2;
        padding-right: 20px;
    }
}

.page_rappa {
    padding-bottom: 50px;
    background-image: url("/images/bgimg_rollers.jpg");
    background-size: 102% auto;
    background-position: center bottom;
    background-repeat: no-repeat;
}

.inner_rappa,
.inner_rappa_wide,
.inner_rappa_narrow {
    position: relative;
    z-index: 25;
    margin: 0 auto;
}

.inner_rappa ul,
.inner_rappa_wide ul,
.inner_rappa_narrow ul {
    margin-left: 1.8em;
    line-height: 1.4;
    margin-bottom: 2em;
}

.inner_rappa ul ul,
.inner_rappa_wide ul ul,
.inner_rappa_narrow ul ul {
    list-style: circle;
    margin-top: .5em;
    margin-left: 1.2em;
    margin-bottom: 1em;
}

.inner_rappa ul li,
.inner_rappa_wide ul li,
.inner_rappa_narrow ul li {
    font-size: 1.1rem;
    margin-bottom: .5em;
}

.inner_rappa {
    max-width: 1440px;
    padding: 0 6%;
}

@media print,
screen and (min-width: 64em) {
    .inner_rappa {
        padding: 0 5%;
    }
}

@media screen and (min-width: 90em) {
    .inner_rappa {
        padding: 0;
    }
}

.inner_rappa_narrow {
    max-width: 1200px;
    padding: 0 6%;
}

@media print,
screen and (min-width: 64em) {
    .inner_rappa_narrow {
        padding: 0 5%;
    }
}

@media screen and (min-width: 90em) {
    .inner_rappa_narrow {
        padding: 0;
    }
}

.inner_rappa_wide {
    max-width: 1600px;
    padding: 0 6%;
}

@media print,
screen and (min-width: 64em) {
    .inner_rappa_wide {
        padding: 0 5%;
    }
}

@media screen and (min-width: 90em) {
    .inner_rappa_wide {
        padding: 0 3%;
    }
}

.shiftup {
    padding: 25px 0 0;
}

@media print,
screen and (min-width: 40em) {
    .shiftup {
        padding: 0;
        margin-top: -100px;
    }

    .shiftup h1.spacedout,
    .shiftup h2.spacedout {
        color: #fff;
    }
}

@media print,
screen and (min-width: 64em) {
    .shiftup {
        margin-top: -125px;
    }
}

@media screen and (min-width: 75em) {
    .shiftup {
        margin-top: -140px;
    }
}

.shiftup .entry-content {
    padding: 15px 0 40px;
}

.entry-content section {
    padding: 40px 0;
}

@media print,
screen and (min-width: 40em) {
    .shiftup .entry-content {
        padding: 30px;
    }

    .shiftup .entry-content:after {
        content: '';
        position: absolute;
        z-index: -1;
        top: 0;
        left: 0;
        background-color: #fafafa;
        box-shadow: 0 -10px 8px rgba(0, 0, 0, 0.4);
        width: 100%;
        height: 260px;
    }
}

@media screen and (min-width: 75em) {
    .shiftup .entry-content {
        padding: 50px;
    }
}

@media screen and (min-width: 75em) {
    .shiftup .entry-content {
        padding: 60px;
    }
}

.entry-content {
    position: relative;
    z-index: 25;
    min-height: 500px;
}

@media print,
screen and (min-width: 64em) {
    .entry-content ul {
        -webkit-column-count: 2;
        column-count: 2;
        -webkit-column-gap: 50px;
        column-gap: 50px;
    }

    .entry-content ul li ul {
        -webkit-column-count: 1;
        column-count: 1;
        margin-bottom: .5rem;
    }
}

@media screen and (min-width: 75em) {
    .entry-content ul {
        -webkit-column-gap: 60px;
        column-gap: 60px;
    }
}

.wp-block-image img {
    margin-top: .2em;
    margin-bottom: 1.6em;
}

.search .entry-content,
.archive .entry-content {
    margin: 0px auto;
}

.sidebar {
    background-color: #eaeaea;
    background-color: transparent;
    border: 4px solid #eaeaea;
    border-bottom: none;
    padding: 25px;
}

.sidebar h6 {
    letter-spacing: 1px;
}

.sidebar ul {
    list-style: none;
    margin-left: .6rem;
    -webkit-column-count: 1 !important;
    column-count: 1 !important;
}

.sidebar li {
    position: relative;
    font-size: 1rem !important;
}

.sidebar li a {
    position: relative;
}

.sidebar li a:before {
    content: '\203A';
    color: #8EB8B3;
    position: relative;
    padding-right: 7px;
    transition: all .3s ease-in-out;
}

.sidebar li a:hover:before {
    padding-right: 12px;
}

.sidebar section {
    padding: 0;
}

@media print,
screen and (min-width: 40em) {
    .sidebar {
        padding: 50px;
    }
}

@media print,
screen and (min-width: 64em) {
    .sidebar {
        padding: 25px;
    }
}

@media screen and (min-width: 75em) {
    .sidebar {
        padding: 30px;
    }
}

@media screen and (min-width: 90em) {
    .sidebar {
        padding: 40px;
    }
}

.responsive_vid {
    position: relative;
    width: 100%;
    padding-top: 55.75%;
    border: 2px solid #979797;
    margin-bottom: 2em;
    overflow: hidden;
}

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

/* HEADLINE STYLES */



h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: inherit;
    font-weight: 600;
    line-height: 1.1;
    margin-bottom: 20px;
}

h1 {
    font-size: 1.8rem;
}

@media print,
screen and (min-width: 40em) {
    h1 {
        font-size: 1.9rem;
    }
}

@media print,
screen and (min-width: 64em) {
    h1 {
        font-size: 2rem;
    }
}

h2 {
    font-size: 1.7rem;
}

@media print,
screen and (min-width: 40em) {
    h2 {
        font-size: 1.8rem;
    }
}

@media print,
screen and (min-width: 64em) {
    h2 {
        font-size: 1.9rem;
    }
}

h3 {
    font-size: 1.6rem;
}

@media print,
screen and (min-width: 40em) {
    h3 {
        font-size: 1.7rem;
    }
}

@media print,
screen and (min-width: 64em) {
    h3 {
        font-size: 1.8rem;
    }
}

h4 {
    font-size: 1.4rem;
}

@media print,
screen and (min-width: 40em) {
    h4 {
        font-size: 1.5rem;
    }
}

@media print,
screen and (min-width: 64em) {
    h4 {
        font-size: 1.6rem;
    }
}

h5 {
    font-size: 1.2rem;
}

@media print,
screen and (min-width: 40em) {
    h5 {
        font-size: 1.3rem;
    }
}

@media print,
screen and (min-width: 64em) {
    h5 {
        font-size: 1.4rem;
    }
}

h6 {
    font-size: 1.1rem;
}

@media print,
screen and (min-width: 40em) {
    h6 {
        font-size: 1.2rem;
    }
}

@media screen and (min-width: 90em) {
    h6 {
        font-size: 1.3rem;
    }
}

h1.spacedout,
h2.spacedout,
h3.spacedout {
    color: #2f8b73;
    text-transform: uppercase;
    font-family: 'microsquare-boldext', sans-serif;
    font-weight: 600;
    font-size: 1.2rem;
    letter-spacing: 1px;
}

@media print,
screen and (min-width: 40em) {

    h1.spacedout,
    h2.spacedout,
    h3.spacedout {
        font-size: 1.4rem;
    }
}

@media print,
screen and (min-width: 64em) {

    h1.spacedout,
    h2.spacedout,
    h3.spacedout {
        font-size: 1.4rem;
        /* letter-spacing: 2px; */
    }
}

@media screen and (min-width: 75em) {

    h1.spacedout,
    h2.spacedout,
    h3.spacedout {
        font-size: 1.5rem;
        /* letter-spacing: 3px; */
    }
}

@media screen and (min-width: 90em) {

    h1.spacedout,
    h2.spacedout,
    h3.spacedout {
        /* letter-spacing: 4px; */
    }
}

/*  TOOLBAR - HEADER - OFFCANVAS STYLES  */



.website_header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999;
    width: 100%;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.4);
    transition: all .3s ease-in-out;
}

.website_header.navactive {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
}

.main_toolbar {
    position: relative;
    padding: 0 5%;
    /* background-color: #fefefe; */
    background-color: #f9f9f9;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
    width: 100%;
    transition: all .3s ease-in-out;
}

.toolbar_logo {
    position: absolute;
    z-index: 9999999;
    left: 3%;
    top: 50%;
    transform: translateY(-50%);
    display: inline-block;
    transition: all .3s ease-in-out;
}

@media print,
screen and (min-width: 40em) {
    .toolbar_logo {
    
    }
}

.toolbar_logo img {
    width: auto;
    height: 50px;
    transition: all .3s ease-in-out;
}

@media print,
screen and (min-width: 40em) {
    .toolbar_logo img {
        height: 60px;
    }
    .main_toolbar {
        height: 80px;
    }
    #mega-menu-wrap-max_mega_menu_1 {
        top: 10px;
    }
}

@media print,
screen and (min-width: 64em) {
    .toolbar_logo img {
        height: 70px;
    }
    .main_toolbar {
        height: 90px;
        padding: 0 3%;
    }
    #mega-menu-wrap-max_mega_menu_1 {
        top: 30px;
    }
}

@media screen and (min-width: 75em) {
    .toolbar_logo img {
        /* height: 120px; */
    }
}

@media screen and (min-width: 90em) {
    .toolbar_logo img {
        /* height: 125px; */
    }
}

.secondary_toolbar {
    display: block;
    position: relative;
    z-index: 99;
    padding: 6px 3% 8px;
    color: #fff;
    background-color: #001f27;
    background-color: #002e42;
    /* background-color: #989898; */
    font-size: 1rem;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-weight: 500;
    width: 100%;
    text-transform: uppercase;
    letter-spacing: 1px;
    overflow: hidden;
}

.secondary_toolbar a {
    color: #53c8e9;
}

@media print,
screen and (min-width: 64em) {
    .secondary_toolbar {
        display: block;
        padding: 10px 3%;
    }
}

/* @media screen and (min-width: 90em) {
    .secondary_toolbar {
        padding: 15px 3%;
    }
} */

.second_left {
    display: none;
    float: left;
}

@media print,
screen and (min-width: 64em) {
    .second_left {
        display: block;
    }
}

.second_right {
    /* display: none; */
    position: relative;
    float: right;
}

@media print,
screen and (min-width: 64em) {
    .second_right {
        display: block;
    }
}

.toolbar_nav ul {
    position: relative;
    top: 2px;
    list-style: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0;
    padding: 0;
}

.toolbar_nav ul li {
    position: relative;
    display: inline-block;
    margin-right: 10px;
    font-size: .9rem;
}

@media screen and (min-width: 90em) {
    .toolbar_nav ul li {
        margin-right: 8px;
    }
}

.toolbar_nav ul li a {
    position: relative;
    display: inline-block;
    color: #fff;
    padding: 5px 12px 5px 0;
    transition: all .3s ease-in-out;
}

.toolbar_nav ul li a:after {
    content: '';
    position: absolute;
    width: 1px;
    top: 50%;
    height: 16px;
    right: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    background-color: #fff;
    opacity: .3;
}

.toolbar_nav ul li:nth-last-of-type(1) a:after {
    display: none;
}

.toolbar_nav ul li a:hover,
.toolbar_nav ul li.is-active a {
    opacity: .6;
}

@media screen and (min-width: 75em) {
    .toolbar_nav ul {
        letter-spacing: 2px;
    }
}

.mainbar_nav {
    display: none;
}

@media print,
screen and (min-width: 64em) {
    .mainbar_nav {
        display: inline-block;
    }
}

.mainbar_nav ul {
    position: relative;
    right: -6px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.mainbar_nav ul li {
    position: relative;
    text-transform: uppercase;
    display: inline-block;
    font-size: .8rem;
    margin-left: 0px;
}

@media screen and (min-width: 75em) {
    .mainbar_nav ul li {
        font-size: .9rem;
        margin-left: 3px;
    }
}

.mainbar_nav ul li a {
    color: #262626;
    padding: 14px 7px;
    transition: all .3s ease-in-out;
}

@media screen and (min-width: 75em) {
    .mainbar_nav ul li a {
        padding: 14px 10px;
    }
}

.mainbar_nav ul li:hover a {
    color: #9A8348;
}

.mainbar_nav ul li.menu-item-has-children a {
    padding: 14px 12px 14px 2px;
}

@media screen and (min-width: 75em) {
    .mainbar_nav ul li.menu-item-has-children a {
        padding: 14px 15px 14px 5px;
    }
}

.mainbar_nav ul li.menu-item-has-children:after {
    content: '\203A';
    font-size: 1.2rem;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(90deg);
    -ms-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg);
}

.mainbar_nav ul .sub-menu {
    position: absolute;
    margin-top: 10px;
    right: 0;
    width: 0;
    background-color: #363636;
    transition: all .4s ease-in-out;
    overflow: hidden;
}

.mainbar_nav ul .sub-menu li,
.mainbar_nav ul .sub-menu li a {
    text-align: right;
    display: block !important;
    width: 300px;
}

.mainbar_nav ul .sub-menu li a {
    color: #fefefe;
    padding: 12px 20px 12px 12px;
    border-right: 10px solid #9A8348;
    background-color: rgba(0, 0, 0, 0);
    transition: all .3s ease-in-out;
}

.mainbar_nav ul .sub-menu li:hover a {
    color: #9A8348;
    padding-right: 30px;
    background-color: black;
}

.mainbar_nav ul li.menu-item-has-children:hover .sub-menu {
    width: 300px;
}

.navline {
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.navline a {
    transition: all .3s ease-in-out;
    color: #1f303d;
}

.navline a:hover {
    color: #53c8e9;
}

.navline img {
    transition: all .3s ease-in-out;
}

.navline img:hover {
    opacity: .5;
}

@media only screen and (max-width: 1024px) {
    #mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 > li.mega-menu-tabbed > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
        font-size: 14px !important;
    }
}

ul.mega-sub-menu li.widget_media_image img {
    border: 2px solid #fff !important;
}

ul.mega-sub-menu a.mega-menu-link {
    transition: all .3s ease-in-out !important;
    color: #1f303d;
}

@media print,
screen and (min-width: 64em) {
    ul.mega-sub-menu a.mega-menu-link:hover {
        color: #53c8e9 !important;
    }
}

li.mega-menu-item > a.mega-menu-link {
    font-weight: 600 !important;
}

@media print,
screen and (min-width: 64em) {
    #mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 > li.mega-menu-tabbed > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
        border-bottom: 1px solid #ccc !important;
    }
}

ul.mega-sub-menu p {
    margin-bottom: 0 !important;
}

ul.mega-sub-menu p a img {
    transition: all .3s ease-in-out;
}

ul.mega-sub-menu p a img:hover {
    opacity: .5;
}

.click_to_call_numba {
    position: relative;
    padding: 10px 5% 15px;
    font-weight: 600;
    font-size: 1.4rem;
    transition: all .3s ease-in-out;
}

.click_to_call_numba a {
    color: #FBD91F;
}

.click_to_call_numba:hover {
    opacity: .4;
}

.click_to_call_numba:before {
    content: '';
    display: inline-block;
    position: relative;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-right: 5px;
    top: 6px;
    width: 26px;
    height: 26px;
    background-image: url("/images/icon_roundphone.svg");
}

.main_right {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 3%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media print,
screen and (min-width: 64em) {
    .main_right {
        right: 3%;
    }
}

#desktop_search_trigga {
    display: inline-block;
    position: relative;
    top: 6px;
    width: 25px;
    height: 25px;
    margin-left: 25px;
    float: right;
    background-image: url("/images/icon_search_dark.svg");
    background-size: 80%;
    background-position: center;
    background-repeat: no-repeat;
    cursor: pointer;
    transition: all .3s ease-in-out;
}

#desktop_search_trigga:hover {
    opacity: .3;
}

#desktop_search {
    position: fixed;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    color: #fff;
    background-image: url("/images/bgimg_blankpackages1.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom;
    background-color: #9A8348;
    opacity: 0;
}

#desktop_search h2,
#desktop_search h3,
#desktop_search h4 {
    color: #060606;
}

#desktop_search ::-webkit-input-placeholder {
    font-size: .9rem;
    color: #646464;
}

#desktop_search :-ms-input-placeholder {
    font-size: .9rem;
    color: #646464;
}

#desktop_search ::placeholder {
    font-size: .9rem;
    color: #646464;
}

#desktop_search [type='text'],
#desktop_search [type='password'],
#desktop_search [type='date'],
#desktop_search [type='datetime'],
#desktop_search [type='datetime-local'],
#desktop_search [type='month'],
#desktop_search [type='week'],
#desktop_search [type='email'],
#desktop_search [type='number'],
#desktop_search [type='search'],
#desktop_search [type='tel'],
#desktop_search [type='time'],
#desktop_search [type='url'],
#desktop_search [type='color'],
#desktop_search textarea {
    height: auto;
    margin-bottom: 0;
}

#desktop_search div {
    max-width: 800px;
    width: 100%;
}

#desktop_search .searchbttn {
    width: 100%;
    height: 100%;
    background-color: #181818;
    background-image: url("/images/icon_search.svg");
    background-size: 24px;
    background-position: center;
    background-repeat: no-repeat;
    border: none;
    outline: none;
    cursor: pointer;
}

body.searchactive,
html.searchactive {
    overflow-y: hidden !important;
}

#desktop_search.searchactive {
    z-index: 99999999;
}

.nav-links {
    overflow: hidden;
    margin-bottom: 50px;
}

/* NAVIGATION STYLES */
#mobile_nav_trigga {
    display: inline-block;
    z-index: 99;
    text-align: center;
    line-height: 1;
    cursor: pointer;
    background-color: #fff;
    padding: 10px;
}

@media print,
screen and (min-width: 64em) {
    #mobile_nav_trigga {
        display: none;
    }
}

.helpr_text {
    display: none;
    position: relative;
    top: -2px;
    color: #999;
    font-weight: 600;
    margin-right: 15px;
    transition: all .4s ease-in-out;
}

@media print,
screen and (min-width: 40em) {
    .helpr_text {
        display: inline-block;
    }
}

.closing_time {
    position: absolute;
    z-index: 9999;
    top: 12px;
    right: 4%;
    width: 40px;
    height: 40px;
    cursor: pointer;
}

@media print,
screen and (min-width: 40em) {
    .closing_time {
        top: 30px;
    }
}

.mainliner1,
.mainliner2 {
    position: absolute;
    top: 50%;
    left: 50%;
    height: 3px;
    width: 100%;
    background-color: #f1f1f1;
    transition: all .3s ease-in-out;
}

.mainliner1 {
    -webkit-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
    -ms-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
    transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}

.mainliner2 {
    -webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
    -ms-transform: translateX(-50%) translateY(-50%) rotate(45deg);
    transform: translateX(-50%) translateY(-50%) rotate(45deg);
}

.closing_time:hover .mainliner1,
.closing_time:hover .mainliner2 {
    -webkit-transform: translateX(-50%) translateY(-50%) rotate(0);
    -ms-transform: translateX(-50%) translateY(-50%) rotate(0);
    transform: translateX(-50%) translateY(-50%) rotate(0);
}

.mobile_nav_closer {
    opacity: 0;
}

.burger_time {
    width: 35px;
    height: 20px;
    padding: 0;
    top: 2px;
    position: relative;
    display: inline-block;
    cursor: pointer;
}

.bar1,
.bar2,
.bar3 {
    position: absolute;
    display: block;
    width: 100%;
    height: 3px;
    left: 50%;
    background-color: #232323;
    transition: all .3s ease;
}

@media print,
screen and (min-width: 64em) {

    .bar1,
    .bar2,
    .bar3 {
        background-color: #fff;
    }
}

.bar1 {
    top: 0;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.bar2 {
    top: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
}

.bar3 {
    bottom: 0;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

#mobile_nav_trigga:hover .bar1,
.burger_time.navactive .bar1 {
    left: 40%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    transition: all .3s ease;
}

#mobile_nav_trigga:hover .bar2,
.burger_time.navactive .bar2 {
    left: 60%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
    transition: all .3s ease;
}

#mobile_nav_trigga:hover .bar3,
.burger_time.navactive .bar3 {
    left: 40%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    transition: all .3s ease;
}

.offcan_overlay {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9990;
    width: 100%;
    height: 100%;
    background-color: #232323;
    opacity: 0;
}

.offcan_overlay.navactive {
    display: block;
}

#offcan_nav_trigger {
    cursor: pointer;
    width: 47px;
    height: 38px;
}

body .navactive {
    overflow-x: hidden;
}

html {
    overflow-x: hidden;
}

.offcan_site_wrapper {
    display: inline-block;
    position: absolute;
    width: 100%;
    height: 100%;
    right: 0;
}

.offcan_nav_wrapper,
.offcan_site_wrapper {
    transition: all .4s;
}

.offcan_site_wrapper.navactive {
    overflow: hidden;
}

body.admin-bar .offcan_nav_wrapper,
body.admin-bar .website_header,
body.admin-bar .offcan_site_wrapper {
    top: 32px !important;
}

.offcan_nav_wrapper {
    position: fixed;
    z-index: 999999;
    top: 0;
    right: -500px;
    display: inline-block;
    height: 100%;
    overflow-y: scroll;
    overflow-x: hidden;
    padding: 0 0 80px;
    background: #9A8348;
}

.offcan_nav_wrapper ::-webkit-input-placeholder {
    color: #646464;
    font-size: .9rem;
}

.offcan_nav_wrapper :-ms-input-placeholder {
    color: #646464;
    font-size: .9rem;
}

.offcan_nav_wrapper ::placeholder {
    color: #646464;
    font-size: .9rem;
}

.offcan_nav_wrapper.navactive {
    right: 0;
}

.offcan_nav_wrapper .menu .is-active > a {
    background: rgba(0, 0, 0, 0);
    transition: all .3s ease-in-out;
}

.offcan_nav_wrapper .menu .is-active > a:hover {
    background: rgba(0, 0, 0, 0.3);
}

.offcan_nav_wrapper .closing_time {
    position: fixed;
    top: auto;
    bottom: 20px !important;
    right: 20px !important;
}

.offcan_nav_wrapper ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.offcan_nav_wrapper ul li {
    position: relative;
    overflow: hidden;
    width: 100%;
}

.offcan_nav_wrapper ul li a {
    color: #fff;
    display: block;
    font-family: inherit;
    font-weight: 900;
    font-size: 1rem;
    letter-spacing: 3px;
    text-transform: uppercase;
    line-height: 1;
    padding: 18px 13px 18px 30px;
    transition: all .4s ease-in-out;
}

.offcan_nav_wrapper ul li a:hover {
    color: #dedede;
    color: #FBD91F;
}

.offcan_nav_wrapper ul.sub-menu {
    position: relative;
    overflow: hidden;
    height: 0;
    background: rgba(0, 0, 0, 0.4);
}

.offcan_nav_wrapper ul.sub-menu:before {
    content: '';
    position: absolute;
    width: 8px;
    height: 100%;
    top: 0;
    left: 0;
}

.offcan_nav_wrapper ul.sub-menu a:hover {
    color: #dedede;
}

.offcan_nav_wrapper ul.sub-menu li a {
    padding: 18px 13px 18px 40px !important;
    letter-spacing: 1.5px;
    color: #f8f8f8;
    text-shadow: none;
    opacity: .85;
}

.subset_toggle {
    position: absolute;
    color: #000;
    font-family: inherit;
    cursor: pointer;
    text-align: center;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    transition: all .4s ease;
}

.subset_toggle {
    width: 70px;
    height: 50px;
    border-radius: 50%;
    top: 1px;
    right: 0;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    background: url(/images/more_icon.png) no-repeat;
    background-size: 25px 25px;
    background-position: center;
    opacity: .8;
}

.subset_toggle.opened {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: all .4s ease;
}

#offcan_closer {
    cursor: pointer;
    width: 35px;
    height: 35px;
    position: absolute;
    z-index: 99;
    top: 16px;
    right: 15px;
    opacity: 0;
    transition: all .2s ease;
}

#offcan_closer.navactive {
    opacity: 1;
    transition: all .5s ease;
}

.offcan_search {
    padding: 0 5%;
    margin: 20px 0 10px;
}

.offcan_search input {
    margin: 0;
    border: none;
}

.offcan_search input:focus {
    box-shadow: none;
}

.offcan_search .searchbttn {
    width: 100%;
    height: 100%;
    background-color: #181818;
    background-image: url("/images/icon_search.svg");
    background-size: 20%;
    background-position: center;
    background-repeat: no-repeat;
    border: none;
    outline: none;
}

@media print,
screen and (min-width: 64em) {
    .offcan_search .searchbttn {
        background-size: 25%;
    }
}

@media only screen and (min-width: 641px) {
    .offcan_site_wrapper.navactive {
        -webkit-transform: translateX(-500px);
        -ms-transform: translateX(-500px);
        transform: translateX(-500px);
    }

    .offcan_nav_wrapper ul li:hover a {
        transition: all .4s ease;
    }

    .offcan_nav_wrapper ul li:hover:before {
        left: -43px;
        transition: .2s ease;
        transition-delay: .2s;
    }

    .offcan_nav_wrapper {
        width: 500px;
    }
}

@media only screen and (max-width: 640px) {
    .offcan_nav_wrapper {
        width: 100%;
        right: -100%;
    }

    .offcan_site_wrapper.navactive {
        right: 0;
    }
}

/*  PAGE HEADER STYLES  */
.empty_header {
    position: relative;
    width: 100%;
    background-color: #dedede;
}

section.empty_header {
    padding: 140px 0 10px;
}

@media print,
screen and (min-width: 64em) {
    section.empty_header {
        padding: 200px 0 10px;
    }
}

.page_header {
    position: relative;
    width: 100%;
    min-height: 175px;
    background-color: #1f303d;
    overflow: hidden;
    padding: 120px 6% 0;
}

.page_header .imgbg {
    opacity: .3;
}

.page_header:after {
    content: '';
    position: absolute;
    z-index: 5;
    width: 100%;
    height: 8px;
    left: 0;
    bottom: 0;
    background-color: #82b9aa;
    box-shadow: 0 -3px 8px rgba(0, 0, 0, 0.4);
}

@media print,
screen and (min-width: 40em) {
    .page_header {
        min-height: 250px;
    }
}

@media print,
screen and (min-width: 64em) {
    .page_header {
        min-height: 350px;
        padding: 180px 5% 0;
    }
}

@media screen and (min-width: 75em) {
    .page_header {
        min-height: 420px;
    }
}

.slim_header {
    position: relative;
    width: 100%;
    background-color: #1f303d;
    overflow: hidden;
    padding: 140px 6% 0;
}

.slim_header .imgbg {
    opacity: .2;
    background-position: center top !important;
}

@media print,
screen and (min-width: 64em) {
    .slim_header {
        padding: 210px 5% 0;
        min-height: 250px;
    }
}

.slim_header h1 {
    color: #fff;
    margin-bottom: 2rem;
    text-align: right;
}

.slim_header:after {
    content: '';
    position: absolute;
    z-index: 5;
    width: 100%;
    height: 8px;
    left: 0;
    bottom: 0;
    background-color: #82b9aa;
    box-shadow: 0 -3px 8px rgba(0, 0, 0, 0.4);
}

.feature_bannerimg {
    position: relative;
    height: 260px;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    border: 3px solid #979797;
    margin-bottom: 2.6rem;
}

@media print,
screen and (min-width: 40em) {
    .feature_bannerimg {
        height: 200px;
    }
}

@media print,
screen and (min-width: 64em) {
    .feature_bannerimg {
        height: 225px;
    }
}

@media screen and (min-width: 75em) {
    .feature_bannerimg {
        height: 250px;
    }
}

@media screen and (min-width: 90em) {
    .feature_bannerimg {
        height: 300px;
    }
}

.imgbg {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-size: cover !important;
    background-repeat: no-repeat !important;
}

/*  HOMEPAGE SUPER STYLES  */



.homehero {
    position: relative;
    color: #fff;
    overflow: hidden;
    background-color: #1f303d;
    background-color: #2f8b73;
    padding: 180px 7% 120px;
}

@media print,
screen and (min-width: 40em) {
    .homehero {
        padding: 200px 6% 130px;
    }
}

@media print,
screen and (min-width: 64em) {
    .homehero {
        padding: 320px 8% 140px;
    }
}

@media screen and (min-width: 75em) {
    .homehero {
        padding: 350px 10% 160px;
    }
}

@media screen and (min-width: 90em) {
    .homehero {
        padding: 380px 12% 180px;
    }
}

.homehero:after {
    content: '';
    position: absolute;
    z-index: 5;
    width: 100%;
    height: 8px;
    left: 0;
    bottom: 0;
    background-color: #82b9aa;
    box-shadow: 0 -3px 8px rgba(0, 0, 0, 0.4);
}

.homehero h1 {
    font-family: 'microsquare-boldext', sans-serif;
    text-transform: uppercase;
    font-weight: normal;
}

.homehero .imgbg {
    opacity: .5;
    mix-blend-mode: multiply;
}

.tile_rappa {
    margin-top: -80px;
}

@media print,
screen and (min-width: 40em) {
    .tile_rappa {
        margin-top: -90px;
    }
}

@media print,
screen and (min-width: 64em) {
    .tile_rappa {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
        margin-top: -100px;
    }
}

@media screen and (min-width: 75em) {
    .tile_rappa {
        margin-top: -120px;
    }
}

.tile_outer {
    position: relative;
    color: #fff;
    background-color: #1f303d;
    border: 6px solid #979797;
    overflow: hidden;
    margin-bottom: 25px;
}

@media print,
screen and (min-width: 64em) {
    .tile_outer {
        margin-bottom: 0;
        width: 32%;
    }
}

.tile_inner {
    display: inline-block;
    position: relative;
    z-index: 25;
    padding: 30px;
}

.tile_inner p {
    display: none;
    line-height: 1.4;
    margin-bottom: 1rem;
}

@media print,
screen and (min-width: 40em) {
    .tile_inner p {
        display: block;
    }
}

@media print,
screen and (min-width: 64em) {
    .tile_inner p {
        font-size: .9rem;
    }
}

@media screen and (min-width: 75em) {
    .tile_inner p {
        font-size: 1rem;
    }
}

.tile_inner h2 {
    font-family: 'Saira Extra Condensed', sans-serif;
    font-weight: 500;
    text-transform: uppercase;
    text-shadow: 1px 2px 6px rgba(0, 0, 0, 0.8);
    line-height: 1;
    font-size: 1.8rem;
}

.tile_inner h2,
.heroproduct_content h2 { 
    color: #82b9aa;
    color: #58a28e;
}

@media print,
screen and (min-width: 40em) {
    .tile_inner h2 {
        font-size: 2rem;
    }
}

@media print,
screen and (min-width: 64em) {
    .tile_inner h2 {
        font-size: 2.8vw;
    }
}

@media screen and (min-width: 75em) {
    .tile_inner h2 {
        font-size: 2.4vw;
    }
}

@media screen and (min-width: 90em) {
    .tile_inner h2 {
        font-size: 2vw;
    }
}

@media screen and (min-width: 75em) {
    .tile_inner {
        padding: 40px;
    }
}

.tile_image {
    position: absolute;
    z-index: 1;
    width: 50%;
    height: 90%;
    bottom: 0;
    right: 0;
    opacity: .15;
    background-size: cover !important;
    background-position: left top !important;
    background-repeat: no-repeat !important;
}

@media print,
screen and (min-width: 64em) {
    .tile_image {
        width: 60%;
        height: 55%;
    }
}

@media screen and (min-width: 75em) {
    .tile_image {
        width: 65%;
        height: 60%;
    }
}

@media screen and (min-width: 90em) {
    .tile_image {
        width: 60%;
        height: 55%;
    }
}

.link_image {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 40%;
    background-color: pink;
    background-size: cover !important;
    background-position: left top !important;
    background-repeat: no-repeat !important;
}

.linkRARR {
    position: relative;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.linkRARR:after {
    content: ' \203a';
    position: relative;
    color: #82b9aa;
    font-size: 1.6rem;
    line-height: 1;
    top: 1px;
    left: 0;
    transition: all .3s ease-in-out;
}

.linkRARR:hover:after {
    left: 5px;
}

.intro_rappa {
    position: relative;
    color: #fff;
    background-color: #646464;
    padding: 60px 5%;
    overflow: hidden;
}

.intro_rappa h1,
.intro_rappa h2,
.intro_rappa h3 {
    font-family: 'Saira Extra Condensed', sans-serif;
    font-weight: 500;
    text-transform: uppercase;
    text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.6);
}

.intro_rappa .imgbg {
    background-position: right center !important;
    mix-blend-mode: overlay;
    opacity: .4;
}

@media print,
screen and (min-width: 40em) {
    .intro_rappa {
        padding: 80px 6%;
    }
}

@media print,
screen and (min-width: 64em) {
    .intro_rappa {
        padding: 80px 6%;
    }
}

@media screen and (min-width: 75em) {
    .intro_rappa {
        padding: 100px 8%;
    }
}

@media screen and (min-width: 75em) {
    .intro_rappa {
        padding: 130px 10%;
    }
}

.intro_content {
    position: relative;
    z-index: 25;
}

@media print,
screen and (min-width: 64em) {
    .intro_content {
        width: 68%;
    }
}

@media screen and (min-width: 75em) {
    .intro_content {
        width: 64%;
    }
}

@media screen and (min-width: 90em) {
    .intro_content {
        width: 60%;
    }
}

@media print,
screen and (min-width: 64em) {
    .intro_content p {
        width: 60%;
    }
}

@media screen and (min-width: 75em) {
    .intro_content p {
        font-size: 1.1rem;
    }
}

@media screen and (min-width: 90em) {
    .intro_content p {
        font-size: 1.2rem;
    }
}

.intro_content h1,
.intro_content h2,
.intro_content h3 {
    line-height: 1;
    margin-bottom: 2.2rem;
}

@media print,
screen and (min-width: 40em) {

    .intro_content h1,
    .intro_content h2,
    .intro_content h3 {
        font-size: 2.6rem;
    }
}

@media print,
screen and (min-width: 64em) {

    .intro_content h1,
    .intro_content h2,
    .intro_content h3 {
        font-size: 2.4rem;
    }
}

@media screen and (min-width: 75em) {

    .intro_content h1,
    .intro_content h2,
    .intro_content h3 {
        font-size: 2.8rem;
    }
}

@media screen and (min-width: 90em) {

    .intro_content h1,
    .intro_content h2,
    .intro_content h3 {
        font-size: 3.2rem;
    }
}

.leftgrad_overlay {
    position: absolute;
    z-index: 5;
    top: 0;
    left: 0;
    height: 100%;
    width: 64%;
    background: linear-gradient(to right, rgba(26, 26, 26, 0.9) 0%, rgba(26, 26, 26, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e61a1a1a', endColorstr='#001a1a1a', GradientType=1);
    mix-blend-mode: multiply;
    opacity: .85;
}

@media print,
screen and (min-width: 40em) {
    .leftruled {
        border-left: 6px solid #00B5EF;
        padding-left: 30px;
    }
}

/* .brand_overlay {
    position: absolute;
    z-index: 5;
    bottom: -30px;
    right: -30px;
    width: 850px;
    height: 400px;
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: scale(0.5);
    -ms-transform: scale(0.5);
    transform: scale(0.5);
    background-image: url("/images/DANKOFF_logo.svg");
    background-position: left top;
    background-size: 100%;
    background-repeat: no-repeat;
    opacity: .1;
} */

/* @media print,
screen and (min-width: 40em) {
    .brand_overlay {
        -webkit-transform: scale(0.75);
        -ms-transform: scale(0.75);
        transform: scale(0.75);
        right: -40px;
        bottom: -50px;
    }
} */

/* @media print,
screen and (min-width: 64em) {
    .brand_overlay {
        -webkit-transform: scale(0.9);
        -ms-transform: scale(0.9);
        transform: scale(0.9);
        right: -60px;
        bottom: -50px;
    }
} */

/* @media screen and (min-width: 75em) {
    .brand_overlay {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
        right: -40px;
        bottom: -60px;
    }
} */

/* @media screen and (min-width: 90em) {
    .brand_overlay {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1);
        right: -60px;
        bottom: -70px;
    }
} */

/* BANNER AD STYLES */
@media print,
screen and (min-width: 40em) {
    .bannerblock_2up {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

.davidbanner {
    position: relative;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 40px 8%;
    margin-bottom: 20px;
    color: #fff;
    width: 100%;
    background-color: #354249;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-blend-mode: overlay;
    border-top: 8px solid #82b9aa;
    border-bottom: 8px solid #82b9aa;
    transition: all .3s ease-in-out;
}

.davidbanner:hover {
    color: #fff;
    background-color: #0a435a;
}

@media print,
screen and (min-width: 40em) {
    .davidbanner {
        width: 48%;
        border-top: 10px solid #82b9aa;
        border-bottom: 10px solid #82b9aa;
    }
}

@media print,
screen and (min-width: 64em) {
    .davidbanner {
        width: 49%;
        background-size: 105%;
    }

    .davidbanner:hover {
        background-size: 115%;
    }
}

@media screen and (min-width: 75em) {
    .davidbanner {
        padding: 50px 8%;
        margin-bottom: 25px;
    }
}

@media screen and (min-width: 90em) {
    .davidbanner {
        padding: 60px 8%;
    }
}

.matrix {
    background-image: url("/images/comparisonimg_gridtie.webp");
}

.compare {
    background-image: url("/images/comparisonimg_offgrid.webp");
}

.bannertxt {
    position: relative;
    z-index: 25;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.7);
    font-size: 1.4rem;
}

@media print,
screen and (min-width: 40em) {
    .bannertxt {
        font-size: 2.2vw;
    }
}

@media print,
screen and (min-width: 64em) {
    .bannertxt {
        font-size: 2vw;
    }
}

@media screen and (min-width: 75em) {
    .bannertxt {
        font-size: 1.8vw;
    }
}

@media screen and (min-width: 90em) {
    .bannertxt {
        font-size: 1.8rem;
    }
}

.bigolebanner {
    position: relative;
    padding: 40px 25px;
    margin-bottom: 25px;
    text-transform: uppercase;
    text-shadow: 0 2px 5px rgba(0, 0, 0, 0.9);
    background-color: #1f303d;
    color: #fff;
    font-size: 1.1rem;
    line-height: 1.1;
    overflow: hidden;
    transition: all .3s ease-in-out;
}

.bigolebanner:hover {
    background-color: #037ab2;
}

@media print,
screen and (min-width: 40em) {
    .bigolebanner {
        padding: 45px 5%;
    }
}

@media print,
screen and (min-width: 64em) {
    .bigolebanner {
        padding: 40px 6%;
        font-size: 1.2rem;
    }
}

@media screen and (min-width: 75em) {
    .bigolebanner {
        padding: 50px 6%;
    }
}

@media screen and (min-width: 90em) {
    .bigolebanner {
        padding: 60px 6%;
    }
}

.bigolebanner .imgbg {
    opacity: .35;
    background-position: center;
}

.bigolebanner h2,
.bigolebanner h3,
.bigolebanner h4 {
    line-height: 1;
    margin-bottom: .7rem;
    color: #82b9aa;
}

@media print,
screen and (min-width: 40em) {

    .bigolebanner h2,
    .bigolebanner h3,
    .bigolebanner h4 {
        font-size: 1.6rem;
    }
}

@media print,
screen and (min-width: 64em) {

    .bigolebanner h2,
    .bigolebanner h3,
    .bigolebanner h4 {
        font-size: 2.6vw;
    }
}

@media screen and (min-width: 75em) {

    .bigolebanner h2,
    .bigolebanner h3,
    .bigolebanner h4 {
        font-size: 2.5vw;
    }
}

@media screen and (min-width: 90em) {

    .bigolebanner h2,
    .bigolebanner h3,
    .bigolebanner h4 {
        font-size: 2.2rem;
    }
}

.bigmessage {
    position: relative;
    z-index: 25;
    width: 64%;
}

@media print,
screen and (min-width: 40em) {
    .bigmessage {
        width: 70%;
    }
}

.mapmarker {
    position: absolute;
    z-index: 15;
    height: 100%;
    width: 44%;
    top: 0;
    right: -22%;
    background-image: url("/images/mapmarker.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center bottom;
}

@media print,
screen and (min-width: 40em) {
    .mapmarker {
        width: 46%;
        right: -5%;
    }
}

@media print,
screen and (min-width: 64em) {
    .mapmarker {
        width: 44%;
        right: -5%;
    }
}

@media screen and (min-width: 75em) {
    .mapmarker {
        width: 38%;
        right: -3%;
    }
}

@media screen and (min-width: 90em) {
    .mapmarker {
        width: 33%;
        right: -1%;
    }
}

.pumpyouup {
    position: absolute;
    z-index: 15;
    height: 100%;
    width: 80%;
    top: 0;
    right: -26%;
    background-image: url("/images/bannerimage_offgrid.webp");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center bottom;
}

@media print,
screen and (min-width: 40em) {
    .pumpyouup {
        width: 46%;
        right: -5%;
    }
}

@media print,
screen and (min-width: 64em) {
    .pumpyouup {
        width: 44%;
        right: -5%;
    }
}

@media screen and (min-width: 75em) {
    .pumpyouup {
        width: 38%;
        right: -3%;
    }
}

@media screen and (min-width: 90em) {
    .pumpyouup {
        width: 33%;
        right: -1%;
    }
}

/* ACCORDION STYLES */
.accord {
    margin: 60px auto;
}

.accord_trigga {
    position: relative;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-weight: 500;
    line-height: 1.1;
    letter-spacing: 0;
    color: #1f303d;
    background-color: #efefef;
    border: 1px solid #979797;
    padding: 12px 20px 14px 60px;
    margin-bottom: 0;
    cursor: pointer;
    transition: all .3s ease-in-out;
}

.accord_trigga:hover {
    background-color: #d7d7d7;
}

.accord_trigga:before {
    content: '';
    position: absolute;
    z-index: 10;
    width: 22px;
    height: 18px;
    top: 50%;
    left: 22px;
    -webkit-transform: translateY(-50%) rotate(180deg);
    -ms-transform: translateY(-50%) rotate(180deg);
    transform: translateY(-50%) rotate(180deg);
    background-image: url("/images/angle-up.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transition: all .3s ease-in-out;
}

.accord_trigga.open:before {
    -webkit-transform: translateY(-50%) rotate(0deg);
    -ms-transform: translateY(-50%) rotate(0deg);
    transform: translateY(-50%) rotate(0deg);
}

.answer_outer_rappa {
    color: #fff;
    background-color: #1f303d;
    height: 1px;
    overflow: hidden;
}

.answer_inner_rappa {
    padding: 25px;
}

@media print,
screen and (min-width: 40em) {
    .answer_inner_rappa {
        padding: 40px;
    }
}

@media print,
screen and (min-width: 64em) {
    .answer_inner_rappa {
        padding: 50px;
    }
}

@media screen and (min-width: 75em) {
    .answer_inner_rappa {
        padding: 60px;
    }
}

.answer_inner_rappa h1,
.answer_inner_rappa h2,
.answer_inner_rappa h3,
.answer_inner_rappa h4,
.answer_inner_rappa h5,
.answer_inner_rappa h6 {
    color: #82b9aa;
}

/* MO STYLES */
.appform_rappa {
    padding: 30px 5%;
    background-color: #eaeaea;
    margin-bottom: 20px;
}

.appform_rappa [type='text'],
.appform_rappa [type='password'],
.appform_rappa [type='date'],
.appform_rappa [type='datetime'],
.appform_rappa [type='datetime-local'],
.appform_rappa [type='month'],
.appform_rappa [type='week'],
.appform_rappa [type='email'],
.appform_rappa [type='number'],
.appform_rappa [type='search'],
.appform_rappa [type='tel'],
.appform_rappa [type='time'],
.appform_rappa [type='url'],
.appform_rappa [type='color'] {
    margin-bottom: 0;
}

.appform_rappa form p {
    margin-bottom: .8em;
}

.link_tile_rappa {
    position: relative;
    margin-bottom: 40px;
    overflow: hidden;
}

@media print,
screen and (min-width: 40em) {
    .link_tile_rappa {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
    }
}

.link_tile {
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 30px;
    margin: 0 0 20px;
    background-color: #82b9aa;
    background-color: #53c8e9;
    border: 4px solid #1f303d;
    overflow: hidden;
    transition: all .3s ease-in-out;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.link_tile .imgbg {
    background-position: center !important;
    opacity: .3;
    transition: all .3s ease-in-out;
}

@media print,
screen and (min-width: 40em) {
    .link_tile {
        margin: 0 8px 25px;
        width: 46%;
        height: 160px;
    }
}

@media print,
screen and (min-width: 64em) {
    .link_tile {
        width: 31%;
        height: 190px;
    }
}

@media screen and (min-width: 75em) {
    .link_tile {
        height: 210px;
    }
}

@media screen and (min-width: 90em) {
    .link_tile {
        width: 22%;
        height: 240px;
    }
}

.link_text {
    position: relative;
    z-index: 25;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-weight: 500;
    text-transform: uppercase;
    text-align: center;
    line-height: 1;
    margin-bottom: 0;
    color: #fff;
    text-shadow: 2px -2px #1f303d;
    letter-spacing: 0;
    font-size: 2rem;
}

@media print,
screen and (min-width: 40em) {
    .link_text {
        font-size: 3.4vw;
    }
}

@media print,
screen and (min-width: 64em) {
    .link_text {
        font-size: 3vw;
    }
}

@media screen and (min-width: 75em) {
    .link_text {
        font-size: 2.6vw;
    }
}

@media screen and (min-width: 90em) {
    .link_text {
        font-size: 2vw;
    }
}

.link_tile:hover .imgbg {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
    opacity: .5;
}

/* SHOP MODIFICATIONS */



.toolbar_nav ul li a.wpmenucart-contents {
    color: #53c8e9;
}

.toolbar_nav ul li a.wpmenucart-contents.empty-wpmenucart-visible {
    color: #fff;
}

.woocommerce-message {
    border-top-color: #53c8e9 !important;
}

.woocommerce-message::before {
    color: #2f8b73 !important;
}

.woocommerce-message .button {
    color: #fff !important;
    background-color: #53c8e9 !important;
}

li.product .price,
li.product .button { 
    display: none !important;
}

.woocommerce-tabs {
    display: none !important;
}

.onsale {
    display: none !important;
}

.product_top_section {
    position: relative;
    overflow: hidden;
}

.single-product hr {
    margin: 1rem auto;
}

h1.lit_product_title {
    /* font-family: 'Saira Extra Condensed', sans-serif; */
    font-family: 'microsquare-boldext', sans-serif;
    font-weight: 600;
    text-transform: uppercase;
    color: #1f303d;
    padding-bottom: 20px;
    border-bottom: 1px solid #cacaca;
    font-size: 1.6rem;
}

@media print,
screen and (min-width: 40em) {
    h1.lit_product_title {
        font-size: 1.8rem;
    }
}

@media print,
screen and (min-width: 64em) {
    h1.lit_product_title {
        font-size: 1.6rem;
    }
}

@media screen and (min-width: 75em) {
    h1.lit_product_title {
        font-size: 1.7rem;
    }
}

@media screen and (min-width: 90em) {
    h1.lit_product_title {
        font-size: 1.8rem;
    }
}

.pswp {
    z-index: 999999 !important;
}

/* .woocommerce div.product p.price,
.woocommerce div.product span.price {
    color: #00B5EF;
    font-size: 1.2rem;
} */

p#breadcrumbs {
    font-weight: 600;
    font-size: .9rem;
    color: #8EB8B3;
    margin-bottom: .5rem;
}

@media print,
screen and (min-width: 40em) {
    p#breadcrumbs {
        letter-spacing: .5px;
    }
}

p#breadcrumbs a {
    font-weight: 600;
    color: #1f303d;
}

h2.woocommerce-loop-product__title {
    letter-spacing: 0px;
}

.woocommerce ul.products {
    margin: 25px auto 40px !important;
    -webkit-column-gap: 0;
    column-gap: 0;
}

.related.products {
    display: none;
}

@media print,
screen and (min-width: 40em) {
    .woocommerce ul.products {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.woocommerce ul.products li.product {
    margin: 0 1% 30px !important;
}

@media print,
screen and (min-width: 40em) {
    .woocommerce ul.products li.product {
        width: 31%;
    }
}

@media print,
screen and (min-width: 64em) {
    .woocommerce ul.products li.product {
        width: 23%;
    }
}

@media screen and (min-width: 90em) {
    .woocommerce ul.products li.product {
        width: 18%;
    }
}

.woocommerce ul.products li.product a {
    color: #566871;
}

.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .wp-block-button .wp-block-button__link,
.wp-block-button .woocommerce ul.products li.product .wp-block-button__link {
    color: #fff;
    background-color: #00B5EF;
    padding: .6em 1em .8em;
}

.woocommerce ul.products li.product a img {
    margin: 0 0 .5em;
}

.woocommerce-product-gallery__wrapper {
    border-right: 10px solid #8EB8B3;
}

.woocommerce-product-details__short-description {
    margin-bottom: 1.6rem;
}

.woocommerce .related {
    overflow: hidden;
}

.woocommerce .related ul.products li.product,
.woocommerce ul.products li.product,
.custom_product_grid ul.products li.product,
.home_featured_products ul.products li.product {
    position: relative;
    overflow: hidden;
    height: 220px;
    width: 100% !important;
    margin: 0 0 30px !important;
}

.woocommerce .related ul.products li.product img,
.woocommerce ul.products li.product img,
.custom_product_grid ul.products li.product img,
.home_featured_products ul.products li.product img {
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    transition: all .3s ease-in-out;
}

.woocommerce .related ul.products li.product:hover h2.woocommerce-loop-product__title,
.woocommerce ul.products li.product:hover h2.woocommerce-loop-product__title,
.custom_product_grid ul.products li.product:hover h2.woocommerce-loop-product__title,
.home_featured_products ul.products li.product:hover h2.woocommerce-loop-product__title {
    color: #53c8e9;
}

.woocommerce .related ul.products li.product:hover h2.woocommerce-loop-product__title:after,
.woocommerce ul.products li.product:hover h2.woocommerce-loop-product__title:after,
.custom_product_grid ul.products li.product:hover h2.woocommerce-loop-product__title:after,
.home_featured_products ul.products li.product:hover h2.woocommerce-loop-product__title:after {
    color: #82b9aa;
    padding-left: 15px;
}

.woocommerce .related ul.products li.product:hover img,
.woocommerce ul.products li.product:hover img,
.custom_product_grid ul.products li.product:hover img,
.home_featured_products ul.products li.product:hover img {
    -webkit-transform: translateY(-50%) scale(1.1);
    -ms-transform: translateY(-50%) scale(1.1);
    transform: translateY(-50%) scale(1.1);
}

.woocommerce .related ul.products li.product h2.woocommerce-loop-product__title,
.woocommerce ul.products li.product h2.woocommerce-loop-product__title,
.custom_product_grid ul.products li.product h2.woocommerce-loop-product__title,
.home_featured_products ul.products li.product h2.woocommerce-loop-product__title {
    font-family: 'Saira Extra Condensed', sans-serif;
    font-weight: 500;
    position: absolute;
    z-index: 25;
    width: 100%;
    left: 0;
    line-height: 1;
    letter-spacing: 0;
    bottom: 0;
    margin-bottom: 0;
    padding: 10px 35px 10px 5%;
    color: #fff;
    text-transform: uppercase;
    background-color: #1f303d;
    transition: all .3s ease-in-out;
    font-size: 4.3vw;
}

.woocommerce div.product div.images .flex-control-thumbs li img.flex-active {
    border: 4px solid #8EB8B3;
}

.woocommerce div.product div.images .flex-control-thumbs li img {
    transition: all .3s ease-in-out;
}

.single-product .woocommerce-product-details__short-description ul {
    column-count: 1;
}


@media print, 
screen and (max-width:640px) {
    
    .woocommerce #content div.product div.images, 
    .woocommerce div.product div.images, 
    .woocommerce-page #content div.product div.images, 
    .woocommerce-page div.product div.images,
    .woocommerce #content div.product div.summary, 
    .woocommerce div.product div.summary, 
    .woocommerce-page #content div.product div.summary, 
    .woocommerce-page div.product div.summary {
        float: none !important;
        width: 100% !important;
    }
        
}



@media print,
screen and (min-width: 40em) {

    .woocommerce .related ul.products li.product h2.woocommerce-loop-product__title,
    .woocommerce ul.products li.product h2.woocommerce-loop-product__title,
    .custom_product_grid ul.products li.product h2.woocommerce-loop-product__title,
    .home_featured_products ul.products li.product h2.woocommerce-loop-product__title {
        font-size: 2vw;
    }
}

@media print,
screen and (min-width: 64em) {

    .woocommerce .related ul.products li.product h2.woocommerce-loop-product__title,
    .woocommerce ul.products li.product h2.woocommerce-loop-product__title,
    .custom_product_grid ul.products li.product h2.woocommerce-loop-product__title,
    .home_featured_products ul.products li.product h2.woocommerce-loop-product__title {
        font-size: 1.9vw;
    }
}

@media screen and (min-width: 75em) {

    .woocommerce .related ul.products li.product h2.woocommerce-loop-product__title,
    .woocommerce ul.products li.product h2.woocommerce-loop-product__title,
    .custom_product_grid ul.products li.product h2.woocommerce-loop-product__title,
    .home_featured_products ul.products li.product h2.woocommerce-loop-product__title {
        font-size: 1.8vw;
    }
}

@media screen and (min-width: 90em) {

    .woocommerce .related ul.products li.product h2.woocommerce-loop-product__title,
    .woocommerce ul.products li.product h2.woocommerce-loop-product__title,
    .custom_product_grid ul.products li.product h2.woocommerce-loop-product__title,
    .home_featured_products ul.products li.product h2.woocommerce-loop-product__title {
        font-size: 1.5vw;
        padding: 12px 35px 12px 4%;
    }
}

.woocommerce .related ul.products li.product h2.woocommerce-loop-product__title:after,
.woocommerce ul.products li.product h2.woocommerce-loop-product__title:after,
.custom_product_grid ul.products li.product h2.woocommerce-loop-product__title:after,
.home_featured_products ul.products li.product h2.woocommerce-loop-product__title:after {
    content: ' \276f';
    position: relative;
    position: absolute !important;
    display: inline-block;
    font-size: 1rem;
/*    top: 2px;*/
    top: 50% !important;
    transform: translateY(-50%) !important;
    right: 12px;
    line-height: 1;
    /* padding-left: 10px; */
    transition: all .3s ease-in-out;
}

@media screen and (min-width: 75em) {

    .woocommerce .related ul.products li.product h2.woocommerce-loop-product__title:after,
    .woocommerce ul.products li.product h2.woocommerce-loop-product__title:after,
    .custom_product_grid ul.products li.product h2.woocommerce-loop-product__title:after,
    .home_featured_products ul.products li.product h2.woocommerce-loop-product__title:after {
        /* top: auto; */
        /* padding-left: 10px; */
    }
}

@media print,
screen and (min-width: 40em) {

    .woocommerce .related ul.products li.product,
    .woocommerce ul.products li.product,
    .custom_product_grid ul.products li.product,
    .home_featured_products ul.products li.product {
        margin: 0 1% 20px !important;
        width: 31.3% !important;
        height: 200px;
    }
}

@media print,
screen and (min-width: 64em) {

    .woocommerce .related ul.products li.product,
    .woocommerce ul.products li.product,
    .custom_product_grid ul.products li.product,
    .home_featured_products ul.products li.product {
        height: 240px;
    }
}

@media screen and (min-width: 75em) {

    .woocommerce .related ul.products li.product,
    .woocommerce ul.products li.product,
    .custom_product_grid ul.products li.product,
    .home_featured_products ul.products li.product {
        height: 280px;
    }
}

.woocommerce .related .button,
.woocommerce .related .wp-block-button .wp-block-button__link,
.wp-block-button .woocommerce .related .wp-block-button__link,
.woocommerce .related .product_meta,
/* .woocommerce .button, */
.woocommerce .wp-block-button .wp-block-button__link,
.wp-block-button .woocommerce .wp-block-button__link,
/* .woocommerce .product_meta, */
.custom_product_grid .button,
.custom_product_grid .wp-block-button .wp-block-button__link,
.wp-block-button .custom_product_grid .wp-block-button__link,
.custom_product_grid .product_meta,
.home_featured_products .button,
.home_featured_products .wp-block-button .wp-block-button__link,
.wp-block-button .home_featured_products .wp-block-button__link,
.home_featured_products .product_meta {
    display: none !important;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt {
    background-color: #2f8b73 !important;
}

.woocommerce .product_meta {
    margin-bottom: 15px;
}

/* .woocommerce .buttton {
    color: #2f8b73;
} */

.woocommerce div.product p.price,
.woocommerce div.product span.price {
    color: #2f8b73;
    font-size: 1.4rem;
}

.home_featured_products ul.products {
    margin-bottom: 0 !important;
}

.swipe_notififcation {
    text-transform: uppercase;
    margin-bottom: 10px;
}

@media print,
screen and (min-width: 64em) {
    .swipe_notififcation {
        display: none;
    }
}

.parts_table_rappa {
    margin-bottom: 50px;
    border: 1px solid #CDCDCD;
    overflow-x: scroll;
}

.parts_table_rappa table {
    font-family: 'Saira Extra Condensed', sans-serif;
    font-weight: 500;
    border: 1px solid #CDCDCD;
    min-width: 1024px;
    margin-bottom: 0;
}

.parts_table_rappa th {
    color: #fff;
    border: 1px solid #CDCDCD !important;
    background-color: #1f303d !important;
    padding: 10px 15px !important;
    font-size: 1.2rem;
}

.parts_table_rappa td {
    padding: 10px 15px !important;
    border: 1px solid #CDCDCD !important;
}

.parts_table_rappa .column-1,
.parts_table_rappa .column-3,
.parts_table_rappa .column-4,
.parts_table_rappa .column-5,
.parts_table_rappa .column-6,
.parts_table_rappa .column-7,
.parts_table_rappa .column-8 {
    text-align: center !important;
}

.parts_table_rappa caption {
    display: none;
}

.parts_table_rappa .dataTables_wrapper {
    margin-bottom: 0;
}

.heroproduct_rappa {
    position: relative;
    background-color: #1f303d;
    overflow: hidden;
}

.heroproduct_rappa .imgbg {
    display: block;
    background-position: center !important;
    position: relative;
    height: 330px;
    width: 100%;
    transition: all .3s ease-in-out;
}

.heroproduct_rappa .imgbg:hover {
    opacity: .7;
}

@media print,
screen and (min-width: 40em) {
    
    .heroproduct_rappa {
        margin: 0 1%;
    }
    .heroproduct_rappa .imgbg {
        position: absolute;
        width: 40%;
        height: 100%;
    }
}

@media print,
screen and (min-width: 64em) {
    .heroproduct_rappa .imgbg {
        width: 50%;
    }
}

.heroproduct_content {
    position: relative;
    z-index: 25;
    color: #fff;
    padding: 30px;
}

.heroproduct_content p {
    margin-bottom: 1rem;
}

@media print,
screen and (min-width: 40em) {
    .heroproduct_content {
        width: 60%;
        float: right;
    }
}

@media print,
screen and (min-width: 64em) {
    .heroproduct_content {
        width: 50%;
        padding: 40px;
    }
}

@media screen and (min-width: 75em) {
    .heroproduct_content {
        padding: 65px;
    }
}

@media screen and (min-width: 90em) {
    .heroproduct_content {
        padding: 90px;
    }
}

.heroproduct_content h2 {
    font-family: 'Saira Extra Condensed', sans-serif;
    font-weight: 500;
    text-transform: uppercase;
    font-size: 1.8rem;
}

@media print,
screen and (min-width: 40em) {
    .heroproduct_content h2 {
        font-size: 3.4vw;
    }
}

@media print,
screen and (min-width: 64em) {
    .heroproduct_content h2 {
        font-size: 2.8vw;
    }
}

@media screen and (min-width: 75em) {
    .heroproduct_content h2 {
        font-size: 2.4vw;
    }
}

@media screen and (min-width: 90em) {
    .heroproduct_content h2 {
        font-size: 2vw;
    }
}

@media print,
screen and (min-width: 40em) {

    .mobile-menu,
    .site-title-bar {
        display: none !important;
    }
}

@media screen and (max-width: 39.99875em) {

    .desktop-menu,
    .site-navigation .top-bar-left {
        display: none !important;
    }
}

.site-desktop-title a {
    font-weight: bold;
}

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

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

.nav-previous {
    float: left;
}

.nav-next {
    float: right;
}

.main-container {
    padding: 20px 0 40px;
}

@media print,
screen and (min-width: 40em) {
    .main-container {
        padding: 40px 0 50px;
    }
}

@media print,
screen and (min-width: 64em) {
    .main-container {
        padding: 60px 0;
    }
}

.main-grid {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
}

.sidebar-left .main-content {
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
}

.sidebar-left .sidebar {
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
}

@media print,
screen and (min-width: 64em) {
    .sidebar-left .main-content {
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2;
    }

    .sidebar-left .sidebar {
        -webkit-order: 1;
        -ms-flex-order: 1;
        order: 1;
    }
}

.main-content-full-width {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem;
}

.main-content {
    margin-bottom: 20px;
}

@media print,
screen and (min-width: 64em) {
    .main-content {
        width: calc(66.66667% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem;
        padding-right: 2em;
    }
}

.sidebar {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem;
}

@media print,
screen and (min-width: 64em) {
    .sidebar {
        width: calc(33.33333% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem;
    }
}

.footer-container {
    color: #555;
    padding: 0 0 20px;
}

.footer-grid {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
}

.footer-grid ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.foota_contact {
    position: relative;
    color: #fff;
    background-color: #1f303d;
}

.foota_contact .column,
.foota_contact .columns,
.foota_contact .columns {
    padding-left: 10px;
    padding-right: 10px;
}

.foota_contact .spacedout {
    color: #82b9aa;
}

.foota_contact [type='text'],
.foota_contact [type='password'],
.foota_contact [type='date'],
.foota_contact [type='datetime'],
.foota_contact [type='datetime-local'],
.foota_contact [type='month'],
.foota_contact [type='week'],
.foota_contact [type='email'],
.foota_contact [type='number'],
.foota_contact [type='search'],
.foota_contact [type='tel'],
.foota_contact [type='time'],
.foota_contact [type='url'],
.foota_contact [type='color'],
.foota_contact textarea {
    font-weight: 600;
    margin-bottom: 0;
    padding: 0.6rem 1rem;
    height: auto;
    background-color: rgba(255, 255, 255, 0.7);
}

.foota_contact [type='text']:focus,
.foota_contact [type='password']:focus,
.foota_contact [type='date']:focus,
.foota_contact [type='datetime']:focus,
.foota_contact [type='datetime-local']:focus,
.foota_contact [type='month']:focus,
.foota_contact [type='week']:focus,
.foota_contact [type='email']:focus,
.foota_contact [type='number']:focus,
.foota_contact [type='search']:focus,
.foota_contact [type='tel']:focus,
.foota_contact [type='time']:focus,
.foota_contact [type='url']:focus,
.foota_contact [type='color']:focus,
.foota_contact textarea:focus {
    background-color: rgba(255, 255, 255, 0.9);
}

.foota_contact textarea {
    margin-top: 25px;
}

@media print,
screen and (min-width: 64em) {
    .foota_contact textarea {
        height: 100%;
        margin-top: 0;
    }
}

.foota_contact .imgbg {
    background-position: center bottom !important;
    opacity: .1;
}

.foota_nav ul {
    position: relative;
    list-style: none;
    text-transform: uppercase;
    margin: 0 0 20px 0;
    padding: 0;
}

.foota_nav ul li {
    position: relative;
    display: inline-block;
    margin-right: 10px;
}

@media screen and (min-width: 90em) {
    .foota_nav ul li {
        margin-right: 8px;
    }
}

.foota_nav ul li a {
    position: relative;
    display: inline-block;
    color: #53c8e9;
    padding: 2px 12px 5px 0;
    transition: all .3s ease-in-out;
}

.foota_nav ul li a:after {
    content: '';
    position: absolute;
    width: 1px;
    top: 50%;
    height: 16px;
    right: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    background-color: #777;
    opacity: .3;
}

.foota_nav ul li:nth-last-of-type(1) a:after {
    display: none;
}

.foota_nav ul li a:hover,
.foota_nav ul li.is-active a {
    color: #c96f07;
}

@media print,
screen and (min-width: 64em) {
    .foota_nav ul {
        margin: 0;
    }
}

.credits {
    display: inline-block;
    width: 100%;
    color: #444;
    padding: 20px 5%;
    font-size: .9rem;
    text-transform: uppercase;
    overflow: hidden;
    text-align: center;
}

@media print,
screen and (min-width: 64em) {
    .credits {
        text-align: left;
        padding: 25px 3%;
    }
}

.credits a {
    color: #5EB5E8;
    font-weight: bold;
}

.creds_left {
    margin-top: 0;
    margin-bottom: 5px;
}

@media print,
screen and (min-width: 64em) {
    .creds_left {
        float: left;
    }
}

@media print,
screen and (min-width: 64em) {
    .creds_right {
        float: right;
    }
}

.madeby {
    display: inline-block;
    position: relative;
}

@media print,
screen and (min-width: 64em) {
    .madeby {
        vertical-align: top;
        margin-top: 6px;
    }
}

.madeby,
.madeby img {
    width: 65px;
    height: 19px;
    transition: all .3s ease-in-out;
}

.madeby:hover {
    opacity: .5;
}

.social_rappa {
    position: relative;
    margin: 15px 0;
    overflow: hidden;
}

@media print,
screen and (min-width: 64em) {
    .social_rappa {
        display: inline-block;
        top: 2px;
        margin: 0 20px 0 0;
    }
}

.social_icon {
    display: inline-block;
    width: 40px;
    height: 40px;
    margin: 0 5px 0 0;
    background-color: #f8f8f8;
    background-size: 80%;
    background-position: center;
    background-repeat: no-repeat;
    transition: all .3s ease;
    border-radius: 5px;
    border: 1px solid #979797;
}

@media print,
screen and (min-width: 40em) {
    .social_icon {
        margin: 0 10px 0 0;
    }
}

@media print,
screen and (min-width: 64em) {
    .social_icon {
        width: 30px;
        height: 30px;
        margin: 0 4px 0 0;
    }
}

.facebook {
    background-image: url("/images/icon_facebook.svg");
}

.twitter {
    background-image: url("/images/icon_twitter.svg");
}

.instagram {
    background-image: url("/images/icon_instagram.svg");
}

.youtube {
    background-image: url("/images/icon_youtube.svg");
}

.linkedin {
    background-image: url("/images/icon_linkedin.svg");
}

.amazon {
    background-image: url("/images/icon_amazon.svg");
}

.social_icon:hover {
    opacity: .4;
}

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

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

.buttn,
.wpcf7-submit {
    position: relative;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-width: 160px;
    text-transform: uppercase;
    font-weight: 600 !important;
    color: #fff !important;
    border: 1px solid #ddd;
    background-color: #00B5EF;
    padding: 0 30px;
    height: 50px;
    transition: all .3s ease-in-out;
    -webkit-text-size-adjust: none;
    -ms-text-size-adjust: none;
    text-size-adjust: none;
    letter-spacing: 2px;
}

@media screen and (min-width: 90em) {

    .buttn,
    .wpcf7-submit {
        font-size: 1.1rem;
    }
}

.buttn:active,
.buttn:visited,
.buttn:focus,
.wpcf7-submit:active,
.wpcf7-submit:visited,
.wpcf7-submit:focus {
    color: #fff;
}

.buttn:hover,
.wpcf7-submit:hover {
    background-color: #5cd8ff;
    color: #1f303d !important;
}

.buttn.buy {
    text-shadow: 0 0 0 rgba(0, 0, 0, 0);
    background-color: #31C122;
}

.buttn.buy:hover {
    color: #fff !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
    background-color: #4ddd3f;
}

.cards-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
}

.cards-container .card {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem;
}

.cards-container .card .card-content {
    padding: 1rem;
}

@media print,
screen and (min-width: 40em) {
    .cards-container .card {
        width: calc(33.33333% - 0.7rem);
        margin-right: 0.35rem;
        margin-left: 0.35rem;
    }
}

.featured-hero {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 6.25rem;
}

@media print,
screen and (min-width: 40em) {
    .featured-hero {
        height: 12.5rem;
    }
}

@media screen and (min-width: 75em) {
    .featured-hero {
        height: 25rem;
    }
}

.dotted,
.section-divider hr {
    border-style: dashed;
    margin: 2rem 0;
}

[data-whatinput="mouse"] a:focus,
button:focus [data-whatinput="touch"] a:focus,
button:focus {
    outline: none;
}

.intro {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 100rem;
    margin: 0 auto;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
}

@media print,
screen and (min-width: 40em) {
    .intro {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }
}

.intro .fp-intro {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem;
}

@media print,
screen and (min-width: 40em) {
    .intro .fp-intro {
        width: calc(83.33333% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem;
        margin-left: calc(8.33333% + 0.625rem);
    }

    .intro .fp-intro h2 {
        font-weight: 400;
        margin-bottom: 1.5rem;
    }

    .intro .fp-intro h4 {
        font-size: 1.125rem;
        line-height: 1.6;
        color: #777;
        margin-bottom: 2rem;
    }
}

.section-divider {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 100rem;
    margin: 0 auto;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
}

@media print,
screen and (min-width: 40em) {
    .section-divider {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }
}

.section-divider hr {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem;
    box-sizing: border-box;
}

.benefits {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 100rem;
    margin: 0 auto;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    text-align: center;
}

@media print,
screen and (min-width: 40em) {
    .benefits {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }
}

.benefits header {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem;
}

.benefits header h2 {
    font-weight: 400;
}

.benefits header h4 {
    font-size: 1.125rem;
    line-height: 1.6;
    color: #777;
}

.benefits .semantic,
.benefits .responsive,
.benefits .customizable,
.benefits .professional {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem;
}

@media print,
screen and (min-width: 40em) {

    .benefits .semantic,
    .benefits .responsive,
    .benefits .customizable,
    .benefits .professional {
        width: calc(25% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem;
    }
}

.benefits .semantic img,
.benefits .responsive img,
.benefits .customizable img,
.benefits .professional img {
    padding: 1.25rem;
    margin: 1rem auto 0 auto;
}

.benefits .semantic h3,
.benefits .responsive h3,
.benefits .customizable h3,
.benefits .professional h3 {
    color: #0a0a0a;
    font-weight: 400;
    font-size: 1.75rem;
}

.benefits .semantic p,
.benefits .responsive p,
.benefits .customizable p,
.benefits .professional p {
    font-size: 0.9375rem;
}

.benefits .why-foundation {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem;
    margin-top: 4rem;
}

.kitchen-sink-header {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem;
}

.kitchen-sink-components {
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem;
}

.kitchen-sink-components hr {
    margin: 3rem 0;
}

@media print,
screen and (min-width: 64em) {
    .kitchen-sink-components {
        width: calc(75% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem;
    }
}

.kitchen-sink-nav {
    display: none;
}

@media print,
screen and (min-width: 64em) {
    .kitchen-sink-nav {
        width: calc(25% - 1.875rem);
        margin-right: 0.9375rem;
        margin-left: 0.9375rem;
        display: block;
        float: right;
    }

    .kitchen-sink-nav .docs-sub-menu {
        font-size: 0.85rem;
        margin-top: 1rem;
    }

    .kitchen-sink-nav .docs-menu-title {
        text-transform: uppercase;
        font-size: 0.75rem;
        color: #8a8a8a;
        font-weight: bold;
        line-height: 1;
        padding-left: 0.9rem;
        margin-bottom: 0.5rem;
        border-top: 1px solid #cacaca;
        margin-top: 1rem;
        padding-top: 1.5rem;
    }

    .kitchen-sink-nav .docs-toc {
        width: 100%;
        padding-left: 4rem;
        padding-right: 1rem;
    }

    .kitchen-sink-nav .docs-toc .active {
        background: #2199e8;
        color: white;
    }

    .kitchen-sink-nav .docs-toc .docs-sub-menu:first-child .docs-menu-title {
        margin-top: 0;
        border-top: 0;
        padding-top: 0;
    }
}

.kitchen-sink-grid .grid-x {
    background: #d6ecfa;
    font-size: 12px;
    line-height: 2rem;
    margin-bottom: 1.5rem;
}

.kitchen-sink-grid .grid-x .cell,
.kitchen-sink-grid .grid-x :nth-child(odd) {
    background: #7bc1ef;
    color: #0a0a0a;
}

.kitchen-sink-grid .grid-x .cell:nth-child(even) {
    background: #1779ba;
    color: #fefefe;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdmVuZG9yL25vcm1hbGl6ZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcm93LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fZ3V0dGVyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2JyZWFrcG9pbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fc2l6ZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2ZsZXgtZ3JpZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jbGFzc2VzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2d1dHRlcnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jZWxsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2xheW91dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jb2xsYXBzZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19wb3NpdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19mcmFtZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2hlbHBlcnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYWxpZ25tZW50LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fdGV4dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fY2hlY2tib3guc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2xhYmVsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19oZWxwLXRleHQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19maWVsZHNldC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fc2VsZWN0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aHVtYm5haWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxleC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19mbGV4LnNjc3MiLCJhcHAuc2NzcyIsImdsb2JhbC9fYWNjZXNzaWJpbGl0eS5zY3NzIiwiZ2xvYmFsL193cC1hZG1pbi5zY3NzIiwiZ2xvYmFsL193cC1vdmVycmlkZXMuc2NzcyIsImdsb2JhbC9fZ3V0ZW5iZXJnLnNjc3MiLCJnbG9iYWwvX2RyaXZlLnNjc3MiLCJtb2R1bGVzL19uYXZpZ2F0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyIsIm1vZHVsZXMvX2NvbnRlbnQuc2NzcyIsIm1vZHVsZXMvX2Zvb3Rlci5zY3NzIiwibW9kdWxlcy9fZWRpdG9yLXN0eWxlLnNjc3MiLCJjb21wb25lbnRzL19idXR0b25zLnNjc3MiLCJjb21wb25lbnRzL19jYXJkcy5zY3NzIiwiY29tcG9uZW50cy9fZmVhdHVyZWQtaW1hZ2Uuc2NzcyIsImNvbXBvbmVudHMvX2RpdmlkZXJzLnNjc3MiLCJjb21wb25lbnRzL19saW5rcy5zY3NzIiwidGVtcGxhdGVzL19mcm9udC5zY3NzIiwidGVtcGxhdGVzL19raXRjaGVuLXNpbmsuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBaUI7QUNBakI7Ozs7O0dBS0c7QUNKRCw0RUFBNEU7QUFRNUU7RUFDRSxrQkFBaUI7RUFDakIsK0JBQThCLEVBQy9COztBQU9EO0VBQ0UsVUFBUyxFQUNWOztBQUtEO0VBQ0UsZUFBYztFQUNkLGlCQUFnQixFQUNqQjs7QUFRRDtFQUNFLHdCQUF1QjtFQUN2QixVQUFTO0VBQ1Qsa0JBQWlCLEVBQ2xCOztBQUtEO0VBQ0Usa0NBQWlDO0VBQ2pDLGVBQWMsRUFDZjs7QUFPRDtFQUNFLDhCQUE2QixFQUM5Qjs7QUFLRDtFQUNFLG9CQUFtQjtFQUNuQiwyQkFBMEI7RUFDMUIsa0NBQWlDLEVBQ2xDOztBQUlEOztFQUVFLG9CQUFtQixFQUNwQjs7QUFLRDs7O0VBR0Usa0NBQWlDO0VBQ2pDLGVBQWMsRUFDZjs7QUFJRDtFQUNFLGVBQWMsRUFDZjs7QUFLRDs7RUFFRSxlQUFjO0VBQ2QsZUFBYztFQUNkLG1CQUFrQjtFQUNsQix5QkFBd0IsRUFDekI7O0FBRUQ7RUFDRSxnQkFBZSxFQUNoQjs7QUFFRDtFQUNFLFlBQVcsRUFDWjs7QUFPRDtFQUNFLG1CQUFrQixFQUNuQjs7QUFRRDs7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S3hGSixpQkNlcUQsRU4yRWhEOztBQUlDO0VPeEVKLG1CQUFrQjtFQUNsQixnQkFIbUQsRVA0RTlDOztBQUVEO0VPNUVKLG1CQUFrQjtFQUNsQixpQkFIbUQsRVBnRjlDOztBQU1IO0VPdERKLHVCRHJDcUQsRU42RmhEOztBQXBCRDtFS3hGSixXQ2VxRCxFTjJFaEQ7O0FBSUM7RU94RUosbUJBQWtCO0VBQ2xCLFVBSG1ELEVQNEU5Qzs7QUFFRDtFTzVFSixtQkFBa0I7RUFDbEIsV0FIbUQsRVBnRjlDOztBQU1IO0VPdERKLHVCRHJDcUQsRU42RmhEOztBQXBCRDtFS3hGSixpQkNlcUQsRU4yRWhEOztBQUlDO0VPeEVKLG1CQUFrQjtFQUNsQixnQkFIbUQsRVA0RTlDOztBQUVEO0VPNUVKLG1CQUFrQjtFQUNsQixpQkFIbUQsRVBnRjlDOztBQU1IO0VPdERKLGlCRHJDcUQsRU42RmhEOztBQXBCRDtFS3hGSixpQkNlcUQsRU4yRWhEOztBQUlDO0VPeEVKLG1CQUFrQjtFQUNsQixnQkFIbUQsRVA0RTlDOztBQUVEO0VPNUVKLG1CQUFrQjtFQUNsQixpQkFIbUQsRVBnRjlDOztBQU1IO0VPdERKLHVCRHJDcUQsRU42RmhEOztBQXBCRDtFS3hGSixXQ2VxRCxFTjJFaEQ7O0FBSUM7RU94RUosbUJBQWtCO0VBQ2xCLFVBSG1ELEVQNEU5Qzs7QUFFRDtFTzVFSixtQkFBa0I7RUFDbEIsV0FIbUQsRVBnRjlDOztBQU1IO0VPdERKLHVCRHJDcUQsRU42RmhEOztBQXBCRDtFS3hGSixpQkNlcUQsRU4yRWhEOztBQUlDO0VPeEVKLG1CQUFrQjtFQUNsQixnQkFIbUQsRVA0RTlDOztBQUVEO0VPNUVKLG1CQUFrQjtFQUNsQixpQkFIbUQsRVBnRjlDOztBQU1IO0VPdERKLGlCRHJDcUQsRU42RmhEOztBQXBCRDtFS3hGSixpQkNlcUQsRU4yRWhEOztBQUlDO0VPeEVKLG1CQUFrQjtFQUNsQixnQkFIbUQsRVA0RTlDOztBQUVEO0VPNUVKLG1CQUFrQjtFQUNsQixpQkFIbUQsRVBnRjlDOztBQU1IO0VPdERKLHVCRHJDcUQsRU42RmhEOztBQXBCRDtFS3hGSixZQ2VxRCxFTjJFaEQ7O0FBZ0JEO0VPdERKLHVCRHJDcUQsRU42RmhEOztBQUtEO0VRekdGLFlYb0d1RDtFV25HdkQsWUFBdUIsRUFpQ3hCO0VSdUVHO0lRakZBLFlBQVcsRUFDWjtFUmdGQztJUTdFQSxZQUFXLEVBQ1o7RVI0RUM7SVF6RUEsWVhvRXFELEVXbkV0RDs7QVJ3RUM7RVF6R0YsWVhvR3VEO0VXbkd2RCxXQUF1QixFQWlDeEI7RVJ1RUc7SVFqRkEsWUFBVyxFQUNaO0VSZ0ZDO0lRN0VBLFlBQVcsRUFDWjtFUjRFQztJUXpFQSxZWG9FcUQsRVduRXREOztBUndFQztFUXpHRixZWG9HdUQ7RVduR3ZELGlCQUF1QixFQWlDeEI7RVJ1RUc7SVFqRkEsWUFBVyxFQUNaO0VSZ0ZDO0lRN0VBLFlBQVcsRUFDWjtFUjRFQztJUXpFQSxZWG9FcUQsRVduRXREOztBUndFQztFUXpHRixZWG9HdUQ7RVduR3ZELFdBQXVCLEVBaUN4QjtFUnVFRztJUWpGQSxZQUFXLEVBQ1o7RVJnRkM7SVE3RUEsWUFBVyxFQUNaO0VSNEVDO0lRekVBLFlYb0VxRCxFV25FdEQ7O0FSd0VDO0VRekdGLFlYb0d1RDtFV25HdkQsV0FBdUIsRUFpQ3hCO0VSdUVHO0lRakZBLFlBQVcsRUFDWjtFUmdGQztJUTdFQSxZQUFXLEVBQ1o7RVI0RUM7SVF6RUEsWVhvRXFELEVXbkV0RDs7QVJ3RUM7RVF6R0YsWVhvR3VEO0VXbkd2RCxpQkFBdUIsRUFpQ3hCO0VSdUVHO0lRakZBLFlBQVcsRUFDWjtFUmdGQztJUTdFQSxZQUFXLEVBQ1o7RVI0RUM7SVF6RUEsWVhvRXFELEVXbkV0RDs7QVJ3RUM7RVF6R0YsWVhvR3VEO0VXbkd2RCxpQkFBdUIsRUFpQ3hCO0VSdUVHO0lRakZBLFlBQVcsRUFDWjtFUmdGQztJUTdFQSxZQUFXLEVBQ1o7RVI0RUM7SVF6RUEsWVhvRXFELEVXbkV0RDs7QVJ3RUM7RVF6R0YsWVhvR3VEO0VXbkd2RCxhQUF1QixFQWlDeEI7RVJ1RUc7SVFqRkEsWUFBVyxFQUNaO0VSZ0ZDO0lRN0VBLFlBQVcsRUFDWjtFUjRFQztJUXpFQSxZWG9FcUQsRVduRXREOztBUjhFRDtFRy9HQSxpQkR1RVM7RUN0RVQsZ0JEc0VTLEVGeUN1Qzs7QUFEaEQ7RUFJSSxnQkFBZTtFQUNmLGVBQWMsRUFDZjs7QUFHSDtFQUNFLGdCQUFlO0VBQ2YsZUFBYyxFQUNmOztBQUVEO0VHN0hBLHdCQUZxQztFQUdyQyx1QkFIcUMsRUhnSW9COztBQUl6RDtFTzFHQSxtQkFBa0I7RUFDbEIsa0JBQWlCLEVQMkdoQjtFT2hIRDtJQUNFLFlBQVc7SUFDWCxZQUFXLEVBQ1o7O0FQZ0hEOzs7RU9uR0YsaUJBQWdCO0VBQ2hCLGdCQUFlO0VBQ2YsZUFBYyxFUHFHWDtFTzlJRDs7Ozs7SUFDRSxZVnNHcUQ7SVVyR3JELFlBQVcsRUFDWjtFQUlDOzs7SUFDRSxhVmdHb0QsRVUvRnJEOztBSDBJRDtFSmhFQTtJS3hGSixnQkNlcUQsRU4yRWhEO0VBSUM7SU94RUosbUJBQWtCO0lBQ2xCLGVBSG1ELEVQNEU5QztFQUVEO0lPNUVKLG1CQUFrQjtJQUNsQixnQkFIbUQsRVBnRjlDO0VBTUg7SU90REosZ0JEeENnQyxFTmdHM0I7RUFwQkQ7SUt4RkosaUJDZXFELEVOMkVoRDtFQUlDO0lPeEVKLG1CQUFrQjtJQUNsQixnQkFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUGdGOUM7RUFNSDtJT3RESixzQkRyQ3FELEVONkZoRDtFQXBCRDtJS3hGSixXQ2VxRCxFTjJFaEQ7RUFJQztJT3hFSixtQkFBa0I7SUFDbEIsVUFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLFdBSG1ELEVQZ0Y5QztFQU1IO0lPdERKLHVCRHJDcUQsRU42RmhEO0VBcEJEO0lLeEZKLGlCQ2VxRCxFTjJFaEQ7RUFJQztJT3hFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQNEU5QztFQUVEO0lPNUVKLG1CQUFrQjtJQUNsQixpQkFIbUQsRVBnRjlDO0VBTUg7SU90REosaUJEckNxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosaUJDZXFELEVOMkVoRDtFQUlDO0lPeEVKLG1CQUFrQjtJQUNsQixnQkFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUGdGOUM7RUFNSDtJT3RESix1QkRyQ3FELEVONkZoRDtFQXBCRDtJS3hGSixXQ2VxRCxFTjJFaEQ7RUFJQztJT3hFSixtQkFBa0I7SUFDbEIsVUFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLFdBSG1ELEVQZ0Y5QztFQU1IO0lPdERKLHVCRHJDcUQsRU42RmhEO0VBcEJEO0lLeEZKLGlCQ2VxRCxFTjJFaEQ7RUFJQztJT3hFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQNEU5QztFQUVEO0lPNUVKLG1CQUFrQjtJQUNsQixpQkFIbUQsRVBnRjlDO0VBTUg7SU90REosaUJEckNxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosaUJDZXFELEVOMkVoRDtFQUlDO0lPeEVKLG1CQUFrQjtJQUNsQixnQkFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUGdGOUM7RUFNSDtJT3RESix1QkRyQ3FELEVONkZoRDtFQXBCRDtJS3hGSixXQ2VxRCxFTjJFaEQ7RUFJQztJT3hFSixtQkFBa0I7SUFDbEIsVUFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLFdBSG1ELEVQZ0Y5QztFQU1IO0lPdERKLHVCRHJDcUQsRU42RmhEO0VBcEJEO0lLeEZKLGlCQ2VxRCxFTjJFaEQ7RUFJQztJT3hFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQNEU5QztFQUVEO0lPNUVKLG1CQUFrQjtJQUNsQixpQkFIbUQsRVBnRjlDO0VBTUg7SU90REosaUJEckNxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosaUJDZXFELEVOMkVoRDtFQUlDO0lPeEVKLG1CQUFrQjtJQUNsQixnQkFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUGdGOUM7RUFNSDtJT3RESix1QkRyQ3FELEVONkZoRDtFQXBCRDtJS3hGSixZQ2VxRCxFTjJFaEQ7RUFnQkQ7SU90REosdUJEckNxRCxFTjZGaEQ7RUFLRDtJUXpHRixZWG9HdUQ7SVduR3ZELFlBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYb0VxRCxFV25FdEQ7RVJ3RUM7SVF6R0YsWVhvR3VEO0lXbkd2RCxXQUF1QixFQWlDeEI7SVJ1RUc7TVFqRkEsWUFBVyxFQUNaO0lSZ0ZDO01RN0VBLFlBQVcsRUFDWjtJUjRFQztNUXpFQSxZWG9FcUQsRVduRXREO0VSd0VDO0lRekdGLFlYb0d1RDtJV25HdkQsaUJBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYb0VxRCxFV25FdEQ7RVJ3RUM7SVF6R0YsWVhvR3VEO0lXbkd2RCxXQUF1QixFQWlDeEI7SVJ1RUc7TVFqRkEsWUFBVyxFQUNaO0lSZ0ZDO01RN0VBLFlBQVcsRUFDWjtJUjRFQztNUXpFQSxZWG9FcUQsRVduRXREO0VSd0VDO0lRekdGLFlYb0d1RDtJV25HdkQsV0FBdUIsRUFpQ3hCO0lSdUVHO01RakZBLFlBQVcsRUFDWjtJUmdGQztNUTdFQSxZQUFXLEVBQ1o7SVI0RUM7TVF6RUEsWVhvRXFELEVXbkV0RDtFUndFQztJUXpHRixZWG9HdUQ7SVduR3ZELGlCQUF1QixFQWlDeEI7SVJ1RUc7TVFqRkEsWUFBVyxFQUNaO0lSZ0ZDO01RN0VBLFlBQVcsRUFDWjtJUjRFQztNUXpFQSxZWG9FcUQsRVduRXREO0VSd0VDO0lRekdGLFlYb0d1RDtJV25HdkQsaUJBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYb0VxRCxFV25FdEQ7RVJ3RUM7SVF6R0YsWVhvR3VEO0lXbkd2RCxhQUF1QixFQWlDeEI7SVJ1RUc7TVFqRkEsWUFBVyxFQUNaO0lSZ0ZDO01RN0VBLFlBQVcsRUFDWjtJUjRFQztNUXpFQSxZWG9FcUQsRVduRXREO0VSOEVEO0lHL0dBLGlCRHVFUztJQ3RFVCxnQkRzRVMsRUZ5Q3VDO0VBRGhEO0lBSUksZ0JBQWU7SUFDZixlQUFjLEVBQ2Y7RUFHSDtJQUNFLGdCQUFlO0lBQ2YsZUFBYyxFQUNmO0VBRUQ7SUc3SEEseUJBRnFDO0lBR3JDLHdCQUhxQyxFSGdJb0I7RUFJekQ7SU8xR0EsbUJBQWtCO0lBQ2xCLGtCQUFpQixFUDJHaEI7SU9oSEQ7TUFDRSxZQUFXO01BQ1gsWUFBVyxFQUNaO0VQZ0hEOzs7SU9uR0YsaUJBQWdCO0lBQ2hCLGdCQUFlO0lBQ2YsZUFBYyxFUHFHWDtJTzlJRDs7Ozs7TUFDRSxZVnNHcUQ7TVVyR3JELFlBQVcsRUFDWjtJQUlDOzs7TUFDRSxhVmdHb0QsRVUvRnJELEVBQUE7O0FIMElEO0VKaEVBO0lLeEZKLGdCQ2VxRCxFTjJFaEQ7RUFJQztJT3hFSixtQkFBa0I7SUFDbEIsZUFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUGdGOUM7RUFNSDtJT3RESixnQkR4Q2dDLEVOZ0czQjtFQXBCRDtJS3hGSixpQkNlcUQsRU4yRWhEO0VBSUM7SU94RUosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUDRFOUM7RUFFRDtJTzVFSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVQZ0Y5QztFQU1IO0lPdERKLHNCRHJDcUQsRU42RmhEO0VBcEJEO0lLeEZKLFdDZXFELEVOMkVoRDtFQUlDO0lPeEVKLG1CQUFrQjtJQUNsQixVQUhtRCxFUDRFOUM7RUFFRDtJTzVFSixtQkFBa0I7SUFDbEIsV0FIbUQsRVBnRjlDO0VBTUg7SU90REosdUJEckNxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosaUJDZXFELEVOMkVoRDtFQUlDO0lPeEVKLG1CQUFrQjtJQUNsQixnQkFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUGdGOUM7RUFNSDtJT3RESixpQkRyQ3FELEVONkZoRDtFQXBCRDtJS3hGSixpQkNlcUQsRU4yRWhEO0VBSUM7SU94RUosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUDRFOUM7RUFFRDtJTzVFSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVQZ0Y5QztFQU1IO0lPdERKLHVCRHJDcUQsRU42RmhEO0VBcEJEO0lLeEZKLFdDZXFELEVOMkVoRDtFQUlDO0lPeEVKLG1CQUFrQjtJQUNsQixVQUhtRCxFUDRFOUM7RUFFRDtJTzVFSixtQkFBa0I7SUFDbEIsV0FIbUQsRVBnRjlDO0VBTUg7SU90REosdUJEckNxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosaUJDZXFELEVOMkVoRDtFQUlDO0lPeEVKLG1CQUFrQjtJQUNsQixnQkFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUGdGOUM7RUFNSDtJT3RESixpQkRyQ3FELEVONkZoRDtFQXBCRDtJS3hGSixpQkNlcUQsRU4yRWhEO0VBSUM7SU94RUosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUDRFOUM7RUFFRDtJTzVFSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVQZ0Y5QztFQU1IO0lPdERKLHVCRHJDcUQsRU42RmhEO0VBcEJEO0lLeEZKLFdDZXFELEVOMkVoRDtFQUlDO0lPeEVKLG1CQUFrQjtJQUNsQixVQUhtRCxFUDRFOUM7RUFFRDtJTzVFSixtQkFBa0I7SUFDbEIsV0FIbUQsRVBnRjlDO0VBTUg7SU90REosdUJEckNxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosaUJDZXFELEVOMkVoRDtFQUlDO0lPeEVKLG1CQUFrQjtJQUNsQixnQkFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUGdGOUM7RUFNSDtJT3RESixpQkRyQ3FELEVONkZoRDtFQXBCRDtJS3hGSixpQkNlcUQsRU4yRWhEO0VBSUM7SU94RUosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUDRFOUM7RUFFRDtJTzVFSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVQZ0Y5QztFQU1IO0lPdERKLHVCRHJDcUQsRU42RmhEO0VBcEJEO0lLeEZKLFlDZXFELEVOMkVoRDtFQWdCRDtJT3RESix1QkRyQ3FELEVONkZoRDtFQUtEO0lRekdGLFlYb0d1RDtJV25HdkQsWUFBdUIsRUFpQ3hCO0lSdUVHO01RakZBLFlBQVcsRUFDWjtJUmdGQztNUTdFQSxZQUFXLEVBQ1o7SVI0RUM7TVF6RUEsWVhvRXFELEVXbkV0RDtFUndFQztJUXpHRixZWG9HdUQ7SVduR3ZELFdBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYb0VxRCxFV25FdEQ7RVJ3RUM7SVF6R0YsWVhvR3VEO0lXbkd2RCxpQkFBdUIsRUFpQ3hCO0lSdUVHO01RakZBLFlBQVcsRUFDWjtJUmdGQztNUTdFQSxZQUFXLEVBQ1o7SVI0RUM7TVF6RUEsWVhvRXFELEVXbkV0RDtFUndFQztJUXpHRixZWG9HdUQ7SVduR3ZELFdBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYb0VxRCxFV25FdEQ7RVJ3RUM7SVF6R0YsWVhvR3VEO0lXbkd2RCxXQUF1QixFQWlDeEI7SVJ1RUc7TVFqRkEsWUFBVyxFQUNaO0lSZ0ZDO01RN0VBLFlBQVcsRUFDWjtJUjRFQztNUXpFQSxZWG9FcUQsRVduRXREO0VSd0VDO0lRekdGLFlYb0d1RDtJV25HdkQsaUJBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYb0VxRCxFV25FdEQ7RVJ3RUM7SVF6R0YsWVhvR3VEO0lXbkd2RCxpQkFBdUIsRUFpQ3hCO0lSdUVHO01RakZBLFlBQVcsRUFDWjtJUmdGQztNUTdFQSxZQUFXLEVBQ1o7SVI0RUM7TVF6RUEsWVhvRXFELEVXbkV0RDtFUndFQztJUXpHRixZWG9HdUQ7SVduR3ZELGFBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYb0VxRCxFV25FdEQ7RVI4RUQ7SUcvR0EsaUJEdUVTO0lDdEVULGdCRHNFUyxFRnlDdUM7RUFEaEQ7SUFJSSxnQkFBZTtJQUNmLGVBQWMsRUFDZjtFQUdIO0lBQ0UsZ0JBQWU7SUFDZixlQUFjLEVBQ2Y7RUFFRDtJRzdIQSx5QkFGcUM7SUFHckMsd0JBSHFDLEVIZ0lvQjtFQUl6RDtJTzFHQSxtQkFBa0I7SUFDbEIsa0JBQWlCLEVQMkdoQjtJT2hIRDtNQUNFLFlBQVc7TUFDWCxZQUFXLEVBQ1o7RVBnSEQ7OztJT25HRixpQkFBZ0I7SUFDaEIsZ0JBQWU7SUFDZixlQUFjLEVQcUdYO0lPOUlEOzs7OztNQUNFLFlWc0dxRDtNVXJHckQsWUFBVyxFQUNaO0lBSUM7OztNQUNFLGFWZ0dvRCxFVS9GckQsRUFBQTs7QUgrSUQ7RUpyRUE7SUt4RkosZ0JDZXFELEVOMkVoRDtFQUlDO0lPeEVKLG1CQUFrQjtJQUNsQixlQUhtRCxFUDRFOUM7RUFFRDtJTzVFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQZ0Y5QztFQU1IO0lPdERKLGdCRHhDZ0MsRU5nRzNCO0VBcEJEO0lLeEZKLGlCQ2VxRCxFTjJFaEQ7RUFJQztJT3hFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQNEU5QztFQUVEO0lPNUVKLG1CQUFrQjtJQUNsQixpQkFIbUQsRVBnRjlDO0VBTUg7SU90REosc0JEckNxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosV0NlcUQsRU4yRWhEO0VBSUM7SU94RUosbUJBQWtCO0lBQ2xCLFVBSG1ELEVQNEU5QztFQUVEO0lPNUVKLG1CQUFrQjtJQUNsQixXQUhtRCxFUGdGOUM7RUFNSDtJT3RESix1QkRyQ3FELEVONkZoRDtFQXBCRDtJS3hGSixpQkNlcUQsRU4yRWhEO0VBSUM7SU94RUosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUDRFOUM7RUFFRDtJTzVFSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVQZ0Y5QztFQU1IO0lPdERKLGlCRHJDcUQsRU42RmhEO0VBcEJEO0lLeEZKLGlCQ2VxRCxFTjJFaEQ7RUFJQztJT3hFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQNEU5QztFQUVEO0lPNUVKLG1CQUFrQjtJQUNsQixpQkFIbUQsRVBnRjlDO0VBTUg7SU90REosdUJEckNxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosV0NlcUQsRU4yRWhEO0VBSUM7SU94RUosbUJBQWtCO0lBQ2xCLFVBSG1ELEVQNEU5QztFQUVEO0lPNUVKLG1CQUFrQjtJQUNsQixXQUhtRCxFUGdGOUM7RUFNSDtJT3RESix1QkRyQ3FELEVONkZoRDtFQXBCRDtJS3hGSixpQkNlcUQsRU4yRWhEO0VBSUM7SU94RUosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUDRFOUM7RUFFRDtJTzVFSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVQZ0Y5QztFQU1IO0lPdERKLGlCRHJDcUQsRU42RmhEO0VBcEJEO0lLeEZKLGlCQ2VxRCxFTjJFaEQ7RUFJQztJT3hFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQNEU5QztFQUVEO0lPNUVKLG1CQUFrQjtJQUNsQixpQkFIbUQsRVBnRjlDO0VBTUg7SU90REosdUJEckNxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosV0NlcUQsRU4yRWhEO0VBSUM7SU94RUosbUJBQWtCO0lBQ2xCLFVBSG1ELEVQNEU5QztFQUVEO0lPNUVKLG1CQUFrQjtJQUNsQixXQUhtRCxFUGdGOUM7RUFNSDtJT3RESix1QkRyQ3FELEVONkZoRDtFQXBCRDtJS3hGSixpQkNlcUQsRU4yRWhEO0VBSUM7SU94RUosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUDRFOUM7RUFFRDtJTzVFSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVQZ0Y5QztFQU1IO0lPdERKLGlCRHJDcUQsRU42RmhEO0VBcEJEO0lLeEZKLGlCQ2VxRCxFTjJFaEQ7RUFJQztJT3hFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQNEU5QztFQUVEO0lPNUVKLG1CQUFrQjtJQUNsQixpQkFIbUQsRVBnRjlDO0VBTUg7SU90REosdUJEckNxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosWUNlcUQsRU4yRWhEO0VBZ0JEO0lPdERKLHVCRHJDcUQsRU42RmhEO0VBS0Q7SVF6R0YsWVhvR3VEO0lXbkd2RCxZQUF1QixFQWlDeEI7SVJ1RUc7TVFqRkEsWUFBVyxFQUNaO0lSZ0ZDO01RN0VBLFlBQVcsRUFDWjtJUjRFQztNUXpFQSxZWG9FcUQsRVduRXREO0VSd0VDO0lRekdGLFlYb0d1RDtJV25HdkQsV0FBdUIsRUFpQ3hCO0lSdUVHO01RakZBLFlBQVcsRUFDWjtJUmdGQztNUTdFQSxZQUFXLEVBQ1o7SVI0RUM7TVF6RUEsWVhvRXFELEVXbkV0RDtFUndFQztJUXpHRixZWG9HdUQ7SVduR3ZELGlCQUF1QixFQWlDeEI7SVJ1RUc7TVFqRkEsWUFBVyxFQUNaO0lSZ0ZDO01RN0VBLFlBQVcsRUFDWjtJUjRFQztNUXpFQSxZWG9FcUQsRVduRXREO0VSd0VDO0lRekdGLFlYb0d1RDtJV25HdkQsV0FBdUIsRUFpQ3hCO0lSdUVHO01RakZBLFlBQVcsRUFDWjtJUmdGQztNUTdFQSxZQUFXLEVBQ1o7SVI0RUM7TVF6RUEsWVhvRXFELEVXbkV0RDtFUndFQztJUXpHRixZWG9HdUQ7SVduR3ZELFdBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYb0VxRCxFV25FdEQ7RVJ3RUM7SVF6R0YsWVhvR3VEO0lXbkd2RCxpQkFBdUIsRUFpQ3hCO0lSdUVHO01RakZBLFlBQVcsRUFDWjtJUmdGQztNUTdFQSxZQUFXLEVBQ1o7SVI0RUM7TVF6RUEsWVhvRXFELEVXbkV0RDtFUndFQztJUXpHRixZWG9HdUQ7SVduR3ZELGlCQUF1QixFQWlDeEI7SVJ1RUc7TVFqRkEsWUFBVyxFQUNaO0lSZ0ZDO01RN0VBLFlBQVcsRUFDWjtJUjRFQztNUXpFQSxZWG9FcUQsRVduRXREO0VSd0VDO0lRekdGLFlYb0d1RDtJV25HdkQsYUFBdUIsRUFpQ3hCO0lSdUVHO01RakZBLFlBQVcsRUFDWjtJUmdGQztNUTdFQSxZQUFXLEVBQ1o7SVI0RUM7TVF6RUEsWVhvRXFELEVXbkV0RDtFUjhFRDtJRy9HQSxpQkR1RVM7SUN0RVQsZ0JEc0VTLEVGeUN1QztFQURoRDtJQUlJLGdCQUFlO0lBQ2YsZUFBYyxFQUNmO0VBR0g7SUFDRSxnQkFBZTtJQUNmLGVBQWMsRUFDZjtFQUVEO0lHN0hBLHlCQUZxQztJQUdyQyx3QkFIcUMsRUhnSW9CO0VBSXpEO0lPMUdBLG1CQUFrQjtJQUNsQixrQkFBaUIsRVAyR2hCO0lPaEhEO01BQ0UsWUFBVztNQUNYLFlBQVcsRUFDWjtFUGdIRDs7O0lPbkdGLGlCQUFnQjtJQUNoQixnQkFBZTtJQUNmLGVBQWMsRVBxR1g7SU85SUQ7Ozs7O01BQ0UsWVZzR3FEO01VckdyRCxZQUFXLEVBQ1o7SUFJQzs7O01BQ0UsYVZnR29ELEVVL0ZyRCxFQUFBOztBSCtJRDtFSnJFQTtJS3hGSixnQkNlcUQsRU4yRWhEO0VBSUM7SU94RUosbUJBQWtCO0lBQ2xCLGVBSG1ELEVQNEU5QztFQUVEO0lPNUVKLG1CQUFrQjtJQUNsQixnQkFIbUQsRVBnRjlDO0VBTUg7SU90REosZ0JEeENnQyxFTmdHM0I7RUFwQkQ7SUt4RkosaUJDZXFELEVOMkVoRDtFQUlDO0lPeEVKLG1CQUFrQjtJQUNsQixnQkFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUGdGOUM7RUFNSDtJT3RESixzQkRyQ3FELEVONkZoRDtFQXBCRDtJS3hGSixXQ2VxRCxFTjJFaEQ7RUFJQztJT3hFSixtQkFBa0I7SUFDbEIsVUFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLFdBSG1ELEVQZ0Y5QztFQU1IO0lPdERKLHVCRHJDcUQsRU42RmhEO0VBcEJEO0lLeEZKLGlCQ2VxRCxFTjJFaEQ7RUFJQztJT3hFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQNEU5QztFQUVEO0lPNUVKLG1CQUFrQjtJQUNsQixpQkFIbUQsRVBnRjlDO0VBTUg7SU90REosaUJEckNxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosaUJDZXFELEVOMkVoRDtFQUlDO0lPeEVKLG1CQUFrQjtJQUNsQixnQkFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUGdGOUM7RUFNSDtJT3RESix1QkRyQ3FELEVONkZoRDtFQXBCRDtJS3hGSixXQ2VxRCxFTjJFaEQ7RUFJQztJT3hFSixtQkFBa0I7SUFDbEIsVUFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLFdBSG1ELEVQZ0Y5QztFQU1IO0lPdERKLHVCRHJDcUQsRU42RmhEO0VBcEJEO0lLeEZKLGlCQ2VxRCxFTjJFaEQ7RUFJQztJT3hFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQNEU5QztFQUVEO0lPNUVKLG1CQUFrQjtJQUNsQixpQkFIbUQsRVBnRjlDO0VBTUg7SU90REosaUJEckNxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosaUJDZXFELEVOMkVoRDtFQUlDO0lPeEVKLG1CQUFrQjtJQUNsQixnQkFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUGdGOUM7RUFNSDtJT3RESix1QkRyQ3FELEVONkZoRDtFQXBCRDtJS3hGSixXQ2VxRCxFTjJFaEQ7RUFJQztJT3hFSixtQkFBa0I7SUFDbEIsVUFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLFdBSG1ELEVQZ0Y5QztFQU1IO0lPdERKLHVCRHJDcUQsRU42RmhEO0VBcEJEO0lLeEZKLGlCQ2VxRCxFTjJFaEQ7RUFJQztJT3hFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQNEU5QztFQUVEO0lPNUVKLG1CQUFrQjtJQUNsQixpQkFIbUQsRVBnRjlDO0VBTUg7SU90REosaUJEckNxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosaUJDZXFELEVOMkVoRDtFQUlDO0lPeEVKLG1CQUFrQjtJQUNsQixnQkFIbUQsRVA0RTlDO0VBRUQ7SU81RUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUGdGOUM7RUFNSDtJT3RESix1QkRyQ3FELEVONkZoRDtFQXBCRDtJS3hGSixZQ2VxRCxFTjJFaEQ7RUFnQkQ7SU90REosdUJEckNxRCxFTjZGaEQ7RUFLRDtJUXpHRixZWG9HdUQ7SVduR3ZELFlBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYb0VxRCxFV25FdEQ7RVJ3RUM7SVF6R0YsWVhvR3VEO0lXbkd2RCxXQUF1QixFQWlDeEI7SVJ1RUc7TVFqRkEsWUFBVyxFQUNaO0lSZ0ZDO01RN0VBLFlBQVcsRUFDWjtJUjRFQztNUXpFQSxZWG9FcUQsRVduRXREO0VSd0VDO0lRekdGLFlYb0d1RDtJV25HdkQsaUJBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYb0VxRCxFV25FdEQ7RVJ3RUM7SVF6R0YsWVhvR3VEO0lXbkd2RCxXQUF1QixFQWlDeEI7SVJ1RUc7TVFqRkEsWUFBVyxFQUNaO0lSZ0ZDO01RN0VBLFlBQVcsRUFDWjtJUjRFQztNUXpFQSxZWG9FcUQsRVduRXREO0VSd0VDO0lRekdGLFlYb0d1RDtJV25HdkQsV0FBdUIsRUFpQ3hCO0lSdUVHO01RakZBLFlBQVcsRUFDWjtJUmdGQztNUTdFQSxZQUFXLEVBQ1o7SVI0RUM7TVF6RUEsWVhvRXFELEVXbkV0RDtFUndFQztJUXpHRixZWG9HdUQ7SVduR3ZELGlCQUF1QixFQWlDeEI7SVJ1RUc7TVFqRkEsWUFBVyxFQUNaO0lSZ0ZDO01RN0VBLFlBQVcsRUFDWjtJUjRFQztNUXpFQSxZWG9FcUQsRVduRXREO0VSd0VDO0lRekdGLFlYb0d1RDtJV25HdkQsaUJBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYb0VxRCxFV25FdEQ7RVJ3RUM7SVF6R0YsWVhvR3VEO0lXbkd2RCxhQUF1QixFQWlDeEI7SVJ1RUc7TVFqRkEsWUFBVyxFQUNaO0lSZ0ZDO01RN0VBLFlBQVcsRUFDWjtJUjRFQztNUXpFQSxZWG9FcUQsRVduRXREO0VSOEVEO0lHL0dBLGlCRHVFUztJQ3RFVCxnQkRzRVMsRUZ5Q3VDO0VBRGhEO0lBSUksZ0JBQWU7SUFDZixlQUFjLEVBQ2Y7RUFHSDtJQUNFLGdCQUFlO0lBQ2YsZUFBYyxFQUNmO0VBRUQ7SUc3SEEseUJBRnFDO0lBR3JDLHdCQUhxQyxFSGdJb0I7RUFJekQ7SU8xR0EsbUJBQWtCO0lBQ2xCLGtCQUFpQixFUDJHaEI7SU9oSEQ7TUFDRSxZQUFXO01BQ1gsWUFBVyxFQUNaO0VQZ0hEOzs7SU9uR0YsaUJBQWdCO0lBQ2hCLGdCQUFlO0lBQ2YsZUFBYyxFUHFHWDtJTzlJRDs7Ozs7TUFDRSxZVnNHcUQ7TVVyR3JELFlBQVcsRUFDWjtJQUlDOzs7TUFDRSxhVmdHb0QsRVUvRnJELEVBQUE7O0FQeUlMO0VHekdFLHVCRDRCcUQsRUYrRXREO0VHekdDO0lBQ0UsaUJBQWdCLEVBQ2pCO0VDc0dDO0lKREo7TUd6R0Usd0JENEJxRCxFRitFdEQ7TUd6R0M7UUFDRSxpQkFBZ0IsRUFDakIsRUFBQTs7QUhyQ0g7RUNzRUEsa0JDVHVEO0VPbERyRCxtQkFBa0I7RUFDbEIsa0JBQWlCO0VBSWpCLHNCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsNEJBbEJtQjtNQWtCbkIsd0JBbEJtQjtVQWtCbkIsb0JBbEJtQixFQTZJcEI7RVQ1SUQ7SUN5REUsd0JBRitEO0lBRy9ELHVCQUgrRCxFUXdEOUQ7SUw0QkM7TUozSUo7UUN5REUseUJBRitEO1FBRy9ELHdCQUgrRCxFUXdEOUQsRUFBQTtJTDRCQztNSjNJSjtRQ3lERSx5QkFGK0Q7UUFHL0Qsd0JBSCtELEVRd0Q5RCxFQUFBO0lMaUNDO01KaEpKO1FDeURFLHlCQUYrRDtRQUcvRCx3QkFIK0QsRVF3RDlELEVBQUE7SUxpQ0M7TUpoSko7UUN5REUseUJBRitEO1FBRy9ELHdCQUgrRCxFUXdEOUQsRUFBQTtJVC9HSDtNUzRHTSxnQkFBZTtNQUNmLGVBQWMsRUFDZjtFVDlHTDtJQ3NFQSxnQkFIYSxFUXNEVjtJVHpISDtNU3NITSxtQkFBa0I7TUFDbEIsa0JBQWlCLEVBQ2xCO0VUeEhMO0lDc0VBLGdCQUhhLEVRMERWO0VUN0hIO0lHTEUsaUJEdUVTO0lDdEVULGdCRHNFUyxFT2dFTjtFQTlCTDs7O0lBcUNJLGdCQUFlO0lBQ2YsZUFBYyxFQUNmOztBVDNGSDtFU3lDQSxzQkF4RGM7TUF3RGQsa0JBeERjO1VBd0RkLGNBeERjO0VOdENaLHdCQUZxQztFQUdyQyx1QkFIcUM7RU1xRXJDLGFBQVksRUFtRmI7RUxORztJSjNGSjtNR3JERSx5QkFGcUM7TUFHckMsd0JBSHFDLEVNd0p0QyxFQUFBOztBVHJGRDtFUzBGRSxZQUFXO0VBQ1gsZUFBYyxFQUNmOztBVHZGRDtFUzJGRSxnQkFBZTtFQUNmLGVBQWM7RUFDZCxpQkFBZ0I7RUFDaEIsZ0JBQWUsRUFDaEI7O0FUckZHO0VTMkZFLDJCSHBLK0M7TUdvSy9DLHVCSHBLK0M7VUdvSy9DLG1CSHBLK0M7RUdxSy9DLG9CSHJLK0MsRUdzS2hEOztBVDNFRDtFT3RESixnQkR4Q2dDLEVHZ0wzQjs7QVRwR0Q7RVMyRkUsNEJIcEsrQztNR29LL0Msd0JIcEsrQztVR29LL0Msb0JIcEsrQztFR3FLL0MscUJIcksrQyxFR3NLaEQ7O0FUM0VEO0VPdERKLHNCRHJDcUQsRUc2S2hEOztBVHBHRDtFUzJGRSxzQkhwSytDO01Hb0svQyxrQkhwSytDO1VHb0svQyxjSHBLK0M7RUdxSy9DLGVIcksrQyxFR3NLaEQ7O0FUM0VEO0VPdERKLHVCRHJDcUQsRUc2S2hEOztBVHBHRDtFUzJGRSw0QkhwSytDO01Hb0svQyx3QkhwSytDO1VHb0svQyxvQkhwSytDO0VHcUsvQyxxQkhySytDLEVHc0toRDs7QVQzRUQ7RU90REosaUJEckNxRCxFRzZLaEQ7O0FUcEdEO0VTMkZFLDRCSHBLK0M7TUdvSy9DLHdCSHBLK0M7VUdvSy9DLG9CSHBLK0M7RUdxSy9DLHFCSHJLK0MsRUdzS2hEOztBVDNFRDtFT3RESix1QkRyQ3FELEVHNktoRDs7QVRwR0Q7RVMyRkUsc0JIcEsrQztNR29LL0Msa0JIcEsrQztVR29LL0MsY0hwSytDO0VHcUsvQyxlSHJLK0MsRUdzS2hEOztBVDNFRDtFT3RESix1QkRyQ3FELEVHNktoRDs7QVRwR0Q7RVMyRkUsNEJIcEsrQztNR29LL0Msd0JIcEsrQztVR29LL0Msb0JIcEsrQztFR3FLL0MscUJIcksrQyxFR3NLaEQ7O0FUM0VEO0VPdERKLGlCRHJDcUQsRUc2S2hEOztBVHBHRDtFUzJGRSw0QkhwSytDO01Hb0svQyx3QkhwSytDO1VHb0svQyxvQkhwSytDO0VHcUsvQyxxQkhySytDLEVHc0toRDs7QVQzRUQ7RU90REosdUJEckNxRCxFRzZLaEQ7O0FUcEdEO0VTMkZFLHNCSHBLK0M7TUdvSy9DLGtCSHBLK0M7VUdvSy9DLGNIcEsrQztFR3FLL0MsZUhySytDLEVHc0toRDs7QVQzRUQ7RU90REosdUJEckNxRCxFRzZLaEQ7O0FUcEdEO0VTMkZFLDRCSHBLK0M7TUdvSy9DLHdCSHBLK0M7VUdvSy9DLG9CSHBLK0M7RUdxSy9DLHFCSHJLK0MsRUdzS2hEOztBVDNFRDtFT3RESixpQkRyQ3FELEVHNktoRDs7QVRwR0Q7RVMyRkUsNEJIcEsrQztNR29LL0Msd0JIcEsrQztVR29LL0Msb0JIcEsrQztFR3FLL0MscUJIcksrQyxFR3NLaEQ7O0FUM0VEO0VPdERKLHVCRHJDcUQsRUc2S2hEOztBVHBHRDtFUzJGRSx1QkhwSytDO01Hb0svQyxtQkhwSytDO1VHb0svQyxlSHBLK0M7RUdxSy9DLGdCSHJLK0MsRUdzS2hEOztBVDNFRDtFT3RESix1QkRyQ3FELEVHNktoRDs7QUFLRDtFQTFHSix3QkFBZTtNQUFmLG9CQUFlO1VBQWYsZ0JBQWUsRUE0R1Y7RVRsRkQ7SVNyQkYsdUJBRnNCO1FBRXRCLG1CQUZzQjtZQUV0QixlQUZzQjtJQUd0QixnQkFIc0IsRUFJdkI7O0FBbUdHO0VBMUdKLHdCQUFlO01BQWYsb0JBQWU7VUFBZixnQkFBZSxFQTRHVjtFVGxGRDtJU3JCRixzQkFGc0I7UUFFdEIsa0JBRnNCO1lBRXRCLGNBRnNCO0lBR3RCLGVBSHNCLEVBSXZCOztBQW1HRztFQTFHSix3QkFBZTtNQUFmLG9CQUFlO1VBQWYsZ0JBQWUsRUE0R1Y7RVRsRkQ7SVNyQkYsNEJBRnNCO1FBRXRCLHdCQUZzQjtZQUV0QixvQkFGc0I7SUFHdEIscUJBSHNCLEVBSXZCOztBQW1HRztFQTFHSix3QkFBZTtNQUFmLG9CQUFlO1VBQWYsZ0JBQWUsRUE0R1Y7RVRsRkQ7SVNyQkYsc0JBRnNCO1FBRXRCLGtCQUZzQjtZQUV0QixjQUZzQjtJQUd0QixlQUhzQixFQUl2Qjs7QUFtR0c7RUExR0osd0JBQWU7TUFBZixvQkFBZTtVQUFmLGdCQUFlLEVBNEdWO0VUbEZEO0lTckJGLHNCQUZzQjtRQUV0QixrQkFGc0I7WUFFdEIsY0FGc0I7SUFHdEIsZUFIc0IsRUFJdkI7O0FBbUdHO0VBMUdKLHdCQUFlO01BQWYsb0JBQWU7VUFBZixnQkFBZSxFQTRHVjtFVGxGRDtJU3JCRiw0QkFGc0I7UUFFdEIsd0JBRnNCO1lBRXRCLG9CQUZzQjtJQUd0QixxQkFIc0IsRUFJdkI7O0FBbUdHO0VBMUdKLHdCQUFlO01BQWYsb0JBQWU7VUFBZixnQkFBZSxFQTRHVjtFVGxGRDtJU3JCRiw0QkFGc0I7UUFFdEIsd0JBRnNCO1lBRXRCLG9CQUZzQjtJQUd0QixxQkFIc0IsRUFJdkI7O0FBbUdHO0VBMUdKLHdCQUFlO01BQWYsb0JBQWU7VUFBZixnQkFBZSxFQTRHVjtFVGxGRDtJU3JCRix3QkFGc0I7UUFFdEIsb0JBRnNCO1lBRXRCLGdCQUZzQjtJQUd0QixpQkFIc0IsRUFJdkI7O0FUeUJDO0VHL0dBLGlCRHVFUztFQ3RFVCxnQkRzRVMsRU8rSW1DOztBVHpGNUM7RUc3SEEsd0JBRnFDO0VBR3JDLHVCQUhxQyxFTTROZ0I7O0FMMUVuRDtFSmhFQTtJUzJGRSwyQkhwSytDO1FHb0svQyx1QkhwSytDO1lHb0svQyxtQkhwSytDO0lHcUsvQyxvQkhySytDLEVHc0toRDtFVDNFRDtJT3RESixnQkR4Q2dDLEVHZ0wzQjtFVHBHRDtJUzJGRSw0QkhwSytDO1FHb0svQyx3QkhwSytDO1lHb0svQyxvQkhwSytDO0lHcUsvQyxxQkhySytDLEVHc0toRDtFVDNFRDtJT3RESixzQkRyQ3FELEVHNktoRDtFVHBHRDtJUzJGRSxzQkhwSytDO1FHb0svQyxrQkhwSytDO1lHb0svQyxjSHBLK0M7SUdxSy9DLGVIcksrQyxFR3NLaEQ7RVQzRUQ7SU90REosdUJEckNxRCxFRzZLaEQ7RVRwR0Q7SVMyRkUsNEJIcEsrQztRR29LL0Msd0JIcEsrQztZR29LL0Msb0JIcEsrQztJR3FLL0MscUJIcksrQyxFR3NLaEQ7RVQzRUQ7SU90REosaUJEckNxRCxFRzZLaEQ7RVRwR0Q7SVMyRkUsNEJIcEsrQztRR29LL0Msd0JIcEsrQztZR29LL0Msb0JIcEsrQztJR3FLL0MscUJIcksrQyxFR3NLaEQ7RVQzRUQ7SU90REosdUJEckNxRCxFRzZLaEQ7RVRwR0Q7SVMyRkUsc0JIcEsrQztRR29LL0Msa0JIcEsrQztZR29LL0MsY0hwSytDO0lHcUsvQyxlSHJLK0MsRUdzS2hEO0VUM0VEO0lPdERKLHVCRHJDcUQsRUc2S2hEO0VUcEdEO0lTMkZFLDRCSHBLK0M7UUdvSy9DLHdCSHBLK0M7WUdvSy9DLG9CSHBLK0M7SUdxSy9DLHFCSHJLK0MsRUdzS2hEO0VUM0VEO0lPdERKLGlCRHJDcUQsRUc2S2hEO0VUcEdEO0lTMkZFLDRCSHBLK0M7UUdvSy9DLHdCSHBLK0M7WUdvSy9DLG9CSHBLK0M7SUdxSy9DLHFCSHJLK0MsRUdzS2hEO0VUM0VEO0lPdERKLHVCRHJDcUQsRUc2S2hEO0VUcEdEO0lTMkZFLHNCSHBLK0M7UUdvSy9DLGtCSHBLK0M7WUdvSy9DLGNIcEsrQztJR3FLL0MsZUhySytDLEVHc0toRDtFVDNFRDtJT3RESix1QkRyQ3FELEVHNktoRDtFVHBHRDtJUzJGRSw0QkhwSytDO1FHb0svQyx3QkhwSytDO1lHb0svQyxvQkhwSytDO0lHcUsvQyxxQkhySytDLEVHc0toRDtFVDNFRDtJT3RESixpQkRyQ3FELEVHNktoRDtFVHBHRDtJUzJGRSw0QkhwSytDO1FHb0svQyx3QkhwSytDO1lHb0svQyxvQkhwSytDO0lHcUsvQyxxQkhySytDLEVHc0toRDtFVDNFRDtJT3RESix1QkRyQ3FELEVHNktoRDtFVHBHRDtJUzJGRSx1QkhwSytDO1FHb0svQyxtQkhwSytDO1lHb0svQyxlSHBLK0M7SUdxSy9DLGdCSHJLK0MsRUdzS2hEO0VUM0VEO0lPdERKLHVCRHJDcUQsRUc2S2hEO0VBS0Q7SUExR0osd0JBQWU7UUFBZixvQkFBZTtZQUFmLGdCQUFlLEVBNEdWO0lUbEZEO01TckJGLHVCQUZzQjtVQUV0QixtQkFGc0I7Y0FFdEIsZUFGc0I7TUFHdEIsZ0JBSHNCLEVBSXZCO0VBbUdHO0lBMUdKLHdCQUFlO1FBQWYsb0JBQWU7WUFBZixnQkFBZSxFQTRHVjtJVGxGRDtNU3JCRixzQkFGc0I7VUFFdEIsa0JBRnNCO2NBRXRCLGNBRnNCO01BR3RCLGVBSHNCLEVBSXZCO0VBbUdHO0lBMUdKLHdCQUFlO1FBQWYsb0JBQWU7WUFBZixnQkFBZSxFQTRHVjtJVGxGRDtNU3JCRiw0QkFGc0I7VUFFdEIsd0JBRnNCO2NBRXRCLG9CQUZzQjtNQUd0QixxQkFIc0IsRUFJdkI7RUFtR0c7SUExR0osd0JBQWU7UUFBZixvQkFBZTtZQUFmLGdCQUFlLEVBNEdWO0lUbEZEO01TckJGLHNCQUZzQjtVQUV0QixrQkFGc0I7Y0FFdEIsY0FGc0I7TUFHdEIsZUFIc0IsRUFJdkI7RUFtR0c7SUExR0osd0JBQWU7UUFBZixvQkFBZTtZQUFmLGdCQUFlLEVBNEdWO0lUbEZEO01TckJGLHNCQUZzQjtVQUV0QixrQkFGc0I7Y0FFdEIsY0FGc0I7TUFHdEIsZUFIc0IsRUFJdkI7RUFtR0c7SUExR0osd0JBQWU7UUFBZixvQkFBZTtZQUFmLGdCQUFlLEVBNEdWO0lUbEZEO01TckJGLDRCQUZzQjtVQUV0Qix3QkFGc0I7Y0FFdEIsb0JBRnNCO01BR3RCLHFCQUhzQixFQUl2QjtFQW1HRztJQTFHSix3QkFBZTtRQUFmLG9CQUFlO1lBQWYsZ0JBQWUsRUE0R1Y7SVRsRkQ7TVNyQkYsNEJBRnNCO1VBRXRCLHdCQUZzQjtjQUV0QixvQkFGc0I7TUFHdEIscUJBSHNCLEVBSXZCO0VBbUdHO0lBMUdKLHdCQUFlO1FBQWYsb0JBQWU7WUFBZixnQkFBZSxFQTRHVjtJVGxGRDtNU3JCRix3QkFGc0I7VUFFdEIsb0JBRnNCO2NBRXRCLGdCQUZzQjtNQUd0QixpQkFIc0IsRUFJdkIsRUFBQTs7QUwwREc7RUtpREU7SUFDRSxzQkE1Sk07UUE0Sk4sa0JBNUpNO1lBNEpOLGNBNUpNLEVBNkpQLEVBQUE7O0FBS0Q7RUFFSSx1QkFBMkI7TUFBM0IsbUJBQTJCO1VBQTNCLGVBQTJCLEVBSzVCO0VML0RMO0lLd0RFO01BS00sc0JBdktFO1VBdUtGLGtCQXZLRTtjQXVLRixjQXZLRSxFQXlLTCxFQUFBOztBTC9ETDtFSmpDRjtJRy9HQSxpQkR1RVM7SUN0RVQsZ0JEc0VTLEVPK0ltQztFVHpGNUM7SUc3SEEseUJBRnFDO0lBR3JDLHdCQUhxQyxFTTROZ0IsRUFBQTs7QUwxRW5EO0VKaEVBO0lTMkZFLDJCSHBLK0M7UUdvSy9DLHVCSHBLK0M7WUdvSy9DLG1CSHBLK0M7SUdxSy9DLG9CSHJLK0MsRUdzS2hEO0VUM0VEO0lPdERKLGdCRHhDZ0MsRUdnTDNCO0VUcEdEO0lTMkZFLDRCSHBLK0M7UUdvSy9DLHdCSHBLK0M7WUdvSy9DLG9CSHBLK0M7SUdxSy9DLHFCSHJLK0MsRUdzS2hEO0VUM0VEO0lPdERKLHNCRHJDcUQsRUc2S2hEO0VUcEdEO0lTMkZFLHNCSHBLK0M7UUdvSy9DLGtCSHBLK0M7WUdvSy9DLGNIcEsrQztJR3FLL0MsZUhySytDLEVHc0toRDtFVDNFRDtJT3RESix1QkRyQ3FELEVHNktoRDtFVHBHRDtJUzJGRSw0QkhwSytDO1FHb0svQyx3QkhwSytDO1lHb0svQyxvQkhwSytDO0lHcUsvQyxxQkhySytDLEVHc0toRDtFVDNFRDtJT3RESixpQkRyQ3FELEVHNktoRDtFVHBHRDtJUzJGRSw0QkhwSytDO1FHb0svQyx3QkhwSytDO1lHb0svQyxvQkhwSytDO0lHcUsvQyxxQkhySytDLEVHc0toRDtFVDNFRDtJT3RESix1QkRyQ3FELEVHNktoRDtFVHBHRDtJUzJGRSxzQkhwSytDO1FHb0svQyxrQkhwSytDO1lHb0svQyxjSHBLK0M7SUdxSy9DLGVIcksrQyxFR3NLaEQ7RVQzRUQ7SU90REosdUJEckNxRCxFRzZLaEQ7RVRwR0Q7SVMyRkUsNEJIcEsrQztRR29LL0Msd0JIcEsrQztZR29LL0Msb0JIcEsrQztJR3FLL0MscUJIcksrQyxFR3NLaEQ7RVQzRUQ7SU90REosaUJEckNxRCxFRzZLaEQ7RVRwR0Q7SVMyRkUsNEJIcEsrQztRR29LL0Msd0JIcEsrQztZR29LL0Msb0JIcEsrQztJR3FLL0MscUJIcksrQyxFR3NLaEQ7RVQzRUQ7SU90REosdUJEckNxRCxFRzZLaEQ7RVRwR0Q7SVMyRkUsc0JIcEsrQztRR29LL0Msa0JIcEsrQztZR29LL0MsY0hwSytDO0lHcUsvQyxlSHJLK0MsRUdzS2hEO0VUM0VEO0lPdERKLHVCRHJDcUQsRUc2S2hEO0VUcEdEO0lTMkZFLDRCSHBLK0M7UUdvSy9DLHdCSHBLK0M7WUdvSy9DLG9CSHBLK0M7SUdxSy9DLHFCSHJLK0MsRUdzS2hEO0VUM0VEO0lPdERKLGlCRHJDcUQsRUc2S2hEO0VUcEdEO0lTMkZFLDRCSHBLK0M7UUdvSy9DLHdCSHBLK0M7WUdvSy9DLG9CSHBLK0M7SUdxSy9DLHFCSHJLK0MsRUdzS2hEO0VUM0VEO0lPdERKLHVCRHJDcUQsRUc2S2hEO0VUcEdEO0lTMkZFLHVCSHBLK0M7UUdvSy9DLG1CSHBLK0M7WUdvSy9DLGVIcEsrQztJR3FLL0MsZ0JIcksrQyxFR3NLaEQ7RVQzRUQ7SU90REosdUJEckNxRCxFRzZLaEQ7RUFLRDtJQTFHSix3QkFBZTtRQUFmLG9CQUFlO1lBQWYsZ0JBQWUsRUE0R1Y7SVRsRkQ7TVNyQkYsdUJBRnNCO1VBRXRCLG1CQUZzQjtjQUV0QixlQUZzQjtNQUd0QixnQkFIc0IsRUFJdkI7RUFtR0c7SUExR0osd0JBQWU7UUFBZixvQkFBZTtZQUFmLGdCQUFlLEVBNEdWO0lUbEZEO01TckJGLHNCQUZzQjtVQUV0QixrQkFGc0I7Y0FFdEIsY0FGc0I7TUFHdEIsZUFIc0IsRUFJdkI7RUFtR0c7SUExR0osd0JBQWU7UUFBZixvQkFBZTtZQUFmLGdCQUFlLEVBNEdWO0lUbEZEO01TckJGLDRCQUZzQjtVQUV0Qix3QkFGc0I7Y0FFdEIsb0JBRnNCO01BR3RCLHFCQUhzQixFQUl2QjtFQW1HRztJQTFHSix3QkFBZTtRQUFmLG9CQUFlO1lBQWYsZ0JBQWUsRUE0R1Y7SVRsRkQ7TVNyQkYsc0JBRnNCO1VBRXRCLGtCQUZzQjtjQUV0QixjQUZzQjtNQUd0QixlQUhzQixFQUl2QjtFQW1HRztJQTFHSix3QkFBZTtRQUFmLG9CQUFlO1lBQWYsZ0JBQWUsRUE0R1Y7SVRsRkQ7TVNyQkYsc0JBRnNCO1VBRXRCLGtCQUZzQjtjQUV0QixjQUZzQjtNQUd0QixlQUhzQixFQUl2QjtFQW1HRztJQTFHSix3QkFBZTtRQUFmLG9CQUFlO1lBQWYsZ0JBQWUsRUE0R1Y7SVRsRkQ7TVNyQkYsNEJBRnNCO1VBRXRCLHdCQUZzQjtjQUV0QixvQkFGc0I7TUFHdEIscUJBSHNCLEVBSXZCO0VBbUdHO0lBMUdKLHdCQUFlO1FBQWYsb0JBQWU7WUFBZixnQkFBZSxFQTRHVjtJVGxGRDtNU3JCRiw0QkFGc0I7VUFFdEIsd0JBRnNCO2NBRXRCLG9CQUZzQjtNQUd0QixxQkFIc0IsRUFJdkI7RUFtR0c7SUExR0osd0JBQWU7UUFBZixvQkFBZTtZQUFmLGdCQUFlLEVBNEdWO0lUbEZEO01TckJGLHdCQUZzQjtVQUV0QixvQkFGc0I7Y0FFdEIsZ0JBRnNCO01BR3RCLGlCQUhzQixFQUl2QixFQUFBOztBTDBERztFS2lERTtJQUNFLHNCQTVKTTtRQTRKTixrQkE1Sk07WUE0Sk4sY0E1Sk0sRUE2SlAsRUFBQTs7QUFLRDtFQUVJLHVCQUEyQjtNQUEzQixtQkFBMkI7VUFBM0IsZUFBMkIsRUFLNUI7RUwvREw7SUt3REU7TUFLTSxzQkF2S0U7VUF1S0Ysa0JBdktFO2NBdUtGLGNBdktFLEVBeUtMLEVBQUE7O0FML0RMO0VKakNGO0lHL0dBLGlCRHVFUztJQ3RFVCxnQkRzRVMsRU8rSW1DO0VUekY1QztJRzdIQSx5QkFGcUM7SUFHckMsd0JBSHFDLEVNNE5nQixFQUFBOztBTHJFbkQ7RUpyRUE7SVMyRkUsMkJIcEsrQztRR29LL0MsdUJIcEsrQztZR29LL0MsbUJIcEsrQztJR3FLL0Msb0JIcksrQyxFR3NLaEQ7RVQzRUQ7SU90REosZ0JEeENnQyxFR2dMM0I7RVRwR0Q7SVMyRkUsNEJIcEsrQztRR29LL0Msd0JIcEsrQztZR29LL0Msb0JIcEsrQztJR3FLL0MscUJIcksrQyxFR3NLaEQ7RVQzRUQ7SU90REosc0JEckNxRCxFRzZLaEQ7RVRwR0Q7SVMyRkUsc0JIcEsrQztRR29LL0Msa0JIcEsrQztZR29LL0MsY0hwSytDO0lHcUsvQyxlSHJLK0MsRUdzS2hEO0VUM0VEO0lPdERKLHVCRHJDcUQsRUc2S2hEO0VUcEdEO0lTMkZFLDRCSHBLK0M7UUdvSy9DLHdCSHBLK0M7WUdvSy9DLG9CSHBLK0M7SUdxSy9DLHFCSHJLK0MsRUdzS2hEO0VUM0VEO0lPdERKLGlCRHJDcUQsRUc2S2hEO0VUcEdEO0lTMkZFLDRCSHBLK0M7UUdvSy9DLHdCSHBLK0M7WUdvSy9DLG9CSHBLK0M7SUdxSy9DLHFCSHJLK0MsRUdzS2hEO0VUM0VEO0lPdERKLHVCRHJDcUQsRUc2S2hEO0VUcEdEO0lTMkZFLHNCSHBLK0M7UUdvSy9DLGtCSHBLK0M7WUdvSy9DLGNIcEsrQztJR3FLL0MsZUhySytDLEVHc0toRDtFVDNFRDtJT3RESix1QkRyQ3FELEVHNktoRDtFVHBHRDtJUzJGRSw0QkhwSytDO1FHb0svQyx3QkhwSytDO1lHb0svQyxvQkhwSytDO0lHcUsvQyxxQkhySytDLEVHc0toRDtFVDNFRDtJT3RESixpQkRyQ3FELEVHNktoRDtFVHBHRDtJUzJGRSw0QkhwSytDO1FHb0svQyx3QkhwSytDO1lHb0svQyxvQkhwSytDO0lHcUsvQyxxQkhySytDLEVHc0toRDtFVDNFRDtJT3RESix1QkRyQ3FELEVHNktoRDtFVHBHRDtJUzJGRSxzQkhwSytDO1FHb0svQyxrQkhwSytDO1lHb0svQyxjSHBLK0M7SUdxSy9DLGVIcksrQyxFR3NLaEQ7RVQzRUQ7SU90REosdUJEckNxRCxFRzZLaEQ7RVRwR0Q7SVMyRkUsNEJIcEsrQztRR29LL0Msd0JIcEsrQztZR29LL0Msb0JIcEsrQztJR3FLL0MscUJIcksrQyxFR3NLaEQ7RVQzRUQ7SU90REosaUJEckNxRCxFRzZLaEQ7RVRwR0Q7SVMyRkUsNEJIcEsrQztRR29LL0Msd0JIcEsrQztZR29LL0Msb0JIcEsrQztJR3FLL0MscUJIcksrQyxFR3NLaEQ7RVQzRUQ7SU90REosdUJEckNxRCxFRzZLaEQ7RVRwR0Q7SVMyRkUsdUJIcEsrQztRR29LL0MsbUJIcEsrQztZR29LL0MsZUhwSytDO0lHcUsvQyxnQkhySytDLEVHc0toRDtFVDNFRDtJT3RESix1QkRyQ3FELEVHNktoRDtFQUtEO0lBMUdKLHdCQUFlO1FBQWYsb0JBQWU7WUFBZixnQkFBZSxFQTRHVjtJVGxGRDtNU3JCRix1QkFGc0I7VUFFdEIsbUJBRnNCO2NBRXRCLGVBRnNCO01BR3RCLGdCQUhzQixFQUl2QjtFQW1HRztJQTFHSix3QkFBZTtRQUFmLG9CQUFlO1lBQWYsZ0JBQWUsRUE0R1Y7SVRsRkQ7TVNyQkYsc0JBRnNCO1VBRXRCLGtCQUZzQjtjQUV0QixjQUZzQjtNQUd0QixlQUhzQixFQUl2QjtFQW1HRztJQTFHSix3QkFBZTtRQUFmLG9CQUFlO1lBQWYsZ0JBQWUsRUE0R1Y7SVRsRkQ7TVNyQkYsNEJBRnNCO1VBRXRCLHdCQUZzQjtjQUV0QixvQkFGc0I7TUFHdEIscUJBSHNCLEVBSXZCO0VBbUdHO0lBMUdKLHdCQUFlO1FBQWYsb0JBQWU7WUFBZixnQkFBZSxFQTRHVjtJVGxGRDtNU3JCRixzQkFGc0I7VUFFdEIsa0JBRnNCO2NBRXRCLGNBRnNCO01BR3RCLGVBSHNCLEVBSXZCO0VBbUdHO0lBMUdKLHdCQUFlO1FBQWYsb0JBQWU7WUFBZixnQkFBZSxFQTRHVjtJVGxGRDtNU3JCRixzQkFGc0I7VUFFdEIsa0JBRnNCO2NBRXRCLGNBRnNCO01BR3RCLGVBSHNCLEVBSXZCO0VBbUdHO0lBMUdKLHdCQUFlO1FBQWYsb0JBQWU7WUFBZixnQkFBZSxFQTRHVjtJVGxGRDtNU3JCRiw0QkFGc0I7VUFFdEIsd0JBRnNCO2NBRXRCLG9CQUZzQjtNQUd0QixxQkFIc0IsRUFJdkI7RUFtR0c7SUExR0osd0JBQWU7UUFBZixvQkFBZTtZQUFmLGdCQUFlLEVBNEdWO0lUbEZEO01TckJGLDRCQUZzQjtVQUV0Qix3QkFGc0I7Y0FFdEIsb0JBRnNCO01BR3RCLHFCQUhzQixFQUl2QjtFQW1HRztJQTFHSix3QkFBZTtRQUFmLG9CQUFlO1lBQWYsZ0JBQWUsRUE0R1Y7SVRsRkQ7TVNyQkYsd0JBRnNCO1VBRXRCLG9CQUZzQjtjQUV0QixnQkFGc0I7TUFHdEIsaUJBSHNCLEVBSXZCLEVBQUE7O0FMK0RHO0VLNENFO0lBQ0Usc0JBNUpNO1FBNEpOLGtCQTVKTTtZQTRKTixjQTVKTSxFQTZKUCxFQUFBOztBQUtEO0VBRUksdUJBQTJCO01BQTNCLG1CQUEyQjtVQUEzQixlQUEyQixFQUs1QjtFTDFETDtJS21ERTtNQUtNLHNCQXZLRTtVQXVLRixrQkF2S0U7Y0F1S0YsY0F2S0UsRUF5S0wsRUFBQTs7QUwxREw7RUp0Q0Y7SUcvR0EsaUJEdUVTO0lDdEVULGdCRHNFUyxFTytJbUM7RVR6RjVDO0lHN0hBLHlCQUZxQztJQUdyQyx3QkFIcUMsRU00TmdCLEVBQUE7O0FMckVuRDtFSnJFQTtJUzJGRSwyQkhwSytDO1FHb0svQyx1QkhwSytDO1lHb0svQyxtQkhwSytDO0lHcUsvQyxvQkhySytDLEVHc0toRDtFVDNFRDtJT3RESixnQkR4Q2dDLEVHZ0wzQjtFVHBHRDtJUzJGRSw0QkhwSytDO1FHb0svQyx3QkhwSytDO1lHb0svQyxvQkhwSytDO0lHcUsvQyxxQkhySytDLEVHc0toRDtFVDNFRDtJT3RESixzQkRyQ3FELEVHNktoRDtFVHBHRDtJUzJGRSxzQkhwSytDO1FHb0svQyxrQkhwSytDO1lHb0svQyxjSHBLK0M7SUdxSy9DLGVIcksrQyxFR3NLaEQ7RVQzRUQ7SU90REosdUJEckNxRCxFRzZLaEQ7RVRwR0Q7SVMyRkUsNEJIcEsrQztRR29LL0Msd0JIcEsrQztZR29LL0Msb0JIcEsrQztJR3FLL0MscUJIcksrQyxFR3NLaEQ7RVQzRUQ7SU90REosaUJEckNxRCxFRzZLaEQ7RVRwR0Q7SVMyRkUsNEJIcEsrQztRR29LL0Msd0JIcEsrQztZR29LL0Msb0JIcEsrQztJR3FLL0MscUJIcksrQyxFR3NLaEQ7RVQzRUQ7SU90REosdUJEckNxRCxFRzZLaEQ7RVRwR0Q7SVMyRkUsc0JIcEsrQztRR29LL0Msa0JIcEsrQztZR29LL0MsY0hwSytDO0lHcUsvQyxlSHJLK0MsRUdzS2hEO0VUM0VEO0lPdERKLHVCRHJDcUQsRUc2S2hEO0VUcEdEO0lTMkZFLDRCSHBLK0M7UUdvSy9DLHdCSHBLK0M7WUdvSy9DLG9CSHBLK0M7SUdxSy9DLHFCSHJLK0MsRUdzS2hEO0VUM0VEO0lPdERKLGlCRHJDcUQsRUc2S2hEO0VUcEdEO0lTMkZFLDRCSHBLK0M7UUdvSy9DLHdCSHBLK0M7WUdvSy9DLG9CSHBLK0M7SUdxSy9DLHFCSHJLK0MsRUdzS2hEO0VUM0VEO0lPdERKLHVCRHJDcUQsRUc2S2hEO0VUcEdEO0lTMkZFLHNCSHBLK0M7UUdvSy9DLGtCSHBLK0M7WUdvSy9DLGNIcEsrQztJR3FLL0MsZUhySytDLEVHc0toRDtFVDNFRDtJT3RESix1QkRyQ3FELEVHNktoRDtFVHBHRDtJUzJGRSw0QkhwSytDO1FHb0svQyx3QkhwSytDO1lHb0svQyxvQkhwSytDO0lHcUsvQyxxQkhySytDLEVHc0toRDtFVDNFRDtJT3RESixpQkRyQ3FELEVHNktoRDtFVHBHRDtJUzJGRSw0QkhwSytDO1FHb0svQyx3QkhwSytDO1lHb0svQyxvQkhwSytDO0lHcUsvQyxxQkhySytDLEVHc0toRDtFVDNFRDtJT3RESix1QkRyQ3FELEVHNktoRDtFVHBHRDtJUzJGRSx1QkhwSytDO1FHb0svQyxtQkhwSytDO1lHb0svQyxlSHBLK0M7SUdxSy9DLGdCSHJLK0MsRUdzS2hEO0VUM0VEO0lPdERKLHVCRHJDcUQsRUc2S2hEO0VBS0Q7SUExR0osd0JBQWU7UUFBZixvQkFBZTtZQUFmLGdCQUFlLEVBNEdWO0lUbEZEO01TckJGLHVCQUZzQjtVQUV0QixtQkFGc0I7Y0FFdEIsZUFGc0I7TUFHdEIsZ0JBSHNCLEVBSXZCO0VBbUdHO0lBMUdKLHdCQUFlO1FBQWYsb0JBQWU7WUFBZixnQkFBZSxFQTRHVjtJVGxGRDtNU3JCRixzQkFGc0I7VUFFdEIsa0JBRnNCO2NBRXRCLGNBRnNCO01BR3RCLGVBSHNCLEVBSXZCO0VBbUdHO0lBMUdKLHdCQUFlO1FBQWYsb0JBQWU7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RztFTnVDQztJTXJESjtNRy9CRSxZQUFtQixFSGlDcEI7SUFFRDtNRy9CRSxZQUFtQixFSGlDcEI7SUFNQztNR25DQSxpQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDRCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDRCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDRCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDZCQURnSCxFSHNDL0c7SUFkSDtNRy9CRSxZQUFtQixFSGlDcEI7SUFFRDtNRy9CRSxZQUFtQixFSGlDcEI7SUFNQztNR25DQSxpQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDRCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDRCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDRCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDZCQURnSCxFSHNDL0csRUFBQTtFTnVDQztJTXJESjtNRy9CRSxZQUFtQixFSGlDcEI7SUFFRDtNRy9CRSxZQUFtQixFSGlDcEI7SUFNQztNR25DQSxpQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDRCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDRCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDRCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDZCQURnSCxFSHNDL0csRUFBQTtFTjRDQztJTTFESjtNRy9CRSxZQUFtQixFSGlDcEI7SUFFRDtNRy9CRSxZQUFtQixFSGlDcEI7SUFNQztNR25DQSxpQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDRCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDRCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDRCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDZCQURnSCxFSHNDL0csRUFBQTtFTjRDQztJTTFESjtNRy9CRSxZQUFtQixFSGlDcEI7SUFFRDtNRy9CRSxZQUFtQixFSGlDcEI7SUFNQztNR25DQSxpQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDRCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDRCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDRCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLDZCQURnSCxFSHNDL0csRUFBQTs7QUE4Q0g7RUM3SU0sd0JBQTZEO0VBQTdELHVCQUE2RCxFRGtKaEU7RU5aQztJTU9KO01DN0lNLHlCQUE2RDtNQUE3RCx3QkFBNkQsRURrSmhFLEVBQUE7O0FBSUQ7RUN0Skksd0JBQTZEO0VBQTdELHVCQUE2RCxFRHdKaEU7RU5sQkM7SU1nQkY7TUN0SkkseUJBQTZEO01BQTdELHdCQUE2RCxFRHdKaEUsRUFBQTs7QUFYSDtFQzdJTSx3QkFBNkQ7RUFBN0QsdUJBQTZELEVENkpoRTtFTnZCQztJTU9KO01DN0lNLHlCQUE2RDtNQUE3RCx3QkFBNkQsRUQ2SmhFLEVBQUE7O0FJL0pIO0VENERFLFlBRG9ELEVDekRyRDs7QUFGRDtFRDRERSxXQURvRCxFQ3pEckQ7O0FBRkQ7RUQ0REUsaUJBRG9ELEVDekRyRDs7QUFGRDtFRDRERSxXQURvRCxFQ3pEckQ7O0FBRkQ7RUQ0REUsV0FEb0QsRUN6RHJEOztBQUZEO0VENERFLGlCQURvRCxFQ3pEckQ7O0FBRkQ7RUQ0REUsaUJBRG9ELEVDekRyRDs7QUFGRDtFRDRERSxhQURvRCxFQ3pEckQ7O0FWc0lHO0VVeElKO0lENERFLFlBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLGlCQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxXQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxXQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxpQkFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsaUJBRG9ELEVDekRyRDtFQUZEO0lENERFLGFBRG9ELEVDekRyRCxFQUFBOztBVnNJRztFVXhJSjtJRDRERSxZQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxXQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxpQkFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsV0FEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsV0FEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsaUJBRG9ELEVDekRyRDtFQUZEO0lENERFLGlCQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxhQURvRCxFQ3pEckQsRUFBQTs7QVYySUc7RVU3SUo7SUQ0REUsWUFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsV0FEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsaUJBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLGlCQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxpQkFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsYUFEb0QsRUN6RHJELEVBQUE7O0FWMklHO0VVN0lKO0lENERFLFlBRG9ELEVDekRyRDtFQUZEO0lENERFLFdBRG9ELEVDekRyRDtFQUZEO0lENERFLGlCQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxXQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxXQURvRCxFQ3pEckQ7RUFGRDtJRDRERSxpQkFEb0QsRUN6RHJEO0VBRkQ7SUQ0REUsaUJBRG9ELEVDekRyRDtFQUZEO0lENERFLGFBRG9ELEVDekRyRCxFQUFBOztBQUZEO0VENERFLDRCQURnSCxFQ3pEakg7O0FBRkQ7RUQ0REUsMkJBRGdILEVDekRqSDs7QUFGRDtFRDRERSxpQ0FEZ0gsRUN6RGpIOztBQUZEO0VENERFLDJCQURnSCxFQ3pEakg7O0FBRkQ7RUQ0REUsMkJBRGdILEVDekRqSDs7QUFGRDtFRDRERSxpQ0FEZ0gsRUN6RGpIOztBQUZEO0VENERFLGlDQURnSCxFQ3pEakg7O0FBRkQ7RUQ0REUsNkJBRGdILEVDekRqSDs7QVZzSUc7RVV4SUo7SUQ0REUsNkJBRGdILEVDekRqSDtFQUZEO0lENERFLDRCQURnSCxFQ3pEakg7RUFGRDtJRDRERSxrQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSDtFQUZEO0lENERFLDRCQURnSCxFQ3pEakg7RUFGRDtJRDRERSxrQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsa0NBRGdILEVDekRqSDtFQUZEO0lENERFLDhCQURnSCxFQ3pEakg7RUFGRDtJRDRERSw2QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSDtFQUZEO0lENERFLGtDQURnSCxFQ3pEakg7RUFGRDtJRDRERSw0QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSDtFQUZEO0lENERFLGtDQURnSCxFQ3pEakg7RUFGRDtJRDRERSxrQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsOEJBRGdILEVDekRqSCxFQUFBOztBVnNJRztFVXhJSjtJRDRERSw2QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSDtFQUZEO0lENERFLGtDQURnSCxFQ3pEakg7RUFGRDtJRDRERSw0QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSDtFQUZEO0lENERFLGtDQURnSCxFQ3pEakg7RUFGRDtJRDRERSxrQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsOEJBRGdILEVDekRqSCxFQUFBOztBVjJJRztFVTdJSjtJRDRERSw2QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSDtFQUZEO0lENERFLGtDQURnSCxFQ3pEakg7RUFGRDtJRDRERSw0QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSDtFQUZEO0lENERFLGtDQURnSCxFQ3pEakg7RUFGRDtJRDRERSxrQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsOEJBRGdILEVDekRqSCxFQUFBOztBVjJJRztFVTdJSjtJRDRERSw2QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSDtFQUZEO0lENERFLGtDQURnSCxFQ3pEakg7RUFGRDtJRDRERSw0QkFEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsNEJBRGdILEVDekRqSDtFQUZEO0lENERFLGtDQURnSCxFQ3pEakg7RUFGRDtJRDRERSxrQ0FEZ0gsRUN6RGpIO0VBRkQ7SUQ0REUsOEJBRGdILEVDekRqSCxFQUFBOztBSnlNRztFS2hORSxnQkFBMEI7RUFBMUIsZUFBMEIsRUxrTjNCO0VLL01EO0lBRUksZ0JBQTBCO0lBQTFCLGVBQTBCLEVBRTdCO0VBb0JLO0lGc0NSLGdCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsWUFEb0QsRUVuQzNDO0VYZ0hQO0lXbEhNO01Gc0NSLGdCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsV0FEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixXQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFdBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7RVhnSFA7SVdsSE07TUZzQ1IsZ0JBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixXQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFdBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsV0FEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixZQURvRCxFRW5DM0MsRUFBQTtFWHFIUDtJV3ZITTtNRnNDUixnQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFdBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsV0FEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixXQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFlBRG9ELEVFbkMzQyxFQUFBO0VYcUhQO0lXdkhNO01Gc0NSLGdCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsV0FEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixXQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsaUJBRG9ELEVFbkMzQztJQUZEO01Gc0NSLFdBRG9ELEVFbkMzQztJQUZEO01Gc0NSLGlCQURvRCxFRW5DM0M7SUFGRDtNRnNDUixpQkFEb0QsRUVuQzNDO0lBRkQ7TUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7O0FMeUxQO0VLL0tFLGdCQUEwQjtFQUExQixlQUEwQixFTGlMM0I7RUs5S0Q7SUFFSSxpQkFBNEI7SUFBNUIsZ0JBQTRCLEVBRS9COztBWCtGRDtFTW1FQTtJS2hORSxnQkFBMEI7SUFBMUIsZUFBMEIsRUxrTjNCO0lLL01EO01BRUksZ0JBQTBCO01BQTFCLGVBQTBCLEVBRTdCLEVBQUE7O0FYc0lEO0VXM0hNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FYeUhQO0VXbEhNO0lGc0NSLGdCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7O0FYZ0hQO0VXbEhNO0lGc0NSLGdCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7O0FYcUhQO0VXdkhNO0lGc0NSLGdCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7O0FYcUhQO0VXdkhNO0lGc0NSLGdCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7O0FYZ0hQO0VNeUVBO0lLL0tFLGdCQUEwQjtJQUExQixlQUEwQixFTGlMM0I7SUs5S0Q7TUFFSSxpQkFBNEI7TUFBNUIsZ0JBQTRCLEVBRS9CLEVBQUE7O0FYK0ZEO0VNbUVBO0lLaE5FLGdCQUEwQjtJQUExQixlQUEwQixFTGtOM0I7SUsvTUQ7TUFFSSxnQkFBMEI7TUFBMUIsZUFBMEIsRUFFN0IsRUFBQTs7QVhzSUQ7RVczSE07SUYrQ1IsZ0JBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixZQURvRCxFRTVDM0MsRUFBQTs7QVh5SFA7RVczSE07SUYrQ1IsZ0JBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixZQURvRCxFRTVDM0MsRUFBQTs7QVh5SFA7RVdsSE07SUZzQ1IsZ0JBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QVhxSFA7RVd2SE07SUZzQ1IsZ0JBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QVhxSFA7RVd2SE07SUZzQ1IsZ0JBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixZQURvRCxFRW5DM0MsRUFBQTs7QVhnSFA7RU15RUE7SUsvS0UsZ0JBQTBCO0lBQTFCLGVBQTBCLEVMaUwzQjtJSzlLRDtNQUVJLGlCQUE0QjtNQUE1QixnQkFBNEIsRUFFL0IsRUFBQTs7QVhvR0Q7RU04REE7SUtoTkUsZ0JBQTBCO0lBQTFCLGVBQTBCLEVMa04zQjtJSy9NRDtNQUVJLGdCQUEwQjtNQUExQixlQUEwQixFQUU3QixFQUFBOztBWDJJRDtFV2hJTTtJRitDUixnQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFlBRG9ELEVFNUMzQyxFQUFBOztBWDhIUDtFV2hJTTtJRitDUixnQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFlBRG9ELEVFNUMzQyxFQUFBOztBWDhIUDtFV2hJTTtJRitDUixnQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFlBRG9ELEVFNUMzQyxFQUFBOztBWDhIUDtFV3ZITTtJRnNDUixnQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFlBRG9ELEVFbkMzQyxFQUFBOztBWHFIUDtFV3ZITTtJRnNDUixnQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFlBRG9ELEVFbkMzQyxFQUFBOztBWHFIUDtFTW9FQTtJSy9LRSxnQkFBMEI7SUFBMUIsZUFBMEIsRUxpTDNCO0lLOUtEO01BRUksaUJBQTRCO01BQTVCLGdCQUE0QixFQUUvQixFQUFBOztBWG9HRDtFTThEQTtJS2hORSxnQkFBMEI7SUFBMUIsZUFBMEIsRUxrTjNCO0lLL01EO01BRUksZ0JBQTBCO01BQTFCLGVBQTBCLEVBRTdCLEVBQUE7O0FYMklEO0VXaElNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FYOEhQO0VXaElNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FYOEhQO0VXaElNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FYOEhQO0VXaElNO0lGK0NSLGdCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsV0FEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixXQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsaUJBRG9ELEVFNUMzQztFQUZEO0lGK0NSLFdBRG9ELEVFNUMzQztFQUZEO0lGK0NSLGlCQURvRCxFRTVDM0M7RUFGRDtJRitDUixpQkFEb0QsRUU1QzNDO0VBRkQ7SUYrQ1IsWUFEb0QsRUU1QzNDLEVBQUE7O0FYOEhQO0VXdkhNO0lGc0NSLGdCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsV0FEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixXQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsaUJBRG9ELEVFbkMzQztFQUZEO0lGc0NSLFdBRG9ELEVFbkMzQztFQUZEO0lGc0NSLGlCQURvRCxFRW5DM0M7RUFGRDtJRnNDUixpQkFEb0QsRUVuQzNDO0VBRkQ7SUZzQ1IsWUFEb0QsRUVuQzNDLEVBQUE7O0FYcUhQO0VNb0VBO0lLL0tFLGdCQUEwQjtJQUExQixlQUEwQixFTGlMM0I7SUs5S0Q7TUFFSSxpQkFBNEI7TUFBNUIsZ0JBQTRCLEVBRS9CLEVBQUE7O0FmaUREO0VnQjNGRixnQkFBNkIsRU5rTzFCOztBQUVEO0VNcE9GLGlDQUE2QixFTnNPMUI7O0FWM0lEO0VnQjNGRixzQkFBNkIsRU5rTzFCOztBQUVEO0VNcE9GLHVDQUE2QixFTnNPMUI7O0FWM0lEO0VnQjNGRix1QkFBNkIsRU5rTzFCOztBQUVEO0VNcE9GLHdDQUE2QixFTnNPMUI7O0FWM0lEO0VnQjNGRixpQkFBNkIsRU5rTzFCOztBQUVEO0VNcE9GLGtDQUE2QixFTnNPMUI7O0FWM0lEO0VnQjNGRix1QkFBNkIsRU5rTzFCOztBQUVEO0VNcE9GLHdDQUE2QixFTnNPMUI7O0FWM0lEO0VnQjNGRix1QkFBNkIsRU5rTzFCOztBQUVEO0VNcE9GLHdDQUE2QixFTnNPMUI7O0FWM0lEO0VnQjNGRixpQkFBNkIsRU5rTzFCOztBQUVEO0VNcE9GLGtDQUE2QixFTnNPMUI7O0FWM0lEO0VnQjNGRix1QkFBNkIsRU5rTzFCOztBQUVEO0VNcE9GLHdDQUE2QixFTnNPMUI7O0FWM0lEO0VnQjNGRix1QkFBNkIsRU5rTzFCOztBQUVEO0VNcE9GLHdDQUE2QixFTnNPMUI7O0FWM0lEO0VnQjNGRixpQkFBNkIsRU5rTzFCOztBQUVEO0VNcE9GLGtDQUE2QixFTnNPMUI7O0FWM0lEO0VnQjNGRix1QkFBNkIsRU5rTzFCOztBQUVEO0VNcE9GLHdDQUE2QixFTnNPMUI7O0FWM0lEO0VnQjNGRix1QkFBNkIsRU5rTzFCOztBQUVEO0VNcE9GLHdDQUE2QixFTnNPMUI7O0FON0ZEO0VKOUNBO0lnQjNGRixnQkFBNkIsRU5rTzFCO0VBRUQ7SU1wT0Ysa0NBQTZCLEVOc08xQjtFVjNJRDtJZ0IzRkYsc0JBQTZCLEVOa08xQjtFQUVEO0lNcE9GLHdDQUE2QixFTnNPMUI7RVYzSUQ7SWdCM0ZGLHVCQUE2QixFTmtPMUI7RUFFRDtJTXBPRix5Q0FBNkIsRU5zTzFCO0VWM0lEO0lnQjNGRixpQkFBNkIsRU5rTzFCO0VBRUQ7SU1wT0YsbUNBQTZCLEVOc08xQjtFVjNJRDtJZ0IzRkYsdUJBQTZCLEVOa08xQjtFQUVEO0lNcE9GLHlDQUE2QixFTnNPMUI7RVYzSUQ7SWdCM0ZGLHVCQUE2QixFTmtPMUI7RUFFRDtJTXBPRix5Q0FBNkIsRU5zTzFCO0VWM0lEO0lnQjNGRixpQkFBNkIsRU5rTzFCO0VBRUQ7SU1wT0YsbUNBQTZCLEVOc08xQjtFVjNJRDtJZ0IzRkYsdUJBQTZCLEVOa08xQjtFQUVEO0lNcE9GLHlDQUE2QixFTnNPMUI7RVYzSUQ7SWdCM0ZGLHVCQUE2QixFTmtPMUI7RUFFRDtJTXBPRix5Q0FBNkIsRU5zTzFCO0VWM0lEO0lnQjNGRixpQkFBNkIsRU5rTzFCO0VBRUQ7SU1wT0YsbUNBQTZCLEVOc08xQjtFVjNJRDtJZ0IzRkYsdUJBQTZCLEVOa08xQjtFQUVEO0lNcE9GLHlDQUE2QixFTnNPMUI7RVYzSUQ7SWdCM0ZGLHVCQUE2QixFTmtPMUI7RUFFRDtJTXBPRix5Q0FBNkIsRU5zTzFCLEVBQUE7O0FON0ZEO0VKOUNBO0lnQjNGRixnQkFBNkIsRU5rTzFCO0VBRUQ7SU1wT0Ysa0NBQTZCLEVOc08xQjtFVjNJRDtJZ0IzRkYsc0JBQTZCLEVOa08xQjtFQUVEO0lNcE9GLHdDQUE2QixFTnNPMUI7RVYzSUQ7SWdCM0ZGLHVCQUE2QixFTmtPMUI7RUFFRDtJTXBPRix5Q0FBNkIsRU5zTzFCO0VWM0lEO0lnQjNGRixpQkFBNkIsRU5rTzFCO0VBRUQ7SU1wT0YsbUNBQTZCLEVOc08xQjtFVjNJRDtJZ0IzRkYsdUJBQTZCLEVOa08xQjtFQUVEO0lNcE9GLHlDQUE2QixFTnNPMUI7RVYzSUQ7SWdCM0ZGLHVCQUE2QixFTmtPMUI7RUFFRDtJTXBPRix5Q0FBNkIsRU5zTzFCO0VWM0lEO0lnQjNGRixpQkFBNkIsRU5rTzFCO0VBRUQ7SU1wT0YsbUNBQTZCLEVOc08xQjtFVjNJRDtJZ0IzRkYsdUJBQTZCLEVOa08xQjtFQUVEO0lNcE9GLHlDQUE2QixFTnNPMUI7RVYzSUQ7SWdCM0ZGLHVCQUE2QixFTmtPMUI7RUFFRDtJTXBPRix5Q0FBNkIsRU5zTzFCO0VWM0lEO0lnQjNGRixpQkFBNkIsRU5rTzFCO0VBRUQ7SU1wT0YsbUNBQTZCLEVOc08xQjtFVjNJRDtJZ0IzRkYsdUJBQTZCLEVOa08xQjtFQUVEO0lNcE9GLHlDQUE2QixFTnNPMUI7RVYzSUQ7SWdCM0ZGLHVCQUE2QixFTmtPMUI7RUFFRDtJTXBPRix5Q0FBNkIsRU5zTzFCLEVBQUE7O0FOeEZEO0VKbkRBO0lnQjNGRixnQkFBNkIsRU5rTzFCO0VBRUQ7SU1wT0Ysa0NBQTZCLEVOc08xQjtFVjNJRDtJZ0IzRkYsc0JBQTZCLEVOa08xQjtFQUVEO0lNcE9GLHdDQUE2QixFTnNPMUI7RVYzSUQ7SWdCM0ZGLHVCQUE2QixFTmtPMUI7RUFFRDtJTXBPRix5Q0FBNkIsRU5zTzFCO0VWM0lEO0lnQjNGRixpQkFBNkIsRU5rTzFCO0VBRUQ7SU1wT0YsbUNBQTZCLEVOc08xQjtFVjNJRDtJZ0IzRkYsdUJBQTZCLEVOa08xQjtFQUVEO0lNcE9GLHlDQUE2QixFTnNPMUI7RVYzSUQ7SWdCM0ZGLHVCQUE2QixFTmtPMUI7RUFFRDtJTXBPRix5Q0FBNkIsRU5zTzFCO0VWM0lEO0lnQjNGRixpQkFBNkIsRU5rTzFCO0VBRUQ7SU1wT0YsbUNBQTZCLEVOc08xQjtFVjNJRDtJZ0IzRkYsdUJBQTZCLEVOa08xQjtFQUVEO0lNcE9GLHlDQUE2QixFTnNPMUI7RVYzSUQ7SWdCM0ZGLHVCQUE2QixFTmtPMUI7RUFFRDtJTXBPRix5Q0FBNkIsRU5zTzFCO0VWM0lEO0lnQjNGRixpQkFBNkIsRU5rTzFCO0VBRUQ7SU1wT0YsbUNBQTZCLEVOc08xQjtFVjNJRDtJZ0IzRkYsdUJBQTZCLEVOa08xQjtFQUVEO0lNcE9GLHlDQUE2QixFTnNPMUI7RVYzSUQ7SWdCM0ZGLHVCQUE2QixFTmtPMUI7RUFFRDtJTXBPRix5Q0FBNkIsRU5zTzFCLEVBQUE7O0FOeEZEO0VKbkRBO0lnQjNGRixnQkFBNkIsRU5rTzFCO0VBRUQ7SU1wT0Ysa0NBQTZCLEVOc08xQjtFVjNJRDtJZ0IzRkYsc0JBQTZCLEVOa08xQjtFQUVEO0lNcE9GLHdDQUE2QixFTnNPMUI7RVYzSUQ7SWdCM0ZGLHVCQUE2QixFTmtPMUI7RUFFRDtJTXBPRix5Q0FBNkIsRU5zTzFCO0VWM0lEO0lnQjNGRixpQkFBNkIsRU5rTzFCO0VBRUQ7SU1wT0YsbUNBQTZCLEVOc08xQjtFVjNJRDtJZ0IzRkYsdUJBQTZCLEVOa08xQjtFQUVEO0lNcE9GLHlDQUE2QixFTnNPMUI7RVYzSUQ7SWdCM0ZGLHVCQUE2QixFTmtPMUI7RUFFRDtJTXBPRix5Q0FBNkIsRU5zTzFCO0VWM0lEO0lnQjNGRixpQkFBNkIsRU5rTzFCO0VBRUQ7SU1wT0YsbUNBQTZCLEVOc08xQjtFVjNJRDtJZ0IzRkYsdUJBQTZCLEVOa08xQjtFQUVEO0lNcE9GLHlDQUE2QixFTnNPMUI7RVYzSUQ7SWdCM0ZGLHVCQUE2QixFTmtPMUI7RUFFRDtJTXBPRix5Q0FBNkIsRU5zTzFCO0VWM0lEO0lnQjNGRixpQkFBNkIsRU5rTzFCO0VBRUQ7SU1wT0YsbUNBQTZCLEVOc08xQjtFVjNJRDtJZ0IzRkYsdUJBQTZCLEVOa08xQjtFQUVEO0lNcE9GLHlDQUE2QixFTnNPMUI7RVYzSUQ7SWdCM0ZGLHVCQUE2QixFTmtPMUI7RUFFRDtJTXBPRix5Q0FBNkIsRU5zTzFCLEVBQUE7O0FBekpTO0VFekVkLHNCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsaUNBSDZCO01BRzdCLDZCQUg2QjtVQUc3Qix5QkFINkIsRUZrVDVCO0VBOUREO0lHN01BLFlBQW1CO0lB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LHlCQUE2RCxFRHdJbEU7RU5GRztJTTdCSjtNQ3pHTSx1QkFBNkQ7TUFBN0QsMEJBQTZELEVEd0lsRSxFQUFBO0VBL0JEO0lHMURFLDZCQUQ0RTtJRnJDMUUscUJBQTZEO0lBQTdELHdCQUE2RCxFRHNHOUQ7RU51QkM7SU03Qko7TUcxREUsOEJBRDRFO01GckMxRSxzQkFBNkQ7TUFBN0QseUJBQTZELEVENkcxRCxFQUFBO0VBckNQO0lHL0JFLGFBQW1CLEVIaUNwQjtFQUVEO0lHL0JFLGFBQW1CLEVIaUNwQjtFQU1DO0lHbkNBLGlDQURnSCxFSHNDL0c7RUFGRDtJR25DQSxrQ0FEZ0gsRUhzQy9HO0VBRkQ7SUduQ0EsNEJBRGdILEVIc0MvRztFQUZEO0lHbkNBLGtDQURnSCxFSHNDL0c7RUFGRDtJR25DQSxrQ0FEZ0gsRUhzQy9HO0VBRkQ7SUduQ0EsNEJBRGdILEVIc0MvRztFQUZEO0lHbkNBLGtDQURnSCxFSHNDL0c7RUFGRDtJR25DQSxrQ0FEZ0gsRUhzQy9HO0VBRkQ7SUduQ0EsNEJBRGdILEVIc0MvRztFQUZEO0lHbkNBLGtDQURnSCxFSHNDL0c7RUFGRDtJR25DQSxrQ0FEZ0gsRUhzQy9HO0VBRkQ7SUduQ0EsNkJBRGdILEVIc0MvRztFTnVDQztJTXJESjtNRy9CRSxhQUFtQixFSGlDcEI7SUFFRDtNRy9CRSxhQUFtQixFSGlDcEI7SUFNQztNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLDZCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxtQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLDZCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxtQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLDZCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxtQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLDhCQURnSCxFSHNDL0c7SUFkSDtNRy9CRSxhQUFtQixFSGlDcEI7SUFFRDtNRy9CRSxhQUFtQixFSGlDcEI7SUFNQztNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLDZCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxtQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLDZCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxtQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLDZCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxtQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLDhCQURnSCxFSHNDL0csRUFBQTtFTnVDQztJTXJESjtNRy9CRSxhQUFtQixFSGlDcEI7SUFFRDtNRy9CRSxhQUFtQixFSGlDcEI7SUFNQztNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLDZCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxtQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLDZCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxtQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLDZCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxtQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLDhCQURnSCxFSHNDL0csRUFBQTtFTjRDQztJTTFESjtNRy9CRSxhQUFtQixFSGlDcEI7SUFFRDtNRy9CRSxhQUFtQixFSGlDcEI7SUFNQztNR25DQSxrQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLDZCQURnSCxFSHNDL0c7SUFGRDtNR25DQSxtQ0FEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLDZCQURnSCxFSHND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c0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw2QkFEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw4QkFEZ0gsRUhzQy9HO0lBZEg7TUcvQkUsYUFBbUIsRUhpQ3BCO0lBRUQ7TUcvQkUsYUFBbUIsRUhpQ3BCO0lBTUM7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw2QkFEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw2QkFEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw2QkFEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw4QkFEZ0gsRUhzQy9HLEVBQUE7RU51Q0M7SU1yREo7TUcvQkUsYUFBbUIsRUhpQ3BCO0lBRUQ7TUcvQkUsYUFBbUIsRUhpQ3BCO0lBTUM7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw2QkFEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw2QkFEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw2QkFEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw4QkFEZ0gsRUhzQy9HLEVBQUE7RU40Q0M7SU0xREo7TUcvQkUsYUFBbUIsRUhpQ3BCO0lBRUQ7TUcvQkUsYUFBbUIsRUhpQ3BCO0lBTUM7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw2QkFEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw2QkFEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw2QkFEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw4QkFEZ0gsRUhzQy9HLEVBQUE7RU40Q0M7SU0xREo7TUcvQkUsYUFBbUIsRUhpQ3BCO0lBRUQ7TUcvQkUsYUFBbUIsRUhpQ3BCO0lBTUM7TUduQ0Esa0NBRGdILEVIc0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw2QkFEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw2QkFEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw2QkFEZ0gsRUhzQy9HO0lBRkQ7TUduQ0EsbUNBRGdILEVIc0MvRztJQUZEO01HbkNBLG1DQURnSCxFSHNDL0c7SUFGRDtNR25DQSw4QkFEZ0gsRUhzQy9HLEVBQUE7O0FBbVREO0VPL1lJLDhCQUFtQyxFUGladEM7RU45UUM7SU00UUY7TU8vWUksK0JBQW1DLEVQaVp0QyxFQUFBO0VOOVFDO0lNNFFGO01PL1lJLCtCQUFtQyxFUGladEMsRUFBQTtFTnpRQztJTXVRRjtNTy9ZSSwrQkFBbUMsRVBpWnRDLEVBQUE7RU56UUM7SU11UUY7TU8vWUksK0JBQW1DLEVQaVp0QyxFQUFBOztBTjlRQztFTWdSQTtJT25aRSwrQkFBbUMsRVBxWnBDLEVBQUE7O0FObFJEO0VNZ1JBO0lPblpFLCtCQUFtQyxFUHFacEMsRUFBQTs7QU43UUQ7RU0yUUE7SU9uWkUsK0JBQW1DLEVQcVpwQyxFQUFBOztBTjdRRDtFTTJRQTtJT25aRSwrQkFBbUMsRVBxWnBDLEVBQUE7O0FRekxMOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBbUJFLFVBQVM7RUFDVCxXQUFVLEVBQ1g7O0FBR0Q7RUFDRSxvQnBCN0cwQjtFb0IrRzFCLG1CQUFrQjtFQUNsQixpQnBCakhzQjtFb0JrSHRCLG1DcEJoSHlDLEVvQmlIMUM7O0FBR0Q7O0VBRUUsbUJBQWtCO0VBQ2xCLHFCQUFvQixFQUNyQjs7QUFHRDs7RUFFRSxpQnBCck1vQjtFb0JzTXBCLHFCQUFvQixFQUNyQjs7QXRCbk5EO0VzQnVORSxlcEJ2SWlCO0VvQndJakIscUJBQW9CLEVBQ3JCOztBQUdEOzs7Ozs7RUFNRSw2Q3BCNU44QztFb0I2TjlDLG1CcEIzS3NCO0VvQjRLdEIsaUJwQnpOc0I7RW9CME50QixlcEIzS2tCO0VvQjRLbEIsbUNwQnZKc0MsRW9CNkp2QztFQWhCRDs7Ozs7O0lBYUksZUFBYztJQUNkLGVwQmpQZSxFb0JrUGhCOztBQVFHO0VBSUksa0JoQnZQNkM7RWdCbVE3QyxpQnBCeE1XO0VvQmdOWCxjQUFhO0VBT2Isc0JwQnROaUIsRW9Cd05wQjs7QUFqQ0Q7RUFJSSxtQmhCdlA2QztFZ0JtUTdDLGlCcEJ4TVc7RW9CZ05YLGNBQWE7RUFPYixzQnBCdE5pQixFb0J3TnBCOztBQWpDRDtFQUlJLHFCaEJ2UDZDO0VnQm1RN0MsaUJwQnhNVztFb0JnTlgsY0FBYTtFQU9iLHNCcEJ0TmlCLEVvQndOcEI7O0FBakNEO0VBSUksb0JoQnZQNkM7RWdCbVE3QyxpQnBCeE1XO0VvQmdOWCxjQUFhO0VBT2Isc0JwQnROaUIsRW9Cd05wQjs7QUFqQ0Q7RUFJSSxxQmhCdlA2QztFZ0JtUTdDLGlCcEJ4TVc7RW9CZ05YLGNBQWE7RUFPYixzQnBCdE5pQixFb0J3TnBCOztBQWpDRDtFQUlJLGdCaEJ2UDZDO0VnQm1RN0MsaUJwQnhNVztFb0JnTlgsY0FBYTtFQU9iLHNCcEJ0TmlCLEVvQndOcEI7O0FkdE1IO0VjcUtFO0lBSUksZ0JoQnZQNkMsRWdCb1JoRDtFQWpDRDtJQUlJLGtCaEJ2UDZDLEVnQm9SaEQ7RUFqQ0Q7SUFJSSxxQmhCdlA2QyxFZ0JvUmhEO0VBakNEO0lBSUkscUJoQnZQNkMsRWdCb1JoRDtFQWpDRDtJQUlJLG1CaEJ2UDZDLEVnQm9SaEQ7RUFqQ0Q7SUFJSSxnQmhCdlA2QyxFZ0JvUmhELEVBQUE7O0F0QnBUUDtFc0IyVEUscUJBQW9CO0VBQ3BCLGVwQi9SWTtFb0JnU1osc0JwQmhNeUI7RW9Ca016QixnQkFBZSxFQWFoQjtFQWxCRDtJQVNJLGVwQnZNMkQsRW9CMk01RDtFQWJIO0lBZ0JJLFVBQVMsRUFDVjs7QXRCOVZIO0VzQm1XRSxZQUFXO0VBRVgsa0JoQmxUcUQ7RWdCbVRyRCxVQUFTO0VBQ1QscUJwQm5OeUI7RW9CcU56QixjQUFhO0VBQ2IsZ0JBQWU7RUFDZixpQ3BCL1RpQjtFb0JnVWpCLGVBQWMsRUFDZjs7QUFHRDs7O0VBR0Usb0JwQjdPMEI7RW9COE8xQiw2QnBCNU55QjtFb0I2TnpCLGlCcEJoUHNCLEVvQmlQdkI7O0FBR0Q7RUFDRSxtQkFBa0IsRUFDbkI7O0FBR0Q7RUFDRSxxQnBCdE9zQjtFb0J1T3RCLHNCcEJ6T2tCLEVvQjBPbkI7O0FBR0Q7RUFDRSxxQnBCNU9zQixFb0I2T3ZCOztBQUdEO0VBRUkscUJwQmpQMkI7RW9Ca1AzQixpQkFBZ0IsRUFDakI7O0FBSUg7RUFDRSxvQnBCdlB5QixFb0I2UDFCO0VBUEQ7SUFJSSxzQnBCeFA4QjtJb0J5UDlCLGlCcEJ2VmtCLEVvQndWbkI7O0FBSUg7RUFDRSxpQnBCdFIwQjtFb0J1UjFCLHVDaEIxV3FEO0VnQjJXckQsK0JwQmxYaUIsRW9Cd1hsQjtFQVREO0lBTUksaUJwQjVSb0I7SW9CNlJwQixlcEJyWGEsRW9Cc1hkOztBQUlIO0VBQ0UsZUFBYztFQUNkLHFCaEJ0WHFEO0VnQnVYckQsZXBCN1hlLEVvQmtZaEI7RUFSRDtJQU1JLGNwQjFRNkIsRUFBQTs7QW9CK1FqQztFQUNFLGtDcEJyWVc7RW9C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Q2hCLG9CQXhDZ0I7RUR3RmQsOEJBQXFCO01BQXJCLDJCQUFxQjtVQUFyQixzQkFBcUIsRUFDdEI7O0FBS0c7RUNoQ0osaUJEK0JnQjtNQy9CaEIsa0JEK0JnQjtVQy9CaEIsU0QrQmdCLEVBR1g7O0FBRkQ7RUNoQ0osaUJEK0JnQjtNQy9CaEIsa0JEK0JnQjtVQy9CaEIsU0QrQmdCLEVBR1g7O0FBRkQ7RUNoQ0osaUJEK0JnQjtNQy9CaEIsa0JEK0JnQjtVQy9CaEIsU0QrQmdCLEVBR1g7O0FBRkQ7RUNoQ0osaUJEK0JnQjtNQy9CaEIsa0JEK0JnQjtVQy9CaEIsU0QrQmdCLEVBR1g7O0FBRkQ7RUNoQ0osaUJEK0JnQjtNQy9CaEIsa0JEK0JnQjtVQy9CaEIsU0QrQmdCLEVBR1g7O0FBRkQ7RUNoQ0osaUJEK0JnQjtNQy9CaEIsa0JEK0JnQjtVQy9CaEIsU0QrQmdCLEVBR1g7O0E1QnNERDtFNEJ4REE7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYLEVBQUE7O0E1QnNERDtFNEJ4REE7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYLEVBQUE7O0E1QjJERDtFNEI3REE7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYLEVBQUE7O0E1QjJERDtFNEI3REE7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYO0VBRkQ7SUNoQ0osaUJEK0JnQjtRQy9CaEIsa0JEK0JnQjtZQy9CaEIsU0QrQmdCLEVBR1g7RUFGRDtJQ2hDSixpQkQrQmdCO1FDL0JoQixrQkQrQmdCO1lDL0JoQixTRCtCZ0IsRUFHWDtFQUZEO0lDaENKLGlCRCtCZ0I7UUMvQmhCLGtCRCtCZ0I7WUMvQmhCLFNEK0JnQixFQUdYLEVBQUE7O0FBL0ZMO0VDWUEsc0JBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWEsRURWWjs7QUFFRDtFQUNFLHVCQUFjO01BQWQsbUJBQWM7VUFBZCxlQUFjLEVBQ2Y7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QUFnQjtRQUNoQixvQkFBbUIsRUFDcEI7TUExQkw7UUE2Qk0sWUFBVztRQUNYLG1CQUFrQjtRQUNsQixvQkFBbUIsRUFDcEI7TUFoQ0w7UUFtQ00sb0JBQW1CO1FBQ25CLGFBQVksRUFDYjtNQXJDTDtRQXdDTSxjQUFhO1FBQ2IsY0FBYTtRQUNiLGVBQWMsRUFDZixFQUFBOztBQUlMO0VBRUksb0JBQW1CO0VBQ25CLGdCQUFlO0VBQ2Ysa0JBQWlCO0VBQ2pCLHNCQUFxQixFQVd0QjtFQWhCSDtJQVFNLG9CQUFtQjtJQUNuQixlQUFjLEVBQ2Y7RUFWTDtJQWFNLG9CQUFtQjtJQUNuQixlQUFjLEVBQ2YiLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjUuMVxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDsgfVxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgfVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIG1hcmdpbjogMDsgfVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IH1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7IH1cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07IH1cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7IH1cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIGZvbnQ6IGluaGVyaXQ7IH1cblxuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZtZWRpdW09NDBlbSZsYXJnZT02NGVtJnhsYXJnZT03NWVtJnh4bGFyZ2U9OTBlbVwiOyB9XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmb250LXNpemU6IDEwMCU7IH1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBmb250LWZhbWlseTogXCJ0cmFkZS1nb3RoaWMtbmV4dFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzU0NTQ1NDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYzsgfVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG5zZWxlY3Qge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4ubWFwX2NhbnZhcyBpbWcsXG4ubWFwX2NhbnZhcyBlbWJlZCxcbi5tYXBfY2FudmFzIG9iamVjdCxcbi5tcWEtZGlzcGxheSBpbWcsXG4ubXFhLWRpc3BsYXkgZW1iZWQsXG4ubXFhLWRpc3BsYXkgb2JqZWN0IHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7IH1cblxuYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogYXV0bzsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyB9XG5cbi5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4uaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5yb3cge1xuICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAucm93OjpiZWZvcmUsIC5yb3c6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAucm93OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW4sIC5yb3cuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLnJvdyAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5yb3cgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucm93IC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAucm93IC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAucm93IC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICAucm93IC5yb3cuY29sbGFwc2Uge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnJvdy5leHBhbmRlZCB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gICAgLnJvdy5leHBhbmRlZCAucm93IHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5yb3c6bm90KC5leHBhbmRlZCkgLnJvdyB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIC5yb3cuZ3V0dGVyLXNtYWxsID4gLmNvbHVtbiwgLnJvdy5ndXR0ZXItc21hbGwgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAucm93Lmd1dHRlci1tZWRpdW0gPiAuY29sdW1uLCAucm93Lmd1dHRlci1tZWRpdW0gPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG5cbi5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmNvbHVtbiwgLmNvbHVtbnMsIC5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmNvbHVtbi5lbmQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAuZW5kLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4uY29sdW1uLnJvdy5yb3csIC5yb3cucm93LmNvbHVtbnMge1xuICBmbG9hdDogbm9uZTsgfVxuXG4ucm93IC5jb2x1bW4ucm93LnJvdywgLnJvdyAucm93LnJvdy5jb2x1bW5zIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5zbWFsbC0xIHtcbiAgd2lkdGg6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC1wdXNoLTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC1wdWxsLTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC04LjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogMCU7IH1cblxuLnNtYWxsLTIge1xuICB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1wdXNoLTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtcHVsbC0yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuXG4uc21hbGwtMyB7XG4gIHdpZHRoOiAyNSU7IH1cblxuLnNtYWxsLXB1c2gtMyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMjUlOyB9XG5cbi5zbWFsbC1wdWxsLTMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0yNSU7IH1cblxuLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtNCB7XG4gIHdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtNCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC1wdWxsLTQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0zMy4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuXG4uc21hbGwtNSB7XG4gIHdpZHRoOiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNDEuNjY2NjclOyB9XG5cbi5zbWFsbC1wdWxsLTUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC00MS42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtNiB7XG4gIHdpZHRoOiA1MCU7IH1cblxuLnNtYWxsLXB1c2gtNiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTAlOyB9XG5cbi5zbWFsbC1wdWxsLTYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC01MCU7IH1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4uc21hbGwtNyB7XG4gIHdpZHRoOiA1OC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtNyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTguMzMzMzMlOyB9XG5cbi5zbWFsbC1wdWxsLTcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC01OC4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuXG4uc21hbGwtOCB7XG4gIHdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNjYuNjY2NjclOyB9XG5cbi5zbWFsbC1wdWxsLTgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC02Ni42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtOSB7XG4gIHdpZHRoOiA3NSU7IH1cblxuLnNtYWxsLXB1c2gtOSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNzUlOyB9XG5cbi5zbWFsbC1wdWxsLTkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC03NSU7IH1cblxuLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4uc21hbGwtMTAge1xuICB3aWR0aDogODMuMzMzMzMlOyB9XG5cbi5zbWFsbC1wdXNoLTEwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtMTAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC04My4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuXG4uc21hbGwtMTEge1xuICB3aWR0aDogOTEuNjY2NjclOyB9XG5cbi5zbWFsbC1wdXNoLTExIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA5MS42NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtMTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC05MS42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLTEyIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cblxuLnNtYWxsLXVwLTEgPiAuY29sdW1uLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5zbWFsbC11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC0yID4gLmNvbHVtbiwgLnNtYWxsLXVwLTIgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNTAlOyB9XG4gIC5zbWFsbC11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC0zID4gLmNvbHVtbiwgLnNtYWxsLXVwLTMgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5zbWFsbC11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC00ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTQgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjUlOyB9XG4gIC5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC01ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTUgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjAlOyB9XG4gIC5zbWFsbC11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC02ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTYgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5zbWFsbC11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC03ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTcgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC5zbWFsbC11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC04ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTggPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTIuNSU7IH1cbiAgLnNtYWxsLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLnNtYWxsLWNvbGxhcHNlIC5yb3cge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5leHBhbmRlZC5yb3cgLnNtYWxsLWNvbGxhcHNlLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cblxuLnNtYWxsLWNlbnRlcmVkIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAuc21hbGwtY2VudGVyZWQsIC5zbWFsbC1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4uc21hbGwtdW5jZW50ZXJlZCxcbi5zbWFsbC1wdXNoLTAsXG4uc21hbGwtcHVsbC0wIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtdW5jZW50ZXJlZCwgLnNtYWxsLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgLnNtYWxsLXB1c2gtMCxcbiAgLnNtYWxsLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAuc21hbGwtcHVsbC0wLFxuICAuc21hbGwtcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11bmNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gIC5zbWFsbC1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgLnNtYWxsLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04LjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVzaC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlOyB9XG4gIC5tZWRpdW0tcHVsbC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI1JTsgfVxuICAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLXB1bGwtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlOyB9XG4gIC5tZWRpdW0tcHVsbC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTsgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLXB1c2gtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlOyB9XG4gIC5tZWRpdW0tcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTc1JTsgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdXNoLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTIgPiAuY29sdW1uLCAubWVkaXVtLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAgIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uLCAubWVkaXVtLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTQgPiAuY29sdW1uLCAubWVkaXVtLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAgIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTUgPiAuY29sdW1uLCAubWVkaXVtLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAgIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uLCAubWVkaXVtLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTcgPiAuY29sdW1uLCAubWVkaXVtLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAgIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDduKzEpLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTggPiAuY29sdW1uLCAubWVkaXVtLXVwLTggPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEyLjUlOyB9XG4gICAgLm1lZGl1bS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC04ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5tZWRpdW0tY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5leHBhbmRlZC5yb3cgLm1lZGl1bS1jb2xsYXBzZS5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG4gIC5tZWRpdW0tY2VudGVyZWQge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIC5tZWRpdW0tY2VudGVyZWQsIC5tZWRpdW0tY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5tZWRpdW0tdW5jZW50ZXJlZCxcbiAgLm1lZGl1bS1wdXNoLTAsXG4gIC5tZWRpdW0tcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5tZWRpdW0tdW5jZW50ZXJlZCwgLm1lZGl1bS11bmNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLm1lZGl1bS1wdXNoLTAsXG4gICAgLm1lZGl1bS1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAubWVkaXVtLXB1bGwtMCxcbiAgICAubWVkaXVtLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAubWVkaXVtLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC5tZWRpdW0tcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04LjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtcHVzaC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7IH1cbiAgLmxhcmdlLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yNSU7IH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00MS42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLmxhcmdlLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7IH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7IH1cbiAgLmxhcmdlLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7IH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04My4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MS42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLXVwLTEgPiAuY29sdW1uLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5sYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtMiA+IC5jb2x1bW4sIC5sYXJnZS11cC0yID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTMgPiAuY29sdW1uLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLmxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAgIC5sYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW4sIC5sYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC03ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAgIC5sYXJnZS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDduKzEpLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtOCA+IC5jb2x1bW4sIC5sYXJnZS11cC04ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMi41JTsgfVxuICAgIC5sYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLmxhcmdlLWNvbGxhcHNlIC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuZXhwYW5kZWQucm93IC5sYXJnZS1jb2xsYXBzZS5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfVxuICAubGFyZ2UtY2VudGVyZWQge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIC5sYXJnZS1jZW50ZXJlZCwgLmxhcmdlLWNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAubGFyZ2UtdW5jZW50ZXJlZCxcbiAgLmxhcmdlLXB1c2gtMCxcbiAgLmxhcmdlLXB1bGwtMCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubGFyZ2UtdW5jZW50ZXJlZCwgLmxhcmdlLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAubGFyZ2UtcHVzaC0wLFxuICAgIC5sYXJnZS1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAubGFyZ2UtcHVsbC0wLFxuICAgIC5sYXJnZS1wdWxsLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAubGFyZ2UtcHVzaC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLmxhcmdlLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04LjMzMzMzJTsgfVxuICAueGxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLnhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtcHVzaC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlOyB9XG4gIC54bGFyZ2UtcHVsbC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI1JTsgfVxuICAueGxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLXB1bGwtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDEuNjY2NjclOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlOyB9XG4gIC54bGFyZ2UtcHVsbC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTsgfVxuICAueGxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLXB1c2gtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjYuNjY2NjclOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54bGFyZ2UtcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlOyB9XG4gIC54bGFyZ2UtcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTc1JTsgfVxuICAueGxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1wdXNoLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAueGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAueGxhcmdlLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjclOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueGxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAueGxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTIgPiAuY29sdW1uLCAueGxhcmdlLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAgIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueGxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAueGxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTMgPiAuY29sdW1uLCAueGxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueGxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAueGxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTQgPiAuY29sdW1uLCAueGxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAgIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueGxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAueGxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTUgPiAuY29sdW1uLCAueGxhcmdlLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAgIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueGxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAueGxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTYgPiAuY29sdW1uLCAueGxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueGxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAueGxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTcgPiAuY29sdW1uLCAueGxhcmdlLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAgIC54bGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueGxhcmdlLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDduKzEpLCAueGxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54bGFyZ2UtdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTggPiAuY29sdW1uLCAueGxhcmdlLXVwLTggPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEyLjUlOyB9XG4gICAgLnhsYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54bGFyZ2UtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC54bGFyZ2UtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC54bGFyZ2UtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnhsYXJnZS11cC04ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC54bGFyZ2UtY29sbGFwc2UgPiAuY29sdW1uLCAueGxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC54bGFyZ2UtY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5leHBhbmRlZC5yb3cgLnhsYXJnZS1jb2xsYXBzZS5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAueGxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1uLCAueGxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG4gIC54bGFyZ2UtY2VudGVyZWQge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIC54bGFyZ2UtY2VudGVyZWQsIC54bGFyZ2UtY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC54bGFyZ2UtdW5jZW50ZXJlZCxcbiAgLnhsYXJnZS1wdXNoLTAsXG4gIC54bGFyZ2UtcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC54bGFyZ2UtdW5jZW50ZXJlZCwgLnhsYXJnZS11bmNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLnhsYXJnZS1wdXNoLTAsXG4gICAgLnhsYXJnZS1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAueGxhcmdlLXB1bGwtMCxcbiAgICAueGxhcmdlLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueGxhcmdlLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAueGxhcmdlLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC54bGFyZ2UtcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLnh4bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC54eGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnh4bGFyZ2UtcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlOyB9XG4gIC54eGxhcmdlLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yNSU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAueHhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54eGxhcmdlLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnh4bGFyZ2UtcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlOyB9XG4gIC54eGxhcmdlLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTU4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAueHhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54eGxhcmdlLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnh4bGFyZ2UtcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlOyB9XG4gIC54eGxhcmdlLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAueHhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTEuNjY2NjclOyB9XG4gIC54eGxhcmdlLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC54eGxhcmdlLXVwLTEgPiAuY29sdW1uLCAueHhsYXJnZS11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueHhsYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC54eGxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54eGxhcmdlLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54eGxhcmdlLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC54eGxhcmdlLXVwLTIgPiAuY29sdW1uLCAueHhsYXJnZS11cC0yID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgICAueHhsYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54eGxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueHhsYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLnh4bGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnh4bGFyZ2UtdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAueHhsYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAueHhsYXJnZS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueHhsYXJnZS11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueHhsYXJnZS11cC00ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlOyB9XG4gICAgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueHhsYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC54eGxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54eGxhcmdlLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54eGxhcmdlLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC54eGxhcmdlLXVwLTUgPiAuY29sdW1uLCAueHhsYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgICAueHhsYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54eGxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueHhsYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLnh4bGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnh4bGFyZ2UtdXAtNSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAueHhsYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAueHhsYXJnZS11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueHhsYXJnZS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueHhsYXJnZS11cC03ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gICAgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueHhsYXJnZS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC54eGxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54eGxhcmdlLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54eGxhcmdlLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC54eGxhcmdlLXVwLTggPiAuY29sdW1uLCAueHhsYXJnZS11cC04ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMi41JTsgfVxuICAgIC54eGxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC54eGxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAueHhsYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAueHhsYXJnZS11cC04ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueHhsYXJnZS11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueHhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC54eGxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC54eGxhcmdlLWNvbGxhcHNlIC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuZXhwYW5kZWQucm93IC54eGxhcmdlLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC54eGxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1uLCAueHhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfVxuICAueHhsYXJnZS1jZW50ZXJlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgLnh4bGFyZ2UtY2VudGVyZWQsIC54eGxhcmdlLWNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAueHhsYXJnZS11bmNlbnRlcmVkLFxuICAueHhsYXJnZS1wdXNoLTAsXG4gIC54eGxhcmdlLXB1bGwtMCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAueHhsYXJnZS11bmNlbnRlcmVkLCAueHhsYXJnZS11bmNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLnh4bGFyZ2UtcHVzaC0wLFxuICAgIC54eGxhcmdlLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC54eGxhcmdlLXB1bGwtMCxcbiAgICAueHhsYXJnZS1wdWxsLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnh4bGFyZ2UtdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC54eGxhcmdlLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC54eGxhcmdlLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5jb2x1bW4tYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gIC5jb2x1bW4tYmxvY2sgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb2x1bW4tYmxvY2sge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgICAgIC5jb2x1bW4tYmxvY2sgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4ucm93IHtcbiAgbWF4LXdpZHRoOiAxMDByZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cbiAgLnJvdyAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5yb3cgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucm93IC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAucm93IC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAucm93IC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICAucm93IC5yb3cuY29sbGFwc2Uge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnJvdy5leHBhbmRlZCB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gICAgLnJvdy5leHBhbmRlZCAucm93IHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5yb3c6bm90KC5leHBhbmRlZCkgLnJvdyB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIC5yb3cuY29sbGFwc2UgPiAuY29sdW1uLCAucm93LmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5yb3cuaXMtY29sbGFwc2UtY2hpbGQsXG4gIC5yb3cuY29sbGFwc2UgPiAuY29sdW1uID4gLnJvdyxcbiAgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW5zID4gLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgZmxleDogMSAxIDBweDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gIG1pbi13aWR0aDogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cblxuLmNvbHVtbi5yb3cucm93LCAucm93LnJvdy5jb2x1bW5zIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yb3cgLmNvbHVtbi5yb3cucm93LCAucm93IC5yb3cucm93LmNvbHVtbnMge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLnNtYWxsLTEge1xuICBmbGV4OiAwIDAgOC4zMzMzMyU7XG4gIG1heC13aWR0aDogOC4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAlOyB9XG5cbi5zbWFsbC0yIHtcbiAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC0zIHtcbiAgZmxleDogMCAwIDI1JTtcbiAgbWF4LXdpZHRoOiAyNSU7IH1cblxuLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtNCB7XG4gIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7IH1cblxuLnNtYWxsLTUge1xuICBmbGV4OiAwIDAgNDEuNjY2NjclO1xuICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC02IHtcbiAgZmxleDogMCAwIDUwJTtcbiAgbWF4LXdpZHRoOiA1MCU7IH1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4uc21hbGwtNyB7XG4gIGZsZXg6IDAgMCA1OC4zMzMzMyU7XG4gIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7IH1cblxuLnNtYWxsLTgge1xuICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICBtYXgtd2lkdGg6IDY2LjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG5cbi5zbWFsbC05IHtcbiAgZmxleDogMCAwIDc1JTtcbiAgbWF4LXdpZHRoOiA3NSU7IH1cblxuLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4uc21hbGwtMTAge1xuICBmbGV4OiAwIDAgODMuMzMzMzMlO1xuICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlOyB9XG5cbi5zbWFsbC0xMSB7XG4gIGZsZXg6IDAgMCA5MS42NjY2NyU7XG4gIG1heC13aWR0aDogOTEuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG5cbi5zbWFsbC0xMiB7XG4gIGZsZXg6IDAgMCAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cblxuLnNtYWxsLXVwLTEge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTEgPiAuY29sdW1uLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLnNtYWxsLXVwLTIge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTIgPiAuY29sdW1uLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG5cbi5zbWFsbC11cC0zIHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC0zID4gLmNvbHVtbiwgLnNtYWxsLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtdXAtNCB7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc21hbGwtdXAtNCA+IC5jb2x1bW4sIC5zbWFsbC11cC00ID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7IH1cblxuLnNtYWxsLXVwLTUge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTUgPiAuY29sdW1uLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlOyB9XG5cbi5zbWFsbC11cC02IHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC02ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtdXAtNyB7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc21hbGwtdXAtNyA+IC5jb2x1bW4sIC5zbWFsbC11cC03ID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAxNC4yODU3MSU7XG4gICAgbWF4LXdpZHRoOiAxNC4yODU3MSU7IH1cblxuLnNtYWxsLXVwLTgge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTggPiAuY29sdW1uLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMTIuNSU7XG4gICAgbWF4LXdpZHRoOiAxMi41JTsgfVxuXG4uc21hbGwtY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuXG4uc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5zbWFsbC11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAubWVkaXVtLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5tZWRpdW0tNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5tZWRpdW0tOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAubWVkaXVtLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLXVwLTEge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tdXAtMiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC0yID4gLmNvbHVtbiwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tdXAtMyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC0zID4gLmNvbHVtbiwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tdXAtNCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC00ID4gLmNvbHVtbiwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDI1JTtcbiAgICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tdXAtNSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbiwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDIwJTtcbiAgICAgIG1heC13aWR0aDogMjAlOyB9XG4gIC5tZWRpdW0tdXAtNiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC02ID4gLmNvbHVtbiwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtNyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC03ID4gLmNvbHVtbiwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE0LjI4NTcxJTtcbiAgICAgIG1heC13aWR0aDogMTQuMjg1NzElOyB9XG4gIC5tZWRpdW0tdXAtOCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC04ID4gLmNvbHVtbiwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEyLjUlO1xuICAgICAgbWF4LXdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLWV4cGFuZCB7XG4gICAgZmxleDogMSAxIDBweDsgfSB9XG5cbi5yb3cubWVkaXVtLXVuc3RhY2sgPiAuY29sdW1uLCAucm93Lm1lZGl1bS11bnN0YWNrID4gLmNvbHVtbnMge1xuICBmbGV4OiAwIDAgMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yb3cubWVkaXVtLXVuc3RhY2sgPiAuY29sdW1uLCAucm93Lm1lZGl1bS11bnN0YWNrID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmxhcmdlLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAubGFyZ2UtNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAubGFyZ2UtOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmxhcmdlLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtdXAtMSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTEgPiAuY29sdW1uLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS11cC0yIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtMiA+IC5jb2x1bW4sIC5sYXJnZS11cC0yID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5sYXJnZS11cC0zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW4sIC5sYXJnZS11cC0zID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS11cC00IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtNCA+IC5jb2x1bW4sIC5sYXJnZS11cC00ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDI1JTtcbiAgICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5sYXJnZS11cC01IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtNSA+IC5jb2x1bW4sIC5sYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDIwJTtcbiAgICAgIG1heC13aWR0aDogMjAlOyB9XG4gIC5sYXJnZS11cC02IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtNiA+IC5jb2x1bW4sIC5sYXJnZS11cC02ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS11cC03IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtNyA+IC5jb2x1bW4sIC5sYXJnZS11cC03ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE0LjI4NTcxJTtcbiAgICAgIG1heC13aWR0aDogMTQuMjg1NzElOyB9XG4gIC5sYXJnZS11cC04IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtOCA+IC5jb2x1bW4sIC5sYXJnZS11cC04ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEyLjUlO1xuICAgICAgbWF4LXdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtZXhwYW5kIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9IH1cblxuLnJvdy5sYXJnZS11bnN0YWNrID4gLmNvbHVtbiwgLnJvdy5sYXJnZS11bnN0YWNrID4gLmNvbHVtbnMge1xuICBmbGV4OiAwIDAgMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5yb3cubGFyZ2UtdW5zdGFjayA+IC5jb2x1bW4sIC5yb3cubGFyZ2UtdW5zdGFjayA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC54bGFyZ2UtMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLnhsYXJnZS01IHtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLnhsYXJnZS04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC54bGFyZ2UtMTEge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtdXAtMSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnhsYXJnZS11cC0xID4gLmNvbHVtbiwgLnhsYXJnZS11cC0xID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLnhsYXJnZS11cC0yIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTIgPiAuY29sdW1uLCAueGxhcmdlLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS11cC0zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTMgPiAuY29sdW1uLCAueGxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS11cC00IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTQgPiAuY29sdW1uLCAueGxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMjUlO1xuICAgICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS11cC01IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTUgPiAuY29sdW1uLCAueGxhcmdlLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMjAlO1xuICAgICAgbWF4LXdpZHRoOiAyMCU7IH1cbiAgLnhsYXJnZS11cC02IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTYgPiAuY29sdW1uLCAueGxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS11cC03IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTcgPiAuY29sdW1uLCAueGxhcmdlLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTQuMjg1NzElO1xuICAgICAgbWF4LXdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLnhsYXJnZS11cC04IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTggPiAuY29sdW1uLCAueGxhcmdlLXVwLTggPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTIuNSU7XG4gICAgICBtYXgtd2lkdGg6IDEyLjUlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1leHBhbmQge1xuICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG4ucm93LnhsYXJnZS11bnN0YWNrID4gLmNvbHVtbiwgLnJvdy54bGFyZ2UtdW5zdGFjayA+IC5jb2x1bW5zIHtcbiAgZmxleDogMCAwIDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5yb3cueGxhcmdlLXVuc3RhY2sgPiAuY29sdW1uLCAucm93LnhsYXJnZS11bnN0YWNrID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC54bGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLnhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAueHhsYXJnZS0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC54eGxhcmdlLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAueHhsYXJnZS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC54eGxhcmdlLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAueHhsYXJnZS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAueHhsYXJnZS0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtdXAtMSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAueHhsYXJnZS11cC0yIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC0yID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAueHhsYXJnZS11cC0zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC0zID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS11cC00IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC00ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAueHhsYXJnZS11cC01IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC01ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgICBtYXgtd2lkdGg6IDIwJTsgfVxuICAueHhsYXJnZS11cC02IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC02ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS11cC03IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC03ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNC4yODU3MSU7XG4gICAgICBtYXgtd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAueHhsYXJnZS11cC04IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC04ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMi41JTtcbiAgICAgIG1heC13aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1leHBhbmQge1xuICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG4ucm93Lnh4bGFyZ2UtdW5zdGFjayA+IC5jb2x1bW4sIC5yb3cueHhsYXJnZS11bnN0YWNrID4gLmNvbHVtbnMge1xuICBmbGV4OiAwIDAgMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnJvdy54eGxhcmdlLXVuc3RhY2sgPiAuY29sdW1uLCAucm93Lnh4bGFyZ2UtdW5zdGFjayA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbiwgLnh4bGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLnh4bGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC54eGxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cblxuLnNocmluayB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLmNvbHVtbi1ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgLmNvbHVtbi1ibG9jayA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbHVtbi1ibG9jayB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAgICAgLmNvbHVtbi1ibG9jayA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbi5ncmlkLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgbWFyZ2luOiAwIGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAuZ3JpZC1jb250YWluZXIuZmx1aWQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ncmlkLWNvbnRhaW5lci5mbHVpZCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAuZ3JpZC1jb250YWluZXIuZnVsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5ncmlkLXgge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG5cbi5jZWxsIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIG1pbi1oZWlnaHQ6IDBweDtcbiAgbWluLXdpZHRoOiAwcHg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5jZWxsLmF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgLmNlbGwuc2hyaW5rIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuXG4uZ3JpZC14ID4gLmF1dG8ge1xuICB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC14ID4gLnNocmluayB7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtc2hyaW5rLCAuZ3JpZC14ID4gLnNtYWxsLWZ1bGwsIC5ncmlkLXggPiAuc21hbGwtMSwgLmdyaWQteCA+IC5zbWFsbC0yLCAuZ3JpZC14ID4gLnNtYWxsLTMsIC5ncmlkLXggPiAuc21hbGwtNCwgLmdyaWQteCA+IC5zbWFsbC01LCAuZ3JpZC14ID4gLnNtYWxsLTYsIC5ncmlkLXggPiAuc21hbGwtNywgLmdyaWQteCA+IC5zbWFsbC04LCAuZ3JpZC14ID4gLnNtYWxsLTksIC5ncmlkLXggPiAuc21hbGwtMTAsIC5ncmlkLXggPiAuc21hbGwtMTEsIC5ncmlkLXggPiAuc21hbGwtMTIge1xuICBmbGV4LWJhc2lzOiBhdXRvOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXggPiAubWVkaXVtLXNocmluaywgLmdyaWQteCA+IC5tZWRpdW0tZnVsbCwgLmdyaWQteCA+IC5tZWRpdW0tMSwgLmdyaWQteCA+IC5tZWRpdW0tMiwgLmdyaWQteCA+IC5tZWRpdW0tMywgLmdyaWQteCA+IC5tZWRpdW0tNCwgLmdyaWQteCA+IC5tZWRpdW0tNSwgLmdyaWQteCA+IC5tZWRpdW0tNiwgLmdyaWQteCA+IC5tZWRpdW0tNywgLmdyaWQteCA+IC5tZWRpdW0tOCwgLmdyaWQteCA+IC5tZWRpdW0tOSwgLmdyaWQteCA+IC5tZWRpdW0tMTAsIC5ncmlkLXggPiAubWVkaXVtLTExLCAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLmxhcmdlLWZ1bGwsIC5ncmlkLXggPiAubGFyZ2UtMSwgLmdyaWQteCA+IC5sYXJnZS0yLCAuZ3JpZC14ID4gLmxhcmdlLTMsIC5ncmlkLXggPiAubGFyZ2UtNCwgLmdyaWQteCA+IC5sYXJnZS01LCAuZ3JpZC14ID4gLmxhcmdlLTYsIC5ncmlkLXggPiAubGFyZ2UtNywgLmdyaWQteCA+IC5sYXJnZS04LCAuZ3JpZC14ID4gLmxhcmdlLTksIC5ncmlkLXggPiAubGFyZ2UtMTAsIC5ncmlkLXggPiAubGFyZ2UtMTEsIC5ncmlkLXggPiAubGFyZ2UtMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5ncmlkLXggPiAueGxhcmdlLXNocmluaywgLmdyaWQteCA+IC54bGFyZ2UtZnVsbCwgLmdyaWQteCA+IC54bGFyZ2UtMSwgLmdyaWQteCA+IC54bGFyZ2UtMiwgLmdyaWQteCA+IC54bGFyZ2UtMywgLmdyaWQteCA+IC54bGFyZ2UtNCwgLmdyaWQteCA+IC54bGFyZ2UtNSwgLmdyaWQteCA+IC54bGFyZ2UtNiwgLmdyaWQteCA+IC54bGFyZ2UtNywgLmdyaWQteCA+IC54bGFyZ2UtOCwgLmdyaWQteCA+IC54bGFyZ2UtOSwgLmdyaWQteCA+IC54bGFyZ2UtMTAsIC5ncmlkLXggPiAueGxhcmdlLTExLCAuZ3JpZC14ID4gLnhsYXJnZS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmdyaWQteCA+IC54eGxhcmdlLXNocmluaywgLmdyaWQteCA+IC54eGxhcmdlLWZ1bGwsIC5ncmlkLXggPiAueHhsYXJnZS0xLCAuZ3JpZC14ID4gLnh4bGFyZ2UtMiwgLmdyaWQteCA+IC54eGxhcmdlLTMsIC5ncmlkLXggPiAueHhsYXJnZS00LCAuZ3JpZC14ID4gLnh4bGFyZ2UtNSwgLmdyaWQteCA+IC54eGxhcmdlLTYsIC5ncmlkLXggPiAueHhsYXJnZS03LCAuZ3JpZC14ID4gLnh4bGFyZ2UtOCwgLmdyaWQteCA+IC54eGxhcmdlLTksIC5ncmlkLXggPiAueHhsYXJnZS0xMCwgLmdyaWQteCA+IC54eGxhcmdlLTExLCAuZ3JpZC14ID4gLnh4bGFyZ2UtMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEsIC5ncmlkLXggPiAuc21hbGwtMiwgLmdyaWQteCA+IC5zbWFsbC0zLCAuZ3JpZC14ID4gLnNtYWxsLTQsIC5ncmlkLXggPiAuc21hbGwtNSwgLmdyaWQteCA+IC5zbWFsbC02LCAuZ3JpZC14ID4gLnNtYWxsLTcsIC5ncmlkLXggPiAuc21hbGwtOCwgLmdyaWQteCA+IC5zbWFsbC05LCAuZ3JpZC14ID4gLnNtYWxsLTEwLCAuZ3JpZC14ID4gLnNtYWxsLTExLCAuZ3JpZC14ID4gLnNtYWxsLTEyIHtcbiAgZmxleDogMCAwIGF1dG87IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xIHtcbiAgd2lkdGg6IDguMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMiB7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0zIHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTQge1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNSB7XG4gIHdpZHRoOiA0MS42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC02IHtcbiAgd2lkdGg6IDUwJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTcge1xuICB3aWR0aDogNTguMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtOCB7XG4gIHdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC05IHtcbiAgd2lkdGg6IDc1JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEwIHtcbiAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTExIHtcbiAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEyIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQteCA+IC5tZWRpdW0tYXV0byB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXggPiAubWVkaXVtLTEsIC5ncmlkLXggPiAubWVkaXVtLTIsIC5ncmlkLXggPiAubWVkaXVtLTMsIC5ncmlkLXggPiAubWVkaXVtLTQsIC5ncmlkLXggPiAubWVkaXVtLTUsIC5ncmlkLXggPiAubWVkaXVtLTYsIC5ncmlkLXggPiAubWVkaXVtLTcsIC5ncmlkLXggPiAubWVkaXVtLTgsIC5ncmlkLXggPiAubWVkaXVtLTksIC5ncmlkLXggPiAubWVkaXVtLTEwLCAuZ3JpZC14ID4gLm1lZGl1bS0xMSwgLmdyaWQteCA+IC5tZWRpdW0tMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC14ID4gLmxhcmdlLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXggPiAubGFyZ2UtMSwgLmdyaWQteCA+IC5sYXJnZS0yLCAuZ3JpZC14ID4gLmxhcmdlLTMsIC5ncmlkLXggPiAubGFyZ2UtNCwgLmdyaWQteCA+IC5sYXJnZS01LCAuZ3JpZC14ID4gLmxhcmdlLTYsIC5ncmlkLXggPiAubGFyZ2UtNywgLmdyaWQteCA+IC5sYXJnZS04LCAuZ3JpZC14ID4gLmxhcmdlLTksIC5ncmlkLXggPiAubGFyZ2UtMTAsIC5ncmlkLXggPiAubGFyZ2UtMTEsIC5ncmlkLXggPiAubGFyZ2UtMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmdyaWQteCA+IC54bGFyZ2UtYXV0byB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS1zaHJpbmssIC5ncmlkLXggPiAueGxhcmdlLTEsIC5ncmlkLXggPiAueGxhcmdlLTIsIC5ncmlkLXggPiAueGxhcmdlLTMsIC5ncmlkLXggPiAueGxhcmdlLTQsIC5ncmlkLXggPiAueGxhcmdlLTUsIC5ncmlkLXggPiAueGxhcmdlLTYsIC5ncmlkLXggPiAueGxhcmdlLTcsIC5ncmlkLXggPiAueGxhcmdlLTgsIC5ncmlkLXggPiAueGxhcmdlLTksIC5ncmlkLXggPiAueGxhcmdlLTEwLCAuZ3JpZC14ID4gLnhsYXJnZS0xMSwgLmdyaWQteCA+IC54bGFyZ2UtMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLXNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5ncmlkLXggPiAueHhsYXJnZS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS1zaHJpbmssIC5ncmlkLXggPiAueHhsYXJnZS0xLCAuZ3JpZC14ID4gLnh4bGFyZ2UtMiwgLmdyaWQteCA+IC54eGxhcmdlLTMsIC5ncmlkLXggPiAueHhsYXJnZS00LCAuZ3JpZC14ID4gLnh4bGFyZ2UtNSwgLmdyaWQteCA+IC54eGxhcmdlLTYsIC5ncmlkLXggPiAueHhsYXJnZS03LCAuZ3JpZC14ID4gLnh4bGFyZ2UtOCwgLmdyaWQteCA+IC54eGxhcmdlLTksIC5ncmlkLXggPiAueHhsYXJnZS0xMCwgLmdyaWQteCA+IC54eGxhcmdlLTExLCAuZ3JpZC14ID4gLnh4bGFyZ2UtMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC54eGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAueHhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLnh4bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teTpub3QoLmdyaWQteSkgPiAuY2VsbCB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teCB7XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXgge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5hdXRvIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2UtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2UtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2UtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cblxuLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cblxuLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cblxuLnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC11cC0yID4gLmNlbGwge1xuICB3aWR0aDogNTAlOyB9XG5cbi5zbWFsbC11cC0zID4gLmNlbGwge1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogMjUlOyB9XG5cbi5zbWFsbC11cC01ID4gLmNlbGwge1xuICB3aWR0aDogMjAlOyB9XG5cbi5zbWFsbC11cC02ID4gLmNlbGwge1xuICB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC11cC03ID4gLmNlbGwge1xuICB3aWR0aDogMTQuMjg1NzElOyB9XG5cbi5zbWFsbC11cC04ID4gLmNlbGwge1xuICB3aWR0aDogMTIuNSU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC5sYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAubGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAueGxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueGxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueGxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAueGxhcmdlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAueGxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEyLjUlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC54eGxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueHhsYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54eGxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAueHhsYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC54eGxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEyLjUlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDIwJSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS4yNXJlbSk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS44NzVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS44NzVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuZ3JpZC1tYXJnaW4teC54eGxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54eGxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lnh4bGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueHhsYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54eGxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMS44NzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lnh4bGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueHhsYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuODc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54eGxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjg3NXJlbSk7IH0gfVxuXG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgICB3aWR0aDogMjUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgICB3aWR0aDogNzUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICAgIHdpZHRoOiA3NSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEge1xuICAgICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMiB7XG4gICAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMyB7XG4gICAgICB3aWR0aDogMjUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNCB7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNSB7XG4gICAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNyB7XG4gICAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOSB7XG4gICAgICB3aWR0aDogNzUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTAge1xuICAgICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTExIHtcbiAgICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMSB7XG4gICAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMiB7XG4gICAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTMge1xuICAgICAgd2lkdGg6IDI1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS00IHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNSB7XG4gICAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTYge1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS03IHtcbiAgICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtOCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTkge1xuICAgICAgd2lkdGg6IDc1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMCB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTExIHtcbiAgICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uc21hbGwtcGFkZGluZy1jb2xsYXBzZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnNtYWxsLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLm1lZGl1bS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXBhZGRpbmctY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAueGxhcmdlLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54eGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnh4bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueHhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLXBhZGRpbmctY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC54eGxhcmdlLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuLnNtYWxsLW9mZnNldC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0wIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMyUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMyUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAwLjYyNXJlbSk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMC45Mzc1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDAuOTM3NXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG4gIC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAwLjkzNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMC45Mzc1cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDAuOTM3NXJlbSk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAwLjkzNzVyZW0pOyB9XG4gIC54eGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC54eGxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDAuOTM3NXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMC45Mzc1cmVtKTsgfVxuICAueHhsYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC54eGxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDAuOTM3NXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMC45Mzc1cmVtKTsgfVxuICAueHhsYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54eGxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG4gIC54eGxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDAuOTM3NXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMC45Mzc1cmVtKTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueHhsYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnh4bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAwLjkzNzVyZW0pOyB9IH1cblxuLmdyaWQteSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxuICAuZ3JpZC15ID4gLmNlbGwge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuICAuZ3JpZC15ID4gLmF1dG8ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC15ID4gLnNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtc2hyaW5rLCAuZ3JpZC15ID4gLnNtYWxsLWZ1bGwsIC5ncmlkLXkgPiAuc21hbGwtMSwgLmdyaWQteSA+IC5zbWFsbC0yLCAuZ3JpZC15ID4gLnNtYWxsLTMsIC5ncmlkLXkgPiAuc21hbGwtNCwgLmdyaWQteSA+IC5zbWFsbC01LCAuZ3JpZC15ID4gLnNtYWxsLTYsIC5ncmlkLXkgPiAuc21hbGwtNywgLmdyaWQteSA+IC5zbWFsbC04LCAuZ3JpZC15ID4gLnNtYWxsLTksIC5ncmlkLXkgPiAuc21hbGwtMTAsIC5ncmlkLXkgPiAuc21hbGwtMTEsIC5ncmlkLXkgPiAuc21hbGwtMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXkgPiAubWVkaXVtLWZ1bGwsIC5ncmlkLXkgPiAubWVkaXVtLTEsIC5ncmlkLXkgPiAubWVkaXVtLTIsIC5ncmlkLXkgPiAubWVkaXVtLTMsIC5ncmlkLXkgPiAubWVkaXVtLTQsIC5ncmlkLXkgPiAubWVkaXVtLTUsIC5ncmlkLXkgPiAubWVkaXVtLTYsIC5ncmlkLXkgPiAubWVkaXVtLTcsIC5ncmlkLXkgPiAubWVkaXVtLTgsIC5ncmlkLXkgPiAubWVkaXVtLTksIC5ncmlkLXkgPiAubWVkaXVtLTEwLCAuZ3JpZC15ID4gLm1lZGl1bS0xMSwgLmdyaWQteSA+IC5tZWRpdW0tMTIge1xuICAgICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAubGFyZ2UtZnVsbCwgLmdyaWQteSA+IC5sYXJnZS0xLCAuZ3JpZC15ID4gLmxhcmdlLTIsIC5ncmlkLXkgPiAubGFyZ2UtMywgLmdyaWQteSA+IC5sYXJnZS00LCAuZ3JpZC15ID4gLmxhcmdlLTUsIC5ncmlkLXkgPiAubGFyZ2UtNiwgLmdyaWQteSA+IC5sYXJnZS03LCAuZ3JpZC15ID4gLmxhcmdlLTgsIC5ncmlkLXkgPiAubGFyZ2UtOSwgLmdyaWQteSA+IC5sYXJnZS0xMCwgLmdyaWQteSA+IC5sYXJnZS0xMSwgLmdyaWQteSA+IC5sYXJnZS0xMiB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLXkgPiAueGxhcmdlLXNocmluaywgLmdyaWQteSA+IC54bGFyZ2UtZnVsbCwgLmdyaWQteSA+IC54bGFyZ2UtMSwgLmdyaWQteSA+IC54bGFyZ2UtMiwgLmdyaWQteSA+IC54bGFyZ2UtMywgLmdyaWQteSA+IC54bGFyZ2UtNCwgLmdyaWQteSA+IC54bGFyZ2UtNSwgLmdyaWQteSA+IC54bGFyZ2UtNiwgLmdyaWQteSA+IC54bGFyZ2UtNywgLmdyaWQteSA+IC54bGFyZ2UtOCwgLmdyaWQteSA+IC54bGFyZ2UtOSwgLmdyaWQteSA+IC54bGFyZ2UtMTAsIC5ncmlkLXkgPiAueGxhcmdlLTExLCAuZ3JpZC15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5ncmlkLXkgPiAueHhsYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAueHhsYXJnZS1mdWxsLCAuZ3JpZC15ID4gLnh4bGFyZ2UtMSwgLmdyaWQteSA+IC54eGxhcmdlLTIsIC5ncmlkLXkgPiAueHhsYXJnZS0zLCAuZ3JpZC15ID4gLnh4bGFyZ2UtNCwgLmdyaWQteSA+IC54eGxhcmdlLTUsIC5ncmlkLXkgPiAueHhsYXJnZS02LCAuZ3JpZC15ID4gLnh4bGFyZ2UtNywgLmdyaWQteSA+IC54eGxhcmdlLTgsIC5ncmlkLXkgPiAueHhsYXJnZS05LCAuZ3JpZC15ID4gLnh4bGFyZ2UtMTAsIC5ncmlkLXkgPiAueHhsYXJnZS0xMSwgLmdyaWQteSA+IC54eGxhcmdlLTEyIHtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEsIC5ncmlkLXkgPiAuc21hbGwtMiwgLmdyaWQteSA+IC5zbWFsbC0zLCAuZ3JpZC15ID4gLnNtYWxsLTQsIC5ncmlkLXkgPiAuc21hbGwtNSwgLmdyaWQteSA+IC5zbWFsbC02LCAuZ3JpZC15ID4gLnNtYWxsLTcsIC5ncmlkLXkgPiAuc21hbGwtOCwgLmdyaWQteSA+IC5zbWFsbC05LCAuZ3JpZC15ID4gLnNtYWxsLTEwLCAuZ3JpZC15ID4gLnNtYWxsLTExLCAuZ3JpZC15ID4gLnNtYWxsLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0yIHtcbiAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTMge1xuICAgIGhlaWdodDogMjUlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC01IHtcbiAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogNTAlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC04IHtcbiAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTkge1xuICAgIGhlaWdodDogNzUlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMTEge1xuICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMTIge1xuICAgIGhlaWdodDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgZmxleDogMSAxIDBweDtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLXNocmluaywgLmdyaWQteSA+IC5tZWRpdW0tMSwgLmdyaWQteSA+IC5tZWRpdW0tMiwgLmdyaWQteSA+IC5tZWRpdW0tMywgLmdyaWQteSA+IC5tZWRpdW0tNCwgLmdyaWQteSA+IC5tZWRpdW0tNSwgLmdyaWQteSA+IC5tZWRpdW0tNiwgLmdyaWQteSA+IC5tZWRpdW0tNywgLmdyaWQteSA+IC5tZWRpdW0tOCwgLmdyaWQteSA+IC5tZWRpdW0tOSwgLmdyaWQteSA+IC5tZWRpdW0tMTAsIC5ncmlkLXkgPiAubWVkaXVtLTExLCAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0yIHtcbiAgICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IDI1JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS01IHtcbiAgICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS04IHtcbiAgICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IDc1JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMTEge1xuICAgICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAubGFyZ2UtMSwgLmdyaWQteSA+IC5sYXJnZS0yLCAuZ3JpZC15ID4gLmxhcmdlLTMsIC5ncmlkLXkgPiAubGFyZ2UtNCwgLmdyaWQteSA+IC5sYXJnZS01LCAuZ3JpZC15ID4gLmxhcmdlLTYsIC5ncmlkLXkgPiAubGFyZ2UtNywgLmdyaWQteSA+IC5sYXJnZS04LCAuZ3JpZC15ID4gLmxhcmdlLTksIC5ncmlkLXkgPiAubGFyZ2UtMTAsIC5ncmlkLXkgPiAubGFyZ2UtMTEsIC5ncmlkLXkgPiAubGFyZ2UtMTIge1xuICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiA4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IDI1JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IDMzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IDU4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IDc1JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiA4My4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtYXV0byB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2Utc2hyaW5rLCAuZ3JpZC15ID4gLnhsYXJnZS0xLCAuZ3JpZC15ID4gLnhsYXJnZS0yLCAuZ3JpZC15ID4gLnhsYXJnZS0zLCAuZ3JpZC15ID4gLnhsYXJnZS00LCAuZ3JpZC15ID4gLnhsYXJnZS01LCAuZ3JpZC15ID4gLnhsYXJnZS02LCAuZ3JpZC15ID4gLnhsYXJnZS03LCAuZ3JpZC15ID4gLnhsYXJnZS04LCAuZ3JpZC15ID4gLnhsYXJnZS05LCAuZ3JpZC15ID4gLnhsYXJnZS0xMCwgLmdyaWQteSA+IC54bGFyZ2UtMTEsIC5ncmlkLXkgPiAueGxhcmdlLTEyIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiA4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS0zIHtcbiAgICAgIGhlaWdodDogMjUlOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IDMzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS02IHtcbiAgICAgIGhlaWdodDogNTAlOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IDU4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS05IHtcbiAgICAgIGhlaWdodDogNzUlOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiA4My4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtYXV0byB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLXNocmluaywgLmdyaWQteSA+IC54eGxhcmdlLTEsIC5ncmlkLXkgPiAueHhsYXJnZS0yLCAuZ3JpZC15ID4gLnh4bGFyZ2UtMywgLmdyaWQteSA+IC54eGxhcmdlLTQsIC5ncmlkLXkgPiAueHhsYXJnZS01LCAuZ3JpZC15ID4gLnh4bGFyZ2UtNiwgLmdyaWQteSA+IC54eGxhcmdlLTcsIC5ncmlkLXkgPiAueHhsYXJnZS04LCAuZ3JpZC15ID4gLnh4bGFyZ2UtOSwgLmdyaWQteSA+IC54eGxhcmdlLTEwLCAuZ3JpZC15ID4gLnh4bGFyZ2UtMTEsIC5ncmlkLXkgPiAueHhsYXJnZS0xMiB7XG4gICAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiA4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS0yIHtcbiAgICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IDMzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS01IHtcbiAgICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IDU4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAueHhsYXJnZS04IHtcbiAgICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54eGxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiA4My4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLnh4bGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gIG1hcmdpbi10b3A6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTAuOTM3NXJlbTsgfSB9XG5cbi5ncmlkLXBhZGRpbmcteSA+IC5jZWxsIHtcbiAgcGFkZGluZy10b3A6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDAuOTM3NXJlbTsgfSB9XG5cbi5ncmlkLW1hcmdpbi15IHtcbiAgbWFyZ2luLXRvcDogLTAuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTAuOTM3NXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXRvcDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cblxuLmdyaWQtZnJhbWUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMHZ3OyB9XG5cbi5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmNlbGwtYmxvY2sge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cblxuLmNlbGwtYmxvY2steSB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cblxuLmNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAuY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgd2lkdGg6IDEwMHZ3OyB9XG4gIC5jZWxsIC5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgICAubWVkaXVtLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC5sYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLnhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAueGxhcmdlLWNlbGwtYmxvY2sge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuICAueGxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC54bGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAueGxhcmdlLWNlbGwtYmxvY2steSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLnh4bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnh4bGFyZ2UtY2VsbC1ibG9jayB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG4gIC54eGxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC54eGxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLnh4bGFyZ2UtY2VsbC1ibG9jay15IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH0gfVxuXG4uZ3JpZC15LmdyaWQtZnJhbWUge1xuICB3aWR0aDogYXV0bztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGhlaWdodDogMTAwdmg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQteS5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiAxMDB2aDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiAxMDB2aDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmdyaWQteS54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiAxMDB2aDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmdyaWQteS54eGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7IH0gfVxuXG4uY2VsbCAuZ3JpZC15LmdyaWQtZnJhbWUge1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmNlbGwgLmdyaWQteS5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNlbGwgLmdyaWQteS5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5jZWxsIC5ncmlkLXkueGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmNlbGwgLmdyaWQteS54eGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbi5ncmlkLW1hcmdpbi15IHtcbiAgbWFyZ2luLXRvcDogLTAuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTAuOTM3NXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXRvcDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnh4bGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueHhsYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjg3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54eGxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pOyB9IH1cblxuLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gIGhlaWdodDogY2FsYygxMDB2aCArIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjg3NXJlbSk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS44NzVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS44NzVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLW1hcmdpbi15LmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkueGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkueHhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjg3NXJlbSk7IH0gfVxuXG5kaXYsXG5kbCxcbmR0LFxuZGQsXG51bCxcbm9sLFxubGksXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5wcmUsXG5mb3JtLFxucCxcbmJsb2NrcXVvdGUsXG50aCxcbnRkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbnAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IH1cblxuZW0sXG5pIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5zdHJvbmcsXG5iIHtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuaDEsIC5oMSxcbmgyLCAuaDIsXG5oMywgLmgzLFxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgZm9udC1mYW1pbHk6IFwidHJhZGUtZ290aGljLW5leHRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuICBoMSBzbWFsbCwgLmgxIHNtYWxsLFxuICBoMiBzbWFsbCwgLmgyIHNtYWxsLFxuICBoMyBzbWFsbCwgLmgzIHNtYWxsLFxuICBoNCBzbWFsbCwgLmg0IHNtYWxsLFxuICBoNSBzbWFsbCwgLmg1IHNtYWxsLFxuICBoNiBzbWFsbCwgLmg2IHNtYWxsIHtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBjb2xvcjogI2NhY2FjYTsgfVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDMsIC5oMyB7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDQsIC5oNCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNSwgLmg1IHtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNiwgLmg2IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaDEsIC5oMSB7XG4gICAgZm9udC1zaXplOiAzcmVtOyB9XG4gIGgyLCAuaDIge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtOyB9XG4gIGgzLCAuaDMge1xuICAgIGZvbnQtc2l6ZTogMS45Mzc1cmVtOyB9XG4gIGg0LCAuaDQge1xuICAgIGZvbnQtc2l6ZTogMS41NjI1cmVtOyB9XG4gIGg1LCAuaDUge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICBoNiwgLmg2IHtcbiAgICBmb250LXNpemU6IDFyZW07IH0gfVxuXG5hIHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAjRjc5MjFFO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICBjb2xvcjogI2JiNjcwNzsgfVxuICBhIGltZyB7XG4gICAgYm9yZGVyOiAwOyB9XG5cbmhyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1heC13aWR0aDogMTAwcmVtO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMS4yNXJlbSBhdXRvO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItbGVmdDogMDsgfVxuXG51bCxcbm9sLFxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuICBsaW5lLWhlaWdodDogMS41OyB9XG5cbmxpIHtcbiAgZm9udC1zaXplOiBpbmhlcml0OyB9XG5cbnVsIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYzsgfVxuXG5vbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtOyB9XG5cbnVsIHVsLCBvbCB1bCwgdWwgb2wsIG9sIG9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIGRsIGR0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XG4gICAgZm9udC13ZWlnaHQ6IDgwMDsgfVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41NjI1cmVtIDEuMjVyZW0gMCAxLjE4NzVyZW07XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NhY2FjYTsgfVxuICBibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgY29sb3I6ICM4YThhOGE7IH1cblxuY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgY29sb3I6ICM4YThhOGE7IH1cbiAgY2l0ZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi4oCUIFwiOyB9XG5cbmFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjMGEwYTBhO1xuICBjdXJzb3I6IGhlbHA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7IH1cblxuY29kZSB7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMzEyNXJlbSAwLjA2MjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzBhMGEwYTsgfVxuXG5rYmQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG5cbi5zdWJoZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICM4YThhOGE7IH1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDEyNSU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgcCArIC5zdGF0IHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbTsgfVxuXG51bC5uby1idWxsZXQsIG9sLm5vLWJ1bGxldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5tZWRpdW0tdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm1lZGl1bS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnhsYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAueGxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnhsYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAueHhsYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAueHhsYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC54eGxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbi5zaG93LWZvci1wcmludCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQge1xuICAqIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuaGlkZS1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB0YWJsZS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0aGVhZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdGJvZHkuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRyLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0ZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIHRoLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjsgfVxuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgYVtocmVmXj0nIyddOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJzsgfVxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiOyB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTsgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzOyB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cbiAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87IH0gfVxuXG4uYnV0dG9uLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMC44NWVtIDFlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmJ1dHRvbiwgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgb3V0bGluZTogMDsgfVxuICAuYnV0dG9uOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b246Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE0Njc5ZTtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLnRpbnksIC53cC1ibG9jay1idXR0b24gLnRpbnkud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBmb250LXNpemU6IDAuNnJlbTsgfVxuICAuYnV0dG9uLnNtYWxsLCAud3AtYmxvY2stYnV0dG9uIC5zbWFsbC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuYnV0dG9uLmxhcmdlLCAud3AtYmxvY2stYnV0dG9uIC5sYXJnZS53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAuYnV0dG9uLmV4cGFuZGVkLCAud3AtYmxvY2stYnV0dG9uIC5leHBhbmRlZC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuYnV0dG9uLnByaW1hcnksIC53cC1ibG9jay1idXR0b24gLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5wcmltYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5wcmltYXJ5OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTI2MTk1O1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi5zZWNvbmRhcnksIC53cC1ibG9jay1idXR0b24gLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVlNWU1ZTtcbiAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5idXR0b24uc3VjY2VzcywgLndwLWJsb2NrLWJ1dHRvbiAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAuYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMmJiNWI7XG4gICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuYnV0dG9uLndhcm5pbmcsIC53cC1ibG9jay1idXR0b24gLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi53YXJuaW5nOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M4YjAwO1xuICAgICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmJ1dHRvbi5hbGVydCwgLndwLWJsb2NrLWJ1dHRvbiAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5hbGVydDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmFsZXJ0OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E1M2IyYTtcbiAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5idXR0b24uZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbiAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5LCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeSwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5wcmltYXJ5IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnksIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5LCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLnByaW1hcnksIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5wcmltYXJ5OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbiAgICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5LCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLnNlY29uZGFyeSB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnksIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5LCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLnNlY29uZGFyeSwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gICAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcywgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5zdWNjZXNzIHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3MsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLnN1Y2Nlc3MsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5zdWNjZXNzOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgICAgICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmcsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLndhcm5pbmcge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQud2FybmluZywgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmcsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0ud2FybmluZywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS53YXJuaW5nOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLndhcm5pbmc6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICAgICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQuYWxlcnQsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0uYWxlcnQge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuYWxlcnQsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0LCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLmFsZXJ0LCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5hbGVydDpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0uYWxlcnQ6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xuICAgICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLmhvbGxvdywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMxNzc5YmE7XG4gICAgY29sb3I6ICMxNzc5YmE7IH1cbiAgICAuYnV0dG9uLmhvbGxvdywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uaG9sbG93OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF06Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uaG9sbG93OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzBjM2Q1ZDtcbiAgICAgIGNvbG9yOiAjMGMzZDVkOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdzpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93OmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdzpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICAgICAgICBjb2xvcjogIzE3NzliYTsgfVxuICAgIC5idXR0b24uaG9sbG93LnByaW1hcnksIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICAgICAgY29sb3I6ICMxNzc5YmE7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMGMzZDVkO1xuICAgICAgICBjb2xvcjogIzBjM2Q1ZDsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMxNzc5YmE7XG4gICAgICAgICAgY29sb3I6ICMxNzc5YmE7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnksIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzc2NzY3NjtcbiAgICAgIGNvbG9yOiAjNzY3Njc2OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzNiM2IzYjtcbiAgICAgICAgY29sb3I6ICMzYjNiM2I7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICAgICAgICAgIGNvbG9yOiAjNzY3Njc2OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2VzcywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMxNTc1Mzk7XG4gICAgICAgIGNvbG9yOiAjMTU3NTM5OyB9XG4gICAgICAgIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmcsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93Lndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjODA1NzAwO1xuICAgICAgICBjb2xvcjogIzgwNTcwMDsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93Lndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93Lndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gICAgICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5hbGVydCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzY3MjUxYTtcbiAgICAgICAgY29sb3I6ICM2NzI1MWE7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICAgICAgICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gIC5idXR0b24uY2xlYXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzE3NzliYTtcbiAgICBjb2xvcjogIzE3NzliYTsgfVxuICAgIC5idXR0b24uY2xlYXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMGMzZDVkO1xuICAgICAgY29sb3I6ICMwYzNkNWQ7IH1cbiAgICAgIC5idXR0b24uY2xlYXI6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXI6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICAgICAgICBjb2xvcjogIzE3NzliYTsgfVxuICAgIC5idXR0b24uY2xlYXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b24uY2xlYXI6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIucHJpbWFyeSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzE3NzliYTtcbiAgICAgIGNvbG9yOiAjMTc3OWJhOyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMGMzZDVkO1xuICAgICAgICBjb2xvcjogIzBjM2Q1ZDsgfVxuICAgICAgICAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzE3NzliYTtcbiAgICAgICAgICBjb2xvcjogIzE3NzliYTsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICAgICAgY29sb3I6ICM3Njc2NzY7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzNiM2IzYjtcbiAgICAgICAgY29sb3I6ICMzYjNiM2I7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICAgICAgICAgIGNvbG9yOiAjNzY3Njc2OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIuc3VjY2VzcywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgIGNvbG9yOiAjM2FkYjc2OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTU3NTM5O1xuICAgICAgICBjb2xvcjogIzE1NzUzOTsgfVxuICAgICAgICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLndhcm5pbmcsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gICAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgICAgICAgY29sb3I6ICM4MDU3MDA7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gICAgICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAgIC5idXR0b24uY2xlYXIud2FybmluZywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbmssIC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5hbGVydCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gICAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM2NzI1MWE7XG4gICAgICAgIGNvbG9yOiAjNjcyNTFhOyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gICAgICAgICAgY29sb3I6ICNjYzRiMzc7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuYWxlcnQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLmJ1dHRvbi5jbGVhci5hbGVydC5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idXR0b24uZHJvcGRvd246OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjRlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogI2ZlZmVmZSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3c6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5kcm9wZG93bi53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyOjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzE3NzliYTsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5wcmltYXJ5OjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uaG9sbG93LnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5kcm9wZG93bi5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIucHJpbWFyeTo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzE3NzliYTsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zZWNvbmRhcnk6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5ob2xsb3cuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZHJvcGRvd24uc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuc2Vjb25kYXJ5OjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICM3Njc2NzY7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc3VjY2Vzczo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmhvbGxvdy5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZHJvcGRvd24uc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnN1Y2Nlc3M6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMzYWRiNzY7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cud2FybmluZzo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmhvbGxvdy53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZHJvcGRvd24ud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLndhcm5pbmc6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNmZmFlMDA7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuYWxlcnQ6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5ob2xsb3cuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5kcm9wZG93bi5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLmFsZXJ0OjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2NjNGIzNzsgfVxuICAuYnV0dG9uLmFycm93LW9ubHk6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5hcnJvdy1vbmx5LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIge1xuICAgIHRvcDogLTAuMWVtO1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbmEuYnV0dG9uOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIGEud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCBhLmJ1dHRvbjpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiBhLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5bdHlwZT0ndGV4dCddLCBbdHlwZT0ncGFzc3dvcmQnXSwgW3R5cGU9J2RhdGUnXSwgW3R5cGU9J2RhdGV0aW1lJ10sIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLCBbdHlwZT0nbW9udGgnXSwgW3R5cGU9J3dlZWsnXSwgW3R5cGU9J2VtYWlsJ10sIFt0eXBlPSdudW1iZXInXSwgW3R5cGU9J3NlYXJjaCddLCBbdHlwZT0ndGVsJ10sIFt0eXBlPSd0aW1lJ10sIFt0eXBlPSd1cmwnXSwgW3R5cGU9J2NvbG9yJ10sXG50ZXh0YXJlYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMTAsIDEwLCAxMCwgMC4xKTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lOyB9XG4gIFt0eXBlPSd0ZXh0J106Zm9jdXMsIFt0eXBlPSdwYXNzd29yZCddOmZvY3VzLCBbdHlwZT0nZGF0ZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106Zm9jdXMsIFt0eXBlPSdtb250aCddOmZvY3VzLCBbdHlwZT0nd2VlayddOmZvY3VzLCBbdHlwZT0nZW1haWwnXTpmb2N1cywgW3R5cGU9J251bWJlciddOmZvY3VzLCBbdHlwZT0nc2VhcmNoJ106Zm9jdXMsIFt0eXBlPSd0ZWwnXTpmb2N1cywgW3R5cGU9J3RpbWUnXTpmb2N1cywgW3R5cGU9J3VybCddOmZvY3VzLCBbdHlwZT0nY29sb3InXTpmb2N1cyxcbiAgdGV4dGFyZWE6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggI2NhY2FjYTtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuICB0ZXh0YXJlYVtyb3dzXSB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG5cbmlucHV0OmRpc2FibGVkLCBpbnB1dFtyZWFkb25seV0sXG50ZXh0YXJlYTpkaXNhYmxlZCxcbnRleHRhcmVhW3JlYWRvbmx5XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuW3R5cGU9J3N1Ym1pdCddLFxuW3R5cGU9J2J1dHRvbiddIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG5pbnB1dFt0eXBlPSdzZWFyY2gnXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZmVmZWZlOyB9XG5cblt0eXBlPSdmaWxlJ10sXG5bdHlwZT0nY2hlY2tib3gnXSxcblt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTsgfVxuXG5bdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbFtmb3JdLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsW2Zvcl0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5sYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxubGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG5cblt0eXBlPSdmaWxlJ10ge1xuICB3aWR0aDogMTAwJTsgfVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgY29sb3I6ICM0NDQ7IH1cbiAgbGFiZWwubWlkZGxlIHtcbiAgICBtYXJnaW46IDAgMCAxcmVtO1xuICAgIHBhZGRpbmc6IDAuNTYyNXJlbSAwOyB9XG5cbi5oZWxwLXRleHQge1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzBhMGEwYTsgfVxuXG4uaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkLCAuaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuICAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZCwgLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwsIC5pbnB1dC1ncm91cC1maWVsZCwgLmlucHV0LWdyb3VwLWJ1dHRvbiwgLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gIG1hcmdpbjogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwge1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5pbnB1dC1ncm91cC1sYWJlbDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XG4gIC5pbnB1dC1ncm91cC1sYWJlbDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItbGVmdDogMDsgfVxuXG4uaW5wdXQtZ3JvdXAtZmllbGQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmbGV4OiAxIDEgMHB4O1xuICBtaW4td2lkdGg6IDA7IH1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDFyZW07IH1cblxuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDsgfVxuXG5sZWdlbmQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG4uZmllbGRzZXQge1xuICBtYXJnaW46IDEuMTI1cmVtIDA7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7IH1cbiAgLmZpZWxkc2V0IGxlZ2VuZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4xODc1cmVtO1xuICAgIHBhZGRpbmc6IDAgMC4xODc1cmVtOyB9XG5cbnNlbGVjdCB7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6IHJnYiUyODEzOCwgMTM4LCAxMzglMjknPjwvcG9seWdvbj48L3N2Zz5cIik7XG4gIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgLTFyZW0gY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkge1xuICAgIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09XCIpOyB9IH1cbiAgc2VsZWN0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4YThhOGE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4ICNjYWNhY2E7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgc2VsZWN0OmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHNlbGVjdFttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpIHtcbiAgYm9yZGVyLWNvbG9yOiAjY2M0YjM3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjllY2VhOyB9XG4gIC5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNjYzRiMzc7IH1cblxuLmlzLWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogI2NjNGIzNzsgfVxuXG4uZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgY29sb3I6ICNjYzRiMzc7IH1cbiAgLmZvcm0tZXJyb3IuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IHNvbGlkIDRweCAjZmVmZWZlO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgxMCwgMTAsIDEwLCAwLjIpO1xuICBsaW5lLWhlaWdodDogMDsgfVxuXG5hLnRodW1ibmFpbCB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7IH1cbiAgYS50aHVtYm5haWw6aG92ZXIsIGEudGh1bWJuYWlsOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgNnB4IDFweCByZ2JhKDIzLCAxMjEsIDE4NiwgMC41KTsgfVxuICBhLnRodW1ibmFpbCBpbWFnZSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4uYWxpZ24tbGVmdCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tcmlnaHQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uYWxpZ24tanVzdGlmeSB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4uYWxpZ24tc3BhY2VkIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cblxuLmFsaWduLWxlZnQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tcmlnaHQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLmFsaWduLWNlbnRlci52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmFsaWduLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1zZWxmLXRvcCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLWJvdHRvbSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tc2VsZi1ib3R0b20ge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tbWlkZGxlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uYWxpZ24tc2VsZi1taWRkbGUge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cblxuLmFsaWduLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuXG4uYWxpZ24tc2VsZi1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxuXG4uYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7IH1cblxuLnNtYWxsLW9yZGVyLTEge1xuICBvcmRlcjogMTsgfVxuXG4uc21hbGwtb3JkZXItMiB7XG4gIG9yZGVyOiAyOyB9XG5cbi5zbWFsbC1vcmRlci0zIHtcbiAgb3JkZXI6IDM7IH1cblxuLnNtYWxsLW9yZGVyLTQge1xuICBvcmRlcjogNDsgfVxuXG4uc21hbGwtb3JkZXItNSB7XG4gIG9yZGVyOiA1OyB9XG5cbi5zbWFsbC1vcmRlci02IHtcbiAgb3JkZXI6IDY7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAubWVkaXVtLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5tZWRpdW0tb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLm1lZGl1bS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAubWVkaXVtLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5tZWRpdW0tb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLmxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5sYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLmxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5sYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAueGxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC54bGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLnhsYXJnZS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAueGxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC54bGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC54eGxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC54eGxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC54eGxhcmdlLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC54eGxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC54eGxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuLmZsZXgtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDsgfVxuXG4uZmxleC1jaGlsZC1hdXRvIHtcbiAgZmxleDogMSAxIGF1dG87IH1cblxuLmZsZXgtY2hpbGQtZ3JvdyB7XG4gIGZsZXg6IDEgMCBhdXRvOyB9XG5cbi5mbGV4LWNoaWxkLXNocmluayB7XG4gIGZsZXg6IDAgMSBhdXRvOyB9XG5cbi5mbGV4LWRpci1yb3cge1xuICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG5cbi5mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuXG4uZmxleC1kaXItY29sdW1uIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4uZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAubGFyZ2UtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5sYXJnZS1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLmxhcmdlLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLnhsYXJnZS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC54bGFyZ2UtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAueGxhcmdlLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAueGxhcmdlLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAueGxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLnhsYXJnZS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLnhsYXJnZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAueHhsYXJnZS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC54eGxhcmdlLWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgLnh4bGFyZ2UtZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC54eGxhcmdlLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAueHhsYXJnZS1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIC54eGxhcmdlLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAueHhsYXJnZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuLypcbiAgTXkgY3VzdG9tIHN0eWxlczpcbiAgQWRkIHlvdXIgc2NzcyBmaWxlcyBiZWxvdyB0byBzdHJ1Y3R1cmUgeW91ciBwcm9qZWN0IHN0eWxlc1xuKi9cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgY29sb3I6ICMyMTc1OWI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxlZnQ6IDVweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdG9wOiA1cHg7XG4gIHdpZHRoOiBhdXRvO1xuICB6LWluZGV4OiAxMDAwMDA7IH1cblxuI3dwYWRtaW5iYXIge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDsgfVxuXG5ib2R5LmFkbWluLWJhci5mLXRvcGJhci1maXhlZCAuc3RpY2t5LmZpeGVkIHtcbiAgbWFyZ2luLXRvcDogMnJlbTsgfVxuXG5ib2R5LmFkbWluLWJhci5vZmZjYW52YXMgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gIHRvcDogMi44NzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDguOTM3NWVtKSB7XG4gICAgYm9keS5hZG1pbi1iYXIub2ZmY2FudmFzIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgICAgdG9wOiAycmVtOyB9IH1cblxuLndwLWNhcHRpb24gPiBmaWdjYXB0aW9uIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgY29sb3I6ICM5OTk7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMDsgfVxuXG5wLndwLWNhcHRpb24tdGV4dCB7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogIzY2NjtcbiAgcGFkZGluZzogMC42MjVyZW0gMDsgfVxuXG4uYWxpZ25sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIG1hcmdpbjogMDsgfVxuXG4uYWxpZ25yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBtYXJnaW46IDA7IH1cblxuLmFsaWduY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLmdhbGxlcnkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5nYWxsZXJ5IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTEgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0xID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0xID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTIgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0yID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0yID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtMyA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTMgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTMgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy00ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNCA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNCA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTUgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy01ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy01ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygyMCUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNiA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTYgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTYgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy03ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNyA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNyA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTggPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy04ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy04ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy05ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtOSA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtOSA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMTEuMTExMTElIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmdhbGxlcnkgLmdhbGxlcnktaWNvbiA+IGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBib3JkZXI6IHNvbGlkIDRweCAjZmVmZWZlO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMTAsIDEwLCAxMCwgMC4yKTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0OyB9XG4gICAgLmdhbGxlcnkgLmdhbGxlcnktaWNvbiA+IGE6aG92ZXIsIC5nYWxsZXJ5IC5nYWxsZXJ5LWljb24gPiBhOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCA2cHggMXB4IHJnYmEoMjMsIDEyMSwgMTg2LCAwLjUpOyB9XG4gICAgLmdhbGxlcnkgLmdhbGxlcnktaWNvbiA+IGEgaW1hZ2Uge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAuZ2FsbGVyeSAuZ2FsbGVyeS1pY29uID4gaW1nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgYm9yZGVyOiBzb2xpZCA0cHggI2ZlZmVmZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDEwLCAxMCwgMTAsIDAuMik7XG4gICAgbGluZS1oZWlnaHQ6IDA7IH1cblxuLypcbkZyb250ZW5kIHN0eWxlcyBmb3IgZ3V0ZW5iZXJnIGJsb2Nrc1xuKi9cbi8qKiA9PT0gQmFzZSBDb2xvciBQYWxhdHRlID09PSAqL1xuLmhhcy1wcmltYXJ5LWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhOyB9XG5cbi5oYXMtcHJpbWFyeS1jb2xvciB7XG4gIGNvbG9yOiAjMTc3OWJhOyB9XG5cbi5oYXMtc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2OyB9XG5cbi5oYXMtc2Vjb25kYXJ5LWNvbG9yIHtcbiAgY29sb3I6ICM3Njc2NzY7IH1cblxuLmhhcy1zdWNjZXNzLWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2OyB9XG5cbi5oYXMtc3VjY2Vzcy1jb2xvciB7XG4gIGNvbG9yOiAjM2FkYjc2OyB9XG5cbi5oYXMtd2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDsgfVxuXG4uaGFzLXdhcm5pbmctY29sb3Ige1xuICBjb2xvcjogI2ZmYWUwMDsgfVxuXG4uaGFzLWFsZXJ0LWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3OyB9XG5cbi5oYXMtYWxlcnQtY29sb3Ige1xuICBjb2xvcjogI2NjNGIzNzsgfVxuXG4vKiogPT09IEJ1dHRvbiA9PT0gKi9cbi53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluay5oYXMtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTsgfVxuXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLXByaW1hcnktY29sb3Ige1xuICBjb2xvcjogIzE3NzliYTsgfVxuXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3NjsgfVxuXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLXNlY29uZGFyeS1jb2xvciB7XG4gIGNvbG9yOiAjNzY3Njc2OyB9XG5cbi53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluay5oYXMtc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjsgfVxuXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLXN1Y2Nlc3MtY29sb3Ige1xuICBjb2xvcjogIzNhZGI3NjsgfVxuXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7IH1cblxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy13YXJuaW5nLWNvbG9yIHtcbiAgY29sb3I6ICNmZmFlMDA7IH1cblxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy1hbGVydC1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNzsgfVxuXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLWFsZXJ0LWNvbG9yIHtcbiAgY29sb3I6ICNjYzRiMzc7IH1cblxuLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1zcXVhcmVkIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi8qKiA9PT0gRmlsZSA9PT0gKi9cbi53cC1ibG9jay1maWxlIC53cC1ibG9jay1maWxlX19idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMC44NWVtIDFlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuICAud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9uOmhvdmVyLCAud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQ2NzllO1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG5cbi8qIFdJTkRPV1MgSEFDS1MgKi9cbi8qIFRBUkdFVCBJT1MgREVWSUNFUyAqL1xuLyogRk9SIE5PTiBJT1MgREVWSUNFUyAqL1xuLyogR0xPQkFMIFNUWUxFUyAqL1xuLmluc2V0X2NvbnRlbnQge1xuICBwYWRkaW5nOiAwIDYlOyB9XG5cbmNpdGUge1xuICBjb2xvcjogIzQ0NDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xNXB4OyB9XG5cbi5ncmVjYXB0Y2hhLWJhZGdlIHtcbiAgei1pbmRleDogLTE7XG4gIG9wYWNpdHk6IDA7IH1cblxuYm9keSwgLmVudHJ5LWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmJmYmZiOyB9XG5cbmEge1xuICBjb2xvcjogI0Y3OTIxRTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDsgfVxuXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogODAwOyB9XG5cbnAge1xuICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG5cbi5zbWFsbHR4dCB7XG4gIGZvbnQtc2l6ZTogNjAlOyB9XG5cbi51cGRhdGVkIHtcbiAgZm9udC1zaXplOiAuOXJlbTsgfVxuXG4ubGFyZ2VydHh0IHtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubGFyZ2VydHh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtOyB9IH1cblxuaHIge1xuICBtYXJnaW46IDEuNWVtIGF1dG8gMi4yZW07IH1cblxuLmZvbGxvd3RoZWxlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9sbG93dGhlbGVhZGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IGF1dG87IH0gfVxuXG4uY2VudGVyZWQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmRvY3VtZW50c19yYXBwYSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZG9jdW1lbnRzX3JhcHBhIHtcbiAgICAgIGNvbHVtbi1jb3VudDogMjsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZG9jdW1lbnRzX3JhcHBhIHtcbiAgICAgIGNvbHVtbi1jb3VudDogMzsgfSB9XG5cbi5kb2NfbGluZSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuXG4uZG9jX2Rvd25sb2FkIHtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZG9jX2Rvd25sb2FkOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICBoZWlnaHQ6IDI1cHg7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgdG9wOiA1cHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltYWdlcy9pY29uX2RvY3VtZW50LnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IH1cbiAgLmRvY19kb3dubG9hZDphZnRlciB7XG4gICAgY29udGVudDogJ1xcMjAzYSc7XG4gICAgY29sb3I6ICM5Nzk3OTc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAtMTVweDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDsgfVxuICAuZG9jX2Rvd25sb2FkOmhvdmVyOmFmdGVyIHtcbiAgICByaWdodDogLTIwcHg7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubm90bGdkZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLnBvc3Rfc25pcHBldCB7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4OyB9XG4gIC5wb3N0X3NuaXBwZXQgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogLjVlbTsgfVxuXG4ucG9zaXRpb25zX2Jsb2NrIHtcbiAgbWFyZ2luLXRvcDogMWVtOyB9XG5cbi5qb2JsaXN0aW5ncyBoNSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDE1cHg7IH1cblxuLmJhY2tsaW5rIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuICAuYmFja2xpbmsgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDZweCAxMnB4IDEwcHg7XG4gICAgY29sb3I6ICNCOEUxREM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMjUzMjtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmNvbHVtbiwgLmNvbHVtbnMsIC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIlOyB9IH1cblxuLndwLWJsb2NrLXNlcGFyYXRvciB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkOyB9XG5cbi5ub3BhZCB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuXG5zZWN0aW9uIHtcbiAgcGFkZGluZzogNjBweCAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nOiA4MHB4IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIHNlY3Rpb24ge1xuICAgICAgcGFkZGluZzogMTAwcHggMDsgfSB9XG5cbi5zZWN0aW9uX3JhcHBhIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLnNlY3Rpb25fcmFwcGEgaHIge1xuICAgIG1hcmdpbjogM3JlbSBhdXRvOyB9XG5cbi50b3BuYm90dG9tIHtcbiAgbWFyZ2luOiAzMHB4IGF1dG87IH1cblxudGV4dGFyZWEge1xuICByZXNpemU6IG5vbmU7IH1cblxuLm1hcF9yYXBwYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiA3NiU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMjBweCBhdXRvIDMwcHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM5Nzk3OTc7IH1cbiAgLm1hcF9yYXBwYSBpZnJhbWUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWFwX3JhcHBhIHtcbiAgICAgIHBhZGRpbmctdG9wOiA2NCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tYXBfcmFwcGEge1xuICAgICAgcGFkZGluZy10b3A6IDUwJTsgfSB9XG5cbmJsb2NrcXVvdGUsIGJsb2NrcXVvdGUgcCB7XG4gIGNvbG9yOiAjMDAzMTQ2O1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgYmxvY2txdW90ZSwgYmxvY2txdW90ZSBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtOyB9IH1cblxuYmxvY2txdW90ZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAyNXB4IDI1cHggNXB4O1xuICBtYXJnaW46IDEwcHggYXV0byA0MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjhFMURDO1xuICBib3JkZXItYm90dG9tOiA4cHggc29saWQgIzk3OTc5NztcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDMwcHggMTBweDsgfSB9XG5cbmJsb2NrcXVvdGUudGVzdGltb255IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzE0NjsgfVxuICBibG9ja3F1b3RlLnRlc3RpbW9ueSBwIHtcbiAgICBjb2xvcjogI0I4RTFEQzsgfVxuICBibG9ja3F1b3RlLnRlc3RpbW9ueSBjaXRlIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICB1bC50d29fY29sdW1ucyB7XG4gICAgY29sdW1uLWNvdW50OiAyO1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH0gfVxuXG4ucGFnZV9yYXBwYSB7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1hZ2VzL2JnaW1nX3JvbGxlcnMuanBnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMiUgYXV0bztcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuXG4uaW5uZXJfcmFwcGEsXG4uaW5uZXJfcmFwcGFfd2lkZSxcbi5pbm5lcl9yYXBwYV9uYXJyb3cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI1O1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICAuaW5uZXJfcmFwcGEgdWwsXG4gIC5pbm5lcl9yYXBwYV93aWRlIHVsLFxuICAuaW5uZXJfcmFwcGFfbmFycm93IHVsIHtcbiAgICBtYXJnaW4tbGVmdDogMS44ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07IH1cbiAgICAuaW5uZXJfcmFwcGEgdWwgdWwsXG4gICAgLmlubmVyX3JhcHBhX3dpZGUgdWwgdWwsXG4gICAgLmlubmVyX3JhcHBhX25hcnJvdyB1bCB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBjaXJjbGU7XG4gICAgICBtYXJnaW4tdG9wOiAuNWVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuMmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMWVtOyB9XG4gICAgLmlubmVyX3JhcHBhIHVsIGxpLFxuICAgIC5pbm5lcl9yYXBwYV93aWRlIHVsIGxpLFxuICAgIC5pbm5lcl9yYXBwYV9uYXJyb3cgdWwgbGkge1xuICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAuNWVtOyB9XG5cbi5pbm5lcl9yYXBwYSB7XG4gIG1heC13aWR0aDogMTQ0MHB4O1xuICBwYWRkaW5nOiAwIDYlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmlubmVyX3JhcHBhIHtcbiAgICAgIHBhZGRpbmc6IDAgNSU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmlubmVyX3JhcHBhIHtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuXG4uaW5uZXJfcmFwcGFfbmFycm93IHtcbiAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gIHBhZGRpbmc6IDAgNiU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaW5uZXJfcmFwcGFfbmFycm93IHtcbiAgICAgIHBhZGRpbmc6IDAgNSU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmlubmVyX3JhcHBhX25hcnJvdyB7XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cblxuLmlubmVyX3JhcHBhX3dpZGUge1xuICBtYXgtd2lkdGg6IDE2MDBweDtcbiAgcGFkZGluZzogMCA2JTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5pbm5lcl9yYXBwYV93aWRlIHtcbiAgICAgIHBhZGRpbmc6IDAgNSU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmlubmVyX3JhcHBhX3dpZGUge1xuICAgICAgcGFkZGluZzogMCAzJTsgfSB9XG5cbi5zaGlmdHVwIHtcbiAgcGFkZGluZzogMjVweCAwIDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2hpZnR1cCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luLXRvcDogLTEyMHB4OyB9XG4gICAgICAuc2hpZnR1cCBoMS5zcGFjZWRvdXQsIC5zaGlmdHVwIGgyLnNwYWNlZG91dCB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2hpZnR1cCB7XG4gICAgICBtYXJnaW4tdG9wOiAtMTYwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnNoaWZ0dXAge1xuICAgICAgbWFyZ2luLXRvcDogLTIwMHB4OyB9IH1cbiAgLnNoaWZ0dXAgLmVudHJ5LWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDE1cHggMCA0MHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zaGlmdHVwIC5lbnRyeS1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMzBweDsgfVxuICAgICAgICAuc2hpZnR1cCAuZW50cnktY29udGVudDphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAtMTBweCA4cHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMjYwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5zaGlmdHVwIC5lbnRyeS1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogNTBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnNoaWZ0dXAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiA2MHB4OyB9IH1cblxuLmVudHJ5LWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI1O1xuICBtaW4taGVpZ2h0OiA1MDBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5lbnRyeS1jb250ZW50IHVsIHtcbiAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgIGNvbHVtbi1nYXA6IDMwcHg7IH1cbiAgICAgIC5lbnRyeS1jb250ZW50IHVsIGxpIHVsIHtcbiAgICAgICAgY29sdW1uLWNvdW50OiAxO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTsgfSB9XG5cbi53cC1ibG9jay1pbWFnZSBpbWcge1xuICBtYXJnaW4tdG9wOiAuMmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjZlbTsgfVxuXG4uc2VhcmNoIC5lbnRyeS1jb250ZW50LFxuLmFyY2hpdmUgLmVudHJ5LWNvbnRlbnQge1xuICBtYXJnaW46IDBweCBhdXRvOyB9XG5cbi5zaWRlYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogNHB4IHNvbGlkICNlYWVhZWE7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHBhZGRpbmc6IDI1cHg7IH1cbiAgLnNpZGViYXIgaDYge1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7IH1cbiAgLnNpZGViYXIgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IC42cmVtO1xuICAgIGNvbHVtbi1jb3VudDogMSAhaW1wb3J0YW50OyB9XG4gIC5zaWRlYmFyIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNpZGViYXIgbGkgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnNpZGViYXIgbGkgYTpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAzQSc7XG4gICAgICBjb2xvcjogIzhFQjhCMztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDdweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgICAuc2lkZWJhciBsaSBhOmhvdmVyOmJlZm9yZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XG4gIC5zaWRlYmFyIHNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2lkZWJhciB7XG4gICAgICBwYWRkaW5nOiA1MHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2lkZWJhciB7XG4gICAgICBwYWRkaW5nOiAyNXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zaWRlYmFyIHtcbiAgICAgIHBhZGRpbmc6IDMwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnNpZGViYXIge1xuICAgICAgcGFkZGluZzogNDBweDsgfSB9XG5cbi5yZXNwb25zaXZlX3ZpZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiA1NS43NSU7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM5Nzk3OTc7XG4gIG1hcmdpbi1ib3R0b206IDJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAucmVzcG9uc2l2ZV92aWQgaWZyYW1lIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwOyB9XG5cbi8qIEhFQURMSU5FIFNUWUxFUyAqL1xuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXdlaWdodDogODAwO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4OyB9IH1cblxuaDEge1xuICBmb250LXNpemU6IDEuOHJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMS45cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBoMSB7XG4gICAgICBmb250LXNpemU6IDJyZW07IH0gfVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMS43cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiAxLjhyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMS45cmVtOyB9IH1cblxuaDMge1xuICBmb250LXNpemU6IDEuNnJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMS43cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDEuOHJlbTsgfSB9XG5cbmg0IHtcbiAgZm9udC1zaXplOiAxLjRyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBoNCB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07IH0gfVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgaDUge1xuICAgICAgZm9udC1zaXplOiAxLjNyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGg1IHtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtOyB9IH1cblxuaDYge1xuICBmb250LXNpemU6IDEuMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGg2IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIGg2IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zcmVtOyB9IH1cblxuaDEuc3BhY2Vkb3V0LFxuaDIuc3BhY2Vkb3V0LFxuaDMuc3BhY2Vkb3V0IHtcbiAgY29sb3I6ICM5Nzk3OTc7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBsZXR0ZXItc3BhY2luZzogNnB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgaDEuc3BhY2Vkb3V0LFxuICAgIGgyLnNwYWNlZG91dCxcbiAgICBoMy5zcGFjZWRvdXQge1xuICAgICAgZm9udC1zaXplOiAxLjRyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGgxLnNwYWNlZG91dCxcbiAgICBoMi5zcGFjZWRvdXQsXG4gICAgaDMuc3BhY2Vkb3V0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDhweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBoMS5zcGFjZWRvdXQsXG4gICAgaDIuc3BhY2Vkb3V0LFxuICAgIGgzLnNwYWNlZG91dCB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIGgxLnNwYWNlZG91dCxcbiAgICBoMi5zcGFjZWRvdXQsXG4gICAgaDMuc3BhY2Vkb3V0IHtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxMHB4OyB9IH1cblxuLyogIFRPT0xCQVIgLSBIRUFERVIgLSBPRkZDQU5WQVMgU1RZTEVTICAqL1xuLnRvb2xiYXJfbG9nbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogOTk5OTk5OTk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdG9wOiAycHg7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnRvb2xiYXJfbG9nbyB7XG4gICAgICBsZWZ0OiAzJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfSB9XG5cbi50b29sYmFyX2xvZ28gaW1nIHtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogOTVweDtcbiAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC50b29sYmFyX2xvZ28gaW1nIHtcbiAgICAgIGhlaWdodDogOTBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRvb2xiYXJfbG9nbyBpbWcge1xuICAgICAgaGVpZ2h0OiAxMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAudG9vbGJhcl9sb2dvIGltZyB7XG4gICAgICBoZWlnaHQ6IDEyMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC50b29sYmFyX2xvZ28gaW1nIHtcbiAgICAgIGhlaWdodDogMTI1cHg7IH0gfVxuXG4ud2Vic2l0ZV9oZWFkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogOTk5OTk7XG4gIHdpZHRoOiAxMDAlO1xuICBib3gtc2hhZG93OiAwIDJweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDsgfVxuXG4ud2Vic2l0ZV9oZWFkZXIubmF2YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsgfVxuXG4uc2Vjb25kYXJ5X3Rvb2xiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDk5O1xuICBwYWRkaW5nOiAxMHB4IDMlO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMjUzMjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LWZhbWlseTogJ3RyYWRlLWdvdGhpYy1uZXh0LWNvbXByZXNzZWQnLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogMzAwO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuc2Vjb25kYXJ5X3Rvb2xiYXIgYSB7XG4gICAgY29sb3I6ICNCOEUxREM7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2Vjb25kYXJ5X3Rvb2xiYXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAxMHB4IDMlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5zZWNvbmRhcnlfdG9vbGJhciB7XG4gICAgICBwYWRkaW5nOiAxNXB4IDMlOyB9IH1cblxuLnNlY29uZF9sZWZ0IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2Vjb25kX2xlZnQge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uc2Vjb25kX3JpZ2h0IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogcmlnaHQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2Vjb25kX3JpZ2h0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLnRvb2xiYXJfbmF2IHVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDJweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC50b29sYmFyX25hdiB1bCBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgZm9udC1zaXplOiAuN3JlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC50b29sYmFyX25hdiB1bCBsaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogOHB4OyB9IH1cbiAgLnRvb2xiYXJfbmF2IHVsIGxpIGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcGFkZGluZzogMTVweCAxMnB4IDE1cHggMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0OyB9XG4gIC50b29sYmFyX25hdiB1bCBsaSBhOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICB0b3A6IDUwJTtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgb3BhY2l0eTogLjM7IH1cbiAgLnRvb2xiYXJfbmF2IHVsIGxpOm50aC1sYXN0LW9mLXR5cGUoMSkgYTphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAudG9vbGJhcl9uYXYgdWwgbGkgYTpob3ZlcixcbiAgLnRvb2xiYXJfbmF2IHVsIGxpLmlzLWFjdGl2ZSBhIHtcbiAgICBvcGFjaXR5OiAuNjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnRvb2xiYXJfbmF2IHVsIHtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7IH0gfVxuXG4ubWFpbmJhcl9uYXYge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1haW5iYXJfbmF2IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG5cbi5tYWluYmFyX25hdiB1bCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IC02cHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuICAubWFpbmJhcl9uYXYgdWwgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IC44cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAubWFpbmJhcl9uYXYgdWwgbGkge1xuICAgICAgICBmb250LXNpemU6IC45cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogM3B4OyB9IH1cbiAgLm1haW5iYXJfbmF2IHVsIGxpIGEge1xuICAgIGNvbG9yOiAjMjYyNjI2O1xuICAgIHBhZGRpbmc6IDE0cHggN3B4O1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAubWFpbmJhcl9uYXYgdWwgbGkgYSB7XG4gICAgICAgIHBhZGRpbmc6IDE0cHggMTBweDsgfSB9XG4gIC5tYWluYmFyX25hdiB1bCBsaTpob3ZlciBhIHtcbiAgICBjb2xvcjogIzlBODM0ODsgfVxuICAubWFpbmJhcl9uYXYgdWwgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiBhIHtcbiAgICBwYWRkaW5nOiAxNHB4IDEycHggMTRweCAycHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAubWFpbmJhcl9uYXYgdWwgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiBhIHtcbiAgICAgICAgcGFkZGluZzogMTRweCAxNXB4IDE0cHggNXB4OyB9IH1cbiAgLm1haW5iYXJfbmF2IHVsIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdcXDIwM0EnO1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDkwZGVnKTsgfVxuICAubWFpbmJhcl9uYXYgdWwgLnN1Yi1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzYzNjM2O1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5tYWluYmFyX25hdiB1bCAuc3ViLW1lbnUgbGksXG4gICAgLm1haW5iYXJfbmF2IHVsIC5zdWItbWVudSBsaSBhIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAzMDBweDsgfVxuICAgIC5tYWluYmFyX25hdiB1bCAuc3ViLW1lbnUgbGkgYSB7XG4gICAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICAgIHBhZGRpbmc6IDEycHggMjBweCAxMnB4IDEycHg7XG4gICAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgIzlBODM0ODtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0OyB9XG4gICAgLm1haW5iYXJfbmF2IHVsIC5zdWItbWVudSBsaTpob3ZlciBhIHtcbiAgICAgIGNvbG9yOiAjOUE4MzQ4O1xuICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrOyB9XG4gIC5tYWluYmFyX25hdiB1bCBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyIC5zdWItbWVudSB7XG4gICAgd2lkdGg6IDMwMHB4OyB9XG5cbi5tYWluX3Rvb2xiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAgNSU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIHdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1haW5fdG9vbGJhciB7XG4gICAgICBwYWRkaW5nOiAwIDMlOyB9IH1cblxuLm5hdmxpbmUge1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5uYXZsaW5lIGEge1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgY29sb3I6ICMwMDMxNDY7IH1cbiAgICAubmF2bGluZSBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjRjc5MjFFOyB9XG4gIC5uYXZsaW5lIGltZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDsgfVxuICAgIC5uYXZsaW5lIGltZzpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAuNTsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAjbWVnYS1tZW51LXdyYXAtbWF4X21lZ2FfbWVudV8xICNtZWdhLW1lbnUtbWF4X21lZ2FfbWVudV8xID4gbGkubWVnYS1tZW51LXRhYmJlZCA+IHVsLm1lZ2Etc3ViLW1lbnUgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsge1xuICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50OyB9IH1cblxudWwubWVnYS1zdWItbWVudSBhLm1lZ2EtbWVudS1saW5rIHtcbiAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzAwMzE0NjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIHVsLm1lZ2Etc3ViLW1lbnUgYS5tZWdhLW1lbnUtbGluazpob3ZlciB7XG4gICAgICBjb2xvcjogI0Y3OTIxRSAhaW1wb3J0YW50OyB9IH1cblxubGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDgwMCAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNtZWdhLW1lbnUtd3JhcC1tYXhfbWVnYV9tZW51XzEgI21lZ2EtbWVudS1tYXhfbWVnYV9tZW51XzEgPiBsaS5tZWdhLW1lbnUtdGFiYmVkID4gdWwubWVnYS1zdWItbWVudSA+IGxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluayB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2MgIWltcG9ydGFudDsgfSB9XG5cbnVsLm1lZ2Etc3ViLW1lbnUgcCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICB1bC5tZWdhLXN1Yi1tZW51IHAgYSBpbWcge1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgICB1bC5tZWdhLXN1Yi1tZW51IHAgYSBpbWc6aG92ZXIge1xuICAgICAgb3BhY2l0eTogLjU7IH1cblxuLmNsaWNrX3RvX2NhbGxfbnVtYmEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEwcHggNSUgMTVweDtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgLmNsaWNrX3RvX2NhbGxfbnVtYmEgYSB7XG4gICAgY29sb3I6ICNGQkQ5MUY7IH1cbiAgLmNsaWNrX3RvX2NhbGxfbnVtYmE6aG92ZXIge1xuICAgIG9wYWNpdHk6IC40OyB9XG4gIC5jbGlja190b19jYWxsX251bWJhOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgdG9wOiA2cHg7XG4gICAgd2lkdGg6IDI2cHg7XG4gICAgaGVpZ2h0OiAyNnB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWFnZXMvaWNvbl9yb3VuZHBob25lLnN2Z1wiKTsgfVxuXG4ubWFpbl9yaWdodCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDMlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWFpbl9yaWdodCB7XG4gICAgICByaWdodDogMyU7IH0gfVxuXG4jZGVza3RvcF9zZWFyY2hfdHJpZ2dhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogNnB4O1xuICB3aWR0aDogMjVweDtcbiAgaGVpZ2h0OiAyNXB4O1xuICBtYXJnaW4tbGVmdDogMjVweDtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1hZ2VzL2ljb25fc2VhcmNoX2Rhcmsuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDgwJTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgI2Rlc2t0b3Bfc2VhcmNoX3RyaWdnYTpob3ZlciB7XG4gICAgb3BhY2l0eTogLjM7IH1cblxuI2Rlc2t0b3Bfc2VhcmNoIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAtMTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltYWdlcy9iZ2ltZ19ibGFua3BhY2thZ2VzMS5qcGdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b207XG4gIGJhY2tncm91bmQtY29sb3I6ICM5QTgzNDg7XG4gIG9wYWNpdHk6IDA7IH1cbiAgI2Rlc2t0b3Bfc2VhcmNoIGgyLCAjZGVza3RvcF9zZWFyY2ggaDMsICNkZXNrdG9wX3NlYXJjaCBoNCB7XG4gICAgY29sb3I6ICMwNjA2MDY7IH1cbiAgI2Rlc2t0b3Bfc2VhcmNoIDo6cGxhY2Vob2xkZXIge1xuICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgY29sb3I6ICM2NDY0NjQ7IH1cbiAgI2Rlc2t0b3Bfc2VhcmNoIFt0eXBlPSd0ZXh0J10sICNkZXNrdG9wX3NlYXJjaCBbdHlwZT0ncGFzc3dvcmQnXSwgI2Rlc2t0b3Bfc2VhcmNoIFt0eXBlPSdkYXRlJ10sICNkZXNrdG9wX3NlYXJjaCBbdHlwZT0nZGF0ZXRpbWUnXSwgI2Rlc2t0b3Bfc2VhcmNoIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLCAjZGVza3RvcF9zZWFyY2ggW3R5cGU9J21vbnRoJ10sICNkZXNrdG9wX3NlYXJjaCBbdHlwZT0nd2VlayddLCAjZGVza3RvcF9zZWFyY2ggW3R5cGU9J2VtYWlsJ10sICNkZXNrdG9wX3NlYXJjaCBbdHlwZT0nbnVtYmVyJ10sICNkZXNrdG9wX3NlYXJjaCBbdHlwZT0nc2VhcmNoJ10sICNkZXNrdG9wX3NlYXJjaCBbdHlwZT0ndGVsJ10sICNkZXNrdG9wX3NlYXJjaCBbdHlwZT0ndGltZSddLCAjZGVza3RvcF9zZWFyY2ggW3R5cGU9J3VybCddLCAjZGVza3RvcF9zZWFyY2ggW3R5cGU9J2NvbG9yJ10sICNkZXNrdG9wX3NlYXJjaCB0ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgI2Rlc2t0b3Bfc2VhcmNoIGRpdiB7XG4gICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAjZGVza3RvcF9zZWFyY2ggLnNlYXJjaGJ0dG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTgxODE4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWFnZXMvaWNvbl9zZWFyY2guc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuYm9keS5zZWFyY2hhY3RpdmUsXG5odG1sLnNlYXJjaGFjdGl2ZSB7XG4gIG92ZXJmbG93LXk6IGhpZGRlbiAhaW1wb3J0YW50OyB9XG5cbiNkZXNrdG9wX3NlYXJjaC5zZWFyY2hhY3RpdmUge1xuICB6LWluZGV4OiA5OTk5OTk5OTsgfVxuXG4ubmF2LWxpbmtzIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuXG4vKiBOQVZJR0FUSU9OIFNUWUxFUyAqL1xuI21vYmlsZV9uYXZfdHJpZ2dhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB6LWluZGV4OiA5OTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAxMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgI21vYmlsZV9uYXZfdHJpZ2dhIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uaGVscHJfdGV4dCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMnB4O1xuICBjb2xvcjogIzk5OTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzIGVhc2UtaW4tb3V0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmhlbHByX3RleHQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cblxuLmNsb3NpbmdfdGltZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogOTk5OTtcbiAgdG9wOiAxMnB4O1xuICByaWdodDogNCU7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuY2xvc2luZ190aW1lIHtcbiAgICB0b3A6IDMwcHg7IH0gfVxuXG4ubWFpbmxpbmVyMSxcbi5tYWlubGluZXIyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBoZWlnaHQ6IDNweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7IH1cblxuLm1haW5saW5lcjEge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtNDVkZWcpOyB9XG5cbi5tYWlubGluZXIyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTsgfVxuXG4uY2xvc2luZ190aW1lOmhvdmVyIC5tYWlubGluZXIxLFxuLmNsb3NpbmdfdGltZTpob3ZlciAubWFpbmxpbmVyMiB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMCk7IH1cblxuLm1vYmlsZV9uYXZfY2xvc2VyIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4uYnVyZ2VyX3RpbWUge1xuICB3aWR0aDogMzVweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBwYWRkaW5nOiAwO1xuICB0b3A6IDJweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uYmFyMSxcbi5iYXIyLFxuLmJhcjMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzcHg7XG4gIGxlZnQ6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIzMjMyMztcbiAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJhcjEsXG4gICAgLmJhcjIsXG4gICAgLmJhcjMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfSB9XG5cbi5iYXIxIHtcbiAgdG9wOiAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG5cbi5iYXIyIHtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7IH1cblxuLmJhcjMge1xuICBib3R0b206IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cblxuI21vYmlsZV9uYXZfdHJpZ2dhOmhvdmVyIC5iYXIxLFxuLmJ1cmdlcl90aW1lLm5hdmFjdGl2ZSAuYmFyMSB7XG4gIGxlZnQ6IDQwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOyB9XG5cbiNtb2JpbGVfbmF2X3RyaWdnYTpob3ZlciAuYmFyMixcbi5idXJnZXJfdGltZS5uYXZhY3RpdmUgLmJhcjIge1xuICBsZWZ0OiA2MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsgfVxuXG4jbW9iaWxlX25hdl90cmlnZ2E6aG92ZXIgLmJhcjMsXG4uYnVyZ2VyX3RpbWUubmF2YWN0aXZlIC5iYXIzIHtcbiAgbGVmdDogNDAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7IH1cblxuLm9mZmNhbl9vdmVybGF5IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDk5OTA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMzIzMjM7XG4gIG9wYWNpdHk6IDA7IH1cblxuLm9mZmNhbl9vdmVybGF5Lm5hdmFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbiNvZmZjYW5fbmF2X3RyaWdnZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdpZHRoOiA0N3B4O1xuICBoZWlnaHQ6IDM4cHg7IH1cblxuYm9keSAubmF2YWN0aXZlIHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuOyB9XG5cbmh0bWwge1xuICBvdmVyZmxvdy14OiBoaWRkZW47IH1cblxuLm9mZmNhbl9zaXRlX3dyYXBwZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcmlnaHQ6IDA7IH1cblxuLm9mZmNhbl9uYXZfd3JhcHBlcixcbi5vZmZjYW5fc2l0ZV93cmFwcGVyIHtcbiAgdHJhbnNpdGlvbjogYWxsIC40czsgfVxuXG4ub2ZmY2FuX3NpdGVfd3JhcHBlci5uYXZhY3RpdmUge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbmJvZHkuYWRtaW4tYmFyIC5vZmZjYW5fbmF2X3dyYXBwZXIge1xuICB0b3A6IDMycHggIWltcG9ydGFudDsgfVxuXG4ub2ZmY2FuX25hdl93cmFwcGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk5OTk7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IC01MDBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBwYWRkaW5nOiAwIDAgODBweDtcbiAgYmFja2dyb3VuZDogIzlBODM0ODsgfVxuXG4ub2ZmY2FuX25hdl93cmFwcGVyIDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzY0NjQ2NDtcbiAgZm9udC1zaXplOiAuOXJlbTsgfVxuXG4ub2ZmY2FuX25hdl93cmFwcGVyLm5hdmFjdGl2ZSB7XG4gIHJpZ2h0OiAwOyB9XG5cbi5vZmZjYW5fbmF2X3dyYXBwZXIgLm1lbnUgLmlzLWFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDApO1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0OyB9XG5cbi5vZmZjYW5fbmF2X3dyYXBwZXIgLm1lbnUgLmlzLWFjdGl2ZSA+IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cblxuLm9mZmNhbl9uYXZfd3JhcHBlciAuY2xvc2luZ190aW1lIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMjBweCAhaW1wb3J0YW50O1xuICByaWdodDogMjBweCAhaW1wb3J0YW50OyB9XG5cbi5vZmZjYW5fbmF2X3dyYXBwZXIgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLm9mZmNhbl9uYXZfd3JhcHBlciB1bCBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLm9mZmNhbl9uYXZfd3JhcHBlciB1bCBsaSBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsZXR0ZXItc3BhY2luZzogM3B4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZzogMThweCAxM3B4IDE4cHggMzBweDtcbiAgdHJhbnNpdGlvbjogYWxsIC40cyBlYXNlLWluLW91dDsgfVxuXG4ub2ZmY2FuX25hdl93cmFwcGVyIHVsIGxpIGE6aG92ZXIge1xuICBjb2xvcjogI2RlZGVkZTtcbiAgY29sb3I6ICNGQkQ5MUY7IH1cblxuLm9mZmNhbl9uYXZfd3JhcHBlciB1bC5zdWItbWVudSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNCk7IH1cblxuLm9mZmNhbl9uYXZfd3JhcHBlciB1bC5zdWItbWVudTpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogOHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDsgfVxuXG4ub2ZmY2FuX25hdl93cmFwcGVyIHVsLnN1Yi1tZW51IGE6aG92ZXIge1xuICBjb2xvcjogI2RlZGVkZTsgfVxuXG4ub2ZmY2FuX25hdl93cmFwcGVyIHVsLnN1Yi1tZW51IGxpIGEge1xuICBwYWRkaW5nOiAxOHB4IDEzcHggMThweCA0MHB4ICFpbXBvcnRhbnQ7XG4gIGxldHRlci1zcGFjaW5nOiAxLjVweDtcbiAgY29sb3I6ICNmOGY4Zjg7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBvcGFjaXR5OiAuODU7IH1cblxuLnN1YnNldF90b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjMDAwO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb246IGFsbCAuNHMgZWFzZTsgfVxuXG4uc3Vic2V0X3RvZ2dsZSB7XG4gIHdpZHRoOiA3MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgdG9wOiAxcHg7XG4gIHJpZ2h0OiAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICBiYWNrZ3JvdW5kOiB1cmwoL2ltYWdlcy9tb3JlX2ljb24ucG5nKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMjVweCAyNXB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIG9wYWNpdHk6IC44OyB9XG5cbi5zdWJzZXRfdG9nZ2xlLm9wZW5lZCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zaXRpb246IGFsbCAuNHMgZWFzZTsgfVxuXG4jb2ZmY2FuX2Nsb3NlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2lkdGg6IDM1cHg7XG4gIGhlaWdodDogMzVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA5OTtcbiAgdG9wOiAxNnB4O1xuICByaWdodDogMTVweDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlOyB9XG5cbiNvZmZjYW5fY2xvc2VyLm5hdmFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZTsgfVxuXG4ub2ZmY2FuX3NlYXJjaCB7XG4gIHBhZGRpbmc6IDAgNSU7XG4gIG1hcmdpbjogMjBweCAwIDEwcHg7IH1cbiAgLm9mZmNhbl9zZWFyY2ggaW5wdXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAub2ZmY2FuX3NlYXJjaCBpbnB1dDpmb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIC5vZmZjYW5fc2VhcmNoIC5zZWFyY2hidHRuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE4MTgxODtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1hZ2VzL2ljb25fc2VhcmNoLnN2Z1wiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDIwJTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAub2ZmY2FuX3NlYXJjaCAuc2VhcmNoYnR0biB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjUlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDFweCkge1xuICAub2ZmY2FuX3NpdGVfd3JhcHBlci5uYXZhY3RpdmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAwcHgpOyB9XG4gIC5vZmZjYW5fbmF2X3dyYXBwZXIgdWwgbGk6aG92ZXIgYSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cyBlYXNlOyB9XG4gIC5vZmZjYW5fbmF2X3dyYXBwZXIgdWwgbGk6aG92ZXI6YmVmb3JlIHtcbiAgICBsZWZ0OiAtNDNweDtcbiAgICB0cmFuc2l0aW9uOiAuMnMgZWFzZTtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAuMnM7IH1cbiAgLm9mZmNhbl9uYXZfd3JhcHBlciB7XG4gICAgd2lkdGg6IDUwMHB4OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAub2ZmY2FuX25hdl93cmFwcGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICByaWdodDogLTEwMCU7IH1cbiAgLm9mZmNhbl9zaXRlX3dyYXBwZXIubmF2YWN0aXZlIHtcbiAgICByaWdodDogMDsgfSB9XG5cbi8qICBQQUdFIEhFQURFUiBTVFlMRVMgICovXG4uZW1wdHlfaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlZGVkZTsgfVxuXG5zZWN0aW9uLmVtcHR5X2hlYWRlciB7XG4gIHBhZGRpbmc6IDE0MHB4IDAgMTBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIHNlY3Rpb24uZW1wdHlfaGVhZGVyIHtcbiAgICAgIHBhZGRpbmc6IDIwMHB4IDAgMTBweDsgfSB9XG5cbi5wYWdlX2hlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDE3NXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzMTQ2O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAxMjBweCA2JSAwOyB9XG4gIC5wYWdlX2hlYWRlciAuaW1nYmcge1xuICAgIG9wYWNpdHk6IC4zOyB9XG4gIC5wYWdlX2hlYWRlcjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0I4RTFEQztcbiAgICBib3gtc2hhZG93OiAwIC0zcHggOHB4IHJnYmEoMCwgMCwgMCwgMC40KTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wYWdlX2hlYWRlciB7XG4gICAgICBtaW4taGVpZ2h0OiAyNTBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2VfaGVhZGVyIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDM1MHB4O1xuICAgICAgcGFkZGluZzogMTgwcHggNSUgMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucGFnZV9oZWFkZXIge1xuICAgICAgbWluLWhlaWdodDogNDIwcHg7IH0gfVxuXG4uc2xpbV9oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzMTQ2O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAxNDBweCA2JSAwOyB9XG4gIC5zbGltX2hlYWRlciAuaW1nYmcge1xuICAgIG9wYWNpdHk6IC4yO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3AgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zbGltX2hlYWRlciB7XG4gICAgICBwYWRkaW5nOiAyMTBweCA1JSAwO1xuICAgICAgbWluLWhlaWdodDogMjUwcHg7IH0gfVxuICAuc2xpbV9oZWFkZXIgaDEge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnNsaW1faGVhZGVyOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogNTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDhweDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjhFMURDO1xuICAgIGJveC1zaGFkb3c6IDAgLTNweCA4cHggcmdiYSgwLCAwLCAwLCAwLjQpOyB9XG5cbi5mZWF0dXJlX2Jhbm5lcmltZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAyNjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogYXF1YTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlciAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDNweCBzb2xpZCAjOTc5Nzk3O1xuICBtYXJnaW4tYm90dG9tOiAyLjZyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZV9iYW5uZXJpbWcge1xuICAgICAgaGVpZ2h0OiAyMDBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZlYXR1cmVfYmFubmVyaW1nIHtcbiAgICAgIGhlaWdodDogMjI1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmZlYXR1cmVfYmFubmVyaW1nIHtcbiAgICAgIGhlaWdodDogMjUwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmZlYXR1cmVfYmFubmVyaW1nIHtcbiAgICAgIGhlaWdodDogMzAwcHg7IH0gfVxuXG4uaW1nYmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlciAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0ICFpbXBvcnRhbnQ7IH1cblxuLyogIEhPTUVQQUdFIFNVUEVSIFNUWUxFUyAgKi9cbi5ob21laGVybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICMwMDI1MzI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XG4gIHBhZGRpbmc6IDE0MHB4IDclIDE0MHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmhvbWVoZXJvIHtcbiAgICAgIHBhZGRpbmc6IDE0MHB4IDYlIDE2MHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaG9tZWhlcm8ge1xuICAgICAgcGFkZGluZzogMTYwcHggOCUgMTYwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmhvbWVoZXJvIHtcbiAgICAgIHBhZGRpbmc6IDE3MHB4IDEwJSAxODBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuaG9tZWhlcm8ge1xuICAgICAgcGFkZGluZzogMTgwcHggMTIlIDIwMHB4OyB9IH1cbiAgLmhvbWVoZXJvIGgxIHtcbiAgICB0ZXh0LXNoYWRvdzogLTFweCAtMXB4IDAgI2ZmZjsgfVxuICAuaG9tZWhlcm86YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA1O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogOHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNCOEUxREM7XG4gICAgYm94LXNoYWRvdzogMCAtM3B4IDhweCByZ2JhKDAsIDAsIDAsIDAuNCk7IH1cbiAgLmhvbWVoZXJvIC5pbWdiZyB7XG4gICAgb3BhY2l0eTogLjg1OyB9XG5cbi50aWxlX3JhcHBhIHtcbiAgbWFyZ2luLXRvcDogLTgwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudGlsZV9yYXBwYSB7XG4gICAgICBtYXJnaW4tdG9wOiAtOTBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRpbGVfcmFwcGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIG1hcmdpbi10b3A6IC0xMDBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAudGlsZV9yYXBwYSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMTIwcHg7IH0gfVxuXG4udGlsZV9vdXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDMxNDY7XG4gIGJvcmRlcjogNnB4IHNvbGlkICM5Nzk3OTc7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudGlsZV9vdXRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDMyJTsgfSB9XG5cbi50aWxlX2lubmVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI1O1xuICBwYWRkaW5nOiAzMHB4OyB9XG4gIC50aWxlX2lubmVyIHAge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC50aWxlX2lubmVyIHAge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50aWxlX2lubmVyIHAge1xuICAgICAgICBmb250LXNpemU6IC45cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAudGlsZV9pbm5lciBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtOyB9IH1cbiAgLnRpbGVfaW5uZXIgaDIge1xuICAgIGZvbnQtZmFtaWx5OiAndHJhZGUtZ290aGljLW5leHQtY29tcHJlc3NlZCcsIHNhbnMtc2VyaWY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LXNoYWRvdzogMXB4IDJweCA2cHggcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAjQjhFMURDO1xuICAgIGZvbnQtc2l6ZTogMS44cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC50aWxlX2lubmVyIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnRpbGVfaW5uZXIgaDIge1xuICAgICAgICBmb250LXNpemU6IDIuOHZ3OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAudGlsZV9pbm5lciBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi40dnc7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC50aWxlX2lubmVyIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAydnc7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnRpbGVfaW5uZXIge1xuICAgICAgcGFkZGluZzogNDBweDsgfSB9XG5cbi50aWxlX2ltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICB3aWR0aDogNTAlO1xuICBoZWlnaHQ6IDkwJTtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgb3BhY2l0eTogLjE1O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgdG9wICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50aWxlX2ltYWdlIHtcbiAgICAgIHdpZHRoOiA2MCU7XG4gICAgICBoZWlnaHQ6IDU1JTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAudGlsZV9pbWFnZSB7XG4gICAgICB3aWR0aDogNjUlO1xuICAgICAgaGVpZ2h0OiA2MCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnRpbGVfaW1hZ2Uge1xuICAgICAgd2lkdGg6IDYwJTtcbiAgICAgIGhlaWdodDogNTUlOyB9IH1cblxuLmxpbmtfaW1hZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA0MCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHBpbms7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXIgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3AgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCAhaW1wb3J0YW50OyB9XG5cbi5saW5rUkFSUiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAubGlua1JBUlI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcgXFwyMDNhJztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICNCOEUxREM7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdG9wOiAxcHg7XG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0OyB9XG4gIC5saW5rUkFSUjpob3ZlcjphZnRlciB7XG4gICAgbGVmdDogNXB4OyB9XG5cbi5pbnRyb19yYXBwYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NDY0NjQ7XG4gIHBhZGRpbmc6IDYwcHggNSU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmludHJvX3JhcHBhIGgxLCAuaW50cm9fcmFwcGEgaDIsIC5pbnRyb19yYXBwYSBoMyB7XG4gICAgZm9udC1mYW1pbHk6ICd0cmFkZS1nb3RoaWMtbmV4dC1jb21wcmVzc2VkJywgc2Fucy1zZXJpZjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtc2hhZG93OiAycHggMnB4IDZweCByZ2JhKDAsIDAsIDAsIDAuNik7IH1cbiAgLmludHJvX3JhcHBhIC5pbWdiZyB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgbWl4LWJsZW5kLW1vZGU6IG92ZXJsYXk7XG4gICAgb3BhY2l0eTogLjQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaW50cm9fcmFwcGEge1xuICAgICAgcGFkZGluZzogODBweCA2JTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmludHJvX3JhcHBhIHtcbiAgICAgIHBhZGRpbmc6IDgwcHggNiU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmludHJvX3JhcHBhIHtcbiAgICAgIHBhZGRpbmc6IDEwMHB4IDglOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5pbnRyb19yYXBwYSB7XG4gICAgICBwYWRkaW5nOiAxMzBweCAxMCU7IH0gfVxuXG4uaW50cm9fY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaW50cm9fY29udGVudCB7XG4gICAgICB3aWR0aDogNjglOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5pbnRyb19jb250ZW50IHtcbiAgICAgIHdpZHRoOiA2NCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmludHJvX2NvbnRlbnQge1xuICAgICAgd2lkdGg6IDYwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmludHJvX2NvbnRlbnQgcCB7XG4gICAgICB3aWR0aDogNjAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5pbnRyb19jb250ZW50IHAge1xuICAgICAgZm9udC1zaXplOiAxLjFyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmludHJvX2NvbnRlbnQgcCB7XG4gICAgICBmb250LXNpemU6IDEuMnJlbTsgfSB9XG4gIC5pbnRyb19jb250ZW50IGgxLCAuaW50cm9fY29udGVudCBoMiwgLmludHJvX2NvbnRlbnQgaDMge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbi1ib3R0b206IDIuMnJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaW50cm9fY29udGVudCBoMSwgLmludHJvX2NvbnRlbnQgaDIsIC5pbnRyb19jb250ZW50IGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjZyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaW50cm9fY29udGVudCBoMSwgLmludHJvX2NvbnRlbnQgaDIsIC5pbnRyb19jb250ZW50IGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjRyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5pbnRyb19jb250ZW50IGgxLCAuaW50cm9fY29udGVudCBoMiwgLmludHJvX2NvbnRlbnQgaDMge1xuICAgICAgICBmb250LXNpemU6IDIuOHJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmludHJvX2NvbnRlbnQgaDEsIC5pbnRyb19jb250ZW50IGgyLCAuaW50cm9fY29udGVudCBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMy4ycmVtOyB9IH1cblxuLmxlZnRncmFkX292ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogNjQlO1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI2LCAyNiwgMjYsIDAuOSkgMCUsIHJnYmEoMjYsIDI2LCAyNiwgMCkgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjYsIDI2LCAyNiwgMC45KSAwJSwgcmdiYSgyNiwgMjYsIDI2LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI2LCAyNiwgMjYsIDAuOSkgMCUsIHJnYmEoMjYsIDI2LCAyNiwgMCkgMTAwJSk7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjZTYxYTFhMWEnLCBlbmRDb2xvcnN0cj0nIzAwMWExYTFhJyxHcmFkaWVudFR5cGU9MSApO1xuICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gIG9wYWNpdHk6IC44NTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubGVmdHJ1bGVkIHtcbiAgICBib3JkZXItbGVmdDogNnB4IHNvbGlkICMwMEI1RUY7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4OyB9IH1cblxuLmJyYW5kX292ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDU7XG4gIGJvdHRvbTogLTMwcHg7XG4gIHJpZ2h0OiAtMzBweDtcbiAgd2lkdGg6IDg1MHB4O1xuICBoZWlnaHQ6IDQwMHB4O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltYWdlcy9EQU5LT0ZGX2xvZ28uc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IHRvcDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBvcGFjaXR5OiAuMTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5icmFuZF9vdmVybGF5IHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC43NSk7XG4gICAgICByaWdodDogLTQwcHg7XG4gICAgICBib3R0b206IC01MHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYnJhbmRfb3ZlcmxheSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgICByaWdodDogLTYwcHg7XG4gICAgICBib3R0b206IC01MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5icmFuZF9vdmVybGF5IHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICByaWdodDogLTQwcHg7XG4gICAgICBib3R0b206IC02MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5icmFuZF9vdmVybGF5IHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgIHJpZ2h0OiAtNjBweDtcbiAgICAgIGJvdHRvbTogLTcwcHg7IH0gfVxuXG4vKiBCQU5ORVIgQUQgU1RZTEVTICovXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYmFubmVyYmxvY2tfMnVwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfSB9XG5cbi5kYXZpZGJhbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiA0MHB4IDglO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNTQyNDk7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBvdmVybGF5O1xuICBib3JkZXItdG9wOiA4cHggc29saWQgI0I4RTFEQztcbiAgYm9yZGVyLWJvdHRvbTogOHB4IHNvbGlkICNCOEUxREM7XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgLmRhdmlkYmFubmVyOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGE0MzVhOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmRhdmlkYmFubmVyIHtcbiAgICAgIHdpZHRoOiA0OCU7XG4gICAgICBib3JkZXItdG9wOiAxMHB4IHNvbGlkICNCOEUxREM7XG4gICAgICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkICNCOEUxREM7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5kYXZpZGJhbm5lciB7XG4gICAgICB3aWR0aDogNDklO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDUlOyB9XG4gICAgICAuZGF2aWRiYW5uZXI6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDExNSU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmRhdmlkYmFubmVyIHtcbiAgICAgIHBhZGRpbmc6IDUwcHggOCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5kYXZpZGJhbm5lciB7XG4gICAgICBwYWRkaW5nOiA2MHB4IDglOyB9IH1cblxuLm1hdHJpeCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWFnZXMvYmFubmVyaW1nX21hdHJpeC5qcGdcIik7IH1cblxuLmNvbXBhcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1hZ2VzL2Jhbm5lcmltZ19jb21wYXJpc29uLmpwZ1wiKTsgfVxuXG4uYmFubmVydHh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyNTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1zaGFkb3c6IDAgMnB4IDZweCByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGZvbnQtc2l6ZTogMS40cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJhbm5lcnR4dCB7XG4gICAgICBmb250LXNpemU6IDIuMnZ3OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYmFubmVydHh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMnZ3OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5iYW5uZXJ0eHQge1xuICAgICAgZm9udC1zaXplOiAxLjh2dzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuYmFubmVydHh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtOyB9IH1cblxuLmJpZ29sZWJhbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogNDBweCAyNXB4O1xuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwgMCwgMCwgMC45KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzE0NjtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0OyB9XG4gIC5iaWdvbGViYW5uZXI6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMzdhYjI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYmlnb2xlYmFubmVyIHtcbiAgICAgIHBhZGRpbmc6IDQ1cHggNSU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5iaWdvbGViYW5uZXIge1xuICAgICAgcGFkZGluZzogNDBweCA2JTtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5iaWdvbGViYW5uZXIge1xuICAgICAgcGFkZGluZzogNTBweCA2JTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuYmlnb2xlYmFubmVyIHtcbiAgICAgIHBhZGRpbmc6IDYwcHggNiU7IH0gfVxuICAuYmlnb2xlYmFubmVyIC5pbWdiZyB7XG4gICAgb3BhY2l0eTogLjM1O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgfVxuICAuYmlnb2xlYmFubmVyIGgyLCAuYmlnb2xlYmFubmVyIGgzLCAuYmlnb2xlYmFubmVyIGg0IHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW4tYm90dG9tOiAuN3JlbTtcbiAgICBjb2xvcjogI0I4RTFEQzsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYmlnb2xlYmFubmVyIGgyLCAuYmlnb2xlYmFubmVyIGgzLCAuYmlnb2xlYmFubmVyIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYmlnb2xlYmFubmVyIGgyLCAuYmlnb2xlYmFubmVyIGgzLCAuYmlnb2xlYmFubmVyIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAyLjZ2dzsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmJpZ29sZWJhbm5lciBoMiwgLmJpZ29sZWJhbm5lciBoMywgLmJpZ29sZWJhbm5lciBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi41dnc7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5iaWdvbGViYW5uZXIgaDIsIC5iaWdvbGViYW5uZXIgaDMsIC5iaWdvbGViYW5uZXIgaDQge1xuICAgICAgICBmb250LXNpemU6IDIuMnJlbTsgfSB9XG5cbi5iaWdtZXNzYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyNTtcbiAgd2lkdGg6IDY0JTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5iaWdtZXNzYWdlIHtcbiAgICAgIHdpZHRoOiA3MCU7IH0gfVxuXG4ubWFwbWFya2VyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxNTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogNDQlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAtMjIlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1hZ2VzL21hcG1hcmtlci5wbmdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b207IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWFwbWFya2VyIHtcbiAgICAgIHdpZHRoOiA0NiU7XG4gICAgICByaWdodDogLTUlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWFwbWFya2VyIHtcbiAgICAgIHdpZHRoOiA0NCU7XG4gICAgICByaWdodDogLTUlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5tYXBtYXJrZXIge1xuICAgICAgd2lkdGg6IDM4JTtcbiAgICAgIHJpZ2h0OiAtMyU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLm1hcG1hcmtlciB7XG4gICAgICB3aWR0aDogMzMlO1xuICAgICAgcmlnaHQ6IC0xJTsgfSB9XG5cbi5wdW1weW91dXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE1O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiA4MCU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IC0yNiU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWFnZXMvYmFubmVycHVtcC5wbmdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b207IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucHVtcHlvdXVwIHtcbiAgICAgIHdpZHRoOiA0NiU7XG4gICAgICByaWdodDogLTUlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucHVtcHlvdXVwIHtcbiAgICAgIHdpZHRoOiA0NCU7XG4gICAgICByaWdodDogLTUlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5wdW1weW91dXAge1xuICAgICAgd2lkdGg6IDM4JTtcbiAgICAgIHJpZ2h0OiAtMyU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnB1bXB5b3V1cCB7XG4gICAgICB3aWR0aDogMzMlO1xuICAgICAgcmlnaHQ6IC0xJTsgfSB9XG5cbi8qIEFDQ09SRElPTiBTVFlMRVMgKi9cbi5hY2NvcmQge1xuICBtYXJnaW46IDYwcHggYXV0bzsgfVxuXG4uYWNjb3JkX3RyaWdnYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1mYW1pbHk6ICd0cmFkZS1nb3RoaWMtbmV4dC1jb21wcmVzc2VkJywgc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGNvbG9yOiAjMDAzMTQ2O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmVmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTc5Nzk3O1xuICBwYWRkaW5nOiAxMnB4IDIwcHggMTRweCA2MHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgLmFjY29yZF90cmlnZ2E6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkN2Q3ZDc7IH1cbiAgLmFjY29yZF90cmlnZ2E6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTA7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDIycHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWFnZXMvYW5nbGUtdXAuc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0OyB9XG5cbi5hY2NvcmRfdHJpZ2dhLm9wZW46YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgwZGVnKTsgfVxuXG4uYW5zd2VyX291dGVyX3JhcHBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDMxNDY7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5hbnN3ZXJfaW5uZXJfcmFwcGEge1xuICBwYWRkaW5nOiAyNXB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFuc3dlcl9pbm5lcl9yYXBwYSB7XG4gICAgICBwYWRkaW5nOiA0MHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYW5zd2VyX2lubmVyX3JhcHBhIHtcbiAgICAgIHBhZGRpbmc6IDUwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmFuc3dlcl9pbm5lcl9yYXBwYSB7XG4gICAgICBwYWRkaW5nOiA2MHB4OyB9IH1cbiAgLmFuc3dlcl9pbm5lcl9yYXBwYSBoMSwgLmFuc3dlcl9pbm5lcl9yYXBwYSBoMiwgLmFuc3dlcl9pbm5lcl9yYXBwYSBoMywgLmFuc3dlcl9pbm5lcl9yYXBwYSBoNCwgLmFuc3dlcl9pbm5lcl9yYXBwYSBoNSwgLmFuc3dlcl9pbm5lcl9yYXBwYSBoNiB7XG4gICAgY29sb3I6ICNCOEUxREM7IH1cblxuLyogTU8gU1RZTEVTICovXG4uYXBwZm9ybV9yYXBwYSB7XG4gIHBhZGRpbmc6IDMwcHggNSU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYWVhZWE7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLmFwcGZvcm1fcmFwcGEgW3R5cGU9J3RleHQnXSwgLmFwcGZvcm1fcmFwcGEgW3R5cGU9J3Bhc3N3b3JkJ10sIC5hcHBmb3JtX3JhcHBhIFt0eXBlPSdkYXRlJ10sIC5hcHBmb3JtX3JhcHBhIFt0eXBlPSdkYXRldGltZSddLCAuYXBwZm9ybV9yYXBwYSBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgLmFwcGZvcm1fcmFwcGEgW3R5cGU9J21vbnRoJ10sIC5hcHBmb3JtX3JhcHBhIFt0eXBlPSd3ZWVrJ10sIC5hcHBmb3JtX3JhcHBhIFt0eXBlPSdlbWFpbCddLCAuYXBwZm9ybV9yYXBwYSBbdHlwZT0nbnVtYmVyJ10sIC5hcHBmb3JtX3JhcHBhIFt0eXBlPSdzZWFyY2gnXSwgLmFwcGZvcm1fcmFwcGEgW3R5cGU9J3RlbCddLCAuYXBwZm9ybV9yYXBwYSBbdHlwZT0ndGltZSddLCAuYXBwZm9ybV9yYXBwYSBbdHlwZT0ndXJsJ10sIC5hcHBmb3JtX3JhcHBhIFt0eXBlPSdjb2xvciddIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5hcHBmb3JtX3JhcHBhIGZvcm0gcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogLjhlbTsgfVxuXG4ubGlua190aWxlX3JhcHBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpbmtfdGlsZV9yYXBwYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZ3JvdzogMTsgfSB9XG5cbi5saW5rX3RpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAzMHB4O1xuICBtYXJnaW46IDAgMCAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjhFMURDO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjc5MjFFO1xuICBib3JkZXI6IDRweCBzb2xpZCAjMDAzMTQ2O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICBmbGV4LWdyb3c6IDE7IH1cbiAgLmxpbmtfdGlsZSAuaW1nYmcge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IC4zO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlua190aWxlIHtcbiAgICAgIG1hcmdpbjogMCA4cHggMjVweDtcbiAgICAgIHdpZHRoOiA0NiU7XG4gICAgICBoZWlnaHQ6IDE2MHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubGlua190aWxlIHtcbiAgICAgIHdpZHRoOiAzMSU7XG4gICAgICBoZWlnaHQ6IDE5MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5saW5rX3RpbGUge1xuICAgICAgaGVpZ2h0OiAyMTBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAubGlua190aWxlIHtcbiAgICAgIHdpZHRoOiAyMiU7XG4gICAgICBoZWlnaHQ6IDI0MHB4OyB9IH1cblxuLmxpbmtfdGV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjU7XG4gIGZvbnQtZmFtaWx5OiAndHJhZGUtZ290aGljLW5leHQtY29tcHJlc3NlZCcsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LXNoYWRvdzogMnB4IC0ycHggIzAwMzE0NjtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGZvbnQtc2l6ZTogNi4ydnc7XG4gIGZvbnQtc2l6ZTogMnJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saW5rX3RleHQge1xuICAgICAgZm9udC1zaXplOiAzLjR2dzsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxpbmtfdGV4dCB7XG4gICAgICBmb250LXNpemU6IDN2dzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAubGlua190ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMi42dnc7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmxpbmtfdGV4dCB7XG4gICAgICBmb250LXNpemU6IDJ2dzsgfSB9XG5cbi5saW5rX3RpbGU6aG92ZXIgLmltZ2JnIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICBvcGFjaXR5OiAuNTsgfVxuXG4vKiBTSE9QIE1PRElGSUNBVElPTlMgKi9cbi5wcm9kdWN0X3RvcF9zZWN0aW9uIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uc2luZ2xlLXByb2R1Y3QgaHIge1xuICBtYXJnaW46IDFyZW0gYXV0bzsgfVxuXG5oMS5saXRfcHJvZHVjdF90aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiAndHJhZGUtZ290aGljLW5leHQtY29tcHJlc3NlZCcsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjMDAzMTQ2O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGZvbnQtc2l6ZTogMnJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGgxLmxpdF9wcm9kdWN0X3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMi40cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBoMS5saXRfcHJvZHVjdF90aXRsZSB7XG4gICAgICBmb250LXNpemU6IDJyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgaDEubGl0X3Byb2R1Y3RfdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyLjJyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgaDEubGl0X3Byb2R1Y3RfdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyLjRyZW07IH0gfVxuXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgcC5wcmljZSwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IHNwYW4ucHJpY2Uge1xuICBjb2xvcjogIzAwQjVFRjtcbiAgZm9udC1zaXplOiAxLjJyZW07IH1cblxucCNicmVhZGNydW1icyB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogLjlyZW07XG4gIGNvbG9yOiAjOEVCOEIzO1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIHAjYnJlYWRjcnVtYnMge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7IH0gfVxuICBwI2JyZWFkY3J1bWJzIGEge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICMwMDMxNDY7IH1cblxuaDIud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSB7XG4gIGxldHRlci1zcGFjaW5nOiAwcHg7IH1cblxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIHtcbiAgbWFyZ2luOiAyNXB4IGF1dG8gNDBweCAhaW1wb3J0YW50O1xuICBjb2x1bW4tZ2FwOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9IH1cbiAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Qge1xuICAgIG1hcmdpbjogMCAxJSAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Qge1xuICAgICAgICB3aWR0aDogMzElOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Qge1xuICAgICAgICB3aWR0aDogMjMlOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCB7XG4gICAgICAgIHdpZHRoOiAxOCU7IH0gfVxuXG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBhIHtcbiAgY29sb3I6ICM1NjY4NzE7IH1cblxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLmJ1dHRvbiwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwQjVFRjtcbiAgcGFkZGluZzogLjZlbSAxZW0gLjhlbTsgfVxuXG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBhIGltZyB7XG4gIG1hcmdpbjogMCAwIC41ZW07IH1cblxuLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeV9fd3JhcHBlciB7XG4gIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCAjOEVCOEIzOyB9XG5cbi53b29jb21tZXJjZS1wcm9kdWN0LWRldGFpbHNfX3Nob3J0LWRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMS42cmVtOyB9XG5cbi53b29jb21tZXJjZSAucmVsYXRlZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLndvb2NvbW1lcmNlIC5yZWxhdGVkIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QsXG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCxcbi5jdXN0b21fcHJvZHVjdF9ncmlkIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QsXG4uaG9tZV9mZWF0dXJlZF9wcm9kdWN0cyB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDIwMHB4O1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgMCAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLndvb2NvbW1lcmNlIC5yZWxhdGVkIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgaW1nLFxuICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBpbWcsXG4gIC5jdXN0b21fcHJvZHVjdF9ncmlkIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgaW1nLFxuICAuaG9tZV9mZWF0dXJlZF9wcm9kdWN0cyB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgLndvb2NvbW1lcmNlIC5yZWxhdGVkIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Q6aG92ZXIgaDIud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSxcbiAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Q6aG92ZXIgaDIud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSxcbiAgLmN1c3RvbV9wcm9kdWN0X2dyaWQgdWwucHJvZHVjdHMgbGkucHJvZHVjdDpob3ZlciBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLFxuICAuaG9tZV9mZWF0dXJlZF9wcm9kdWN0cyB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0OmhvdmVyIGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUge1xuICAgIGNvbG9yOiAjRjc5MjFFOyB9XG4gICAgLndvb2NvbW1lcmNlIC5yZWxhdGVkIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Q6aG92ZXIgaDIud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZTphZnRlcixcbiAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdDpob3ZlciBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlOmFmdGVyLFxuICAgIC5jdXN0b21fcHJvZHVjdF9ncmlkIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Q6aG92ZXIgaDIud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZTphZnRlcixcbiAgICAuaG9tZV9mZWF0dXJlZF9wcm9kdWN0cyB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0OmhvdmVyIGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGU6YWZ0ZXIge1xuICAgICAgY29sb3I6ICNCOEUxREM7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7IH1cbiAgLndvb2NvbW1lcmNlIC5yZWxhdGVkIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Q6aG92ZXIgaW1nLFxuICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdDpob3ZlciBpbWcsXG4gIC5jdXN0b21fcHJvZHVjdF9ncmlkIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Q6aG92ZXIgaW1nLFxuICAuaG9tZV9mZWF0dXJlZF9wcm9kdWN0cyB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0OmhvdmVyIGltZyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEuMSk7IH1cbiAgLndvb2NvbW1lcmNlIC5yZWxhdGVkIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgaDIud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSxcbiAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgaDIud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSxcbiAgLmN1c3RvbV9wcm9kdWN0X2dyaWQgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLFxuICAuaG9tZV9mZWF0dXJlZF9wcm9kdWN0cyB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiAndHJhZGUtZ290aGljLW5leHQtY29tcHJlc3NlZCcsIHNhbnMtc2VyaWY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI1O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZzogMTJweCA1JSAyMHB4O1xuICAgIGNvbG9yOiAjQjhFMURDO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzE0NjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgIGZvbnQtc2l6ZTogNHZ3OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC53b29jb21tZXJjZSAucmVsYXRlZCB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsXG4gICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLFxuICAgICAgLmN1c3RvbV9wcm9kdWN0X2dyaWQgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLFxuICAgICAgLmhvbWVfZmVhdHVyZWRfcHJvZHVjdHMgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjR2dzsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC53b29jb21tZXJjZSAucmVsYXRlZCB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsXG4gICAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLFxuICAgICAgLmN1c3RvbV9wcm9kdWN0X2dyaWQgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLFxuICAgICAgLmhvbWVfZmVhdHVyZWRfcHJvZHVjdHMgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjF2dzsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLndvb2NvbW1lcmNlIC5yZWxhdGVkIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgaDIud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSxcbiAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsXG4gICAgICAuY3VzdG9tX3Byb2R1Y3RfZ3JpZCB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsXG4gICAgICAuaG9tZV9mZWF0dXJlZF9wcm9kdWN0cyB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDJ2dzsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLndvb2NvbW1lcmNlIC5yZWxhdGVkIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgaDIud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSxcbiAgICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsXG4gICAgICAuY3VzdG9tX3Byb2R1Y3RfZ3JpZCB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsXG4gICAgICAuaG9tZV9mZWF0dXJlZF9wcm9kdWN0cyB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEuNnZ3O1xuICAgICAgICBwYWRkaW5nOiAxNHB4IDQlIDIwcHg7IH0gfVxuICAgIC53b29jb21tZXJjZSAucmVsYXRlZCB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGU6YWZ0ZXIsXG4gICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgaDIud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZTphZnRlcixcbiAgICAuY3VzdG9tX3Byb2R1Y3RfZ3JpZCB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGU6YWZ0ZXIsXG4gICAgLmhvbWVfZmVhdHVyZWRfcHJvZHVjdHMgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcgXFwyMDNhJztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgIHRvcDogMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLndvb2NvbW1lcmNlIC5yZWxhdGVkIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgaDIud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZTphZnRlcixcbiAgICAgICAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgaDIud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZTphZnRlcixcbiAgICAgICAgLmN1c3RvbV9wcm9kdWN0X2dyaWQgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlOmFmdGVyLFxuICAgICAgICAuaG9tZV9mZWF0dXJlZF9wcm9kdWN0cyB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGU6YWZ0ZXIge1xuICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC53b29jb21tZXJjZSAucmVsYXRlZCB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0LFxuICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0LFxuICAgIC5jdXN0b21fcHJvZHVjdF9ncmlkIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QsXG4gICAgLmhvbWVfZmVhdHVyZWRfcHJvZHVjdHMgdWwucHJvZHVjdHMgbGkucHJvZHVjdCB7XG4gICAgICBtYXJnaW46IDAgMSUgMjBweCAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDMxLjMlICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDE4MHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAud29vY29tbWVyY2UgLnJlbGF0ZWQgdWwucHJvZHVjdHMgbGkucHJvZHVjdCxcbiAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCxcbiAgICAuY3VzdG9tX3Byb2R1Y3RfZ3JpZCB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0LFxuICAgIC5ob21lX2ZlYXR1cmVkX3Byb2R1Y3RzIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Qge1xuICAgICAgaGVpZ2h0OiAyMDBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAud29vY29tbWVyY2UgLnJlbGF0ZWQgdWwucHJvZHVjdHMgbGkucHJvZHVjdCxcbiAgICAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCxcbiAgICAuY3VzdG9tX3Byb2R1Y3RfZ3JpZCB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0LFxuICAgIC5ob21lX2ZlYXR1cmVkX3Byb2R1Y3RzIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3Qge1xuICAgICAgaGVpZ2h0OiAyNDBweDsgfSB9XG5cbi53b29jb21tZXJjZSAucmVsYXRlZCAuYnV0dG9uLCAud29vY29tbWVyY2UgLnJlbGF0ZWQgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC53b29jb21tZXJjZSAucmVsYXRlZCAud3AtYmxvY2stYnV0dG9uX19saW5rLFxuLndvb2NvbW1lcmNlIC5yZWxhdGVkIC5wcm9kdWN0X21ldGEsXG4ud29vY29tbWVyY2UgLmJ1dHRvbixcbi53b29jb21tZXJjZSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssXG4ud3AtYmxvY2stYnV0dG9uIC53b29jb21tZXJjZSAud3AtYmxvY2stYnV0dG9uX19saW5rLFxuLndvb2NvbW1lcmNlIC5wcm9kdWN0X21ldGEsXG4uY3VzdG9tX3Byb2R1Y3RfZ3JpZCAuYnV0dG9uLFxuLmN1c3RvbV9wcm9kdWN0X2dyaWQgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLFxuLndwLWJsb2NrLWJ1dHRvbiAuY3VzdG9tX3Byb2R1Y3RfZ3JpZCAud3AtYmxvY2stYnV0dG9uX19saW5rLFxuLmN1c3RvbV9wcm9kdWN0X2dyaWQgLnByb2R1Y3RfbWV0YSxcbi5ob21lX2ZlYXR1cmVkX3Byb2R1Y3RzIC5idXR0b24sXG4uaG9tZV9mZWF0dXJlZF9wcm9kdWN0cyAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssXG4ud3AtYmxvY2stYnV0dG9uIC5ob21lX2ZlYXR1cmVkX3Byb2R1Y3RzIC53cC1ibG9jay1idXR0b25fX2xpbmssXG4uaG9tZV9mZWF0dXJlZF9wcm9kdWN0cyAucHJvZHVjdF9tZXRhIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5ob21lX2ZlYXR1cmVkX3Byb2R1Y3RzIHVsLnByb2R1Y3RzIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cbi5zd2lwZV9ub3RpZmlmY2F0aW9uIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zd2lwZV9ub3RpZmlmY2F0aW9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ucGFydHNfdGFibGVfcmFwcGEge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjQ0RDRENEO1xuICBvdmVyZmxvdy14OiBzY3JvbGw7IH1cbiAgLnBhcnRzX3RhYmxlX3JhcHBhIHRhYmxlIHtcbiAgICBmb250LWZhbWlseTogJ3RyYWRlLWdvdGhpYy1uZXh0LWNvbXByZXNzZWQnLCBzYW5zLXNlcmlmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNDRENEQ0Q7XG4gICAgbWluLXdpZHRoOiAxMDI0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucGFydHNfdGFibGVfcmFwcGEgdGgge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNDRENEQ0QgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzMTQ2ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMTBweCAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxLjJyZW07IH1cbiAgLnBhcnRzX3RhYmxlX3JhcHBhIHRkIHtcbiAgICBwYWRkaW5nOiAxMHB4IDE1cHggIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQ0RDRENEICFpbXBvcnRhbnQ7IH1cbiAgLnBhcnRzX3RhYmxlX3JhcHBhIC5jb2x1bW4tMSxcbiAgLnBhcnRzX3RhYmxlX3JhcHBhIC5jb2x1bW4tMyxcbiAgLnBhcnRzX3RhYmxlX3JhcHBhIC5jb2x1bW4tNCxcbiAgLnBhcnRzX3RhYmxlX3JhcHBhIC5jb2x1bW4tNSxcbiAgLnBhcnRzX3RhYmxlX3JhcHBhIC5jb2x1bW4tNixcbiAgLnBhcnRzX3RhYmxlX3JhcHBhIC5jb2x1bW4tNyxcbiAgLnBhcnRzX3RhYmxlX3JhcHBhIC5jb2x1bW4tOCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLnBhcnRzX3RhYmxlX3JhcHBhIGNhcHRpb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBhcnRzX3RhYmxlX3JhcHBhIC5kYXRhVGFibGVzX3dyYXBwZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmhlcm9wcm9kdWN0X3JhcHBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzMTQ2O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5oZXJvcHJvZHVjdF9yYXBwYSAuaW1nYmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDMzMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgICAuaGVyb3Byb2R1Y3RfcmFwcGEgLmltZ2JnOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IC43OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5oZXJvcHJvZHVjdF9yYXBwYSAuaW1nYmcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5oZXJvcHJvZHVjdF9yYXBwYSAuaW1nYmcge1xuICAgICAgICB3aWR0aDogNTAlOyB9IH1cblxuLmhlcm9wcm9kdWN0X2NvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI1O1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogMzBweDsgfVxuICAuaGVyb3Byb2R1Y3RfY29udGVudCBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmhlcm9wcm9kdWN0X2NvbnRlbnQge1xuICAgICAgd2lkdGg6IDYwJTtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlcm9wcm9kdWN0X2NvbnRlbnQge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHBhZGRpbmc6IDQwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmhlcm9wcm9kdWN0X2NvbnRlbnQge1xuICAgICAgcGFkZGluZzogNjVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuaGVyb3Byb2R1Y3RfY29udGVudCB7XG4gICAgICBwYWRkaW5nOiA5MHB4OyB9IH1cbiAgLmhlcm9wcm9kdWN0X2NvbnRlbnQgaDIge1xuICAgIGZvbnQtZmFtaWx5OiAndHJhZGUtZ290aGljLW5leHQtY29tcHJlc3NlZCcsIHNhbnMtc2VyaWY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogI0I4RTFEQztcbiAgICBmb250LXNpemU6IDEuOHJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaGVyb3Byb2R1Y3RfY29udGVudCBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMy40dnc7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaGVyb3Byb2R1Y3RfY29udGVudCBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi44dnc7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5oZXJvcHJvZHVjdF9jb250ZW50IGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjR2dzsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmhlcm9wcm9kdWN0X2NvbnRlbnQgaDIge1xuICAgICAgICBmb250LXNpemU6IDJ2dzsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tb2JpbGUtbWVudSxcbiAgLnNpdGUtdGl0bGUtYmFyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5kZXNrdG9wLW1lbnUsXG4gIC5zaXRlLW5hdmlnYXRpb24gLnRvcC1iYXItbGVmdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNpdGUtZGVza3RvcC10aXRsZSBhIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLnBvc3QtbmF2aWdhdGlvbjo6YmVmb3JlLCAucG9zdC1uYXZpZ2F0aW9uOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxOyB9XG5cbi5wb3N0LW5hdmlnYXRpb246OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLm5hdi1wcmV2aW91cyB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5uYXYtbmV4dCB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4ubWFpbi1jb250YWluZXIge1xuICBwYWRkaW5nOiAyMHB4IDAgNDBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tYWluLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDAgNTBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1haW4tY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDYwcHggMDsgfSB9XG5cbi5tYWluLWdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG5cbi5zaWRlYmFyLWxlZnQgLm1haW4tY29udGVudCB7XG4gIG9yZGVyOiAxOyB9XG5cbi5zaWRlYmFyLWxlZnQgLnNpZGViYXIge1xuICBvcmRlcjogMjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2lkZWJhci1sZWZ0IC5tYWluLWNvbnRlbnQge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5zaWRlYmFyLWxlZnQgLnNpZGViYXIge1xuICAgIG9yZGVyOiAxOyB9IH1cblxuLm1haW4tY29udGVudC1mdWxsLXdpZHRoIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cblxuLm1haW4tY29udGVudCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWFpbi1jb250ZW50IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDJlbTsgfSB9XG5cbi5zaWRlYmFyIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2lkZWJhciB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuXG4uZm9vdGVyLWNvbnRhaW5lciB7XG4gIGNvbG9yOiAjNTU1O1xuICBwYWRkaW5nOiAwIDAgMjBweDsgfVxuXG4uZm9vdGVyLWdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gIC5mb290ZXItZ3JpZCB1bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG5cbi5mb290YV9jb250YWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMzE0NjsgfVxuICAuZm9vdGFfY29udGFjdCAuY29sdW1uLCAuZm9vdGFfY29udGFjdCAuY29sdW1ucywgLmZvb3RhX2NvbnRhY3QgLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG4gIC5mb290YV9jb250YWN0IC5zcGFjZWRvdXQge1xuICAgIGNvbG9yOiAjQjhFMURDOyB9XG4gIC5mb290YV9jb250YWN0IFt0eXBlPSd0ZXh0J10sIC5mb290YV9jb250YWN0IFt0eXBlPSdwYXNzd29yZCddLCAuZm9vdGFfY29udGFjdCBbdHlwZT0nZGF0ZSddLCAuZm9vdGFfY29udGFjdCBbdHlwZT0nZGF0ZXRpbWUnXSwgLmZvb3RhX2NvbnRhY3QgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIC5mb290YV9jb250YWN0IFt0eXBlPSdtb250aCddLCAuZm9vdGFfY29udGFjdCBbdHlwZT0nd2VlayddLCAuZm9vdGFfY29udGFjdCBbdHlwZT0nZW1haWwnXSwgLmZvb3RhX2NvbnRhY3QgW3R5cGU9J251bWJlciddLCAuZm9vdGFfY29udGFjdCBbdHlwZT0nc2VhcmNoJ10sIC5mb290YV9jb250YWN0IFt0eXBlPSd0ZWwnXSwgLmZvb3RhX2NvbnRhY3QgW3R5cGU9J3RpbWUnXSwgLmZvb3RhX2NvbnRhY3QgW3R5cGU9J3VybCddLCAuZm9vdGFfY29udGFjdCBbdHlwZT0nY29sb3InXSwgLmZvb3RhX2NvbnRhY3QgdGV4dGFyZWEge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiAwLjZyZW0gMXJlbTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpOyB9XG4gIC5mb290YV9jb250YWN0IFt0eXBlPSd0ZXh0J106Zm9jdXMsIC5mb290YV9jb250YWN0IFt0eXBlPSdwYXNzd29yZCddOmZvY3VzLCAuZm9vdGFfY29udGFjdCBbdHlwZT0nZGF0ZSddOmZvY3VzLCAuZm9vdGFfY29udGFjdCBbdHlwZT0nZGF0ZXRpbWUnXTpmb2N1cywgLmZvb3RhX2NvbnRhY3QgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106Zm9jdXMsIC5mb290YV9jb250YWN0IFt0eXBlPSdtb250aCddOmZvY3VzLCAuZm9vdGFfY29udGFjdCBbdHlwZT0nd2VlayddOmZvY3VzLCAuZm9vdGFfY29udGFjdCBbdHlwZT0nZW1haWwnXTpmb2N1cywgLmZvb3RhX2NvbnRhY3QgW3R5cGU9J251bWJlciddOmZvY3VzLCAuZm9vdGFfY29udGFjdCBbdHlwZT0nc2VhcmNoJ106Zm9jdXMsIC5mb290YV9jb250YWN0IFt0eXBlPSd0ZWwnXTpmb2N1cywgLmZvb3RhX2NvbnRhY3QgW3R5cGU9J3RpbWUnXTpmb2N1cywgLmZvb3RhX2NvbnRhY3QgW3R5cGU9J3VybCddOmZvY3VzLCAuZm9vdGFfY29udGFjdCBbdHlwZT0nY29sb3InXTpmb2N1cywgLmZvb3RhX2NvbnRhY3QgdGV4dGFyZWE6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTsgfVxuICAuZm9vdGFfY29udGFjdCB0ZXh0YXJlYSB7XG4gICAgbWFyZ2luLXRvcDogMjVweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZm9vdGFfY29udGFjdCB0ZXh0YXJlYSB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG4gIC5mb290YV9jb250YWN0IC5pbWdiZyB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbSAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IC4xOyB9XG5cbi5mb290YV9uYXYgdWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgcGFkZGluZzogMDsgfVxuICAuZm9vdGFfbmF2IHVsIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5mb290YV9uYXYgdWwgbGkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfSB9XG4gIC5mb290YV9uYXYgdWwgbGkgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogI0Y3OTIxRTtcbiAgICBwYWRkaW5nOiAycHggMTJweCA1cHggMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0OyB9XG4gIC5mb290YV9uYXYgdWwgbGkgYTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgdG9wOiA1MCU7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3O1xuICAgIG9wYWNpdHk6IC4zOyB9XG4gIC5mb290YV9uYXYgdWwgbGk6bnRoLWxhc3Qtb2YtdHlwZSgxKSBhOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5mb290YV9uYXYgdWwgbGkgYTpob3ZlcixcbiAgLmZvb3RhX25hdiB1bCBsaS5pcy1hY3RpdmUgYSB7XG4gICAgY29sb3I6ICNjOTZmMDc7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9vdGFfbmF2IHVsIHtcbiAgICAgIG1hcmdpbjogMDsgfSB9XG5cbi5jcmVkaXRzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgY29sb3I6ICM0NDQ7XG4gIHBhZGRpbmc6IDIwcHggNSU7XG4gIGZvbnQtc2l6ZTogLjlyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jcmVkaXRzIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBwYWRkaW5nOiAyNXB4IDMlOyB9IH1cblxuLmNyZWRpdHMgYSB7XG4gIGNvbG9yOiAjNUVCNUU4O1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uY3JlZHNfbGVmdCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDVweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jcmVkc19sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNyZWRzX3JpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4ubWFkZWJ5IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWFkZWJ5IHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBtYXJnaW4tdG9wOiA2cHg7IH0gfVxuXG4ubWFkZWJ5LFxuLm1hZGVieSBpbWcge1xuICB3aWR0aDogNjVweDtcbiAgaGVpZ2h0OiAxOXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0OyB9XG5cbi5tYWRlYnk6aG92ZXIge1xuICBvcGFjaXR5OiAuNTsgfVxuXG4uc29jaWFsX3JhcHBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDE1cHggMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zb2NpYWxfcmFwcGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdG9wOiAycHg7XG4gICAgICBtYXJnaW46IDAgMjBweCAwIDA7IH0gfVxuXG4uc29jaWFsX2ljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIG1hcmdpbjogMCA1cHggMCAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDgwJTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzk3OTc5NzsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zb2NpYWxfaWNvbiB7XG4gICAgICBtYXJnaW46IDAgMTBweCAwIDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zb2NpYWxfaWNvbiB7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIG1hcmdpbjogMCA0cHggMCAwOyB9IH1cblxuLmZhY2Vib29rIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltYWdlcy9pY29uX2ZhY2Vib29rLnN2Z1wiKTsgfVxuXG4udHdpdHRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWFnZXMvaWNvbl90d2l0dGVyLnN2Z1wiKTsgfVxuXG4uaW5zdGFncmFtIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltYWdlcy9pY29uX2luc3RhZ3JhbS5zdmdcIik7IH1cblxuLnlvdXR1YmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1hZ2VzL2ljb25feW91dHViZS5zdmdcIik7IH1cblxuLmxpbmtlZGluIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltYWdlcy9pY29uX2xpbmtlZGluLnN2Z1wiKTsgfVxuXG4uYW1hem9uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltYWdlcy9pY29uX2FtYXpvbi5zdmdcIik7IH1cblxuLnNvY2lhbF9pY29uOmhvdmVyIHtcbiAgb3BhY2l0eTogLjQ7IH1cblxuYm9keSN0aW55bWNlIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgcGFkZGluZzogMS4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zaXRlcy1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3gtc2hhZG93OiAwIC0ycHggMCByZ2JhKDAsIDAsIDAsIDAuMikgaW5zZXQ7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm9yZGVyOiBub25lOyB9XG5cbi5idXR0bixcbi53cGNmNy1zdWJtaXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWluLXdpZHRoOiAxNjBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDgwMCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBCNUVGO1xuICBwYWRkaW5nOiAwIDMwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgdGV4dC1zaXplLWFkanVzdDogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDJweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmJ1dHRuLFxuICAgIC53cGNmNy1zdWJtaXQge1xuICAgICAgZm9udC1zaXplOiAxLjFyZW07IH0gfVxuXG4uYnV0dG46YWN0aXZlLFxuLmJ1dHRuOnZpc2l0ZWQsXG4uYnV0dG46Zm9jdXMsXG4ud3BjZjctc3VibWl0OmFjdGl2ZSxcbi53cGNmNy1zdWJtaXQ6dmlzaXRlZCxcbi53cGNmNy1zdWJtaXQ6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjsgfVxuXG4uYnV0dG46aG92ZXIsXG4ud3BjZjctc3VibWl0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVjZDhmZjtcbiAgY29sb3I6ICMwMDI1MzIgIWltcG9ydGFudDsgfVxuXG4uYnV0dG4uYnV5IHtcbiAgdGV4dC1zaGFkb3c6IDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMUMxMjI7IH1cblxuLmJ1dHRuLmJ1eTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIHRleHQtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGRkZDNmOyB9XG5cbi5jYXJkcy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gIC5jYXJkcy1jb250YWluZXIgLmNhcmQge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIC5jYXJkcy1jb250YWluZXIgLmNhcmQgLmNhcmQtY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAxcmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jYXJkcy1jb250YWluZXIgLmNhcmQge1xuICAgICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAwLjdyZW0pO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuMzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjM1cmVtOyB9IH1cblxuLmZlYXR1cmVkLWhlcm8ge1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGhlaWdodDogNi4yNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWF0dXJlZC1oZXJvIHtcbiAgICAgIGhlaWdodDogMTIuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZmVhdHVyZWQtaGVybyB7XG4gICAgICBoZWlnaHQ6IDI1cmVtOyB9IH1cblxuLmRvdHRlZCwgLnNlY3Rpb24tZGl2aWRlciBociB7XG4gIGJvcmRlci1zdHlsZTogZGFzaGVkO1xuICBtYXJnaW46IDJyZW0gMDsgfVxuXG5bZGF0YS13aGF0aW5wdXQ9XCJtb3VzZVwiXSBhOmZvY3VzLCBidXR0b246Zm9jdXMgW2RhdGEtd2hhdGlucHV0PVwidG91Y2hcIl0gYTpmb2N1cywgYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG4uZnJvbnQtaGVybyB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9kZW1vL2hlcm8tYmctZm91bmRhdGlvbi02LXNtYWxsLnN2Z1wiKSBib3R0b20gY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b207XG4gIHBhZGRpbmc6IDQuMDYyNXJlbSAwO1xuICBtYXJnaW46IDAgMCAycmVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAuZnJvbnQtaGVybyAubWFya2V0aW5nIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1heC13aWR0aDogNTVyZW07XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mcm9udC1oZXJvIC5tYXJrZXRpbmcge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZnJvbnQtaGVybyB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvZGVtby9oZXJvLWJnLWZvdW5kYXRpb24tNi1sYXJnZS5zdmdcIikgYm90dG9tIGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDQyLjgxMjVyZW07XG4gICAgICBtYXJnaW46IDAgMCA0LjVyZW07IH0gfVxuICAuZnJvbnQtaGVybyAud2F0Y2gge1xuICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mcm9udC1oZXJvIC53YXRjaCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAuZnJvbnQtaGVybyAud2F0Y2ggYSB7XG4gICAgICBjb2xvcjogI0I0QzlEMTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07IH1cbiAgICAuZnJvbnQtaGVybyAud2F0Y2ggYTpob3ZlciB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5mcm9udC1oZXJvIC53YXRjaCAjc3RhcmdhemVycyA6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMDliXCI7XG4gICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICAgICAgY29sb3I6ICNCNEM5RDE7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfVxuICAgIC5mcm9udC1oZXJvIC53YXRjaCAjdHdpdHRlciA6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMDk5XCI7XG4gICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICAgICAgY29sb3I6ICNCNEM5RDE7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfVxuICAuZnJvbnQtaGVybyAudGFnbGluZSB7XG4gICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZyb250LWhlcm8gLnRhZ2xpbmUge1xuICAgICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLXRvcDogNnJlbTsgfSB9XG4gIC5mcm9udC1oZXJvIGgxIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMi4ycmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mcm9udC1oZXJvIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjg3NXJlbTsgfSB9XG4gIC5mcm9udC1oZXJvIGg0IHtcbiAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc2l6ZTogMS4zMTI1cmVtOyB9XG4gIC5mcm9udC1oZXJvIC5kb3dubG9hZCB7XG4gICAgbWFyZ2luLXRvcDogMS4yNXJlbTsgfVxuXG4uaW50cm8ge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgbWF4LXdpZHRoOiAxMDByZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmludHJvIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmludHJvIC5mcC1pbnRybyB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5pbnRybyAuZnAtaW50cm8ge1xuICAgICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuICAgICAgICAuaW50cm8gLmZwLWludHJvIGgyIHtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICAgICAgICAuaW50cm8gLmZwLWludHJvIGg0IHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgICAgY29sb3I6ICM3Nzc7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfSB9XG5cbi5zZWN0aW9uLWRpdmlkZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgbWF4LXdpZHRoOiAxMDByZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNlY3Rpb24tZGl2aWRlciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5zZWN0aW9uLWRpdmlkZXIgaHIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5iZW5lZml0cyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5iZW5lZml0cyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5iZW5lZml0cyBoZWFkZXIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIC5iZW5lZml0cyBoZWFkZXIgaDIge1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgIC5iZW5lZml0cyBoZWFkZXIgaDQge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICBjb2xvcjogIzc3NzsgfVxuICAuYmVuZWZpdHMgLnNlbWFudGljLFxuICAuYmVuZWZpdHMgLnJlc3BvbnNpdmUsXG4gIC5iZW5lZml0cyAuY3VzdG9taXphYmxlLFxuICAuYmVuZWZpdHMgLnByb2Zlc3Npb25hbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5iZW5lZml0cyAuc2VtYW50aWMsXG4gICAgICAuYmVuZWZpdHMgLnJlc3BvbnNpdmUsXG4gICAgICAuYmVuZWZpdHMgLmN1c3RvbWl6YWJsZSxcbiAgICAgIC5iZW5lZml0cyAucHJvZmVzc2lvbmFsIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmJlbmVmaXRzIC5zZW1hbnRpYyBpbWcsXG4gICAgLmJlbmVmaXRzIC5yZXNwb25zaXZlIGltZyxcbiAgICAuYmVuZWZpdHMgLmN1c3RvbWl6YWJsZSBpbWcsXG4gICAgLmJlbmVmaXRzIC5wcm9mZXNzaW9uYWwgaW1nIHtcbiAgICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gICAgICBtYXJnaW46IDFyZW0gYXV0byAwIGF1dG87IH1cbiAgICAuYmVuZWZpdHMgLnNlbWFudGljIGgzLFxuICAgIC5iZW5lZml0cyAucmVzcG9uc2l2ZSBoMyxcbiAgICAuYmVuZWZpdHMgLmN1c3RvbWl6YWJsZSBoMyxcbiAgICAuYmVuZWZpdHMgLnByb2Zlc3Npb25hbCBoMyB7XG4gICAgICBjb2xvcjogIzBhMGEwYTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBmb250LXNpemU6IDEuNzVyZW07IH1cbiAgICAuYmVuZWZpdHMgLnNlbWFudGljIHAsXG4gICAgLmJlbmVmaXRzIC5yZXNwb25zaXZlIHAsXG4gICAgLmJlbmVmaXRzIC5jdXN0b21pemFibGUgcCxcbiAgICAuYmVuZWZpdHMgLnByb2Zlc3Npb25hbCBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG4gIC5iZW5lZml0cyAud2h5LWZvdW5kYXRpb24ge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tdG9wOiA0cmVtOyB9XG5cbi5raXRjaGVuLXNpbmstaGVhZGVyIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cblxuLmtpdGNoZW4tc2luay1jb21wb25lbnRzIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgLmtpdGNoZW4tc2luay1jb21wb25lbnRzIGhyIHtcbiAgICBtYXJnaW46IDNyZW0gMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5raXRjaGVuLXNpbmstY29tcG9uZW50cyB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuXG4ua2l0Y2hlbi1zaW5rLW5hdiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAua2l0Y2hlbi1zaW5rLW5hdiB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgLmtpdGNoZW4tc2luay1uYXYgLmRvY3Mtc3ViLW1lbnUge1xuICAgICAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07IH1cbiAgICAgIC5raXRjaGVuLXNpbmstbmF2IC5kb2NzLW1lbnUtdGl0bGUge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIGNvbG9yOiAjOGE4YThhO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2FjYWNhO1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICBwYWRkaW5nLXRvcDogMS41cmVtOyB9XG4gICAgICAua2l0Y2hlbi1zaW5rLW5hdiAuZG9jcy10b2Mge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtOyB9XG4gICAgICAua2l0Y2hlbi1zaW5rLW5hdiAuZG9jcy10b2MgLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyMTk5ZTg7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgICAgLmtpdGNoZW4tc2luay1uYXYgLmRvY3MtdG9jIC5kb2NzLXN1Yi1tZW51OmZpcnN0LWNoaWxkIC5kb2NzLW1lbnUtdGl0bGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfSB9XG5cbi5raXRjaGVuLXNpbmstZ3JpZCAuZ3JpZC14IHtcbiAgYmFja2dyb3VuZDogI2Q2ZWNmYTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4gIC5raXRjaGVuLXNpbmstZ3JpZCAuZ3JpZC14IC5jZWxsLCAua2l0Y2hlbi1zaW5rLWdyaWQgLmdyaWQteCA6bnRoLWNoaWxkKG9kZCkge1xuICAgIGJhY2tncm91bmQ6ICM3YmMxZWY7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmtpdGNoZW4tc2luay1ncmlkIC5ncmlkLXggLmNlbGw6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4iLCIvKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbiAqIFZlcnNpb24gNi41LjFcbiAqIGZvdW5kYXRpb24uenVyYi5jb21cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5cbi8vIERlcGVuZGVuY2llc1xuQGltcG9ydCAndmVuZG9yL25vcm1hbGl6ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvbWlzc2luZy1kZXBlbmRlbmNpZXMnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL3RydWUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvY29udGFpbic7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9wdXJnZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZW1vdmUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVwbGFjZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy90by1saXN0JztcblxuLy8gLS0tIFNldHRpbmdzIC0tLVxuLy8gaW1wb3J0IHlvdXIgb3duIGBzZXR0aW5nc2AgaGVyZSBvclxuLy8gaW1wb3J0IGFuZCBtb2RpZnkgdGhlIGRlZmF1bHQgc2V0dGluZ3MgdGhyb3VnaFxuLy8gQGltcG9ydCAnc2V0dGluZ3Mvc2V0dGluZ3MnO1xuXG4vLyAtLS0gQ29tcG9uZW50cyAtLS1cbi8vIFV0aWxpdGllc1xuQGltcG9ydCAndXRpbC91dGlsJztcbi8vIEdsb2JhbCBzdHlsZXNcbkBpbXBvcnQgJ2dsb2JhbCc7XG5AaW1wb3J0ICdmb3Jtcy9mb3Jtcyc7XG5AaW1wb3J0ICd0eXBvZ3JhcGh5L3R5cG9ncmFwaHknO1xuXG4vLyBHcmlkc1xuQGltcG9ydCAnZ3JpZC9ncmlkJztcbkBpbXBvcnQgJ3h5LWdyaWQveHktZ3JpZCc7XG4vLyBHZW5lcmljIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uLWdyb3VwJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2xvc2UtYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGFiZWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9wcm9ncmVzcy1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zbGlkZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zd2l0Y2gnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJsZSc7XG4vLyBCYXNpYyBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2JhZGdlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnJlYWRjcnVtYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYWxsb3V0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FyZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Rvb2x0aXAnO1xuXG4vLyBDb250YWluZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhLW9iamVjdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29yYml0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmVzcG9uc2l2ZS1lbWJlZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy90aHVtYm5haWwnO1xuLy8gTWVudS1iYXNlZCBjb250YWluZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51LWljb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24tbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2RyaWxsZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duLW1lbnUnO1xuXG4vLyBMYXlvdXQgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9vZmYtY2FudmFzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmV2ZWFsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3RpY2t5JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGl0bGUtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9wLWJhcic7XG5cbi8vIEhlbHBlcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxvYXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbGV4JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdmlzaWJpbGl0eSc7XG5AaW1wb3J0ICdwcm90b3R5cGUvcHJvdG90eXBlJztcblxuXG5AbWl4aW4gZm91bmRhdGlvbi1ldmVyeXRoaW5nKFxuICAkZmxleDogdHJ1ZSxcbiAgJHByb3RvdHlwZTogZmFsc2Vcbikge1xuICBAaWYgJGZsZXgge1xuICAgICRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLy8gR2xvYmFsIHN0eWxlc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdHlwb2dyYXBoeTtcblxuICAvLyBHcmlkc1xuICBAaWYgbm90ICRmbGV4IHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkeHktZ3JpZCB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gR2VuZXJpYyBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG4gIC8vIEJhc2ljIGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhcmQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xuXG4gIC8vIENvbnRhaW5lcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aHVtYm5haWw7XG4gIC8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudS1pY29uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XG5cbiAgLy8gTGF5b3V0IGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG5cbiAgLy8gSGVscGVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG4gIEBpZiAkZmxleCB7IEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzOyB9XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuICBAaWYgJHByb3RvdHlwZSB7IEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7IH1cbn1cbiIsIkBtaXhpbiBmb3VuZGF0aW9uLW5vcm1hbGl6ZSgpIHtcbiAgLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4gIC8vIERvY3VtZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cblxuICBodG1sIHtcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxuICB9XG5cbiAgLy8gU2VjdGlvbnNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAvLyBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuXG4gIGgxIHtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBtYXJnaW46IDAuNjdlbSAwO1xuICB9XG5cbiAgLy8gR3JvdXBpbmcgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gIC8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG4gIGhyIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICAgIGhlaWdodDogMDsgLy8gMVxuICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgcHJlIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgICBmb250LXNpemU6IDFlbTsgLy8gMlxuICB9XG5cbiAgLy8gVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG5cbiAgYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvLyAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICAvLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuXG4gIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lOyAvLyAxXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8vIDJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG5cbiAgYixcbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGNvZGUsXG4gIGtiZCxcbiAgc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgfVxuXG4gIC8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAvLyBhbGwgYnJvd3NlcnMuXG5cbiAgc3ViLFxuICBzdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICBzdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgfVxuXG4gIHN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG4gIH1cblxuICAvLyBFbWJlZGRlZCBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cblxuICBpbWcge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC8vIEZvcm1zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8vIDFcbiAgICBmb250LXNpemU6IDEwMCU7IC8vIDFcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIG1hcmdpbjogMDsgLy8gMlxuICB9XG5cbiAgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gIC8vIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCB7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAvLyAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uLFxuICBzZWxlY3QgeyAvLyAxXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuXG4gIGJ1dHRvbjotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gIC8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgLy8gMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAvLyAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cblxuICBsZWdlbmQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAxXG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gM1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG5cbiAgcHJvZ3Jlc3Mge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuXG4gIHRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG5cbiAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDJcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cblxuICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMlxuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAvLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG5cbiAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbiAgICBmb250OiBpbmhlcml0OyAvLyAyXG4gIH1cblxuICAvLyBJbnRlcmFjdGl2ZVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG5cbiAgZGV0YWlscyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICB9XG5cbiAgLy8gTWlzY1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cblxuICB0ZW1wbGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuXG4gIFtoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMxNzc5YmEsXG4gIHNlY29uZGFyeTogIzc2NzY3NixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbGlnaHQgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTYgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBtZWRpdW0gZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJG1lZGl1bS1ncmF5OiAjY2FjYWNhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgZGFyayBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZGFyay1ncmF5OiAjOGE4YThhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgYmxhY2sgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibGFjazogIzBhMGEwYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIHdoaXRlIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kd2hpdGU6ICNmZWZlZmUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIExpc3RcbiRib2R5LWZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSBhbnRpYWxpYXNlZCB0eXBlLCB1c2luZyB0aGUgYC13ZWJraXQtZm9udC1zbW9vdGhpbmdgIGFuZCBgLW1vei1vc3gtZm9udC1zbW9vdGhpbmdgIENTUyBwcm9wZXJ0aWVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIG1hcmdpbiBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcGFkZGluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBvc2l0aW9uaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIG5vcm1hbCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIGJvbGQgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBlbGVtZW50cyB0aGF0IGhhdmUgYSBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1yYWRpdXM6IDAgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBDYW4gYmUgb3ZlcndyaXR0ZW4gYXQgaW5kaXZpZHVhbCBtZW51IGNvbXBvbmVudCBsZXZlbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIE5lc3RlZCBtYXJnaW4gZm9yIHN1Ym1lbnUuXG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIHRleHQgZGlyZWN0aW9uIG9mIHRoZSBDU1MuIENhbiBiZSBlaXRoZXIgYGx0cmAgb3IgYHJ0bGAuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGZvciBjb21wb25lbnRzIHRoYXQgc3VwcG9ydCBpdC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLWZsZXhib3g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVkIHJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIHByb3RvdHlwZXMgaWYgYXBwbGljYWJsZVxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJ1dHRvbiBjdXJzb3IncyB2YWx1ZSwgYGF1dG9gIGJ5IGRlZmF1bHRcbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG8gIWRlZmF1bHQ7XG5cbkBpZiBub3QgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICBAZXJyb3IgJ0luICRmb3VuZGF0aW9uLXBhbGV0dGUsIHlvdSBtdXN0IGhhdmUgYSBjb2xvciBuYW1lZCBcInByaW1hcnlcIi4nO1xufVxuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgdGV4dCBkaXJlY3Rpb25cbiRnbG9iYWwtbGVmdDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIHJpZ2h0LCBsZWZ0KTtcbiRnbG9iYWwtcmlnaHQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBsZWZ0LCByaWdodCk7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlIHRoYXQgY29udGFpbnMgdGhlIGZsZXgganVzdGlmeWluZyBvcHRpb25zXG4kLXpmLWZsZXgtanVzdGlmeTogLXpmLWZsZXgtanVzdGlmeSgkZ2xvYmFsLXRleHQtZGlyZWN0aW9uKTtcblxuLy8vIEdsb2JhbCB0b2xlcmFuY2UgZm9yIGNvbG9yIHBpY2sgY29udHJhc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgY29sb3JzXG5AaW5jbHVkZSBhZGQtZm91bmRhdGlvbi1jb2xvcnM7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXMge1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY3Vyc29yOiAkZ2xvYmFsLWJ1dHRvbi1jdXJzb3I7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vICBGb3VuZGF0aW9uUHJlc3Mgc2V0dGluZ3MuXG4vLyAgQmFzZWQgb24gRm91bmRhdGlvbiBmb3IgU2l0ZXMgdjYuNC4zXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XG4vL1xuLy8gICAxLiBHbG9iYWxcbi8vICAgMi4gQnJlYWtwb2ludHNcbi8vICAgMy4gVGhlIEdyaWRcbi8vICAgNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAgIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gICA2LiBBYmlkZVxuLy8gICA3LiBBY2NvcmRpb25cbi8vICAgOC4gQWNjb3JkaW9uIE1lbnVcbi8vICAgOS4gQmFkZ2Vcbi8vICAxMC4gQnJlYWRjcnVtYnNcbi8vICAxMS4gQnV0dG9uXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxuLy8gIDEzLiBDYWxsb3V0XG4vLyAgMTQuIENhcmRcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAgMTYuIERyaWxsZG93blxuLy8gIDE3LiBEcm9wZG93blxuLy8gIDE4LiBEcm9wZG93biBNZW51XG4vLyAgMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAgMjAuIEZvcm1zXG4vLyAgMjEuIExhYmVsXG4vLyAgMjIuIE1lZGlhIE9iamVjdFxuLy8gIDIzLiBNZW51XG4vLyAgMjQuIE1ldGVyXG4vLyAgMjUuIE9mZi1jYW52YXNcbi8vICAyNi4gT3JiaXRcbi8vICAyNy4gUGFnaW5hdGlvblxuLy8gIDI4LiBQcm9ncmVzcyBCYXJcbi8vICAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAgMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAgMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcbi8vICAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vICAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gIDM1LiBQcm90b3R5cGUgTGlzdC1TdHlsZS1UeXBlXG4vLyAgMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vICAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vICAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAgNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vICA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcbi8vICA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxuLy8gIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxuLy8gIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vICA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gIDQ3LiBSZXZlYWxcbi8vICA0OC4gU2xpZGVyXG4vLyAgNDkuIFN3aXRjaFxuLy8gIDUwLiBUYWJsZVxuLy8gIDUxLiBUYWJzXG4vLyAgNTIuIFRodW1ibmFpbFxuLy8gIDUzLiBUaXRsZSBCYXJcbi8vICA1NC4gVG9vbHRpcFxuLy8gIDU1LiBUb3AgQmFyXG4vLyAgNTYuIFh5IEdyaWRcblxuQGltcG9ydCAndXRpbC91dGlsJztcbkBpbXBvcnQgJ2dsb2JhbC9jb2xvcnMnO1xuXG5cbi8vIDEuIEdsb2JhbFxuLy8gLS0tLS0tLS0tXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlO1xuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTYwMCk7XG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNTtcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzE3NzliYSxcbiAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbik7XG4kbGlnaHQtZ3JheTogI2U2ZTZlNjtcbiRtZWRpdW0tZ3JheTogI2NhY2FjYTtcbiRkYXJrLWdyYXk6ICM4YThhOGE7XG4kYmxhY2s6ICMwYTBhMGE7XG4kd2hpdGU6ICNmZWZlZmU7XG4kb3JhbmdlOiAjRjc5MjFFO1xuJHNlYWZvYW06ICNCOEUxREM7XG4kZGFya3NlYWZvYW06ICM4RUI4QjM7XG4kc2xhdGU6ICM1NjY4NzE7XG4kc2t5Ymx1ZTogIzAwQjVFRjtcbiRkZWVwYmx1ZTogIzAwMzE0NjtcbiRtaWRuaWdodDogIzAwMjUzMjtcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRib2R5LWZvbnQtY29sb3I6ICM1NDU0NTQ7XG4kYm9keS1mb250LWZhbWlseTogJ3RyYWRlLWdvdGhpYy1uZXh0Jywgc2Fucy1zZXJpZjtcbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlO1xuJGdsb2JhbC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtO1xuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiA3MDA7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiA4MDA7XG4kZ2xvYmFsLXJhZGl1czogMDtcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyO1xuJGdsb2JhbC1mbGV4Ym94OiB0cnVlO1xuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlO1xuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvO1xuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMDtcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcblxuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG4vLyAyLiBCcmVha3BvaW50c1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKTtcbiRwcmludC1icmVha3BvaW50OiBsYXJnZTtcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UgeGxhcmdlIHh4bGFyZ2UpO1xuXG4vLyAzLiBUaGUgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJGdyaWQtcm93LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcbiRncmlkLWNvbHVtbi1ndXR0ZXI6IChcbiAgc21hbGw6IDIwcHgsXG4gIG1lZGl1bTogMzBweCxcbik7XG4kZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZTogdHJ1ZTtcbiRncmlkLWNvbHVtbi1hbGlhczogJ2NvbHVtbnMnO1xuJGJsb2NrLWdyaWQtbWF4OiA4O1xuXG4vLyA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKTtcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRzbWFsbC1mb250LXNpemU6IDgwJTtcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjU7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW07XG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kY29kZS1jb2xvcjogJGJsYWNrO1xuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XG4kYW5jaG9yLWNvbG9yOiAkb3JhbmdlO1xuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTMwJSk7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lO1xuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvO1xuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW07XG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW07XG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbTtcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KTtcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnO1xuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrO1xuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApO1xuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjaztcblxuLy8gNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjU7XG4kbGVhZC1saW5laGVpZ2h0OiAxLjY7XG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXk7XG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbTtcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuJHN0YXQtZm9udC1zaXplOiAyLjVyZW07XG5cbi8vIDYuIEFiaWRlXG4vLyAtLS0tLS0tLVxuXG4kYWJpZGUtaW5wdXRzOiB0cnVlO1xuJGFiaWRlLWxhYmVsczogdHJ1ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG4vLyA3LiBBY2NvcmRpb25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlO1xuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyA4LiBBY2NvcmRpb24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZztcbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkd2hpdGU7XG4kYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1ib3JkZXI6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kOiBudWxsO1xuJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoOiA0MHB4O1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweDtcblxuLy8gOS4gQmFkZ2Vcbi8vIC0tLS0tLS0tXG5cbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtO1xuXG4vLyAxMC4gQnJlYWRjcnVtYnNcbi8vIC0tLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbTtcbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLyc7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGw6ICdcXFxcJztcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuXG4vLyAxMS4gQnV0dG9uXG4vLyAtLS0tLS0tLS0tXG5cbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW07XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTtcbiRidXR0b24tY29sb3I6ICR3aGl0ZTtcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2s7XG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweDtcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbik7XG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcblxuLy8gMTIuIEJ1dHRvbiBHcm91cFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtO1xuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweDtcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nO1xuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDY7XG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWU7XG5cbi8vIDEzLiBDYWxsb3V0XG4vLyAtLS0tLS0tLS0tLVxuXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JTtcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMDtcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW07XG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQ7XG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhbGxvdXQtbGluay10aW50OiAzMCU7XG5cbi8vIDE0LiBDYXJkXG4vLyAtLS0tLS0tLVxuXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRjYXJkLWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuJGNhcmQtc2hhZG93OiBub25lO1xuJGNhcmQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FyZC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kY2FyZC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcblxuLy8gMTUuIENsb3NlIEJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcDtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLXNpemU6IChcbiAgc21hbGw6IDEuNWVtLFxuICBtZWRpdW06IDJlbSxcbik7XG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheTtcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrO1xuXG4vLyAxNi4gRHJpbGxkb3duXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlO1xuJGRyaWxsZG93bi1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRkcmlsbGRvd24tbmVzdGVkLW1hcmdpbjogMDtcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZztcbiRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyAxNy4gRHJvcGRvd25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd24tcGFkZGluZzogMXJlbTtcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW07XG4kZHJvcGRvd24td2lkdGg6IDMwMHB4O1xuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kZHJvcGRvd24tc2l6ZXM6IChcbiAgdGlueTogMTAwcHgsXG4gIHNtYWxsOiAyMDBweCxcbiAgbGFyZ2U6IDQwMHB4LFxuKTtcblxuLy8gMTguIERyb3Bkb3duIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvcjtcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW07XG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHg7XG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6IG51bGw7XG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyb3Bkb3dubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMDtcbiRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmc7XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudDtcblxuLy8gMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2O1xuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZTtcblxuLy8gMjAuIEZvcm1zXG4vLyAtLS0tLS0tLS1cblxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKTtcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKTtcbiRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDE2KTtcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrO1xuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYztcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjaztcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbTtcbiRmb3JtLWxhYmVsLWNvbG9yOiAjNDQ0O1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiBpbmhlcml0O1xuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjg7XG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kaW5wdXQtY29sb3I6ICRibGFjaztcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogI2ZlZmVmZTtcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdDtcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiRpbnB1dC1wYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMjtcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKTtcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5O1xuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQ7XG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlO1xuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjEuIExhYmVsXG4vLyAtLS0tLS0tLS1cblxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGxhYmVsLWNvbG9yOiAkd2hpdGU7XG4kbGFiZWwtY29sb3ItYWx0OiAkYmxhY2s7XG4kbGFiZWwtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbTtcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbTtcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyMi4gTWVkaWEgT2JqZWN0XG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlO1xuXG4vLyAyMy4gTWVudVxuLy8gLS0tLS0tLS1cblxuJG1lbnUtbWFyZ2luOiAwO1xuJG1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW47XG4kbWVudS1pdGVtcy1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRtZW51LXNpbXBsZS1tYXJnaW46IDFyZW07XG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlO1xuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlO1xuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWU7XG4kbWVudS1pY29ucy1iYWNrLWNvbXBhdDogdHJ1ZTtcblxuLy8gMjQuIE1ldGVyXG4vLyAtLS0tLS0tLS1cblxuJG1ldGVyLWhlaWdodDogMXJlbTtcbiRtZXRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJG1ldGVyLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRtZXRlci1maWxsLWdvb2Q6ICRzdWNjZXNzLWNvbG9yO1xuJG1ldGVyLWZpbGwtbWVkaXVtOiAkd2FybmluZy1jb2xvcjtcbiRtZXRlci1maWxsLWJhZDogJGFsZXJ0LWNvbG9yO1xuXG4vLyAyNS4gT2ZmLWNhbnZhc1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJG9mZmNhbnZhcy1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkZGFyay1uYXYtY29sb3I7XG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNyk7XG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplOiAyMHB4O1xuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXg6IDExO1xuJG9mZmNhbnZhcy1wdXNoLXppbmRleDogMTI7XG4kb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAxMztcbiRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogMTI7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZTtcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlO1xuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KTtcbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCc7XG5cbi8vIDI2LiBPcmJpdFxuLy8gLS0tLS0tLS0tXG5cbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheTtcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMDtcblxuLy8gMjcuIFBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApO1xuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKTtcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGU7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtcbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlO1xuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlO1xuXG4vLyAyOC4gUHJvZ3Jlc3MgQmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm9ncmVzcy1oZWlnaHQ6IDFyZW07XG4kcHJvZ3Jlc3MtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDI5LiBQcm90b3R5cGUgQXJyb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1hcnJvdy1kaXJlY3Rpb25zOiAoXG4gIGRvd24sXG4gIHVwLFxuICByaWdodCxcbiAgbGVmdFxuKTtcbiRwcm90b3R5cGUtYXJyb3ctc2l6ZTogMC40Mzc1cmVtO1xuJHByb3RvdHlwZS1hcnJvdy1jb2xvcjogJGJsYWNrO1xuXG4vLyAzMC4gUHJvdG90eXBlIEJvcmRlci1Cb3hcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlci1ib3gtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuXG4vLyAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyLW5vbmUtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuXG4vLyAzMi4gUHJvdG90eXBlIEJvcmRlcmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3JkZXItd2lkdGg6IHJlbS1jYWxjKDEpO1xuJHByb3RvdHlwZS1ib3JkZXItdHlwZTogc29saWQ7XG4kcHJvdG90eXBlLWJvcmRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuXG4vLyAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWRpc3BsYXktYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1kaXNwbGF5OiAoXG4gIGlubGluZSxcbiAgaW5saW5lLWJsb2NrLFxuICBibG9jayxcbiAgdGFibGUsXG4gIHRhYmxlLWNlbGxcbik7XG5cbi8vIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWZvbnQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS13aWRlLWxldHRlci1zcGFjaW5nOiByZW0tY2FsYyg0KTtcbiRwcm90b3R5cGUtZm9udC1ub3JtYWw6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRwcm90b3R5cGUtZm9udC1ib2xkOiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG4vLyAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1saXN0LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc3R5bGUtdHlwZS11bm9yZGVyZWQ6IChcbiAgZGlzYyxcbiAgY2lyY2xlLFxuICBzcXVhcmVcbik7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtb3JkZXJlZDogKFxuICBkZWNpbWFsLFxuICBsb3dlci1hbHBoYSxcbiAgbG93ZXItbGF0aW4sXG4gIGxvd2VyLXJvbWFuLFxuICB1cHBlci1hbHBoYSxcbiAgdXBwZXItbGF0aW4sXG4gIHVwcGVyLXJvbWFuXG4pO1xuXG4vLyAzNi4gUHJvdG90eXBlIE92ZXJmbG93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtb3ZlcmZsb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1vdmVyZmxvdzogKFxuICB2aXNpYmxlLFxuICBoaWRkZW4sXG4gIHNjcm9sbFxuKTtcblxuLy8gMzcuIFByb3RvdHlwZSBQb3NpdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXBvc2l0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtcG9zaXRpb246IChcbiAgc3RhdGljLFxuICByZWxhdGl2ZSxcbiAgYWJzb2x1dGUsXG4gIGZpeGVkXG4pO1xuJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4OiA5NzU7XG5cbi8vIDM4LiBQcm90b3R5cGUgUm91bmRlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtcm91bmRlZC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xuXG4vLyAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zZXBhcmF0b3ItYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItYWxpZ246IGNlbnRlcjtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWhlaWdodDogcmVtLWNhbGMoMik7XG4kcHJvdG90eXBlLXNlcGFyYXRvci13aWR0aDogM3JlbTtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW47XG5cbi8vIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNoYWRvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJveC1zaGFkb3c6IDAgMnB4IDVweCAwIHJnYmEoMCwwLDAsLjE2KSxcbiAgICAgICAgICAgICAgICAgICAgICAgMCAycHggMTBweCAwIHJnYmEoMCwwLDAsLjEyKTtcblxuLy8gNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2l6aW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2l6aW5nOiAoXG4gIHdpZHRoLFxuICBoZWlnaHRcbik7XG4kcHJvdG90eXBlLXNpemVzOiAoXG4gIDI1OiAyNSUsXG4gIDUwOiA1MCUsXG4gIDc1OiA3NSUsXG4gIDEwMDogMTAwJVxuKTtcblxuLy8gNDIuIFByb3RvdHlwZSBTcGFjaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zcGFjaW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc3BhY2Vycy1jb3VudDogMztcblxuLy8gNDMuIFByb3RvdHlwZSBUZXh0LURlY29yYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtZGVjb3JhdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtZGVjb3JhdGlvbjogKFxuICBvdmVybGluZSxcbiAgdW5kZXJsaW5lLFxuICBsaW5lLXRocm91Z2gsXG4pO1xuXG4vLyA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXRyYW5zZm9ybWF0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC10cmFuc2Zvcm1hdGlvbjogKFxuICBsb3dlcmNhc2UsXG4gIHVwcGVyY2FzZSxcbiAgY2FwaXRhbGl6ZVxuKTtcblxuLy8gNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXV0aWxpdGllcy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG4vLyA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbik7XG5cbi8vIDQ3LiBSZXZlYWxcbi8vIC0tLS0tLS0tLS1cblxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kcmV2ZWFsLXdpZHRoOiA2MDBweDtcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KTtcblxuLy8gNDguIFNsaWRlclxuLy8gLS0tLS0tLS0tLVxuXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW07XG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuJHNsaWRlci1oZWlnaHQ6IDAuNXJlbTtcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kc2xpZGVyLWZpbGwtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHNsaWRlci1oYW5kbGUtaGVpZ2h0OiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDQ5LiBTd2l0Y2hcbi8vIC0tLS0tLS0tLS1cblxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtO1xuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtO1xuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xuJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcblxuLy8gNTAuIFRhYmxlXG4vLyAtLS0tLS0tLS1cblxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWJsZS1jb2xvci1zY2FsZTogNSU7XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XG4kdGFibGUtaG92ZXItc2NhbGU6IDIlO1xuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlO1xuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtc3RyaXBlOiBldmVuO1xuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpO1xuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZTtcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW07XG5cbi8vIDUxLiBUYWJzXG4vLyAtLS0tLS0tLVxuXG4kdGFiLW1hcmdpbjogMDtcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheTtcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkd2hpdGU7XG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4kdGFiLWV4cGFuZC1tYXg6IDY7XG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb250ZW50LWJvcmRlcjogJGxpZ2h0LWdyYXk7XG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gNTIuIFRodW1ibmFpbFxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGh1bWJuYWlsLWJvcmRlcjogc29saWQgNHB4ICR3aGl0ZTtcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpO1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSk7XG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDUzLiBUaXRsZSBCYXJcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRkYXJrLW5hdi1jb2xvcjtcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkO1xuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXk7XG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuXG4vLyA1NC4gVG9vbHRpcFxuLy8gLS0tLS0tLS0tLS1cblxuJGhhcy10aXAtY3Vyc29yOiBoZWxwO1xuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kaGFzLXRpcC1ib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICRkYXJrLWdyYXk7XG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlO1xuJHRvb2x0aXAtcGFkZGluZzogMC43NXJlbTtcbiR0b29sdGlwLW1heC13aWR0aDogMTByZW07XG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW07XG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NjtcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDU1LiBUb3AgQmFyXG4vLyAtLS0tLS0tLS0tLVxuXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDtcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4O1xuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcblxuLy8gNTYuIFh5IEdyaWRcbi8vIC0tLS0tLS0tLS0tXG5cbiR4eS1ncmlkOiB0cnVlO1xuJGdyaWQtY29udGFpbmVyOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uczogMTI7XG4kZ3JpZC1tYXJnaW4tZ3V0dGVyczogKFxuICBzbWFsbDogMjBweCxcbiAgbWVkaXVtOiAzMHB4XG4pO1xuJGdyaWQtcGFkZGluZy1ndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycztcbiRncmlkLWNvbnRhaW5lci1wYWRkaW5nOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnM7XG4kZ3JpZC1jb250YWluZXItbWF4OiAkZ2xvYmFsLXdpZHRoO1xuJHh5LWJsb2NrLWdyaWQtbWF4OiA4O1xuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGFuIGlubmVyIGJveC1zaGFkb3cgZm9yIG9ubHkgb25lIHNpZGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpZGUgLSBTaWRlIHRoZSBzaGFkb3cgaXMgc3VwcG9zZWQgdG8gYXBwZWFyLiBDYW4gYmUgYHRvcGAsIGBsZWZ0YCwgYHJpZ2h0YCBvciBgYm90dG9tYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgLSBXaWR0aCBmb3IgdGhlIHRhcmdldCBzaWRlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIG9mIHRoZSBzaGFkb3cuXG5AbWl4aW4gaW5uZXItc2lkZS1zaGFkb3coXG4gICRzaWRlOiBib3R0b20sXG4gICRzaXplOiAyMHB4LFxuICAkY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KVxuKSB7XG5cbiAgJGhlbHBlcjogcm91bmQoJHNpemUgKiAwLjY1KTtcblxuICBAaWYgKCRzaWRlID09IHRvcCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBsZWZ0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IHJpZ2h0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgKC0xKSokaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gYm90dG9tKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAoLTEpKiRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIENTUyB0cmlhbmdsZSwgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGRyb3Bkb3duIGFycm93cywgZHJvcGRvd24gcGlwcywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoXG4gICR0cmlhbmdsZS1zaXplLFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXI6IGluc2V0ICR0cmlhbmdsZS1zaXplO1xuXG4gIGNvbnRlbnQ6ICcnO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciBbJGRhcmstZ3JheV0gLSBDb2xvciB0byB1c2Ugd2hlbiB0aGUgaWNvbiBpcyBob3ZlcmVkIG92ZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMjBweF0gLSBXaWR0aCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbMTZweF0gLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgWzJweF0gLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyBbM10gLSBOdW1iZXIgb2YgYmFycyBpbiB0aGUgaWNvbi5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiAoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpKSAvICgkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGEgZG93bndhcmQtZmFjaW5nIHRyaWFuZ2xlIGFzIGEgYmFja2dyb3VuZCBpbWFnZSB0byBhbiBlbGVtZW50LiBUaGUgaW1hZ2UgaXMgZm9ybWF0dGVkIGFzIGFuIFNWRywgbWFraW5nIGl0IGVhc3kgdG8gY2hhbmdlIHRoZSBjb2xvci4gQmVjYXVzZSBJbnRlcm5ldCBFeHBsb3JlciBkb2Vzbid0IHN1cHBvcnQgZW5jb2RlZCBTVkdzIGFzIGJhY2tncm91bmQgaW1hZ2VzLCBhIFBORyBmYWxsYmFjayBpcyBhbHNvIGluY2x1ZGVkLlxuLy8vIFRoZXJlIGFyZSB0d28gUE5HIGZhbGxiYWNrczogYSBibGFjayB0cmlhbmdsZSBhbmQgYSB3aGl0ZSB0cmlhbmdsZS4gVGhlIG9uZSB1c2VkIGRlcGVuZHMgb24gdGhlIGxpZ2h0bmVzcyBvZiB0aGUgaW5wdXQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSB0cmlhbmdsZS5cbkBtaXhpbiBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRjb2xvcjogJGJsYWNrKSB7XG4gICRyZ2I6ICdyZ2IlMjgje3JvdW5kKHJlZCgkY29sb3IpKX0sICN7cm91bmQoZ3JlZW4oJGNvbG9yKSl9LCAje3JvdW5kKGJsdWUoJGNvbG9yKSl9JTI5JztcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6ICN7JHJnYn0nPjwvcG9seWdvbj48L3N2Zz5cIik7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSB7XG4gICAgQGlmIGxpZ2h0bmVzcygkY29sb3IpIDwgNjAlIHtcbiAgICAgIC8vIFdoaXRlIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gVGhlIGNsZWFyZml4IGlzIGF1Z21lbnRlZCB3aXRoIHNwZWNpZmljIHN0eWxlcyB0byBwcmV2ZW50IGJvcmRlcnMgaW4gZmxleGJveCBlbnZpcm9ubWVudHNcbi8vLyBAbGluayBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8gTWljcm8gQ2xlYXJmaXggSGFja1xuLy8vIEBsaW5rIGh0dHA6Ly9kYW5pc2FkZXNpZ25lci5jb20vYmxvZy9mbGV4Ym94LWNsZWFyLWZpeC1wc2V1ZG8tZWxlbWVudHMvIEZsZXhib3ggZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG4vLy8gQGxpbmsgaHR0cDovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIGl0ZXJhdGUgb3ZlciBicmVha3BvaW50cyB3aXRob3V0IGRvaW5nIHRoZSBtZWRpYSBxdWVyeSBpdHNlbGYuIFVzZWZ1bCBmb3IgbW9yZSBjb21wbGV4IG1lZGlhIHF1ZXJ5IGdlbmVyYXRpb24gYXMgaW4gdGhlIG1hcmdpbiBncmlkLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiB0cnVlLCAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHM6IHRydWUpIHtcbiAgJGxpc3Q6ICRicmVha3BvaW50LWNsYXNzZXM7XG5cbiAgQGlmIG5vdCAkc21hbGwge1xuICAgICRsaXN0OiBzbC1yZW1vdmUoJGxpc3QsICQtemYtemVyby1icmVha3BvaW50KTtcbiAgfVxuXG4gIEBlYWNoICRuYW1lIGluICRsaXN0IHtcbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICAgIH1cbiAgICAkLXpmLXNpemU6ICRuYW1lICFnbG9iYWw7XG5cbiAgICBAaWYgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBgQGNvbnRlbnRgIHBhc3NlZCB0byB0aGUgbWl4aW4gd2l0aCBhIHZhbHVlIGAkLXpmLWJwLXZhbHVlYCByZWxhdGVkIHRvIGEgYnJlYWtwb2ludCwgZGVwZW5kaW5nIG9uIHRoZSBgJG5hbWVgIHBhcmFtZXRlcjpcbi8vLyAtIEZvciBhIHNpbmdsZSB2YWx1ZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoaXMgdmFsdWUuXG4vLy8gLSBGb3IgYSBicmVha3BvaW50IG5hbWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYC5cbi8vLyAtIEZvciBcImF1dG9cIiwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgIGFuZCBpcyBwYXNzZWQgdG8gYEBjb250ZW50YCwgd2hpY2ggaXMgbWFkZSByZXNwb25zaXZlIGZvciBlYWNoIGJyZWFrcG9pbnQgb2YgYCRtYXBgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRuYW1lIFthdXRvXSAtIFNpbmdsZSB2YWx1ZSwgYnJlYWtwb2ludCBuYW1lLCBvciBsaXN0IG9mIGJyZWFrcG9pbnQgbmFtZXMgdG8gdXNlLiBcImF1dG9cIiBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIE1hcCBvZiBicmVha3BvaW50cyBhbmQgdmFsdWVzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuXG5AbWl4aW4gLXpmLWJyZWFrcG9pbnQtdmFsdWUoXG4gICRuYW1lOiBhdXRvLFxuICAkbWFwOiBudWxsXG4pIHtcbiAgQGlmICRuYW1lID09IGF1dG8gYW5kIHR5cGUtb2YoJG1hcCkgPT0gJ21hcCcge1xuICAgIC8vIFwiYXV0b1wiXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkaykge1xuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkdiwgJG1hcCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBicmVha3BvaW50IG5hbWVcbiAgICBAaWYgdHlwZS1vZigkbmFtZSkgPT0gJ3N0cmluZycge1xuICAgICAgJG5hbWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICB9XG5cbiAgICAvLyBicmVha3BvaW50IHZhbHVlXG4gICAgJC16Zi1icC12YWx1ZTogJG5hbWUgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gT3V0cHV0cyBDU1MgY2xhc3NlcyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gZm91bmRhdGlvbi1ncmlkKFxuICAkcm93OiAncm93JyxcbiAgJGNvbHVtbjogJ2NvbHVtbicsXG4gICRjb2x1bW4tcm93OiAnY29sdW1uLXJvdycsXG4gICRndXR0ZXI6ICdndXR0ZXInLFxuICAkcHVzaDogJ3B1c2gnLFxuICAkcHVsbDogJ3B1bGwnLFxuICAkY2VudGVyOiAnY2VudGVyZWQnLFxuICAkdW5jZW50ZXI6ICd1bmNlbnRlcmVkJyxcbiAgJGNvbGxhcHNlOiAnY29sbGFwc2UnLFxuICAkdW5jb2xsYXBzZTogJ3VuY29sbGFwc2UnLFxuICAkb2Zmc2V0OiAnb2Zmc2V0JyxcbiAgJGVuZDogJ2VuZCcsXG4gICRleHBhbmRlZDogJ2V4cGFuZGVkJyxcbiAgJGJsb2NrOiAnYmxvY2snXG4pIHtcbiAgLy8gUm93XG4gIC4jeyRyb3d9IHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdztcblxuICAgIC8vIENvbGxhcHNpbmdcbiAgICAmLiN7JGNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYgLiN7JHJvd30ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcblxuICAgICAgJi4jeyRjb2xsYXBzZX0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV4cGFuZGVkIChmdWxsLXdpZHRoKSByb3dcbiAgICAmLiN7JGV4cGFuZGVkfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG5cbiAgICAgIC4jeyRyb3d9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCguI3skZXhwYW5kZWR9KSAuI3skcm93fSB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG4gICAgfVxuXG4gICAgQGlmIHR5cGUtb2YoJGdyaWQtY29sdW1uLWd1dHRlcikgPT0gJ21hcCcge1xuICAgICAgLy8gU3RhdGljICh1bnJlc3BvbnNpdmUpIHJvdyBndXR0ZXJzXG4gICAgICAvL1xuICAgICAgQGVhY2ggJGJyZWFrcG9pbnQsICR2YWx1ZSBpbiAkZ3JpZC1jb2x1bW4tZ3V0dGVyIHtcbiAgICAgICAgJi4jeyRndXR0ZXJ9LSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICA+IC4jeyRjb2x1bW59IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWd1dHRlcigkdmFsdWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtblxuICAuI3skY29sdW1ufSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2w7XG5cbiAgICBAaWYgJGdyaWQtY29sdW1uLWFsaWduLWVkZ2Uge1xuICAgICAgJi4jeyRlbmR9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtZW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtbiByb3dcbiAgLy8gVGhlIGRvdWJsZSAucm93IGNsYXNzIGlzIG5lZWRlZCB0byBidW1wIHVwIHRoZSBzcGVjaWZpY2l0eVxuICAuI3skY29sdW1ufS4jeyRyb3d9LiN7JHJvd30ge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG5cbiAgLy8gVG8gcHJvcGVybHkgbmVzdCBhIGNvbHVtbiByb3csIHBhZGRpbmcgYW5kIG1hcmdpbiBpcyByZW1vdmVkXG4gIC4jeyRyb3d9IC4jeyRjb2x1bW59LiN7JHJvd30uI3skcm93fSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW4tY291bnQge1xuICAgICAgLy8gQ29sdW1uIHdpZHRoXG4gICAgICAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtc2l6ZSgkaSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFNvdXJjZSBvcmRlcmluZ1xuICAgICAgQGlmICRpIDwgJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS0jeyRwdXNofS0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKCRpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC4jeyQtemYtc2l6ZX0tI3skcHVsbH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygtJGkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skb2Zmc2V0fS0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLW9mZigkbyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQmxvY2sgZ3JpZFxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGJsb2NrLWdyaWQtbWF4IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgkaSwgJy4jeyRjb2x1bW59Jyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBjb2xsYXBzaW5nXG4gICAgLiN7JC16Zi1zaXplfS0jeyRjb2xsYXBzZX0ge1xuICAgICAgPiAuI3skY29sdW1ufSB7IEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlOyB9XG5cbiAgICAgIC4jeyRyb3d9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuI3skZXhwYW5kZWR9LiN7JHJvd30gLiN7JC16Zi1zaXplfS0jeyRjb2xsYXBzZX0uI3skcm93fSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LSN7JHVuY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0geyBAaW5jbHVkZSBncmlkLWNvbC1ndXR0ZXIoJC16Zi1zaXplKTsgfVxuICAgIH1cblxuICAgIC8vIFBvc2l0aW9uaW5nXG4gICAgLiN7JC16Zi1zaXplfS0jeyRjZW50ZXJ9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcyhjZW50ZXIpO1xuICAgIH1cblxuICAgIC8vIEd1dHRlciBhZGp1c3RtZW50XG4gICAgLiN7JC16Zi1zaXplfS0jeyR1bmNlbnRlcn0sXG4gICAgLiN7JC16Zi1zaXplfS0jeyRwdXNofS0wLFxuICAgIC4jeyQtemYtc2l6ZX0tI3skcHVsbH0tMCB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC11bnBvcztcbiAgICB9XG4gIH1cblxuICAvLyBCbG9jayBncmlkIGNvbHVtbnNcbiAgLiN7JGNvbHVtbn0tI3skYmxvY2t9IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1tYXJnaW47XG4gIH1cblxuICBAaWYgJGNvbHVtbiA9PSAnY29sdW1uJyBhbmQgaGFzLXZhbHVlKCRncmlkLWNvbHVtbi1hbGlhcykge1xuICAgIC4jeyRncmlkLWNvbHVtbi1hbGlhc30ge1xuICAgICAgLy8gc2Fzcy1saW50OmRpc2FibGUtYmxvY2sgcGxhY2Vob2xkZXItaW4tZXh0ZW5kXG4gICAgICBAZXh0ZW5kIC5jb2x1bW47XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBDaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIGNvbHVtbnMgZGVmaW5lZCBpbnNpZGUgdGhpcyBtaXhpbiB0byB1c2UgYSBkaWZmZXJlbnQgY29sdW1uIGNvdW50LlxuLy8vIEBjb250ZW50XG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgLSBOdW1iZXIgb2YgY29sdW1ucyB0byB1c2UuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkcm9vdCBbZmFsc2VdXG4vLy8gICBJZiBgZmFsc2VgLCBzZWxlY3RvcnMgaW5zaWRlIHRoaXMgbWl4aW4gd2lsbCBuZXN0IGluc2lkZSB0aGUgcGFyZW50IHNlbGVjdG9yLlxuLy8vICAgSWYgYHRydWVgLCBzZWxlY3RvcnMgd2lsbCBub3QgbmVzdC5cbkBtaXhpbiBncmlkLWNvbnRleHQoXG4gICRjb2x1bW5zLFxuICAkcm9vdDogZmFsc2Vcbikge1xuICAvLyBTdG9yZSB0aGUgY3VycmVudCBjb2x1bW4gY291bnQgc28gaXQgY2FuIGJlIHJlLXNldCBsYXRlclxuICAkb2xkLWdyaWQtY29sdW1uLWNvdW50OiAkZ3JpZC1jb2x1bW4tY291bnQ7XG4gICRncmlkLWNvbHVtbi1jb3VudDogJGNvbHVtbnMgIWdsb2JhbDtcblxuICBAaWYgJHJvb3Qge1xuICAgIEBhdC1yb290IHsgQGNvbnRlbnQ7IH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBSZXN0b3JlIHRoZSBvbGQgY29sdW1uIGNvdW50XG4gICRncmlkLWNvbHVtbi1jb3VudDogJG9sZC1ncmlkLWNvbHVtbi1jb3VudCAhZ2xvYmFsO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgcm93LlxuLy8vIEBjb250ZW50XG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgW251bGxdIC0gQ29sdW1uIGNvdW50IGZvciB0aGlzIHJvdy4gYG51bGxgIHdpbGwgdXNlIHRoZSBkZWZhdWx0IGNvbHVtbiBjb3VudC5cbi8vLyBAcGFyYW0ge0tleXdvcmRzfSAkYmVoYXZpb3IgW251bGxdXG4vLy8gICBNb2RpZmljYXRpb25zIHRvIHRoZSBkZWZhdWx0IGdyaWQgc3R5bGVzLiBgbmVzdGAgaW5kaWNhdGVzIHRoZSByb3cgd2lsbCBiZSBwbGFjZWQgaW5zaWRlIGFub3RoZXIgcm93LiBgY29sbGFwc2VgIGluZGljYXRlcyB0aGF0IHRoZSBjb2x1bW5zIGluc2lkZSB0aGlzIHJvdyB3aWxsIG5vdCBoYXZlIHBhZGRpbmcuIGBuZXN0IGNvbGxhcHNlYCBjb21iaW5lcyBib3RoIGJlaGF2aW9ycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkY2YgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gaW5jbHVkZSBhIGNsZWFyZml4LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1yb3coXG4gICRjb2x1bW5zOiBudWxsLFxuICAkYmVoYXZpb3I6IG51bGwsXG4gICRzaXplOiAkZ3JpZC1yb3ctd2lkdGgsXG4gICRjZjogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICAkbWFyZ2luOiBhdXRvO1xuXG4gIEBpZiBpbmRleCgkYmVoYXZpb3IsIG5lc3QpICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGd1dHRlcnMpO1xuXG4gICAgQGlmIGluZGV4KCRiZWhhdmlvciwgY29sbGFwc2UpICE9IG51bGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKCRzaXplKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAaWYgJGNmIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gIEBpZiAkY29sdW1ucyAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbnRleHQoJGNvbHVtbnMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gSW52ZXJ0cyB0aGUgbWFyZ2lucyBvZiBhIHJvdyB0byBuZXN0IGl0IGluc2lkZSBvZiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1yb3ctbmVzdCgkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAkbWFyZ2luOiByZW0tY2FsYygtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJC16Zi1zaXplKSkgLyAyICogLTE7XG5cbiAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnaW47XG4gICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW47XG4gIH1cbn1cblxuLy8vIFNldCBhIGdyaWQgcm93IHNpemVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbkBtaXhpbiBncmlkLXJvdy1zaXplKCRzaXplOiAkZ3JpZC1yb3ctd2lkdGgpIHtcbiAgQGlmICRzaXplID09IGV4cGFuZCB7XG4gICAgJHNpemU6IG5vbmU7XG4gIH1cblxuICBtYXgtd2lkdGg6ICRzaXplO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gUmVtb3ZlcyB0aGUgdW5pdCAoZS5nLiBweCwgZW0sIHJlbSkgZnJvbSBhIHZhbHVlLCByZXR1cm5pbmcgdGhlIG51bWJlciBvbmx5LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRudW0gLSBOdW1iZXIgdG8gc3RyaXAgdW5pdCBmcm9tLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHNhbWUgbnVtYmVyLCBzYW5zIHVuaXQuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XG4gIEByZXR1cm4gJG51bSAvICgkbnVtICogMCArIDEpO1xufVxuXG4vLy8gQ29udmVydHMgb25lIG9yIG1vcmUgcGl4ZWwgdmFsdWVzIGludG8gbWF0Y2hpbmcgcmVtIHZhbHVlcy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR2YWx1ZXMgLSBPbmUgb3IgbW9yZSB2YWx1ZXMgdG8gY29udmVydC4gQmUgc3VyZSB0byBzZXBhcmF0ZSB0aGVtIHdpdGggc3BhY2VzIGFuZCBub3QgY29tbWFzLiBJZiB5b3UgbmVlZCB0byBjb252ZXJ0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3QsIHdyYXAgdGhlIGxpc3QgaW4gcGFyZW50aGVzZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIFRoZSBiYXNlIHZhbHVlIHRvIHVzZSB3aGVuIGNhbGN1bGF0aW5nIHRoZSBgcmVtYC4gSWYgeW91J3JlIHVzaW5nIEZvdW5kYXRpb24gb3V0IG9mIHRoZSBib3gsIHRoaXMgaXMgMTZweC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgYG51bGxgLCB0aGUgZnVuY3Rpb24gd2lsbCByZWZlcmVuY2UgdGhlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgdmFyaWFibGUgYXMgdGhlIGJhc2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7TGlzdH0gQSBsaXN0IG9mIGNvbnZlcnRlZCB2YWx1ZXMuXG5AZnVuY3Rpb24gcmVtLWNhbGMoJHZhbHVlcywgJGJhc2U6IG51bGwpIHtcbiAgJHJlbS12YWx1ZXM6ICgpO1xuICAkY291bnQ6IGxlbmd0aCgkdmFsdWVzKTtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgLy8gVGhpcyBpcyBiZWNhdXNlIDEwMCUgZm9udCBzaXplID0gMTZweCBpbiBtb3N0IGFsbCBicm93c2Vyc1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogKCRiYXNlIC8gMTAwJSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gVXNpbmcgcmVtIGFzIGJhc2UgYWxsb3dzIGNvcnJlY3Qgc2NhbGluZ1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgJGNvdW50ID09IDEge1xuICAgIEByZXR1cm4gLXpmLXRvLXJlbSgkdmFsdWVzLCAkYmFzZSk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb3VudCB7XG4gICAgJHJlbS12YWx1ZXM6IGFwcGVuZCgkcmVtLXZhbHVlcywgLXpmLXRvLXJlbShudGgoJHZhbHVlcywgJGkpLCAkYmFzZSkpO1xuICB9XG5cbiAgQHJldHVybiAkcmVtLXZhbHVlcztcbn1cblxuLy8gQ29udmVydHMgYSB1bml0bGVzcywgcGl4ZWwsIG9yIHJlbSB2YWx1ZSB0byBlbSwgZm9yIHVzZSBpbiBicmVha3BvaW50cy5cbkBmdW5jdGlvbiAtemYtYnAtdG8tZW0oJHZhbHVlKSB7XG4gIC8vIFBpeGVsIGFuZCB1bml0bGVzcyB2YWx1ZXMgYXJlIGNvbnZlcnRlZCB0byByZW1zXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyBvciB1bml0bGVzcygkdmFsdWUpIHtcbiAgICAkdmFsdWU6IHJlbS1jYWxjKCR2YWx1ZSwgJGJhc2U6IDE2cHgpO1xuICB9XG5cbiAgLy8gVGhlbiB0aGUgdmFsdWUgaXMgY29udmVydGVkIHRvIGVtc1xuICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFlbTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwgdmFsdWUgdG8gbWF0Y2hpbmcgcmVtIHZhbHVlLiAqQW55KiB2YWx1ZSBwYXNzZWQsIHJlZ2FyZGxlc3Mgb2YgdW5pdCwgaXMgYXNzdW1lZCB0byBiZSBhIHBpeGVsIHZhbHVlLiBCeSBkZWZhdWx0LCB0aGUgYmFzZSBwaXhlbCB2YWx1ZSB1c2VkIHRvIGNhbGN1bGF0ZSB0aGUgcmVtIHZhbHVlIGlzIHRha2VuIGZyb20gdGhlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgdmFyaWFibGUuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gUGl4ZWwgdmFsdWUgdG8gY29udmVydC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gQmFzZSBmb3IgcGl4ZWwgY29udmVyc2lvbi5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgbnVtYmVyIGluIHJlbXMsIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIGdpdmVuIHZhbHVlIGFuZCB0aGUgYmFzZSBwaXhlbCB2YWx1ZS4gcmVtIHZhbHVlcyBhcmUgcGFzc2VkIHRocm91Z2ggYXMgaXMuXG5AZnVuY3Rpb24gLXpmLXRvLXJlbSgkdmFsdWUsICRiYXNlOiBudWxsKSB7XG4gIC8vIENoZWNrIGlmIHRoZSB2YWx1ZSBpcyBhIG51bWJlclxuICBAaWYgdHlwZS1vZigkdmFsdWUpICE9ICdudW1iZXInIHtcbiAgICBAd2FybiBpbnNwZWN0KCR2YWx1ZSkgKyAnIHdhcyBwYXNzZWQgdG8gcmVtLWNhbGMoKSwgd2hpY2ggaXMgbm90IGEgbnVtYmVyLic7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBUcmFuc2Zvcm0gZW0gaW50byByZW0gaWYgc29tZW9uZSBoYW5kcyBvdmVyICdlbSdzXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gQ2FsY3VsYXRlIHJlbSBpZiB1bml0cyBmb3IgJHZhbHVlIGlzIG5vdCByZW0gb3IgZW1cbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKSAqIDFyZW07XG4gIH1cblxuICAvLyBUdXJuIDByZW0gaW50byAwXG4gIEBpZiAkdmFsdWUgPT0gMHJlbSB7XG4gICAgJHZhbHVlOiAwO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsLCBwZXJjZW50YWdlLCByZW0gb3IgZW0gdmFsdWUgdG8gYSB1bml0bGVzcyB2YWx1ZSBiYXNlZCBvbiBhIGdpdmVuIGZvbnQgc2l6ZS4gSWRlYWwgZm9yIHdvcmtpbmcgb3V0IHVuaXRsZXNzIGxpbmUgaGVpZ2h0cy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBjb252ZXJ0IHRvIGEgdW5pdGxlc3MgbGluZSBoZWlnaHRcbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBUaGUgZm9udCBzaXplIHRvIHVzZSB0byB3b3JrIG91dCB0aGUgbGluZSBoZWlnaHQgLSBkZWZhdWx0cyB0byAkZ2xvYmFsLWZvbnQtc2l6ZVxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIFVuaXRsZXNzIG51bWJlclxuQGZ1bmN0aW9uIHVuaXRsZXNzLWNhbGMoJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIEZpcnN0LCBsZXRzIGNvbnZlcnQgb3VyICRiYXNlIHRvIHBpeGVsc1xuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogKCRiYXNlIC8gMTAwJSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmIHVuaXQoJGJhc2UpID09ICdlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBOb3cgbGV0J3MgY29udmVydCBvdXIgdmFsdWUgdG8gcGl4ZWxzIHRvb1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICclJyB7XG4gICAgJHZhbHVlOiAoJHZhbHVlIC8gMTAwJSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICAvLyAncHgnXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyB7XG4gICAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIC8vIGFzc3VtZSB0aGF0IGxpbmUtaGVpZ2h0cyBncmVhdGVyIHRoYW4gMTAgYXJlIG1lYW50IHRvIGJlIGFic29sdXRlIGluICdweCdcbiAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICgkdmFsdWUgPiAxMCkge1xuICAgIEByZXR1cm4gJHZhbHVlIC8gc3RyaXAtdW5pdCgkYmFzZSk7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNldCB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtblxuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRndXR0ZXIgW2F1dG9dXG4vLy8gICBTcGFjaW5nIGJldHdlZW4gY29sdW1ucywgYWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgc2luZ2xlIHZhbHVlIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBicmVha3BvaW50IG5hbWUgd2lsbCBtYWtlIHRoZSBndXR0ZXIgdGhlIGNvcnJlc3BvbmRpbmcgc2l6ZSBpbiB0aGUgJGd1dHRlcnMgbWFwLlxuLy8vICAgLSBcImF1dG9cIiB3aWxsIG1ha2UgdGhlIGd1dHRlciByZXNwb25zaXZlLCB1c2luZyB0aGUgJGd1dHRlcnMgbWFwIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLWNvbHVtbi1ndXR0ZXIoXG4gICRndXR0ZXI6IGF1dG8sXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJGd1dHRlciwgJGd1dHRlcnMpIHtcbiAgICAkcGFkZGluZzogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuXG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgfVxufVxuXG4vLy8gQ29sbGFwc2UgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW4gYnkgcmVtb3ZpbmcgdGhlIHBhZGRpbmcuICoqTm90ZToqKiBvbmx5IHVzZSB0aGlzIG1peGluIHdpdGhpbiBhIGJyZWFrcG9pbnQuIFRvIGNvbGxhcHNlIGEgY29sdW1uJ3MgZ3V0dGVycyBvbiBhbGwgc2NyZWVuIHNpemVzLCB1c2UgdGhlIGAkZ3V0dGVyYCBwYXJhbWV0ZXIgb2YgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiBpbnN0ZWFkLlxuQG1peGluIGdyaWQtY29sdW1uLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKDApO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1ndXR0ZXJcbkBtaXhpbiBncmlkLWNvbC1ndXR0ZXIoXG4gICRndXR0ZXI6IGF1dG8sXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXIsICRndXR0ZXJzKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWNvbGxhcHNlKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1jb2xsYXBzZVxuQG1peGluIGdyaWQtY29sLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tY29sbGFwc2U7XG59XG5cbi8vLyBTZXRzIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zIHRvIG1hdGNoIGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkbWFyZ2luIFthdXRvXVxuLy8vICAgVGhlIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkbWFyZ2lucyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkbWFyZ2lucyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcmdpbnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tbWFyZ2luIChcbiAgJG1hcmdpbjogYXV0byxcbiAgJG1hcmdpbnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkbWFyZ2luLCAkbWFyZ2lucykge1xuICAgICRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKTtcbiAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWJvdHRvbTtcblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFrcG9pbnRzXG4vLy8vXG5cbi8vLyBBIGxpc3Qgb2YgbmFtZWQgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZXNlIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHF1aWNrbHkgY3JlYXRlIG1lZGlhIHF1ZXJpZXMuXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1lZGl1bTogNjQwcHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTIwMHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxhcmdlc3QgbmFtZWQgYnJlYWtwb2ludCBpbiB3aGljaCB0byBpbmNsdWRlIHByaW50IGFzIGEgbWVkaWEgdHlwZVxuLy8vIEB0eXBlIEtleXdvcmRcbiRwcmludC1icmVha3BvaW50OiBsYXJnZSAhZGVmYXVsdDtcblxuJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IHNtYWxsICFkZWZhdWx0O1xuXG4kLXpmLWJyZWFrcG9pbnRzLWtleXM6IG1hcC10by1saXN0KCRicmVha3BvaW50cywgJ2tleXMnKTtcblxuQGlmIG50aChtYXAtdmFsdWVzKCRicmVha3BvaW50cyksIDEpICE9IDAge1xuICBAZXJyb3IgJ1RoZSBmaXJzdCBrZXkgaW4gdGhlICRicmVha3BvaW50cyBtYXAgbXVzdCBoYXZlIGEgdmFsdWUgb2YgXCIwXCIuJztcbn1cbkBlbHNlIHtcbiAgJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IG50aChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAxKTtcbn1cblxuLy8vIEFsbCBvZiB0aGUgbmFtZXMgaW4gdGhpcyBsaXN0IHdpbGwgYmUgb3V0cHV0IGFzIGNsYXNzZXMgaW4geW91ciBDU1MsIGxpa2UgYC5zbWFsbC0xMmAsIGAubWVkaXVtLTZgLCBhbmQgc28gb24uIEVhY2ggdmFsdWUgaW4gdGhpcyBsaXN0IG11c3QgYWxzbyBiZSBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLlxuLy8vIEB0eXBlIExpc3RcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgc3RyaW5nIG1hdGNoaW5nIHRoZSBpbnB1dCB2YWx1ZS4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBzZWUgd2hhdCB0aGUgcG9zc2libGUgaW5wdXRzIGFyZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWwgW3NtYWxsXSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbkBmdW5jdGlvbiBicmVha3BvaW50KCR2YWw6ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vIFNpemUgb3Iga2V5d29yZFxuICAkYnA6IG50aCgkdmFsLCAxKTtcbiAgLy8gVmFsdWUgZm9yIG1heC13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1tYXg6IDA7XG4gIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICRkaXI6IGlmKGxlbmd0aCgkdmFsKSA+IDEsIG50aCgkdmFsLCAyKSwgdXApO1xuICAvLyBFdmVudHVhbCBvdXRwdXRcbiAgJHN0cjogJyc7XG4gIC8vIElzIGl0IGEgbmFtZWQgbWVkaWEgcXVlcnk/XG4gICRuYW1lZDogZmFsc2U7XG5cbiAgLy8gT3JpZW50YXRpb24gbWVkaWEgcXVlcmllcyBoYXZlIGEgdW5pcXVlIHN5bnRheFxuICBAaWYgJGJwID09ICdsYW5kc2NhcGUnIG9yICRicCA9PSAncG9ydHJhaXQnIHtcbiAgICBAcmV0dXJuICcob3JpZW50YXRpb246ICN7JGJwfSknO1xuICB9XG4gIEBlbHNlIGlmICRicCA9PSAncmV0aW5hJyB7XG4gICAgQHJldHVybiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSc7XG4gIH1cblxuICAvLyBUcnkgdG8gcHVsbCBhIG5hbWVkIGJyZWFrcG9pbnQgb3V0IG9mIHRoZSAkYnJlYWtwb2ludHMgbWFwXG4gIEBpZiB0eXBlLW9mKCRicCkgPT0gJ3N0cmluZycge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicCkge1xuICAgICAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICAgJGJwLW1heDogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgIH1cblxuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgICRuYW1lZDogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJwOiAwO1xuICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogXCIjeyR2YWx9XCIgaXMgbm90IGRlZmluZWQgaW4geW91ciAkYnJlYWtwb2ludHMgc2V0dGluZy4nO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvbnZlcnQgYW55IHBpeGVsLCByZW0sIG9yIHVuaXRsZXNzIHZhbHVlIHRvIGVtXG4gICRicDogLXpmLWJwLXRvLWVtKCRicCk7XG4gIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICBAaWYgJGJwLW1heCB7XG4gICAgJGJwLW1heDogLXpmLWJwLXRvLWVtKCRicC1tYXgpIC0gLjAwMTI1O1xuICB9XG5cbiAgLy8gQ29uZGl0aW9ucyB0byBza2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uXG4gIC8vIC0gSXQncyBhIG5hbWVkIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgZG93blwiIG9yIFwiMCB1cFwiXG4gIC8vIC0gSXQncyBhIG51bWVyaWMgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBcIiArIGFueXRoaW5nXG4gIEBpZiAkYnAgPiAwZW0gb3IgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIC8vIGBvbmx5YCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pIGFuZCAobWF4LXdpZHRoOiBuKWBcbiAgICBAaWYgJGRpciA9PSAnb25seScge1xuICAgICAgLy8gT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIFwib25seVwiIHJhbmdlXG4gICAgICBAaWYgJG5hbWVkID09IHRydWUge1xuICAgICAgICAvLyBPbmx5IHVzZSBcIm1pbi13aWR0aFwiIGlmIHRoZSBmbG9vciBpcyBncmVhdGVyIHRoYW4gMFxuICAgICAgICBAaWYgJGJwID4gMGVtIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuXG4gICAgICAgICAgLy8gT25seSBhZGQgXCJhbmRcIiB0byB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAgICRzdHI6ICRzdHIgKyAnIGFuZCAnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWF4LXdpZHRoXCIgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRicC1tYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIGBvbmx5YCByYW5nZS4nO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGBkb3duYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtYXgtd2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICRtYXg6IGlmKCRuYW1lZCwgJGJwLW1heCwgJGJwKTtcblxuICAgICAgLy8gU2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvbiBpZiBpbnB1dCB2YWx1ZSBpcyBleGFjdGx5IFwiMCBkb3duXCIsXG4gICAgICAvLyB1bmxlc3MgdGhlIGZ1bmN0aW9uIHdhcyBjYWxsZWQgYXMgXCJzbWFsbCBkb3duXCIsIGluIHdoaWNoIGNhc2UgaXQncyBqdXN0IFwic21hbGwgb25seVwiXG4gICAgICBAaWYgJG5hbWVkIG9yICRicCA+IDBlbSB7XG4gICAgICAgIEBpZiAkbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYHVwYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRicCA+IDBlbSB7XG4gICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIFdyYXBzIGEgbWVkaWEgcXVlcnkgYXJvdW5kIHRoZSBjb250ZW50IHlvdSBwdXQgaW5zaWRlIHRoZSBtaXhpbi4gVGhpcyBtaXhpbiBhY2NlcHRzIGEgbnVtYmVyIG9mIHZhbHVlczpcbi8vLyAgLSBJZiBhIHN0cmluZyBpcyBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGxvb2sgZm9yIGl0IGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAsIGFuZCB1c2UgYSBtZWRpYSBxdWVyeSB0aGVyZS5cbi8vLyAgLSBJZiBhIHBpeGVsIHZhbHVlIGlzIHBhc3NlZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gZW0gdmFsdWUgdXNpbmcgYCRnbG9iYWwtZm9udC1zaXplYCBhcyB0aGUgYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG4vLy9cbi8vLyBAb3V0cHV0IElmIHRoZSBicmVha3BvaW50IGlzIFwiMHB4IGFuZCBsYXJnZXJcIiwgb3V0cHV0cyB0aGUgY29udGVudCBhcy1pcy4gT3RoZXJ3aXNlLCBvdXRwdXRzIHRoZSBjb250ZW50IHdyYXBwZWQgaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBicmVha3BvaW50KCR2YWx1ZSkge1xuICAkc3RyOiBicmVha3BvaW50KCR2YWx1ZSk7XG4gICRicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkdmFsdWUpO1xuICAkcGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICRwcmludC1icmVha3BvaW50KTtcblxuICAkb2xkLXpmLXNpemU6IG51bGw7XG5cbiAgLy8gTWFrZSBicmVha3BvaW50IHNpemUgYXZhaWxhYmxlIGFzIGEgdmFyaWFibGVcbiAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAkb2xkLXpmLXNpemU6ICQtemYtc2l6ZTtcbiAgfVxuICAkLXpmLXNpemU6IG50aCgkdmFsdWUsIDEpICFnbG9iYWw7IC8vIGdldCB0aGUgZmlyc3QgdmFsdWUgdG8gYWNjb3VudCBmb3IgYG9ubHlgIGFuZCBgZG93bmAga2V5d29yZHNcblxuICAvLyBJZiAkc3RyIGlzIHN0aWxsIGFuIGVtcHR5IHN0cmluZywgbm8gbWVkaWEgcXVlcnkgaXMgbmVlZGVkXG4gIEBpZiAkc3RyID09ICcnIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIE90aGVyd2lzZSwgd3JhcCB0aGUgY29udGVudCBpbiBhIG1lZGlhIHF1ZXJ5XG4gIEBlbHNlIHtcbiAgICAvLyBGb3IgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICRwcmludC1icmVha3BvaW50LCBhZGQgcHJpbnQgdG8gdGhlIG1lZGlhIHR5cGVzXG4gICAgQGlmICRicCAhPSBudWxsIGFuZCAkYnAgPD0gJHBicCB7XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG59XG5cbi8vLyBDb252ZXJ0cyB0aGUgYnJlYWtwb2ludHMgbWFwIHRvIGEgVVJMLWVuY29kZWQgc3RyaW5nLCBsaWtlIHRoaXM6IGBrZXkxPXZhbHVlMSZrZXkyPXZhbHVlMmAuIFRoZSB2YWx1ZSBpcyB0aGVuIGRyb3BwZWQgaW50byB0aGUgQ1NTIGZvciBhIHNwZWNpYWwgYDxtZXRhPmAgdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHQuIFRoaXMgaXMgaG93IHdlIHRyYW5zZmVyIHZhbHVlcyBmcm9tIFNhc3MgdG8gSmF2YVNjcmlwdCwgc28gdGhleSBjYW4gYmUgZGVmaW5lZCBpbiBvbmUgcGxhY2UuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBjb252ZXJ0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gQSBzdHJpbmcgY29udGFpbmluZyB0aGUgbWFwJ3MgY29udGVudHMuXG5AZnVuY3Rpb24gLXpmLWJwLXNlcmlhbGl6ZSgkbWFwKSB7XG4gICRzdHI6ICcnO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgJHN0cjogJHN0ciArICRrZXkgKyAnPScgKyAtemYtYnAtdG8tZW0oJHZhbHVlKSArICcmJztcbiAgfVxuICAkc3RyOiBzdHItc2xpY2UoJHN0ciwgMSwgLTIpO1xuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIEZpbmQgdGhlIG5leHQga2V5IGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGtleSAtIEtleSB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIHZhbHVlIGZvciB0aGUga2V5IGFmdGVyIGAka2V5YCwgaWYgYCRrZXlgIHdhcyBmb3VuZC4gSWYgYCRrZXlgIHdhcyBub3QgZm91bmQsIG9yIGAka2V5YCB3YXMgdGhlIGxhc3QgdmFsdWUgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0KCRtYXAsICRrZXkpIHtcblxuICAvLyBTdG9yZSB0aGUga2V5cyBvZiB0aGUgbWFwIGFzIGEgbGlzdFxuICAkdmFsdWVzOiBtYXAta2V5cygkbWFwKTtcblxuICAkaTogMDtcblxuICAvLyBJZiB0aGUgS2V5IEV4aXN0cywgR2V0IHRoZSBpbmRleCBvZiB0aGUga2V5IHdpdGhpbiB0aGUgbWFwIGFuZCBhZGQgMSB0byBpdCBmb3IgdGhlIG5leHQgYnJlYWtwb2ludCBpbiB0aGUgbWFwXG4gIEBpZiAobWFwLWhhcy1rZXkoJG1hcCwgJGtleSkpIHtcbiAgICAkaTogaW5kZXgoJHZhbHVlcywgJGtleSkgKyAxO1xuICB9XG5cbiAgLy8gSWYgdGhlIGtleSBkb2Vzbid0IGV4aXN0LCBvciBpdCdzIHRoZSBsYXN0IGtleSBpbiB0aGUgbWFwLCByZXR1cm4gbnVsbFxuICBAaWYgKCRpID4gbGVuZ3RoKCRtYXApIG9yICRpID09IDApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgbnRoKCR2YWx1ZXMsICRpKSk7XG4gIH1cblxufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBsYXN0IGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigka2V5KSB7XG4gICRsaXN0OiAoKTtcbiAgJGZvdW5kX2tleTogZmFsc2U7XG5cbiAgQGVhY2ggJG5hbWUgaW4gJC16Zi1icmVha3BvaW50cy1rZXlzIHtcbiAgICBAaWYgKCRuYW1lID09ICRrZXkpIHtcbiAgICAgICRmb3VuZF9rZXk6IHRydWU7XG4gICAgfVxuICAgIEBpZiBub3QgJGZvdW5kX2tleSB7XG4gICAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkbmFtZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGxpc3Q7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IC0gYSBuYW1lZCBvciBub24tbmFtZWQgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICRsYXN0OiAkLXpmLXplcm8tYnJlYWtwb2ludDtcbiAgJGZvdW5kOiBmYWxzZTtcblxuICAkdmFsdWU6IHVuaXRsZXNzLWNhbGMoJGJyZWFrcG9pbnQsIDFweCk7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICBAaWYgdW5pdGxlc3MtY2FsYygkdmFsKSA+ICR2YWx1ZSB7XG4gICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkbGFzdDogJGtleTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRsYXN0O1xufVxuXG4vLy8gR2V0IGEgdmFsdWUgZm9yIGEgYnJlYWtwb2ludCBmcm9tIGEgcmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdCByZWdhcmRsZXNzIG9mIGAkdmFsdWVgLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgZG9lcyAqbm90KiBoYXZlIHRoZSBicmVha3BvaW50LCB0aGUgdmFsdWUgbWF0Y2hpbmcgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgaW4gdGhlIGNvbmZpZyBtYXAgaXMgcmV0dXJuZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBSZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge01peGVkfSBUaGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlLlxuQGZ1bmN0aW9uIC16Zi1nZXQtYnAtdmFsKCRtYXAsICR2YWx1ZSkge1xuICAvLyBJZiB0aGUgZ2l2ZW4gbWFwIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXRcbiAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJG1hcDtcbiAgfVxuXG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgICAgJHZhbHVlOiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCR2YWx1ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGluIHRoZSBsb2NhbCBjb25maWcgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRtYXAsICR2YWx1ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkdmFsdWUpO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgZmluZCB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBhbmQgcmV0dXJuIHRoYXQgdmFsdWVcbiAgQGVsc2Uge1xuICAgICRhbmNob3I6IG51bGw7XG4gICAgJGZvdW5kOiBmYWxzZTtcblxuICAgIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAkYW5jaG9yOiAka2V5O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAka2V5ID09ICR2YWx1ZSB7XG4gICAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRhbmNob3IpO1xuICB9XG59XG5cbiRzbWFsbC11cDogJyc7XG4kc21hbGwtb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbiRtZWRpdW0tdXA6ICcnO1xuJG1lZGl1bS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG4kbGFyZ2UtdXA6ICcnO1xuJGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG4keGxhcmdlLXVwOiAnJztcbiR4bGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHh4bGFyZ2UtdXA6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNldCB0aGUgd2lkdGggb2YgYSBncmlkIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR3aWR0aCBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIHRvIG1ha2UgdGhlIGNvbHVtbi4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuQG1peGluIGdyaWQtY29sdW1uLXNpemUoXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICB3aWR0aDogZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tc2l6ZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tc2l6ZVxuQG1peGluIGdyaWQtY29sLXNpemUoXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1zaXplKCRjb2x1bW5zKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENhbGN1bGF0ZXMgdGhlIHdpZHRoIG9mIGEgY29sdW1uIGJhc2VkIG9uIGEgbnVtYmVyIG9mIGZhY3RvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkY29sdW1uc1xuLy8vICAgV2lkdGggb2YgdGhlIGNvbHVtbi4gQWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgcGVyY2VudGFnZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGNvbHVtbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgc2luZ2xlIGRpZ2l0IHdpbGwgbWFrZSB0aGUgY29sdW1uIHNwYW4gdGhhdCBudW1iZXIgb2YgY29sdW1ucyB3aWRlLCB0YWtpbmcgaW50byBhY2NvdW50IHRoZSBjb2x1bW4gY291bnQgb2YgdGhlIHBhcmVudCByb3cuXG4vLy8gICAtIEEgbGlzdCBvZiB0aGUgZm9ybWF0IFwieCBvZiB5XCIgKHdpdGhvdXQgcXVvdGVzKSB3aWxsIG1ha2UgYSBjb2x1bW4gdGhhdCBpcyAqeCogY29sdW1ucyB3aWRlLCBhc3N1bWluZyAqeSogdG90YWwgY29sdW1ucyBmb3IgdGhlIHBhcmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgY2FsY3VsYXRlZCBwZXJjZW50YWdlIHZhbHVlLlxuQGZ1bmN0aW9uIGdyaWQtY29sdW1uKCRjb2x1bW5zKSB7XG4gICR3aWR0aDogMCU7XG5cbiAgLy8gUGFyc2luZyBwZXJjZW50cywgZGVjaW1hbHMsIGFuZCBjb2x1bW4gY291bnRzXG4gIEBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbnVtYmVyJyB7XG4gICAgQGlmIHVuaXQoJGNvbHVtbnMpID09ICclJyB7XG4gICAgICAkd2lkdGg6ICRjb2x1bW5zO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkY29sdW1ucyA8IDEge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcbiAgICB9XG4gIH1cblxuICAvLyBQYXJzaW5nIFwibiBvZiBuXCIgZXhwcmVzc2lvbnNcbiAgQGVsc2UgaWYgdHlwZS1vZigkY29sdW1ucykgPT0gJ2xpc3QnIHtcbiAgICBAaWYgbGVuZ3RoKCRjb2x1bW5zKSAhPSAzIHtcbiAgICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgdGhlIGZvcm1hdCBcIm4gb2YgblwiLic7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZShudGgoJGNvbHVtbnMsIDEpIC8gbnRoKCRjb2x1bW5zLCAzKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQW55dGhpbmcgZWxzZSBpcyBpbmNvcnJlY3RcbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIuJztcbiAgfVxuXG4gIEByZXR1cm4gJHdpZHRoO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgWyRncmlkLWNvbHVtbi1jb3VudF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4oXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnQsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkY29sdW1ucyk7XG4gIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG5cbiAgLy8gR3V0dGVyc1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAvLyBQb3NpdGlvblxuICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoYXV0byk7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4gcm93LiBUaGlzIGlzIHRoZSBlcXVpdmFsZW50IG9mIGFkZGluZyBgLnJvd2AgYW5kIGAuY29sdW1uYCB0byB0aGUgc2FtZSBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gV2lkdGggb2YgdGhlIGd1dHRlcnMgb24gZWl0aGVyIHNpZGUgb2YgdGhlIGNvbHVtbiByb3cuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcm93KFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtcm93O1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gICYsXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQGZ1bmN0aW9uIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQHJldHVybiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBtaXhpbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcm93KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1yb3dcbkBtaXhpbiBncmlkLWNvbC1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCRndXR0ZXJzKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFJlcG9zaXRpb24gYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkcG9zaXRpb24gLSBJdCBjYW4gYmU6XG4vLy8gICAqIEEgbnVtYmVyOiBUaGUgY29sdW1uIHdpbGwgbW92ZSBlcXVhbCB0byB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbiBjb3VudFxuLy8vICAgICBzcGVjaWZpZWQuIEEgcG9zaXRpdmUgbnVtYmVyIHdpbGwgcHVzaCB0aGUgY29sdW1uIHRvIHRoZSByaWdodCwgd2hpbGVcbi8vLyAgICAgYSBuZWdhdGl2ZSBudW1iZXIgd2lsbCBwdWxsIGl0IHRvIHRoZSBsZWZ0LlxuLy8vICAgKiBgY2VudGVyYDogQ29sdW1uIHdpbGwgYmUgY2VudGVyZWRcbi8vLyAgICogYGF1dG9gOiBDb2x1bW4gd2lsbCBiZSBwdXNoZWQgdG8gdGhlIGxlZnQgKG9yIHRvIHRoZSByaWdodCBmb3IgdGhlIGxhc3QgY29sdW1uKS5cbkBtaXhpbiBncmlkLWNvbHVtbi1wb3NpdGlvbigkcG9zaXRpb24pIHtcbiAgLy8gQXV0byBwb3NpdGlvbmluZ1xuICBAaWYgJHBvc2l0aW9uID09IGF1dG8ge1xuICAgICYsICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gTGFzdCBjb2x1bW4gYWxpZ25tZW50XG4gICAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFB1c2gvcHVsbFxuICBAZWxzZSBpZiB0eXBlLW9mKCRwb3NpdGlvbikgPT0gJ251bWJlcicge1xuICAgICRvZmZzZXQ6IHBlcmNlbnRhZ2UoJHBvc2l0aW9uIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cblxuICAvLyBDZW50ZXIgcG9zaXRpb25pbmdcbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGNlbnRlciB7XG4gICAgJiwgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIEBlbHNlIHtcbiAgICBAd2FybiAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbi1wb3NpdGlvbigpLiBFbnRlciBhIHBvc2l0aXZlIG9yIG5lZ2F0aXZlIG51bWJlciwgXCJjZW50ZXJcIiBvciBcImF1dG9cIi4nO1xuICB9XG59XG5cbi8vLyBSZXNldCBhIHBvc2l0aW9uIGRlZmluaXRpb24uXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbiB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKGF1dG8pO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQgYnkgYCRuYCBjb2x1bW5zLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gV2lkdGggdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdyaWQtY29sdW1uKCRuKTtcbn1cblxuLy8vIERpc2FibGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGxhc3QgY29sdW1uIGluIGEgcm93IGFsaWduaW5nIHRvIHRoZSBvcHBvc2l0ZSBlZGdlLlxuQG1peGluIGdyaWQtY29sdW1uLWVuZCB7XG4gIC8vIFRoaXMgZXh0cmEgc3BlY2lmaWNpdHkgaXMgcmVxdWlyZWQgZm9yIHRoZSBwcm9wZXJ0eSB0byBiZSBhcHBsaWVkXG4gICY6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC1wb3MoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bnBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bnBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtdW5wb3Mge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bnBvc2l0aW9uO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tb2Zmc2V0KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1vZmZzZXRcbkBtaXhpbiBncmlkLWNvbC1vZmYoJG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWVuZCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZW5kXG5AbWl4aW4gZ3JpZC1jb2wtZW5kIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY29sdW1uJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRndXR0ZXJcbi8vLyAgIFRoZSBndXR0ZXIgdG8gYXBwbHkgdG8gY2hpbGQgZWxlbWVudHMuIEFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSAkZ3JpZC1jb2x1bW4tZ3V0dGVyIHdpbGwgdXNlIHRoZSB2YWx1ZXMgaW4gdGhlICRncmlkLWNvbHVtbi1ndXR0ZXIgbWFwLCBpbmNsdWRpbmcgYnJlYWtwb2ludCBzaXplcy5cbi8vLyAgIC0gQSBmaXhlZCBudW1lcmljIHZhbHVlIHdpbGwgYXBwbHkgdGhpcyBndXR0ZXIgdG8gYWxsIGJyZWFrcG9pbnRzLlxuQG1peGluIGdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNvbHVtbicsXG4gICRndXR0ZXI6IG51bGxcbikge1xuICAmID4gI3skc2VsZWN0b3J9IHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKDEvJG4pO1xuXG4gICAgLy8gSWYgYSAkZ3V0dGVyIHZhbHVlIGlzIHBhc3NlZFxuICAgIEBpZigkZ3V0dGVyKSB7XG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICBAaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGd1dHRlciB7XG4gICAgICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCR2YWx1ZSkgLyAyO1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2UgaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbnVtYmVyJyBhbmQgc3RyaXAtdW5pdCgkZ3V0dGVyKSA+IDAge1xuICAgICAgICAkcGFkZGluZzogcmVtLWNhbGMoJGd1dHRlcikgLyAyO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKCN7JG59bisxKSB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXh0cmEgQ1NTIHRvIGJsb2NrIGdyaWQgY2hpbGRyZW4gc28gdGhlIGxhc3QgaXRlbXMgaW4gdGhlIHJvdyBjZW50ZXIgYXV0b21hdGljYWxseS4gQXBwbHkgdGhpcyB0byB0aGUgY29sdW1ucywgbm90IHRoZSByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgaXRlbXMgdGhhdCBhcHBlYXIgaW4gZWFjaCByb3cuXG5AbWl4aW4gZ3JpZC1sYXlvdXQtY2VudGVyLWxhc3QoJG4pIHtcbiAgQGZvciAkaSBmcm9tIDEgdG8gJG4ge1xuICAgIEBpZiAkaSA9PSAxIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgxMDAgLSAxMDAvJG4gKiAkaSkgLyAyICogMSU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogKDEwMCAtIDEwMC8kbiAqICRpKSAvIDIgKiAxJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsZXgtZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIGNvbnRhaW5lciBmb3IgYSBmbGV4IGdyaWQgcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfExpc3R9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgW251bGxdIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlIGZvciB0aGlzIHJvdy4gSWYgc2V0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpLCB0aGUgZ2xvYmFsIGNvbHVtbiBjb3VudCB3aWxsIGJlIHVzZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYmFzZSBbdHJ1ZV0gLSBTZXQgdG8gYGZhbHNlYCB0byBwcmV2ZW50IGJhc2ljIHN0eWxlcyBmcm9tIGJlaW5nIG91dHB1dC4gVXNlZnVsIGlmIHlvdSdyZSBjYWxsaW5nIHRoaXMgbWl4aW4gb24gdGhlIHNhbWUgZWxlbWVudCB0d2ljZSwgYXMgaXQgcHJldmVudHMgZHVwbGljYXRlIENTUyBvdXRwdXQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkd3JhcCBbdHJ1ZV0gLSBTZXQgdG8gYGZhbHNlYCB0byBoYXZlIHJvdyB3cmFwcGluZyBiZWhhdmlvciBzZXQgdG8gbm93cmFwXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucywgaW4gY2FzZSB0aGUgcm93IGlzIG5lc3RlZC4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBmbGV4LWdyaWQtcm93KFxuICAkYmVoYXZpb3I6IG51bGwsXG4gICRzaXplOiAkZ3JpZC1yb3ctd2lkdGgsXG4gICRjb2x1bW5zOiBudWxsLFxuICAkYmFzZTogdHJ1ZSxcbiAgJHdyYXA6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIEBpZiBpbmRleCgkYmVoYXZpb3IsIG5lc3QpICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGd1dHRlcnMpO1xuXG4gICAgQGlmIGluZGV4KCRiZWhhdmlvciwgY29sbGFwc2UpICE9IG51bGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKCRzaXplKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAaWYgJGJhc2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgJHdyYXA7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zLCAkYmFzZSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDYWxjdWxhdGVzIHRoZSBgZmxleGAgcHJvcGVydHkgZm9yIGEgZmxleCBncmlkIGNvbHVtbi4gSXQgYWNjZXB0cyBhbGwgb2YgdGhlIHNhbWUgdmFsdWVzIGFzIHRoZSBiYXNpYyBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24sIGFsb25nIHdpdGggdHdvIGV4dHJhczpcbi8vLyAgIC0gYGV4cGFuZGAgKHRoZSBkZWZhdWx0KSB3aWxsIG1ha2UgdGhlIGNvbHVtbiBleHBhbmQgdG8gZmlsbCBzcGFjZS5cbi8vLyAgIC0gYHNocmlua2Agd2lsbCBtYWtlIHRoZSBjb2x1bW4gY29udHJhY3QsIHNvIGl0IG9ubHkgdGFrZXMgdXAgdGhlIGhvcml6b250YWwgc3BhY2UgaXQgbmVlZHMuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbZXhwYW5kXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uXG5AZnVuY3Rpb24gZmxleC1ncmlkLWNvbHVtbigkY29sdW1uczogZXhwYW5kKSB7XG4gICRmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuXG4gIEBpZiAkY29sdW1ucyA9PSBzaHJpbmsge1xuICAgICRmbGV4OiAwIDAgYXV0bztcbiAgfVxuICBAZWxzZSBpZiAkY29sdW1ucyAhPSBleHBhbmQge1xuICAgICRmbGV4OiAwIDAgZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuICB9XG5cbiAgQHJldHVybiAkZmxleDtcbn1cblxuLy8vIENyZWF0ZXMgYSBjb2x1bW4gZm9yIGEgZmxleCBncmlkLiBCeSBkZWZhdWx0LCB0aGUgY29sdW1uIHdpbGwgc3RyZXRjaCB0byB0aGUgZnVsbCB3aWR0aCBvZiBpdHMgY29udGFpbmVyLCBidXQgdGhpcyBjYW4gYmUgb3ZlcnJpZGRlbiB3aXRoIHNpemluZyBjbGFzc2VzLCBvciBieSB1c2luZyB0aGUgYHVuc3RhY2tgIGNsYXNzIG9uIHRoZSBwYXJlbnQgZmxleCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbZXhwYW5kXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZmxleC1ncmlkLWNvbHVtbigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycyB3aWR0aC4gU2VlIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyYCBtaXhpbi5cbkBtaXhpbiBmbGV4LWdyaWQtY29sdW1uKFxuICAkY29sdW1uczogZXhwYW5kLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIC8vIEJhc2UgcHJvcGVydGllc1xuICBAaW5jbHVkZSBmbGV4LWdyaWQtc2l6ZSgkY29sdW1ucyk7XG5cbiAgLy8gR3V0dGVyc1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAvLyBmaXhlcyByZWNlbnQgQ2hyb21lIHZlcnNpb24gbm90IGxpbWl0aW5nIGNoaWxkIHdpZHRoXG4gIC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM0OTM0NTg2L3doaXRlLXNwYWNlLW5vd3JhcC1hbmQtZmxleGJveC1kaWQtbm90LXdvcmstaW4tY2hyb21lXG4gIEBpZiAkY29sdW1ucyA9PSBleHBhbmQge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGJsb2NrIGdyaWQgZm9yIGEgZmxleCBncmlkIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBjb2x1bW5zIHRvIGRpc3BsYXkgb24gZWFjaCByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciAtIFNlbGVjdG9yIHRvIHVzZSB0byB0YXJnZXQgY29sdW1ucyB3aXRoaW4gdGhlIHJvdy5cbkBtaXhpbiBmbGV4LWdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNvbHVtbidcbikge1xuICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICRwY3Q6IHBlcmNlbnRhZ2UoMS8kbik7XG5cbiAgICBmbGV4OiAwIDAgJHBjdDtcbiAgICBtYXgtd2lkdGg6ICRwY3Q7XG4gIH1cbn1cblxuLy8vIENoYW5nZXMgdGhlIHdpZHRoIGZsZXggZ3JpZCBjb2x1bW4uXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgW2V4cGFuZF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGZsZXgtZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBmbGV4LWdyaWQtc2l6ZSgkY29sdW1uczogbnVsbCkge1xuICAkY29sdW1uczogJGNvbHVtbnMgb3IgZXhwYW5kO1xuXG4gIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuXG4gIC8vIG1heC13aWR0aCBmaXhlcyBJRSAxMC8xMSBub3QgcmVzcGVjdGluZyB0aGUgZmxleC1iYXNpcyBwcm9wZXJ0eVxuICBAaWYgJGNvbHVtbnMgIT0gZXhwYW5kIGFuZCAkY29sdW1ucyAhPSBzaHJpbmsge1xuICAgIG1heC13aWR0aDogZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuICB9XG59XG5cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC1ncmlkIHtcbiAgLy8gUm93XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1yb3c7XG5cbiAgICAvLyBOZXN0aW5nIGJlaGF2aW9yXG4gICAgJiAucm93IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1yb3cobmVzdCwgJGJhc2U6IGZhbHNlKTtcblxuICAgICAgJi5jb2xsYXBzZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXhwYW5kZWQgcm93XG4gICAgJi5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG5cbiAgICAgIC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KC5leHBhbmRlZCkgLnJvdyB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG4gICAgfVxuXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBVbmRvIG5lZ2F0aXZlIG1hcmdpbnNcbiAgICAvLyBGcm9tIGNvbGxhcHNlZCBjaGlsZFxuICAgICYuaXMtY29sbGFwc2UtY2hpbGQsXG4gICAgJi5jb2xsYXBzZSA+IC5jb2x1bW4gPiAucm93IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtblxuICAuY29sdW1uIHtcbiAgICBAaW5jbHVkZSBmbGV4LWdyaWQtY29sdW1uO1xuICB9XG5cbiAgLy8gQ29sdW1uIHJvd1xuICAvLyBUaGUgZG91YmxlIC5yb3cgY2xhc3MgaXMgbmVlZGVkIHRvIGJ1bXAgdXAgdGhlIHNwZWNpZmljaXR5XG4gIC5jb2x1bW4ucm93LnJvdyB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBUbyBwcm9wZXJseSBuZXN0IGEgY29sdW1uIHJvdywgcGFkZGluZyBhbmQgbWFyZ2luIGlzIHJlbW92ZWRcbiAgLnJvdyAuY29sdW1uLnJvdy5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCRpKTtcbiAgICAgICAgbWF4LXdpZHRoOiBncmlkLWNvbHVtbigkaSk7XG4gICAgICB9XG5cbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRvKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCbG9jayBncmlkXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkYmxvY2stZ3JpZC1tYXgge1xuICAgICAgLiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1sYXlvdXQoJGkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkLXpmLXNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLy8gU2l6aW5nIChleHBhbmQpXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtc2l6ZSkge1xuICAgICAgICAuI3skLXpmLXNpemV9LWV4cGFuZCB7XG4gICAgICAgICAgZmxleDogZmxleC1ncmlkLWNvbHVtbigpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEF1dG8tc3RhY2tpbmcvdW5zdGFja2luZ1xuICAgICAgQGF0LXJvb3QgKHdpdGhvdXQ6IG1lZGlhKSB7XG4gICAgICAgIC5yb3cuI3skLXpmLXNpemV9LXVuc3RhY2sge1xuICAgICAgICAgID4gLmNvbHVtbiB7XG4gICAgICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKDEwMCUpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtc2l6ZSkge1xuICAgICAgICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBjb2xsYXBzaW5nXG4gICAgLiN7JC16Zi1zaXplfS1jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4geyBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTsgfVxuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tdW5jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4geyBAaW5jbHVkZSBncmlkLWNvbC1ndXR0ZXIoJC16Zi1zaXplKTsgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFNpemluZyAoc2hyaW5rKVxuICAuc2hyaW5rIHtcbiAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKHNocmluayk7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZCBjb2x1bW5zXG4gIC5jb2x1bW4tYmxvY2sge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW1hcmdpbjtcbiAgfVxuXG4gIC5jb2x1bW5zIHtcbiAgICBAZXh0ZW5kIC5jb2x1bW47IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgcGxhY2Vob2xkZXItaW4tZXh0ZW5kXG5cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmFzZS1ncmlkLWNsYXNzZXMge1xuXG4gIC8vIEdyaWQgQ29udGFpbmVyXG4gIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG5cbiAgICAmLmZsdWlkIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUpO1xuICAgIH1cblxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigxMDAlLCAwKTtcbiAgICB9XG4gIH1cblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIC5ncmlkLXgge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQ7XG4gIH1cblxuICAuY2VsbCB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKCk7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGdyaWQtY29sdW1ucywgZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG5cbiAgICAmLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgIH1cblxuICAgICYuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICB9XG4gIC5ncmlkLXgge1xuICAgID4gLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoYXV0bywgZmFsc2UpO1xuICAgIH1cblxuICAgID4gLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhzaHJpbmssIGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICAvLyBBdXRvIHdpZHRoXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgLy8gVGhpcyBpcyBhIGJpdCBvZiBhIGhhY2svd29ya2Fyb3VuZCwgc2VlIHRoZXNlIGlzc3VlcyAmIFBScyBmb3IgdGhlIGJhY2tzdG9yeTpcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDIyMiBhbmRcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAxNjRcbiAgICAuZ3JpZC14IHtcbiAgICAgICRzdHI6IFwiPiAuI3skLXpmLXNpemV9LXNocmluaywgPiAuI3skLXpmLXNpemV9LWZ1bGxcIjtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICRzdHI6ICRzdHIgKyBcIiwgPiAuI3skLXpmLXNpemV9LSN7JGl9XCJcbiAgICAgIH1cbiAgICAgICN7JHN0cn0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgLy8gUmVzcG9uc2l2ZSBcImF1dG9cIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09IHNtYWxsKSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgXCJzaHJpbmtcIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09IHNtYWxsKSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksIGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHdpZHRoIHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi14YCBub3Qgb24gYC5ncmlkLXhgXG4gIC5ncmlkLW1hcmdpbi14Om5vdCguZ3JpZC14KSA+IC5jZWxsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC8vIFJlc2V0IGhlaWdodCB3aGVuIHVzaW5nIGAuZ3JpZC1tYXJnaW4teWAgbm90IG9uIGAuZ3JpZC15YFxuICAuZ3JpZC1tYXJnaW4teTpub3QoLmdyaWQteSkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbkBtaXhpbiAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGNsYXNzLWJyZWFrcG9pbnQsICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsKSB7XG4gICRwcmVmaXg6IGlmKCRjbGFzcy1icmVha3BvaW50ID09ICQtemYtemVyby1icmVha3BvaW50LCAnJywgJyN7JGNsYXNzLWJyZWFrcG9pbnR9LScpO1xuICA+IC4jeyRwcmVmaXh9YXV0byB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoYXV0bywgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gID4gLiN7JHByZWZpeH1zaHJpbmsge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICRjbGFzc25hbWU6IGlmKCR2ZXJ0aWNhbCwgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScsICcuI3skY2xhc3MtYnJlYWtwb2ludH0tI3skaX0nKTtcblxuICAgID4gI3skY2xhc3NuYW1lfSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgZmFsc2UsICRicmVha3BvaW50OiAkZ3V0dGVyLWJyZWFrcG9pbnQsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWFyZ2luIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXMoXG4gICRndXR0ZXItcG9zaXRpb246IGxlZnQgcmlnaHQsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICR3cmFwcGluZy1zZWxlY3RvcjogJy5ncmlkLW1hcmdpbi14J1xuKXtcbiAgI3skd3JhcHBpbmctc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSwgJGd1dHRlci1wb3NpdGlvbjogJGd1dHRlci1wb3NpdGlvbik7XG5cbiAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgLy8gYmFzZSBzdHlsZXMgbmVlZCB0byBhbGwgYmUgYmVmb3JlIHRoZSBhdXRvIGFuZCBzaHJpbmsgc3R5bGVzXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpZih0eXBlLW9mKCRncmlkLW1hcmdpbi1ndXR0ZXJzKSA9PSAnbWFwJyBhbmQgbWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSkgYW5kICQtemYtc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC5jZWxsIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkYnJlYWtwb2ludDogJC16Zi1zaXplLCAkdmVydGljYWw6ICR2ZXJ0aWNhbCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuXG4gICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgLy8gZm9yIGFsbCBwcmlvciBicmVha3BvaW50cy5cbiAgICAgIC8vIEFzIHRoZWlyIGd1dHRlciBpcyBkZWZpbmVkIHdpdGggdGhlaXIgd2lkdGgvaGVpZ2h0LCBldmVuIGJyZWFrcG9pbnQgd2l0aG91dCBhIG5ldyBtYXJnaW4gbXVzdCBiZVxuICAgICAgLy8gZ2VuZXJhdGVkIHRvIG5vdCBoYXZpbmcgdGhlaXIgd2lkdGgvaGVpZ2h0IG92ZXJyaWRlZCBieSByZS1hZGp1c3RlZCBzbWFsbGVyIGJyZWFrcG9pbnRzLlxuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICBAZWFjaCAkYnAgaW4gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkLXpmLXNpemUpIHtcbiAgICAgICAgICBAaW5jbHVkZSAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGJwLCAkLXpmLXNpemUsICR2ZXJ0aWNhbCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCQtemYtc2l6ZSwgJC16Zi1zaXplLCAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQYWRkaW5nIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzIHtcbiAgLmdyaWQtcGFkZGluZy14IHtcblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgbmVzdGVkIGdyaWRzXG4gICAgLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIGdyaWRzIHdpdGhpbiBgZ3JpZC1jb250YWluZXIvZ3JpZC1jb250YWluZXIuZmx1aWRgXG4gICAgLy8gVGhpcyBhbGxvd3MgbWFyZ2luIGFuZCBwYWRkaW5nIGdyaWRzIHRvIGxpbmUgdXAgd2l0aCBlYWNob3RoZXJcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+ICYge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQmxvY2sgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmxvY2stZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZDogdHJ1ZSwgJHBhZGRpbmctZ3JpZDogdHJ1ZSkge1xuICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRuOiAkaSwgJHNlbGVjdG9yOiAnLmNlbGwnLCAkZ3V0dGVyLW91dHB1dDogZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZywgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLy8gVGhpcyBpcyBwdXJlbHkgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycyAtIHRoZSBtYXJnaW4gZ3JpZCBoYXMgdG8gZ28gYmFjayBhbmQgYWRqdXN0IHdpZHRocyAob3IgaGVpZ2h0cylcbiAgICAgICAgLy8gZm9yIHByaW9yIGJyZWFrcG9pbnRzIGJhc2VkIG9uIHRoZSByZXNwb25zaXZlIGd1dHRlci5cbiAgICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICAgIEBlYWNoICRicCBpbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCQtemYtc2l6ZSkge1xuICAgICAgICAgICAgQGlmKG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkYnApKSB7XG4gICAgICAgICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JGJwfS11cC0jeyRpfSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBtYXJnaW4sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBtYXJnaW4sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENvbGxhcHNlIGNsYXNzZXNcbkBtaXhpbiB4eS1jb2xsYXBzZS1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICAgIC4jeyRicH0tbWFyZ2luLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG1pbi1icmVha3BvaW50OiAkYnApO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAgIC4jeyRicH0tcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29sbGFwc2UoJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE9mZnNldCBjbGFzc2VzXG5AbWl4aW4geHktb2Zmc2V0LWNlbGwtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KCRvLCAkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgfVxuXG4gICAgICAuZ3JpZC1tYXJnaW4teCA+IC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8sICRicmVha3BvaW50OiAkLXpmLXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBWZXJ0aWNhbCBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS12ZXJ0aWNhbC1ncmlkLWNsYXNzZXMoXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZVxuKSB7XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSBzbWFsbCkge1xuICAgIH1cbiAgfVxuXG4gIC5ncmlkLXkge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQodmVydGljYWwsIGZhbHNlKTtcblxuXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXJlc2V0KCk7XG4gICAgfVxuXG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cbiAgICA+IC5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzIGFuZCBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiXG4gICAgICB9XG4gICAgICAjeyRzdHJ9IHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgLy8gUmVzcG9uc2l2ZSBcImF1dG9cIiBtb2RpZmllclxuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShhdXRvKTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgICB9XG5cbiAgICAgIC8vIFJlc3BvbnNpdmUgXCJzaHJpbmtcIiBtb2RpZmllclxuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LXNocmluayB7XG4gICAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9O1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UsICRicmVha3BvaW50OiAkLXpmLXNpemUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksIGZhbHNlLCAkdmVydGljYWw6IHRydWUsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cblxuICAgICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgICAgPiAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICB9XG5cbn1cblxuQG1peGluIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZDogdHJ1ZSwgJG1hcmdpbi1ncmlkOiB0cnVlKSB7XG4gIC8vIEZyYW1lZCBncmlkIHN0eWxlc1xuICAuZ3JpZC1mcmFtZSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZTtcbiAgfVxuXG4gIC5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgfVxuXG4gIC5jZWxsLWJsb2NrIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gIH1cblxuICAuY2VsbC1ibG9jay15IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICB9XG5cblxuICAuY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCk7XG4gIH1cblxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcblxuICAgIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICAgIH1cblxuICAgIC5jZWxsIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2sge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jaygpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2steSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdmVydGljYWwtZ3JpZCB7XG4gICAgLmdyaWQteSB7XG4gICAgICAmLmdyaWQtZnJhbWUge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAmLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gICAgLmNlbGwge1xuICAgICAgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAuZ3JpZC15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3Nlcyh0b3AgYm90dG9tLCB0cnVlLCAnLmdyaWQtbWFyZ2luLXknKTtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSwgZmFsc2UsICRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkaW5jbHVkZS1iYXNlOiBmYWxzZSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgIC5ncmlkLW1hcmdpbi15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGaW5hbCBjbGFzc2VzXG5AbWl4aW4gZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXMoXG4gICRiYXNlLWdyaWQ6IHRydWUsXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZSxcbiAgJGJsb2NrLWdyaWQ6IHRydWUsXG4gICRjb2xsYXBzZTogdHJ1ZSxcbiAgJG9mZnNldDogdHJ1ZSxcbiAgJHZlcnRpY2FsLWdyaWQ6IHRydWUsXG4gICRmcmFtZS1ncmlkOiB0cnVlXG4pIHtcblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIEBpZigkYmFzZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktYmFzZS1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIE1hcmdpbiBncmlkXG4gIEBpZigkbWFyZ2luLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBQYWRkaW5nIGdyaWRcbiAgQGlmKCRwYWRkaW5nLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1wYWRkaW5nLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZFxuICBAaWYoJGJsb2NrLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIC8vIENvbGxhcHNlIGd1dHRlcnNcbiAgQGlmKCRjb2xsYXBzZSkge1xuICAgIEBpbmNsdWRlIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gT2Zmc2V0IGd1dHRlcnNcbiAgQGlmKCRvZmZzZXQpIHtcbiAgICBAaW5jbHVkZSB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBncmlkXG4gIEBpZigkdmVydGljYWwtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgQGlmICgkZnJhbWUtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZCwgJG1hcmdpbi1ncmlkKVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDcmVhdGUgZ3V0dGVycyBmb3IgYSBjZWxsL2NvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgZWl0aGVyIG1hcmdpbiBvciBwYWRkaW5nLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVnYXRpdmUgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gYXBwbHkgdGhlIGd1dHRlciBhcyBhIG5lZ2F0aXZlIHZhbHVlLiBDb21tb25seSB1c2VkIGZvciBuZXN0ZWQgZ3JpZHMuXG5AbWl4aW4geHktZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG5lZ2F0aXZlOiBmYWxzZVxuKSB7XG4gICRvcGVyYXRvcjogaWYoJG5lZ2F0aXZlLCAnLScsICcnKTtcblxuICAvLyBJZiB3ZSBoYXZlIGRlY2xhcmVkIG5lZ2F0aXZlIGd1dHRlcnMsIGZvcmNlIHR5cGUgdG8gYG1hcmdpbi5cbiAgJGd1dHRlci10eXBlOiBpZigkbmVnYXRpdmUsICdtYXJnaW4nLCAkZ3V0dGVyLXR5cGUpO1xuXG4gIC8vIE91dHB1dCBvdXIgbWFyZ2luIGd1dHRlcnMuXG4gIEBpZiAodHlwZS1vZigkZ3V0dGVycykgPT0gJ21hcCcpIHtcbiAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkZ3V0dGVycykge1xuICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuXG4gICAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogdW5xdW90ZShcIiN7JG9wZXJhdG9yfSN7JGd1dHRlcn1cIik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbnVtYmVyJykge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXJzKSAvIDI7XG5cbiAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAjeyRndXR0ZXItdHlwZX0tI3skdmFsdWV9OiB1bnF1b3RlKFwiI3skb3BlcmF0b3J9I3skZ3V0dGVyfVwiKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBtYXggd2lkdGggY29udGFpbmVyLCBkZXNpZ25lZCB0byBob3VzZSB5b3VyIGdyaWQgY29udGVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRncmlkLWNvbnRhaW5lcl0gLSBhIHdpZHRoIHRvIGxpbWl0IHRoZSBjb250YWluZXIgdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskZ3JpZC1jb250YWluZXItcGFkZGluZ10gLSBwYWRkaW5ncyBvZiB0aGUgY29udGFpbmVyLlxuQG1peGluIHh5LWdyaWQtY29udGFpbmVyKFxuICAkd2lkdGg6ICRncmlkLWNvbnRhaW5lcixcbiAgJHBhZGRpbmc6ICRncmlkLWNvbnRhaW5lci1wYWRkaW5nXG4pIHtcbiAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJHBhZGRpbmcsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG5cbiAgbWF4LXdpZHRoOiAkd2lkdGg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGNvbnRhaW5lciBmb3IgeW91ciBmbGV4IGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtob3Jpem9udGFsXSAtIEVpdGhlciBob3Jpem9udGFsIG9yIHZlcnRpY2FsIGRpcmVjdGlvbiBvZiBjZWxscyB3aXRoaW4uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkd3JhcCBbdHJ1ZV0gLSBJZiB0aGUgY2VsbHMgd2l0aGluIHNob3VsZCB3cmFwIG9yIG5vdC5cbkBtaXhpbiB4eS1ncmlkKFxuICAkZGlyZWN0aW9uOiBob3Jpem9udGFsLFxuICAkd3JhcDogdHJ1ZVxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCRkaXJlY3Rpb24gPT0gJ2hvcml6b250YWwnLCByb3csIGNvbHVtbik7XG4gICR3cmFwOiBpZigkd3JhcCwgd3JhcCwgbm93cmFwKTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6ICRkaXJlY3Rpb24gJHdyYXA7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDYWxjdWxhdGUgdGhlIHBlcmNlbnRhZ2Ugc2l6ZSBvZiBhIGNlbGwuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkc2l6ZSBbJGdyaWQtY29sdW1uc10gLSBTaXplIHRvIG1ha2UgdGhlIGNlbGwuIFlvdSBjYW4gcGFzcyBhIHZhbHVlIGluIG11bHRpcGxlIGZvcm1hdHMsIHN1Y2ggYXMgYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvM2AuXG5AZnVuY3Rpb24geHktY2VsbC1zaXplKFxuICAkc2l6ZTogJGdyaWQtY29sdW1uc1xuKSB7XG4gIC8vIFBhcnNpbmcgcGVyY2VudHMsIGRlY2ltYWxzLCBuIG9mIG4gYW5kIG51bWJlciBjb3VudHNcbiAgQGlmIHR5cGUtb2YoJHNpemUpID09ICdudW1iZXInIHtcbiAgICBAaWYgdW5pdCgkc2l6ZSkgPT0gJyUnIHtcbiAgICAgICRzaXplOiAkc2l6ZTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJHNpemUgPCAxIHtcbiAgICAgICRzaXplOiBwZXJjZW50YWdlKCRzaXplKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHNpemU6IHBlcmNlbnRhZ2UoJHNpemUgLyAkZ3JpZC1jb2x1bW5zKTtcbiAgICB9XG4gIH1cblxuICAvLyBQYXJzaW5nIFwibiBvZiBuXCIgb3IgXCJuL25cIiBleHByZXNzaW9uc1xuICBAZWxzZSBpZiB0eXBlLW9mKCRzaXplKSA9PSAnbGlzdCcge1xuICAgIEBpZiBsZW5ndGgoJHNpemUpICE9IDMge1xuICAgICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIHh5LWNlbGwtc2l6ZSgpLiBVc2UgdGhlIGZvcm1hdCBcIm4gb2YgblwiIG9yIFwibi9uXCIuJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHNpemU6IHBlcmNlbnRhZ2UobnRoKCRzaXplLCAxKSAvIG50aCgkc2l6ZSwgMykpO1xuICAgIH1cbiAgfVxuICAvLyBBbnl0aGluZyBlbHNlIGlzIGluY29ycmVjdFxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIHh5LWNlbGwtc2l6ZSgpLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIgLyBcIm4vblwiLic7XG4gIH1cblxuICBAcmV0dXJuICRzaXplO1xufVxuXG4vLy8gU2V0cyBiYXNlIGZsZXggcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQWNjZXB0cyBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2Agb3IgYGdyb3dgLlxuQG1peGluIHh5LWNlbGwtYmFzZSgkc2l6ZTogZnVsbCkge1xuICBAaWYoJHNpemUgPT0gJ2Z1bGwnKSB7XG4gICAgLy8gVGhpcyBpcyB0aGUgYmFzZSBzdHlsZSwgYWxsIG90aGVycyBpbmhlcml0IGZyb20gaXRcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBtaW4taGVpZ2h0OiAwcHg7XG4gICAgbWluLXdpZHRoOiAwcHg7XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdhdXRvJykge1xuICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdzaHJpbmsnKSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdncm93Jykge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG59XG5cbi8vLyBSZXNldHMgYSBjZWxscyB3aWR0aCAob3IgaGVpZ2h0IGlmIHZlcnRpY2FsIGlzIHRydWUpIGFzIHdlbGwgYXMgc3RyaXBzIGl0cyBndXR0ZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtcmVzZXQoJHZlcnRpY2FsOiB0cnVlKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCB3aWR0aCwgaGVpZ2h0KTtcbiAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgbWF4LSN7JGRpcmVjdGlvbn06IG5vbmU7XG59XG5cbi8vIFNldHMgb3VyIGNlbGwgd2lkdGhzIG9yIGhlaWdodHMgZGVwZW5kaW5nIG9uIGd1dHRlciB0eXBlLlxuQG1peGluIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICRtYXJnaW4tZ3V0dGVyLCAkdmVydGljYWwpIHtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIGhlaWdodCwgd2lkdGgpO1xuICBAaWYoJHNpemUgPT0gJ2Z1bGwnKSB7XG4gICAgJHZhbDogaWYoJG1hcmdpbi1ndXR0ZXIgPT0gMCwgMTAwJSwgY2FsYygxMDAlIC0gI3tyZW0tY2FsYygkbWFyZ2luLWd1dHRlcil9KSk7XG4gICAgI3skZGlyZWN0aW9ufTogJHZhbDtcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ2F1dG8nKSB7XG4gICAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgICAkdmFsOiBpZigkbWFyZ2luLWd1dHRlciA9PSAwLCAxMDAlLCBjYWxjKDEwMCUgLSAje3JlbS1jYWxjKCRtYXJnaW4tZ3V0dGVyKX0pKTtcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ3NocmluaycpIHtcbiAgICAjeyRkaXJlY3Rpb259OiBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkdmFsOiBpZigkbWFyZ2luLWd1dHRlciA9PSAwLCAje3h5LWNlbGwtc2l6ZSgkc2l6ZSl9LCBjYWxjKCN7eHktY2VsbC1zaXplKCRzaXplKX0gLSAje3JlbS1jYWxjKCRtYXJnaW4tZ3V0dGVyKX0pKTtcbiAgICAjeyRkaXJlY3Rpb259OiAkdmFsO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgY2VsbCBmb3IgeW91ciBncmlkLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgIChkZWZhdWx0KSBmb3IgMTAwJSB3aWR0aCwgYGF1dG9gIHRvIHVzZSB1cCBhdmFpbGFibGUgc3BhY2UgYW5kIGBzaHJpbmtgIHRvIHVzZSB1cCBvbmx5IHJlcXVpcmVkIHNwYWNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbChcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXItb3V0cHV0OiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRicC1pcy1mYWxsYmFjazogZmFsc2U7XG5cbiAgQGlmKCRicmVha3BvaW50ID09IG51bGwpIHtcbiAgICAvLyBJZiBgJGJwLXNpemVgIGlzIGF2YWlsYWJsZSB0aGVuIHVzZSB0aGlzLCBvdGhlcndpc2UgcmV2ZXJ0IHRvIHRoZSBzbWFsbGVzdCBicC5cbiAgICBAaWYodmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSBhbmQgdHlwZS1vZigkLXpmLXNpemUpICE9ICdudW1iZXInKSBhbmQgJC16Zi1zaXplICE9IG51bGwge1xuICAgICAgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50O1xuICAgICAgJGJwLWlzLWZhbGxiYWNrOiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIC8vIEdldCB0aGUgZ3V0dGVyIGZvciB0aGUgZ2l2ZW4gYnJlYWtwb2ludC92YWx1ZS5cbiAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSBmYWxsYmFjaywgdXNlIGEgZmFsbGJhY2sgZ3V0dGVyIGFzIHdlbGxcbiAgQGlmICgkYnAtaXMtZmFsbGJhY2sgPT0gdHJ1ZSBhbmQgJGd1dHRlciA9PSBudWxsKSB7XG4gICAgJGd1dHRlcjogMDtcbiAgfVxuXG4gIEBpZigkZ3V0dGVyICE9IG51bGwpIHtcbiAgICAvLyBCYXNlIGZsZXggcHJvcGVydGllc1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZSgkc2l6ZSk7XG5cbiAgICBAaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG4gICAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkZ3V0dGVyLCAkdmVydGljYWwpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAwLCAkdmVydGljYWwpO1xuICAgIH1cblxuICAgIEBpZiAkZ3V0dGVyLW91dHB1dCB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXIsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAneHktY2VsbDogbm8gZ3V0dGVycyB3ZXJlIGZvdW5kIGluIGAkZ3V0dGVyc2AgZm9yIFwiJGJyZWFrcG9pbnQ6ICN7JGJyZWFrcG9pbnR9XCIsIGNlbGwgd2FzIG5vdCBnZW5lcmF0ZWRgJ1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2luZ2xlIGJyZWFrcG9pbnQgc2l6ZWQgZ3JpZC4gVXNlZCB0byBnZW5lcmF0ZSBvdXIgZ3JpZCBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgIChkZWZhdWx0KSBmb3IgMTAwJSB3aWR0aCwgYGF1dG9gIHRvIHVzZSB1cCBhdmFpbGFibGUgc3BhY2UgYW5kIGBzaHJpbmtgIHRvIHVzZSB1cCBvbmx5IHJlcXVpcmVkIHNwYWNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtc3RhdGljKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG5cbiAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgJGd1dHRlci1wb3NpdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHRvcCBib3R0b20sIGxlZnQgcmlnaHQpO1xuXG4gIEBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkZ3V0dGVyLCAkdmVydGljYWwpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAwLCAkdmVydGljYWwpO1xuICB9XG5cbiAgLy8gSWYgd2Ugd2FudCB0byBvdXRwdXQgdGhlIGd1dHRlcnNcbiAgQGlmKCRndXR0ZXItb3V0cHV0KSB7XG4gICAgLy8gVE9ETzogRmlndXJlIG91dCBpZiB3ZSBuZWVkIHRvIHBhc3MgYnJlYWtwb2ludCBpbiBoZXJlIHRvby5cbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXIsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIFNpemVzIGNoaWxkIGVsZW1lbnRzIHNvIHRoYXQgYCRuYCBudW1iZXIgb2YgaXRlbXMgYXBwZWFyIG9uIGVhY2ggcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRuIC0gTnVtYmVyIG9mIGVsZW1lbnRzIHRvIGRpc3BsYXkgcGVyIHJvdy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsnLmNlbGwnXSAtIFNlbGVjdG9yKHMpIHRvIHVzZSBmb3IgY2hpbGQgZWxlbWVudHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAgb3IgYHBhZGRpbmdgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBicmVha3BvaW50IHRvIHVzZSBmb3IgdGhlIGNlbGwgZ2VuZXJhdGlvbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktZ3JpZC1sYXlvdXQoXG4gICRuLFxuICAkc2VsZWN0b3I6ICcuY2VsbCcsXG4gICRndXR0ZXItb3V0cHV0OiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRzaXplOiBwZXJjZW50YWdlKDEvJG4pO1xuXG4gICYgPiAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwoJHNpemUsICRndXR0ZXItb3V0cHV0LCAkZ3V0dGVycywgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uLCAkYnJlYWtwb2ludCwgJHZlcnRpY2FsKTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ29sbGFwc2VzIHRoZSBncmlkIGEgY2VsbHMgd2l0aGluIGl0LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbLmNlbGxdIC0gVGhlIGNoaWxkIGVsZW1lbnQgdG8gcmVtb3ZlIHRoZSBndXR0ZXIgZnJvbS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFRoZSB0eXBlIG9mIGd1dHRlciB0byByZW1vdmUuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbnMgdG8gcmVtb3ZlIGd1dHRlcnMgZnJvbS4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkbWluLWJyZWFrcG9pbnQgWyQtemYtemVyby1icmVha3BvaW50XSAtIE1pbmltdW0gYnJlYWtwb2ludCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgZm9yIHdoaWNoIHRvIGNvbGxhcHNlIHRoZSBndXR0ZXIuXG5AbWl4aW4geHktZ3JpZC1jb2xsYXBzZShcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG1pbi1icmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludFxuKSB7XG4gIC8vIEZpcnN0LCBsZXRzIG5lZ2F0ZSBhbnkgbWFyZ2lucyBvbiB0aGUgdG9wIGxldmVsXG4gIEBpZiAoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGV4Y2x1ZGVkLWJwczogLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkbWluLWJyZWFrcG9pbnQpO1xuXG4gICAgLy8gT3V0cHV0IG5ldyB3aWR0aHMgdG8gbm90IGluY2x1ZGUgZ3V0dGVyc1xuICAgIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZihzbC1jb250YWluKCRleGNsdWRlZC1icHMsICRicCkpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoJGksICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicCkge1xuICAgICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgICAgICA+IC4jeyRicH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgJGd1dHRlci1vdXRwdXQ6IGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBwYWRkaW5nLSN7JHZhbHVlfTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQvYm90dG9tIGJ5IGAkbmAgY29sdW1ucy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB6Zi1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRicmVha3BvaW50IFskLXpmLXplcm8tYnJlYWtwb2ludF0gLSBTaW5nbGUgdmFsdWUsIGJyZWFrcG9pbnQgbmFtZSwgb3IgbGlzdCBvZiBicmVha3BvaW50IG5hbWVzIHRvIHVzZSBmb3IgYCRndXR0ZXJzYC4gU2VlIGAtemYtYnJlYWtwb2ludC12YWx1ZSgpYC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIFNldHMgdGhlIGRpcmVjdGlvbiBvZiB0aGUgb2Zmc2V0LiBJZiBzZXQgdG8gdHJ1ZSB3aWxsIGFwcGx5IG1hcmdpbi10b3AgaW5zdGVhZC5cbkBtaXhpbiB4eS1jZWxsLW9mZnNldChcbiAkbixcbiAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50LFxuICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwsICd0b3AnLCAkZ2xvYmFsLWxlZnQpO1xuXG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRicmVha3BvaW50LCAkZ3V0dGVycykge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcbiAgICAkZ3V0dGVyLW1hcmdpbjogaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nLCAkZ3V0dGVyLCAwKTtcbiAgICAkc2l6ZTogaWYoJGd1dHRlci1tYXJnaW4gPT0gMCwgI3t4eS1jZWxsLXNpemUoJG4pfSwgY2FsYygje3h5LWNlbGwtc2l6ZSgkbil9ICsgI3skZ3V0dGVyLW1hcmdpbn0pKTtcblxuICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAjeyRzaXplfTtcbiAgfVxufVxuIiwiLy8vIE1vZGlmaWVzIGEgZ3JpZCB0byBnaXZlIGl0IFwiZnJhbWVcIiBiZWhhdmlvciAobm8gb3ZlcmZsb3csIG5vIHdyYXAsIHN0cmV0Y2ggYmVoYXZpb3IpXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gSXMgZ3JpZCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsLiBTaG91bGQgbWF0Y2ggZ3JpZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRuZXN0ZWQgW2ZhbHNlXSAtIElzIGdyaWQgbmVzdGVkIG9yIG5vdC4gSWYgbmVzdGVkIGlzIHRydWUgdGhpcyBzZXRzIHRoZSBmcmFtZSB0byAxMDAlIGhlaWdodCwgb3RoZXJ3aXNlIHdpbGwgYmUgMTAwdmguXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbbnVsbF0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaW5jbHVkZS1iYXNlIFt0cnVlXSAtIEluY2x1ZGUgdGhlIGJhc2Ugc3R5bGVzIHRoYXQgZG9uJ3QgdmFyeSBwZXIgYnJlYWtwb2ludC5cbkBtaXhpbiB4eS1ncmlkLWZyYW1lKFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkbmVzdGVkOiBmYWxzZSxcbiAgJGd1dHRlcnM6IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkaW5jbHVkZS1iYXNlOiB0cnVlXG4pIHtcblxuICBAaWYgJGluY2x1ZGUtYmFzZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cblxuICBAaWYgJGJyZWFrcG9pbnQgPT0gbnVsbCBhbmQgdHlwZS1vZigkZ3V0dGVycykgPT0gJ21hcCcge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKCR2ZXJ0aWNhbCwgJG5lc3RlZCwgJGd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgLy8gR2V0IG91ciBndXR0ZXJzIGlmIGFwcGxpY2FibGVcbiAgICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuXG4gICAgLy8gSWYgd2UgaGF2ZSBhIGd1dHRlciwgYWRkIGl0IHRvIHRoZSB3aWR0aC9oZWlnaHRcbiAgICBAaWYgJGd1dHRlciB7XG4gICAgICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgICAgICAkdW5pdDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2aCk7XG4gICAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXIpO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoI3skdW5pdH0gKyAjeyRndXR0ZXJ9KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkdW5pdDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2dyk7XG4gICAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXIpO1xuICAgICAgICB3aWR0aDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgICAgICBoZWlnaHQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdmgpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIHdpZHRoOiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIE1vZGlmaWVzIGEgY2VsbCB0byBnaXZlIGl0IFwiYmxvY2tcIiBiZWhhdmlvciAob3ZlcmZsb3cgYXV0bywgaW5lcnRpYWwgc2Nyb2xsaW5nKVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIElzIGdyaWQgdmVydGljYWwgb3IgaG9yaXpvbnRhbC4gU2hvdWxkIG1hdGNoIGdyaWQuXG5AbWl4aW4geHktY2VsbC1ibG9jayhcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRwcm9wZXJ0eTogaWYoJHZlcnRpY2FsID09IHRydWUsICdvdmVyZmxvdy15JywgJ292ZXJmbG93LXgnKTtcblxuICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICB9IEBlbHNlIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG59XG5cbi8vLyBDb250YWluZXIgZm9yIGluc2lkZSBhIGdyaWQgZnJhbWUgY29udGFpbmluZyBtdWx0aXBsZSBibG9ja3MuIFR5cGljYWxseSB1c2VkXG4vLy8gYXMgYSBtb2RpZmllciBmb3IgYSBgLmNlbGxgIHRvIGFsbG93IHRoZSBjZWxsIHRvIHBhc3MgYWxvbmcgZmxleCBzaXppbmdcbi8vLyBjb25zdHJhaW50cyAvIGZyb20gcGFyZW50cyB0byBjaGlsZHJlbi5cbkBtaXhpbiB4eS1jZWxsLWJsb2NrLWNvbnRhaW5lcigpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LWhlaWdodDogMTAwJTtcblxuICA+IC5ncmlkLXgge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktYmFzZVxuLy8vL1xuXG4vLyBCYXNlIFR5cG9ncmFwaHlcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4vLyBUaGVzZSBhcmUgc3R5bGVzIGFwcGxpZWQgdG8gYmFzaWMgSFRNTCB0YWdzLCBpbmNsdWRpbmc6XG4vLyAgIC0gUGFyYWdyYXBocyA8cD5cbi8vICAgLSBCb2xkL2l0YWxpY3MgPGI+IDxzdHJvbmc+IDxpPiA8ZW0+XG4vLyAgIC0gU21hbGwgdGV4dCA8c21hbGw+XG4vLyAgIC0gSGVhZGluZ3MgPGgxPi08aDY+XG4vLyAgIC0gQW5jaG9ycyA8YT5cbi8vICAgLSBEaXZpZGVycyA8aHI+XG4vLyAgIC0gTGlzdHMgPHVsPiA8b2w+IDxkbD5cbi8vICAgLSBCbG9ja3F1b3RlcyA8YmxvY2txdW90ZT5cbi8vICAgLSBDb2RlIGJsb2NrcyA8Y29kZT5cbi8vICAgLSBBYmJyZXZpYXRpb25zIDxhYmJyPlxuLy8gICAtIENpdGF0aW9ucyA8Y2l0ZT5cbi8vICAgLSBLZXlzdHJva2VzIDxrYmQ+XG5cbi8vLyBGb250IGZhbWlseSBmb3IgaGVhZGVyIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3R5bGUgKGUuZy4gaXRhbGljaXplZCkgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayB1c2VkIGZvciBlbGVtZW50cyB0aGF0IHVzZSBtb25vc3BhY2VkIHR5cGUsIHN1Y2ggYXMgY29kZSBzYW1wbGVzXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgZm9yIGhlYWRpbmdzIGF0IHZhcmlvdXMgc2NyZWVuIHNpemVzLiBFYWNoIGtleSBpcyBhIGJyZWFrcG9pbnQsIGFuZCBlYWNoIHZhbHVlIGlzIGEgbWFwIG9mIGhlYWRpbmcgc3R5bGVzLlxuLy8vIEB0eXBlIE1hcFxuJGhlYWRlci1zdHlsZXM6IChcbiAgc21hbGw6IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE5KSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE3KSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiA0OCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiA0MCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAzMSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAyNSksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLyAkaGVhZGVyLXN0eWxlcyBtYXAgaXMgYnVpbHQgZnJvbSAkaGVhZGVyLXNpemVzIGluIG9yZGVyIHRvIGVuc3VyZSBkb3dud2FyZCBjb21wYXRpYmlsaXR5XG4vLyB3aGVuICRoZWFkZXItc2l6ZXMgaXMgZGVwcmVjaWF0ZWQsICRoZWFkZXItc3R5bGVzIG5lZWRzIHRvIGdldCAhZGVmYXVsdCB2YWx1ZXMgbGlrZSBzZXR0aW5ncy5zY3NzXG5AZnVuY3Rpb24gYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcykge1xuICBAd2FybiAnTm90ZSwgdGhhdCAkaGVhZGVyLXNpemVzIGhhcyBiZWVuIHJlcGxhY2VkIHdpdGggJGhlYWRlci1zdHlsZXMuICRoZWFkZXItc2l6ZXMgc3RpbGwgd29ya3MsIGJ1dCBpdCBpcyBnb2luZyB0byBiZSBkZXByZWNpYXRlZC4nO1xuICAkaGVhZGVyLXN0eWxlczogKCk7XG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXNpemVzIHtcbiAgICAkaGVhZGVyLW1hcDogKCk7XG4gICAgQGVhY2ggJGhlYWRlciwgJGZvbnQtc2l6ZSBpbiAkaGVhZGVycyB7XG4gICAgICAkaGVhZGVyLW1hcDogbWFwLW1lcmdlKCRoZWFkZXItbWFwLCAoJGhlYWRlcjogKCdmb250LXNpemUnOiAkZm9udC1zaXplKSkpO1xuICAgIH1cbiAgICAkaGVhZGVyLXN0eWxlczogbWFwLW1lcmdlKCRoZWFkZXItc3R5bGVzLCAoJHNpemU6ICRoZWFkZXItbWFwKSk7XG4gIH1cbiAgQHJldHVybiAkaGVhZGVyLXN0eWxlcztcbn1cblxuLy8gSWYgaXQgZXhpc3RzICRoZWFkZXJzLXNpemVzIGlzIHVzZWQgdG8gYnVpbGQgJGhlYWRlci1zdHlsZXMuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoaGVhZGVyLXNpemVzKSB7XG4gICRoZWFkZXItc3R5bGVzOiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKTtcbn1cblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGA8c21hbGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzbWFsbC1mb250LXNpemU6IDgwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGA8c21hbGw+YCBlbGVtZW50cyB3aGVuIHBsYWNlZCBpbnNpZGUgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGluc2lkZSBgPHA+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIGZvciBwYXJhZ3JhcGggdGV4dC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBhcm91bmQgdGV4dCBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBMaXN0XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0byAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b20gIWRlZmF1bHQ7XG5cbi8vLyBCdWxsZXQgdHlwZSB0byB1c2UgZm9yIHVub3JkZXJlZCBsaXN0cyAoZS5nLiwgYHNxdWFyZWAsIGBjaXJjbGVgLCBgZGlzY2ApLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYyAhZGVmYXVsdDtcblxuLy8vIFBvc2l0aW9uaW5nIGZvciBidWxsZXRzIG9uIHVub3JkZXJlZCBsaXN0IGl0ZW1zLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGUgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBsaXN0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgYSBsaXN0IGluc2lkZSBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBgPGRsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBgPGR0PmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYDxkdD5gIGFuZCBgPGRkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGEgYDxibG9ja3F1b3RlPmAgZWxlbWVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpICFkZWZhdWx0O1xuXG4vLy8gU2lkZSBib3JkZXIgZm9yIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBzZXVkbyBjb250ZW50IGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCcgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIGJvcmRlciBzdHlsZSBmb3IgYDxhYmJyPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjayAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1iYXNlIHtcbiAgLy8gVHlwb2dyYXBoeSByZXNldHNcbiAgZGl2LFxuICBkbCxcbiAgZHQsXG4gIGRkLFxuICB1bCxcbiAgb2wsXG4gIGxpLFxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2LFxuICBwcmUsXG4gIGZvcm0sXG4gIHAsXG4gIGJsb2NrcXVvdGUsXG4gIHRoLFxuICB0ZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBQYXJhZ3JhcGhzXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgIHRleHQtcmVuZGVyaW5nOiAkcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nO1xuICB9XG5cbiAgLy8gRW1waGFzaXplZCB0ZXh0XG4gIGVtLFxuICBpIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTdHJvbmcgdGV4dFxuICBzdHJvbmcsXG4gIGIge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU21hbGwgdGV4dFxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSGVhZGluZ3NcbiAgaDEsIC5oMSxcbiAgaDIsIC5oMixcbiAgaDMsIC5oMyxcbiAgaDQsIC5oNCxcbiAgaDUsIC5oNSxcbiAgaDYsIC5oNiB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJGhlYWRlci1mb250LXN0eWxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgIHRleHQtcmVuZGVyaW5nOiAkaGVhZGVyLXRleHQtcmVuZGVyaW5nO1xuXG4gICAgc21hbGwge1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBjb2xvcjogJGhlYWRlci1zbWFsbC1mb250LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhlYWRpbmcgc3R5bGVzXG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXN0eWxlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGhlYWRlciwgJGhlYWRlci1kZWZzIGluICRoZWFkZXJzIHtcbiAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiAxcmVtO1xuICAgICAgICAjeyRoZWFkZXJ9LCAuI3skaGVhZGVyfSB7XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmb250LXNpemUpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZzKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmcykpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxoKSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGgpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMoJGhlYWRlci1saW5laGVpZ2h0LCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG10KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbXQpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1iKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWIpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCRoZWFkZXItbWFyZ2luLWJvdHRvbSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTGlua3NcbiAgYSB7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbjtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGFuY2hvci1jb2xvci1ob3ZlcjtcbiAgICAgIEBpZiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlciAhPSAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbiB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cblxuICAvLyBIb3Jpem9udGFsIHJ1bGVcbiAgaHIge1xuICAgIGNsZWFyOiBib3RoO1xuXG4gICAgbWF4LXdpZHRoOiAkaHItd2lkdGg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbjogJGhyLW1hcmdpbjtcblxuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b206ICRoci1ib3JkZXI7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cblxuICAvLyBMaXN0c1xuICB1bCxcbiAgb2wsXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGlzdC1tYXJnaW4tYm90dG9tO1xuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246ICRsaXN0LXN0eWxlLXBvc2l0aW9uO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGlzdC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gTGlzdCBpdGVtc1xuICBsaSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gVW5vcmRlcmVkIGxpc3RzXG4gIHVsIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgICBsaXN0LXN0eWxlLXR5cGU6ICRsaXN0LXN0eWxlLXR5cGU7XG4gIH1cblxuICAvLyBPcmRlcmVkIGxpc3RzXG4gIG9sIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgfVxuXG4gIC8vIE5lc3RlZCB1bm9yZGVyZWQvb3JkZXJlZCBsaXN0c1xuICB1bCwgb2wge1xuICAgICYgJiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIERlZmluaXRpb24gbGlzdHNcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZHQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZGVmbmxpc3QtdGVybS13ZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2txdW90ZXNcbiAgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwIDAgJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgIHBhZGRpbmc6ICRibG9ja3F1b3RlLXBhZGRpbmc7XG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGJsb2NrcXVvdGUtYm9yZGVyO1xuXG4gICAgJiwgcCB7XG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIENpdGF0aW9uc1xuICBjaXRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRjaXRlLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGNpdGUtY29sb3I7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAkY2l0ZS1wc2V1ZG8tY29udGVudDtcbiAgICB9XG4gIH1cblxuICAvLyBBYmJyZXZpYXRpb25zXG4gIGFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiAkYWJici11bmRlcmxpbmU7XG4gICAgY3Vyc29yOiBoZWxwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIEZpZ3VyZXNcbiAgZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb2RlXG4gIGNvZGUge1xuICAgIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmc7XG5cbiAgICBib3JkZXI6ICRjb2RlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkY29kZS1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIH1cblxuICAvLyBLZXlzdHJva2VzXG4gIGtiZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICRrZXlzdHJva2UtcGFkZGluZztcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRrZXlzdHJva2UtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAka2V5c3Ryb2tlLWZvbnQ7XG4gICAgY29sb3I6ICRrZXlzdHJva2UtY29sb3I7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRrZXlzdHJva2UtcmFkaXVzKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAka2V5c3Ryb2tlLXJhZGl1cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktaGVscGVyc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxlYWQtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdG9wIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3Igc3RhdGlzdGljIG51bWJlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3RhdC1mb250LXNpemU6IDIuNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1oZWxwZXJzIHtcbiAgLy8gVXNlIHRvIGNyZWF0ZSBhIHN1YmhlYWRpbmcgdW5kZXIgYSBtYWluIGhlYWRlclxuICAvLyBNYWtlIHN1cmUgeW91IHBhaXIgdGhlIHR3byBlbGVtZW50cyBpbiBhIDxoZWFkZXI+IGVsZW1lbnQsIGxpa2UgdGhpczpcbiAgLy8gPGhlYWRlcj5cbiAgLy8gICA8aDE+SGVhZGluZzwvaDE+XG4gIC8vICAgPGgyPlN1YmhlYWRpbmc8L2gyPlxuICAvLyA8L2hlYWRlcj5cbiAgLnN1YmhlYWRlciB7XG4gICAgbWFyZ2luLXRvcDogJHN1YmhlYWRlci1tYXJnaW4tdG9wO1xuICAgIG1hcmdpbi1ib3R0b206ICRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtd2VpZ2h0OiAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkc3ViaGVhZGVyLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRzdWJoZWFkZXItY29sb3I7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYW4gaW50cm9kdWN0b3J5IGxlYWQsIGRlY2ssIGJsdXJiLCBldGMuXG4gIC5sZWFkIHtcbiAgICBmb250LXNpemU6ICRsZWFkLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxlYWQtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhIGxhcmdlIG51bWJlciB0byBkaXNwbGF5IGEgc3RhdGlzdGljXG4gIC5zdGF0IHtcbiAgICBmb250LXNpemU6ICRzdGF0LWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgIHAgKyAmIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgIH1cbiAgfVxuXG4gIHVsLCBvbCB7XG4gICAgLy8gVXNlIHRvIHJlbW92ZSBudW1iZXJzIGZyb20gb3JkZXJlZCBsaXN0ICYgYnVsbGV0cyBmcm9tIHVub3JkZXJlZCBsaXN0XG4gICAgJi5uby1idWxsZXQge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tdGV4dC1hbGlnbm1lbnQge1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkYWxpZ24gaW4gKGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnkpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tdGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLnRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSWYgYHRydWVgLCBhbGwgZWxlbWVudHMgd2lsbCBoYXZlIHRyYW5zcGFyZW50IGJhY2tncm91bmRzIHdoZW4gcHJpbnRlZCwgdG8gc2F2ZSBvbiBpbmsuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgZGlzcGxheXMgbmV4dCB0byBhbGwgbGlua3MgdGhlaXIgXCJocmVmXCIgd2hlbiBwcmludGVkLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtaHJlZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIHNhc3MtbGludDpkaXNhYmxlLWFsbFxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcmludC1zdHlsZXMge1xuICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgICoge1xuICAgICAgQGlmICRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kcyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3NcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5oaWRlLWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgdGhlYWQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRib2R5LnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgdGQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICB0aC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG4gICAgLy8gRGlzcGxheSB0aGUgVVJMIG9mIGEgbGluayBhZnRlciB0aGUgdGV4dFxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuICAgIEBpZiAkcHJpbnQtaHJlZnMge1xuICAgICAgYVtocmVmXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cihocmVmKSAnKSc7IH1cbiAgICB9XG5cbiAgICAvLyBEb24ndCBkaXNwbGF5IHRoZSBVUkwgZm9yIGltYWdlcyBvciBKYXZhU2NyaXB0L2ludGVybmFsIGxpbmtzXG4gICAgLmlyIGE6YWZ0ZXIsXG4gICAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgICBhW2hyZWZePScjJ106YWZ0ZXIgeyBjb250ZW50OiAnJzsgfVxuXG4gICAgLy8gRGlzcGxheSB3aGF0IGFuIGFiYnJldmlhdGlvbiBzdGFuZHMgZm9yIGFmdGVyIHRoZSB0ZXh0XG4gICAgYWJiclt0aXRsZV06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIodGl0bGUpICcpJzsgfVxuXG4gICAgLy8gUHJldmVudCBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGEgYmxvY2txdW90ZSBvciBwcmVmb3JtYXR0ZWQgdGV4dCBibG9ja1xuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gaDVicC5jb20vdFxuICAgIHRoZWFkIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG5cbiAgICB0cixcbiAgICBpbWcgeyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cblxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICBAcGFnZSB7IG1hcmdpbjogMC41Y207IH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICAvLyBBdm9pZCBwYWdlIGJyZWFrcyBhZnRlciBhIGhlYWRpbmdcbiAgICBoMixcbiAgICBoMyB7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG5cbiAgICAvLyBIZWxwZXIgdG8gcmUtYWxsb3cgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBjZXJ0YWluIGVsZW1lbnRzIChlLmcuIHByZSwgYmxvY2txdW90ZSwgdHIpXG4gICAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vL1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBAdHlwZSBGb250XG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYXJvdW5kIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmaWxsIGZvciBidXR0b25zLiBDYW4gZWl0aGVyIGJlIGBzb2xpZGAgb3IgYGhvbGxvd2AuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGJ1dHRvbi1maWxsOiBzb2xpZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRpdmUgZm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgd2lkdGggZm9yIGhvbGxvdyBvdXRsaW5lIGJ1dHRvbnNcbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBBZGRpdGlvbmFsIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgLmV4cGFuZGVkXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gVE9ETzogRG9jdW1lbnQgYnV0dG9uLWJhc2UoKSBtaXhpblxuQG1peGluIGJ1dHRvbi1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG5cbiAgQGlmICh0eXBlLW9mKCRidXR0b24tcGFkZGluZykgPT0gJ21hcCcpIHtcbiAgICBAZWFjaCAkc2l6ZSwgJHBhZGRpbmcgaW4gJGJ1dHRvbi1wYWRkaW5nIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG4gIH1cblxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gIHRyYW5zaXRpb246ICRidXR0b24tdHJhbnNpdGlvbjtcbiAgZm9udC1mYW1pbHk6ICRidXR0b24tZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogbWFwLWdldCgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzKTtcbiAgfVxuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgYmFja2dyb3VuZCBmaWxsIG9uIGhvdmVyIGFuZCBmb2N1cyBmb3IgaG9sbG93IGJ1dHRvbnMuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdyB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0ge1xuICAgICYsXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1ob2xsb3ctc3R5bGUoXG4gICRjb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3MsXG4gICRib3JkZXItd2lkdGg6ICRidXR0b24taG9sbG93LWJvcmRlci13aWR0aFxuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZGlzYWJsZWQgc3R5bGVzIHRvIGEgYnV0dG9uIGJ5IGZhZGluZyB0aGUgZWxlbWVudCwgcmVzZXRpbmcgdGhlIGN1cnNvciwgYW5kIGRpc2FibGluZyBwb2ludGVyIGV2ZW50cy5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuKSB7XG4gIEBpZiAkY29sb3IgPT0gYXV0byB7XG4gICAgJGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGJ1dHRvbi1jb2xvciwgJGJ1dHRvbi1jb2xvci1hbHQpKTtcbiAgfVxuXG4gIG9wYWNpdHk6ICRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBBZGRzIGEgZHJvcGRvd24gYXJyb3cgdG8gYSBidXR0b24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFswLjRlbV0gLSBTaXplIG9mIHRoZSBhcnJvdy4gV2UgcmVjb21tZW5kIHVzaW5nIGFuIGBlbWAgdmFsdWUgc28gdGhlIHRyaWFuZ2xlIHNjYWxlcyB3aGVuIHVzZWQgaW5zaWRlIGRpZmZlcmVudCBzaXplcyBvZiBidXR0b25zLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbd2hpdGVdIC0gQ29sb3Igb2YgdGhlIGFycm93LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb2Zmc2V0IFskYnV0dG9uLXBhZGRpbmddIC0gRGlzdGFuY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0IG9mIHRoZSBidXR0b24uIERlZmF1bHRzIHRvIHdoYXRldmVyIHRoZSByaWdodCBwYWRkaW5nIG9mIGEgYnV0dG9uIGlzLlxuQG1peGluIGJ1dHRvbi1kcm9wZG93bihcbiAgJHNpemU6IDAuNGVtLFxuICAkY29sb3I6ICR3aGl0ZSxcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodClcbikge1xuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRzaXplLCAkY29sb3IsIGRvd24pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyAvLyBBbGlnbnMgdGhlIGFycm93IHdpdGggdGhlIHRleHQgb2YgdGhlIGJ1dHRvblxuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtcmlnaHR9O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcblxuICBAaWYgJHN0eWxlID09IHNvbGlkIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuICB9XG4gIEBlbHNlIGlmICRzdHlsZSA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cblxuICBAaWYgJGV4cGFuZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24ge1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIEBpZiAkYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQge1xuICAgICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gb25seSkge1xuICAgICAgICAgICYuI3skc2l6ZX0tb25seS1leHBhbmRlZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gZG93bikge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1kb3duLWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9KSB7XG4gICAgICAgICAgICAmLiN7JHNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDb2xvcnNcbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuI3skbmFtZX0uZHJvcGRvd246OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdHlsZVxuICAgICYuZGlzYWJsZWQsXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkO1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZCgkY29sb3IsIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSG9sbG93IHN0eWxlXG4gICAgQGlmICRidXR0b24tZmlsbCAhPSBob2xsb3cge1xuICAgICAgJi5ob2xsb3cge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlO1xuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDbGVhciBzdHlsZVxuICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gY2xlYXIge1xuICAgICAgJi5jbGVhciB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgJiwgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG5cbiAgICAgICAgICAgICYsICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgJixcbiAgICAgICAgICAgICAgJi5kaXNhYmxlZCxcbiAgICAgICAgICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEcm9wZG93biBhcnJvd1xuICAgICYuZHJvcGRvd24ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRyb3Bkb3duO1xuXG4gICAgICBAaWYgJGJ1dHRvbi1maWxsID09IGhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5ob2xsb3csICYuY2xlYXIge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQnV0dG9uIHdpdGggZHJvcGRvd24gYXJyb3cgb25seVxuICAgICYuYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgICAgdG9wOiAtMC4xZW07XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgfVxuICB9XG5cbiAgYS5idXR0b24geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEZvbnQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiBwbGFjZWhvbGRlciB0ZXh0IHdpdGhpbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBGb250XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZm9jdXNlZCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBmb2N1c2VkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMiAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgaW5zaWRlIHRleHQgaW5wdXRzIHdoZW4gbm90IGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IG91dHNpZGUgdGV4dCBpbnB1dHMgd2hlbiBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDdXJzb3IgdG8gdXNlIHdoZW4gaG92ZXJpbmcgb3ZlciBhIGRpc2FibGVkIHRleHQgaW5wdXQuXG4vLy8gQHR5cGUgQ3Vyc29yXG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuLy8vIFByb3BlcnRpZXMgdG8gdHJhbnNpdGlvbiBvbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIHRoZSB1cC9kb3duIGJ1dHRvbnMgdGhhdCBDaHJvbWUgYW5kIEZpcmVmb3ggYWRkIHRvIGA8aW5wdXQgdHlwZT0nbnVtYmVyJz5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBSYWRpdXMgZm9yIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBmb3JtIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWVsZW1lbnQge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3c7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS10ZXh0IHtcbiAgLy8gVGV4dCBpbnB1dHNcbiAgI3t0ZXh0LWlucHV0cygpfSxcbiAgdGV4dGFyZWEge1xuICAgIEBpbmNsdWRlIGZvcm0tZWxlbWVudDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gVGV4dCBhcmVhc1xuICB0ZXh0YXJlYSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgJltyb3dzXSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgaW5wdXQsXG4gIHRleHRhcmVhIHtcbiAgICAvLyBEaXNhYmxlZC9yZWFkb25seSBzdGF0ZVxuICAgICY6ZGlzYWJsZWQsXG4gICAgJltyZWFkb25seV0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9uIGJ1dHRvbi1saWtlIGlucHV0c1xuICBbdHlwZT0nc3VibWl0J10sXG4gIFt0eXBlPSdidXR0b24nXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1idXR0b24tcmFkaXVzO1xuICB9XG5cbiAgLy8gUmVzZXQgTm9ybWFsaXplIHNldHRpbmcgY29udGVudC1ib3ggdG8gc2VhcmNoIGVsZW1lbnRzXG4gIGlucHV0W3R5cGU9J3NlYXJjaCddIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC8vIE51bWJlciBpbnB1dCBzdHlsZXNcbiAgW3R5cGU9J251bWJlciddIHtcbiAgICBAaWYgbm90ICRpbnB1dC1udW1iZXItc3Bpbm5lcnMge1xuICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG5cbiAgICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXIgdGV4dFxuICA6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWNoZWNrYm94IHtcbiAgW3R5cGU9J2ZpbGUnXSxcbiAgW3R5cGU9J2NoZWNrYm94J10sXG4gIFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dC9sYWJlbCBzaWJsaW5nc1xuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuXG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgJltmb3JdIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0cyBpbnNpZGUgbGFiZWxzXG4gIGxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG4gIGxhYmVsID4gW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLy8gTm9ybWFsaXplIGZpbGUgaW5wdXQgd2lkdGhcbiAgW3R5cGU9J2ZpbGUnXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBmb3JtIGxhYmVscy4gVGhlIGhpZ2hlciB0aGUgbnVtYmVyLCB0aGUgbW9yZSBzcGFjZSBiZXR3ZWVuIHRoZSBsYWJlbCBhbmQgaXRzIGlucHV0IGZpZWxkLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuOCAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG5AbWl4aW4gZm9ybS1sYWJlbC1taWRkbGUge1xuICAkaW5wdXQtYm9yZGVyLXdpZHRoOiBnZXQtYm9yZGVyLXZhbHVlKCRpbnB1dC1ib3JkZXIsIHdpZHRoKTtcblxuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIgKyByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoKSkgMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1sYWJlbCB7XG4gIGxhYmVsIHtcbiAgICBAaW5jbHVkZSBmb3JtLWxhYmVsO1xuXG4gICAgJi5taWRkbGUge1xuICAgICAgQGluY2x1ZGUgZm9ybS1sYWJlbC1taWRkbGU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaGVscHRleHQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc3R5bGUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWhlbHB0ZXh0IHtcbiAgLmhlbHAtdGV4dCB7XG4gICAgJG1hcmdpbi10b3A6ICgkZm9ybS1zcGFjaW5nICogMC41KSAqIC0xO1xuXG4gICAgbWFyZ2luLXRvcDogJG1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkaGVscHRleHQtZm9udC1zaXplO1xuICAgIGZvbnQtc3R5bGU6ICRoZWxwdGV4dC1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkaGVscHRleHQtY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExlZnQvcmlnaHQgcGFkZGluZyBvZiBhbiBwcmUvcG9zdGZpeGVkIGlucHV0IGxhYmVsXG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tcHJlcG9zdGZpeCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogJGlucHV0LWxpbmUtaGVpZ2h0KSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgdGFibGUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cblxuICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgICYsICYuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICYsICYuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAlaW5wdXQtZ3JvdXAtY2hpbGQge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nOiAwICRpbnB1dC1wcmVmaXgtcGFkZGluZztcbiAgICBib3JkZXI6ICRpbnB1dC1wcmVmaXgtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDtcblxuICAgIGNvbG9yOiAkaW5wdXQtcHJlZml4LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtcHJlZml4LWJvcmRlcikge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIGEsXG4gICAgaW5wdXQsXG4gICAgYnV0dG9uLFxuICAgIGxhYmVsIHtcbiAgICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuXG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICB9XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNwZWNpZmljaXR5IGJ1bXAgbmVlZGVkIHRvIHByZXZlbnQgb3ZlcnJpZGUgYnkgYnV0dG9uc1xuICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGJldHdlZW4gdGhlIGxlZ2VuZCB0ZXh0IGFuZCBmaWVsZHNldCBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMykgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmaWVsZHNldCB7XG4gIG1hcmdpbjogJGZpZWxkc2V0LW1hcmdpbjtcbiAgcGFkZGluZzogJGZpZWxkc2V0LXBhZGRpbmc7XG4gIGJvcmRlcjogJGZpZWxkc2V0LWJvcmRlcjtcblxuICBsZWdlbmQge1xuICAgIC8vIENvdmVycyB1cCB0aGUgZmllbGRzZXQncyBib3JkZXIgdG8gY3JlYXRlIGFydGlmaWNpYWwgcGFkZGluZ1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiByZW0tY2FsYygtMyk7XG4gICAgcGFkZGluZzogJGxlZ2VuZC1wYWRkaW5nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZmllbGRzZXQge1xuICBmaWVsZHNldCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgbGVnZW5kIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC5maWVsZHNldCB7XG4gICAgQGluY2x1ZGUgZmllbGRzZXQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGRyb3Bkb3duIHRyaWFuZ2xlIGluc2lkZSBzZWxlY3QgbWVudXMuIFNldCB0byBgdHJhbnNwYXJlbnRgIHRvIHJlbW92ZSBpdCBlbnRpcmVseS5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tc2VsZWN0IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkc2VsZWN0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdC1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgJHNlbGVjdC10cmlhbmdsZS1jb2xvciAhPSB0cmFuc3BhcmVudCB7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC10cmlhbmdsZSgkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGdsb2JhbC1yaWdodCAoLSRmb3JtLXNwYWNpbmcpIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcblxuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogKCRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuICB9XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIEhpZGUgdGhlIGRyb3Bkb3duIGFycm93IHNob3duIGluIG5ld2VyIElFIHZlcnNpb25zXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1zZWxlY3Qge1xuICBzZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tc2VsZWN0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhYmlkZVxuLy8vL1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGlucHV0cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtaW5wdXRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGxhYmVscy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtbGFiZWxzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciB0byB1c2UgZm9yIGludmFsaWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB0byB1c2UgZm9yIGxhYmVscyBvZiBpbnZhbGlkIGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyIG9mIGFuIGlucHV0IGZpZWxkIHRvIGhhdmUgYW4gZXJyb3Igc3RhdGUuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGFsZXJ0LWNvbG9yXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhY2tncm91bmQtbGlnaHRlbiBbMTAlXSAtIExpZ2h0bmVzcyBsZXZlbCBvZiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBmb3JtLWlucHV0LWVycm9yKFxuICAkYmFja2dyb3VuZDogJGlucHV0LWJhY2tncm91bmQtaW52YWxpZCxcbiAgJGJhY2tncm91bmQtbGlnaHRlbjogMTAlXG4pIHtcbiAgJjpub3QoOmZvY3VzKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtaXgoJGJhY2tncm91bmQsICR3aGl0ZSwgJGJhY2tncm91bmQtbGlnaHRlbik7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGVycm9yIHN0eWxlcyB0byBhIGZvcm0gZWxlbWVudCwgdXNpbmcgdGhlIHZhbHVlcyBpbiB0aGUgc2V0dGluZ3MgZmlsZS5cbkBtaXhpbiBmb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tc3BhY2luZyAqIC0wLjU7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgZm9udC1zaXplOiAkaW5wdXQtZXJyb3ItZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGlucHV0LWVycm9yLWNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWVycm9yIHtcbiAgQGlmICRhYmlkZS1pbnB1dHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBpbnZhbGlkIGlucHV0c1xuICAgIC5pcy1pbnZhbGlkLWlucHV0IHtcbiAgICAgIEBpbmNsdWRlIGZvcm0taW5wdXQtZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgQGlmICRhYmlkZS1sYWJlbHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBsYWJlbHMgb2YgaW52YWxpZCBvdXRwdXRzXG4gICAgLmlzLWludmFsaWQtbGFiZWwge1xuICAgICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9ybSBlcnJvciBlbGVtZW50XG4gIC5mb3JtLWVycm9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVycm9yO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGh1bWJuYWlsXG4vLy8vXG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kdGh1bWJuYWlsLWJvcmRlcjogNHB4IHNvbGlkICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyB1bmRlciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFNoYWRvd1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgdW5kZXIgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBTaGFkb3dcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gVHJhbnNpdGlvbiBwcm9wcnRpZXMgZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHRodW1ibmFpbCBzdHlsZXMgdG8gYW4gZWxlbWVudC5cbkBtaXhpbiB0aHVtYm5haWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tO1xuXG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICR0aHVtYm5haWwtcmFkaXVzO1xuICBib3gtc2hhZG93OiAkdGh1bWJuYWlsLXNoYWRvdztcblxuICBsaW5lLWhlaWdodDogMDtcbn1cblxuQG1peGluIHRodW1ibmFpbC1saW5rIHtcbiAgdHJhbnNpdGlvbjogJHRodW1ibmFpbC10cmFuc2l0aW9uO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6ICR0aHVtYm5haWwtc2hhZG93LWhvdmVyO1xuICB9XG5cbiAgaW1hZ2Uge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGh1bWJuYWlsIHtcbiAgLnRodW1ibmFpbCB7XG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsO1xuICB9XG5cbiAgYS50aHVtYm5haWwge1xuICAgIEBpbmNsdWRlIHRodW1ibmFpbC1saW5rO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBGbGV4Ym94IFV0aWxpdGllc1xuLy8vL1xuLy9cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciB0aGUgY291bnQgb2Ygc291cmNlIG9yZGVyaW5nYFxuLy8vIEB0eXBlIE51bWJlclxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2ICFkZWZhdWx0O1xuXG4vLy8gUXVpY2tseSBkaXNhYmxlL2VuYWJsZSBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBWYW5pbGxhIEZsZXggSGVscGVycy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzOiB0cnVlICFkZWZhdWx0O1xuXG5AbWl4aW4gZmxleC1oZWxwZXJzIHtcbiAgLmZsZXgtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBmbGV4O1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAuZmxleC1kaXItI3skZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzKSB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIFJlc3BvbnNpdmUgQnJlYWtwb2ludHNcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jb250YWluZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWdyb3cge1xuICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgICAgICAgICAgLiN7JHNpemV9LWZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcyB7XG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IHVzaW5nIGp1c3RpZnktY29udGVudFxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWp1c3RpZnkge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgfVxuICB9XG4gIFxuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCBTcGVjaWZpY2FsbHkgZm9yIFZlcnRpY2FsIE1lbnVcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksICdqdXN0aWZ5JywgJ3NwYWNlZCcpIHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgICYubWVudSA+IGxpID4gYSB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWwgYWxpZ25tZW50IHVzaW5nIGFsaWduLWl0ZW1zIGFuZCBhbGlnbi1zZWxmXG4gIEBlYWNoICR2ZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtYWxpZ24ge1xuICAgIC5hbGlnbi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR5OiAkdmRpcik7XG4gICAgfVxuXG4gICAgLmFsaWduLXNlbGYtI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR5OiAkdmRpcik7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2VudHJhbCBhbGlnbm1lbnQgb2YgY29udGVudFxuICAuYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogY2VudGVyLCAkeTogbWlkZGxlKTtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbmlsbGEgRmxleGJveCBIZWxwZXJzXG4gIEBpbmNsdWRlIGZsZXgtaGVscGVycztcbn1cbiIsIkBmdW5jdGlvbiAtemYtZmxleC1qdXN0aWZ5KCR0ZXh0LWRpcmVjdGlvbil7XG4gICQtemYtZmxleC1qdXN0aWZ5OiAoXG4gICAgJ2xlZnQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LWVuZCwgZmxleC1zdGFydCksXG4gICAgJ3JpZ2h0JzogaWYoJHRleHQtZGlyZWN0aW9uID09IHJ0bCwgZmxleC1zdGFydCwgZmxleC1lbmQpLFxuICAgICdjZW50ZXInOiBjZW50ZXIsXG4gICAgJ2p1c3RpZnknOiBzcGFjZS1iZXR3ZWVuLFxuICAgICdzcGFjZWQnOiBzcGFjZS1hcm91bmQsXG4gICk7XG5cbiAgQHJldHVybiAkLXpmLWZsZXgtanVzdGlmeTtcbn1cblxuXG4kLXpmLWZsZXgtYWxpZ246IChcbiAgJ3RvcCc6IGZsZXgtc3RhcnQsXG4gICdib3R0b20nOiBmbGV4LWVuZCxcbiAgJ21pZGRsZSc6IGNlbnRlcixcbiAgJ3N0cmV0Y2gnOiBzdHJldGNoLFxuKTtcblxuJC16Zi1mbGV4LWRpcmVjdGlvbjogKFxuICAncm93Jzogcm93LFxuICAncm93LXJldmVyc2UnOiByb3ctcmV2ZXJzZSxcbiAgJ2NvbHVtbic6IGNvbHVtbixcbiAgJ2NvbHVtbi1yZXZlcnNlJzogY29sdW1uLXJldmVyc2UsXG4pO1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGJ5IGFkZGluZyBgZGlzcGxheTogZmxleGAgdG8gdGhlIGVsZW1lbnQuXG5AbWl4aW4gZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgb3IgdmVydGljYWxseSBhbGlnbnMgdGhlIGl0ZW1zIHdpdGhpbiBhIGZsZXggY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeCBbbnVsbF0gLSBIb3Jpem9udGFsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgbGVmdGAsIGByaWdodGAsIGBjZW50ZXJgLCBganVzdGlmeWAsIG9yIGBzcGFjZWRgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgaG9yaXpvbnRhbCBhbGlnbm1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24oJHg6IG51bGwsICR5OiBudWxsKSB7XG4gIEBpZiAkeCB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1qdXN0aWZ5LCAkeCkge1xuICAgICAgJHg6IG1hcC1nZXQoJC16Zi1mbGV4LWp1c3RpZnksICR4KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeH0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGhvcml6b250YWwgYWxpZ25tZW50LiBVc2UgbGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSwgb3Igc3BhY2VkLic7XG4gICAgfVxuICB9XG5cbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciB2ZXJ0aWNhbCBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAganVzdGlmeS1jb250ZW50OiAkeDtcbiAgYWxpZ24taXRlbXM6ICR5O1xufVxuXG4vLy8gVmVydGljYWxseSBhbGlnbiBhIHNpbmdsZSBjb2x1bW4gd2l0aGluIGEgZmxleCByb3cuIEFwcGx5IHRoaXMgbWl4aW4gdG8gYSBmbGV4IGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduLXNlbGYoJHk6IG51bGwpIHtcbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtY29sdW1uLWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAgYWxpZ24tc2VsZjogJHk7XG59XG5cbi8vLyBDaGFuZ2VzIHRoZSBzb3VyY2Ugb3JkZXIgb2YgYSBmbGV4IGNoaWxkLiBDaGlsZHJlbiB3aXRoIGxvd2VyIG51bWJlcnMgYXBwZWFyIGZpcnN0IGluIHRoZSBsYXlvdXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvcmRlciBbMF0gLSBPcmRlciBudW1iZXIgdG8gYXBwbHkuXG5AbWl4aW4gZmxleC1vcmRlcigkb3JkZXI6IDApIHtcbiAgb3JkZXI6ICRvcmRlcjtcbn1cblxuLy8vIENoYW5nZSBmbGV4LWRpcmVjdGlvblxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbcm93XSAtIEZsZXggZGlyZWN0aW9uIHRvIHVzZS4gQ2FuIGJlXG4vLy8gICAtIHJvdyAoZGVmYXVsdCk6IHNhbWUgYXMgdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gcm93LXJldmVyc2U6IG9wcG9zaXRlIHRvIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIGNvbHVtbjogc2FtZSBhcyByb3cgYnV0IHRvcCB0byBib3R0b21cbi8vLyAgIC0gY29sdW1uLXJldmVyc2U6IHNhbWUgYXMgcm93LXJldmVyc2UgdG9wIHRvIGJvdHRvbVxuQG1peGluIGZsZXgtZGlyZWN0aW9uKCRkaXJlY3Rpb246IHJvdykge1xuICBmbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbiIsIkBjaGFyc2V0ICd1dGYtOCc7XG5cblxuQGltcG9ydCAnc2V0dGluZ3MnO1xuQGltcG9ydCAnZm91bmRhdGlvbic7XG5AaW1wb3J0ICdtb3Rpb24tdWknO1xuXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcblxuQGluY2x1ZGUgZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tcmFuZ2UtaW5wdXQ7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWNhcmQ7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tbWVudS1pY29uO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1vcmJpdDtcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcztcblxuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLXByb3RvdHlwZS1jbGFzc2VzO1xuXG4vL0BpbmNsdWRlIG1vdGlvbi11aS10cmFuc2l0aW9ucztcbi8vQGluY2x1ZGUgbW90aW9uLXVpLWFuaW1hdGlvbnM7XG5cbi8qXG4gIE15IGN1c3RvbSBzdHlsZXM6XG4gIEFkZCB5b3VyIHNjc3MgZmlsZXMgYmVsb3cgdG8gc3RydWN0dXJlIHlvdXIgcHJvamVjdCBzdHlsZXNcbiovXG5cbi8vIEdsb2JhbFxuQGltcG9ydCBcImdsb2JhbC9hY2Nlc3NpYmlsaXR5XCI7XG5AaW1wb3J0IFwiZ2xvYmFsL2NvbG9yc1wiO1xuQGltcG9ydCBcImdsb2JhbC93cC1hZG1pblwiO1xuQGltcG9ydCBcImdsb2JhbC93cC1vdmVycmlkZXNcIjtcbkBpbXBvcnQgXCJnbG9iYWwvZ3V0ZW5iZXJnXCI7XG5AaW1wb3J0IFwiZ2xvYmFsL2RyaXZlXCI7XG5cbi8vIE1vZHVsZXNcbkBpbXBvcnQgXCJtb2R1bGVzL25hdmlnYXRpb25cIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2NvbnRlbnRcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2Zvb3RlclwiO1xuQGltcG9ydCBcIm1vZHVsZXMvZWRpdG9yLXN0eWxlXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJjb21wb25lbnRzL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2NhcmRzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9mZWF0dXJlZC1pbWFnZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZGl2aWRlcnNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2xpbmtzXCI7XG5cbi8vIFRlbXBsYXRlc1xuQGltcG9ydCBcInRlbXBsYXRlcy9mcm9udFwiO1xuQGltcG9ydCBcInRlbXBsYXRlcy9raXRjaGVuLXNpbmtcIjtcbiIsIi8vIFRleHQgbWVhbnQgb25seSBmb3Igc2NyZWVuIHJlYWRlcnMuIEFkZHJlc3NlcyBwYXJ0IG9mIHRoZW1lLWNoZWNrIGlzc3VlICM4NDAuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vQXV0b21hdHRpYy9fcy9ibG9iL21hc3Rlci9zdHlsZS5jc3Ncbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMjE3NTliO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsZWZ0OiA1cHg7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRvcDogNXB4O1xuICB3aWR0aDogYXV0bztcbiAgei1pbmRleDogMTAwMDAwOyAvLyBBYm92ZSBXUCB0b29sYmFyLlxufVxuIiwiLy8gRml4IHRoZSBpc3N1ZSB3aGVyZSB0aGUgV1AgYWRtaW4tYmFyIG92ZXJsYXBzIHRoZSBtb2JpbGUgbWVudVxuI3dwYWRtaW5iYXIge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbn1cblxuLy8gTWFrZSBzdXJlIHRoYXQgdGhlIFdQIGFkbWluLWJhciBkb2VzIG5vdCBvdmVybGFwIEZvdW5kYXRpb24gY29tcG9uZW50c1xuYm9keS5hZG1pbi1iYXIge1xuICAvLyBPZmZzZXQgc3RpY2t5IHRvcCBiYXJcbiAgJi5mLXRvcGJhci1maXhlZCB7XG4gICAgLnN0aWNreS5maXhlZCB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMik7XG4gICAgfVxuICB9XG4gIC8vIE9mZnNldCBtb2JpbGUgb2ZmLWNhbnZhcyBtZW51XG4gICYub2ZmY2FudmFzIHtcbiAgICAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICAgIHRvcDogcmVtLWNhbGMoNDYpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3ODMpIHtcbiAgICAgICAgdG9wOiByZW0tY2FsYygzMik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIud3AtY2FwdGlvbiA+IGZpZ2NhcHRpb24ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBjb2xvcjogIzk5OTtcbiAgcGFkZGluZzogMC4yNXJlbSAwO1xufVxuXG5wLndwLWNhcHRpb24tdGV4dHtcbiAgZm9udC1zaXplOjkwJTtcbiAgY29sb3I6ICM2NjY7XG4gIHBhZGRpbmc6cmVtLWNhbGMoMTApIDA7XG59XG5cbi5hbGlnbmxlZnQge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgbWFyZ2luOiAwO1xufVxuXG4uYWxpZ25yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBtYXJnaW46IDA7XG59XG5cbi5hbGlnbmNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uZ2FsbGVyeSB7XG4gIEBpbmNsdWRlIHh5LWdyaWQ7XG4gIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA5IHtcbiAgICAmLmdhbGxlcnktY29sdW1ucy0jeyRpfSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgyLCAnLmdhbGxlcnktaXRlbScsIHRydWUpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XG4gICAgICAmLmdhbGxlcnktY29sdW1ucy0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KDQsICcuZ2FsbGVyeS1pdGVtJywgdHJ1ZSwgKHNtYWxsOiAzMHB4KSk7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICYuZ2FsbGVyeS1jb2x1bW5zLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJGksICcuZ2FsbGVyeS1pdGVtJywgdHJ1ZSwgKHNtYWxsOiAzMHB4KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5nYWxsZXJ5LWljb24gPiBhIHtcbiAgICBAaW5jbHVkZSB0aHVtYm5haWw7XG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsLWxpbms7XG4gIH1cbiAgLmdhbGxlcnktaWNvbiA+IGltZyB7XG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsO1xuICB9XG59XG4iLCIvKlxuRnJvbnRlbmQgc3R5bGVzIGZvciBndXRlbmJlcmcgYmxvY2tzXG4qL1xuXG4vKiogPT09IEJhc2UgQ29sb3IgUGFsYXR0ZSA9PT0gKi9cbkBlYWNoICRjb2xvciwgJGNvZGUgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG5cbiAgLmhhcy0jeyRjb2xvcn0tYmFja2dyb3VuZC1jb2xvciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZTtcbiAgfVxuXG4gIC5oYXMtI3skY29sb3J9LWNvbG9yIHtcbiAgICAgIGNvbG9yOiAkY29kZTtcbiAgfVxufVxuXG4vKiogPT09IEJ1dHRvbiA9PT0gKi9cbi53cC1ibG9jay1idXR0b24ge1xuXG5cdC8vIGFkZCBnZW5lcmFsIGZvdW5kYXRpb24gYnV0dG9uIHN0eWxpbmdcblx0LndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG5cdFx0QGV4dGVuZCAuYnV0dG9uO1xuICAgIEBlYWNoICRjb2xvciwgJGNvZGUgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG5cbiAgICAgICYuaGFzLSN7JGNvbG9yfS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZTtcbiAgICAgIH1cblxuICAgICAgJi5oYXMtI3skY29sb3J9LWNvbG9yIHtcbiAgICAgICAgICBjb2xvcjogJGNvZGU7XG4gICAgICB9XG4gICAgfVxuXHR9XG5cblx0Ly8gYWRkIHNwZWNpYWwgc3R5bGluZyBmb3Igc3F1YXJlZCBidXR0b25zXG5cdCYuaXMtc3R5bGUtc3F1YXJlZCAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcblx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHR9XG5cblx0Ly8gYWRkIG91dGxpbmUgc3R5bGVzXG5cdCYuaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5re1xuXHRcdEBleHRlbmQgLmhvbGxvdztcblx0fVxuXG5cdC8vIHNldCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kIHRvIGJsb2NrIGZvciBvdXRsaW5lIGJ1dHRvblxuXHQmLmlzLXN0eWxlLW91dGxpbmUsXG5cdCYuaXMtc3R5bGUtb3V0bGluZTpob3Zlcixcblx0Ji5pcy1zdHlsZS1vdXRsaW5lOmZvY3VzLFxuXHQmLmlzLXN0eWxlLW91dGxpbmU6YWN0aXZlIHtcbiAgICAvLyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAud3AtYmxvY2stYnV0dG9uX19saW5re1xuICAgICAgLy8gYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXHR9XG59XG5cbi8qKiA9PT0gRmlsZSA9PT0gKi9cbi53cC1ibG9jay1maWxlIC53cC1ibG9jay1maWxlX19idXR0b257XG4gIEBpbmNsdWRlIGJ1dHRvbigpO1xufVxuIiwiLyogV0lORE9XUyBIQUNLUyAqL1xuXG5AbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSxcbigtbXMtaGlnaC1jb250cmFzdDpub25lKSB7XG5cbn1cblxuQHN1cHBvcnRzICgtbXMtYWNjZWxlcmF0b3I6IHRydWUpIHtcblxufVxuXG5Ac3VwcG9ydHMgKC1tcy1pbWUtYWxpZ246IGF1dG8pIHtcblxufVxuXG5cblxuLyogVEFSR0VUIElPUyBERVZJQ0VTICovXG5cbkBzdXBwb3J0cyAoLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoKSB7XG4gIC8qIENTUyBzcGVjaWZpYyB0byBpT1MgZGV2aWNlcyAqLyBcbiAgICBcbn1cblxuXG5cbi8qIEZPUiBOT04gSU9TIERFVklDRVMgKi9cblxuQHN1cHBvcnRzIG5vdCAoLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoKSB7XG4gIC8qIENTUyBmb3Igb3RoZXIgdGhhbiBpT1MgZGV2aWNlcyAqLyBcblxuICAgIFxufVxuXG5cblxuLyogR0xPQkFMIFNUWUxFUyAqL1xuXG4uaW5zZXRfY29udGVudCB7XG4gICAgcGFkZGluZzogMCA2JTtcbn1cblxuY2l0ZSB7XG4gICAgY29sb3I6ICM0NDQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTE1cHg7XG59XG5cbi5ncmVjYXB0Y2hhLWJhZGdlIHtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG5ib2R5LCAuZW50cnktY29udGVudCB7XG4vLyAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xuLy8gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmJmYmZiO1xufVxuXG5hIHtcbiAgICBjb2xvcjogJG9yYW5nZTtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbn1cblxucCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuLnNtYWxsdHh0IHtcbiAgICBmb250LXNpemU6IDYwJTtcbn1cblxuLnVwZGF0ZWQge1xuICAgIGZvbnQtc2l6ZTogLjlyZW07XG59XG5cbi5sYXJnZXJ0eHQge1xuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICB9XG59XG5cbmhyIHtcbiAgICBtYXJnaW46IDEuNWVtIGF1dG8gMi4yZW07XG59XG5cbi5mb2xsb3d0aGVsZWFkZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogYXV0bztcbiAgICB9XG59XG5cbi5jZW50ZXJlZCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZG9jdW1lbnRzX3JhcHBhIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgXG4gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIFxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgXG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgfVxufVxuXG4uZG9jX2xpbmUge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLmRvY19kb3dubG9hZCB7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2ljb25fZG9jdW1lbnQucG5nJyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIH1cbiAgICBcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJ1xcMjAzYSc7XG4gICAgICAgIGNvbG9yOiAjOTc5Nzk3O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAtMTVweDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgICBcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgXG4gICAgICAgICY6YWZ0ZXIge1xuLy8gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICAgIHJpZ2h0OiAtMjBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5vdGxnZGVza3RvcCB7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5wb3N0X3NuaXBwZXQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgIFxuICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAuNWVtO1xuICAgIH1cbn1cblxuLnBvc2l0aW9uc19ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogMWVtO1xufVxuXG4uam9ibGlzdGluZ3MgaDUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZzogMTVweDtcbn1cblxuLy8uam9ibGlzdGluZ3MgaDU6bnRoLWNoaWxkKGV2ZW4pIHtcbi8vICAgIGJhY2tncm91bmQtY29sb3I6ICNlYWVhZWE7XG4vL31cblxuLmJhY2tsaW5rIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgXG4gICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogNnB4IDEycHggMTBweDtcbiAgICAgICAgY29sb3I6ICRzZWFmb2FtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWlkbmlnaHQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICB9XG59XG5cbi5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyJTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuLy8gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIlO1xuLy8gICAgICAgIHBhZGRpbmctbGVmdDogMiU7XG4gICAgfVxufVxuXG4ud3AtYmxvY2stc2VwYXJhdG9yIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkO1xufVxuXG4ubm9wYWQge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuc2VjdGlvbiB7XG4gICAgcGFkZGluZzogNjBweCAwO1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IDgwcHggMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAxMDBweCAwO1xuICAgIH1cbn1cblxuLnNlY3Rpb25fcmFwcGEge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgXG4gICAgaHIge1xuICAgICAgICBtYXJnaW46IDNyZW0gYXV0bztcbiAgICB9XG59XG5cbi50b3BuYm90dG9tIHtcbiAgICBtYXJnaW46IDMwcHggYXV0bztcbn1cblxudGV4dGFyZWEge1xuICAgIHJlc2l6ZTogbm9uZTtcbn1cblxuLm1hcF9yYXBwYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctdG9wOiA3NiU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW46IDIwcHggYXV0byAzMHB4O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICM5Nzk3OTc7XG4gICAgXG4gICAgaWZyYW1lIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA2NCVcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogNTAlXG4gICAgfVxufVxuXG5ibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICAgIGNvbG9yOiAkZGVlcGJsdWU7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICB9XG59XG5cbmJsb2NrcXVvdGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogMjVweCAyNXB4IDVweDtcbiAgICBtYXJnaW46IDEwcHggYXV0byA0MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWFmb2FtO1xuICAgIGJvcmRlci1ib3R0b206IDhweCBzb2xpZCAjOTc5Nzk3O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMzBweCAxMHB4O1xuICAgIH1cbn1cblxuYmxvY2txdW90ZS50ZXN0aW1vbnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkZWVwYmx1ZTtcbiAgICBcbiAgICBwIHtcbiAgICAgICAgY29sb3I6ICRzZWFmb2FtO1xuICAgIH1cbiAgICBcbiAgICBjaXRlIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxufVxuXG51bC50d29fY29sdW1ucyB7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgfVxufVxuXG4ucGFnZV9yYXBwYSB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2JnaW1nX3JvbGxlcnMuanBnJyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDIlIGF1dG87XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uaW5uZXJfcmFwcGEsXG4uaW5uZXJfcmFwcGFfd2lkZSxcbi5pbm5lcl9yYXBwYV9uYXJyb3cge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyNTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBcbiAgICB1bCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxLjhlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMmVtO1xuICAgICAgICBcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogY2lyY2xlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLjVlbTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxLjJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNWVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaW5uZXJfcmFwcGEge1xuICAgIG1heC13aWR0aDogMTQ0MHB4O1xuICAgIHBhZGRpbmc6IDAgNiU7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAwIDUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi5pbm5lcl9yYXBwYV9uYXJyb3cge1xuICAgIG1heC13aWR0aDogMTIwMHB4O1xuICAgIHBhZGRpbmc6IDAgNiU7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAwIDUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi5pbm5lcl9yYXBwYV93aWRlIHtcbiAgICBtYXgtd2lkdGg6IDE2MDBweDtcbiAgICBwYWRkaW5nOiAwIDYlO1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMCA1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMyU7XG4gICAgfVxufVxuXG4uc2hpZnR1cCB7XG4gICAgcGFkZGluZzogMjVweCAwIDA7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTEyMHB4O1xuICAgICAgICBcbiAgICAgICAgaDEuc3BhY2Vkb3V0LCBoMi5zcGFjZWRvdXQge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTYwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yMDBweDtcbiAgICB9XG4gICAgXG4gICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDAgNDBweDtcbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIC0xMHB4IDhweCByZ2JhKDAsMCwwLC40KTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI2MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1MHB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA2MHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZW50cnktY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI1O1xuICAgIG1pbi1oZWlnaHQ6IDUwMHB4O1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiAyO1xuICAgICAgICAgICAgY29sdW1uLWdhcDogMzBweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgbGkgdWwge1xuICAgICAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLndwLWJsb2NrLWltYWdlIGltZyB7XG4gICAgbWFyZ2luLXRvcDogLjJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjZlbTtcbn1cblxuLnNlYXJjaCAuZW50cnktY29udGVudCxcbi5hcmNoaXZlIC5lbnRyeS1jb250ZW50IHtcbiAgICBtYXJnaW46IDBweCBhdXRvO1xufVxuXG4uc2lkZWJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDRweCBzb2xpZCAjZWFlYWVhO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgcGFkZGluZzogMjVweDtcbiAgICBcbiAgICBoNiB7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgfVxuICAgIFxuICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC42cmVtO1xuICAgICAgICBjb2x1bW4tY291bnQ6IDEgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICBsaSBhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJ1xcMjAzQSc7XG4gICAgICAgICAgICBjb2xvcjogJGRhcmtzZWFmb2FtO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogN3B4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJjpob3ZlcjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTJweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBzZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZzogMFxuICAgIH1cbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiA1MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgIH1cbn1cblxuLnJlc3BvbnNpdmVfdmlkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy10b3A6IDU1Ljc1JTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjOTc5Nzk3O1xuICAgIG1hcmdpbi1ib3R0b206IDJlbTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIFxuICAgIGlmcmFtZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cbn1cblxuLnBhcnRzX3RhYmxlX3JhcHBhIHtcbiAgICBcbn1cblxuXG5cbi8qIEhFQURMSU5FIFNUWUxFUyAqL1xuXG5cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbi8vICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbi8vICAgICAgICBsZXR0ZXItc3BhY2luZzogM3B4O1xuICAgIH1cbn1cblxuaDEge1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS45cmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB9XG59XG5cbmgyIHtcbiAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IDEuOXJlbTtcbiAgICB9XG59XG5cbmgzIHtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICB9XG59XG5cbmg0IHtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICB9XG59XG5cbmg1IHtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICB9XG59XG5cbmg2IHtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIH1cbn1cblxuaDEuc3BhY2Vkb3V0LCBcbmgyLnNwYWNlZG91dCxcbmgzLnNwYWNlZG91dCB7XG4gICAgY29sb3I6ICM5Nzk3OTc7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiA2cHg7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIFxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogOHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuLy8gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMTBweDtcbiAgICB9XG59XG5cblxuXG4vKiAgVE9PTEJBUiAtIEhFQURFUiAtIE9GRkNBTlZBUyBTVFlMRVMgICovXG5cblxuXG4udG9vbGJhcl9sb2dvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogOTk5OTk5OTk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRvcDogMnB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBsZWZ0OiAzJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cbn1cblxuLnRvb2xiYXJfbG9nbyBpbWcge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogOTVweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGhlaWdodDogOTBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OiAxMjVweDtcbiAgICB9XG59XG5cbi53ZWJzaXRlX2hlYWRlciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDk5OTk5O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDEwcHggcmdiYSgwLDAsMCwuNCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbn1cblxuLndlYnNpdGVfaGVhZGVyLm5hdmFjdGl2ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbn1cblxuLnNlY29uZGFyeV90b29sYmFyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogOTk7XG4gICAgcGFkZGluZzogMTBweCAzJTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWlkbmlnaHQ7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtZmFtaWx5OiAndHJhZGUtZ290aGljLW5leHQtY29tcHJlc3NlZCcsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBcbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRzZWFmb2FtO1xuICAgIH1cbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDMlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMTVweCAzJTtcbiAgICB9XG59XG5cbi5zZWNvbmRfbGVmdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuLnNlY29uZF9yaWdodCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG4udG9vbGJhcl9uYXYgdWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDJweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBcbiAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogLjdyZW07XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIGxpIGEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMTJweCAxNXB4IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgfVxuICAgIFxuICAgIGxpIGE6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBvcGFjaXR5OiAuMztcbiAgICB9XG4gICAgXG4gICAgbGk6bnRoLWxhc3Qtb2YtdHlwZSgxKSBhOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgXG4gICAgbGkgYTpob3ZlcixcbiAgICBsaS5pcy1hY3RpdmUgYSB7XG4gICAgICAgIG9wYWNpdHk6IC42O1xuICAgIH1cbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG5cbiAgICB9XG59XG5cbi5tYWluYmFyX25hdiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG59XG5cbi5tYWluYmFyX25hdiB1bCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAtNnB4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgXG4gICAgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IC45cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBsaSBhIHtcbiAgICAgICAgY29sb3I6ICMyNjI2MjY7XG4gICAgICAgIHBhZGRpbmc6IDE0cHggN3B4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE0cHggMTBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBsaTpob3ZlciBhIHtcbiAgICAgICAgY29sb3I6ICM5QTgzNDg7XG4gICAgfVxuICAgIFxuICAgIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gYSB7XG4gICAgICAgIHBhZGRpbmc6IDE0cHggMTJweCAxNHB4IDJweDtcbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNHB4IDE1cHggMTRweCA1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXDIwM0EnO1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoOTBkZWcpO1xuICAgIH1cbiAgICAgXG4gICAgLnN1Yi1tZW51IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzNjM2MzY7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgXG4gICAgICAgIGxpLFxuICAgICAgICBsaSBhIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIGEge1xuICAgICAgICAgICAgY29sb3I6ICNmZWZlZmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDIwcHggMTJweCAxMnB4O1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkICM5QTgzNDg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDApO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgbGk6aG92ZXIgYSB7XG4gICAgICAgICAgICBjb2xvcjogIzlBODM0ODtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXIgLnN1Yi1tZW51IHtcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgIH1cbn1cblxuLm1haW5fdG9vbGJhciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuLy8gICAgcGFkZGluZzogMTVweCA1JTtcbiAgICBwYWRkaW5nOiAwIDUlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gICAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwwLDAsLjMpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuLy8gICAgICAgIHBhZGRpbmc6IDIwcHggMyU7XG4gICAgICAgIHBhZGRpbmc6IDAgMyU7XG4vLyAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG59XG5cbi5uYXZsaW5lIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIFxuICAgIGEge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICBjb2xvcjogJGRlZXBibHVlO1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJG9yYW5nZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBpbWcge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICBcbiAgICAjbWVnYS1tZW51LXdyYXAtbWF4X21lZ2FfbWVudV8xICNtZWdhLW1lbnUtbWF4X21lZ2FfbWVudV8xID4gbGkubWVnYS1tZW51LXRhYmJlZCA+IHVsLm1lZ2Etc3ViLW1lbnUgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsge1xuICAgICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgICB9XG59XG5cbnVsLm1lZ2Etc3ViLW1lbnUgYS5tZWdhLW1lbnUtbGluayB7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkZGVlcGJsdWU7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkb3JhbmdlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluayB7XG4gICAgZm9udC13ZWlnaHQ6IDgwMCAhaW1wb3J0YW50O1xufVxuXG4jbWVnYS1tZW51LXdyYXAtbWF4X21lZ2FfbWVudV8xICNtZWdhLW1lbnUtbWF4X21lZ2FfbWVudV8xID4gbGkubWVnYS1tZW51LXRhYmJlZCA+IHVsLm1lZ2Etc3ViLW1lbnUgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsgIHtcbiAgICBcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4vL2xpLm1lZ2EtbWVudS10YWJiZWQgZGl2LnRleHR3aWRnZXQge1xuLy8gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuLy8gICAgICAgIFxuLy8gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuLy8gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4vLyAgICB9XG4vL31cblxudWwubWVnYS1zdWItbWVudSBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgXG4gICAgYSBpbWcge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBcbn1cblxuLmNsaWNrX3RvX2NhbGxfbnVtYmEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAxMHB4IDUlIDE1cHg7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgIFxuICAgIGEge1xuICAgICAgICBjb2xvcjogI0ZCRDkxRjtcbiAgICB9XG4gICAgXG4gICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC40O1xuICAgIH1cbiAgICBcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICB0b3A6IDZweDtcbi8vICAgICAgICBsZWZ0OiAtMzJweDtcbiAgICAgICAgd2lkdGg6IDI2cHg7XG4gICAgICAgIGhlaWdodDogMjZweDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2ljb25fcm91bmRwaG9uZS5zdmcnKTtcbiAgICB9XG59XG5cbi5tYWluX3JpZ2h0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAzJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICByaWdodDogMyU7XG4gICAgfVxufVxuXG4jZGVza3RvcF9zZWFyY2hfdHJpZ2dhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogNnB4O1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDtcbiAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2ljb25fc2VhcmNoX2Rhcmsuc3ZnJyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiA4MCU7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4vLyAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0ZWFsO1xuICAgIFxuICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAuMztcbiAgICB9XG59XG5cbiNkZXNrdG9wX3NlYXJjaCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9iZ2ltZ19ibGFua3BhY2thZ2VzMS5qcGcnKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOUE4MzQ4O1xuICAgIFxuICAgIG9wYWNpdHk6IDA7XG4gICAgXG4gICAgaDIsIGgzLCBoNCB7XG4gICAgICAgIGNvbG9yOiAjMDYwNjA2O1xuICAgIH1cbiAgICBcbiAgICA6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICAgICAgY29sb3I6ICM2NDY0NjQ7XG4gICAgfVxuICAgIFxuICAgIFt0eXBlPSd0ZXh0J10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nZGF0ZSddLCBbdHlwZT0nZGF0ZXRpbWUnXSwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIFt0eXBlPSdtb250aCddLCBbdHlwZT0nd2VlayddLCBbdHlwZT0nZW1haWwnXSwgW3R5cGU9J251bWJlciddLCBbdHlwZT0nc2VhcmNoJ10sIFt0eXBlPSd0ZWwnXSwgW3R5cGU9J3RpbWUnXSwgW3R5cGU9J3VybCddLCBbdHlwZT0nY29sb3InXSwgdGV4dGFyZWEge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIFxuICAgIGRpdiB7XG4gICAgICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICBcbiAgICAuc2VhcmNoYnR0biB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxODE4MTg7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9pY29uX3NlYXJjaC5zdmcnKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbn1cblxuYm9keS5zZWFyY2hhY3RpdmUsXG5odG1sLnNlYXJjaGFjdGl2ZSB7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbiNkZXNrdG9wX3NlYXJjaC5zZWFyY2hhY3RpdmUge1xuICAgIHotaW5kZXg6IDk5OTk5OTk5O1xufVxuXG4ubmF2LWxpbmtzIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG5cblxuIFxuLyogTkFWSUdBVElPTiBTVFlMRVMgKi9cblxuXG5cbiNtb2JpbGVfbmF2X3RyaWdnYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHotaW5kZXg6IDk5O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5oZWxwcl90ZXh0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0ycHg7XG4gICAgY29sb3I6ICM5OTk7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cyBlYXNlLWluLW91dDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxufVxuXG4uY2xvc2luZ190aW1lIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogOTk5OTtcbiAgICB0b3A6IDEycHg7XG4gICAgcmlnaHQ6IDQlO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbkBtZWRpYSBwcmludCxcbnNjcmVlbiBhbmQgKG1pbi13aWR0aDo0MGVtKSB7XG4gICAgLmNsb3NpbmdfdGltZSB7XG4gICAgICAgIHRvcDogMzBweDtcbiAgICB9XG59XG5cbi5tYWlubGluZXIxLFxuLm1haW5saW5lcjIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgaGVpZ2h0OiAzcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4ubWFpbmxpbmVyMSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC00NWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC00NWRlZyk7XG59XG5cbi5tYWlubGluZXIyIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbn1cblxuLmNsb3NpbmdfdGltZTpob3ZlciAubWFpbmxpbmVyMSxcbi5jbG9zaW5nX3RpbWU6aG92ZXIgLm1haW5saW5lcjIge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDApO1xufVxuXG4ubW9iaWxlX25hdl9jbG9zZXIge1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbi5idXJnZXJfdGltZSB7XG4gICAgd2lkdGg6IDM1cHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdG9wOiAycHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5iYXIxLFxuLmJhcjIsXG4uYmFyMyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogM3B4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjMyMzIzO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgfVxufVxuXG4uYmFyMSB7XG4gICAgdG9wOiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4uYmFyMiB7XG4gICAgdG9wOiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi5iYXIzIHtcbiAgICBib3R0b206IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbiNtb2JpbGVfbmF2X3RyaWdnYTpob3ZlciAuYmFyMSxcbi5idXJnZXJfdGltZS5uYXZhY3RpdmUgLmJhcjEge1xuICAgIGxlZnQ6IDQwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7XG59XG5cbiNtb2JpbGVfbmF2X3RyaWdnYTpob3ZlciAuYmFyMixcbi5idXJnZXJfdGltZS5uYXZhY3RpdmUgLmJhcjIge1xuICAgIGxlZnQ6IDYwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7XG59XG5cbiNtb2JpbGVfbmF2X3RyaWdnYTpob3ZlciAuYmFyMyxcbi5idXJnZXJfdGltZS5uYXZhY3RpdmUgLmJhcjMge1xuICAgIGxlZnQ6IDQwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7XG59XG5cbi5vZmZjYW5fb3ZlcmxheSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogOTk5MDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIzMjMyMztcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4ub2ZmY2FuX292ZXJsYXkubmF2YWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuI29mZmNhbl9uYXZfdHJpZ2dlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHdpZHRoOiA0N3B4O1xuICAgIGhlaWdodDogMzhweDtcbn1cblxuLy8jaG9tZXBhZ2VfbGluayB7XG4vLyAgICB3aWR0aDogNzlweDtcbi8vICAgIGhlaWdodDogMzhweDtcbi8vfVxuXG5ib2R5IC5uYXZhY3RpdmUge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuaHRtbCB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG4ub2ZmY2FuX3NpdGVfd3JhcHBlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi5vZmZjYW5fbmF2X3dyYXBwZXIsXG4ub2ZmY2FuX3NpdGVfd3JhcHBlciB7XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cztcbn1cblxuLm9mZmNhbl9zaXRlX3dyYXBwZXIubmF2YWN0aXZlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5ib2R5LmFkbWluLWJhciAub2ZmY2FuX25hdl93cmFwcGVyIHtcbiAgICB0b3A6IDMycHggIWltcG9ydGFudDtcbn1cblxuLm9mZmNhbl9uYXZfd3JhcHBlciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDk5OTk5OTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IC01MDBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgcGFkZGluZzogMCAwIDgwcHg7XG4gICAgYmFja2dyb3VuZDogIzlBODM0ODtcbn1cblxuLm9mZmNhbl9uYXZfd3JhcHBlciA6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogIzY0NjQ2NDtcbiAgICBmb250LXNpemU6IC45cmVtO1xufVxuXG4ub2ZmY2FuX25hdl93cmFwcGVyLm5hdmFjdGl2ZSB7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi5vZmZjYW5fbmF2X3dyYXBwZXIgLm1lbnUgLmlzLWFjdGl2ZSA+IGEge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbn1cblxuLm9mZmNhbl9uYXZfd3JhcHBlciAubWVudSAuaXMtYWN0aXZlID4gYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuMyk7XG59XG5cbi5vZmZjYW5fbmF2X3dyYXBwZXIgLmNsb3NpbmdfdGltZSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDIwcHghaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAyMHB4IWltcG9ydGFudDtcbn1cblxuLm9mZmNhbl9uYXZfd3JhcHBlciB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLm9mZmNhbl9uYXZfd3JhcHBlciB1bCBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5vZmZjYW5fbmF2X3dyYXBwZXIgdWwgbGkgYSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHBhZGRpbmc6IDE4cHggMTNweCAxOHB4IDMwcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cyBlYXNlLWluLW91dDtcbn1cblxuLm9mZmNhbl9uYXZfd3JhcHBlciB1bCBsaSBhOmhvdmVyIHtcbiAgICBjb2xvcjogI2RlZGVkZTtcbiAgICBjb2xvcjogI0ZCRDkxRjtcbn1cblxuLm9mZmNhbl9uYXZfd3JhcHBlciB1bC5zdWItbWVudSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjQpO1xufVxuXG4ub2ZmY2FuX25hdl93cmFwcGVyIHVsLnN1Yi1tZW51OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiA4cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xufVxuXG4ub2ZmY2FuX25hdl93cmFwcGVyIHVsLnN1Yi1tZW51IGE6aG92ZXIge1xuICAgIGNvbG9yOiAjZGVkZWRlO1xufVxuXG4ub2ZmY2FuX25hdl93cmFwcGVyIHVsLnN1Yi1tZW51IGxpIGEge1xuICAgIHBhZGRpbmc6IDE4cHggMTNweCAxOHB4IDQwcHggIWltcG9ydGFudDtcbiAgICBsZXR0ZXItc3BhY2luZzogMS41cHg7XG4gICAgY29sb3I6ICNmOGY4Zjg7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgb3BhY2l0eTogLjg1O1xufVxuXG4uc3Vic2V0X3RvZ2dsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cyBlYXNlO1xufVxuXG4uc3Vic2V0X3RvZ2dsZSB7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB0b3A6IDFweDtcbiAgICByaWdodDogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoL2ltYWdlcy9tb3JlX2ljb24ucG5nKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyNXB4IDI1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIG9wYWNpdHk6IC44O1xufVxuXG4uc3Vic2V0X3RvZ2dsZS5vcGVuZWQge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHMgZWFzZTtcbn1cblxuI29mZmNhbl9jbG9zZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB3aWR0aDogMzVweDtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDk5O1xuICAgIHRvcDogMTZweDtcbiAgICByaWdodDogMTVweDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZTtcbn1cblxuI29mZmNhbl9jbG9zZXIubmF2YWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZTtcbn1cblxuLm9mZmNhbl9zZWFyY2gge1xuICAgIHBhZGRpbmc6IDAgNSU7XG4gICAgbWFyZ2luOiAyMHB4IDAgMTBweDtcbiAgICBcbiAgICBpbnB1dCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5zZWFyY2hidHRuIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE4MTgxODtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2ljb25fc2VhcmNoLnN2ZycpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwJTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDI1JTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjEwMjRweCkge1xuICAgICAgICBcbiAgICBcblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6NjQxcHgpIHtcbiAgICBcbiAgICAub2ZmY2FuX3NpdGVfd3JhcHBlci5uYXZhY3RpdmUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwMHB4KTsgfVxuICAgIC5vZmZjYW5fbmF2X3dyYXBwZXIgdWwgbGk6aG92ZXIgYSB7IHRyYW5zaXRpb246IGFsbCAuNHMgZWFzZTsgfVxuICAgIC5vZmZjYW5fbmF2X3dyYXBwZXIgdWwgbGk6aG92ZXI6YmVmb3JlIHsgbGVmdDogLTQzcHg7IHRyYW5zaXRpb246IC4ycyBlYXNlOyB0cmFuc2l0aW9uLWRlbGF5OiAuMnM7IH1cbiAgICAub2ZmY2FuX25hdl93cmFwcGVyIHsgd2lkdGg6IDUwMHB4OyB9ICAgIFxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NjQwcHgpIHtcbiAgICAgICAgXG4gICAgLm9mZmNhbl9uYXZfd3JhcHBlciB7IHdpZHRoOiAxMDAlOyByaWdodDogLTEwMCU7IH1cbiAgICAub2ZmY2FuX3NpdGVfd3JhcHBlci5uYXZhY3RpdmUgeyByaWdodDogMDsgfVxuICAgIFxufVxuXG5cblxuLyogIFBBR0UgSEVBREVSIFNUWUxFUyAgKi9cblxuXG5cbi5lbXB0eV9oZWFkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbi8vICAgIG1pbi1oZWlnaHQ6IDE2MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWRlZGU7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuLy8gICAgICAgIG1pbi1oZWlnaHQ6IDI0MHB4O1xuICAgIH1cbn1cblxuc2VjdGlvbi5lbXB0eV9oZWFkZXIge1xuICAgIHBhZGRpbmc6IDE0MHB4IDAgMTBweDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDIwMHB4IDAgMTBweDtcbiAgICB9XG59XG5cbi5wYWdlX2hlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDE3NXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkZWVwYmx1ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDEyMHB4IDYlIDA7XG4gICAgXG4gICAgLmltZ2JnIHtcbiAgICAgICAgb3BhY2l0eTogLjM7XG4gICAgfVxuICAgIFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlYWZvYW07XG4gICAgICAgIGJveC1zaGFkb3c6IDAgLTNweCA4cHggcmdiYSgwLDAsMCwuNCk7XG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI1MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDM1MHB4O1xuICAgICAgICBwYWRkaW5nOiAxODBweCA1JSAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBtaW4taGVpZ2h0OiA0MjBweDtcbiAgICB9XG59XG5cbi5zbGltX2hlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkZWVwYmx1ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDE0MHB4IDYlIDA7XG4gICAgXG4gICAgLmltZ2JnIHtcbiAgICAgICAgb3BhY2l0eTogLjI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3AgIWltcG9ydGFudFxuICAgIH1cbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDIxMHB4IDUlIDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI1MHB4O1xuICAgIH1cbiAgICBcbiAgICBoMSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gICAgXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDhweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VhZm9hbTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAtM3B4IDhweCByZ2JhKDAsMCwwLC40KTtcbiAgICB9XG59XG5cbi5mZWF0dXJlX2Jhbm5lcmltZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMjYwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYXF1YTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogM3B4IHNvbGlkICM5Nzk3OTc7XG4gICAgbWFyZ2luLWJvdHRvbTogMi42cmVtO1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OiAyMjVweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OiAyNTBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgfVxufVxuXG4uaW1nYmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCAhaW1wb3J0YW50O1xufVxuXG5cblxuLyogIEhPTUVQQUdFIFNVUEVSIFNUWUxFUyAgKi9cblxuXG5cbi5ob21laGVybyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAkbWlkbmlnaHQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xuICAgIHBhZGRpbmc6IDE0MHB4IDclIDE0MHB4O1xuLy8gICAgYm9yZGVyLWJvdHRvbTogOHB4IHNvbGlkICRzZWFmb2FtO1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IDE0MHB4IDYlIDE2MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDE2MHB4IDglIDE2MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAxNzBweCAxMCUgMTgwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAxODBweCAxMiUgMjAwcHg7XG4gICAgfVxuICAgIFxuICAgIGgxIHsgXG4gICAgICAgIHRleHQtc2hhZG93OiAtMXB4IC0xcHggMCAjZmZmO1xuICAgIH1cbiAgICBcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogNTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWFmb2FtO1xuICAgICAgICBib3gtc2hhZG93OiAwIC0zcHggOHB4IHJnYmEoMCwwLDAsLjQpO1xuICAgIH1cbiAgICBcbiAgICAuaW1nYmcge1xuICAgICAgICBvcGFjaXR5OiAuODU7XG4gICAgfVxufVxuXG4udGlsZV9yYXBwYSB7XG4gICAgbWFyZ2luLXRvcDogLTgwcHg7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTkwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTAwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xMjBweDtcbiAgICB9XG59XG5cbi50aWxlX291dGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRlZXBibHVlO1xuICAgIGJvcmRlcjogNnB4IHNvbGlkICM5Nzk3OTc7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDMyJTtcbiAgICB9XG59XG5cbi50aWxlX2lubmVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI1O1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgXG4gICAgcCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBoMiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAndHJhZGUtZ290aGljLW5leHQtY29tcHJlc3NlZCcsIHNhbnMtc2VyaWY7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHRleHQtc2hhZG93OiAxcHggMnB4IDZweCByZ2JhKDAsMCwwLC44KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGNvbG9yOiAkc2VhZm9hbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi44dnc7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi40dnc7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJ2dztcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgIH1cbn1cblxuLnRpbGVfaW1hZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgaGVpZ2h0OiA5MCU7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG9wYWNpdHk6IC4xNTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3AgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0ICFpbXBvcnRhbnQ7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgXG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgaGVpZ2h0OiA1NSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiA2NSU7XG4gICAgICAgIGhlaWdodDogNjAlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgaGVpZ2h0OiA1NSU7XG4gICAgfVxufVxuXG4ubGlua19pbWFnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDQwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBwaW5rO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXIgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IHRvcCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQgIWltcG9ydGFudDtcbn1cblxuLmxpbmtSQVJSIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnIFxcMjAzYSc7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgY29sb3I6ICRzZWFmb2FtO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIHRvcDogMXB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgICBcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgbGVmdDogNXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaW50cm9fcmFwcGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjQ2NDY0O1xuICAgIHBhZGRpbmc6IDYwcHggNSU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBcbiAgICBoMSwgaDIsIGgzIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICd0cmFkZS1nb3RoaWMtbmV4dC1jb21wcmVzc2VkJywgc2Fucy1zZXJpZjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDJweCAycHggNnB4IHJnYmEoMCwwLDAsLjYpO1xuICAgIH1cbiAgICBcbiAgICAuaW1nYmcge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgbWl4LWJsZW5kLW1vZGU6IG92ZXJsYXk7XG4gICAgICAgIG9wYWNpdHk6IC40O1xuICAgIH1cbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiA4MHB4IDYlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDgwcHggNiU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDEwMHB4IDglO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAxMzBweCAxMCU7XG4gICAgfVxufVxuXG4uaW50cm9fY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI1O1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDY4JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDY0JVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDYwJTtcbiAgICB9XG4gICAgXG4gICAgcCB7XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKXtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSl7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBoMSwgaDIsIGgzIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuMnJlbTtcbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuNnJlbTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSl7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuOHJlbTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2Upe1xuICAgICAgICAgICAgZm9udC1zaXplOiAzLjJyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sZWZ0Z3JhZF9vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogNTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDY0JTtcbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAgcmdiYSgyNiwyNiwyNiwwLjkpIDAlLCByZ2JhKDI2LDI2LDI2LDApIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICByZ2JhKDI2LDI2LDI2LDAuOSkgMCUscmdiYSgyNiwyNiwyNiwwKSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICByZ2JhKDI2LDI2LDI2LDAuOSkgMCUscmdiYSgyNiwyNiwyNiwwKSAxMDAlKTsgXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyNlNjFhMWExYScsIGVuZENvbG9yc3RyPScjMDAxYTFhMWEnLEdyYWRpZW50VHlwZT0xICk7XG4gICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgIG9wYWNpdHk6IC44NTtcbn1cblxuLmxlZnRydWxlZCB7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCAkc2t5Ymx1ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIH1cbn1cblxuLmJyYW5kX292ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA1O1xuICAgIGJvdHRvbTogLTMwcHg7XG4gICAgcmlnaHQ6IC0zMHB4O1xuICAgIHdpZHRoOiA4NTBweDtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC41KTtcbi8vICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjQpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9EQU5LT0ZGX2xvZ28uc3ZnJyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3A7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgb3BhY2l0eTogLjE7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSguNzUpO1xuICAgICAgICByaWdodDogLTQwcHg7XG4gICAgICAgIGJvdHRvbTogLTUwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSguOSk7XG4gICAgICAgIHJpZ2h0OiAtNjBweDtcbiAgICAgICAgYm90dG9tOiAtNTBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgcmlnaHQ6IC00MHB4O1xuICAgICAgICBib3R0b206IC02MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICByaWdodDogLTYwcHg7XG4gICAgICAgIGJvdHRvbTogLTcwcHg7XG4gICAgfVxufVxuXG5cblxuXG4vKiBCQU5ORVIgQUQgU1RZTEVTICovXG5cblxuXG4uYmFubmVyYmxvY2tfMnVwIHtcbiAgICBcbiAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH0gICBcbn1cblxuLmRhdmlkYmFubmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiA0MHB4IDglO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzM1NDI0OTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtYmxlbmQtbW9kZTogb3ZlcmxheTtcbiAgICBib3JkZXItdG9wOiA4cHggc29saWQgJHNlYWZvYW07XG4gICAgYm9yZGVyLWJvdHRvbTogOHB4IHNvbGlkICRzZWFmb2FtO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGE0MzVhO1xuICAgIH1cbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB3aWR0aDogNDglO1xuICAgICAgICBib3JkZXItdG9wOiAxMHB4IHNvbGlkICRzZWFmb2FtO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkICRzZWFmb2FtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTA1JTtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMTUlO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggOCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiA2MHB4IDglO1xuXG4gICAgfVxufVxuXG4ubWF0cml4IHsgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9iYW5uZXJpbWdfbWF0cml4LmpwZycpOyB9XG4uY29tcGFyZSB7ICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvYmFubmVyaW1nX2NvbXBhcmlzb24uanBnJyk7IH1cblxuLmJhbm5lcnR4dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI1O1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtc2hhZG93OiAwIDJweCA2cHggcmdiYSgwLDAsMCwuNyk7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjJ2dztcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IDJ2dztcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjh2dztcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIH1cbn1cblxuLmJpZ29sZWJhbm5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDQwcHggMjVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsMCwwLC45KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVlcGJsdWU7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgXG4gICAgJjpob3ZlciB7XG4vLyAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNreWJsdWU7XG4vLyAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAzNjI4ODtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAzN2FiMjtcbiAgICB9XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogNDVweCA1JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDYlO1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogNTBweCA2JTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDYwcHggNiU7XG4gICAgfVxuICAgIFxuICAgIC5pbWdiZyB7XG4gICAgICAgIG9wYWNpdHk6IC4zNTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIH1cbiAgICBcbiAgICBoMiwgaDMsIGg0IHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC43cmVtO1xuICAgICAgICBjb2xvcjogJHNlYWZvYW07XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuLy8gICAgICAgICAgICBmb250LXNpemU6IDIuNXZ3O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjZ2dztcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjV2dztcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmlnbWVzc2FnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI1O1xuICAgIHdpZHRoOiA2NCU7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgd2lkdGg6IDcwJTtcbiAgICB9XG59XG5cbi5tYXBtYXJrZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxNTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDQ0JTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IC0yMiU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL21hcG1hcmtlci5wbmcnKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB3aWR0aDogNDYlO1xuICAgICAgICByaWdodDogLTUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiA0NCU7XG4gICAgICAgIHJpZ2h0OiAtNSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiAzOCU7XG4gICAgICAgIHJpZ2h0OiAtMyU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgICByaWdodDogLTElO1xuICAgIH1cbn1cblxuLnB1bXB5b3V1cCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE1O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogODAlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogLTI2JTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvYmFubmVycHVtcC5wbmcnKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB3aWR0aDogNDYlO1xuICAgICAgICByaWdodDogLTUlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiA0NCU7XG4gICAgICAgIHJpZ2h0OiAtNSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiAzOCU7XG4gICAgICAgIHJpZ2h0OiAtMyU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgICByaWdodDogLTElO1xuICAgIH1cbn1cblxuXG5cblxuLyogQUNDT1JESU9OIFNUWUxFUyAqL1xuXG5cbi5hY2NvcmQge1xuICAgIG1hcmdpbjogNjBweCBhdXRvO1xufVxuXG4uYWNjb3JkX3RyaWdnYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtZmFtaWx5OiAndHJhZGUtZ290aGljLW5leHQtY29tcHJlc3NlZCcsIHNhbnMtc2VyaWY7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICBjb2xvcjogJGRlZXBibHVlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzk3OTc5NztcbiAgICBwYWRkaW5nOiAxMnB4IDIwcHggMTRweCA2MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHNjYWxlLWNvbG9yKCAjZWZlZmVmLCAkbGlnaHRuZXNzOiAtMTAlICk7XG4gICAgfVxuICAgIFxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIHdpZHRoOiAyMnB4O1xuICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiAyMnB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9hbmdsZS11cC5zdmcnKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgfVxufVxuXG4uYWNjb3JkX3RyaWdnYS5vcGVuIHtcbiAgICBcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMGRlZyk7XG4gICAgfVxufVxuXG4uYW5zd2VyX291dGVyX3JhcHBhIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVlcGJsdWU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmFuc3dlcl9pbm5lcl9yYXBwYSB7XG4gICAgcGFkZGluZzogMjVweDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDUwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDYwcHg7XG4gICAgfVxuICAgIFxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgICAgICBjb2xvcjogJHNlYWZvYW07XG4gICAgfVxufVxuXG5cblxuLyogTU8gU1RZTEVTICovXG5cblxuXG4uYXBwZm9ybV9yYXBwYSB7XG4gICAgcGFkZGluZzogMzBweCA1JTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlYWVhO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgXG4gICAgW3R5cGU9J3RleHQnXSwgW3R5cGU9J3Bhc3N3b3JkJ10sIFt0eXBlPSdkYXRlJ10sIFt0eXBlPSdkYXRldGltZSddLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgW3R5cGU9J21vbnRoJ10sIFt0eXBlPSd3ZWVrJ10sIFt0eXBlPSdlbWFpbCddLCBbdHlwZT0nbnVtYmVyJ10sIFt0eXBlPSdzZWFyY2gnXSwgW3R5cGU9J3RlbCddLCBbdHlwZT0ndGltZSddLCBbdHlwZT0ndXJsJ10sIFt0eXBlPSdjb2xvciddIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgXG4gICAgZm9ybSBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLjhlbTtcbiAgICB9XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBcbiAgICB9XG59XG5cbi5saW5rX3RpbGVfcmFwcGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICB9XG59XG5cbi5saW5rX3RpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWFmb2FtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmFuZ2U7XG4gICAgYm9yZGVyOiA0cHggc29saWQgJGRlZXBibHVlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbi8vICAgIGhlaWdodDogMTQwcHg7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIFxuLy8gICAgJjpiZWZvcmUge1xuLy8gICAgICAgIGNvbnRlbnQ6ICcnO1xuLy8gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbi8vICAgICAgICB3aWR0aDogOTUlO1xuLy8gICAgICAgIGhlaWdodDogOTIlO1xuLy8gICAgICAgIHRvcDogNTAlO1xuLy8gICAgICAgIGxlZnQ6IDUwJTtcbi8vICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsLTUwJSwwKTtcbi8vICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC43KTtcbi8vICAgIH1cbiAgICBcbiAgICAuaW1nYmcge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgb3BhY2l0eTogLjM7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjogMCA4cHggMjVweDtcbiAgICAgICAgd2lkdGg6IDQ2JTtcbiAgICAgICAgaGVpZ2h0OiAxNjBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB3aWR0aDogMzElO1xuICAgICAgICBoZWlnaHQ6IDE5MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IDIxMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDIyJTtcbiAgICAgICAgaGVpZ2h0OiAyNDBweDtcbiAgICB9XG59XG5cbi5saW5rX3RleHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyNTtcbiAgICBmb250LWZhbWlseTogJ3RyYWRlLWdvdGhpYy1uZXh0LWNvbXByZXNzZWQnLCBzYW5zLXNlcmlmO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1zaGFkb3c6IDJweCAtMnB4ICRkZWVwYmx1ZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICBmb250LXNpemU6IDYuMnZ3O1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IDMuNHZ3O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogM3Z3O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IDIuNnZ3O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiAydnc7XG4gICAgfVxufVxuXG4ubGlua190aWxlOmhvdmVyIHtcbiAgICBcbiAgICBcbiAgICAuaW1nYmcge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgIG9wYWNpdHk6IC41O1xuICAgIH1cbn1cblxuXG5cblxuLyogU0hPUCBNT0RJRklDQVRJT05TICovXG5cblxuXG4ucHJvZHVjdF90b3Bfc2VjdGlvbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNpbmdsZS1wcm9kdWN0IGhyIHtcbiAgICBtYXJnaW46IDFyZW0gYXV0bztcbn1cblxuaDEubGl0X3Byb2R1Y3RfdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiAndHJhZGUtZ290aGljLW5leHQtY29tcHJlc3NlZCcsIHNhbnMtc2VyaWY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogJGRlZXBibHVlO1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2FjYWNhO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgcC5wcmljZSwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IHNwYW4ucHJpY2Uge1xuICAgIGNvbG9yOiAkc2t5Ymx1ZTtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbn1cblxucCNicmVhZGNydW1icyB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IC45cmVtO1xuICAgIGNvbG9yOiAkZGFya3NlYWZvYW07XG4gICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgfVxuICAgIFxuICAgIGEge1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBjb2xvcjogJGRlZXBibHVlO1xuICAgIH1cbiAgICBcbi8vICAgIC5icmVhZGNydW1iX2xhc3Qge1xuLy8gICAgICAgIGNvbG9yOiAkc2VhZm9hbTtcbi8vICAgIH1cbn1cblxuaDIud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDBweDtcbn1cblxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIHtcbiAgICBtYXJnaW46IDI1cHggYXV0byA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgY29sdW1uLWdhcDogMDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuICAgIFxuICAgIGxpLnByb2R1Y3Qge1xuICAgICAgICBtYXJnaW46IDAgMSUgMzBweCAhaW1wb3J0YW50O1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMSU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IDIzJTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuLy8gICAgICAgICAgICB3aWR0aDogMTclIDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxOCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGEge1xuICAgIGNvbG9yOiAkc2xhdGU7XG59XG5cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5idXR0b24ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRza3libHVlO1xuICAgIHBhZGRpbmc6IC42ZW0gMWVtIC44ZW07XG59XG5cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGEgaW1nIHtcbiAgICBtYXJnaW46IDAgMCAuNWVtO1xufVxuXG4ud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5X193cmFwcGVyIHtcbiAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgJGRhcmtzZWFmb2FtO1xufVxuXG4ud29vY29tbWVyY2UtcHJvZHVjdC1kZXRhaWxzX19zaG9ydC1kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xufVxuXG4ud29vY29tbWVyY2UgLnJlbGF0ZWQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi53b29jb21tZXJjZSAucmVsYXRlZCxcbi53b29jb21tZXJjZSxcbi5jdXN0b21fcHJvZHVjdF9ncmlkLFxuLmhvbWVfZmVhdHVyZWRfcHJvZHVjdHMge1xuICAgIFxuICAgIFxuICAgIHVsLnByb2R1Y3RzIHtcbiAgICAgICAgXG4gICAgICAgIGxpLnByb2R1Y3Qge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMzBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBoMi53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRvcmFuZ2U7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2VhZm9hbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMS4xKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGgyLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUge1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAndHJhZGUtZ290aGljLW5leHQtY29tcHJlc3NlZCcsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI1O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTJweCA1JSAyMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2VhZm9hbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZWVwYmx1ZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNHZ3O1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi40dnc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjF2dztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAydnc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnZ3O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNHB4IDQlIDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnIFxcMjAzYSc7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMnB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMSUgMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMS4zJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTgwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyNDBweDs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmJ1dHRvbixcbiAgICAucHJvZHVjdF9tZXRhIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLmhvbWVfZmVhdHVyZWRfcHJvZHVjdHMge1xuICAgIFxuICAgIHVsLnByb2R1Y3RzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLnN3aXBlX25vdGlmaWZjYXRpb24ge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4ucGFydHNfdGFibGVfcmFwcGEge1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0NEQ0RDRDtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgXG4gICAgdGFibGUge1xuICAgICAgICBmb250LWZhbWlseTogJ3RyYWRlLWdvdGhpYy1uZXh0LWNvbXByZXNzZWQnLCBzYW5zLXNlcmlmO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjQ0RDRENEO1xuICAgICAgICBtaW4td2lkdGg6IDEwMjRweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgXG4gICAgdGgge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0NEQ0RDRCAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVlcGJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMTBweCAxNXB4ICFpbXBvcnRhbnQ7IFxuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICB9XG4gICAgXG4gICAgdGQge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHggIWltcG9ydGFudDsgXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNDRENEQ0QgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmNvbHVtbi0xLFxuICAgIC5jb2x1bW4tMyxcbiAgICAuY29sdW1uLTQsXG4gICAgLmNvbHVtbi01LFxuICAgIC5jb2x1bW4tNixcbiAgICAuY29sdW1uLTcsXG4gICAgLmNvbHVtbi04IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIGNhcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBcbiAgICAuZGF0YVRhYmxlc193cmFwcGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgXG4gICAgXG59XG5cbi5oZXJvcHJvZHVjdF9yYXBwYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkZWVwYmx1ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIFxuICAgIC5pbWdiZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IDMzMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogLjc7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaGVyb3Byb2R1Y3RfY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI1O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgXG4gICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiA2NXB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogOTBweDtcbiAgICB9XG4gICAgXG4gICAgaDIge1xuICAgICAgICBmb250LWZhbWlseTogJ3RyYWRlLWdvdGhpYy1uZXh0LWNvbXByZXNzZWQnLCBzYW5zLXNlcmlmO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjb2xvcjogJHNlYWZvYW07XG4gICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMy40dnc7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjh2dztcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjR2dztcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnZ3O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gTmF2aWdhdGlvbiBicmVha3BvaW50c1xuLm1vYmlsZS1tZW51LFxuLnNpdGUtdGl0bGUtYmFyIHtcbiAgQGluY2x1ZGUgaGlkZS1mb3IobWVkaXVtKTtcbn1cbi8vXG4uZGVza3RvcC1tZW51LFxuLnNpdGUtbmF2aWdhdGlvbiAudG9wLWJhci1sZWZ0IHtcbiAgQGluY2x1ZGUgc2hvdy1mb3IobWVkaXVtKTtcbn1cblxuLy8gU2l0ZSB0aXRsZVxuLnNpdGUtZGVza3RvcC10aXRsZSBhIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vIFdQIHBvc3QgbmF2aWdhdGlvblxuLnBvc3QtbmF2aWdhdGlvbiB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4ubmF2LXByZXZpb3VzIHtcbiAgZmxvYXQ6bGVmdDtcbn1cblxuLm5hdi1uZXh0IHtcbiAgZmxvYXQ6cmlnaHQ7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtIC4wMDEyNTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtIC4wMDEyNTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi5tYWluLWNvbnRhaW5lciB7XG4gICAgXG4gICAgcGFkZGluZzogMjBweCAwIDQwcHg7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogNDBweCAwIDUwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogNjBweCAwO1xuLy8gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyO1xuICAgIH1cbn1cblxuLm1haW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZCgpO1xuXG59XG5cbi5zaWRlYmFyLWxlZnQge1xuXG4gICAgLy8gUGxhY2UgdGhlIHNpZGViYXIgYmVsb3cgbWFpbiBjb250ZW50IG9uIHNtYWxsIHNjcmVlbnMgLi4uXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgICAubWFpbi1jb250ZW50IHtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNpZGViYXIge1xuICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAuLi4gYW5kIHRvIHRoZSBsZWZ0IG9uIG1lZGl1bS11cCBzY3JlZW5zLCB3aGVuIHVzaW5nIHRoZSBzaWRlYmFyLWxlZnQgdGVtcGxhdGVcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIC5tYWluLWNvbnRlbnQge1xuICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIH1cblxuICAgICAgICAuc2lkZWJhciB7XG4gICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gRnVsbCB3aWR0aCB0ZW1wbGF0ZVxuLm1haW4tY29udGVudC1mdWxsLXdpZHRoIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbn1cblxuLy8gRGVmYXVsdCB0ZW1wbGF0ZVxuLm1haW4tY29udGVudCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwoOCk7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDJlbTtcbiAgICB9XG59XG5cbi5zaWRlYmFyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbCg0KTtcbi8vICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIH1cblxufSIsIi5mb290ZXItY29udGFpbmVyIHtcbiAgICBjb2xvcjogIzU1NTtcbiAgICBwYWRkaW5nOiAwIDAgMjBweDtcbn1cblxuLmZvb3Rlci1ncmlkIHtcbiAgQGluY2x1ZGUgeHktZ3JpZDtcbi8vICBwYWRkaW5nOiByZW0tY2FsYygzMCkgMDtcblxuICB1bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5mb290YV9jb250YWN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRlZXBibHVlO1xuICAgIFxuICAgIC5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgIH1cbiAgICBcbiAgICAuc3BhY2Vkb3V0IHtcbiAgICAgICAgY29sb3I6ICRzZWFmb2FtO1xuICAgIH1cbiAgICBcbiAgICBbdHlwZT0ndGV4dCddLCBbdHlwZT0ncGFzc3dvcmQnXSwgW3R5cGU9J2RhdGUnXSwgW3R5cGU9J2RhdGV0aW1lJ10sIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLCBbdHlwZT0nbW9udGgnXSwgW3R5cGU9J3dlZWsnXSwgW3R5cGU9J2VtYWlsJ10sIFt0eXBlPSdudW1iZXInXSwgW3R5cGU9J3NlYXJjaCddLCBbdHlwZT0ndGVsJ10sIFt0eXBlPSd0aW1lJ10sIFt0eXBlPSd1cmwnXSwgW3R5cGU9J2NvbG9yJ10sIHRleHRhcmVhIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZzogMC42cmVtIDFyZW07XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNCk7XG4gICAgfVxuICAgIFxuICAgIFt0eXBlPSd0ZXh0J106Zm9jdXMsIFt0eXBlPSdwYXNzd29yZCddOmZvY3VzLCBbdHlwZT0nZGF0ZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106Zm9jdXMsIFt0eXBlPSdtb250aCddOmZvY3VzLCBbdHlwZT0nd2VlayddOmZvY3VzLCBbdHlwZT0nZW1haWwnXTpmb2N1cywgW3R5cGU9J251bWJlciddOmZvY3VzLCBbdHlwZT0nc2VhcmNoJ106Zm9jdXMsIFt0eXBlPSd0ZWwnXTpmb2N1cywgW3R5cGU9J3RpbWUnXTpmb2N1cywgW3R5cGU9J3VybCddOmZvY3VzLCBbdHlwZT0nY29sb3InXTpmb2N1cywgdGV4dGFyZWE6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC44KTtcbiAgICB9XG4gICAgXG4gICAgdGV4dGFyZWEge1xuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuaW1nYmcge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tICFpbXBvcnRhbnQ7XG4gICAgICAgIG9wYWNpdHk6IC4xO1xuICAgIH1cbn1cblxuLmZvb3RhX25hdiB1bCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBcbiAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIGxpIGEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgY29sb3I6ICRvcmFuZ2U7XG4gICAgICAgIHBhZGRpbmc6IDJweCAxMnB4IDVweCAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgICBcbiAgICBsaSBhOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzc3NztcbiAgICAgICAgb3BhY2l0eTogLjM7XG4gICAgfVxuICAgIFxuICAgIGxpOm50aC1sYXN0LW9mLXR5cGUoMSkgYTphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIFxuICAgIGxpIGE6aG92ZXIsXG4gICAgbGkuaXMtYWN0aXZlIGEge1xuICAgICAgICBjb2xvcjogc2NhbGUtY29sb3IoICRvcmFuZ2UsICRsaWdodG5lc3M6IC0yNSUgKTtcbiAgICB9XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG4uY3JlZGl0cyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNvbG9yOiAjNDQ0O1xuICAgIHBhZGRpbmc6IDIwcHggNSU7IFxuICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMyU7IFxuICAgIH1cbn1cblxuLmNyZWRpdHMgYSB7XG4gICAgY29sb3I6ICM1RUI1RTg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5jcmVkc19sZWZ0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbn1cblxuLmNyZWRzX3JpZ2h0IHtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG59XG5cbi5tYWRlYnkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgfVxufVxuXG4ubWFkZWJ5LFxuLm1hZGVieSBpbWcge1xuICAgIHdpZHRoOiA2NXB4O1xuICAgIGhlaWdodDogMTlweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4ubWFkZWJ5OmhvdmVyIHtcbiAgICBvcGFjaXR5OiAuNTtcbn1cblxuLnNvY2lhbF9yYXBwYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMTVweCAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHRvcDogMnB4O1xuICAgICAgICBtYXJnaW46IDAgMjBweCAwIDA7XG4gICAgfVxufVxuXG4uc29jaWFsX2ljb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgbWFyZ2luOiAwIDVweCAwIDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDgwJTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5Nzk3OTc7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIG1hcmdpbjogMCA0cHggMCAwO1xuICAgIH1cbn1cblxuLmZhY2Vib29rIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2ljb25fZmFjZWJvb2suc3ZnJyk7IH1cbi50d2l0dGVyIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2ljb25fdHdpdHRlci5zdmcnKTsgfVxuLmluc3RhZ3JhbSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9pY29uX2luc3RhZ3JhbS5zdmcnKTsgfVxuLnlvdXR1YmUgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvaWNvbl95b3V0dWJlLnN2ZycpOyB9XG4ubGlua2VkaW4geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvaWNvbl9saW5rZWRpbi5zdmcnKTsgfVxuLmFtYXpvbiB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9pY29uX2FtYXpvbi5zdmcnKTsgfVxuXG4uc29jaWFsX2ljb246aG92ZXIge1xuICAgIG9wYWNpdHk6IC40O1xufSIsImJvZHkjdGlueW1jZXtcbiAgaGVpZ2h0OiBhdXRvOyAvLyBGaXggZWRpdG9yIHN0eWxlIGJ1Z1xuICBtYXgtd2lkdGg6ICRncmlkLXJvdy13aWR0aDsgLy8gR2l2ZSB0aGUgZWRpdG9yIGEgbWF4LXdpZHRoXG4gIHBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhaW1wb3J0YW50O1xufSIsIi5zaXRlcy1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgYm94LXNoYWRvdzogMCAtMnB4IDAgcmdiYSgwLDAsMCwwLjIpIGluc2V0O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLmJ1dHRuLFxuLndwY2Y3LXN1Ym1pdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWluLXdpZHRoOiAxNjBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDAgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNreWJsdWU7XG4gICAgcGFkZGluZzogMCAzMHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgIHRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgfVxufVxuXG4uYnV0dG46YWN0aXZlLFxuLmJ1dHRuOnZpc2l0ZWQsXG4uYnV0dG46Zm9jdXMsXG4ud3BjZjctc3VibWl0OmFjdGl2ZSxcbi53cGNmNy1zdWJtaXQ6dmlzaXRlZCxcbi53cGNmNy1zdWJtaXQ6Zm9jdXMge1xuICAgIGNvbG9yOiAjZmZmO1xufVxuXG4uYnV0dG46aG92ZXIsXG4ud3BjZjctc3VibWl0OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzY2FsZS1jb2xvcigkc2t5Ymx1ZSwgJGxpZ2h0bmVzczogNDAlKTtcbiAgICBjb2xvcjogJG1pZG5pZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi5idXR0bi5idXkge1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCByZ2JhKDAsMCwwLDApO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMUMxMjI7XG59XG5cbi5idXR0bi5idXk6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsMCwwLC41KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzY2FsZS1jb2xvcigjMzFDMTIyLCAkbGlnaHRuZXNzOiAyMCUpO1xufSIsIi5jYXJkcy1jb250YWluZXIge1xuXG4gIEBpbmNsdWRlIHh5LWdyaWQ7XG5cbiAgLmNhcmQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xuXG4gICAgICAuY2FyZC1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDEgb2YgMywgdHJ1ZSwgMC43cmVtICk7XG5cbiAgICB9XG5cbiAgfVxufVxuIiwiLmZlYXR1cmVkLWhlcm8ge1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGhlaWdodDogcmVtLWNhbGMoMTAwKTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGhlaWdodDogcmVtLWNhbGMoMjAwKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg0MDApO1xuICB9XG59XG4iLCIuZG90dGVkIHtcbiAgYm9yZGVyLXN0eWxlOiBkYXNoZWQ7XG4gIG1hcmdpbjogMnJlbSAwO1xufVxuIiwiLy8gQXBwbHkgb3V0bGluZSBzdHlsZXMgb25seSB3aGVuIGlucHV0IG1ldGhvZCBpcyBrZXlib2FyZFxuLy8gcmVtb3ZlIDpmb2N1cyBzdHlsZSB2aWEgV2hhdCBJbnB1dCB1c2luZyBwcm9ncmVzc2l2ZSBlbmhhbmNlbWVudFxuLy8gc28gOmZvY3VzIGlzbid0IGxlZnQgYnJva2VuIGlmIEphdmFTY3JpcHQgZmFpbHNcblxuW2RhdGEtd2hhdGlucHV0PVwibW91c2VcIl0gYTpmb2N1cywgYnV0dG9uOmZvY3VzXG5bZGF0YS13aGF0aW5wdXQ9XCJ0b3VjaFwiXSBhOmZvY3VzLCBidXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuIiwiLy8gUGFnZSBoZWFkZXJcbi5mcm9udC1oZXJvIHtcbiAgLm1hcmtldGluZyB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoNTVyZW0pO1xuICAgIEBpbmNsdWRlIHh5LWdyaWQ7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvZGVtby9oZXJvLWJnLWZvdW5kYXRpb24tNi1zbWFsbC5zdmcnKSBib3R0b20gY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDY1JSkgMDtcbiAgICBtYXJnaW46IDAgMCByZW0tY2FsYygzMik7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9kZW1vL2hlcm8tYmctZm91bmRhdGlvbi02LWxhcmdlLnN2ZycpIGJvdHRvbSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg2ODUpO1xuICAgIG1hcmdpbjogMCAwIHJlbS1jYWxjKDcyKTtcbiAgfVxuXG4gIC53YXRjaCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCg3KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBjb2xvcjogI0I0QzlEMTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICB9XG5cbiAgICBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cblxuICAgICNzdGFyZ2F6ZXJzIHtcbiAgICAgIDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjA5YlwiO1xuICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICAgICAgICBjb2xvcjogI0I0QzlEMTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg4KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAjdHdpdHRlciB7XG4gICAgICA6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGYwOTlcIjtcbiAgICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgICAgICAgY29sb3I6ICNCNEM5RDE7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoOCk7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICAudGFnbGluZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCg4KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCg1KTtcbiAgICAgIHBhZGRpbmctdG9wOiA2cmVtO1xuICAgIH1cbiAgfVxuXG4gIGgxIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogMi44NzVyZW07XG4gICAgfVxuICB9XG5cbiAgaDQge1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gIH1cblxuICAuZG93bmxvYWQge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcbiAgfVxufVxuXG4vLyBJbnRyb1xuLmludHJvIHtcbiAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG4gIEBpbmNsdWRlIHh5LWdyaWQ7XG5cbiAgLmZwLWludHJvIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbCgxMCk7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLW9mZnNldCgxKTtcblxuICAgICAgaDIge1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICB9XG5cbiAgICAgIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgY29sb3I6ICM3Nzc7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFNlY3Rpb24gZGl2aWRlclxuLnNlY3Rpb24tZGl2aWRlciB7XG4gIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyO1xuICBAaW5jbHVkZSB4eS1ncmlkO1xuXG4gIGhyIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbiAgICBAZXh0ZW5kIC5kb3R0ZWQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxufVxuXG4vLyBCZW5lZml0c1xuLmJlbmVmaXRzIHtcbiAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG4gIEBpbmNsdWRlIHh5LWdyaWQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBoZWFkZXIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xuXG4gICAgaDIge1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgIGNvbG9yOiAjNzc3O1xuICAgIH1cbiAgfVxuXG4gIC5zZW1hbnRpYyxcbiAgLnJlc3BvbnNpdmUsXG4gIC5jdXN0b21pemFibGUsXG4gIC5wcm9mZXNzaW9uYWwge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDMpO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICAgICAgbWFyZ2luOiAxcmVtIGF1dG8gMCBhdXRvO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIH1cbiAgfVxuXG4gIC53aHktZm91bmRhdGlvbiB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG4gICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgfVxufVxuIiwiLmtpdGNoZW4tc2luay1oZWFkZXIge1xuICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcbn1cblxuXG4ua2l0Y2hlbi1zaW5rLWNvbXBvbmVudHMge1xuICBociB7XG4gICAgbWFyZ2luOiAzcmVtIDA7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgxMik7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCg5KTtcbiAgfVxufVxuXG4ua2l0Y2hlbi1zaW5rLW5hdiB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwoMyk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgLmRvY3Mtc3ViLW1lbnUge1xuICAgICAgZm9udC1zaXplOiAwLjg1cmVtO1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG5cbiAgICAuZG9jcy1tZW51LXRpdGxlIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgcGFkZGluZy10b3A6IDEuNXJlbTtcbiAgICB9XG5cbiAgICAuZG9jcy10b2Mge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDRyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgIH1cblxuICAgIC5kb2NzLXRvYyAuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6ICMyMTk5ZTg7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgfVxuXG4gICAgLmRvY3MtdG9jIC5kb2NzLXN1Yi1tZW51OmZpcnN0LWNoaWxkIC5kb2NzLW1lbnUtdGl0bGUge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmtpdGNoZW4tc2luay1ncmlkIHtcbiAgLmdyaWQteCB7XG4gICAgYmFja2dyb3VuZDogI2Q2ZWNmYTtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIFxuICAgIC5jZWxsLDpudGgtY2hpbGQob2RkKSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjN2JjMWVmO1xuICAgICAgY29sb3I6ICMwYTBhMGE7XG4gICAgfVxuXG4gICAgLmNlbGw6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gICAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICB9XG4gIH1cbn1cbiJdfQ== */