:root {
    --theme-color: #0163d2;
}

.theme-color2 {
    --theme-color: #e22454;
}

.theme-color3 {
    --theme-color: #7520dd;
}

.theme-color4 {
    --theme-color: #e87316;
}

.theme-color5 {
    --theme-color: #df4246;
}

.theme-color6 {
    --theme-color: #ff6f00;
}

.text-color {
    color: #6d6d6d;
}

/**=====================
    common mixins css start
==========================**/
/*======= position css starts  ======= */
/*======= position css ends  ======= */
/*======= display flex css starts  ======= */
/*======= display flex css ends  ======= */
/*======= Font-color css starts  ======= */
.font-default {
    color: #232323 !important;
}

.font-dark {
    color: rgba(35, 35, 35, 0.65) !important;
}

.font-light {
    color: #7e7e7e !important;
}

.font-dark-30 {
    color: #232323 !important;
}

/*======= Font-color css end  ======= */
/*======= buttons css starts  ======= */
.btn-solid-dark {
    color: #fff;
    background-color: unset;
    border: 1px solid #232323;
}

.btn-solid-dark::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background-color: #232323;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}

.btn-solid-dark:hover {
    color: #232323;
}

.btn-solid-dark:hover::before {
    opacity: 0;
    -webkit-transform: scale(0.5, 0.5);
    transform: scale(0.5, 0.5);
}

.btn-solid-light {
    color: #fff;
    background-color: unset;
    border: 1px solid #fefefe;
    color: #fff;
}

.btn-solid-light::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background-color: #fefefe;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}

.btn-solid-light:hover {
    color: #232323;
}

.btn-solid-light:hover::before {
    opacity: 0;
    -webkit-transform: scale(0.5, 0.5);
    transform: scale(0.5, 0.5);
}

.btn-solid-light:hover, .btn-solid-light:focus, .btn-solid-light:active, .btn-solid-light.active {
    color: #000;
}

.btn-solid-default {
    color: #fff;
    background-color: unset;
    background: #FF6F00;
    background: linear-gradient(217deg, rgba(255, 111, 0, 1) 0%, rgba(206, 73, 40, 1) 100%);
    border: 1px solid #ff9543;
}

.btn-solid-default::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background-color: var(--theme-color);
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}

.btn-solid-default:hover {
    color: #ffffff;
}

.btn-solid-default:hover::before {
    opacity: 0;
    -webkit-transform: scale(0.5, 0.5);
    transform: scale(0.5, 0.5);
}

/*======= buttons css end  ======= */
/*======= align css starts  ======= */
/*======= align css ends  ======= */
/*======= breakpoint css ends  ======= */
/**=====================
    breakpoint mixins css start
==========================**/
/**=====================
     reset css start
==========================**/
section, .section-t-space {
    padding-top: 80px;
}

@media (max-width: 1460px) {
    section, .section-t-space {
        padding-top: 70px;
    }
}

@media (max-width: 1199px) {
    section, .section-t-space {
        padding-top: 60px;
    }
}

@media (max-width: 991px) {
    section, .section-t-space {
        padding-top: 50px;
    }
}

@media (max-width: 767px) {
    section, .section-t-space {
        padding-top: 40px;
    }
}

@media (max-width: 575px) {
    section, .section-t-space {
        padding-top: 30px;
    }
}

.section-b-space {
    padding-bottom: 80px;
}

@media (max-width: 1460px) {
    .section-b-space {
        padding-bottom: 70px;
    }
}

@media (max-width: 1199px) {
    .section-b-space {
        padding-bottom: 60px;
    }
}

@media (max-width: 991px) {
    .section-b-space {
        padding-bottom: 50px;
    }
}

@media (max-width: 767px) {
    .section-b-space {
        padding-bottom: 40px;
    }
}

@media (max-width: 575px) {
    .section-b-space {
        padding-bottom: 30px;
    }
}

.media .media-body {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.rating li i.orange {
    color: #facc21;
}

.g-18 {
    margin: -18px;
}

.g-18 > div {
    padding: 18px;
}

.custom-gy-5 {
    margin-top: calc(-16px + (-20 - -16) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: calc(-16px + (-20 - -16) * ((100vw - 320px) / (1920 - 320)));
}

.custom-gy-5 > div {
    margin-top: calc(16px + (20 - 16) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: calc(16px + (20 - 16) * ((100vw - 320px) / (1920 - 320)));
}

.light-gray-bg {
    background-color: #eff2f7;
}

@media (min-width: 1200px) {
    .custom-col {
        width: calc(33.33333% + 4.16%);
    }
}

/**=====================
     typography css start
==========================**/
body {
    font-family: "Montserrat", sans-serif;
    position: relative;
    font-size: 14px;
    color: #1e1e1e;
    margin: 0;
    background-color: #fffbef;
}

body .bg-overlay {
    height: 100vh;
    width: 100vw;
    background-color: rgba(0, 0, 0, 0.2);
    position: fixed;
    z-index: 3;
    top: 0;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.5s;
    transition: 0.5s;
}

body .bg-overlay.show {
    visibility: visible;
    opacity: 1;
}

ul {
    padding-left: 0;
    margin-bottom: 0;
}

li {
    display: inline-block;
    font-size: 13px;
}

p {
    font-size: 14px;
    line-height: 18px;
}

a {
    color: var(--theme-color);
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    text-decoration: none;
}

a:hover {
    text-decoration: none;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
}

a:focus {
    outline: none;
}

button:focus {
    outline: none;
}

.btn-close:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
}

:focus {
    outline: none;
}

.form-control {
    background-color: #fff;
}

.form-control:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
}

h1 {
    font-size: calc(40px + (70 - 40) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 600;
    line-height: 1.1;
    text-transform: capitalize;
    margin: 0;
}

h2 {
    font-size: calc(22px + (28 - 22) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 600;
    line-height: 1;
    text-transform: capitalize;
    margin: 0;
}

h3 {
    font-size: calc(16px + (20 - 16) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 500;
    line-height: 1.2;
    margin: 0;
}

h4 {
    font-size: calc(17px + (18 - 17) * ((100vw - 320px) / (1920 - 320)));
    line-height: 1.2;
    margin: 0;
    font-weight: 400;
}

h5 {
    font-size: calc(15px + (16 - 15) * ((100vw - 320px) / (1920 - 320)));
    line-height: 1.2;
    margin: 0;
    font-weight: 400;
}

h6 {
    font-size: calc(13px + (14 - 13) * ((100vw - 320px) / (1920 - 320)));
    line-height: 1.2;
    margin: 0;
    font-weight: 400;
}

span {
    display: inline-block;
}

.theme-color {
    color: var(--theme-color) !important;
}

.theme-bg-color {
    background-color: #ff6f00;
}

/**=====================
     buttons css start
==========================**/
.btn {
    position: relative;
    padding: calc(8px + (14 - 8) * ((100vw - 320px) / (1920 - 320))) calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 600;
    z-index: 1;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    border-radius: 0;
    font-weight: bold;
    font-size: calc(12px + (13 - 12) * ((100vw - 320px) / (1920 - 320)));
    text-transform: capitalize;
    white-space: nowrap;
}

.btn-submit {
    font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
    background-color: var(--theme-color);
    color: #fff;
}

.btn-submit:hover {
    background-color: var(--theme-color);
    color: #fff;
}

.btn-size {
    font-size: 12px;
}

.btn:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
}

.btn-spacing {
    padding: calc(5px + (14 - 5) * ((100vw - 320px) / (1920 - 320))) calc(8px + (30 - 8) * ((100vw - 320px) / (1920 - 320)));
}

.btn-sm {
    padding: 8px 16px;
    font-weight: 400;
}

.default-white {
    background-color: #fff;
    border-radius: 0;
}

.default-light {
    color: #f8f8f8;
    position: relative;
    border: 1px solid transparent;
    padding: calc(6px + (14 - 6) * ((100vw - 320px) / (1920 - 320))) calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 800;
}

.default-light::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: var(--theme-color);
    opacity: 0.15;
}

.default-light1 {
    color: var(--theme-color);
    position: relative;
    background-color: unset;
    border: 1px solid transparent;
}

.default-light1::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    z-index: -1;
    background-color: var(--theme-color);
    opacity: 0.11;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}

.default-light1::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: -1;
    border: 1px solid var(--theme-color);
    opacity: 0;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}

.default-light1:hover {
    color: var(--theme-color);
}

.default-light1:hover::before {
    opacity: 0;
    -webkit-transform: scale(0.5, 0.5);
    transform: scale(0.5, 0.5);
}

.default-light1:hover::after {
    opacity: 0.11;
}

.default-light-theme {
    color: var(--theme-color);
    padding: calc(6px + (14 - 6) * ((100vw - 320px) / (1920 - 320))) calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.default-light-theme:hover {
    color: var(--theme-color);
}

.default-theme {
    background-color: var(--theme-color);
    color: #fff;
}

.default-theme:hover {
    color: #fff;
}

.default-theme-2 {
    padding: 12px 25px;
    font-size: 15px;
    text-transform: capitalize;
    font-weight: 400;
}

.default-theme-1 {
    background-color: rgba(240, 247, 240, 0.6);
    -webkit-transform: scale(100%);
    transform: scale(100%);
    border: 1px solid var(--theme-color);
}

.default-theme-1:hover {
    background-color: var(--theme-color);
    color: #fff;
    -webkit-transform: scale(100%);
    transform: scale(100%);
}

.default::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    z-index: -1;
    background-color: var(--theme-color);
    opacity: 0.11;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}

.default::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: -1;
    border: 1px solid var(--theme-color);
    opacity: 0;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}

.default:hover {
    color: var(--theme-color);
}

.default:hover::before {
    opacity: 0;
    -webkit-transform: scale(0.5, 0.5);
    transform: scale(0.5, 0.5);
}

.default:hover::after {
    opacity: 0.11;
}

.btn-light-white {
    padding: 6px 20px;
    color: #fff;
    background-color: unset;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.btn-light-white i {
    font-size: 12px;
}

.btn-light-white::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background-color: rgba(255, 255, 255, 0.1);
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}

.btn-light-white:hover {
    color: #fff;
}

.btn-light-white:hover::before {
    opacity: 0;
    -webkit-transform: scale(0.5, 0.5);
    transform: scale(0.5, 0.5);
}

.btn-white {
    padding: 6px 20px;
    color: #232323;
    background-color: unset;
    border: 1px solid #fff;
}

.btn-white i {
    font-size: 12px;
}

.btn-white::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background-color: #fff;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}

.btn-white:hover {
    color: #fff;
}

.btn-white:hover::before {
    opacity: 0;
    -webkit-transform: scale(0.5, 0.5);
    transform: scale(0.5, 0.5);
}

.btn-full {
    width: 100%;
    border-radius: 5px;
}

/**=====================
     alert css start
==========================**/
.alert-info .btn-close {
    font-size: 10px;
}

.progress-bar-info {
    background-color: #0c5460;
}

[data-notify="progressbar"] {
    margin-bottom: 0;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 5px;
}

/**=====================
    label css start
==========================**/
.label {
    font-size: 12px;
    padding: 6px 10px;
    text-transform: uppercase;
    color: #f8fdfe;
    display: inline-block;
    font-weight: 500;
}

@media (max-width: 575px) {
    .label {
        padding: 4px 6px;
        font-size: 10px;
    }
}

.label-block {
    position: absolute;
    padding: calc(15px + (20 - 15) * ((100vw - 320px) / (1920 - 320)));
    top: 0;
    width: 100%;
    z-index: 1;
}

.label-dark {
    background-color: #000;
}

.label-black {
    background-color: #000;
    color: #ff6f00;
}

[dir="rtl"] .label-black {
    float: right;
}

.label-theme {
    background-color: var(--theme-color);
}

/**=====================
     tab css start
==========================**/
.tab-wrap .nav-tabs {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-bottom: 2px solid #f0f3f8;
}

@media (max-width: 991px) {
    .tab-wrap .nav-tabs {
        display: -webkit-box;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-wrap: inherit;
        flex-wrap: inherit;
        overflow-x: scroll;
        overflow-y: hidden;
        white-space: nowrap;
    }
}

.tab-wrap .nav-tabs .nav-link {
    font-size: calc(15px + (16 - 15) * ((100vw - 320px) / (1920 - 320)));
    line-height: 1;
    color: #7e7e7e;
    font-weight: 500;
    padding: 0 20px 20px;
    background: transparent;
    border: none;
    border-bottom: 4px solid transparent;
}

@media (max-width: 991px) {
    .tab-wrap .nav-tabs .nav-link {
        padding: 0 10px 15px;
    }
}

.tab-wrap .nav-tabs .nav-link:hover, .tab-wrap .nav-tabs .nav-link:active, .tab-wrap .nav-tabs .nav-link:focus {
    border: none;
}

.tab-wrap .nav-tabs .nav-link.active, .tab-wrap .nav-tabs .nav-link:active {
    border-bottom: 4px solid var(--theme-color);
    color: #212529;
}

.tab-wrap .tab-content {
    margin-top: 30px;
}

/**=====================
     dropdown css start
==========================**/
.onhover-div {
    top: 70px;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    z-index: 8;
    background-color: #fff;
    -webkit-transition: all linear 0.3s;
    transition: all linear 0.3s;
    min-width: 280px;
    -webkit-box-shadow: 3.346px 3.716px 22.5px rgba(0, 0, 0, 0.07);
    box-shadow: 3.346px 3.716px 22.5px rgba(0, 0, 0, 0.07);
}

.onhover-div li {
    font-size: 14px;
}

.onhover-div li a svg {
    color: #232323;
}

.onhover-div::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #fff;
    top: -7px;
    right: 10px;
    z-index: 2;
}

[dir="rtl"] .onhover-div::before {
    right: unset;
    left: 10px;
}

.onhover-dropdown {
    position: relative;
    cursor: pointer;
}

.onhover-dropdown:hover .onhover-div {
    top: 50px;
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
    visibility: visible;
}

@media (max-width: 767px) {
    .onhover-dropdown:hover .onhover-div {
        width: 320px;
    }
}

.onhover-dropdown.cart-dropdown button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.onhover-dropdown.cart-dropdown button .feather {
    width: 23px !important;
    margin-right: 10px;
    height: 22px;
}

[dir="rtl"] .onhover-dropdown.cart-dropdown button .feather {
    margin-right: unset;
    margin-left: 10px;
}

@media (max-width: 360px) {
    .onhover-dropdown.cart-dropdown button .feather {
        margin-right: 0;
    }

    [dir="rtl"] .onhover-dropdown.cart-dropdown button .feather {
        margin-right: unset;
        margin-left: 0;
    }
}

.onhover-dropdown.cart-dropdown button span {
    font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
}

/**=====================
     timer css start
==========================**/
.timer ul {
    padding: 20px;
    background-color: rgba(35, 35, 35, 0.8);
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
}

[dir="rtl"] .timer ul {
    padding: 20px;
}

@media (max-width: 1366px) {
    .timer ul {
        padding: 15px;
    }
}

@media (max-width: 480px) {
    .timer ul {
        padding: 10px;
    }
}

.timer ul li {
    position: relative;
}

.timer ul li span {
    display: block;
    margin-bottom: 3px;
}

@media (max-width: 480px) {
    .timer ul li {
        font-size: 12px;
    }
}

@media (max-width: 480px) {
    .timer ul li h5 {
        font-size: 13px;
    }
}

.timer ul li + li {
    margin-left: 30px;
}

.timer ul li + li::before {
    content: "";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: -17px;
    border-left: 1px solid rgba(126, 126, 126, 0.4);
    height: 50%;
}

[dir="rtl"] .timer ul li + li::before {
    right: -17px;
    left: unset !important;
    border-right: 1px solid rgba(126, 126, 126, 0.4);
    border-left: unset;
}

@media (max-width: 1366px) {
    .timer ul li + li::before {
        left: -12px;
    }

    [dir="rtl"] .timer ul li + li::before {
        right: -12px;
    }
}

@media (max-width: 480px) {
    .timer ul li + li::before {
        left: -5px;
    }

    [dir="rtl"] .timer ul li + li::before {
        right: -5px;
    }
}

[dir="rtl"] .timer ul li + li {
    margin-right: 30px;
    margin-left: unset !important;
}

@media (max-width: 1366px) {
    .timer ul li + li {
        margin-left: 20px;
    }

    [dir="rtl"] .timer ul li + li {
        margin-right: 20px;
    }
}

@media (max-width: 480px) {
    .timer ul li + li {
        margin-left: 6px;
    }

    [dir="rtl"] .timer ul li + li {
        margin-right: 6px;
    }
}

.timer-style-2 ul {
    margin: calc(-5px + (-15 - -5) * ((100vw - 320px) / (1920 - 320)));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.timer-style-2 ul li {
    margin: calc(5px + (15 - 5) * ((100vw - 320px) / (1920 - 320)));
    background-color: #fff;
    padding: calc(8px + (10 - 8) * ((100vw - 320px) / (1920 - 320))) calc(12px + (20 - 12) * ((100vw - 320px) / (1920 - 320)));
    margin-right: 0;
    color: #212529;
}

.timer-style-2 ul li h2 {
    font-size: calc(18px + (28 - 18) * ((100vw - 320px) / (1920 - 320)));
}

.timer-style-2 ul li span {
    display: block;
    margin-bottom: 3px;
}

@media (max-width: 480px) {
    .timer-style-2 ul li {
        font-size: 12px;
    }
}

@media (max-width: 480px) {
    .timer-style-2 ul li h5 {
        font-size: 13px;
    }
}

.timer-style-3 {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: rgba(232, 115, 22, 0.8);
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
    width: 80%;
}

.timer-style-3 ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
    text-align: center;
    color: #fff;
    width: 100%;
}

.timer-style-3 ul li {
    margin: calc(5px + (5 - 5) * ((100vw - 320px) / (1920 - 320))) calc(5px + (5 - 5) * ((100vw - 320px) / (1920 - 320))) calc(5px + (5 - 5) * ((100vw - 320px) / (1920 - 320))) 0;
    padding: calc(8px + (10 - 8) * ((100vw - 320px) / (1920 - 320))) calc(12px + (20 - 12) * ((100vw - 320px) / (1920 - 320)));
    width: 25%;
}

.timer-style-3 ul li + li {
    position: relative;
}

.timer-style-3 ul li + li::after {
    content: "";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 1px;
    height: 50%;
    background-color: rgba(255, 255, 255, 0.5);
    left: 0%;
}

.timer-style-3 ul li:nth-child(4) {
    margin-right: 0;
}

.timer-style-3 ul li h2 {
    font-size: calc(18px + (28 - 18) * ((100vw - 320px) / (1920 - 320)));
}

.timer-style-3 ul li span {
    display: block;
    margin-bottom: 3px;
}

@media (max-width: 480px) {
    .timer-style-3 ul li {
        font-size: 12px;
    }
}

@media (max-width: 480px) {
    .timer-style-3 ul li h5 {
        font-size: 13px;
    }
}

/**=====================
     title css start
==========================**/
.title {
    margin-bottom: calc(20px + (50 - 20) * ((100vw - 320px) / (1920 - 320)));
}

.title.title1 h2 {
    font-size: calc(22px + (35 - 22) * ((100vw - 320px) / (1920 - 320)));
    position: relative;
    display: inline-block;
    padding-bottom: 16px;
}

.title.title1 h2:before {
    content: "";
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 1.5px;
    width: 100%;
    height: 1px;
    background-color: #ddd;
}

.title.title1 h2:after {
    content: "";
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: -1px;
    width: 30%;
    height: 4px;
    background-color: var(--theme-color);
    border-radius: 50px;
}

.title.title1 p {
    margin: 20px auto 0;
    color: #212529;
    letter-spacing: 1px;
    width: 50%;
    line-height: 1.5;
}

.title.title-effect h2::after {
    left: 0;
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

.title.title-1 {
    margin-bottom: 0;
    padding: 0 15px;
}

.title h5 {
    margin-bottom: 10px;
    margin-top: -2px;
    color: #7e7e7e;
}

.title-2 {
    color: #212529;
}

.title-2 h2 {
    margin-top: -2px;
}

.title-2 h3 {
    margin-top: -2px;
}

.title-2 h5 {
    margin-bottom: 0;
    margin-top: 10px;
    color: #7e7e7e;
}

.title-3 {
    margin-bottom: calc(20px + (50 - 20) * ((100vw - 320px) / (1920 - 320)));
}

.title-3.title-border {
    border-bottom: 1px solid #f0f3f8;
}

.title-3 h2 {
    margin-top: -2px;
}

.title-3 h5 {
    margin-bottom: 0;
    margin-top: 10px;
}

.gradient-title {
    background-image: linear-gradient(100deg, #3d3d3d, var(--theme-color));
    background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
    -webkit-background-clip: text;
    cursor: pointer;
}

.gradient-title-1 {
    background-image: linear-gradient(100deg, white, var(--theme-color));
}

/**=====================
     Tap to top css start
==========================**/
.tap-to-top {
    background-color: var(--theme-color);
    position: fixed;
    bottom: 15px;
    right: -60px;
    border-radius: 5px;
    overflow: hidden;
    width: calc(35px + (45 - 35) * ((100vw - 320px) / (1920 - 320)));
    height: calc(35px + (45 - 35) * ((100vw - 320px) / (1920 - 320)));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (1920 - 320)));
    -webkit-box-shadow: 0 3px 8px rgba(33, 37, 41, 0.35);
    box-shadow: 0 3px 8px rgba(33, 37, 41, 0.35);
    z-index: 3;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    cursor: pointer;
    opacity: 0;
}

[dir="rtl"] .tap-to-top {
    right: unset;
    left: -60px;
}

.tap-to-top::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 0;
    background: #212529;
    top: 0;
    left: 0;
    bottom: 0;
    z-index: -1;
    -webkit-transition: 0.5s;
    transition: 0.5s;
}

.tap-to-top:hover::before {
    height: 100%;
}

@media (max-width: 575px) {
    .tap-to-top {
        bottom: 75px;
    }
}

.tap-to-top.show {
    right: 15px;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    opacity: 1;
}

[dir="rtl"] .tap-to-top.show {
    right: unset;
    left: 15px;
}

.tap-to-top a {
    color: #fff;
    width: calc(35px + (40 - 35) * ((100vw - 320px) / (1920 - 320)));
    height: calc(35px + (40 - 35) * ((100vw - 320px) / (1920 - 320)));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (1920 - 320)));
    z-index: 3;
}

@media (max-width: 575px) {
    .tap-to-top a {
        bottom: 75px;
    }
}

/**=====================
    Modal css Start
==========================**/
.newletter-modal .modal-dialog .modal-content {
    border: none;
    border-radius: 0;
    background-color: #fff;
}

.newletter-modal .modal-dialog .modal-content .modal-header {
    border: none;
    padding: 0;
    background-color: #fff;
}

.newletter-modal .modal-dialog .modal-content .modal-header .btn-close {
    width: 54px;
    height: 54px;
    top: -50px;
    right: -50px;
    line-height: 54px;
    position: absolute;
    text-decoration: none;
    text-align: center;
    color: #fff;
    background: 0 0;
    border: none;
    cursor: pointer;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
    opacity: 1;
}

@media (max-width: 575px) {
    .newletter-modal .modal-dialog .modal-content .modal-header .btn-close {
        right: -14px;
    }

    [dir="rtl"] .newletter-modal .modal-dialog .modal-content .modal-header .btn-close {
        right: unset;
        left: -14px;
    }
}

[dir="rtl"] .newletter-modal .modal-dialog .modal-content .modal-header .btn-close {
    right: unset;
    left: -50px;
}

.newletter-modal .modal-dialog .modal-content .modal-header .btn-close:before {
    content: "\f00d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 22px;
}

.newletter-modal .modal-dialog .modal-content .modal-body {
    padding: calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320)));
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.newletter-modal .modal-dialog .modal-content .modal-body img {
    position: absolute;
    top: -15px;
    right: -25px;
    width: 140px;
    -webkit-transform: rotate(20deg);
    transform: rotate(20deg);
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
    opacity: 0.5;
    -webkit-box-shadow: 0 7px 11px rgba(33, 37, 41, 0.5);
    box-shadow: 0 7px 11px rgba(33, 37, 41, 0.5);
    z-index: -1;
}

[dir="rtl"] .newletter-modal .modal-dialog .modal-content .modal-body img {
    right: unset;
    left: -25px;
    -webkit-transform: rotate(-20deg);
    transform: rotate(-20deg);
}

.newletter-modal .modal-dialog .modal-content .modal-body .modal-title h2 {
    color: #212529;
    font-weight: 500;
    margin-bottom: 16px;
}

.newletter-modal .modal-dialog .modal-content .modal-body .modal-title ul {
    list-style-type: disc;
    -webkit-padding-start: 15px;
    padding-inline-start: 15px; }

.newletter-modal .modal-dialog .modal-content .modal-body .modal-title ul li {
    display: list-item;
    color: #7e7e7e;
    line-height: 1.7;
}

.newletter-modal .modal-dialog .modal-content .modal-body .modal-title ul li::marker {
    color: #212529;
}

.video-play-modal .modal-dialog .modal-content {
    background-color: transparent;
    border: none;
}

.video-play-modal .modal-dialog .modal-content .modal-body {
    padding: 0;
}

.video-play-modal .modal-dialog .modal-content .modal-body iframe {
    width: 100%;
    height: 550px;
}

.comparemodal-body .table {
    margin-bottom: 0;
    border: 1px solid #ced4da;
}

.comparemodal-body .table.table-striped-1 tbody tr:nth-of-type(odd) {
    background-color: transparent;
}

.comparemodal-body .table.table-striped-1 tbody tr:nth-of-type(even) {
    background-color: #eff2f7;
}

.comparemodal-body .table a {
    color: #212529;
}

.comparemodal-body .table tr.table-product-details {
    border-bottom: 1px solid transparent;
}

.comparemodal-body .table tr.table-cart-button td {
    border-top: 1px solid transparent;
}

.comparemodal-body .table tr.table-cart-button a.btn {
    color: #fff;
    font-weight: 700;
    font-size: 13px;
    padding: 6px 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: var(--theme-color);
    border-radius: 5px;
}

.comparemodal-body .table tr.table-cart-button a.btn:hover {
    color: #fff;
}

.comparemodal-body .table tr td {
    border-left: 1px solid #ced4da;
    padding: 14px;
    min-width: 230px;
    width: 0;
    color: #212529;
}

.comparemodal-body .table tr td:first-child {
    min-width: 270px;
    font-weight: 500;
    text-transform: uppercase;
}

.comparemodal-body .table ul.list-detail {
    padding-left: 22px;
}

.comparemodal-body .table ul.list-detail li {
    font-size: 14px;
    color: #777777;
    display: list-item;
    list-style-type: square;
}

.comparemodal-body .product-box .btn-close {
    right: 0;
    top: 0;
    z-index: 1;
}

.comparemodal-body .product-box .product-image {
    text-align: center;
}

.comparemodal-body .product-box .product-image img {
    width: 100%;
    height: 100%;
}

.modal-header {
    border: none;
    padding: 0;
}

.modal-header .btn-close {
    width: 54px;
    height: 54px;
    top: -50px;
    right: -50px;
    line-height: 54px;
    position: absolute;
    text-decoration: none;
    text-align: center;
    color: #fff;
    background: 0 0;
    border: none;
    cursor: pointer;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
    opacity: 1;
}

@media (max-width: 575px) {
    .modal-header .btn-close {
        right: -14px;
    }

    [dir="rtl"] .modal-header .btn-close {
        right: unset;
        left: -14px;
    }
}

[dir="rtl"] .modal-header .btn-close {
    right: unset;
    left: -50px;
}

.modal-header .btn-close:before {
    content: "\f00d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 22px;
}

.shipping-modal .modal-dialog .modal-content .modal-body {
    padding: calc(15px + (40 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.shipping-modal .modal-dialog .modal-content .modal-body .modal-title h6 {
    color: #191919;
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 6px;
}

.shipping-modal .modal-dialog .modal-content .modal-body .modal-title ul {
    list-style-type: disc;
    -webkit-padding-start: 15px;
    padding-inline-start: 15px; }

.shipping-modal .modal-dialog .modal-content .modal-body .modal-title ul li {
    display: list-item;
    color: #7e7e7e;
    line-height: 1.7;
}

.shipping-modal .modal-dialog .modal-content .modal-body .modal-title ul li::marker {
    color: #212529;
}

.cart-modal .modal-dialog .modal-content .modal-header {
    border: none;
    padding: 0;
}

.cart-modal .modal-dialog .modal-content .modal-header .btn-close {
    width: 54px;
    height: 54px;
    top: -50px;
    right: -50px;
    line-height: 54px;
    position: absolute;
    text-decoration: none;
    text-align: center;
    color: #fff;
    background: 0 0;
    border: none;
    cursor: pointer;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
    opacity: 1;
}

@media (max-width: 575px) {
    .cart-modal .modal-dialog .modal-content .modal-header .btn-close {
        right: -14px;
    }

    [dir="rtl"] .cart-modal .modal-dialog .modal-content .modal-header .btn-close {
        right: unset;
        left: -14px;
    }
}

.cart-modal .modal-dialog .modal-content .modal-header .btn-close:before {
    content: "\f00d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 22px;
}

.cart-modal .modal-dialog .modal-content .modal-body {
    padding: calc(15px + (40 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.cart-modal .modal-dialog .modal-content .modal-body .modal-messages {
    text-align: center;
    color: #008000;
    margin-bottom: 10px;
    background: #d1e7dd;
    padding: 12px;
    width: 100%;
    font-size: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 575px) {
    .cart-modal .modal-dialog .modal-content .modal-body .modal-messages {
        display: block;
    }
}

.cart-modal .modal-dialog .modal-content .modal-body .modal-messages .fa-check {
    font-size: 14px;
    margin-right: 10px;
    width: 25px;
    height: 25px;
    background: #008000;
    border-radius: 50%;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media (max-width: 575px) {
    .cart-modal .modal-dialog .modal-content .modal-body .modal-messages .fa-check {
        margin: 0 auto 12px;
    }
}

.cart-modal .modal-dialog .modal-content .modal-body .modal-product {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 575px) {
    .cart-modal .modal-dialog .modal-content .modal-body .modal-product {
        display: block;
        border-bottom: 1px solid #ddd;
        padding-bottom: 30px;
    }
}

@media (max-width: 575px) {
    .cart-modal .modal-dialog .modal-content .modal-body .modal-product .modal-contain-img {
        text-align: center;
        margin-bottom: calc(10px + (18 - 10) * ((100vw - 320px) / (1920 - 320)));
    }
}

.cart-modal .modal-dialog .modal-content .modal-body .modal-product .modal-contain-details {
    margin-left: 10px;
}

@media (max-width: 575px) {
    .cart-modal .modal-dialog .modal-content .modal-body .modal-product .modal-contain-details {
        text-align: center;
        margin-left: 0;
    }
}

.cart-modal .modal-dialog .modal-content .modal-body .modal-product h5 {
    margin: 5px 0;
}

.cart-modal .modal-dialog .modal-content .modal-body .modal-product .modal-contain-img img {
    width: 100%;
    max-width: 220px;
    height: auto;
    margin: 10px 0;
}

@media (max-width: 575px) {
    .cart-modal .modal-dialog .modal-content .modal-body .modal-product .modal-contain-img img {
        max-width: 60%;
    }
}

@media (max-width: 480px) {
    .cart-modal .modal-dialog .modal-content .modal-body .modal-product .modal-contain-img img {
        max-width: 75%;
    }
}

@media (max-width: 360px) {
    .cart-modal .modal-dialog .modal-content .modal-body .modal-product .modal-contain-img img {
        max-width: 100%;
    }
}

.cart-modal .modal-dialog .modal-content .modal-body .product-total h5 {
    font-weight: 400;
}

.cart-modal .modal-dialog .modal-content .modal-body .product-total h5 span {
    font-weight: 500;
}

.cart-modal .modal-dialog .modal-content .modal-body .shop-cart-button {
    margin: -8px;
}

@media (max-width: 360px) {
    .cart-modal .modal-dialog .modal-content .modal-body .shop-cart-button {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.cart-modal .modal-dialog .modal-content .modal-body .shop-cart-button .conti-button {
    border: 1px solid var(--theme-color);
    background: #fff;
    color: var(--theme-color);
    margin: calc(3px + (8 - 3) * ((100vw - 320px) / (1920 - 320)));
    padding: calc(6px + (12 - 6) * ((100vw - 320px) / (1920 - 320))) calc(10px + (25 - 10) * ((100vw - 320px) / (1920 - 320)));
    font-size: calc(14px + (15 - 14) * ((100vw - 320px) / (1920 - 320)));
}

.cart-modal .modal-dialog .modal-content .modal-body .shop-cart-button .conti-button:hover {
    background-color: var(--theme-color);
    color: #fff;
}

.modal-size .modal-dialog .modal-content .modal-header {
    padding: 0;
}

.modal-size .modal-dialog .modal-content .modal-header button {
    width: 54px;
    height: 54px;
    top: -50px;
    right: -50px;
    line-height: 54px;
    position: absolute;
    text-decoration: none;
    text-align: center;
    color: #fff;
    background: 0 0;
    border: none;
    cursor: pointer;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
    opacity: 1;
}

.modal-size .modal-dialog .modal-content .modal-header button .fa-times {
    font-size: 22px;
}

@media (max-width: 480px) {
    .modal-size .modal-dialog .modal-content .modal-header button {
        display: none;
    }
}

.quick-view-modal .btn-close {
    width: 54px;
    height: 54px;
    top: -50px;
    right: -50px;
    line-height: 54px;
    position: absolute;
    text-decoration: none;
    text-align: center;
    color: #fff;
    background: 0 0;
    border: none;
    cursor: pointer;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
    opacity: 1;
}

@media (max-width: 575px) {
    .quick-view-modal .btn-close {
        right: -14px;
    }

    [dir="rtl"] .quick-view-modal .btn-close {
        right: unset;
        left: -14px;
    }
}

.quick-view-modal .btn-close:before {
    content: "\f00d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 22px;
}

.quick-view-modal .modal-body {
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.quick-view-modal .quick-view-image {
    position: relative;
}

.quick-view-modal .quick-view-image img {
    width: 100%;
}

@media (max-width: 991px) {
    .quick-view-modal .quick-view-image img {
        max-height: 400px;
        -o-object-fit: cover;
        object-fit: cover;
    }
}

.quick-view-modal .quick-view-image .quick-nav {
    position: absolute;
    bottom: 20px;
    left: 20px;
}

.quick-view-modal .quick-view-image .quick-nav .slick-slide > div img {
    margin: 0;
    border: 1px solid #ced4da;
    width: 40px;
    height: 40px;
    -o-object-fit: cover;
    object-fit: cover;
}

.quick-view-modal .quick-view-image .quick-nav .slick-slide.slick-current > div img {
    border: 1px solid var(--theme-color);
}

.quick-view-modal .product-right.veg-product-right h2 {
    font-size: 26px;
}

.quick-view-modal .product-right.veg-product-right .product-details {
    margin-top: 10px;
}

.quick-view-modal .product-right.veg-product-right .product-btns a {
    font-size: 14px;
}

.quick-view-modal .product-right.veg-product-right .price {
    display: block;
}

.quick-view-modal .product-right.veg-product-right .price li {
    width: 100%;
}

.quick-view-modal .product-right.veg-product-right .price li .custome-form-check {
    width: 100%;
    padding: 15px 8px 15px 30px;
    border-radius: 4px;
    border: 1px solid #d0d0d0;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    -webkit-box-shadow: 0 4px 10px rgba(33, 37, 41, 0.1);
    box-shadow: 0 4px 10px rgba(33, 37, 41, 0.1);
    background: #f7f7f7;
}

.quick-view-modal .product-right.veg-product-right .veg-details {
    margin-top: 30px;
    padding: 20px 0;
    border-top: 1px dashed #ced4da;
}

.quick-view-modal .product-right.veg-product-right .veg-details p {
    line-height: 1.7;
}

@media (max-width: 991px) {
    .quick-view-modal .product-right.veg-product-right .veg-details {
        margin-top: 20px;
    }
}

@media (max-width: 575px) {
    .quick-view-modal .product-right.veg-product-right .veg-details {
        margin-top: 15px;
        padding: 15px 0;
    }
}

.quick-view-modal .product-right h2 {
    font-weight: 500;
}

.quick-view-modal .product-right h6 {
    font-weight: 400;
}

.quick-view-modal .product-right h4 {
    margin-bottom: 10px;
    text-transform: capitalize;
}

.quick-view-modal .product-right .price {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.quick-view-modal .product-right .price h3 {
    padding-right: 20px;
}

[dir="rtl"] .quick-view-modal .product-right .price h3 {
    padding-right: unset;
    padding-left: 20px;
}

.quick-view-modal .product-right .color-types {
    margin-top: 20px;
    padding: 20px 0;
    border-top: 1px dashed #ced4da;
}

.quick-view-modal .product-right .color-types.veg-details p {
    line-height: 1.7;
}

@media (max-width: 991px) {
    .quick-view-modal .product-right .color-types {
        margin-top: 20px;
    }
}

@media (max-width: 575px) {
    .quick-view-modal .product-right .color-types {
        margin-top: 15px;
        padding: 15px 0;
    }
}

.quick-view-modal .product-right .size-detail {
    padding: 20px 0;
    border-top: 1px dashed #ced4da;
}

@media (max-width: 575px) {
    .quick-view-modal .product-right .size-detail {
        padding: 15px 0;
    }
}

.quick-view-modal .product-right .size-detail ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.quick-view-modal .product-right .size-detail ul li {
    width: 30px;
    height: 30px;
    text-align: center;
    border: 1px solid #ced4da;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.quick-view-modal .product-right .size-detail ul li.selected {
    -webkit-box-shadow: 0 2px 7px rgba(0, 0, 0, 0.2);
    box-shadow: 0 2px 7px rgba(0, 0, 0, 0.2);
}

.quick-view-modal .product-right .size-detail ul li + li {
    margin-left: 10px;
}

.quick-view-modal .product-right .product-details {
    padding: 20px 0;
    border-top: 1px dashed #ced4da;
    border-bottom: 1px dashed #ced4da;
}

@media (max-width: 575px) {
    .quick-view-modal .product-right .product-details {
        padding: 15px 0;
    }
}

.quick-view-modal .product-right .product-details ul li {
    display: block;
}

.quick-view-modal .product-right .product-details ul li + li {
    margin-top: 5px;
}

.quick-view-modal .product-right .product-details ul li span {
    min-width: 150px;
}

.quick-view-modal .product-right .product-btns {
    margin-top: 20px;
}

@media (max-width: 575px) {
    .quick-view-modal .product-right .product-btns {
        margin-top: 15px;
    }
}

.reset-email-modal .modal-content {
    border: none;
}

.reset-email-modal .modal-content .modal-header {
    border-bottom: none;
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    padding-bottom: 0;
}

.reset-email-modal .modal-content .modal-header .btn-close {
    width: 54px;
    height: 54px;
    top: -50px;
    right: -50px;
    line-height: 54px;
    position: absolute;
    text-decoration: none;
    text-align: center;
    color: #fff;
    background: 0 0;
    border: none;
    cursor: pointer;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
    opacity: 1;
}

@media (max-width: 575px) {
    .reset-email-modal .modal-content .modal-header .btn-close {
        right: -14px;
    }

    [dir="rtl"] .reset-email-modal .modal-content .modal-header .btn-close {
        right: unset;
        left: -14px;
    }
}

.reset-email-modal .modal-content .modal-header .btn-close:before {
    content: "\f00d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 22px;
}

.reset-email-modal .modal-content .modal-body {
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.reset-email-modal .modal-content .modal-footer {
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    border-top: none;
}

.reset-email-modal .modal-content .modal-footer button {
    margin: 0;
}

.reset-email-modal .modal-content .modal-footer button.modal-close-button {
    color: #fff;
    margin-right: 10px;
}

[dir="rtl"] .reset-email-modal .modal-content .modal-footer button.modal-close-button {
    margin-right: 0;
    margin-left: 10px;
}

.delete-account-modal .modal-content {
    border: none;
}

.delete-account-modal .modal-content .modal-header {
    padding: 0;
    border: none;
}

.delete-account-modal .modal-content .modal-header .btn-close {
    width: 54px;
    height: 54px;
    top: -50px;
    right: -50px;
    line-height: 54px;
    position: absolute;
    text-decoration: none;
    text-align: center;
    color: #fff;
    background: 0 0;
    border: none;
    cursor: pointer;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
    opacity: 1;
}

@media (max-width: 575px) {
    .delete-account-modal .modal-content .modal-header .btn-close {
        right: -14px;
    }

    [dir="rtl"] .delete-account-modal .modal-content .modal-header .btn-close {
        right: unset;
        left: -14px;
    }
}

.delete-account-modal .modal-content .modal-header .btn-close:before {
    content: "\f00d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 22px;
}

.delete-account-modal .modal-content .modal-body {
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.delete-account-modal .modal-content .modal-body h4 {
    font-weight: 500;
}

.delete-account-modal .modal-content .modal-footer {
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    border-top: none;
    padding-top: 0;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.delete-account-modal .modal-content .modal-footer button {
    margin: 0;
}

.delete-account-modal .modal-content .modal-footer button.modal-close-button {
    color: #fff;
    margin-right: 10px;
}

[dir="rtl"] .delete-account-modal .modal-content .modal-footer button.modal-close-button {
    margin-right: 0;
    margin-left: 10px;
}

.payment-modal .modal-content {
    border: none;
}

.payment-modal .modal-content .modal-header {
    padding: 0;
    border: none;
}

.payment-modal .modal-content .modal-header .btn-close {
    width: 54px;
    height: 54px;
    top: -50px;
    right: -50px;
    line-height: 54px;
    position: absolute;
    text-decoration: none;
    text-align: center;
    color: #fff;
    background: 0 0;
    border: none;
    cursor: pointer;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
    opacity: 1;
}

@media (max-width: 575px) {
    .payment-modal .modal-content .modal-header .btn-close {
        right: -14px;
    }

    [dir="rtl"] .payment-modal .modal-content .modal-header .btn-close {
        right: unset;
        left: -14px;
    }
}

.payment-modal .modal-content .modal-header .btn-close:before {
    content: "\f00d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 22px;
}

.payment-modal .modal-content .modal-body {
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.payment-modal .modal-content .modal-body h4 {
    font-weight: 500;
}

.payment-modal .modal-content .modal-footer {
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    border-top: none;
    padding-top: 0;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.payment-modal .modal-content .modal-footer button {
    margin: 0;
}

.payment-modal .modal-content .modal-footer button.modal-close-button {
    color: #fff;
    margin-right: 10px;
}

[dir="rtl"] .payment-modal .modal-content .modal-footer button.modal-close-button {
    margin-right: 0;
    margin-left: 10px;
}

.add-address-modal .modal-content {
    border: none;
}

.add-address-modal .modal-content .modal-header {
    padding: 0;
    border: none;
}

.add-address-modal .modal-content .modal-header .btn-close {
    width: 54px;
    height: 54px;
    top: -50px;
    right: -50px;
    line-height: 54px;
    position: absolute;
    text-decoration: none;
    text-align: center;
    color: #fff;
    background: 0 0;
    border: none;
    cursor: pointer;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
    opacity: 1;
}

@media (max-width: 575px) {
    .add-address-modal .modal-content .modal-header .btn-close {
        right: -14px;
    }

    [dir="rtl"] .add-address-modal .modal-content .modal-header .btn-close {
        right: unset;
        left: -14px;
    }
}

.add-address-modal .modal-content .modal-header .btn-close:before {
    content: "\f00d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 22px;
}

.add-address-modal .modal-content .modal-body {
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.add-address-modal .modal-content .modal-body h4 {
    font-weight: 500;
}

.add-address-modal .modal-content .modal-footer {
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    border-top: none;
    padding-top: 0;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.add-address-modal .modal-content .modal-footer button {
    margin: 0;
}

.add-address-modal .modal-content .modal-footer button.modal-close-button {
    color: #fff;
    margin-right: 10px;
}

[dir="rtl"] .add-address-modal .modal-content .modal-footer button.modal-close-button {
    margin-right: 0;
    margin-left: 10px;
}

/**=====================
     ratio css start
==========================**/
.ratio_30 .bg-size:before {
    padding-top: 30%;
    content: "";
    display: block;
}

.ratio_35 .bg-size:before {
    padding-top: 35%;
    content: "";
    display: block;
}

.ratio_40 .bg-size:before {
    padding-top: 40%;
    content: "";
    display: block;
}

.ratio_45 .bg-size:before {
    padding-top: 45%;
    content: "";
    display: block;
}

.ratio2_1 .bg-size:before {
    padding-top: 50%;
    content: "";
    display: block;
}

.ratio_55 .bg-size:before {
    padding-top: 55%;
    content: "";
    display: block;
}

.ratio_59 .bg-size:before {
    padding-top: 59%;
    content: "";
    display: block;
}

.ratio2_3 .bg-size:before {
    padding-top: 60%;
    content: "";
    display: block;
}

.ratio3_2 .bg-size:before {
    padding-top: 66.66%;
    content: "";
    display: block;
}

.ratio_90 .bg-size:before {
    padding-top: 93%;
    content: "";
    display: block;
}

.ratio_landscape .bg-size:before {
    padding-top: 75%;
    content: "";
    display: block;
}

.ratio_veg .bg-size:before {
    padding-top: 113%;
    content: "";
    display: block;
}

.ratio_square .bg-size:before {
    padding-top: 100%;
    content: "";
    display: block;
}

.ratio_asos .bg-size:before {
    padding-top: 127.7777778%;
    content: "";
    display: block;
}

.ratio_small .bg-size:before {
    padding-top: 118%;
    content: "";
    display: block;
}

.ratio_medium .bg-size:before {
    padding-top: 138%;
    content: "";
    display: block;
}

.ratio_portrait .bg-size:before {
    padding-top: 150%;
    content: "";
    display: block;
}

.ratio2_2 .bg-size:before {
    padding-top: 154.777778%;
    content: "";
    display: block;
}

.ratio_2 .bg-size:before {
    padding-top: 163%;
    content: "";
    display: block;
}

.ratio1_2 .bg-size:before {
    padding-top: 200%;
    content: "";
    display: block;
}

/**=====================
     form css start
  ==========================**/
.form-control {
    font-size: 14px;
    padding: calc(8px + (14 - 8) * ((100vw - 320px) / (1920 - 320))) calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.form-control.subscribe-input {
    border: none;
    border-radius: 0;
}

[dir="rtl"] .form-control {
    text-align: right;
}

.form-control:focus {
    background-color: #eff2f7;
    border-color: #ced4da;
    -webkit-box-shadow: none;
    box-shadow: none;
    color: #212529;
}

.form-select {
    font-size: 14px;
}

.form-select:focus {
    background-color: #c7c7c5;
    border-color: #ced4da;
    -webkit-box-shadow: none;
    box-shadow: none;
    color: #212529;
}

.input-group .btn {
    z-index: 1;
}

.checkbox_animated {
    cursor: pointer;
    position: relative;
    margin-right: 16px;
}

[dir="rtl"] .checkbox_animated {
    margin-right: 10px;
    margin-left: 16px;
}

.checkbox_animated:before {
    -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
    transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
    transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
    transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75), -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
    -webkit-transform: rotate(-45deg) scale(0, 0);
    transform: rotate(-45deg) scale(0, 0);
    content: "";
    position: absolute;
    left: 4px;
    top: 4px;
    z-index: 1;
    width: 12px;
    height: 6px;
    border: 2px solid var(--theme-color);
    border-top-style: none;
    border-right-style: none;
}

.checkbox_animated:after {
    content: "";
    position: absolute;
    top: -2px;
    left: 0;
    width: 21px;
    height: 21px;
    background: #fff;
    border: 2px solid #ddd;
    cursor: pointer;
}

.checkbox_animated:checked:before {
    -webkit-transform: rotate(-45deg) scale(1, 1);
    transform: rotate(-45deg) scale(1, 1);
}

/**=====================
     slider css start
==========================**/
.slick-initialized .slick-arrow {
    z-index: 1;
    -webkit-transition: 0.5s;
    transition: 0.5s;
}

.slick-initialized .slick-arrow:before {
    -webkit-transition: 0.5s;
    transition: 0.5s;
}

.slick-initialized .slick-arrow:hover {
    -webkit-transition: 0.5s;
    transition: 0.5s;
}

.slick-initialized .slick-arrow:hover:before {
    -webkit-transition: 0.5s;
    transition: 0.5s;
}

.spacing-slider.slick-slider {
    margin: 0 -12px;
}

.spacing-slider.slick-slider .slick-list {
    margin: 0 -12px;
}

@media (max-width: 575px) {
    .spacing-slider.slick-slider .slick-list {
        margin: 0 -6px;
    }
}

.spacing-slider.slick-slider .slick-list .slick-slide > div {
    margin: 0 12px;
}

@media (max-width: 575px) {
    .spacing-slider.slick-slider .slick-list .slick-slide > div {
        margin: 0 6px;
    }
}

.spacing-slider.slick-slider.slick-dotted {
    margin-bottom: 0;
}

.slick-slider .slick-list {
    margin: 0 -12px;
}

@media (max-width: 575px) {
    .slick-slider .slick-list {
        margin: 0 -6px;
    }
}

.slick-slider .slick-list .slick-slide > div {
    margin: 0 12px;
}

@media (max-width: 575px) {
    .slick-slider .slick-list .slick-slide > div {
        margin: 0 6px;
    }
}

.slick-slider.slick-dotted {
    margin-bottom: 0;
}

.slide-6 .slick-list {
    margin: 0;
}

.classic-arrow .custom-arrow {
    position: absolute;
    bottom: 50px;
    z-index: 1;
    -webkit-transition: 0.5s;
    transition: 0.5s;
    cursor: pointer;
}

@media (max-width: 991px) {
    .classic-arrow .custom-arrow {
        bottom: 90px;
    }
}

@media (max-width: 575px) {
    .classic-arrow .custom-arrow {
        bottom: 10px;
    }
}

.classic-arrow .custom-arrow:hover {
    color: var(--theme-color);
    -webkit-transition: 0.5s;
    transition: 0.5s;
}

.classic-arrow .custom-arrow i {
    font-size: 12px;
    vertical-align: 1px;
}

@media (max-width: 575px) {
    .classic-arrow .custom-arrow i {
        margin: 0 !important;
        padding: 8px;
        background-color: #fff;
    }

    .classic-arrow .custom-arrow i:hover {
        background-color: var(--theme-color);
        color: #fff;
    }
}

.classic-arrow .custom-arrow.prev {
    right: 20%;
}

[dir="rtl"] .classic-arrow .custom-arrow.prev i {
    margin-right: 16px !important;
    margin-left: 0 !important;
}

[dir="rtl"] .classic-arrow .custom-arrow.prev {
    right: unset;
    left: 7%;
}

@media (max-width: 991px) {
    .classic-arrow .custom-arrow.prev {
        right: unset;
        left: 5%;
    }

    [dir="rtl"] .classic-arrow .custom-arrow.prev {
        left: unset;
        right: 5%;
    }
}

@media (max-width: 575px) {
    .classic-arrow .custom-arrow.prev {
        right: 53% !important;
        left: unset !important;
        bottom: 20px;
    }

    [dir="rtl"] .classic-arrow .custom-arrow.prev {
        left: 10%;
        right: unset;
    }
}

@media (max-width: 360px) {
    .classic-arrow .custom-arrow.prev {
        right: 12%;
        left: unset;
    }

    [dir="rtl"] .classic-arrow .custom-arrow.prev {
        left: 12%;
        right: unset;
    }
}

.classic-arrow .custom-arrow.next {
    right: 13%;
}

[dir="rtl"] .classic-arrow .custom-arrow.next i {
    margin-left: 16px !important;
    margin-right: 0 !important;
}

[dir="rtl"] .classic-arrow .custom-arrow.next {
    right: unset;
    left: 13%;
}

@media (max-width: 1199px) {
    .classic-arrow .custom-arrow.next {
        right: 11%;
    }

    [dir="rtl"] .classic-arrow .custom-arrow.next {
        right: unset;
        left: 15%;
    }
}

@media (max-width: 991px) {
    .classic-arrow .custom-arrow.next {
        right: unset;
        left: 16%;
    }

    [dir="rtl"] .classic-arrow .custom-arrow.next {
        left: unset;
        right: 16%;
    }
}

@media (max-width: 767px) {
    .classic-arrow .custom-arrow.next {
        left: 20%;
    }

    [dir="rtl"] .classic-arrow .custom-arrow.next {
        left: unset;
        right: 20%;
    }
}

@media (max-width: 575px) {
    .classic-arrow .custom-arrow.next {
        left: unset;
        right: 3%;
    }

    [dir="rtl"] .classic-arrow .custom-arrow.next {
        left: 3%;
        right: unset;
    }
}

.classic-arrow .custom-arrow.next::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    border-left: 2px solid rgba(0, 0, 0, 0.1);
    left: -28px;
    top: 0;
}

[dir="rtl"] .classic-arrow .custom-arrow.next::before {
    right: 18px;
    left: unset;
}

@media (max-width: 1660px) {
    .classic-arrow .custom-arrow.next::before {
        display: none;
    }
}

.classic-arrow .custom-arrow span {
    font-weight: 600;
    text-transform: uppercase;
    font-size: 16px;
}

@media (max-width: 767px) {
    .classic-arrow .custom-arrow span {
        font-size: 14px;
    }
}

@media (max-width: 575px) {
    .classic-arrow .custom-arrow span {
        display: none;
    }
}

.classic-arrow-1 .custom-arrow {
    position: absolute;
    bottom: 50px;
    z-index: 1;
    -webkit-transition: 0.5s;
    transition: 0.5s;
    cursor: pointer;
}

.classic-arrow-1 .custom-arrow:hover {
    color: var(--theme-color);
    -webkit-transition: 0.5s;
    transition: 0.5s;
}

.classic-arrow-1 .custom-arrow i {
    font-size: 12px;
    vertical-align: 1px;
}

@media (max-width: 575px) {
    .classic-arrow-1 .custom-arrow i {
        margin: 0 !important;
        padding: 8px;
        background-color: #fff;
    }

    .classic-arrow-1 .custom-arrow i:hover {
        background-color: var(--theme-color);
        color: #fff;
    }
}

.classic-arrow-1 .custom-arrow.prev {
    right: 20%;
}

[dir="rtl"] .classic-arrow-1 .custom-arrow.prev {
    right: unset !important;
    left: 6% !important;
}

@media (max-width: 575px) {
    [dir="rtl"] .classic-arrow-1 .custom-arrow.prev {
        left: unset !important;
        right: 51% !important;
    }
}

@media (max-width: 480px) {
    [dir="rtl"] .classic-arrow-1 .custom-arrow.prev {
        left: unset !important;
        right: 52% !important;
    }
}

.classic-arrow-1 .custom-arrow.next {
    right: 13%;
}

[dir="rtl"] .classic-arrow-1 .custom-arrow.next {
    right: unset !important;
    left: 12% !important;
}

.classic-arrow-1 .custom-arrow.next::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    border-left: 2px solid rgba(0, 0, 0, 0.1);
    left: -28px;
    top: 0;
}

[dir="rtl"] .classic-arrow-1 .custom-arrow.next::before {
    right: -28px;
    left: unset;
    width: 8%;
}

@media (max-width: 1660px) {
    .classic-arrow-1 .custom-arrow.next::before {
        display: none;
    }
}

@media (max-width: 991px) {
    [dir="rtl"] .classic-arrow-1 .custom-arrow.next {
        left: 16% !important;
    }
}

@media (max-width: 575px) {
    [dir="rtl"] .classic-arrow-1 .custom-arrow.next {
        left: unset !important;
        right: 13% !important;
    }
}

@media (max-width: 480px) {
    [dir="rtl"] .classic-arrow-1 .custom-arrow.next {
        left: unset !important;
        right: 44% !important;
    }
}

.classic-arrow-1 .custom-arrow span {
    font-weight: 600;
    text-transform: uppercase;
    font-size: 16px;
}

@media (max-width: 767px) {
    .classic-arrow-1 .custom-arrow span {
        font-size: 14px;
    }
}

@media (max-width: 575px) {
    .classic-arrow-1 .custom-arrow span {
        display: none;
    }
}

.light-arrow .slick-arrow, .white-arrow .slick-arrow {
    border-radius: 100%;
    width: 40px;
    height: 40px;
}

@media (max-width: 991px) {
    .light-arrow .slick-arrow, .white-arrow .slick-arrow {
        width: 30px;
        height: 30px;
    }
}

.light-arrow .slick-arrow:before, .white-arrow .slick-arrow:before {
    font-size: 12px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.light-arrow .slick-prev, .white-arrow .slick-prev {
    z-index: 1;
}

.light-arrow .slick-prev:before, .white-arrow .slick-prev:before {
    content: "\f053";
}

.light-arrow .slick-next:before, .white-arrow .slick-next:before {
    content: "\f054";
}

.light-arrow .slick-arrow {
    background-color: #f0f3f8;
}

.light-arrow .slick-arrow:before {
    color: #232323;
}

.light-arrow .slick-arrow:hover {
    background-color: var(--theme-color);
}

.light-arrow .slick-arrow:hover:before {
    color: #fff;
}

.bottom-space {
    margin-bottom: -4px;
}

.white-arrow .slick-arrow {
    background-color: rgba(255, 255, 255, 0.2);
    width: 30px;
    height: 30px;
}

.white-arrow .slick-arrow:before {
    color: #fff;
}

.white-arrow .slick-arrow:hover, .white-arrow .slick-arrow:active, .white-arrow .slick-arrow:focus {
    background-color: #fff;
}

.white-arrow .slick-arrow:hover:before, .white-arrow .slick-arrow:active:before, .white-arrow .slick-arrow:focus:before {
    color: var(--theme-color);
}

.category-slider .slick-prev {
    left: -120px;
}

.category-slider .slick-next {
    right: unset;
    left: -80px;
}

.brand-image img {
    margin: 0 auto;
}

.dot-dark .slick-dots {
    bottom: unset;
    width: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 0;
    left: unset;
}

[dir="rtl"] .dot-dark .slick-dots {
    left: 0;
    right: unset;
}

.dot-dark .slick-dots li {
    width: auto;
    height: auto;
    display: block;
    margin: 5px;
}

.dot-dark .slick-dots li button {
    width: 10px;
    height: 10px;
    background: #232323;
    font-size: 10px;
    border-radius: 100%;
}

.dot-dark .slick-dots li button:before {
    display: none;
}

.dot-dark .slick-dots li.slick-active button {
    background-color: var(--theme-color);
}

.image-show .slick-list {
    overflow: visible;
    height: auto !important;
}

.image-show .slick-slide {
    float: none;
}

[dir="rtl"] .poster-section-6 .image-show .slick-slide, [dir="rtl"] .poster-section .image-show .slick-slide {
    float: none;
}

.slick-lg-space .slick-list {
    margin: -5px -18px;
}

@media (max-width: 767px) {
    .slick-lg-space .slick-list {
        margin: -5px -10px;
    }
}

.slick-lg-space .slick-list .slick-slide > div {
    margin: 5px 18px;
}

@media (max-width: 767px) {
    .slick-lg-space .slick-list .slick-slide > div {
        margin: 5px 10px;
    }
}

.black-slide .slick-list .slick-track .slick-slide > div {
    margin: 0 5px;
}

.black-slide .slick-list .slick-track .slick-slide.slick-active .play-icon .fa-play {
    -webkit-filter: grayscale(100%) blur(1px);
    filter: grayscale(100%) blur(1px);
    opacity: 0.5;
}

.black-slide .slick-list .slick-track .slick-slide.slick-active .play-icon:hover .fa-play {
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
    opacity: 1;
}

.black-slide .slick-list .slick-track .slick-slide.slick-active img {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.black-slide .slick-list .slick-track .slick-slide.slick-active:hover img {
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
    opacity: 1;
}

.black-slide .slick-list .slick-track .slick-slide img {
    -webkit-filter: grayscale(20%) blur(1px);
    filter: grayscale(20%) blur(1px);
    opacity: 0.8;
}

.black-slide .slick-list .slick-track .slick-slide.slick-center img {
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
    opacity: 1;
}

.black-slide .slick-list .slick-track .slick-slide.slick-center .play-icon .fa-play {
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
    opacity: 1;
}

/**=====================
    Lazy Load css Start
==========================**/
.blur-up {
    -webkit-filter: blur(5px);
    filter: blur(5px);
    transition: filter 400ms, -webkit-filter 400ms;
}

.blur-up.lazyloaded {
    -webkit-filter: blur(0);
    filter: blur(0);
}

/**=====================
    Touchspin  CSS Start
==========================**/
.bootstrap-touchspin input.touchspin {
    padding: 0 12px;
}

.bootstrap-touchspin .input-group .btn {
    padding: 0.5rem 1.75rem;
}

.bootstrap-touchspin .input-group {
    font-family: Rubik, sans-serif;
}

.bootstrap-touchspin .input-group .btn {
    border-radius: 0 !important;
}

.touchspin-vertical-tab {
    max-width: 60px;
    width: unset;
}

.touchspin-vertical-tab .touchspin-vertical {
    padding: 6px 12px;
}

.touchspin-vertical-tab .input-group .input-group-btn-vertical {
    position: relative;
    display: grid;
}

.touchspin-vertical-tab .input-group .input-group-btn-vertical .bootstrap-touchspin-down {
    margin-top: -2px;
}

.touchspin-vertical-tab .input-group .input-group-btn-vertical i {
    position: absolute;
    top: 4px;
    left: 7px;
    font-size: 10px;
    font-weight: 900;
}

.touchspin-vertical-tab .input-group .input-group-btn-vertical > .btn {
    display: block;
    float: none;
    width: 100%;
    max-width: 100%;
    padding: 9px;
    margin-left: -1px;
    position: relative;
    background: #fff;
    border-color: #ced4da;
}

/**=====================
     Breadcrumb css start
==========================**/
.breadcrumb-section {
    background-color: #eff2f7;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-align: center;
    position: relative;
    z-index: 0;
}

.breadcrumb-section h3 {
    font-size: calc(20px + (26 - 20) * ((100vw - 320px) / (1920 - 320)));
}

.breadcrumb-section-1 {
    background-color: #e9e9e9;
}

.breadcrumb-section .breadcrumb-item.active {
    color: #7e7e7e;
}

.breadcrumb-section .breadcrumb {
    margin-bottom: 0;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 10px;
}

.breadcrumb-section .circles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: -1;
}

.breadcrumb-section .circles li {
    position: absolute;
    display: block;
    list-style: none;
    width: 20px;
    height: 20px;
    background-color: var(--theme-color);
    -webkit-animation: animate 25s linear infinite;
    animation: animate 25s linear infinite;
    bottom: -150px;
    opacity: 0.2 !important;
}

.breadcrumb-section .circles li:nth-child(1) {
    left: 25%;
    width: 80px;
    height: 80px;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
}

.breadcrumb-section .circles li:nth-child(2) {
    left: 10%;
    width: 20px;
    height: 20px;
    -webkit-animation-delay: 2s;
    animation-delay: 2s;
    -webkit-animation-duration: 12s;
    animation-duration: 12s;
}

.breadcrumb-section .circles li:nth-child(3) {
    left: 70%;
    width: 20px;
    height: 20px;
    -webkit-animation-delay: 4s;
    animation-delay: 4s;
}

.breadcrumb-section .circles li:nth-child(4) {
    left: 40%;
    width: 60px;
    height: 60px;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-duration: 18s;
    animation-duration: 18s;
}

.breadcrumb-section .circles li:nth-child(5) {
    left: 65%;
    width: 20px;
    height: 20px;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
}

.breadcrumb-section .circles li:nth-child(6) {
    left: 75%;
    width: 90px;
    height: 90px;
    -webkit-animation-delay: 3s;
    animation-delay: 3s;
}

.breadcrumb-section .circles li:nth-child(7) {
    left: 19%;
    width: 110px;
    height: 110px;
    -webkit-animation-delay: 7s;
    animation-delay: 7s;
}

.breadcrumb-section .circles li:nth-child(8) {
    left: 50%;
    width: 25px;
    height: 25px;
    -webkit-animation-delay: 15s;
    animation-delay: 15s;
    -webkit-animation-duration: 45s;
    animation-duration: 45s;
}

.breadcrumb-section .circles li:nth-child(9) {
    left: 20%;
    width: 15px;
    height: 15px;
    -webkit-animation-delay: 2s;
    animation-delay: 2s;
    -webkit-animation-duration: 35s;
    animation-duration: 35s;
}

.breadcrumb-section .circles li:nth-child(10) {
    left: 85%;
    width: 110px;
    height: 110px;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-duration: 11s;
    animation-duration: 11s;
}

@-webkit-keyframes animate {
    0% {
        -webkit-transform: translateY(0) rotate(0deg);
        transform: translateY(0) rotate(0deg);
        opacity: 1;
        border-radius: 0;
    }

    100% {
        -webkit-transform: translateY(-1000px) rotate(720deg);
        transform: translateY(-1000px) rotate(720deg);
        opacity: 0;
        border-radius: 50%;
    }
}

@keyframes animate {
    0% {
        -webkit-transform: translateY(0) rotate(0deg);
        transform: translateY(0) rotate(0deg);
        opacity: 1;
        border-radius: 0;
    }

    100% {
        -webkit-transform: translateY(-1000px) rotate(720deg);
        transform: translateY(-1000px) rotate(720deg);
        opacity: 0;
        border-radius: 50%;
    }
}

/**=====================
     header css start
==========================**/
.container-fluid-lg {
    padding: 0 112px;
}

@media (max-width: 1460px) {
    .container-fluid-lg {
        padding: 0 60px;
    }
}

@media (max-width: 1366px) {
    .container-fluid-lg {
        padding: 0 30px;
    }
}

@media (max-width: 1199px) {
    .container-fluid-lg {
        padding: 0 12px;
    }
}

header .search-header {
    border-bottom: 1px solid #e5e5e5;
    background-color: #672c00 !important;
}

header.nav-down.nav-up .navbar-searchbar {
    top: 0;
}

header.nav-down.nav-up .main-menu {
    padding: 10px 0;
}

header.nav-down .navbar-searchbar {
    position: fixed;
    top: -100px;
    left: 0;
    width: 100%;
    margin-top: 0;
    background-color: #fff;
    -webkit-box-shadow: 0px 4px 10px rgba(23, 32, 90, 0.15);
    box-shadow: 0px 4px 10px rgba(23, 32, 90, 0.15);
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    z-index: 6;
}

header .search-suggestion {
    height: 0px;
    max-height: 0;
    background-color: #fff;
    position: absolute;
    width: 100%;
    border-radius: 5px;
    top: 68px;
    overflow: auto;
    -webkit-transition: max-height 1000ms cubic-bezier(0.27, 0.7, 0, 0.99);
    transition: max-height 1000ms cubic-bezier(0.27, 0.7, 0, 0.99);
    z-index: 1;
}

@media (max-width: 767px) {
    header .search-suggestion {
        top: 56px;
    }
}

header .search-suggestion > ul {
    margin: -10px;
}

header .search-suggestion > ul > li {
    padding: 10px;
}

header .search-suggestion .product-cart {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

header .search-suggestion .product-cart img {
    height: 100px;
}

header .search-suggestion .product-cart .media-body {
    padding-left: 15px;
}

header .search-suggestion .product-cart .media-body a {
    color: #232323;
}

header .search-suggestion .product-cart .media-body .rating li i {
    font-size: 12px;
    color: #c3c3c3;
}

header .main-menu {
    position: relative;
    padding: 20px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 767px) {
    header .main-menu {
        padding: 10px 0;
    }
}

header .onhover-div {
    right: 0;
}

[dir="rtl"] header .onhover-div {
    right: unset;
    left: 0;
}

@media (max-width: 575px) {
    header .wislist-dropdown {
        display: none;
    }
}

@media (max-width: 767px) {
    header .cart-dropdown:hover .onhover-div {
        opacity: 0;
        -webkit-transform: unset;
        transform: unset;
        visibility: hidden;
    }
}

header .cart-dropdown .onhover-div::before {
    border-bottom: 7px solid #f0f3f8;
}

@media (max-width: 767px) {
    header .cart-dropdown .onhover-div {
        position: fixed;
        top: 0 !important;
        height: 100vh;
        width: 290px;
        right: -290px;
        opacity: 1 !important;
        visibility: visible !important;
        -webkit-transition: 0.5s;
        transition: 0.5s;
        z-index: 4;
    }
}

@media (max-width: 767px) {
    header .cart-dropdown.show .onhover-div {
        right: 0;
        -webkit-transition: 0.5s;
        transition: 0.5s;
    }
}

header .cart-menu .cart-title {
    background-color: #f0f3f8;
    padding: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

header .cart-menu .cart-title h6 {
    position: relative;
}

header .cart-menu .cart-title h6 .label {
    position: absolute;
    top: -4px;
    right: -9px;
    padding: 2px 6px;
}

[dir="rtl"] header .cart-menu .cart-title span i {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

header .cart-menu .media {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
}

header .cart-menu .media .btn-close {
    position: absolute;
    top: 0;
    right: 0;
    font-size: 16px;
    background: none;
}

header .cart-menu .media img {
    width: 60px;
}

header .cart-menu .media .media-body {
    margin-left: 15px;
}

[dir="rtl"] header .cart-menu .media .media-body {
    margin-left: unset;
    margin-right: 15px;
}

header .cart-menu .media .media-body h6 {
    font-weight: 600;
}

header .cart-menu .media .media-body input {
    max-width: 60px;
    width: unset;
    height: auto;
    padding: 3px 8px;
    border-radius: 0;
}

header .cart-menu .media .media-body .qty-with-price {
    margin-top: 6px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

header .cart-menu ul {
    padding-top: 10px;
}

header .cart-menu ul li {
    padding: 10px 20px;
    display: block;
}

@media (max-width: 767px) {
    header .cart-menu ul li:last-child {
        padding-bottom: 0;
    }
}

@media (max-width: 767px) {
    header .cart-menu ul {
        height: calc(100vh - 180px);
        overflow: auto;
        border-bottom: 1px solid #ced4da;
    }
}

header .cart-btn {
    padding: 20px;
}

@media (max-width: 767px) {
    header .cart-btn {
        position: absolute;
        width: 100%;
        bottom: 0;
        left: 0;
        z-index: 1;
    }
}

header .cart-btn .cart-total {
    color: var(--theme-color);
    font-weight: 600;
    display: none;
}

@media (max-width: 767px) {
    header .cart-btn .cart-total {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        margin-bottom: 20px;
    }
}

header .cart-btn .btn {
    padding: 8px 12px;
    font-size: 14px;
    width: 100%;
}

header .wislist-empty {
    padding: 20px;
    text-align: center;
}

header .wislist-empty i {
    font-size: 40px;
    color: var(--theme-color);
    margin-bottom: 15px;
}

header .search-full {
    background-color: #fff;
    position: absolute;
    right: 0;
    z-index: 1;
    height: 0;
    width: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

header .search-full .input-group {
    border: 1px solid #f0f3f8;
}

header .search-full .input-group .input-group-text {
    background-color: transparent;
    border: none;
}

header .search-full .input-group .input-group-text.close-search {
    cursor: pointer;
}

header .search-full .input-group .input-group-text svg {
    height: 18px;
}

header .search-full .input-group input {
    border: none;
}

header .search-full.open {
    width: 100%;
    height: 100%;
    -webkit-animation: zoomIn 0.5s ease-in-out;
    animation: zoomIn 0.5s ease-in-out;
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

header .search-full.show .search-suggestion {
    padding: 10px;
    border: 1px solid #f0f3f8;
    height: -webkit-max-content;
    height: -moz-max-content;
    height: max-content;
    max-height: 500px;
    -webkit-transition: max-height 1000ms cubic-bezier(0.27, 0.7, 0, 0.99);
    transition: max-height 1000ms cubic-bezier(0.27, 0.7, 0, 0.99);
}

header .search-box1 {
    position: relative;
    width: 55%;
    right: 0;
    z-index: 1;
    height: 100%;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

header .search-box1 .form-control {
    border-radius: 0;
    background-color: #f3edd9;
}

header .search-box1 .twitter-typeahead {
    width: calc(100% - 50px);
}

header .search-box1 .tt-menu {
    display: block;
    width: 100%;
    background-color: #fff;
    border: unset !important;
    -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    max-height: 350px;
    overflow: auto;
    top: 55px !important;
    border-radius: 5px;
    padding: 8px 0;
}

header .search-box1 .tt-menu .tt-dataset-states {
    padding: 10px 20px;
}

header .search-box1 .tt-menu .tt-dataset-states .tt-selectable {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 10px;
}

header .search-box1 .tt-menu .tt-dataset-states .tt-selectable .image-section {
    width: 100%;
    max-width: 100px;
    margin-right: 20px;
}

header .search-box1 .tt-menu .tt-dataset-states .tt-selectable .image-section img {
    width: 100%;
}

header .search-box1 .tt-menu .tt-dataset-states .tt-selectable .description-section {
    width: calc(100% - 20px);
}

header .search-box1 .tt-menu .tt-dataset-states .tt-selectable .description-section h4 {
    margin-bottom: 5px;
}

@media (max-width: 1660px) {
    header .search-box1 {
        width: 48%;
    }
}

@media (max-width: 1366px) {
    header .search-box1 {
        width: 40%;
    }
}

@media (max-width: 1199px) {
    header .search-box1 {
        width: 30%;
    }
}

header .search-box1 .form-control:focus {
    border-color: #ced4da;
    background-color: #fff;
}

header .search-box1.open {
    width: 100%;
    height: 100%;
    -webkit-animation: zoomIn 0.5s ease-in-out;
    animation: zoomIn 0.5s ease-in-out;
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

header .search-box1.show .search-suggestion {
    top: 100%;
    padding: 10px;
    border: 1px solid #f0f3f8;
    height: -webkit-max-content;
    height: -moz-max-content;
    height: max-content;
    max-height: 500px;
    -webkit-transition: max-height 1000ms cubic-bezier(0.27, 0.7, 0, 0.99);
    transition: max-height 1000ms cubic-bezier(0.27, 0.7, 0, 0.99);
}

header .search-box1 .input-group-text {
    color: #fff;
    border-radius: 0;
}

header .search-box1 .input-group-text .feather {
    color: #fff;
}

header .profile-dropdown {
    min-width: 160px;
}

header .profile-dropdown ul {
    padding: 10px 0;
}

header .profile-dropdown ul li {
    display: block;
    padding: 5px 20px;
}

.brand-logo .svg-icon {
    width: 25px;
    height: 25px;
    margin-right: 5px;
    -webkit-animation-name: spinner;
    animation-name: spinner;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-duration: 3s;
    animation-duration: 3s;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
}

[dir="rtl"] .brand-logo .svg-icon {
    margin-right: 0;
    margin-left: 5px;
}

.brand-logo .svg-icon .fill-color {
    fill: var(--theme-color);
}

@-webkit-keyframes spinner {
    from {
        -webkit-transform: rotateY(0deg);
        transform: rotateY(0deg);
    }

    to {
        -webkit-transform: rotateY(-360deg);
        transform: rotateY(-360deg);
    }
}

@keyframes spinner {
    from {
        -webkit-transform: rotateY(0deg);
        transform: rotateY(0deg);
    }

    to {
        -webkit-transform: rotateY(-360deg);
        transform: rotateY(-360deg);
    }
}

.category-menu {
    position: relative;
}

.category-menu .category-dropdown {
    padding: 20px;
}

.category-menu .category-dropdown ul li {
    padding: 10px 0;
    display: block;
}

.category-menu .category-dropdown ul li a {
    color: #232323;
    text-transform: capitalize;
}

.category-menu .category-dropdown ul li a:hover, .category-menu .category-dropdown ul li a:focus, .category-menu .category-dropdown ul li a:active, .category-menu .category-dropdown ul li a.active {
    color: var(--theme-color);
}

.close-btn {
    padding: 20px;
    font-size: 18px;
    color: #232323;
    font-weight: 500;
    text-transform: uppercase;
    border-bottom: 1px solid #ced4da;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.close-btn i {
    font-size: 14px;
}

.mobile-menu {
    position: fixed;
    bottom: 0;
    padding: 10px;
    width: 100%;
    background-color: #fff;
    z-index: 3;
    -webkit-box-shadow: 0 2px 7px 3px rgba(168, 168, 168, 0.2);
    box-shadow: 0 2px 7px 3px rgba(168, 168, 168, 0.2);
}

[dir="rtl"] .mobile-menu {
    left: 0;
}

.mobile-menu ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

[dir="rtl"] .mobile-menu ul {
    padding: 0;
}

.mobile-menu ul li {
    width: 100%;
    text-align: center;
}

.mobile-menu ul li a {
    display: block;
    color: rgba(35, 35, 35, 0.4);
}

@media (max-width: 360px) {
    .mobile-menu ul li a {
        font-size: 13px;
    }
}

.mobile-menu ul li a.active, .mobile-menu ul li a:hover {
    color: var(--theme-color);
}

.mobile-menu ul li a svg {
    display: block;
    margin: 0 auto;
    stroke-width: 1.5px;
}

@media (max-width: 360px) {
    .mobile-menu ul li a svg {
        height: 20px;
    }
}

.mobile-menu ul li a span {
    margin-top: 5px;
}

@media (min-width: 1200px) {
    .category-menu {
        position: relative;
    }

    .category-menu .category-dropdown {
        top: 70px;
        opacity: 0;
        visibility: hidden;
        position: absolute;
        z-index: 8;
        background-color: #fff;
        -webkit-transition: all linear 0.3s;
        transition: all linear 0.3s;
        min-width: 250px;
        -webkit-box-shadow: 3.346px 3.716px 22.5px rgba(0, 0, 0, 0.07);
        box-shadow: 3.346px 3.716px 22.5px rgba(0, 0, 0, 0.07);
    }

    .category-menu .category-dropdown ul li.submenu > a {
        position: relative;
        display: block;
    }

    .category-menu .category-dropdown ul li.submenu > a::after {
        position: absolute;
        font-family: "Font Awesome 5 Free";
        content: "\f054";
        right: 0;
        font-weight: 600;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        font-size: 11px;
    }

    [dir="rtl"] .category-menu .category-dropdown ul li.submenu > a::after {
        right: unset;
        left: 0;
        -webkit-transform: translateY(-50%) rotate(180deg);
        transform: translateY(-50%) rotate(180deg);
    }

    .category-menu .category-dropdown ul li.submenu .category-mega-menu {
        position: absolute;
        padding: 20px;
        opacity: 0;
        visibility: hidden;
        margin-left: 15px;
        background-color: #fff;
        -webkit-transition: 0.5s;
        transition: 0.5s;
        left: 95%;
        -webkit-box-shadow: 3.346px 3.716px 22.5px rgba(0, 0, 0, 0.07);
        box-shadow: 3.346px 3.716px 22.5px rgba(0, 0, 0, 0.07);
        top: 0;
        height: 100%;
    }

    .category-menu .category-dropdown ul li.submenu .category-mega-menu .category-childmenu .title-category {
        margin-bottom: 15px;
    }

    .category-menu .category-dropdown ul li.submenu .category-mega-menu .category-childmenu ul li {
        padding: 5px 0;
    }

    .category-menu .category-dropdown ul li.submenu:hover .category-mega-menu {
        left: 100%;
        opacity: 1;
        visibility: visible;
        -webkit-transition: 0.5s;
        transition: 0.5s;
    }

    [dir="rtl"] .category-menu .category-dropdown ul li.submenu:hover .category-mega-menu {
        right: unset;
        left: 100%;
    }

    .category-menu:hover .category-dropdown {
        top: 50px;
        opacity: 1;
        -webkit-transform: translateY(0px);
        transform: translateY(0px);
        visibility: visible;
    }
}

@media (min-width: 1200px) {
    .category-menu .category-dropdown ul li.submenu .category-mega-menu {
        min-width: 720px;
    }
}

@media (min-width: 1366px) {
    .category-menu .category-dropdown ul li.submenu .category-mega-menu {
        min-width: 850px;
    }
}

.category-menu .category-dropdown .title-category h6 {
    font-size: 14px;
}

@media (max-width: 1199px) {
    header .category-dropdown {
        position: fixed;
        background-color: #fff;
        width: 300px;
        border-radius: 0;
        border: 1px solid #ced4da;
        top: 0;
        height: 100vh;
        left: -300px;
        z-index: 99;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
        overflow: scroll;
        padding: 0 !important;
    }

    header .category-dropdown.open {
        left: 0;
    }

    .category-menu .category-dropdown ul li {
        position: relative;
        letter-spacing: 0.8px;
        line-height: 1;
    }

    .category-menu .category-dropdown ul li.submenu a .according-menu {
        right: 0;
    }

    [dir="rtl"] .category-menu .category-dropdown ul li.submenu a .according-menu {
        right: unset;
        left: 0;
    }

    .category-menu .category-dropdown ul li.submenu .category-mega-menu {
        padding: 0 15px;
    }

    .category-menu .category-dropdown ul li.submenu .category-mega-menu > li {
        padding-bottom: 0;
    }

    .category-menu .category-dropdown ul li.submenu .category-mega-menu .category-childmenu .title-category {
        position: relative;
        padding: 6px 0;
    }

    .category-menu .category-dropdown ul li.submenu .category-mega-menu .category-childmenu .title-category h6 {
        font-weight: 400;
    }

    .category-menu .category-dropdown ul li.submenu .category-mega-menu .category-childmenu .title-category .according-menu {
        top: 8px;
        right: 0;
    }

    .category-menu .category-dropdown ul li.submenu .category-mega-menu .category-childmenu ul {
        padding: 0 15px;
    }

    .category-menu .category-dropdown ul li.submenu .category-mega-menu .category-childmenu ul li {
        padding: 6px 0;
    }

    .category-menu .category-dropdown > ul {
        padding: 20px 15px;
    }

    .category-menu .category-dropdown > ul > li > a {
        font-weight: 500;
        font-size: 14px;
        text-transform: uppercase;
    }

    .category-menu .category-banner {
        display: none;
    }
}

header .top-header {
    padding: 16px 0;
    background-color: #f0f3f8;
}

header .top-header-black {
    background-color: #ff6f00;
    border-bottom: 1px solid #e5e5e5;
}

header .top-header-white {
    background-color: #fff;
}

@media (max-width: 575px) {
    header .top-header {
        padding: 10px 0;
    }
}

header .top-header .row {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
}

@media (max-width: 575px) {
    header .top-header .row {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }
}

header .top-header .border-list {
    padding-right: 6px;
}

[dir="rtl"] header .top-header .border-list {
    padding-right: unset;
    padding-left: 6px;
}

header .top-header .border-list > li {
    padding: 0 20px;
    margin-right: -5px;
}

[dir="rtl"] header .top-header .border-list > li {
    margin-right: unset;
    margin-left: -5px;
}

@media (max-width: 1366px) {
    header .top-header .border-list > li {
        padding: 0 10px;
    }
}

header .top-header .border-list > li a {
    color: #1e1e1e;
}

header .top-header .border-list > li a i {
    vertical-align: middle;
    font-size: 11px;
    padding-left: 5px;
}

[dir="rtl"] header .top-header .border-list > li a i {
    padding-left: unset;
    padding-right: 5px;
}

@media (max-width: 575px) {
    header .top-header .border-list > li a i {
        font-size: 9px;
    }
}

header .top-header .border-list > li:first-child {
    padding-left: 0;
}

[dir="rtl"] header .top-header .border-list > li:first-child {
    padding-left: 20px;
    padding-right: 0;
}

@media (max-width: 575px) {
    header .top-header .border-list > li:first-child {
        display: none;
    }
}

header .top-header .border-list > li:last-child {
    padding-right: 0;
}

[dir="rtl"] header .top-header .border-list > li:last-child {
    padding-right: 10px;
    padding-left: 0;
}

header .top-header .border-list > li + li {
    border-left: 1px solid rgba(35, 35, 35, 0.15);
}

[dir="rtl"] header .top-header .border-list > li + li {
    border-left: unset;
    border-right: 1px solid rgba(35, 35, 35, 0.15);
}

@media (max-width: 575px) {
    header .top-header .border-list > li:nth-child(2) {
        border: none !important;
    }
}

@media (max-width: 575px) {
    header .top-header .dropdown {
        font-size: 13px;
    }
}

header .top-header .dropdown .dropdown-toggle::after {
    display: none;
}

header .top-header .dropdown.top-header-dropdown .dropdown-menu li .dropdown-item:focus {
    background-color: var(--theme-color);
    color: #fff;
}

header .main-menu {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

header .main-menu .menu-left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 767px) {
    header .main-menu .menu-right {
        padding-right: 8px;
    }

    [dir="rtl"] header .main-menu .menu-right {
        padding-right: unset;
        padding-left: 8px;
    }
}

header .main-menu .menu-right .search-box {
    padding: 10px 12px;
    color: #fff;
    cursor: pointer;
}

header .main-menu .menu-right .search-box.black-search-icon {
    color: #212529;
}

@media (max-width: 1366px) {
    header .main-menu .menu-right .search-box {
        padding: 6px 8px;
    }
}

@media (max-width: 575px) {
    header .main-menu .menu-right .search-box {
        padding: 4px 6px;
    }
}

@media (max-width: 575px) {
    header .main-menu .menu-right .search-box svg {
        width: 16px;
    }
}

header .main-menu .menu-right > ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

header .main-menu .menu-right > ul > li svg {
    width: 20px;
    color: #ffffff;
}

@media (max-width: 1366px) {
    header .main-menu .menu-right > ul > li svg {
        width: 18px;
    }
}

header .main-menu .menu-right > ul > li + li {
    margin-left: 20px;
}

[dir="rtl"] header .main-menu .menu-right > ul > li + li {
    margin-left: unset !important;
    margin-right: 20px;
}

@media (max-width: 575px) {
    header .main-menu .menu-right > ul > li + li {
        margin-left: 10px;
    }

    [dir="rtl"] header .main-menu .menu-right > ul > li + li {
        margin-right: 10px;
    }
}

header .main-menu .menu-right .cart-media {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
}

header .main-menu .menu-right .cart-media .cart-icon {
    position: relative;
}

header .main-menu .menu-right .cart-media .cart-icon .label {
    font-size: 10px;
    position: absolute;
    top: -6px;
    right: -8px;
    padding: 0;
    line-height: 1;
    width: 15px;
    height: 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

header .main-menu .menu-right .cart-media .cart-content {
    margin-left: 20px;
    color: #dfdfdf;
}

@media (max-width: 767px) {
    header .main-menu .menu-right .cart-media .cart-content {
        display: none;
    }
}

header .main-menu .menu-right .cart-media .cart-content h6 {
    line-height: 1;
}

header .main-menu .menu-right .cart-media .cart-content span {
    font-size: 12px;
}

[dir="rtl"] header .main-menu .menu-right .cart-media .cart-content {
    margin-left: unset;
    margin-right: 20px;
}

@media (max-width: 1199px) {
    header .main-menu nav {
        margin-left: auto;
        margin-right: 0;
    }

    [dir="rtl"] header .main-menu nav {
        margin-left: 0;
        margin-right: auto !important;
    }
}

@media (max-width: 575px) {
    header .main-menu nav {
        margin-right: 15px;
    }

    [dir="rtl"] header .main-menu nav {
        margin-left: 15px;
    }
}

header .category-menu {
    margin-left: 30px;
}

[dir="rtl"] header .category-menu {
    margin-left: unset !important;
    margin-right: 30px;
}

@media (max-width: 1366px) {
    header .category-menu {
        margin-left: 20px;
    }

    [dir="rtl"] header .category-menu {
        margin-right: 20px;
    }
}

@media (max-width: 575px) {
    header .category-menu {
        margin-left: 10px;
    }

    [dir="rtl"] header .category-menu {
        margin-right: 10px;
    }
}

header .category-menu .btn {
    padding: 9px 18px;
    font-weight: 500;
}

@media (max-width: 767px) {
    header .category-menu .btn {
        padding: 6px 12px;
    }
}

header .category-menu .btn i {
    font-size: 11px;
    vertical-align: middle;
    padding-left: 5px;
}

[dir="rtl"] header .category-menu .btn i {
    padding-left: unset;
    padding-right: 5px;
}

/**=====================
     nav css start
==========================**/
header .main-navbar {
    text-align: center;
}

header .main-navbar .nav-menu {
    display: inline-block;
    list-style: none;
    margin: 0;
    padding: 0;
    line-height: normal;
    direction: ltr;
    text-align: left;
    vertical-align: middle;
}

[dir="rtl"] header .main-navbar .nav-menu {
    text-align: right;
}

header .main-navbar .nav-menu > li {
    position: relative;
    float: left;
    display: block;
}

[dir="rtl"] header .main-navbar .nav-menu > li {
    float: right;
}

header .main-navbar .nav-menu > li + li + li {
    margin-left: 30px;
}

[dir="rtl"] header .main-navbar .nav-menu > li + li + li {
    margin-left: unset;
    margin-right: 30px;
}

@media (max-width: 1199px) {
    header .main-navbar .nav-menu > li + li + li {
        margin-left: 0;
    }

    [dir="rtl"] header .main-navbar .nav-menu > li + li + li {
        margin-left: unset;
        margin-right: 0;
    }
}

header .main-navbar .nav-menu > li > a {
    display: block;
    color: #232323;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    text-transform: uppercase;
    padding: 0;
    position: relative;
    border-radius: 15px;
    letter-spacing: 0.8px;
}

header .main-navbar .nav-menu > li.active > a {
    background-color: rgba(35, 35, 35, 0.1);
}

header .main-navbar .nav-menu > li .nav-submenu {
    position: absolute;
    left: 0;
    z-index: 1;
    -webkit-box-shadow: 0 1px 5px 0 rgba(90, 90, 90, 0.2);
    box-shadow: 0 1px 5px 0 rgba(90, 90, 90, 0.2);
    padding: 15px 0;
    background: #fff;
    width: 300px !important;
}

[dir="rtl"] header .main-navbar .nav-menu > li .nav-submenu {
    left: unset;
    right: 0;
}

header .main-navbar .nav-menu > li .nav-submenu li {
    border: 0;
    float: none;
    position: relative;
    display: block;
    margin: 5px 0;
}

header .main-navbar .nav-menu > li .nav-submenu li a {
    border: 0 !important;
    background: transparent;
    color: #212529;
    border-radius: 0 !important;
    font-size: 14px;
    text-transform: capitalize;
    padding: 3px 25px 3px 40px;
    display: block;
    letter-spacing: 0.07em;
    line-height: 1.9;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    position: relative;
}

[dir="rtl"] header .main-navbar .nav-menu > li .nav-submenu li a {
    padding: 3px 40px 3px 25px;
}

header .main-navbar .nav-menu > li .nav-submenu li a span {
    padding: 0px 10px;
    border-radius: 5px;
    font-size: 12px;
    color: var(--theme-color);
    margin-left: 10px;
    -webkit-box-shadow: 0 8px 15px -8px var(--badge-color);
    box-shadow: 0 8px 15px -8px var(--badge-color);
    margin-left: 8px;
    position: relative;
}

header .main-navbar .nav-menu > li .nav-submenu li a span::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: var(--theme-color);
    opacity: 0.07;
}

header .main-navbar .nav-menu > li .nav-submenu li a span.tren-budge {
    color: #212529;
    background: #eff2f7;
}

header .main-navbar .nav-menu > li .nav-submenu li a span.top-budge {
    color: #eff2f7;
    background-color: #7e7e7e;
}

header .main-navbar .nav-menu > li .nav-submenu li a .label {
    font-size: 12px;
    color: #ff0000;
    position: absolute;
    padding: 0 0 0 3px;
}

header .main-navbar .nav-menu > li .nav-submenu li a.menu-title-level1:after, header .main-navbar .nav-menu > li .nav-submenu li a.submenu-title:after {
    opacity: 1;
}

header .main-navbar .nav-menu > li .nav-submenu li a.arrow-cls:after {
    opacity: 0.8;
}

header .main-navbar .nav-menu > li .nav-submenu li a:hover {
    margin-left: 3px;
    color: var(--theme-color) !important;
}

header .main-navbar .nav-menu > li .nav-submenu li .nav-sub-childmenu {
    position: absolute;
    width: 200px;
    right: -200px;
    top: 0;
    background: #fff;
    border: none;
    padding: 15px 0 15px 0;
    -webkit-box-shadow: 0 0 1px 0 #ebebeb;
    box-shadow: 0 0 1px 0 #ebebeb;
}

header .main-navbar .nav-menu > li .mega-menu-container {
    position: absolute;
    left: 0;
    z-index: 4;
    -webkit-box-shadow: 0 1px 5px 0 rgba(90, 90, 90, 0.2);
    box-shadow: 0 1px 5px 0 rgba(90, 90, 90, 0.2);
    padding: 30px;
    background: #fff;
    width: 100%;
    border-radius: 4px;
}

header .main-navbar .nav-menu > li .mega-menu-container.poster-bg-image {
    background-image: url(../images/voxo.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    overflow: hidden;
}

@media (max-width: 1199px) {
    header .main-navbar .nav-menu > li .mega-menu-container.poster-bg-image {
        background-image: unset;
    }
}

header .main-navbar .nav-menu > li .mega-menu-container.poster-bg-image .floating-img {
    position: absolute;
    top: 0;
    right: 0;
    width: 30%;
    height: 60vh;
    animation: floating 110s linear infinite reverse;
    background-repeat: repeat-x !important;
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box {
    width: 16%;
}

@media (max-width: 1199px) {
    header .main-navbar .nav-menu > li .mega-menu-container .mega-box {
        width: 100%;
    }
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box a .label {
    font-size: 12px;
    color: #ff0000;
    position: absolute;
    padding: 0 0 0 3px;
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-title h5 {
    font-weight: 500;
    text-transform: capitalize;
    font-size: 14px;
    margin-bottom: 14px;
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content {
    -webkit-box-shadow: none;
    box-shadow: none;
    background-color: transparent;
    position: relative;
    display: block;
    padding: 0;
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li {
    border: none;
    float: none;
    position: relative;
    display: block;
    margin: 5px 0;
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a {
    border: 0 !important;
    background: transparent;
    color: #212529;
    border-radius: 0 !important;
    font-size: 14px;
    text-transform: capitalize;
    padding: 3px 0;
    display: block;
    letter-spacing: 0.07em;
    line-height: 1.9;
    position: relative;
}

@media (max-width: 1199px) {
    header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a {
        padding: 0;
        letter-spacing: 0.03em;
    }
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a span {
    padding: 0px 10px;
    border-radius: 5px;
    font-size: 12px;
    color: var(--theme-color);
    background: rgba(226, 36, 84, 0.07);
    -webkit-box-shadow: 0 8px 15px -8px var(--badge-color);
    box-shadow: 0 8px 15px -8px var(--badge-color);
    margin-left: 8px;
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a span.tren-budge {
    color: #212529;
    background: #eff2f7;
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a span.top-budge {
    color: #eff2f7;
    background-color: #7e7e7e;
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a img {
    width: 100%;
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a:hover {
    margin-left: 4px;
    color: var(--theme-color) !important;
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a.megamenu-image {
    width: 100%;
    height: 250px;
    overflow: hidden;
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a.megamenu-image img {
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

@media (max-width: 1199px) {
    header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a.megamenu-image img {
        -webkit-filter: blur(0);
        filter: blur(0);
        height: 180px;
    }
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a.megamenu-image:hover {
    margin-left: 0;
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a.megamenu-image:hover img {
    -webkit-filter: blur(0);
    filter: blur(0);
    margin-left: 0;
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li.highlight-link {
    position: relative;
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li.highlight-link i {
    color: var(--theme-color);
}

header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section + .link-section {
    margin-top: 25px;
}

header .main-navbar .nav-menu > li.mega-menu {
    position: unset;
}

header .main-navbar .nav-menu > li.mega-menu.home-menu .mega-menu-container .mega-box .link-section ul {
    float: none;
    position: relative;
    display: block;
    margin: 5px 0;
    padding: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}

header .main-navbar .nav-menu > li.mega-menu.home-menu ul li {
    width: 100%;
}

header .main-navbar .nav-menu > li.mega-menu.home-menu ul li .megamenu-image {
    width: 100%;
    height: 100%;
    overflow: hidden;
    display: block;
    padding: 0;
}

@media (max-width: 1199px) {
    header .main-navbar .nav-menu > li.mega-menu.home-menu ul li .megamenu-image {
        height: 180px;
    }
}

header .main-navbar .nav-menu > li.mega-menu.home-menu ul li .megamenu-image img {
    width: 100%;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

@media (max-width: 1199px) {
    header .main-navbar .nav-menu > li.mega-menu.home-menu ul li .megamenu-image img {
        -webkit-filter: blur(0);
        filter: blur(0);
    }
}

header .main-navbar .nav-menu > li.mega-menu.home-menu ul li .megamenu-image:hover {
    margin-left: 0;
}

header .main-navbar .nav-menu > li.mega-menu.home-menu ul li .megamenu-image:hover img {
    -webkit-filter: blur(0);
    filter: blur(0);
    margin-left: 0;
}

header .main-navbar .nav-menu > li.mega-menu.home-menu .megamenu-image-title {
    cursor: pointer;
    padding: 10px;
    text-align: center;
}

@media (max-width: 1199px) {
    header .main-navbar .nav-menu > li.mega-menu.home-menu .megamenu-image-title {
        text-align: center;
        margin-bottom: 20px;
    }
}

@media (min-width: 1200px) {
    .responsive-btn {
        display: none;
    }

    header .main-navbar .nav-menu > li .nav-submenu {
        width: 250px;
        opacity: 0;
        visibility: hidden;
        border-radius: 5px;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
    }

    header .main-navbar .nav-menu > li .nav-submenu a .sub-arrow {
        position: absolute;
        right: 20px;
        top: 7px;
        color: rgba(0, 0, 0, 0.75);
        font-size: 10px;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
    }

    header .main-navbar .nav-menu > li .nav-submenu li .level1 {
        display: none;
        border-radius: 4px;
    }

    header .main-navbar .nav-menu > li .nav-submenu li .level1 li .level2 {
        display: none;
        border-radius: 4px;
    }

    header .main-navbar .nav-menu > li .nav-submenu li .level1 li .level2 li .level3 {
        display: none;
    }

    header .main-navbar .nav-menu > li .nav-submenu li .level1 li .level2 li:hover .level3 {
        display: block;
    }

    header .main-navbar .nav-menu > li .nav-submenu li .level1 li:hover .level2 {
        display: block;
    }

    header .main-navbar .nav-menu > li .nav-submenu li:hover .level1 {
        display: block;
    }

    header .main-navbar .nav-menu > li .nav-submenu li a:hover .sub-arrow {
        right: 16px;
        color: #212529;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
    }

    header .main-navbar .nav-menu > li.dropdown .menu-title {
        position: relative;
        padding-right: 18px;
    }

    header .main-navbar .nav-menu > li.dropdown .menu-title::after {
        position: absolute;
        content: "\f078";
        font-family: "Font Awesome 5 Free";
        right: 0;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        font-weight: 600;
        font-size: 12px;
    }

    header .main-navbar .nav-menu > li .mega-menu-container {
        opacity: 0;
        visibility: hidden;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
    }

    header .main-navbar .nav-menu > li:hover .nav-submenu {
        opacity: 1;
        z-index: 4;
        visibility: visible;
        margin-top: 28px;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
    }

    header .main-navbar .nav-menu > li:hover .mega-menu-container {
        opacity: 1;
        visibility: visible;
        margin-top: 28px;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
    }

    .toggle-nav {
        display: none;
    }

    .mobile-back {
        display: none !important;
    }
}

@media (max-width: 1199px) {
    header .main-navbar .nav-menu {
        position: fixed;
        background-color: #fff;
        width: 300px;
        border-radius: 0;
        padding-bottom: 155px;
        top: 0;
        height: 100vh;
        right: -300px;
        z-index: 99;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
        overflow-y: scroll;
        overflow-x: hidden;
    }

    header .main-navbar .nav-menu.opennav {
        right: 0;
    }

    header .main-navbar .nav-menu .back-btn {
        margin-bottom: 10px;
    }

    header .main-navbar .nav-menu .back-btn .mobile-back {
        cursor: pointer;
    }

    header .main-navbar .nav-menu .back-btn .mobile-back i {
        font-size: 14px;
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
    }

    header .main-navbar .nav-menu > li {
        display: block;
        float: none;
        width: 100%;
        padding: 0;
    }

    header .main-navbar .nav-menu > li:nth-child(n + 2) {
        border-bottom: 1px solid rgba(221, 221, 221, 0.5);
        margin-bottom: 10px;
        padding-bottom: 10px;
    }

    header .main-navbar .nav-menu > li a {
        padding: 10px 15px;
        position: relative;
    }

    header .main-navbar .nav-menu > li a .sub-arrow {
        right: 20px;
        position: absolute;
    }

    header .main-navbar .nav-menu > li a .sub-arrow:before {
        content: "+";
        font-family: inherit;
        position: relative;
    }

    header .main-navbar .nav-menu > li > ul li a .according-menu {
        top: 2px;
    }

    header .main-navbar .nav-menu > li > ul li ul li a .according-menu {
        top: 1px;
    }

    header .main-navbar .nav-menu > li .nav-submenu {
        width: 100%;
        padding: 0;
        position: relative;
        display: none;
        -webkit-box-shadow: none;
        box-shadow: none;
    }

    header .main-navbar .nav-menu > li .nav-submenu li a {
        position: relative;
    }

    header .main-navbar .nav-menu > li .nav-submenu li a:after {
        content: "";
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        left: 20px;
        width: 3px;
        height: 3px;
        border-radius: 50%;
        background-color: #212529;
    }

    [dir="rtl"] header .main-navbar .nav-menu > li .nav-submenu li a:after {
        left: unset;
        right: 20px;
    }

    header .main-navbar .nav-menu > li .nav-submenu li a:hover::after {
        background-color: var(--theme-color);
    }

    header .main-navbar .nav-menu > li .nav-submenu.opensubmenu {
        display: block;
    }

    header .main-navbar .nav-menu > li .nav-submenu li .nav-sub-childmenu {
        display: none;
        position: relative;
        right: 0;
        width: 100%;
        padding: 0;
        -webkit-box-shadow: none;
        box-shadow: none;
    }

    header .main-navbar .nav-menu > li .nav-submenu li .nav-sub-childmenu.submenu-content.level2 li a {
        padding: 0 60px;
    }

    header .main-navbar .nav-menu > li .nav-submenu li .nav-sub-childmenu.submenu-content.level2 .level3 li a {
        padding: 0 70px;
    }

    header .main-navbar .nav-menu > li .nav-submenu li .nav-sub-childmenu.opensubchild {
        display: block;
    }

    header .main-navbar .nav-menu > li .nav-submenu li .nav-sub-childmenu li a {
        padding: 0 45px;
    }

    header .main-navbar .nav-menu > li .mega-menu-container {
        display: none;
        padding: 0;
        position: relative;
        -webkit-box-shadow: none;
        box-shadow: none;
    }

    header .main-navbar .nav-menu > li .mega-menu-container.opensubmenu {
        display: block;
    }

    header .main-navbar .nav-menu > li .mega-menu-container .mega-box {
        width: 100%;
        padding: 0;
    }

    header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-title {
        position: relative;
    }

    header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-title h5 {
        margin-bottom: 0;
        font-weight: 400;
        line-height: 1.9;
        padding: 2px 25px;
    }

    header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-title .according-menu {
        top: 7px;
    }

    header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content {
        display: none;
    }

    header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content.opensubmegamenu {
        display: block;
        padding: 0 45px;
    }

    header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a {
        line-height: 1.9;
    }

    header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a:hover {
        margin-left: 0;
    }

    header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section .submenu-content ul li a:hover:after {
        display: none;
    }

    header .main-navbar .nav-menu > li .mega-menu-container .mega-box .link-section + .link-section {
        margin-top: 0;
    }

    header .main-navbar .nav-menu > li .nav-link.active {
        background-color: transparent;
        -webkit-box-shadow: none;
        box-shadow: none;
        color: #212529;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
    }

    header .main-navbar .nav-menu > li .nav-link.active:hover {
        color: var(--theme-color);
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
    }

    header .main-navbar .nav-menu .mobile-poster {
        border-bottom: none !important;
        margin: 0 !important;
        position: fixed;
        bottom: 0;
        right: -410px;
        width: 300px;
        padding: 20px !important;
        background-color: #eff2f7;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    header .main-navbar .nav-menu .mobile-poster img {
        width: 50px;
    }

    header .main-navbar .nav-menu .mobile-poster .mobile-contain {
        margin-left: 15px;
    }

    header .main-navbar .nav-menu .mobile-poster .mobile-contain h5 {
        font-weight: 600;
        font-size: 15px;
    }

    header .main-navbar .nav-menu .mobile-poster .mobile-contain p {
        font-size: 13px;
        margin: 7px 0;
    }

    header .menu nav {
        margin-left: auto;
        margin-right: 30px;
    }

    .mega-box .link-section .demo ul li a span img {
        top: 30px;
        right: -60px;
    }

    .mega-box.col {
        -ms-flex-preferred-size: unset;
        flex-basis: unset;
    }

    .according-menu {
        position: absolute;
        right: 20px;
        top: 10px;
    }

    [dir="rtl"] .according-menu {
        right: unset;
        left: 20px;
    }
}

/**=====================
     home section css start
==========================**/
.home-section {
    overflow: hidden;
}

.home-section .home-slider {
    width: 100%;
    height: 736px;
    position: relative;
}

[dir="rtl"] .home-section .home-slider {
    direction: rtl;
}

@media (max-width: 1199px) {
    .home-section .home-slider {
        height: 600px;
    }
}

@media (max-width: 991px) {
    .home-section .home-slider {
        background-position: left !important;
    }

    [dir="rtl"] .home-section .home-slider {
        background-position: right !important;
    }
}

@media (max-width: 575px) {
    .home-section .home-slider {
        height: 370px;
    }
}

@media (max-width: 360px) {
    .home-section .home-slider {
        height: 300px;
    }
}

.home-section .home-wrap {
    height: 100%;
}

.home-section .home-wrap h4 {
    font-size: calc(20px + (24 - 20) * ((100vw - 320px) / (1920 - 320)));
    margin-top: -4px;
}

@media (max-width: 1199px) {
    .home-section .home-wrap h4 {
        font-size: calc(16px + (18 - 16) * ((100vw - 320px) / (1199 - 320)));
    }
}

.home-section .home-wrap h6 {
    color: #212529;
}

.home-section .home-wrap p {
    font-size: calc(15px + (16 - 15) * ((100vw - 320px) / (1920 - 320)));
    line-height: 1.5;
    color: #212529;
}

@media (max-width: 1660px) {
    .home-section .home-wrap p {
        max-width: 90%;
    }
}

@media (max-width: 1366px) {
    .home-section .home-wrap p {
        max-width: 80%;
    }
}

@media (max-width: 991px) {
    .home-section .home-wrap p {
        max-width: 89%;
    }
}

.home-section .home-wrap .discover-block {
    margin-top: calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320)));
}

[dir="rtl"] .home-section .home-wrap .discover-block {
    text-align: right;
}

@media (max-width: 480px) {
    .home-section .home-wrap .discover-block {
        margin-top: 10px;
    }
}

.home-section .home-wrap .discover-block .d-flex {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.home-section .home-wrap .discover-block .play-icon {
    width: calc(30px + (50 - 30) * ((100vw - 320px) / (1920 - 320)));
    height: calc(30px + (50 - 30) * ((100vw - 320px) / (1920 - 320)));
    border-radius: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
    position: relative;
    z-index: 1;
}

.home-section .home-wrap .discover-block .play-icon::before {
    content: "";
    position: absolute;
    width: calc(100% + 10px);
    height: calc(100% + 10px);
    background-color: var(--theme-color);
    border-radius: 100%;
    opacity: 0.1;
    left: -5px;
    top: -5px;
    z-index: -1;
}

.home-section .home-wrap .discover-block .play-icon i {
    margin-left: 3px;
}

[dir="rtl"] .home-section .home-wrap .discover-block .play-icon i {
    margin-right: 0;
    margin-left: unset;
}

.home-section .home-wrap .discover-block .discover-content {
    margin-left: 20px;
}

@media (max-width: 360px) {
    .home-section .home-wrap .discover-block .discover-content {
        margin-left: 18px;
    }
}

[dir="rtl"] .home-section .home-wrap .discover-block .discover-content {
    margin-right: 20px;
    margin-left: unset;
    text-align: right;
}

@media (max-width: 360px) {
    [dir="rtl"] .home-section .home-wrap .discover-block .discover-content {
        margin-right: 18px;
    }
}

.home-section .home-social {
    position: absolute;
}

.home-section .home-social ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.home-section .home-social ul li a {
    font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
}

.home-section .home-social ul li img {
    margin-right: 5px;
}

.home-section .home-social ul li img [dir="rtl"] {
    margin-right: unset;
    margin-left: 5px;
}

.home-section .home-social ul li span {
    vertical-align: -2px;
    font-weight: 600;
    color: #212529;
}

.poster-section-6 {
    height: 850px;
    background-image: url(../images/vegetable/percentage.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    overflow: hidden;
}

@media (max-width: 1660px) {
    .poster-section-6 {
        height: 750px;
    }
}

@media (max-width: 1199px) {
    .poster-section-6 {
        height: 600px;
        margin-top: -41px;
    }
}

@media (max-width: 991px) {
    .poster-section-6 {
        height: 450px;
    }
}

@media (max-width: 767px) {
    .poster-section-6 {
        margin-top: -21px;
    }
}

@media (max-width: 360px) {
    .poster-section-6 {
        height: 350px;
    }
}

.poster-section-6 .prev {
    right: 11% !important;
    bottom: 33%;
    z-index: 2;
}

[dir="rtl"] .poster-section-6 .prev {
    right: unset !important;
    left: 6% !important;
}

[dir="rtl"] .poster-section-6 .prev i {
    margin-right: 16px !important;
    margin-left: unset !important;
}

@media (max-width: 1660px) {
    .poster-section-6 .prev {
        bottom: 38%;
    }
}

@media (max-width: 1366px) {
    .poster-section-6 .prev {
        bottom: 30%;
        right: 12% !important;
    }
}

@media (max-width: 1199px) {
    .poster-section-6 .prev {
        bottom: 24%;
        left: 81% !important;
    }

    [dir="rtl"] .poster-section-6 .prev {
        left: 8% !important;
    }
}

@media (max-width: 991px) {
    .poster-section-6 .prev {
        bottom: 17%;
        left: 75% !important;
    }

    [dir="rtl"] .poster-section-6 .prev {
        right: 16% !important;
    }
}

@media (max-width: 767px) {
    .poster-section-6 .prev {
        left: 7% !important;
        bottom: 39%;
    }

    [dir="rtl"] .poster-section-6 .prev {
        right: 21% !important;
        left: unset !important;
    }
}

@media (max-width: 575px) {
    .poster-section-6 .prev {
        bottom: 18%;
        left: 40% !important;
    }

    [dir="rtl"] .poster-section-6 .prev {
        bottom: 15%;
        left: 40% !important;
    }
}

@media (max-width: 360px) {
    .poster-section-6 .prev {
        bottom: 25%;
        left: 40% !important;
    }

    [dir="rtl"] .poster-section-6 .prev {
        bottom: 25%;
    }
}

.poster-section-6 .next {
    right: 5% !important;
    bottom: 33%;
    z-index: 2;
}

[dir="rtl"] .poster-section-6 .next {
    right: unset !important;
    left: 12% !important;
}

[dir="rtl"] .poster-section-6 .next i {
    margin-right: unset !important;
    margin-left: 16px !important;
}

.poster-section-6 .next:before {
    left: -23px !important;
}

@media (max-width: 1660px) {
    .poster-section-6 .next {
        bottom: 38%;
    }
}

@media (max-width: 1366px) {
    .poster-section-6 .next {
        bottom: 30%;
    }
}

@media (max-width: 1199px) {
    .poster-section-6 .next {
        bottom: 24%;
        right: 5% !important;
    }

    [dir="rtl"] .poster-section-6 .next {
        right: unset;
        left: 16% !important;
    }
}

@media (max-width: 991px) {
    .poster-section-6 .next {
        bottom: 17%;
        right: 6% !important;
    }
}

@media (max-width: 767px) {
    .poster-section-6 .next {
        left: 18% !important;
        bottom: 39%;
    }

    [dir="rtl"] .poster-section-6 .next {
        right: 8% !important;
        left: unset !important;
    }
}

@media (max-width: 575px) {
    .poster-section-6 .next {
        bottom: 18%;
        left: 50% !important;
    }

    [dir="rtl"] .poster-section-6 .next {
        bottom: 15%;
        left: 50% !important;
    }
}

@media (max-width: 360px) {
    .poster-section-6 .next {
        bottom: 25%;
        left: 50% !important;
    }

    [dir="rtl"] .poster-section-6 .next {
        bottom: 25%;
        left: 46% !important;
    }
}

.poster-section-6 .background-circle {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    margin-top: -5%;
    width: 60%;
}

@media (max-width: 1460px) {
    .poster-section-6 .background-circle {
        margin-top: -1%;
    }
}

@media (max-width: 991px) {
    .poster-section-6 .background-circle {
        width: 60%;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        margin-top: -7%;
    }
}

@media (max-width: 767px) {
    .poster-section-6 .background-circle {
        margin-top: -2%;
    }
}

@media (max-width: 575px) {
    .poster-section-6 .background-circle {
        margin-top: -5%;
        width: 80%;
    }
}

.poster-section-6 .background-circle img {
    z-index: 0;
    width: 100%;
    height: auto;
    -o-object-fit: contain;
    object-fit: contain;
    -webkit-animation: rounded 20s infinite linear;
    animation: rounded 20s infinite linear;
}

.poster-section-6 .poster-image {
    background-color: transparent !important;
    z-index: 1;
}

.poster-section-6 .poster-image img {
    margin: 0 auto;
    margin-top: 4%;
    height: 850px;
    -webkit-animation: rotate-flower 45s infinite linear;
    animation: rotate-flower 35s infinite linear;
}

@media (max-width: 1660px) {
    .poster-section-6 .poster-image img {
        height: 850px;
    }
}

@media (max-width: 1366px) {
    .poster-section-6 .poster-image img {
        height: 775px;
    }
}

@media (max-width: 1199px) {
    .poster-section-6 .poster-image img {
        height: 600px;
    }
}

@media (max-width: 991px) {
    .poster-section-6 .poster-image img {
        margin: 0 auto;
        height: 430px;
        margin-top: 7%;
        margin-left: 26%;
    }
}

@media (max-width: 767px) {
    .poster-section-6 .poster-image img {
        height: 540px;
        margin-right: 5%;
        margin-left: auto;
        margin-top: 0;
    }

    [dir="rtl"] .poster-section-6 .poster-image img {
        margin-left: 5%;
        margin-right: auto;
    }
}

@media (max-width: 575px) {
    .poster-section-6 .poster-image img {
        display: block;
        position: relative;
        -o-object-fit: contain;
        object-fit: contain;
        height: 400px;
        margin: 0 auto;
    }
}

.poster-section-6 .slider-nav {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 100px;
    text-align: right;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 1;
}

[dir="rtl"] .poster-section-6 .slider-nav {
    right: unset;
    left: 100px;
}

@media (max-width: 1660px) {
    .poster-section-6 .slider-nav {
        right: 90px;
    }
}

@media (max-width: 1460px) {
    .poster-section-6 .slider-nav {
        right: 75px;
    }
}

@media (max-width: 1199px) {
    .poster-section-6 .slider-nav {
        right: 50px;
    }
}

.poster-section-6 .slider-nav .poster-img {
    position: relative;
    display: inline-block;
    cursor: pointer;
    overflow: hidden;
    border-radius: 4px;
}

[dir="rtl"] .poster-section-6 .slider-nav .poster-img {
    float: left;
}

@media (max-width: 767px) {
    .poster-section-6 .slider-nav .poster-img {
        display: none;
    }
}

.poster-section-6 .slider-nav .poster-img img {
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.poster-section-6 .slider-nav .poster-img .overlay-color {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background-color: rgb(255 111 0 / 77%);
    -webkit-transform: scale(0);
    transform: scale(0);
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    border-radius: 5px;
    opacity: 0;
}

.poster-section-6 .slider-nav .poster-img .overlay-color .fa-plus {
    background-color: #fff;
    padding: calc(8px + (12 - 8) * ((100vw - 320px) / (1920 - 320)));
    border-radius: 5px;
}

.poster-section-6 .slider-nav .slick-current .overlay-color {
    -webkit-transform: scale(100%);
    transform: scale(100%);
    opacity: 1;
}

.banner-plus {
    position: absolute;
    top: 12%;
    left: 38%;
}

@media (max-width: 1660px) {
    .banner-plus {
        top: 11%;
        left: 37%;
    }
}

@media (max-width: 1460px) {
    .banner-plus {
        left: 35%;
    }
}

@media (max-width: 1366px) {
    .banner-plus {
        top: 10%;
        left: 36%;
    }
}

@media (max-width: 1199px) {
    .banner-plus {
        display: none;
    }
}

.banner-plus a:hover {
    color: var(--theme-color);
}

.banner-plus a .fa-plus {
    padding: calc(15px + (20 - 15) * ((100vw - 320px) / (1920 - 320)));
    background-color: #fff;
    border-radius: 50%;
    font-size: calc(14px + (18 - 14) * ((100vw - 320px) / (1920 - 320)));
    -webkit-animation: ripple-2 0.7s linear infinite;
    animation: ripple-2 0.7s linear infinite;
}

.left-side-contain {
    position: absolute;
    top: 0;
    left: 100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 20%;
    height: 100%;
}

[dir="rtl"] .left-side-contain {
    left: unset;
    right: 100px;
}

@media (max-width: 1660px) {
    .left-side-contain {
        left: 90px;
        width: 23%;
    }
}

@media (max-width: 1460px) {
    .left-side-contain {
        width: 25%;
        left: 75px;
    }
}

@media (max-width: 1366px) {
    .left-side-contain {
        left: 45px;
        width: 27%;
    }
}

@media (max-width: 1199px) {
    .left-side-contain {
        width: 27%;
        left: 50px;
    }
}

@media (max-width: 991px) {
    .left-side-contain {
        left: 50px;
        width: 30%;
    }
}

@media (max-width: 767px) {
    .left-side-contain {
        left: 50px;
        width: 35%;
    }

    [dir="rtl"] .left-side-contain {
        left: unset;
        right: 50px;
    }
}

@media (max-width: 575px) {
    .left-side-contain {
        width: 100%;
        height: auto;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        left: 0;
        text-align: center;
        color: #fff;
        display: block;
        z-index: 1;
    }
}

@media (max-width: 575px) {
    .left-side-contain .banner-left {
        margin: 0 10px;
        background-color: rgb(255 111 0 / 65%);
        padding: calc(20px + (28 - 20) * ((100vw - 320px) / (1920 - 320)));
        -webkit-backdrop-filter: blur(5px);
        backdrop-filter: blur(5px);
    }
}

.left-side-contain .banner-left h4 {
    margin-top: -2px;
    color: #212529;
}

@media (max-width: 575px) {
    .left-side-contain .banner-left h4 {
        margin-top: -3px;
        color: #fff;
    }
}

@media (max-width: 575px) {
    .left-side-contain .banner-left h4 span {
        color: #ddd !important;
        font-weight: 400;
    }
}

.left-side-contain .banner-left h1 {
    margin: calc(5px + (20 - 5) * ((100vw - 320px) / (1920 - 320))) 0;
    line-height: 1.2;
    color: #212529;
    font-size: calc(23px + (70 - 23) * ((100vw - 320px) / (1920 - 320)));
}

@media (max-width: 575px) {
    .left-side-contain .banner-left h1 {
        color: #fff;
    }
}

.left-side-contain .banner-left h1 span {
    font-weight: normal;
}

.left-side-contain .banner-left p {
    color: #212529;
    letter-spacing: 10px;
}

@media (max-width: 1199px) {
    .left-side-contain .banner-left p {
        display: none;
    }
}

.left-side-contain .banner-left h2 {
    color: #212529;
    font-size: calc(20px + (45 - 20) * ((100vw - 320px) / (1920 - 320)));
}

@media (max-width: 1199px) {
    .left-side-contain .banner-left h2 {
        margin-bottom: 20px;
    }
}

@media (max-width: 575px) {
    .left-side-contain .banner-left h2 {
        margin-bottom: 0;
        color: #fff;
    }
}

.left-side-contain .banner-left h2 span {
    font-size: calc(17px + (32 - 17) * ((100vw - 320px) / (1920 - 320)));
}

@media (max-width: 575px) {
    .left-side-contain .banner-left h2 span {
        color: #ddd !important;
        font-weight: 400;
    }
}

.left-side-contain .banner-left .banner-btn-grup {
    position: relative;
    bottom: 0;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-radius: 4px;
}

@media (max-width: 991px) {
    .left-side-contain .banner-left .banner-btn-grup {
        display: none;
    }
}

.left-side-contain .banner-left .poster-details {
    letter-spacing: 0;
    margin: calc(5px + (20 - 5) * ((100vw - 320px) / (1920 - 320))) 0;
}

.left-side-contain .banner-left .color-change {
    font-weight: 600;
    font-size: 22px;
    margin-top: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 1199px) {
    .left-side-contain .banner-left .color-change {
        display: none;
    }
}

.left-side-contain .banner-left .color-change h3 {
    font-size: calc(16px + (25 - 16) * ((100vw - 320px) / (1920 - 320)));
    margin-right: 10px;
    color: #000;
    font-weight: bolder;
}

.left-side-contain .banner-left .color-change li {
    background-color: #c7c7c5;
    width: calc(18px + (30 - 18) * ((100vw - 320px) / (1920 - 320)));
    height: calc(18px + (30 - 18) * ((100vw - 320px) / (1920 - 320)));
    border-radius: 50%;
    position: relative;
    margin-right: 10px;
}

.left-side-contain .banner-left .color-change li::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border-radius: 50%;
    width: calc(6px + (10 - 6) * ((100vw - 320px) / (1920 - 320)));
    height: calc(6px + (10 - 6) * ((100vw - 320px) / (1920 - 320)));
    background-color: #000;
}

.left-side-contain .banner-left .color-change li:nth-child(2) {
    background-color: var(--theme-color);
}

.left-side-contain .banner-left .color-change li:nth-child(2)::after {
    background-color: #fff;
}

.right-side-contain {
    position: absolute;
    top: 100px;
    right: 100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    z-index: 1;
}

[dir="rtl"] .right-side-contain {
    right: unset;
    left: 100px;
}

@media (max-width: 1660px) {
    .right-side-contain {
        right: 90px;
    }
}

@media (max-width: 1460px) {
    .right-side-contain {
        right: 75px;
    }
}

@media (max-width: 1199px) {
    .right-side-contain {
        display: none;
    }
}

.right-side-contain .social-image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.right-side-contain .social-image + .social-image {
    margin-left: 30px;
}

[dir="rtl"] .right-side-contain .social-image + .social-image {
    margin-left: 0;
    margin-right: 30px;
}

.right-side-contain .social-image a {
    color: #212529;
}

/* =====================
    Slick SLider CSS Start
 ========================== */
.box-arrow .slick-prev {
    left: calc(5px + (25 - 5) * ((100vw - 320px) / (1920 - 320)));
    z-index: 1;
}

@media (max-width: 767px) {
    .box-arrow .slick-prev {
        left: 10px;
    }
}

.box-arrow .slick-prev::before {
    content: "\f30a";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    left: 0;
    color: #212529;
    font-size: 40px;
}

.box-arrow .slick-next {
    right: calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320)));
    z-index: 1;
}

.box-arrow .slick-next::before {
    content: "\f30b";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    right: 0;
    color: #212529;
    font-size: 40px;
}

.slick-dots li {
    width: 10px;
    height: 10px;
}

.slick-dots li.slick-active {
    background-color: var(--theme-color);
    border-radius: 50px;
}

.slick-dots li.slick-active button {
    background-color: transparent;
}

.slick-dots li button {
    background-color: #dedede;
    border-radius: 50%;
    width: 10px;
    height: 10px;
    color: transparent;
}

.slick-dots li button::before {
    content: "";
}

/**=====================
    Poster Section SCSS Start
==========================**/
.poster-section .poster-image {
    height: 100%;
    background-color: #f0f3f8;
    position: relative;
}

.poster-section .poster-image .poster-image-details {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 42%;
    margin-right: 35px;
    color: var(--theme-color);
}

@media (max-width: 480px) {
    .poster-section .poster-image .poster-image-details {
        margin-right: 6px;
    }
}

@media (max-width: 360px) {
    .poster-section .poster-image .poster-image-details {
        margin-right: 10px;
    }
}

.poster-section .poster-image .poster-image-details h2 {
    font-size: calc(16px + (35 - 16) * ((100vw - 320px) / (1920 - 320)));
    color: #212529;
    line-height: 1.2;
    margin-top: calc(5px + (10 - 5) * ((100vw - 320px) / (1920 - 320)));
}

.poster-section .poster-image .poster-image-details h5 {
    font-size: calc(12px + (15 - 12) * ((100vw - 320px) / (1920 - 320)));
    margin-top: -2px;
}

.poster-section .poster-image .poster-image-details p {
    color: #38383899;
    font-size: calc(10px + (13 - 10) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 500;
    line-height: 1.1;
}

.poster-section .poster-image .poster-image-details h3 {
    font-size: calc(14px + (30 - 14) * ((100vw - 320px) / (1920 - 320)));
    font-weight: bold;
    color: #212529;
    margin: calc(5px + (10 - 5) * ((100vw - 320px) / (1920 - 320))) 0;
}

.poster-section .poster-image .poster-image-details h3 span {
    color: var(--theme-color);
    font-size: calc(14px + (20 - 14) * ((100vw - 320px) / (1920 - 320)));
}

/**=====================
     Arrivals Scss Start
==========================**/
.arrival-image {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.arrival-image .arrival-contain {
    background-color: #ff0000;
}

.arrival-image .arrival-contain .arrival-price {
    position: absolute;
    text-align: right;
    padding: 30px;
    top: 0;
    right: 0;
}

@media (max-width: 1366px) {
    .arrival-image .arrival-contain .arrival-price {
        padding: 20px;
    }
}

@media (max-width: 575px) {
    .arrival-image .arrival-contain .arrival-price {
        padding: 15px;
    }
}

.arrival-image .arrival-contain .arrival-full {
    position: absolute;
    padding: 30px;
    bottom: 0;
}

@media (max-width: 1366px) {
    .arrival-image .arrival-contain .arrival-full {
        padding: 20px;
    }
}

@media (max-width: 575px) {
    .arrival-image .arrival-contain .arrival-full {
        padding: 15px;
    }
}

.arrival-image .arrival-contain .arrival-full h3 {
    font-weight: bold;
}

.arrival-image .arrival-contain .rating-star {
    position: absolute;
    padding: 30px;
    bottom: 0;
    right: 0;
}

@media (max-width: 1366px) {
    .arrival-image .arrival-contain .rating-star {
        padding: 20px;
    }
}

@media (max-width: 575px) {
    .arrival-image .arrival-contain .rating-star {
        padding: 15px;
    }
}

.arrival-image .arrival-contain .rating-star li .feather {
    stroke: var(--theme-color);
    fill: var(--theme-color);
    width: 18px;
}

@media (max-width: 360px) {
    .arrival-image .arrival-contain .rating-star li .feather {
        width: 13px;
    }
}

.arrival-image .arrival-contain .rating-star li:nth-child(5) .feather {
    stroke: #000;
    fill: #000;
}

/**=====================
    Subsribe css Start
==========================**/
.subscribe-section {
    background-color: #eff3f7;
}

.subscribe-section-light {
    background-color: #ffefe3;
}

.subscribe-section .subscribe-details {
    height: 100%;
}

.subscribe-section .subscribe-details h2 {
    font-size: calc(18px + (30 - 18) * ((100vw - 320px) / (1920 - 320)));
    margin-top: -2px;
}

.subscribe-section .subscribe-details h6 {
    font-size: 15px;
    font-weight: normal;
    display: block;
    margin-bottom: -3px;
    line-height: 1.6;
}

.subscribe-section .subsribe-input {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
}

.subscribe-section .subsribe-input .form-control {
    border-radius: 0;
}

/**=====================
    service section css start
==========================**/
@media (max-width: 1460px) {
    .service-section {
        margin-bottom: -3px;
    }
}

.service-section .service-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.service-section .service-wrap .service-icon svg {
    width: 55px;
    height: 55px;
    fill: var(--theme-color);
    stroke: var(--theme-color);
    margin-right: 20px;
}

[dir="rtl"] .service-section .service-wrap .service-icon svg {
    margin-right: 0;
    margin-left: 20px;
}

@media (max-width: 1460px) {
    .service-section .service-wrap .service-icon svg {
        width: 40px;
        height: 40px;
    }
}

@media (max-width: 767px) {
    .service-section .service-wrap .service-icon svg {
        width: 35px;
        height: 35px;
    }
}

.service-section .service-wrap .service-content h3 {
    margin-top: -3px;
}

@media (max-width: 1199px) {
    .service-section .service-wrap .service-content h3 {
        margin-bottom: 2px !important;
    }
}

.service-section .service-wrap .service-content span {
    display: block;
    margin-bottom: -3px;
    line-height: 1.6;
    letter-spacing: 0.05em;
}

.service-section.about-page .service-wrap .service-icon svg {
    width: 45px;
    height: 45px;
}

.service-style-2 .service-wrap {
    display: block;
    text-align: center;
    margin-bottom: -2px;
}

.service-style-2 .service-wrap .service-icon {
    margin-bottom: 20px;
}

.service-style-2 .row > div {
    position: relative;
}

.service-style-2 .row > div + div::before {
    content: "";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 2px;
    height: 50px;
    background-color: #f0f3f8;
}

@media (max-width: 1199px) {
    .service-style-2 .row > div + div:nth-child(3):before {
        content: "";
        display: none;
    }
}

@media (max-width: 575px) {
    .service-style-2 .row > div + div:nth-child(even):before {
        content: "";
        display: none;
    }
}

/**=====================
     product css start
==========================**/
.tab-section .product-style-1 .product-box .product-details h5 {
    margin-left: 0;
}

[dir="rtl"] .tab-section .product-style-1 .product-box .product-details h5 {
    margin-left: unset;
    margin-right: 0;
}

.tab-section .product-style-1 .product-box .product-details h5.main-title {
    margin: 0 auto;
}

[dir="rtl"] .tab-section .product-style-1 .product-box .product-details h5.main-title {
    margin: 0 auto;
}

.rating {
    display: block;
    margin-bottom: -4px;
}

[dir="rtl"] .rating {
    padding: 0;
}

.rating li i {
    color: #c3c3c3 !important;
}

.rating li i.theme-color {
    color: #ffa202 !important;
}

.heart-wishlist {
    font-size: 14px;
    width: 30px;
    height: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    z-index: 1;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    background-color: #fff;
    border-radius: 100%;
}

.heart-wishlist .far {
    margin-top: 1px;
    margin-left: -1px;
}

[dir="rtl"] .heart-wishlist .far {
    margin-left: unset;
    margin-right: -1px;
}

.heart-wishlist::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: var(--theme-color);
    opacity: 0.1;
    border-radius: 100%;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    z-index: -1;
}

.heart-wishlist.heart-color::after {
    background-color: transparent;
}

.product-box {
    overflow: hidden;
}

[dir="rtl"] .product-box {
    direction: rtl;
}

.product-box:hover .img-wrapper .share {
    opacity: 1 !important;
    color: #fff;
}

.product-box:hover .img-wrapper .share-opacity {
    opacity: 1;
}

.product-box:hover .img-wrapper .share-plus {
    color: black;
    background-color: white;
    opacity: 1;
    border-radius: 50%;
}

.product-box:hover .img-wrapper.hover-image::after {
    opacity: 1;
}

.product-box:hover .img-wrapper.squre-image::after {
    opacity: 1;
}

.product-box:hover .img-wrapper .circle-shape {
    -webkit-transform: scale(100%);
    transform: scale(100%);
}

.product-box:hover .img-wrapper .background-text {
    opacity: 1;
}

.product-box .img-wrapper {
    position: relative;
    overflow: hidden;
}

.product-box .img-wrapper.hover-image::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url(../images/vegetable/effect1.png);
    background-size: cover;
    background-repeat: no-repeat;
    top: 0;
    left: 0;
    opacity: 0;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
}

.product-box .img-wrapper.squre-image::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url(../images/vegetable/effect.png);
    background-size: cover;
    background-repeat: no-repeat;
    top: 0;
    left: 0;
    opacity: 0;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
}

@media (max-width: 1199px) {
    .product-box .img-wrapper.squre-image::after {
        opacity: 1;
    }
}

.product-box .img-wrapper .circle-shape {
    position: absolute;
    background-color: rgba(232, 115, 22, 0.04);
    top: -80px;
    left: -80px;
    width: 100%;
    height: 87%;
    border-radius: 50%;
    z-index: 1;
    -webkit-transform: scale(0);
    transform: scale(0);
    -webkit-transition: 0.6s ease;
    transition: 0.6s ease;
    -webkit-transform-origin: top left;
    transform-origin: top left;
}

.product-box .img-wrapper .circle-shape-1 {
    width: 390px;
    height: 390px;
    position: absolute;
    background-color: rgba(232, 115, 22, 0.04);
    top: -130px;
    left: -130px;
    border-radius: 50%;
    z-index: 1;
    -webkit-transition: 0.6s ease;
    transition: 0.6s ease;
}

.product-box .img-wrapper .background-text {
    text-transform: uppercase;
    position: absolute;
    top: 90px;
    right: -30px;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    font-weight: bolder;
    font-size: 68px;
    color: rgba(232, 115, 22, 0.1);
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    opacity: 0;
    -webkit-transition: 0.6s ease;
    transition: 0.6s ease;
}

.product-box .cart-wrap {
    position: absolute;
    bottom: 30px;
    left: 0;
    right: 0;
    text-align: center;
    opacity: 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    z-index: 2;
}

@media (max-width: 1366px) {
    .product-box .cart-wrap {
        bottom: 20px;
    }
}

@media (max-width: 480px) {
    .product-box .cart-wrap {
        bottom: 15px;
    }
}

.product-box .cart-wrap .category-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
}

.product-box .cart-wrap a, .product-box .cart-wrap button {
    padding: 15px;
    background-color: #fff;
    position: relative;
    z-index: 1;
}

@media (max-width: 1366px) {
    .product-box .cart-wrap a, .product-box .cart-wrap button {
        padding: 10px;
    }
}

@media (max-width: 480px) {
    .product-box .cart-wrap a, .product-box .cart-wrap button {
        padding: 5px;
    }
}

.product-box .cart-wrap a::after, .product-box .cart-wrap button::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: var(--theme-color);
    -webkit-transform: scale(0);
    transform: scale(0);
    -webkit-transition: 0.5s;
    transition: 0.5s;
    top: 0;
    left: 0;
    z-index: -1;
}

[dir="rtl"] .product-box .cart-wrap a::after, [dir="rtl"] .product-box .cart-wrap button::after {
    left: unset;
    right: 0;
}

.product-box .cart-wrap a svg, .product-box .cart-wrap button svg {
    width: 16px;
    height: 16px;
}

@media (max-width: 767px) {
    .product-box .cart-wrap a svg, .product-box .cart-wrap button svg {
        width: 14px;
        height: 14px;
    }
}

@media (max-width: 480px) {
    .product-box .cart-wrap a svg, .product-box .cart-wrap button svg {
        width: 13px;
        height: 13px;
    }
}

.product-box .cart-wrap a:hover, .product-box .cart-wrap button:hover {
    background-color: transparent;
    color: #fff;
}

.product-box .cart-wrap a:hover::after, .product-box .cart-wrap button:hover::after {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: 0.5s;
    transition: 0.5s;
}

.product-box .cart-wrap a {
    color: #232323;
}

.product-box .cart-wrap button {
    line-height: 0.8;
}

[dir="rtl"] .product-box .cart-wrap ul li + li {
    margin-right: 8px;
    margin-left: unset;
}

.product-box .product-details {
    margin-top: 15px;
}

.product-box .product-details h3 span {
    font-size: 15px;
    text-decoration: line-through;
    margin-left: 4px;
}

[dir="rtl"] .product-box .product-details h3 span {
    margin-left: 0;
    margin-right: 4px;
}

.product-box .product-details h5 {
    margin: 5px auto 6px auto;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
    width: 90%;
    font-weight: 500;
}

.product-box .product-details .size-box {
    margin-top: 5px !important;
    margin: -1px;
}

.product-box .product-details .size-box li {
    color: #212529;
    margin: 1px;
    padding: 2px 6px;
    font-size: 13px;
    border-radius: 3px;
    background-color: #f0f7ef;
}

.product-box .product-details .size-box-2 li {
    background-color: #eff2f7;
}

.product-box .product-details .rating {
    display: block;
    margin-bottom: -4px;
}

.product-box .product-details .rating.rating-2 {
    margin-bottom: 0px;
}

.product-box .product-details .rating li i {
    font-size: 13px;
    color: #c3c3c3;
}

.product-box .product-details .rating li i.theme-color {
    color: #ffa202;
}

.product-box .label-dark {
    left: 0;
}

[dir="rtl"] .product-box .label-dark {
    float: right;
    left: unset;
    right: 0;
}

[dir="rtl"] [dir="rtl"] .product-box .label-dark {
    float: left;
}

.product-box .label-theme {
    float: right;
    right: 0;
}

[dir="rtl"] .product-box .label-theme {
    float: left;
    right: unset;
    left: 0;
}

[dir="rtl"] [dir="rtl"] .product-box .label-theme {
    float: right;
}

.product-box:hover .cart-wrap {
    opacity: 1;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.product-box:hover .cart-wrap ul li:first-child {
    -webkit-animation: fadeInUp 400ms ease-in-out;
    animation: fadeInUp 400ms ease-in-out;
}

.product-box:hover .cart-wrap ul li:nth-child(2) {
    -webkit-animation: fadeInUp 600ms ease-in-out;
    animation: fadeInUp 600ms ease-in-out;
}

.product-box:hover .cart-wrap ul li:nth-child(3) {
    -webkit-animation: fadeInUp 800ms ease-in-out;
    animation: fadeInUp 800ms ease-in-out;
}

.product-box:hover .cart-wrap ul li:nth-child(4) {
    -webkit-animation: fadeInUp 1000ms ease-in-out;
    animation: fadeInUp 1000ms ease-in-out;
}

.product-wrapper-1 .slick-dots {
    margin-top: -25px !important;
}

.product-wrapper .slick-dots {
    position: relative;
    bottom: 0;
    margin-top: calc(5px + (20 - 5) * ((100vw - 320px) / (1920 - 320)));
}

.product-wrapper .slick-dots li {
    width: auto;
    height: auto;
}

.product-wrapper .slick-dots li button {
    width: 8px;
    height: 8px;
    border-radius: 4px;
    padding: 0;
    margin: 0;
    background-color: rgba(35, 35, 35, 0.2);
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.product-wrapper .slick-dots li button::before {
    display: none;
}

.product-wrapper .slick-dots li.slick-active button {
    margin: 0;
    width: 40px;
    background-color: var(--theme-color);
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.product-wrapper .timer {
    position: absolute;
    top: 15px;
    left: 0;
    right: 0;
    text-align: center;
}

.product-wrapper.slick-slider.slick-dotted {
    margin-bottom: -2px;
}

.product-banner-circle {
    overflow: hidden;
    height: 100%;
}

@media (max-width: 991px) {
    .product-banner {
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1;
    }
}

.product-banner .product-box {
    padding: calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320))) !important;
    height: 100%;
}

@media (max-width: 1199px) {
    .product-banner .product-box {
        padding: 20px !important;
    }
}

.product-banner .product-box .img-wrapper a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 auto;
    width: 100%;
}

.product-banner .label-block {
    padding: 0;
    position: relative;
}

.product-banner .label-block ~ a {
    clear: both;
}

.product-banner .offer-end {
    position: absolute;
    bottom: 50px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    padding: 30px;
    background-color: rgba(35, 35, 35, 0.8);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    color: #fff;
    width: 70%;
    text-align: center;
    z-index: 1;
}

.product-banner .offer-end-demo4 {
    background-color: rgba(232, 115, 22, 0.8);
}

.product-banner .offer-end-demo4 h3 {
    margin-top: -3px;
}

.product-banner .offer-end-demo4 h6 {
    margin-bottom: -1px;
}

@media (max-width: 1366px) {
    .product-banner .offer-end {
        padding: 20px;
    }
}

@media (max-width: 991px) {
    .product-banner .offer-end {
        width: unset;
    }
}

@media (max-width: 480px) {
    .product-banner .offer-end {
        width: 60%;
        padding: 15px;
    }
}

@media (max-width: 360px) {
    .product-banner .offer-end {
        width: 90%;
    }
}

.product-banner .offer-end h3 {
    margin-bottom: 10px;
}

.product-banner .offer-end h6 {
    font-weight: 400;
}

.instagram-wrap .product-box {
    position: relative;
}

.instagram-wrap .product-box::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: var(--theme-color);
    opacity: 0;
    visibility: hidden;
    top: 0;
    left: 0;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}

.instagram-wrap .product-box .img-wrapper img {
    max-height: unset !important;
    max-width: unset !important;
    height: 225px;
    width: 225px;
    -o-object-fit: contain;
    object-fit: contain;
}

@media (max-width: 1366px) {
    .instagram-wrap .product-box .img-wrapper img {
        height: 195px;
        width: 195px;
    }
}

@media (max-width: 767px) {
    .instagram-wrap .product-box .img-wrapper img {
        height: 175px;
        width: 175px;
    }
}

.instagram-wrap .product-box .img-wrapper .share {
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1.6;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-orientation: initial;
    position: absolute;
    top: 0;
}

.instagram-wrap .product-box .img-wrapper .share-opacity {
    opacity: 0;
    -webkit-transition: 0.2s ease;
    transition: 0.2s ease;
}

.instagram-wrap .product-box .img-wrapper .share-box {
    z-index: 2;
}

.instagram-wrap .product-box .img-wrapper .share .share-plus {
    position: relative;
    width: 25px;
    height: 25px;
    font-size: 16px;
    display: inline-block;
    text-align: center;
    color: var(--theme-color);
}

.instagram-wrap .product-box .img-wrapper .share .share-plus::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: var(--theme-color);
    opacity: 0.1;
    border-radius: 100%;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    z-index: -1;
    z-index: 1;
    left: 0;
    top: 0;
}

.instagram-wrap .product-box .img-wrapper .share .share-plus-color {
    background-color: #fff;
    border-radius: 50%;
    -webkit-animation: ripple-2 0.7s linear infinite;
    animation: ripple-2 0.7s linear infinite;
}

.instagram-wrap .product-box .img-wrapper .share .share-plus-color::after {
    background-color: #fff;
}

.instagram-wrap .product-box .img-wrapper .share span:not(.share-plus) {
    letter-spacing: 10px;
    padding-top: 15px;
    color: #fff;
}

@media (max-width: 991px) {
    .instagram-wrap .product-box .img-wrapper .share span:not(.share-plus) {
        letter-spacing: 6px;
        font-size: 13px;
        padding-top: 10px;
    }
}

.instagram-wrap .product-box .insta-hover {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    visibility: hidden;
    width: 100%;
    height: 100%;
    color: #fff;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.instagram-wrap .product-box .insta-hover-gradient {
    background: #ec7a1f;
    background: linear-gradient(138deg, #ec7a1f 0%, #e3627b 50%, #a0768e 100%);
    opacity: 0;
}

.instagram-wrap .product-box .insta-hover h2 {
    position: absolute;
    top: 25px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    font-size: calc(65px + (80 - 65) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 900;
    opacity: 0.08;
}

@media (max-width: 991px) {
    .instagram-wrap .product-box .insta-hover h2 {
        top: 30px;
    }
}

.instagram-wrap .product-box .insta-hover h3 {
    font-size: calc(20px + (24 - 20) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 600;
    margin-bottom: 30px;
    line-height: 1.4;
}

.instagram-wrap .product-box .insta-hover h3.text-hide {
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}

.instagram-wrap .product-box .insta-hover h3.brand-name {
    font-size: calc(20px + (35 - 20) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: 20px;
    line-height: 1.2;
}

@media (max-width: 991px) {
    .instagram-wrap .product-box .insta-hover h3 {
        margin-bottom: 20px;
    }
}

.instagram-wrap .product-box .insta-hover h5 {
    font-weight: 400;
    margin-bottom: 15px;
}

@media (max-width: 991px) {
    .instagram-wrap .product-box .insta-hover h5 {
        margin-bottom: 5px;
    }
}

.instagram-wrap .product-box .insta-hover .btn {
    font-weight: 500;
}

.instagram-wrap .product-box:hover .insta-hover {
    opacity: 1;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    visibility: visible;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}

.instagram-wrap .product-box:hover .insta-hover-gradient {
    background: #ec7a1f;
    background: linear-gradient(138deg, #ec7a1f 0%, #e3627b 50%, #a0768e 100%);
    opacity: 1;
}

.instagram-wrap .product-box:hover::after {
    opacity: 0.8;
    visibility: visible;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}

.color-variant li {
    width: 30px;
    height: 30px;
    cursor: pointer;
}

.color-variant li + li {
    margin-left: 10px;
}

.color-variant li.selected {
    -webkit-box-shadow: 0 4px 8px 1px rgba(0, 0, 0, 0.16), 0 5px 15px 2px rgba(0, 0, 0, 0.05);
    box-shadow: 0 4px 8px 1px rgba(0, 0, 0, 0.16), 0 5px 15px 2px rgba(0, 0, 0, 0.05);
}

.color-variant .bg-half-light {
    background-color: #f0f3f8;
    position: relative;
}

.color-variant .bg-half-light .half-black {
    background-color: #232323;
    position: absolute;
    width: 50%;
    right: 0;
    top: 0;
    display: inline-block;
    height: 100%;
}

.color-variant .bg-blue1 {
    background-color: #88d1f4;
}

.color-variant .bg-light1 {
    background-color: #f0f3f8;
}

.color-variant .bg-black1 {
    background-color: #000;
}

.label-price {
    position: absolute;
    text-align: right;
    padding: 30px;
    top: 0;
    right: 0;
}

.product-style-1 .product-box {
    background-color: #f0f3f8;
    padding: 20px;
    position: relative;
}

.product-style-1 .product-box.product-box1 {
    background-color: #e9e9e9;
}

.product-style-1 .product-box.bg-image {
    background-image: url(../images/vegetable/percentage.jpg);
    background-color: transparent;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.product-style-1 .product-box-4 {
    background-color: #fff6d7;
}

@media (max-width: 480px) {
    .product-style-1 .product-box {
        padding: 15px;
    }
}

.product-style-1 .product-box .img-wrapper img {
    margin: 0 auto;
    max-height: 115px;
    max-width: 150px;
    z-index: 1;
}

.product-style-1 .product-box .img-wrapper .round-circle {
    position: absolute;
    -webkit-animation: rounded 10s infinite linear;
    animation: rounded 10s infinite linear;
    z-index: 0;
    width: 100%;
}

.product-style-1 .product-box .img-wrapper .bg-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.product-style-1 .product-box .img-wrapper a.text-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    min-height: 116px;
}

.product-style-1 .product-box .top-wishlist {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.product-style-1 .product-box .top-wishlist.product-color {
    z-index: 2;
    background-color: #fff;
    border-radius: 50%;
}

.product-style-1 .product-box .top-wishlist span {
    font-size: 13px;
}

.product-style-1 .product-box .product-details h5 {
    -webkit-line-clamp: 1;
    color: #212529;
    margin: 5px auto;
}

.product-style-1 .product-list .product-box {
    padding: 20px calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320)));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 1199px) {
    .product-style-1 .product-list .product-box {
        padding: 20px;
    }
}

.product-style-1 .product-list .product-box .img-wrapper {
    min-width: 90px;
}

@media (max-width: 1199px) {
    .product-style-1 .product-list .product-box .img-wrapper {
        min-width: 70px;
    }
}

.product-style-1 .product-list .product-box .img-wrapper a.text-center {
    min-height: unset;
}

.product-style-1 .product-list .product-box .img-wrapper img {
    height: 118px;
    max-width: 90px;
    max-height: unset !important;
    -o-object-fit: contain;
    object-fit: contain;
}

@media (max-width: 1199px) {
    .product-style-1 .product-list .product-box .img-wrapper img {
        height: 78px;
        max-width: 70px;
    }
}

.product-style-1 .product-list .product-box .product-details {
    margin-top: 0;
    margin-left: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

[dir="rtl"] .product-style-1 .product-list .product-box .product-details {
    margin-left: unset !important;
    margin-right: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

@media (max-width: 1199px) {
    .product-style-1 .product-list .product-box .product-details {
        margin-left: 15px;
    }

    [dir="rtl"] .product-style-1 .product-list .product-box .product-details {
        margin-right: 15px;
    }
}

.product-style-1 .product-list .product-box .product-details h3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.product-style-1 .product-list .product-box + .product-box {
    margin-top: 30px;
}

@media (max-width: 1199px) {
    .product-style-1 .product-list .product-box + .product-box {
        margin-top: 16px;
    }
}

.product-style-1.offer-wrap .product-banner .product-box .img-wrapper img {
    max-height: unset;
    max-width: unset;
    height: 310px;
    -o-object-fit: contain;
    object-fit: contain;
}

@media (max-width: 1199px) {
    .product-style-1.offer-wrap .product-banner .product-box .img-wrapper img {
        height: 198px;
    }
}

.product-style-1.instagram-2 .product-box {
    padding: 0;
}

.product-style-1.instagram-2 .product-box .top-wishlist {
    position: absolute;
    right: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    top: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

[dir="rtl"] .product-style-1.instagram-2 .product-box .top-wishlist {
    right: unset;
    left: 30px;
}

.product-style-1.instagram-2 .product-box .img-wrapper .share {
    top: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    left: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

[dir="rtl"] .product-style-1.instagram-2 .product-box .img-wrapper .share {
    left: unset;
    right: 30px;
}

.product-style-1.instagram-2 .product-box .insta-hover {
    padding: calc(30px + (70 - 30) * ((100vw - 320px) / (1920 - 320)));
}

.product-style-1.instagram-2 .product-box .insta-hover.insta-spacing {
    padding: calc(35px + (70 - 35) * ((100vw - 320px) / (1920 - 320)));
}

.product-style-2 .product-box .img-wrapper .back {
    opacity: 0;
    position: absolute;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    top: 0;
    left: 0;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    width: 100%;
}

.product-style-2 .product-box .product-details h5 {
    margin: 0;
}

.product-style-2 .product-box .product-details .rating-details, .product-style-2 .product-box .product-details .main-price {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.product-style-2 .product-box .product-details .rating-details.main-shop, .product-style-2 .product-box .product-details .main-price.main-shop {
    display: block !important;
    text-align: center;
}

[dir="rtl"] .product-style-2 .product-box .product-details .rating-details.main-shop, [dir="rtl"] .product-style-2 .product-box .product-details .main-price.main-shop {
    text-align: right;
}

@media (max-width: 575px) {
    .product-style-2 .product-box .product-details .rating-details, .product-style-2 .product-box .product-details .main-price {
        display: block;
        text-align: left;
    }

    [dir="rtl"] .product-style-2 .product-box .product-details .rating-details, [dir="rtl"] .product-style-2 .product-box .product-details .main-price {
        text-align: right;
    }
}

.product-style-2 .product-box .product-details .main-price {
    margin-top: 10px;
}

@media (max-width: 575px) {
    .product-style-2 .product-box .product-details .main-price {
        margin-top: 5px;
    }

    .product-style-2 .product-box .product-details .main-price h3 {
        margin-top: 5px;
    }
}

.product-style-2 .product-box .cart-wrap ul li + li {
    margin-left: 0;
}

[dir="rtl"] .product-style-2 .product-box .cart-wrap ul li + li {
    margin-left: unset;
    margin-right: 0;
}

.product-style-2 .product-box .cart-wrap a svg, .product-style-2 .product-box .cart-wrap button svg {
    width: 14px;
    height: 14px;
}

@media (max-width: 575px) {
    .product-style-2 .product-box .cart-wrap a svg, .product-style-2 .product-box .cart-wrap button svg {
        width: 13px;
        height: 13px;
    }
}

.product-style-2 .product-box:hover .img-wrapper .back {
    opacity: 1;
    -webkit-backface-visibility: visible;
    backface-visibility: visible;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

@media (max-width: 1660px) {
    .product-style-2.slide-4 {
        padding: 0 30px;
    }
}

.product-style-2.slide-4 .slick-prev {
    left: -70px;
}

@media (max-width: 1660px) {
    .product-style-2.slide-4 .slick-prev {
        left: -20px;
    }
}

@media (max-width: 575px) {
    .product-style-2.slide-4 .slick-prev {
        left: -5px;
    }
}

.product-style-2.slide-4 .slick-next {
    right: -70px;
}

@media (max-width: 1660px) {
    .product-style-2.slide-4 .slick-next {
        right: -20px;
    }
}

@media (max-width: 575px) {
    .product-style-2.slide-4 .slick-next {
        right: -5px;
    }
}

.product-style-3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 15px;
}

@media (max-width: 575px) {
    .product-style-3.product-style-chair {
        display: block;
        text-align: center;
    }
}

.product-style-3.product-style-chair .product-title {
    text-align: left;
}

[dir="rtl"] .product-style-3.product-style-chair .product-title {
    text-align: right;
}

@media (max-width: 575px) {
    .product-style-3.product-style-chair .product-title {
        text-align: center;
    }

    [dir="rtl"] .product-style-3.product-style-chair .product-title {
        text-align: center;
    }
}

@media (max-width: 575px) {
    .product-style-3.product-style-chair .product-title a h5 {
        margin-bottom: 5px;
    }
}

.product-style-3.product-style-chair .main-price {
    text-align: right;
}

[dir="rtl"] .product-style-3.product-style-chair .main-price {
    text-align: left;
}

@media (max-width: 575px) {
    .product-style-3.product-style-chair .main-price {
        text-align: center;
    }

    [dir="rtl"] .product-style-3.product-style-chair .main-price {
        text-align: center;
    }
}

.product-style-3 .product-title {
    overflow: hidden;
    text-transform: capitalize;
}

.product-style-3 .product-title h5 {
    font-size: calc(14px + (18 - 14) * ((100vw - 320px) / (1920 - 320)));
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #212529;
    font-weight: 500;
}

.product-style-3 .product-title p {
    font-size: calc(13px + (14 - 13) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 400;
}

.product-style-3 .main-price h3 {
    font-size: calc(13px + (14 - 13) * ((100vw - 320px) / (1920 - 320)));
}

.title-3 {
    margin-top: calc(13px + (18 - 13) * ((100vw - 320px) / (1920 - 320)));
}

[dir="rtl"] .title-3 {
    text-align: right;
}

.title-3 h2 {
    font-size: calc(18px + (28 - 18) * ((100vw - 320px) / (1920 - 320)));
}

.product-image {
    border-radius: 6px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

[dir="rtl"] .product-image {
    direction: rtl;
}

.product-image + .product-image {
    margin-top: 30px;
}

.product-image img {
    width: 90px;
    height: 90px;
    -o-object-fit: cover;
    object-fit: cover;
}

.product-image .product-details {
    margin-left: 15px;
    overflow: hidden;
}

[dir="rtl"] .product-image .product-details {
    margin-left: 0;
    margin-right: 15px;
}

.product-image .product-details a {
    color: #232323;
}

.product-image .product-details h3 {
    font-size: calc(13px + (18 - 13) * ((100vw - 320px) / (1920 - 320)));
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin: 10px 0;
}

.product-image .product-details h4 span {
    margin-left: 10px;
}

.product-style-4:hover .blog-header .blog-image .blog-date {
    opacity: 1;
}

.product-style-4 .blog-header {
    background: #ec7a1f;
    background: linear-gradient(138deg, #ec7a1f 0%, #e3627b 50%, #a0768e 100%);
}

.product-style-4 .blog-header .blog-image {
    position: relative;
}

.product-style-4 .blog-header .blog-image .blog-date {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    opacity: 0;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
}

.product-style-4 .blog-header .blog-image .blog-date.gradient-color::after {
    background: #a1f5a1;
    background: linear-gradient(129deg, #a1f5a1 0%, #266a0b 100%);
}

.product-style-4 .blog-header .blog-image .blog-date::after {
    content: "";
    position: absolute;
    background: #ec7a1f;
    background: linear-gradient(138deg, #ec7a1f 0%, #e3627b 50%, #a0768e 100%);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0.8;
}

.product-style-4 .blog-header .blog-image .blog-date .date-hover {
    width: 100px;
    height: 100px;
    background-color: rgba(255, 255, 255, 0.3);
    border-radius: 5px;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    z-index: 1;
    text-align: center;
}

.product-style-4 .blog-header .blog-image .blog-date .date-hover h2 {
    font-size: calc(18px + (45 - 18) * ((100vw - 320px) / (1920 - 320)));
    font-weight: bolder;
}

.product-style-4 .blog-header .blog-image .blog-date .date-hover h3 {
    font-weight: 800;
    font-size: calc(13px + (23 - 13) * ((100vw - 320px) / (1920 - 320)));
}

.product-style-4 .blog-footer {
    text-align: center;
    padding: 10px;
    position: relative;
}

.product-style-4 .blog-footer h2 {
    font-size: 70px;
    font-weight: bolder;
    opacity: 0.07;
    margin-top: calc(13px + (20 - 13) * ((100vw - 320px) / (1920 - 320)));
}

.product-style-4 .blog-footer h5 {
    position: absolute;
    top: calc(54px + (58 - 54) * ((100vw - 320px) / (1920 - 320)));
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100%;
}

.product-style-4 .blog-footer h4 {
    margin-bottom: 10px;
    font-size: calc(13px + (20 - 13) * ((100vw - 320px) / (1920 - 320)));
}

[dir="rtl"] .product-style-4 .blog-footer button {
    direction: rtl;
}

.product-box {
    position: relative;
}

.product-box .img-wrapper {
    position: relative;
    background-color: #f0f3f8;
}

.product-box .img-wrapper.bg-trans {
    background-color: transparent;
}

.product-box .img-wrapper .front-img {
    overflow: hidden;
}

.product-box .img-wrapper .cart-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.product-box .img-wrapper .cart-info .cart-contain {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 4px;
    position: absolute;
    -webkit-transform: scale(0);
    transform: scale(0);
    background-color: var(--theme-color);
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    width: calc(30px + (40 - 30) * ((100vw - 320px) / (1920 - 320)));
    height: calc(30px + (40 - 30) * ((100vw - 320px) / (1920 - 320)));
}

.product-box .img-wrapper .cart-info .cart-contain a .feather {
    width: calc(15px + (20 - 15) * ((100vw - 320px) / (1920 - 320)));
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    color: #fff;
}

.product-box .img-wrapper .cart-info .cart-contain a:hover i {
    color: #fff;
}

.product-box .img-wrapper .cart-info .cart-contain a:last-child i {
    margin-right: 0;
}

.product-box .img-wrapper .cart-info .cart-contain button {
    width: 45px;
    height: 45px;
    background-color: #fff;
    color: #000;
    font-size: 16px;
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    border: none;
    cursor: pointer;
}

.product-box .img-wrapper .cart-info .cart-contain button:focus {
    outline: none;
}

.product-box .img-wrapper .cart-info .cart-contain button:hover {
    color: #fff;
}

.product-box .img-wrapper .cart_qty {
    display: none;
}

.product-box .img-wrapper .cart_qty .cart-box {
    position: absolute;
    bottom: -45px;
    width: 206px;
    left: 45px;
    opacity: 0;
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
}

.product-box .img-wrapper .cart_qty .cart-box .input-group {
    position: relative;
}

.product-box .img-wrapper .cart_qty .cart-box .input-group .form-control {
    width: 100%;
    height: 45px;
    border: none;
    background-color: #fff;
    font-weight: 500;
    text-align: center;
    font-size: 14px;
    font-weight: 600;
}

.product-box .img-wrapper .cart_qty .cart-box .input-group .form-control:focus {
    border-color: #efefef;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.product-box .img-wrapper .cart_qty .cart-box .input-group button {
    background-color: #51983c;
    position: absolute;
    height: 100%;
    z-index: 9;
    -webkit-animation: none;
    animation: none;
    width: 45px;
    height: 45px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 0;
    padding: 0;
}

.product-box .img-wrapper .cart_qty .cart-box .input-group button.quantity-left-minus {
    top: 0;
    left: 0;
}

.product-box .img-wrapper .cart_qty .cart-box .input-group button.quantity-right-plus {
    top: 0;
    right: 0;
}

.product-box .img-wrapper .cart_qty .cart-box .input-group button i {
    color: #fff !important;
}

.product-box .img-wrapper .cart_qty .cart-box .input-group button {
    outline: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    border: none;
}

.product-box .img-wrapper .cart_qty .cart-box .input-group button i {
    color: #000;
}

.product-box .img-wrapper .cart_qty.open {
    display: block;
}

.product-box .product-detail {
    margin-top: 30px;
    text-align: center;
}

.product-box .product-detail .detail-price {
    font-weight: 700;
}

.product-box .product-detail .detail-price span {
    text-decoration: line-through;
    color: #7e7e7e;
    font-size: 15px;
    margin-left: 5px;
    font-weight: 500;
}

.product-box .product-detail h5 {
    margin: 15px 0;
    color: #212529;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.product-box:hover .img-wrapper .labels .label-3 {
    opacity: 0;
    -webkit-transition: 0.7s ease;
    transition: 0.7s ease;
}

.product-box:hover .img-wrapper .cart-info .cart-contain a:first-child i {
    -webkit-animation: fadeInUp 500ms ease-in-out;
    animation: fadeInUp 500ms ease-in-out;
}

.product-box:hover .img-wrapper .cart-info .cart-contain a:nth-child(2) i {
    -webkit-animation: fadeInUp 700ms ease-in-out;
    animation: fadeInUp 700ms ease-in-out;
}

.product-box:hover .img-wrapper .cart-info .cart-contain a:nth-child(3) i {
    -webkit-animation: fadeInUp 900ms ease-in-out;
    animation: fadeInUp 900ms ease-in-out;
}

.product-box:hover .img-wrapper .cart-info .cart-contain a:last-child i {
    -webkit-animation: fadeInUp 1000ms ease-in-out;
    animation: fadeInUp 1000ms ease-in-out;
}

.product-box:hover .img-wrapper .cart_qty .cart-box {
    bottom: 30px;
    opacity: 1;
}

.product-box.product-box6 .img-wrapper {
    overflow: unset;
    background-color: #f0f8f0;
}

.product-box.product-box6 .img-wrapper .labels .label-7 {
    opacity: 0;
    -webkit-transition: 0.7s ease;
    transition: 0.7s ease;
    font-weight: 900;
}

@media (max-width: 1199px) {
    .product-box.product-box6 .img-wrapper .labels .label-7 {
        opacity: 1;
    }
}

@media (max-width: 1199px) {
    .product-box.product-box6 .img-wrapper .cart-info .cart-contain {
        -webkit-transform: scale(100%) !important;
        transform: scale(100%) !important;
    }
}

.product-box.product-box6 .img-wrapper .cart-info .cart-contain a i {
    background-color: var(--theme-color);
    color: #fff;
    -webkit-transition: 0.6s ease;
    transition: 0.6s ease;
}

.product-box.product-box6 .product-detail {
    margin-top: 30px;
    text-align: center;
}

.product-box.product-box6 .product-detail .detail-price {
    color: #7520dd;
}

.product-box.product-box6:hover .img-wrapper .labels .label-7 {
    opacity: 1;
}

.product-box.product-box6:hover .img-wrapper .cart-info .cart-contain {
    -webkit-transform: scale(100%);
    transform: scale(100%);
}

/**=====================
     category css start
==========================**/
/**=====================
    category mixins css start
==========================**/
.category-section.ratio_40 .bg-size::before {
    padding-top: 20%;
}

.category-wrap {
    padding: calc(15px + (25 - 15) * ((100vw - 320px) / (1920 - 320)));
    position: relative;
    height: 130px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 360px) {
    .category-wrap {
        height: unset;
    }
}

.category-wrap.category-color {
    background-color: #eff2f7;
}

@media (max-width: 1460px) {
    .category-wrap.category-padding {
        padding: 23px;
    }
}

@media (max-width: 1199px) {
    .category-wrap.category-padding {
        padding: 19px;
    }
}

.category-wrap.theme-bg-color {
    color: #fff;
    background-color: var(--theme-color);
}

.category-wrap.theme-bg-color .light-text {
    font-size: 72px;
    line-height: 96px;
    color: #fff;
    font-weight: 700;
    margin-bottom: 0;
    position: absolute;
    opacity: 0.08;
    top: -10px;
    left: 0;
}

[dir="rtl"] .category-wrap.theme-bg-color .light-text {
    left: unset;
    right: 0;
}

.category-wrap.theme-bg-color h2 {
    margin-bottom: 10px;
}

.category-wrap.theme-bg-color h2.top-spacing {
    margin-top: -3px;
}

.category-wrap.theme-bg-color span {
    letter-spacing: calc(2px + (8 - 2) * ((100vw - 320px) / (1920 - 320)));
    text-transform: uppercase;
    display: block;
    margin-bottom: -5px;
}

.category-wrap .category-content {
    position: absolute;
    right: 30px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.category-wrap .category-content span {
    color: #212529;
    display: block;
    text-align: right;
}

[dir="rtl"] .category-wrap .category-content {
    text-align: right;
}

.category-wrap .category-content.category-text {
    text-align: right;
}

.category-wrap .category-content.category-text h3 {
    font-size: calc(14px + (24 - 14) * ((100vw - 320px) / (1920 - 320)));
    margin-top: -1px;
}

.category-wrap .category-content.category-text span {
    font-size: calc(12px + (18 - 12) * ((100vw - 320px) / (1920 - 320)));
    display: block;
    margin-bottom: -3px;
}

.category-wrap .category-content.category-text-1 h3 {
    margin-top: -4px;
}

.category-wrap .category-content.category-text-1 span {
    display: block;
    margin-bottom: -6px;
}

.category-wrap .category-content.category-text.category-spacing h3 {
    margin-top: -3px;
}

.category-wrap .category-content.category-text.category-spacing span {
    margin-bottom: -3px;
}

.category-wrap .category-content.category-text.t-text h3 {
    margin-top: -5px;
    color: #212529;
}

.category-wrap .category-content.category-text.t-text span {
    display: block;
    margin-bottom: -5px;
    color: #212529;
}

.category-wrap .category-content h3 {
    margin-bottom: 2px;
    font-weight: 600;
    font-size: calc(14px + (24 - 14) * ((100vw - 320px) / (1920 - 320)));
}

.category-style-3 .category-image-fruit {
    position: relative;
    padding-bottom: 50px;
    width: 90%;
}

.category-style-3 .category-image-fruit img {
    width: 100%;
}

@media (max-width: 360px) {
    .category-style-3 .category-image-fruit {
        padding-bottom: 30px;
    }
}

.category-style-3 .category-image-fruit .category-contain {
    position: absolute;
    bottom: 0;
    right: 0;
}

.category-style-3 .category-image-fruit .category-contain img {
    width: 100%;
}

[dir="rtl"] .category-style-3 .category-image-fruit .category-contain img {
    margin-right: auto;
}

@media (max-width: 767px) {
    .category-style-3 .category-image-fruit .category-contain img {
        margin-left: auto;
    }
}

.category-style-3 .category-image-fruit .category-text {
    position: absolute;
    top: 0%;
    left: 0%;
    color: #fff;
    color: #2d2d2d !important;
    top: 20px;
    left: 30px;
}

[dir="rtl"] .category-style-3 .category-image-fruit .category-text {
    left: unset;
    right: 30px;
    text-align: right;
}

.category-style-3 .category-image-fruit .category-text h2 {
    font-size: calc(16px + (25 - 16) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: 2px;
    font-weight: 900;
}

.category-style-3 .category-image-fruit .category-text h5 {
    font-size: calc(13px + (16 - 13) * ((100vw - 320px) / (1920 - 320)));
}

/**=====================
    offer section css start
==========================**/
.discount-image-details {
    background-color: #eff3f7;
    padding: calc(22px + (50 - 22) * ((100vw - 320px) / (1920 - 320))) calc(30px + (100 - 30) * ((100vw - 320px) / (1920 - 320)));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
}

.discount-image-details.discount-spacing {
    padding: calc(50px + (180 - 50) * ((100vw - 320px) / (1920 - 320)));
}

@media (max-width: 991px) {
    .discount-image-details {
        display: block;
    }
}

.discount-image-details .discount-images {
    margin-right: 80px;
}

[dir="rtl"] .discount-image-details .discount-images {
    margin-right: 0;
    margin-left: 80px;
}

@media (max-width: 991px) {
    .discount-image-details .discount-images {
        margin-right: 0;
        position: relative;
    }

    [dir="rtl"] .discount-image-details .discount-images {
        margin-right: 0;
        margin-left: 0px;
    }
}

.discount-image-details .discount-images .theme-circle {
    width: 450px;
    height: 450px;
    background: #752add;
    background: radial-gradient(circle, #752add 0%, #572e93 100%);
    border-radius: 50%;
}

@media (max-width: 1366px) {
    .discount-image-details .discount-images .theme-circle {
        width: 420px;
        height: 420px;
    }
}

@media (max-width: 1199px) {
    .discount-image-details .discount-images .theme-circle {
        width: 340px;
        height: 340px;
    }
}

@media (max-width: 991px) {
    .discount-image-details .discount-images .theme-circle {
        display: none;
    }
}

.discount-image-details .discount-images .shoes-images-1 {
    position: absolute;
    top: 18%;
    left: 59px;
    -webkit-transform: rotate(34deg);
    transform: rotate(34deg);
    width: 40%;
}

[dir="rtl"] .discount-image-details .discount-images .shoes-images-1 {
    left: unset;
    right: 130px;
}

@media (max-width: 1366px) {
    .discount-image-details .discount-images .shoes-images-1 {
        top: 24%;
        left: 50px;
        width: 43%;
    }
}

@media (max-width: 1199px) {
    .discount-image-details .discount-images .shoes-images-1 {
        top: 33%;
        left: 55px;
        width: 40%;
    }
}

@media (max-width: 991px) {
    .discount-image-details .discount-images .shoes-images-1 {
        position: relative;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        display: block;
        width: 100%;
        left: 0;
        -webkit-animation: run-shoes 15s infinite linear;
        animation: run-shoes 15s infinite linear;
    }

    [dir="rtl"] .discount-image-details .discount-images .shoes-images-1 {
        left: unset;
        right: 0 !important;
    }
}

@media (max-width: 360px) {
    .discount-image-details .discount-images .shoes-images-1 {
        width: 100%;
    }
}

.discount-image-details .discount-images .shoes-images-2 {
    position: absolute;
    top: 50px;
    left: 430px;
    width: 20%;
    -webkit-transform: rotateY(180deg) rotate(45deg);
    transform: rotateY(180deg) rotate(45deg);
}

[dir="rtl"] .discount-image-details .discount-images .shoes-images-2 {
    left: unset;
    right: 30px;
}

@media (max-width: 1366px) {
    .discount-image-details .discount-images .shoes-images-2 {
        top: 90px;
        left: 375px;
        width: 18%;
    }
}

@media (max-width: 1199px) {
    .discount-image-details .discount-images .shoes-images-2 {
        top: 95px;
        left: 325px;
        width: 16%;
    }
}

@media (max-width: 991px) {
    .discount-image-details .discount-images .shoes-images-2 {
        display: none;
    }
}

.discount-image-details .discunt-details {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
}

@media (max-width: 991px) {
    .discount-image-details .discunt-details {
        position: relative;
        width: 100%;
        display: block;
    }
}

.discount-image-details .discunt-details .heart-button {
    background-color: #e3ddf4;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.discount-image-details .discunt-details .heart-button-2 {
    background-color: #efdee7 !important;
}

.discount-image-details .discunt-details .heart-button-light {
    background-color: #eee1e6;
}

.discount-image-details .discunt-details .heart-button .fa-heart {
    margin-top: 2px;
}

.discount-image-details .discunt-details h5 {
    color: #212529;
}

.discount-image-details .discunt-details .deal-text {
    font-size: calc(22px + (45 - 22) * ((100vw - 320px) / (1920 - 320)));
    line-height: 1.1;
    font-weight: 900;
    color: #212529;
}

.discount-image-details-2 {
    background-color: #eff3f7;
    position: relative;
    height: 600px;
    overflow: hidden;
}

@media (max-width: 1366px) {
    .discount-image-details-2 {
        height: 500px;
    }
}

@media (max-width: 1199px) {
    .discount-image-details-2 {
        height: 410px;
    }
}

@media (max-width: 991px) {
    .discount-image-details-2 {
        height: auto;
        padding: calc(20px + (60 - 20) * ((100vw - 320px) / (1920 - 320)));
    }
}

.discount-image-details-2 .discount-images {
    margin-right: 80px;
}

@media (max-width: 991px) {
    .discount-image-details-2 .discount-images {
        margin-right: 0;
        position: relative;
    }
}

.discount-image-details-2 .discount-images .flower-images-1 {
    position: absolute;
    top: -75px;
    left: -215px;
    -webkit-transform: rotate(-70deg);
    transform: rotate(-70deg);
    width: 53%;
}

@media (max-width: 1366px) {
    .discount-image-details-2 .discount-images .flower-images-1 {
        top: -2px;
        left: -150px;
        width: 49%;
    }
}

@media (max-width: 1199px) {
    .discount-image-details-2 .discount-images .flower-images-1 {
        top: -2px;
        left: -150px;
        width: 49%;
    }
}

@media (max-width: 991px) {
    .discount-image-details-2 .discount-images .flower-images-1 {
        display: none;
    }
}

.discount-image-details-2 .discount-images .flower-images-2 {
    position: absolute;
    top: -250px;
    right: -330px;
    width: 67%;
    -webkit-transform: rotate(375deg);
    transform: rotate(375deg);
}

@media (max-width: 1366px) {
    .discount-image-details-2 .discount-images .flower-images-2 {
        top: -160px;
        right: -235px;
        width: 62%;
    }
}

@media (max-width: 1199px) {
    .discount-image-details-2 .discount-images .flower-images-2 {
        top: -160px;
        right: -235px;
        width: 62%;
    }
}

@media (max-width: 991px) {
    .discount-image-details-2 .discount-images .flower-images-2 {
        position: relative;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        display: block;
        width: 100%;
        top: 0;
        left: 0;
        -webkit-animation: run-shoes 15s infinite linear;
        animation: run-shoes 15s infinite linear;
    }

    [dir="rtl"] .discount-image-details-2 .discount-images .flower-images-2 {
        left: unset;
        right: 0;
    }
}

.discount-image-details-2 .discount-shop {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    background-color: var(--theme-color);
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    color: #fff;
    padding: calc(13px + (25 - 13) * ((100vw - 320px) / (1920 - 320)));
}

@media (max-width: 991px) {
    .discount-image-details-2 .discount-shop {
        display: none;
    }
}

.discount-image-details-2 .discount-shop h2 {
    font-size: calc(15px + (25 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.discount-image-details-2 .discount-shop h6 {
    letter-spacing: calc(0px + (5 - 0) * ((100vw - 320px) / (1920 - 320)));
    margin-top: calc(8px + (15 - 8) * ((100vw - 320px) / (1920 - 320)));
}

.discount-image-details-2 .discunt-details {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
}

@media (max-width: 991px) {
    .discount-image-details-2 .discunt-details {
        position: relative;
        width: 100%;
        display: block;
    }
}

.discount-image-details-2 .discunt-details .heart-button {
    padding: 15px;
    border-radius: 50%;
    display: inline-block;
}

.discount-image-details-2 .discunt-details .heart-button-light {
    background-color: #eee1e6;
}

.discount-image-details-2 .discunt-details .heart-button .feather {
    fill: var(--theme-color);
    stroke: var(--theme-color);
    width: 20px;
    height: 20px;
}

.discount-image-details-2 .discunt-details .deal-text {
    font-size: calc(22px + (45 - 22) * ((100vw - 320px) / (1920 - 320)));
    line-height: 1.1;
    font-weight: 900;
}

/**=====================
     banner css start
==========================**/
.timer-banner {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
}

.collection-banner {
    position: relative;
    overflow: hidden;
    height: 100%;
}

@media (max-width: 991px) {
    .collection-banner .collection-contain {
        background-color: rgba(0, 0, 0, 0.7);
        padding: 15px 30px;
        border-radius: 4px;
        -webkit-backdrop-filter: blur(3px);
        backdrop-filter: blur(3px);
    }

    .collection-banner .collection-contain h6, .collection-banner .collection-contain h2, .collection-banner .collection-contain p {
        color: #fff !important;
    }
}

.collection-banner .theme-color {
    margin-top: -2px;
}

.collection-banner .contain-banner {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.collection-banner .contain-banner.contain-center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.collection-banner .contain-banner .banner-content {
    padding: 45px 80px;
}

@media (max-width: 1460px) {
    .collection-banner .contain-banner .banner-content {
        padding: 30px 60px;
    }
}

@media (max-width: 1366px) {
    .collection-banner .contain-banner .banner-content {
        padding: 30px 40px;
    }
}

@media (max-width: 1199px) {
    .collection-banner .contain-banner .banner-content {
        padding: 20px 15px;
    }
}

@media (max-width: 991px) {
    .collection-banner .contain-banner .banner-content {
        padding: 40px;
    }
}

@media (max-width: 575px) {
    .collection-banner .contain-banner .banner-content {
        padding: 30px;
    }
}

@media (max-width: 360px) {
    .collection-banner .contain-banner .banner-content {
        padding: 20px;
    }
}

.collection-banner .contain-banner .banner-content.spacing-banner {
    padding: 40px;
}

@media (max-width: 1460px) {
    .collection-banner .contain-banner .banner-content.spacing-banner {
        padding: 30px;
    }
}

@media (max-width: 1366px) {
    .collection-banner .contain-banner .banner-content.spacing-banner {
        padding: 30px;
    }
}

@media (max-width: 1199px) {
    .collection-banner .contain-banner .banner-content.spacing-banner {
        padding: 20px;
    }
}

@media (max-width: 991px) {
    .collection-banner .contain-banner .banner-content.spacing-banner {
        padding: 40px;
    }
}

@media (max-width: 575px) {
    .collection-banner .contain-banner .banner-content.spacing-banner {
        padding: 30px;
    }
}

@media (max-width: 360px) {
    .collection-banner .contain-banner .banner-content.spacing-banner {
        padding: 20px;
    }
}

.collection-banner .contain-banner .banner-content.with-bg {
    background-color: rgb(53 4 4 / 85%);
    color: #ff6f00;
}

.collection-banner .contain-banner .banner-content.with-bg h2 {
    margin-top: -2px;
}

.collection-banner .contain-banner .banner-content.with-bg h3 {
    margin-top: -3px;
}

.collection-banner .contain-banner .banner-content.with-bg span {
    display: block;
    margin-bottom: -5px;
}

.collection-banner .contain-banner .banner-content.with-big {
    background-color: rgba(35, 35, 35, 0.85);
    color: #fff;
}

.collection-banner .contain-banner .banner-content.with-big h2 {
    margin-top: -3px;
}

.collection-banner .contain-banner .banner-content span {
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 5px;
}

@media (max-width: 1199px) {
    .collection-banner .contain-banner .banner-content span {
        letter-spacing: 3px;
    }
}

.collection-banner .contain-banner .banner-content.t-top h3 {
    margin-top: -4px;
}

.collection-banner .banner-img {
    height: 100%;
}

.collection-banner.p-center .contain-banner, .collection-banner.p-center .banner-text {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.collection-banner.p-right .contain-banner, .collection-banner.p-right .banner-text {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

[dir="rtl"] .collection-banner.p-right .contain-banner, [dir="rtl"] .collection-banner.p-right .banner-text {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.collection-banner.p-right .contain-banner h3, .collection-banner.p-right .banner-text h3 {
    margin-top: -9px;
}

.collection-banner.p-right .contain-banner .span-top, .collection-banner.p-right .banner-text .span-top {
    margin-top: -4px;
    display: block;
}

.collection-banner.p-right .banner-content {
    text-align: right;
}

.collection-banner.p-left .contain-banner, .collection-banner.p-left .banner-text {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

[dir="rtl"] .collection-banner.p-left .contain-banner, [dir="rtl"] .collection-banner.p-left .banner-text {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.collection-banner.p-bottom .contain-banner {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.collection-banner .banner-text {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.collection-banner .banner-text .banner-content {
    padding: 50px;
    width: 60%;
}

[dir="rtl"] .collection-banner .banner-text .banner-content {
    text-align: right;
}

.collection-banner .banner-text .banner-content.t-top h3 {
    color: #212529;
    margin-top: -4px;
}

@media (max-width: 480px) {
    .collection-banner .banner-text .banner-content.t-top h3 {
        margin-bottom: 5px;
    }
}

@media (max-width: 1460px) {
    .collection-banner .banner-text .banner-content {
        padding: 30px 60px;
    }
}

@media (max-width: 1366px) {
    .collection-banner .banner-text .banner-content {
        padding: 30px 40px;
    }
}

@media (max-width: 1199px) {
    .collection-banner .banner-text .banner-content {
        padding: 20px 15px;
    }
}

@media (max-width: 991px) {
    .collection-banner .banner-text .banner-content {
        padding: 0 40px;
    }
}

@media (max-width: 575px) {
    .collection-banner .banner-text .banner-content {
        padding: 0 30px;
    }
}

@media (max-width: 360px) {
    .collection-banner .banner-text .banner-content {
        padding: 0 10px;
        width: 50%;
    }
}

.collection-banner .banner-text h6 {
    font-weight: 600;
    margin-top: -3px;
}

.collection-banner .banner-text h2 {
    margin: calc(2px + (20 - 2) * ((100vw - 320px) / (1920 - 320))) 0;
    font-size: calc(18px + (46 - 18) * ((100vw - 320px) / (1920 - 320)));
    line-height: 1.32;
    color: #212529;
}

.collection-banner .banner-text h3 {
    font-size: calc(20px + (32 - 20) * ((100vw - 320px) / (1920 - 320)));
    line-height: 1.45;
    margin-bottom: 20px;
}

.collection-banner .banner-text h3.h-bottom {
    margin-bottom: calc(2px + (20 - 2) * ((100vw - 320px) / (1920 - 320)));
    margin-top: -6px;
    color: #212529;
}

.collection-banner .banner-text .btn {
    font-size: calc(13px + (14 - 13) * ((100vw - 320px) / (1920 - 320)));
}

.banner-title .banner-text .banner-content {
    width: 56%;
}

[dir="rtl"] .banner-title .banner-text .banner-content {
    text-align: left;
}

.banner-title .banner-text .banner-content .spacing-text {
    margin-top: -6px;
    color: #212529;
}

.collection-center {
    position: relative;
    padding: 50px;
    background-color: #f0f3f8;
    color: #212529;
}

@media (max-width: 1460px) {
    .collection-center {
        padding: 40px;
    }
}

@media (max-width: 575px) {
    .collection-center {
        padding: 30px;
    }
}

@media (max-width: 360px) {
    .collection-center {
        padding: 20px;
    }
}

.collection-center h2 {
    line-height: 1.3;
}

.banner-image {
    position: relative;
}

.banner-image .banner-content {
    position: absolute;
    left: calc(20px + (60 - 20) * ((100vw - 320px) / (1920 - 320)));
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 40%;
}

.banner-image .banner-content h3 {
    font-size: calc(16px + (32 - 16) * ((100vw - 320px) / (1920 - 320)));
    line-height: 1.45;
    margin-bottom: calc(2px + (15 - 2) * ((100vw - 320px) / (1920 - 320)));
    margin-top: calc(0px + (-6 - 0) * ((100vw - 320px) / (1920 - 320)));
    color: var(--theme-color);
}

@media (max-width: 767px) {
    .banner-image .banner-content h3 {
        margin-bottom: 0;
    }
}

.banner-image .banner-content p {
    color: #7e7e7e;
    margin-bottom: 0;
    line-height: 1.6;
}

@media (max-width: 767px) {
    .banner-image .banner-content p {
        display: none;
    }
}

.timer-banner {
    overflow: hidden;
}

.timer-banner .round-circle {
    position: absolute;
    -webkit-animation: rounded 10s infinite linear;
    animation: rounded 10s infinite linear;
    z-index: 0;
    width: 90%;
}

.timer-banner .veg-image {
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    z-index: 1;
}

.timer-banner .social-media {
    z-index: 1;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 15px;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

[dir="rtl"] .timer-banner .social-media {
    -webkit-transform: translateY(-50%) rotate(180deg);
    transform: translateY(-50%) rotate(180deg);
}

[dir="rtl"] .timer-banner .social-media {
    left: 15px;
    right: unset;
}

@media (max-width: 360px) {
    .timer-banner .social-media {
        bottom: 0;
        position: absolute;
        -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
        writing-mode: horizontal-tb;
        top: unset;
    }

    [dir="rtl"] .timer-banner .social-media {
        -webkit-transform: translateY(-50%) rotate(0deg);
        transform: translateY(-50%) rotate(0deg);
    }
}

.timer-banner .social-media .social-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.timer-banner .social-media .social-icon + .social-icon {
    margin-top: 10px;
}

[dir="rtl"] .timer-banner .social-media .social-icon + .social-icon {
    margin-top: 0;
    margin-bottom: 10px;
}

@media (max-width: 360px) {
    .timer-banner .social-media .social-icon + .social-icon {
        margin-top: 0;
        margin-left: 5px;
    }

    [dir="rtl"] .timer-banner .social-media .social-icon + .social-icon {
        margin-left: 0;
        margin-right: 5px;
        margin-bottom: 0px;
    }
}

.timer-banner .social-media .social-icon img {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    margin-bottom: 10px;
}

[dir="rtl"] .timer-banner .social-media .social-icon img {
    margin-top: 10px;
}

@media (max-width: 360px) {
    .timer-banner .social-media .social-icon img {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
        margin-bottom: 0;
    }
}

.timer-banner .social-media .social-icon h6 {
    font-weight: 600;
    font-size: calc(8px + (14 - 8) * ((100vw - 320px) / (1920 - 320)));
    color: #212529;
}

@media (max-width: 1199px) {
    .timer-banner .social-media .social-icon h6 {
        display: none;
    }
}

@media (max-width: 575px) {
    .timer-banner.bg-size::before {
        padding-top: 58%;
    }
}

@media (max-width: 480px) {
    .timer-banner.bg-size::before {
        padding-top: 64%;
    }
}

@media (max-width: 360px) {
    .timer-banner.bg-size::before {
        padding-top: 94%;
    }
}

.timer-banner .coupon-code {
    font-size: 12px;
    font-weight: 500;
    padding: 6px 20px;
    position: absolute;
    top: 30px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

.timer-banner .coupon-code::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    border: 1px dashed var(--theme-color);
    left: 0;
    top: 0;
    opacity: 0.2;
}

[dir="rtl"] .timer-banner .coupon-code::after {
    left: unset;
    right: 0;
}

@media (max-width: 1199px) {
    .timer-banner .coupon-code {
        top: 20px;
        left: unset;
        -webkit-transform: unset;
        transform: unset;
        right: 20px;
    }
}

@media (max-width: 575px) {
    .timer-banner .coupon-code {
        padding: 4px 10px;
    }
}

@media (max-width: 480px) {
    .timer-banner .coupon-code {
        top: 15px;
        right: 15px;
    }
}

.timer-banner .timer {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    z-index: 1;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

.timer-banner .timer ul {
    padding: 30px 50px;
}

.timer-banner .timer ul.light-color {
    background-color: rgb(255 111 0 / 70%);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    color: #fff;
}

@media (max-width: 1199px) {
    .timer-banner .timer ul {
        padding: 30px;
    }
}

@media (max-width: 767px) {
    .timer-banner .timer ul {
        padding: 20px;
    }
}

@media (max-width: 480px) {
    .timer-banner .timer ul {
        padding: 15px;
    }
}

.timer-banner .timer ul li h2 {
    margin-bottom: 6px;
}

@media (max-width: 480px) {
    .timer-banner .timer ul li h2 {
        margin-bottom: 2px;
        font-size: 20px;
    }
}

.timer-banner .timer ul li + li {
    margin-left: 80px;
}

[dir="rtl"] .timer-banner .timer ul li + li {
    margin-left: unset !important;
    margin-right: 80px;
}

@media (max-width: 767px) {
    .timer-banner .timer ul li + li {
        margin-left: 50px;
    }

    [dir="rtl"] .timer-banner .timer ul li + li {
        margin-right: 50px;
    }
}

@media (max-width: 480px) {
    .timer-banner .timer ul li + li {
        margin-left: 30px;
    }

    [dir="rtl"] .timer-banner .timer ul li + li {
        margin-right: 30px;
    }
}

.timer-banner .timer ul li + li::before {
    left: -42px;
    border-left: 2px solid rgba(255, 255, 255, 0.2);
}

[dir="rtl"] .timer-banner .timer ul li + li::before {
    left: unset !important;
    right: -42px;
    border-right: 2px solid rgba(255, 255, 255, 0.2);
    border-left: unset;
}

@media (max-width: 767px) {
    .timer-banner .timer ul li + li::before {
        left: -28px;
    }

    [dir="rtl"] .timer-banner .timer ul li + li::before {
        right: -28px;
    }
}

@media (max-width: 480px) {
    .timer-banner .timer ul li + li::before {
        left: -18px;
    }

    [dir="rtl"] .timer-banner .timer ul li + li::before {
        right: -18px;
    }
}

.timer-banner .discount-offer {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    position: absolute;
    left: 30px;
    -webkit-transform: translateY(-50%) rotate(180deg);
    transform: translateY(-50%) rotate(180deg);
    z-index: 1;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #212529;
}

[dir="rtl"] .timer-banner .discount-offer {
    left: unset !important;
    right: 30px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media (max-width: 1199px) {
    .timer-banner .discount-offer {
        left: 20px;
        top: 20px;
        -webkit-writing-mode: unset;
        -ms-writing-mode: unset;
        writing-mode: unset;
        text-orientation: initial;
        -webkit-transform: rotate(0) !important;
        transform: rotate(0) !important;
        -webkit-transform: unset;
        transform: unset;
    }

    [dir="rtl"] .timer-banner .discount-offer {
        right: unset;
        left: 20px !important;
    }
}

@media (max-width: 480px) {
    .timer-banner .discount-offer {
        left: 15px;
        top: 15px;
    }

    [dir="rtl"] .timer-banner .discount-offer {
        left: 15px !important;
        right: unset;
    }
}

@media (max-width: 1460px) {
    .timer-banner .discount-offer h5 {
        font-size: 14px;
    }
}

@media (max-width: 480px) {
    .timer-banner .discount-offer h5 {
        font-size: 10px;
    }
}

.timer-banner .discount-offer .wishlist-icon {
    padding: 7px 7px 8px 4px;
    position: relative;
}

[dir="rtl"] .timer-banner .discount-offer .wishlist-icon {
    padding: 7px 4px 8px 7px;
    margin-bottom: 8px;
    margin-top: 0 !important;
}

@media (max-width: 1460px) {
    .timer-banner .discount-offer .wishlist-icon {
        padding: 0;
    }
}

@media (max-width: 1199px) {
    .timer-banner .discount-offer .wishlist-icon {
        padding: 4px 4px 2px;
        margin-top: 0 !important;
        margin-left: 5px;
    }
}

@media (max-width: 480px) {
    .timer-banner .discount-offer .wishlist-icon {
        display: none;
    }
}

.timer-banner .discount-offer .wishlist-icon::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: var(--theme-color);
    opacity: 0.1;
    border-radius: 100%;
}

@media (max-width: 1460px) {
    .timer-banner .discount-offer .wishlist-icon::after {
        display: none;
    }
}

@media (max-width: 1199px) {
    .timer-banner .discount-offer .wishlist-icon::after {
        display: block;
    }
}

.timer-banner .discount-offer .wishlist-icon i {
    font-size: 13px;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}

@media (max-width: 1199px) {
    .timer-banner .discount-offer .wishlist-icon i {
        -webkit-transform: unset;
        transform: unset;
        font-size: 12px;
    }
}

.small-banner .collection-banner {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
}

@media (max-width: 991px) {
    .small-banner .collection-banner {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

@media (max-width: 1199px) {
    .small-banner .collection-banner {
        padding: 20px;
    }
}

@media (max-width: 480px) {
    .small-banner .collection-banner.bg-size:before {
        padding-top: 74%;
    }
}

@media (max-width: 360px) {
    .small-banner .collection-banner.bg-size:before {
        padding-top: 86%;
    }
}

.banner-btn-grup {
    position: absolute;
    bottom: 0;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

[dir="rtl"] .banner-btn-grup {
    left: unset;
    right: 0;
}

.banner-btn-grup button + button {
    margin-left: -1px;
}

[dir="rtl"] .banner-btn-grup button + button {
    margin-right: -1px;
    margin-left: unset;
}

/**=====================
     footer css start
==========================**/
@media (max-width: 575px) {
    footer h3 {
        font-size: 16px;
    }
}

footer .main-footer {
    border-top: 2px solid #f0f3f8;
    border-bottom: 2px solid #f0f3f8;
    padding: 80px 0;
}

@media (max-width: 1460px) {
    footer .main-footer {
        padding: 70px 0;
    }
}

@media (max-width: 1199px) {
    footer .main-footer {
        padding: 60px 0;
    }
}

@media (max-width: 991px) {
    footer .main-footer {
        padding: 50px 0;
    }
}

@media (max-width: 767px) {
    footer .main-footer {
        padding: 40px 0;
    }
}

@media (max-width: 575px) {
    footer .main-footer {
        padding: 30px 0;
    }
}

@media (max-width: 991px) {
    footer .main-footer .row > div:first-child, footer .main-footer .row > div:last-child {
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1;
    }
}

@media (max-width: 767px) {
    footer .main-footer .row > div:first-child, footer .main-footer .row > div:last-child {
        -webkit-box-ordinal-group: unset;
        -ms-flex-order: unset;
        order: unset;
    }
}

footer .footer-contact {
    padding-right: 40px;
}

[dir="rtl"] footer .footer-contact {
    padding-right: unset !important;
    padding-left: 40px;
}

footer .footer-contact .brand-logo .svg-icon {
    width: 25px;
    height: 25px;
    margin-right: 5px;
    -webkit-animation: none;
    animation: none;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
}

[dir="rtl"] footer .footer-contact .brand-logo .svg-icon {
    margin-right: 0;
    margin-left: 5px;
}

footer .footer-contact .brand-logo .svg-icon .fill-color {
    fill: var(--theme-color);
}

@media (max-width: 1366px) {
    footer .footer-contact {
        padding-right: 20px;
    }

    [dir="rtl"] footer .footer-contact {
        padding-left: 20px;
    }
}

@media (max-width: 991px) {
    footer .footer-contact {
        padding-right: 0;
    }

    [dir="rtl"] footer .footer-contact {
        padding-left: 0;
    }
}

footer .footer-contact .footer-logo {
    display: block;
    margin-bottom: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

[dir="rtl"] footer .footer-contact .contact-lists {
    padding: 0;
}

footer .footer-contact .contact-lists li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-transform: capitalize;
}

footer .footer-contact .contact-lists li:nth-child(1) span {
    margin-top: -3px;
}

footer .footer-contact .contact-lists li:nth-child(3) span {
    margin-bottom: -3px;
}

footer .footer-contact .contact-lists li span {
    display: inline;
}

footer .footer-contact .contact-lists li span b {
    font-weight: 500;
    padding-right: 5px;
}

[dir="rtl"] footer .footer-contact .contact-lists li span b {
    padding-right: unset;
    padding-left: 5px;
    float: right;
}

footer .footer-contact .contact-lists li + li {
    margin-top: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

@media (max-width: 991px) {
    footer .footer-contact .contact-lists li + li {
        margin-top: 15px;
    }
}

@media (max-width: 575px) {
    footer .footer-contact .contact-lists li + li {
        margin-top: 10px;
    }
}

footer .footer-links .footer-title h3 {
    position: relative;
}

@media (max-width: 575px) {
    footer .footer-links .footer-title h3::after {
        position: absolute;
        content: "\f078";
        font-family: "Font Awesome 5 Free";
        font-size: 9px;
        font-weight: 600;
        right: 0;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        color: #7e7e7e;
        -webkit-transition: 0.5s;
        transition: 0.5s;
    }

    [dir="rtl"] footer .footer-links .footer-title h3::after {
        right: unset;
        left: 0;
    }
}

@media (max-width: 575px) {
    footer .footer-links .footer-title.active h3::after {
        content: "\f077";
        -webkit-transition: 0.5s;
        transition: 0.5s;
    }
}

footer .footer-links .footer-content {
    padding-top: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

[dir="rtl"] footer .footer-links ul {
    padding: 0;
}

footer .footer-links ul li {
    display: block;
}

footer .footer-links ul li .font-dark:hover {
    color: var(--theme-color) !important;
}

footer .footer-links ul li + li {
    margin-top: 15px;
}

@media (max-width: 991px) {
    footer .footer-links ul li + li {
        margin-top: 10px;
    }
}

@media (max-width: 575px) {
    footer .footer-links ul li + li {
        margin-top: 6px;
    }
}

footer .footer-newsletter h3 {
    margin-bottom: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

footer .footer-newsletter p {
    line-height: 1.6;
    letter-spacing: .03em;
}

footer .footer-newsletter .input-group input {
    border-radius: 0;
    position: relative;
    border: none;
    background-color: #f0f3f8;
    color: rgba(35, 35, 35, 0.65);
}

footer .footer-newsletter .input-group input.color-4 {
    background-color: #e9e9e9;
}

footer .footer-newsletter .input-group .input-group-text {
    padding: 6px 16px;
    background-color: var(--theme-color);
    border: 1px solid var(--theme-color);
    color: #fff;
    border-radius: 0;
    cursor: pointer;
}

footer .footer-number {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

footer .footer-number .footer-number-image {
    background-color: #eff3f7;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    margin-right: 20px;
}

[dir="rtl"] footer .footer-number .footer-number-image {
    margin-right: 0;
    margin-left: 20px;
}

footer .footer-number .footer-number-image img {
    width: 20px;
}

footer .footer-number .footer-number-container h3 {
    margin-bottom: 0;
}

footer .footer-details {
    margin-top: calc(15px + (25 - 15) * ((100vw - 320px) / (1920 - 320)));
}

footer .footer-details p {
    line-height: 1.5;
    margin-bottom: 0;
}

footer .sub-footer {
    padding: calc(15px + (25 - 15) * ((100vw - 320px) / (1920 - 320))) 0;
}

@media (max-width: 767px) {
    footer .sub-footer {
        text-align: center;
    }
}

footer .sub-footer .row {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

[dir="rtl"] footer .sub-footer ul {
    padding: 0;
}

footer .sub-footer ul li + li {
    margin-left: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

[dir="rtl"] footer .sub-footer ul li + li {
    margin-left: unset !important;
    margin-right: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

@media (max-width: 991px) {
    footer .sub-footer ul li + li {
        margin-left: 10px;
    }

    [dir="rtl"] footer .sub-footer ul li + li {
        margin-right: 10px;
    }
}

footer .sub-footer p {
    text-align: right;
}

[dir="rtl"] footer .sub-footer p {
    text-align: left;
}

@media (max-width: 767px) {
    footer .sub-footer p {
        text-align: center;
    }

    [dir="rtl"] footer .sub-footer p {
        text-align: center;
    }
}

@media (max-width: 575px) {
    .footer-sm-space {
        margin-bottom: 80px;
    }
}

/**=====================
    Cookie section css start
==========================**/
.cookie-bar-section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    background: #e9e9e9;
    position: fixed;
    bottom: 20px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    padding: 10px 15px;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    border-radius: 50px;
    z-index: 99;
    -webkit-box-shadow: 0 4px 7px rgba(33, 37, 41, 0.15);
    box-shadow: 0 4px 7px rgba(33, 37, 41, 0.15);
    opacity: 1;
    -webkit-transition: .5s ease;
    transition: .5s ease;
}

@media (max-width: 767px) {
    .cookie-bar-section {
        bottom: 8px;
        left: unset;
        right: 20px;
        display: block;
        width: 50%;
        margin: 0 auto;
        -webkit-transform: none;
        transform: none;
        border-radius: 5px;
        z-index: 9;
    }
}

@media (max-width: 480px) {
    .cookie-bar-section {
        width: 310px;
    }
}

@media (max-width: 360px) {
    .cookie-bar-section {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        left: 0;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        margin: 0 12px;
    }
}

.cookie-bar-section.flower-cookirbar {
    background-color: #eff2f7;
}

.cookie-bar-section.veg-cookiebar {
    background-color: #672c00;
}

.cookie-bar-section.hide {
    opacity: 0;
    bottom: -350px;
}

.cookie-bar-section img {
    width: 30px;
}

@media (max-width: 767px) {
    .cookie-bar-section img {
        margin-bottom: 16px;
    }
}

@media (max-width: 360px) {
    .cookie-bar-section img {
        width: 40px;
    }
}

.cookie-bar-section .content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media (max-width: 767px) {
    .cookie-bar-section .content {
        display: block;
        text-align: center;
    }
}

.cookie-bar-section .content p {
    text-align: center;
    margin: 0 18px;
    line-height: 1.6;
    letter-spacing: 0.03em;
    color: #e3dcc7 !important;
}

@media (max-width: 767px) {
    .cookie-bar-section .content p {
        margin: 0 0 16px;
    }
}

.cookie-bar-section .content .cookie-buttons button {
    padding: 10px 25px;
    border-radius: 50px;
    text-transform: capitalize;
}

.cookie-bar-section .content .cookie-buttons button:hover {
    color: #fff;
}

@media (max-width: 767px) {
    .cookie-bar-section .content .cookie-buttons button {
        border-radius: 5px;
    }
}

@media (max-width: 360px) {
    .cookie-bar-section .content .cookie-buttons button {
        width: 100%;
    }
}

/**=====================
    Code section css start
==========================**/
.code-section {
    background-image: url(../images/rx/852.png);
    background-position: center;
    background-size: contain;
    height: 100%;
}

.code-section .overlay-color {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 20px 0;
}

.code-section .overlay-color .code-contain {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
    height: 100%;
}

.code-section .overlay-color .code-contain .code-image {
    position: relative;
    margin-right: 25px;
}

[dir="rtl"] .code-section .overlay-color .code-contain .code-image {
    margin-right: unset;
    margin-left: 25px;
}

.code-section .overlay-color .code-contain .code-image img {
    width: 40px;
    -webkit-animation: round 12s infinite linear;
    animation: round 12s infinite linear;
}

.code-section .overlay-color .code-contain .code-image i {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    color: var(--theme-color);
    font-size: 21px;
}

.code-section .overlay-color .code-contain h6 {
    color: #fff;
}

.code-section .overlay-color .code-contain h6 span {
    font-weight: bolder;
}

/**=====================
     brand section css start
==========================**/
.brand-slider {
    margin-bottom: -7px;
}

.zi-1 {
    z-index: 1;
}

.blog-profile {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.blog-profile .image-profile {
    position: relative;
    width: 55px;
    height: 55px;
    overflow: hidden;
    border-radius: 50%;
}

.blog-profile .image-profile img {
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    width: 100%;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
}

.blog-profile .image-name {
    margin-left: 15px;
}

[dir="rtl"] .blog-profile .image-name {
    margin-left: unset;
    margin-right: 15px;
}

.blog-profile .image-name .text-weight h6 {
    font-weight: 300;
}

.blog-profile .image-name h3 {
    position: relative;
    font-size: calc(16px + (18 - 16) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 500;
    margin-bottom: 4px;
}

.blog-profile .image-name h6 {
    color: #6c757d;
    font-size: calc(13px + (14 - 13) * ((100vw - 320px) / (1920 - 320)));
}

.search-section .search-bar .input-group {
    width: 50%;
    margin: 26px auto 110px;
}

.search-section .search-bar button {
    padding: 15px 35px;
    background-color: var(--theme-color);
    color: #fff;
    border: 1px solid var(--theme-colors);
}

.search-section .search-bar button i {
    color: #fff;
}

.search-section .search-bar button.search-button {
    padding: 15px;
}

.search-section .search-bar input:focus {
    border-color: #ced4da;
}

/**=====================
       Social media css start
  ==========================**/
.social-media {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.social-media.media-center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.social-media a + a {
    margin-left: calc(8px + (15 - 8) * ((100vw - 320px) / (1920 - 320)));
}

[dir="rtl"] .social-media a + a {
    margin-left: unset;
    margin-right: calc(8px + (15 - 8) * ((100vw - 320px) / (1920 - 320)));
}

.social-media .social-icon-box {
    width: calc(20px + (30 - 20) * ((100vw - 320px) / (1920 - 320)));
    height: calc(20px + (30 - 20) * ((100vw - 320px) / (1920 - 320)));
    background-color: #212529;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 4px;
}

.social-media .social-icon-box + .social-meida {
    margin-left: calc(6px + (15 - 6) * ((100vw - 320px) / (1920 - 320)));
}

.social-media .social-icon-box.social-color {
    background-color: #eff2f7;
}

@media (max-width: 360px) {
    .social-media .social-icon-box.social-color {
        background-color: var(--theme-color);
    }
}

.social-media .social-icon-box.social-color i {
    color: #212529;
}

@media (max-width: 575px) {
    .social-media .social-icon-box.social-color i {
        font-size: 12px;
    }
}

@media (max-width: 360px) {
    .social-media .social-icon-box.social-color i {
        color: #fff;
    }
}

.social-media .social-icon-box i {
    color: #fff;
}

/**=====================
     Load more css start
  ==========================**/
.load-more {
    text-align: center;
    margin: 40px auto 0;
    width: 280px;
}

.load-more a {
    font-size: 18px;
    text-transform: uppercase;
    display: block;
    padding: 10px 0;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    width: 100%;
    color: var(--theme-color);
}

.product-load-more .col-grid-box {
    display: none;
}

/**=====================
       Log In page Css Start
  ==========================**/
.login-section {
    min-height: 100vh;
    position: relative;
    background: #f0f3f8;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: calc(30px + (50 - 10) * ((100vw - 320px) / (1920 - 320)));
}

.login-section .materialContainer {
    width: 100%;
    max-width: 460px;
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: translate(0);
    transform: translate(0);
}

.login-section .materialContainer .box {
    position: relative;
    top: 0;
    opacity: 1;
    float: left;
    padding: calc(30px + (60 - 30) * ((100vw - 320px) / (1920 - 320))) calc(10px + (30 - 10) * ((100vw - 320px) / (1920 - 320)));
    width: 100%;
    background: #fff;
    border-radius: 10px;
    -webkit-transform: scale(1);
    transform: scale(1);
    z-index: 5;
}

.login-section .materialContainer .box.back {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    top: -20px;
    opacity: 0.8;
    z-index: -1;
}

.login-section .materialContainer .box:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 30px;
    border-radius: 10px;
    top: -10px;
    background-color: rgba(255, 255, 255, 0.6);
    left: 0;
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
}

.login-section .materialContainer .login-title {
    width: 100%;
    line-height: 46px;
    font-size: 34px;
    font-weight: 700;
    letter-spacing: calc(0px + (2 - 0) * ((100vw - 320px) / (1920 - 320)));
    color: var(--theme-color);
    position: relative;
}

.login-section .materialContainer .login-title:before {
    content: "";
    position: absolute;
    width: 5px;
    height: 100%;
    top: 0;
    left: calc(-10px + (-10 - 10) * ((100vw - 320px) / (1920 - 320)));
    background: var(--theme-color);
}

[dir="rtl"] .login-section .materialContainer .login-title:before {
    left: unset;
    right: calc(-10px + (-10 - 10) * ((100vw - 320px) / (1920 - 320)));
}

.login-section .materialContainer .login-title h2 {
    font-size: calc(27px + (28 - 27) * ((100vw - 320px) / (1920 - 320)));
    margin-left: calc(10px + (0 - 10) * ((100vw - 320px) / (1920 - 320)));
    margin-top: -2px;
}

.login-section .materialContainer .social-media {
    padding: 15px calc(10px + (25 - 10) * ((100vw - 320px) / (1920 - 320)));
    border-radius: 4px;
    -webkit-box-shadow: 0 0 10px rgba(199, 199, 197, 0.6);
    box-shadow: 0 0 10px rgba(199, 199, 197, 0.6);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.login-section .materialContainer .social-media h6 {
    margin-left: 20px;
    margin-bottom: -2px;
    color: #fff;
}

[dir="rtl"] .login-section .materialContainer .social-media h6 {
    margin-left: 0;
    margin-right: 20px;
}

.login-section .materialContainer .social-media img {
    width: calc(8% + (18 - 8) * ((100vw - 320px) / (1920 - 320)));
}

.login-section .materialContainer .social-media.fb-media {
    background-color: #43609c;
}

.login-section .materialContainer .social-media.fb-media h6 {
    color: #fff;
    font-size: 18px;
}

.login-section .materialContainer .social-media.google-media {
    color: #000;
}

.login-section .materialContainer .social-media.google-media h6 {
    font-size: 18px;
    color: #000;
}

.login-section .materialContainer p {
    width: 100%;
    float: left;
    text-align: center;
    color: rgba(33, 37, 41, 0.4);
    font-size: calc(13px + (15 - 13) * ((100vw - 320px) / (1920 - 320)));
    margin-top: calc(17px + (23 - 17) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: 0;
}

.login-section .materialContainer p.pass-or {
    margin-top: calc(4px + (12 - 4) * ((100vw - 320px) / (1920 - 320)));
}

.login-section .materialContainer .input {
    -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
}

.login-section .materialContainer .input label, .login-section .materialContainer .input input, .login-section .materialContainer .input .spin {
    -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
}

.login-section .materialContainer .button {
    -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
}

.login-section .materialContainer .button button .button.login button i.fa {
    -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
}

.login-section .materialContainer .material-button .shape:before, .login-section .materialContainer .material-button .shape:after {
    -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
}

.login-section .materialContainer .button.login button {
    -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
}

.login-section .materialContainer .material-button, .login-section .materialContainer .alt-2, .login-section .materialContainer .material-button .shape, .login-section .materialContainer .alt-2 .shape, .login-section .materialContainer .box {
    -webkit-transition: 400ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: 400ms cubic-bezier(0.4, 0, 0.2, 1);
}

.login-section .materialContainer .input {
    width: 100%;
    float: left;
}

.login-section .materialContainer .input label, .login-section .materialContainer .input input, .login-section .materialContainer .input .spin {
    width: 100%;
    float: left;
}

.login-section .materialContainer .button {
    width: 100%;
    float: left;
}

.login-section .materialContainer .button button {
    width: 100%;
    float: left;
}

.login-section .materialContainer .input {
    margin-top: calc(20px + (30 - 20) * ((100vw - 320px) / (1920 - 320)));
    height: 70px;
}

.login-section .materialContainer .input {
    position: relative;
}

.login-section .materialContainer .input input {
    position: relative;
}

.login-section .materialContainer .button {
    position: relative;
}

.login-section .materialContainer .button button {
    position: relative;
}

.login-section .materialContainer .input input {
    height: 60px;
    top: 10px;
    border: none;
    background: transparent;
    font-family: "DM Sans", sans-serif;
    font-size: 18px;
    color: #212529;
    font-weight: 300;
}

.login-section .materialContainer .input label {
    font-family: "DM Sans", sans-serif;
    font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (1920 - 320)));
    color: rgba(33, 37, 41, 0.8);
    font-weight: 300;
}

.login-section .materialContainer .input label.email-label {
    font-size: calc(15px + (24 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.login-section .materialContainer .button button {
    font-family: "DM Sans", sans-serif;
    font-size: 24px;
    color: rgba(33, 37, 41, 0.8);
    font-weight: 300;
}

.login-section .materialContainer .input:before, .login-section .materialContainer .input .spin {
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
}

[dir="rtl"] .login-section .materialContainer .input:before, [dir="rtl"] .login-section .materialContainer .input .spin {
    left: unset;
    right: 0;
}

.login-section .materialContainer .input:before {
    content: "";
    background: rgba(33, 37, 41, 0.15);
    z-index: 3;
}

.login-section .materialContainer .input .spin {
    background: var(--theme-color);
    z-index: 4;
    width: 0;
}

.login-section .materialContainer .overbox .input .spin {
    background: #fff;
}

.login-section .materialContainer .overbox .input:before {
    background: rgba(255, 255, 255, 0.5);
}

.login-section .materialContainer .input label {
    position: absolute;
    top: 10px;
    left: 0;
    z-index: 2;
    cursor: pointer;
    line-height: 60px;
    color: #777777;
}

.login-section .materialContainer .button {
    margin-top: 20px;
    margin: calc(15px + (20 - 15) * ((100vw - 320px) / (1920 - 320))) 0;
    overflow: hidden;
    z-index: 2;
}

.login-section .materialContainer .button.button-1 {
    margin-bottom: 0;
}

.login-section .materialContainer .button.login button {
    width: 100%;
    left: 0%;
    background-color: var(--theme-color);
    border: 1px solid var(--theme-color);
    font-weight: 900;
    font-size: 18px;
    color: #fff;
    padding: calc(13px + (18 - 13) * ((100vw - 320px) / (1920 - 320)));
    border-radius: 4px;
}

.login-section .materialContainer .button.login button span {
    display: block;
    margin-top: -3px;
}

.login-section .materialContainer .button button {
    width: 100%;
    left: 0%;
    background-color: transparent;
    border: 1px solid rgba(33, 37, 41, 0.1);
    font-weight: 900;
    font-size: 18px;
    color: rgba(33, 37, 41, 0.2);
    padding: calc(13px + (18 - 13) * ((100vw - 320px) / (1920 - 320)));
}

.login-section .materialContainer .button button {
    background-color: #fff;
    color: var(--theme-color);
    border: none;
}

.login-section .materialContainer .button.login button.active {
    border: 1px solid transparent;
    color: #fff !important;
    background-color: var(--theme-color);
}

.login-section .materialContainer .button.login button.active span {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
    display: none;
}

.login-section .materialContainer .button.login button.active i.fa {
    opacity: 1;
    -webkit-transform: scale(1) rotate(0deg);
    transform: scale(1) rotate(0deg);
    display: block;
}

.login-section .materialContainer .button.login button i.fa {
    width: 100%;
    height: 100%;
    position: relative;
    top: 0;
    left: 0;
    font-size: 18px;
    -webkit-transform: scale(0) rotate(-45deg);
    transform: scale(0) rotate(-45deg);
    display: none;
}

.login-section .materialContainer .button button {
    cursor: pointer;
    position: relative;
    z-index: 2;
}

.login-section .materialContainer .pass-forgot {
    width: 100%;
    float: right;
    text-align: right;
    color: rgba(33, 37, 41, 0.4);
    font-size: calc(13px + (15 - 13) * ((100vw - 320px) / (1920 - 320)));
    margin: 10px auto 0;
}

.login-section .materialContainer .pass-forgot:hover {
    color: var(--theme-color);
}

.login-section .materialContainer .sign-category {
    width: 100%;
    text-align: center;
    color: rgba(33, 37, 41, 0.4);
    font-size: calc(13px + (18 - 13) * ((100vw - 320px) / (1920 - 320)));
    margin: 10px auto;
    position: relative;
}

.login-section .materialContainer .sign-category span {
    background-color: #fff;
    z-index: 1;
    padding: 0 12px;
}

.login-section .materialContainer .sign-category::after {
    content: "";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    width: 100%;
    height: 1px;
    color: rgba(33, 37, 41, 0.2);
    z-index: -1;
}

.login-section .materialContainer .overbox {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    overflow: inherit;
    border-radius: 10px;
    padding: 60px 50px 40px 50px;
}

.login-section .materialContainer .overbox .login-title, .login-section .materialContainer .overbox .button, .login-section .materialContainer .overbox .input {
    z-index: 111;
    position: relative;
    color: #fff !important;
    display: none;
}

.login-section .materialContainer .overbox .login-title {
    width: 80%;
}

.login-section .materialContainer .overbox .input {
    margin-top: 20px;
}

.login-section .materialContainer .overbox .input input, .login-section .materialContainer .overbox .input label {
    color: #fff;
}

.login-section .materialContainer .overbox .material-button, .login-section .materialContainer .overbox .alt-2 {
    display: block;
}

.login-section .materialContainer .overbox .material-button .shape, .login-section .materialContainer .overbox .alt-2 .shape {
    display: block;
}

.login-section .materialContainer .material-button, .login-section .materialContainer .alt-2 {
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background: var(--theme-color);
    position: absolute;
    top: 40px;
    right: -70px;
    cursor: pointer;
    z-index: 100;
    -webkit-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
}

.login-section .materialContainer .material-button .shape, .login-section .materialContainer .alt-2 .shape {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

.login-section .materialContainer .material-button .shape:before, .login-section .materialContainer .alt-2 .shape:before, .login-section .materialContainer .material-button .shape:after, .login-section .materialContainer .alt-2 .shape:after {
    content: "";
    position: absolute;
    background: #fff;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.login-section .materialContainer .material-button .shape:before, .login-section .materialContainer .alt-2 .shape:before {
    width: 25px;
    height: 4px;
}

.login-section .materialContainer .material-button .shape:after, .login-section .materialContainer .alt-2 .shape:after {
    height: 25px;
    width: 4px;
}

.login-section .materialContainer .material-button.active, .login-section .materialContainer .alt-2.active {
    top: 50%;
    right: 50%;
    -webkit-transform: translate(50%, -50%) rotate(0deg);
    transform: translate(50%, -50%) rotate(0deg);
}

/**=====================
       404 Page Css Start
  ==========================**/
.page-not-found .page-image {
    text-align: center;
}

.page-not-found .page-image img {
    width: 60%;
}

.page-not-found .page-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    padding: 0 calc(0px + (50 - 0) * ((100vw - 320px) / (1920 - 320)));
    margin-top: calc(10px + (20 - 10) * ((100vw - 320px) / (1920 - 320)));
}

.page-not-found .page-container h2 {
    margin-bottom: calc(15px + (20 - 15) * ((100vw - 320px) / (1920 - 320)));
    color: #212529;
    font-size: calc(25px + (35 - 25) * ((100vw - 320px) / (1920 - 320)));
    margin-top: -3px;
}

.page-not-found .page-container p {
    font-size: 16px;
    line-height: 1.6;
    color: #7e7e7e;
}

/**=====================
       Contact Page Css Start
  ==========================**/
.contact-section .materialContainer {
    width: 100%;
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: translate(0);
    transform: translate(0);
}

.contact-section .materialContainer .material-details h2 {
    margin-top: -5px;
}

.contact-section .materialContainer .material-details h4 {
    margin-top: 10px;
    font-weight: 400;
    color: #78909c;
    line-height: 1.5;
    font-size: calc(16px + (18 - 16) * ((100vw - 320px) / (1920 - 320)));
}

.contact-section .materialContainer .box {
    position: relative;
    top: 0;
    opacity: 1;
    float: left;
    width: 100%;
    background: #fff;
    border-radius: 10px;
    -webkit-transform: scale(1);
    transform: scale(1);
    z-index: 5;
}

.contact-section .materialContainer .input {
    -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
}

.contact-section .materialContainer .input label, .contact-section .materialContainer .input input, .contact-section .materialContainer .input textarea, .contact-section .materialContainer .input .spin {
    -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
    transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
}

.contact-section .materialContainer .input {
    margin-top: calc(20px + (30 - 20) * ((100vw - 320px) / (1920 - 320)));
    height: 70px;
}

.contact-section .materialContainer .input {
    position: relative;
}

.contact-section .materialContainer .input input {
    position: relative;
}

.contact-section .materialContainer .input textarea {
    position: relative;
    width: 100%;
}

.contact-section .materialContainer .input input, .contact-section .materialContainer .input textarea {
    height: 60px;
    top: 10px;
    border: none;
    background: transparent;
    font-family: "DM Sans", sans-serif;
    font-size: 18px;
    color: rgba(33, 37, 41, 0.8);
    font-weight: 300;
}

.contact-section .materialContainer .input label {
    font-family: "DM Sans", sans-serif;
    font-size: calc(13px + (18 - 13) * ((100vw - 320px) / (1920 - 320)));
    color: rgba(33, 37, 41, 0.8);
    font-weight: 300;
}

.contact-section .materialContainer .input label.email-label {
    font-size: calc(15px + (24 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.contact-section .materialContainer .input:before, .contact-section .materialContainer .input .spin {
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
}

.contact-section .materialContainer .input:before {
    content: "";
    background: rgba(33, 37, 41, 0.1);
    z-index: 3;
}

.contact-section .materialContainer .input .spin {
    background: var(--theme-color);
    z-index: 4;
    width: 0;
}

.contact-section .materialContainer .input label {
    position: absolute;
    top: 10px;
    left: 0;
    z-index: 2;
    cursor: pointer;
    line-height: 60px;
    color: #78909c;
}

.contact-section .location-map iframe {
    width: 100%;
    height: calc(200px + (340 - 200) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: -6px;
}

.contact-section .contact-details {
    background-color: #eff2f7;
    height: 100%;
    padding: calc(21px + (30 - 21) * ((100vw - 320px) / (1920 - 320)));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.contact-section .contact-details h2 {
    font-weight: 500;
    margin-top: -3px;
    margin-bottom: 10px;
    font-size: calc(18px + (24 - 18) * ((100vw - 320px) / (1920 - 320)));
}

.contact-section .contact-details h5 {
    font-weight: 400;
    margin-bottom: 30px;
}

.contact-section .contact-details .contact-box {
    margin-top: 25px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.contact-section .contact-details .contact-box .contact-title {
    width: calc(80% - 80px);
    margin-left: calc(10px + (20 - 10) * ((100vw - 320px) / (1920 - 320)));
}

[dir="rtl"] .contact-section .contact-details .contact-box .contact-title {
    margin-left: unset;
    margin-right: calc(10px + (20 - 10) * ((100vw - 320px) / (1920 - 320)));
}

@media (max-width: 991px) {
    .contact-section .contact-details .contact-box .contact-title {
        width: calc(100% - 80px);
    }
}

.contact-section .contact-details .contact-box .contact-title h4 {
    margin-bottom: 10px;
    font-weight: 500;
}

.contact-section .contact-details .contact-box .contact-title p {
    margin-bottom: 0;
    letter-spacing: 0.6px;
    line-height: 26px;
}

.contact-section .contact-details .contact-box .contact-title p + p {
    margin-top: 0;
    margin-bottom: -2px;
}

.contact-section .contact-details .contact-box .contact-icon {
    width: calc(35px + (45 - 35) * ((100vw - 320px) / (1920 - 320)));
    height: calc(35px + (45 - 35) * ((100vw - 320px) / (1920 - 320)));
    border-radius: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
}

.contact-section .contact-details .contact-box .contact-icon .feather {
    width: calc(16px + (18 - 16) * ((100vw - 320px) / (1920 - 320)));
    stroke: var(--theme-color);
}

.contact-section .contact-details .contact-box .contact-icon:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: var(--theme-color);
    opacity: 0.12;
    border-radius: 100%;
}

/**=====================
       FAQ Page Css Start
  ==========================**/
.search-title {
    margin-bottom: calc(30px + (50 - 30) * ((100vw - 320px) / (1920 - 320)));
    text-align: center;
}

.search-title h1 {
    font-size: calc(30px + (50 - 30) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 500;
    display: block;
    margin-top: -10px;
    text-transform: none;
}

.faq-section {
    margin-top: -160px;
}

.faq-section .faq-contain {
    text-align: center;
    padding: calc(22px + (40 - 22) * ((100vw - 320px) / (1920 - 320)));
    border-radius: 10px;
    height: 100%;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    z-index: 1;
    background-color: #fff;
    -webkit-box-shadow: 0 8px 40px 0 rgba(33, 37, 41, 0.1);
    box-shadow: 0 8px 40px 0 rgba(33, 37, 41, 0.1);
}

.faq-section .faq-contain .faq-image {
    width: 60px;
    height: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 auto;
}

.faq-section .faq-contain .faq-image img {
    -o-object-fit: contain;
    object-fit: contain;
}

.faq-section .faq-contain h2 {
    margin-top: calc(18px + (20 - 18) * ((100vw - 320px) / (1920 - 320)));
    font-size: calc(20px + (22 - 20) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 500;
    color: #212529;
}

.faq-section .faq-contain h5 {
    color: #7e7e7e;
    font-weight: 300;
    margin-top: 10px;
    line-height: 1.6;
    margin-bottom: -2px;
    margin: 0 auto -2px;
    letter-spacing: 0.03em;
}

.faq-details .faq-link-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    position: sticky;
    top: 30px;
}

.faq-details .faq-link-box ul li {
    display: block;
}

.faq-details .faq-link-box a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    position: relative;
    padding-bottom: 12px;
    padding-top: 12px;
    color: #212529;
}

.faq-details .faq-link-box a:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    bottom: 0;
    left: 0;
    background-color: rgba(120, 144, 174, 0.23);
}

@media (max-width: 575px) {
    .faq-details .faq-link-box a:after {
        opacity: 0;
    }
}

.faq-details .faq-link-box a h4 {
    font-weight: 200;
    font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.faq-details .faq-link-box a h5 {
    font-size: calc(15px + (16 - 15) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 200;
    margin-left: 10px;
}

[dir="rtl"] .faq-details .faq-link-box a h5 {
    margin-left: 0;
    margin-right: 10px;
}

.faq-details .faq-link-box a + a {
    margin-top: 15px;
}

.faq-heading {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.faq-heading + .faq-heading {
    margin-top: calc(30px + (45 - 30) * ((100vw - 320px) / (1920 - 320)));
}

.faq-heading .feather {
    width: calc(20px + (22 - 20) * ((100vw - 320px) / (1920 - 320)));
    height: auto;
    margin-top: -3px;
}

.faq-heading .faq-option {
    margin-left: 10px;
    width: calc(100% - 0px);
}

[dir="rtl"] .faq-heading .faq-option {
    margin-left: 0;
    margin-right: 10px;
}

.faq-heading .faq-option h3 {
    font-size: calc(16px + (20 - 16) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 400;
    margin-top: -5px;
    margin-bottom: 0;
    line-height: 1.5;
}

.faq-heading .faq-option h6 {
    font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
    line-height: 1.6;
    letter-spacing: 0.05em;
    margin-bottom: -4px;
    margin-top: 10px;
}

/**=====================
       Review Page Css Start
  ==========================**/
.review-section .review-box {
    position: relative;
    padding: calc(20px + (35 - 20) * ((100vw - 320px) / (1920 - 320)));
    background-color: #fff;
    -webkit-box-shadow: 0 0 8px rgba(33, 37, 41, 0.08);
    box-shadow: 0 0 8px rgba(33, 37, 41, 0.08);
    border-radius: 7px;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    overflow: hidden;
}

.review-section .review-box:hover {
    -webkit-box-shadow: 0 0 12px rgba(0, 0, 0, 0.1);
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.1);
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
}

.review-section .review-box:hover .review-image .fa-quote-left {
    opacity: 0.04;
}

.review-section .review-box:hover .review-image .fa-quote-right {
    opacity: 0.04;
}

.review-section .review-box .review-image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.review-section .review-box .review-image .fa-quote-left {
    font-size: 170px;
    position: absolute;
    top: -27px;
    left: -12px;
    -webkit-transform: rotate(-9deg);
    transform: rotate(-9deg);
    color: var(--theme-color);
    opacity: 0.03;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
}

.review-section .review-box .review-image .fa-quote-right {
    font-size: 170px;
    position: absolute;
    bottom: -27px;
    right: -12px;
    -webkit-transform: rotate(-9deg);
    transform: rotate(-9deg);
    color: var(--theme-color);
    opacity: 0.03;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
}

.review-section .review-box .review-image .review-profile {
    position: relative;
    width: calc(40px + (50 - 40) * ((100vw - 320px) / (1920 - 320)));
    height: calc(40px + (50 - 40) * ((100vw - 320px) / (1920 - 320)));
    overflow: hidden;
    border-radius: 50%;
}

.review-section .review-box .review-image .review-profile img {
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.review-section .review-box .review-image .rating {
    margin-top: 0;
}

.review-section .review-box .review-image .rating .fa-star {
    font-size: 14px;
}

.review-section .review-box .review-image .image-name {
    margin-left: calc(5px + (10 - 5) * ((100vw - 320px) / (1920 - 320)));
}

[dir="rtl"] .review-section .review-box .review-image .image-name {
    margin-left: 0;
    margin-right: calc(5px + (10 - 5) * ((100vw - 320px) / (1920 - 320)));
}

.review-section .review-box .review-image .image-name h3 {
    position: relative;
    font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 600;
    margin: 0 0 4px;
}

.review-section .review-box .review-image .image-name p {
    color: #6c757d;
    margin-bottom: -3px;
    font-size: calc(14px + (15 - 14) * ((100vw - 320px) / (1920 - 320)));
}

.review-section .review-box .review-name p {
    margin-top: -4px;
    margin-bottom: 0;
    color: #6c757d;
    letter-spacing: 0.05em;
    line-height: 1.5;
    font-size: 14px;
    margin-bottom: 20px;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
    text-align: justify;
    word-break: normal;
    line-height: 1.6;
}

.review-section .review-box .review-name p + p {
    margin: 20px 0;
}

/**=====================
       Portfolio Page Css Start
  ==========================**/
.portfolio .peregraph {
    text-align: center;
    color: var(--darkgrey);
    margin: 0 auto;
    width: 90%;
    padding: 15px 0;
}

.portfolio .peregraph p {
    margin: 0;
    padding: 0;
}

.portfolio .button ul {
    list-style: none;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.portfolio .button ul li {
    display: inline-block;
    font-weight: bold;
    font-size: 15px;
    border: 2px solid transparent;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    font-size: calc(16px + (20 - 16) * ((100vw - 320px) / (1920 - 320)));
    background-color: transparent;
    font-weight: 300;
    color: #7e7e7e;
    border-radius: 5px;
    padding: calc(8px + (10 - 8) * ((100vw - 320px) / (1920 - 320))) calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.portfolio .button ul li h4 {
    margin-top: -3px;
    margin-bottom: -4px;
}

.portfolio .button ul li.btn-submit:hover {
    color: var(--theme-color);
}

.portfolio .button ul li.active {
    color: #fff;
    background-color: var(--theme-color);
}

.portfolio .button ul li.active:hover {
    color: #fff;
}

.portfolio .parent-container {
    position: relative;
    overflow: hidden;
}

.portfolio .parent-container-size .images {
    width: 100%;
    height: 500px;
    -o-object-fit: cover;
    object-fit: cover;
}

.portfolio .parent-container .images {
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    width: 100%;
}

.portfolio .parent-container:hover .overlay-color {
    top: 0;
    opacity: 1;
}

.portfolio .parent-container:hover .overlay-color .overlay-icon {
    opacity: 1;
}

.portfolio .parent-container .overlay-color {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    opacity: 0;
    padding: 20px;
}

.portfolio .parent-container .overlay-color .overlay-icon {
    background-color: #fff;
    color: #212529;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transition: 0.8s ease;
    transition: 0.8s ease;
    width: 100%;
    height: 100px;
    padding: 20px;
    border-radius: 4px;
    position: relative;
    opacity: 0;
}

.portfolio .parent-container .overlay-color .overlay-icon h3 {
    font-size: calc(20px + (25 - 20) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 600;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    position: relative;
}

.portfolio .parent-container .overlay-color .overlay-icon p {
    margin-top: 5px;
    margin-bottom: 0;
}

.portfolio .card {
    border: none;
    background-color: #fff;
}

/**=====================
       Blog Page Css Start
  ==========================**/
.blog-section .blog-image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: rgba(240, 243, 248, 0.5);
    padding-right: 35px;
    border-radius: 5px;
    overflow: hidden;
}

@media (max-width: 991px) {
    .blog-section .blog-image {
        display: block;
    }
}

.blog-section .blog-image img {
    width: 400px;
    height: 400px;
    -o-object-fit: cover;
    object-fit: cover;
}

@media (max-width: 991px) {
    .blog-section .blog-image img {
        width: 100%;
        height: auto;
    }
}

.blog-section .blog-image .blog-details {
    margin-left: 50px;
}

@media (max-width: 991px) {
    .blog-section .blog-image .blog-details {
        margin-left: 0;
        padding: calc(20px + (36 - 20) * ((100vw - 320px) / (1920 - 320))) calc(10px + (20 - 10) * ((100vw - 320px) / (1920 - 320)));
    }
}

.blog-section .blog-image .blog-details h5 {
    margin-bottom: calc(6px + (12 - 6) * ((100vw - 320px) / (1920 - 320)));
    margin-top: -3px;
    font-size: calc(13px + (19 - 13) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 600;
}

.blog-section .blog-image .blog-details h5 span {
    font-weight: 300;
    font-size: 13px;
}

.blog-section .blog-image .blog-details h2 {
    color: #212529;
    font-weight: 500;
    font-size: calc(22px + (36 - 22) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: calc(6px + (12 - 6) * ((100vw - 320px) / (1920 - 320)));
    line-height: 1.2;
    letter-spacing: 1px;
}

@media (max-width: 360px) {
    .blog-section .blog-image .blog-details h2 {
        line-height: 1;
    }
}

.blog-section .blog-image .blog-details p {
    line-height: 1.5;
    font-size: calc(13px + (16 - 13) * ((100vw - 320px) / (1920 - 320)));
    letter-spacing: calc(0px + (1 - 0) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: calc(10px + (12 - 10) * ((100vw - 320px) / (1920 - 320)));
}

.blog-section .blog-image .blog-details .blog-profile {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-left: 15px;
}

@media (max-width: 991px) {
    .blog-section .blog-image .blog-details .blog-profile {
        margin-left: 0;
    }
}

.blog-section .blog-image .blog-details .blog-profile .fa-quote-left {
    font-size: 170px;
    position: absolute;
    top: -27px;
    left: -12px;
    -webkit-transform: rotate(-9deg);
    transform: rotate(-9deg);
    color: var(--theme-color);
    opacity: 0.03;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
}

.blog-section .blog-image .blog-details .blog-profile .fa-quote-right {
    font-size: 170px;
    position: absolute;
    bottom: -27px;
    right: -12px;
    -webkit-transform: rotate(-9deg);
    transform: rotate(-9deg);
    color: var(--theme-color);
    opacity: 0.03;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
}

.blog-section .blog-image .blog-details .blog-profile .image-profile {
    position: relative;
    width: 55px;
    height: 55px;
    overflow: hidden;
    border-radius: 50%;
}

.blog-section .blog-image .blog-details .blog-profile .image-profile img {
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    width: 100%;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
}

.blog-section .blog-image .blog-details .blog-profile .image-name {
    margin-left: 15px;
}

.blog-section .blog-image .blog-details .blog-profile .image-name h3 {
    position: relative;
    font-size: 20px;
    margin-top: -6px;
    font-weight: 500;
    margin-bottom: 4px;
}

.blog-section .blog-image .blog-details .blog-profile .image-name span {
    color: #6c757d;
    margin-bottom: -3px;
    font-size: calc(14px + (18 - 14) * ((100vw - 320px) / (1920 - 320)));
}

.blog-section .blog-image .blog-details .review-name p {
    margin-top: -4px;
    margin-bottom: 0;
    color: #6c757d;
    font-size: 16px;
    letter-spacing: 0.7px;
    line-height: 1.5;
    font-size: calc(12px + (14 - 12) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: 20px;
}

.blog-section .blog-image .blog-details .review-name p + p {
    margin: 20px 0;
}

.blog-categority {
    padding: 0;
    border: none;
    background-color: #fff;
}

.blog-categority.box-bottom {
    margin-bottom: 14px;
}

.blog-categority .blog-img {
    border-radius: 5px;
    position: relative;
    overflow: hidden;
}

.blog-categority .blog-img:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: var(--theme-color);
    opacity: 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.blog-categority .card-body {
    padding: 0;
    margin-top: 20px;
    background-color: #fff;
}

[dir="rtl"] .blog-categority .card-body {
    direction: rtl;
}

.blog-categority .card-body h5 {
    color: var(--theme-color);
    margin-bottom: 6px;
}

.blog-categority .card-body h2 {
    font-weight: 500;
    line-height: 1.3;
    font-size: 16px;
    margin-bottom: 16px;
    color: #212529;
}

.blog-categority .card-body .blog-profile {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.blog-categority .card-body .blog-profile .image-profile {
    position: relative;
    width: 45px;
    height: 45px;
    overflow: hidden;
    border-radius: 50%;
}

.blog-categority .card-body .blog-profile .image-profile img {
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    width: 100%;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
}

.blog-categority .card-body .blog-profile .image-name {
    margin-left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

[dir="rtl"] .blog-categority .card-body .blog-profile .image-name {
    margin-right: 0;
}

.blog-categority .card-body .blog-profile .image-name h3 {
    position: relative;
    font-size: 16px;
    margin-top: 0;
    margin-bottom: 0;
    color: #7e7e7e;
    font-weight: 400;
    padding-right: 10px;
    border-right: 1px solid #ddd;
    margin-right: 10px;
}

[dir="rtl"] .blog-categority .card-body .blog-profile .image-name h3 {
    padding-right: 0;
    padding-left: 10px;
    border-left: 1px solid #ddd;
    border-right: none;
    margin-right: 0;
    margin-left: 10px;
}

.blog-categority .card-body .blog-profile .image-name h6 {
    color: #7e7e7e;
    margin-bottom: 0;
    font-size: 16px;
    font-weight: 400;
}

.blog-categority .card-body .review-name p {
    margin-top: -4px;
    margin-bottom: 0;
    color: #6c757d;
    font-size: 16px;
    letter-spacing: 0.7px;
    line-height: 1.5;
    font-size: calc(12px + (14 - 12) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: 20px;
}

.blog-categority .card-body .review-name p + p {
    margin: 20px 0;
}

.blog-categority:hover .blog-img:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: var(--theme-color);
    opacity: 0.5;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.masonary-blog-section {
    position: relative;
    overflow: hidden;
}

.masonary-blog-section .peregraph {
    text-align: center;
    color: var(--darkgrey);
    margin: 0 auto;
    width: 90%;
    padding: 15px 0;
}

.masonary-blog-section .peregraph p {
    margin: 0;
    padding: 0;
}

.masonary-blog-section .button ul {
    list-style: none;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.masonary-blog-section .button ul li {
    display: inline-block;
    font-weight: bold;
    font-size: 15px;
    border: 2px solid transparent;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    font-size: calc(16px + (18 - 16) * ((100vw - 320px) / (1920 - 320)));
    background-color: transparent;
    font-weight: 300;
    color: #7e7e7e;
}

.masonary-blog-section .button ul li:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 2px;
    background-color: var(--theme-color);
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease;
}

.masonary-blog-section .button ul li h4 {
    margin-top: -3px;
    margin-bottom: -4px;
}

.masonary-blog-section .button ul li.btn-submit:hover {
    color: var(--theme-color);
}

.masonary-blog-section .button ul li.active {
    color: var(--theme-color);
}

.masonary-blog-section .button ul li.active:after {
    width: 100%;
}

.masonary-blog-section .masonary-blog {
    border-radius: 8px;
    -webkit-box-shadow: 0 5px 15px rgba(33, 37, 41, 0.08);
    box-shadow: 0 5px 15px rgba(33, 37, 41, 0.08);
    border: none;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
}

@media (max-width: 991px) {
    .masonary-blog-section .masonary-blog {
        display: block;
    }
}

.masonary-blog-section .masonary-blog.box-shadow {
    -webkit-box-shadow: 0 5px 10px rgba(35, 35, 35, 0.08);
    box-shadow: 0 5px 10px rgba(35, 35, 35, 0.08);
}

.masonary-blog-section .masonary-blog .bg-size {
    width: 30%;
}

@media (max-width: 991px) {
    .masonary-blog-section .masonary-blog .bg-size {
        width: 100%;
    }
}

.masonary-blog-section .masonary-blog img {
    width: 100%;
}

.masonary-blog-section .masonary-blog img.image-fit {
    height: 350px;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-box-shadow: 0 5px 10px rgba(35, 35, 35, 0.05);
    box-shadow: 0 5px 10px rgba(35, 35, 35, 0.05);
}

.masonary-blog-section .masonary-blog .card-body {
    padding: calc(20px + (25 - 20) * ((100vw - 320px) / (1920 - 320)));
}

.masonary-blog-section .masonary-blog .card-body-width {
    width: 70%;
}

@media (max-width: 991px) {
    .masonary-blog-section .masonary-blog .card-body {
        width: 100%;
    }
}

.masonary-blog-section .masonary-blog .card-body.quote-body {
    text-align: center;
}

.masonary-blog-section .masonary-blog .card-body .quote-image {
    width: 60px;
    height: auto;
    display: block;
    opacity: 0.2;
    margin: 0 auto;
    margin-bottom: calc(25px + (40 - 25) * ((100vw - 320px) / (1920 - 320)));
}

.masonary-blog-section .masonary-blog .card-body span {
    margin-bottom: 16px;
    margin-top: -3px;
    display: block;
}

.masonary-blog-section .masonary-blog .card-body .masonary-name {
    letter-spacing: 1.2px;
    margin-bottom: 6px;
    color: var(--theme-color);
}

.masonary-blog-section .masonary-blog .card-body h2 {
    font-weight: 400;
    line-height: 1.4;
    font-size: calc(16px + (24 - 16) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: 6px;
    color: #212529;
}

.masonary-blog-section .masonary-blog .card-body h2.quote-head {
    font-size: calc(16px + (18 - 16) * ((100vw - 320px) / (1920 - 320)));
    letter-spacing: 1.1px;
}

.masonary-blog-section .masonary-blog .card-body p {
    letter-spacing: .06em;
    line-height: 1.6;
    font-weight: 400;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-top: 15px;
}

.masonary-blog-section .masonary-blog .card-body .blog-profile {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-top: 1px solid #eaeaea;
    padding-top: 16px;
    margin-top: 20px;
}

.masonary-blog-section .masonary-blog .card-body .blog-profile.box-center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.masonary-blog-section .masonary-blog .card-body .blog-profile .image-profile {
    position: relative;
    width: 50px;
    height: 50px;
    overflow: hidden;
    border-radius: 50%;
}

.masonary-blog-section .masonary-blog .card-body .blog-profile .image-profile img {
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    width: 100%;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
}

.masonary-blog-section .masonary-blog .card-body .blog-profile .image-name {
    margin-left: 15px;
}

.masonary-blog-section .masonary-blog .card-body .blog-profile .image-name h3 {
    position: relative;
    font-size: 17px;
    margin: 0 0 5px 0;
    font-weight: 500;
    color: #212529;
}

.masonary-blog-section .masonary-blog .card-body .blog-profile .image-name h3 span {
    font-weight: 400;
    display: revert;
    color: var(--theme-color);
}

.masonary-blog-section .masonary-blog .card-body .blog-profile .image-name h6 {
    color: #6c757d;
    font-size: 14px;
}

.masonary-blog-section .masonary-blog .card-body .review-name p {
    margin-top: -4px;
    margin-bottom: 0;
    color: #6c757d;
    font-size: 16px;
    letter-spacing: 0.7px;
    line-height: 1.5;
    font-size: calc(12px + (14 - 12) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: 20px;
}

.masonary-blog-section .masonary-blog .card-body .review-name p + p {
    margin: 20px 0;
}

.popular-post .popular-title {
    margin-bottom: calc(15px + (24 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.popular-post .popular-title h2 {
    font-size: calc(22px + (35 - 22) * ((100vw - 320px) / (1920 - 320)));
}

.popular-post .popular-image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-right: 10px;
}

[dir="rtl"] .popular-post .popular-image {
    padding-right: unset;
}

.popular-post .popular-image img {
    width: 100px;
    height: 100px;
    -o-object-fit: cover;
    object-fit: cover;
}

.popular-post .popular-image .popular-contain {
    margin-left: 15px;
}

.popular-post .popular-image .popular-contain h5 {
    font-size: calc(16px + (19 - 16) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: 10px;
    font-weight: 400;
    margin-top: -3px;
}

.popular-post .popular-image .popular-contain p {
    margin-bottom: -1px;
    font-weight: 400;
}

.popular-post .popular-image .popular-contain p span {
    font-weight: 600;
}

.popular-post .popular-details p {
    line-height: 1.8;
}

.popular-title {
    margin-bottom: 30px;
    background-color: #eff2f7;
    padding: 16px 20px;
}

.popular-title.minus-spacing {
    margin-bottom: 0;
}

.popular-title h3 {
    font-weight: 500;
    font-size: 16px;
}

.left-side {
    position: sticky;
}

.left-side .popular-post {
    padding: 20px;
    border: 1px solid #ddd;
    color: #212529;
    border-radius: 5px;
}

.left-side .popular-post .review-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 2px -2px -2px -2px;
}

.left-side .popular-post .review-box span {
    font-size: 13px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-weight: 300;
    margin: 2px;
}

.left-side .popular-post .review-box span .feather {
    width: 15px;
    margin-right: 5px;
}

[dir="rtl"] .left-side .popular-post .review-box span .feather {
    margin-right: unset;
    margin-left: 5px;
}

.left-side .popular-post .popular-image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.left-side .popular-post .popular-image + .popular-image {
    margin-top: 30px;
}

.left-side .popular-post .popular-image .popular-number {
    border-radius: 7px;
    width: 55px;
}

[dir="rtl"] .left-side .popular-post .popular-image .popular-number {
    width: unset;
    margin-left: 15px;
}

.left-side .popular-post .popular-image .popular-number h4 {
    font-size: 30px;
    font-weight: 400;
    line-height: 1;
    margin-top: -4px;
}

@media (max-width: 1199px) {
    .left-side .popular-post .popular-image .popular-number h4 {
        font-size: 20px;
    }
}

.left-side .popular-post .popular-image img {
    width: 100px;
    height: 100px;
    -o-object-fit: cover;
    object-fit: cover;
}

.left-side .popular-post .popular-image .popular-contain {
    margin-left: 15px;
}

.left-side .popular-post .popular-image .popular-contain h3 {
    font-size: calc(14px + (15 - 14) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: 5px;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: -0.3px;
    margin-top: -3px;
}

.left-side .popular-post .popular-image .popular-contain p {
    margin-bottom: -1px;
    font-weight: 400;
}

.left-side .popular-post .popular-image .popular-contain p span {
    font-weight: 600;
}

.left-side .popular-post .popular-details p {
    line-height: 1.8;
}

.left-side .popular-post .popular-details .social-media {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media (max-width: 767px) {
    .left-side .popular-post .popular-details .social-media {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.left-side .popular-post .popular-details .social-media .social-icon-box {
    width: 30px;
    height: 30px;
    background-color: #212529;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 4px;
}

.left-side .popular-post .popular-details .social-media .social-icon-box + .social-icon-box {
    margin-left: 15px;
}

.left-side .popular-post .popular-details .social-media .social-icon-box i {
    color: #fff;
}

.left-side .category-section .category-box {
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    display: block;
}

.left-side .category-section .category-box + .category-box {
    margin-top: 5px;
}

.left-side .category-section .category-box:hover {
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.left-side .category-section .category-box:hover .category-product {
    background-color: #f0f3f8;
}

.left-side .category-section .category-box:hover .category-product .cate-shape {
    background-color: var(--theme-color);
}

.left-side .category-section .category-box:hover .category-product .cate-shape i {
    color: #fff !important;
}

.left-side .category-section .category-box:hover .category-product .cate-contain h5 {
    color: #212529;
    font-weight: 500;
}

.left-side .category-section .category-box .category-product {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 5px;
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
}

.left-side .category-section .category-box .category-product .cate-shape {
    width: 40px;
    height: 40px;
    border-radius: 6px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.left-side .category-section .category-box .category-product .cate-shape i {
    font-size: 16px;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.left-side .category-section .category-box .category-product .cate-contain {
    margin-left: 15px;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

[dir="rtl"] .left-side .category-section .category-box .category-product .cate-contain {
    margin-left: unset;
    margin-right: 15px;
}

.left-side .category-section .category-box .category-product .cate-contain h5 {
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    color: #212529;
    font-weight: 300;
}

.left-side .category-section .category-box:hover .category-product .cate-shape i {
    color: var(--theme-color);
}

.left-side .category-section .category-box:hover .category-product .cate-contain h5 {
    color: var(--theme-color);
}

.left-side .tag-section .button-tags {
    display: inline-block;
    margin: 2px 0;
}

.blog-details {
    border-radius: 8px;
    border: none;
    overflow: hidden;
    display: block;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
}

@media (max-width: 767px) {
    .blog-details {
        margin-top: 30px;
    }
}

.blog-details .blog-image-box {
    position: relative;
}

.blog-details .blog-image-box img {
    width: 100%;
}

.blog-details .blog-image-box .blog-title {
    position: absolute;
    bottom: 20px;
    right: 20px;
    padding: 15px;
    background: #fff;
    border-radius: 6px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
}

@media (max-width: 575px) {
    .blog-details .blog-image-box .blog-title {
        padding: 6px;
        bottom: 10px;
        right: 10px;
        background-color: transparent;
    }
}

.blog-details .blog-image-box .blog-title .blog-contain {
    margin-top: calc(15px + (25 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.blog-details .blog-image-box .blog-title .blog-contain h4 {
    font-weight: 300;
    margin-bottom: 10px;
}

@media (max-width: 360px) {
    .blog-details .blog-image-box .blog-title .blog-contain h4 {
        display: none;
    }
}

.blog-details .blog-image-box .blog-title .blog-contain h2 {
    font-size: calc(16px + (28 - 16) * ((100vw - 320px) / (1920 - 320)));
}

.blog-details .blog-detail-contain {
    padding: 0 0 calc(20px + (25 - 20) * ((100vw - 320px) / (1920 - 320))) 0;
    margin-top: 40px;
}

.blog-details .blog-detail-contain span {
    margin-bottom: 16px;
    margin-top: -5px;
    display: block;
}

.blog-details .blog-detail-contain h2 {
    font-weight: 400;
    line-height: 1.2;
    font-size: calc(18px + (27 - 18) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: 16px;
    margin-top: -8px;
}

.blog-details .blog-detail-contain p {
    letter-spacing: 0.05em;
    line-height: 1.6;
    font-weight: 400;
    margin-bottom: 0;
    text-align: justify;
}

.blog-details .blog-detail-contain p + p {
    margin-top: calc(15px + (25 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.blog-details .blog-detail-contain p.firt-latter::first-letter {
    float: left;
    font-size: 75px;
    line-height: 60px;
    padding-top: 4px;
    padding-right: 15px;
    padding-left: 3px;
    color: #212529;
}

.blog-details .blog-detail-contain .blog-profile {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.blog-details .blog-detail-contain .blog-profile .image-profile {
    position: relative;
    width: 55px;
    height: 55px;
    overflow: hidden;
    border-radius: 50%;
}

.blog-details .blog-detail-contain .blog-profile .image-profile img {
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
    width: 100%;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
}

.blog-details .blog-detail-contain .blog-profile .image-name {
    margin-left: 15px;
}

.blog-details .blog-detail-contain .blog-profile .image-name h3 {
    position: relative;
    font-size: calc(17px + (20 - 17) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 500;
    margin-bottom: 4px;
}

.blog-details .blog-detail-contain .blog-profile .image-name h6 {
    color: #6c757d;
    font-size: calc(13px + (15 - 13) * ((100vw - 320px) / (1920 - 320)));
}

.blog-details .blog-detail-contain .review-name p {
    margin-top: -4px;
    margin-bottom: 0;
    color: #6c757d;
    font-size: 16px;
    letter-spacing: 0.7px;
    line-height: 1.5;
    font-size: calc(12px + (14 - 12) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: 20px;
}

.blog-details .blog-detail-contain .review-name p + p {
    margin: 20px 0;
}

.leave-comments .form-control {
    background-color: #f0f3f8;
    border: none;
}

.leave-comments .form-control:focus {
    border-color: transparent;
}

.block-shadow-space {
    padding-bottom: calc(80px - 14px);
}

/**=====================
       Pagination Css Start
  ==========================**/
.page-section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    margin-top: 50px;
}

.page-section .pagination {
    margin-bottom: 0;
}

[dir="rtl"] .page-section .pagination .page-item .page-link span i {
    -webkit-transform: rotate(-180deg);
    transform: rotate(-180deg);
}

.page-section .pagination .page-item + .page-item {
    margin-left: 10px;
}

[dir="rtl"] .page-section .pagination .page-item + .page-item {
    margin-left: unset;
    margin-right: 10px;
}

.page-section .pagination .page-item.active .page-link {
    border-radius: 5px;
    background-color: var(--theme-color);
    color: #fff;
    font-weight: 600;
    z-index: 0;
}

.page-section .pagination .page-item .page-link {
    border: 1px solid transparent;
    color: var(--theme-color);
    border-radius: 5px;
    background-color: #fff;
}

.page-section .pagination .page-item .page-link:hover {
    background-color: #eff2f7;
    color: var(--theme-color);
}

.page-section .pagination .page-item .page-link:focus {
    background-color: transparent;
    -webkit-box-shadow: none;
    box-shadow: none;
}

/**=====================
       Cart Page Scss Start
  ==========================**/
.wish-list-section.table-dashboard thead tr th {
    padding: 16px 12px;
}

.wish-list-section.table-dashboard tbody tr td {
    padding: 16px;
}

.wish-list-section .count-down {
    margin-bottom: 20px;
    background: #f0f3f8;
    padding: 10px;
    letter-spacing: 1.1px;
    margin-bottom: 25px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #212529;
}

@media (max-width: 767px) {
    .wish-list-section .count-down {
        display: block;
        text-align: center;
    }
}

.wish-list-section .count-down h5 {
    margin-right: 10px;
}

@media (max-width: 767px) {
    .wish-list-section .count-down h5 {
        margin-right: 0;
    }
}

.wish-list-section.shopping-button {
    display: block;
}

.wish-list-section.shopping-button .fas {
    margin-right: 10px;
}

.table tbody + tbody {
    border-top: none;
}

.cart-buttons {
    padding-top: 35px;
}

.cart-buttons > div:last-child {
    text-align: right;
    padding-right: 59px;
    padding-right: 38px;
}

@media (max-width: 767px) {
    .wishlist-table thead tr th:nth-child(n + 3) {
        display: none;
    }
}

@media (max-width: 767px) {
    .wishlist-table tbody tr td:nth-child(n + 3) {
        display: none;
    }

    .wishlist-table tbody tr td .mobile-cart-content .col {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.cart-table {
    overflow: hidden;
    margin-bottom: 0;
}

.cart-table thead th {
    border-bottom-width: 1px;
    font-weight: 600;
    color: #212529;
    text-transform: uppercase;
    font-size: 14px;
    border-top: 0;
    text-align: center;
    padding: 12px;
    border-bottom: 1px solid #eff2f7 !important;
    background-color: #eff2f7;
}

.cart-table tbody h2 {
    margin-bottom: 0;
}

.cart-table tbody tr td {
    vertical-align: middle;
    color: #777777;
    border-top: 0;
    border-bottom: 1px solid #eff2f7 !important;
    text-align: center;
    padding: 14px 8px;
}

.cart-table tbody tr td a {
    white-space: nowrap;
    font-weight: 400;
    font-size: 14px;
    text-transform: capitalize;
    margin-bottom: 0;
    display: inline-block;
}

.cart-table tbody tr td a.icon {
    background-color: #eff2f7;
    border: 1px solid #eff2f7;
    margin: 0 5px;
}

@media (max-width: 767px) {
    .cart-table tbody tr td a.icon {
        margin: 0;
    }
}

.cart-table tbody tr td a.icon:hover .fas {
    color: var(--theme-color);
}

.cart-table tbody tr td a.icon .fas {
    width: calc(25px + (35 - 25) * ((100vw - 320px) / (1920 - 320)));
    height: calc(25px + (35 - 25) * ((100vw - 320px) / (1920 - 320)));
    font-size: calc(12px + (14 - 12) * ((100vw - 320px) / (1920 - 320)));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 3px;
}

.cart-table tbody tr td a img {
    height: 70px;
}

.cart-table tbody tr td p {
    color: #212529;
    white-space: nowrap;
    font-weight: 400;
    font-size: 14px;
    text-transform: capitalize;
    margin-bottom: 0;
}

.cart-table tbody tr td p img {
    height: 90px;
}

.cart-table tbody tr td .td-color {
    color: var(--theme-deafult);
}

.cart-table tbody tr td h2 {
    font-size: 20px;
    color: #212529;
    font-weight: 400;
}

.cart-table tbody tr td .mobile-cart-content {
    display: none;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 10px;
}

@media (max-width: 767px) {
    .cart-table tbody tr td .mobile-cart-content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }
}

.cart-table tbody tr td .mobile-cart-content .qty-box {
    border-radius: 5px;
}

.cart-table tbody tr td .mobile-cart-content .qty-box .input-group .form-control {
    width: 48px;
    padding: 6px;
}

.cart-table tbody tr td .mobile-cart-content .col {
    -ms-flex-item-align: center;
    align-self: center;
    margin: 10px 0;
}

@media (max-width: 767px) {
    .cart-table tbody tr td .mobile-cart-content .col {
        margin: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        white-space: nowrap;
    }
}

.cart-table tbody tr td .mobile-cart-content h2 {
    font-size: 20px;
    margin-left: 10px;
}

.cart-table tbody tr td .qty-box .input-group {
    display: block;
}

.cart-table tbody tr td .qty-box .input-group .form-control {
    width: 75px;
    margin: 0 auto;
    text-align: center;
}

tfoot tr th {
    padding-top: 35px;
    text-align: right;
}

tfoot tr td {
    padding-top: 35px;
    padding-bottom: 0;
    text-align: right;
    border: none;
    padding-right: 63px;
    padding-right: 41px;
}

tfoot tr td h2 {
    font-size: 20px;
    margin-bottom: 0;
    font-weight: 400;
    text-align: center;
}

tfoot tr td:first-child {
    width: 85%;
    font-size: 15px;
    padding-right: 10px;
    text-transform: capitalize;
    font-weight: 700;
}

.left-side-button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.left-side-button a {
    border-radius: 5px;
}

.left-side-button a i {
    margin-right: 6px;
}

@media (max-width: 767px) {
    .left-side-button {
        text-align: center;
    }
}

@media (max-width: 767px) {
    .left-side-button .shopping-button {
        width: 100%;
        text-align: center;
    }
}

.cart-section .count-down {
    margin-bottom: 5px;
    padding: 0;
    letter-spacing: 1.1px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #212529;
}

@media (max-width: 767px) {
    .cart-section .count-down {
        display: block;
        text-align: center;
    }
}

.cart-section .count-down h5 {
    margin-right: 10px;
}

[dir="rtl"] .cart-section .count-down h5 {
    margin-right: unset;
    margin-left: 10px;
}

@media (max-width: 767px) {
    .cart-section .count-down h5 {
        margin-right: 0;
        margin-bottom: 13px;
    }
}

.cart-section .table tbody + tbody {
    border-top: none;
}

.cart-section .cart-buttons {
    padding-top: 35px;
}

.cart-section .cart-buttons > div:last-child {
    text-align: right;
    padding-right: 59px;
    padding-right: 38px;
}

.cart-section .cart-table {
    overflow: hidden;
    margin-bottom: 0;
}

.cart-section .cart-table thead th {
    border-bottom-width: 1px;
    font-weight: 600;
    color: #212529;
    text-transform: uppercase;
    font-size: 15px;
    border-top: 0;
    text-align: center;
    border-bottom: 1px solid #eff2f7 !important;
    padding: 12px;
    background-color: #eff2f7;
}

@media (max-width: 767px) {
    .cart-section .cart-table thead th:nth-last-child(-n + 4) {
        display: none;
    }
}

.cart-section tbody h2 {
    margin-bottom: 0;
}

.cart-section tbody tr.table-order td {
    min-width: 150px;
}

.cart-section tbody tr td {
    vertical-align: middle;
    color: #212529;
    border-top: 0;
    border-bottom: 1px solid #c7c7c5 !important;
    text-align: center;
    min-width: 175px;
}

@media (max-width: 767px) {
    .cart-section tbody tr td:nth-last-child(-n + 4) {
        display: none;
    }
}

.cart-section tbody tr td a {
    color: #7e7e7e;
    font-weight: 400;
    font-size: 14px;
    text-transform: capitalize;
    margin-bottom: 0;
}

.cart-section tbody tr td a.icon {
    border: 1px solid rgba(169, 169, 169, 0.5);
    padding: 10px 15px;
    border-radius: 3px;
}

.cart-section tbody tr td a img {
    height: 80px;
}

.cart-section tbody tr td p {
    color: #777777;
    font-weight: 400;
    font-size: 14px;
    text-transform: capitalize;
    margin-bottom: 0;
}

.cart-section tbody tr td p img {
    height: 90px;
}

.cart-section tbody tr td .td-color {
    color: var(--theme-deafult);
}

.cart-section tbody tr td h2 {
    font-size: 20px;
    color: var(--theme-color);
    font-weight: 400;
}

.cart-section tbody tr td .mobile-cart-content {
    display: none;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 10px;
}

@media (max-width: 767px) {
    .cart-section tbody tr td .mobile-cart-content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }
}

.cart-section tbody tr td .mobile-cart-content .qty-box {
    border-radius: 5px;
}

.cart-section tbody tr td .mobile-cart-content .qty-box .input-group .form-control {
    width: 48px;
    padding: 6px;
}

.cart-section tbody tr td .mobile-cart-content .col {
    -ms-flex-item-align: center;
    align-self: center;
    margin: 10px 0;
}

@media (max-width: 767px) {
    .cart-section tbody tr td .mobile-cart-content .col {
        margin: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.cart-section tbody tr td .mobile-cart-content h2 {
    font-size: 20px;
}

.cart-section tbody tr td .qty-box .input-group {
    display: block;
}

.cart-section tbody tr td .qty-box .input-group .form-control {
    width: 75px;
    margin: 0 auto;
    text-align: center;
    padding: 5px;
    height: 50px;
}

.cart-section tfoot tr th {
    padding-top: 35px;
    text-align: right;
}

.cart-section tfoot tr td {
    padding-top: 35px;
    padding-bottom: 0;
    text-align: right;
    border: none;
    padding-right: 63px;
    padding-right: 41px;
}

.cart-section tfoot tr td h2 {
    font-size: 20px;
    margin-bottom: 0;
    font-weight: 400;
    text-align: center;
}

.cart-section tfoot tr td:first-child {
    width: 85%;
    font-size: 15px;
    padding-right: 10px;
    text-transform: capitalize;
    font-weight: 700;
}

.cart-section .left-side-button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

[dir="rtl"] .cart-section .left-side-button a i {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

@media (max-width: 767px) {
    .cart-section .left-side-button {
        text-align: center;
    }
}

@media (max-width: 767px) {
    .cart-section .left-side-button .shopping-button {
        width: 100%;
        text-align: center;
    }
}

.cart-section .cart-checkout-section {
    margin-top: 30px;
}

.cart-section .cart-checkout-section .promo-section .input-group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.cart-section .cart-checkout-section .promo-section .input-group .form-control {
    padding: 12px 20px;
}

.cart-section .cart-checkout-section .checkout-button {
    text-align: right;
}

[dir="rtl"] .cart-section .cart-checkout-section .checkout-button {
    text-align: left;
}

.cart-section .cart-checkout-section .checkout-button a {
    border-radius: 5px;
}

.cart-section .cart-checkout-section .cart-box {
    background-color: #eff2f7;
    border-radius: 10px;
    overflow: hidden;
    padding: 0;
}

.cart-section .cart-checkout-section .cart-box label {
    font-weight: 500;
    margin-bottom: 8px;
    text-transform: capitalize;
}

.cart-section .cart-checkout-section .cart-box .cart-box-details .total-details span {
    float: right;
}

[dir="rtl"] .cart-section .cart-checkout-section .cart-box .cart-box-details .total-details span {
    float: left;
}

.cart-section .cart-checkout-section .cart-box .cart-box-details .total-details .top-details {
    border-bottom: 1px solid #c7c7c5;
    padding: 22px;
    margin-bottom: 0;
}

.cart-section .cart-checkout-section .cart-box .cart-box-details .total-details .top-details h3 {
    margin-bottom: 10px;
    color: #212529;
}

.cart-section .cart-checkout-section .cart-box .cart-box-details .total-details .top-details h6 {
    line-height: 1.9;
    color: #212529;
}

.cart-section .cart-checkout-section .cart-box .cart-box-details .total-details .bottom-details a {
    background-color: var(--theme-color);
    width: 100%;
    display: block;
    padding: 12px 0;
    text-align: center;
    color: #fff;
    font-weight: 500;
    letter-spacing: 1.2px;
}

/**=====================
       Checkout Page Scss Start
  ==========================**/
.your-cart-box {
    position: sticky;
    top: 10px;
}

.your-cart-box .list-group .lh-condensed {
    padding: 15px 25px;
    background-color: #fff;
}

.your-cart-box .list-group .lh-condensed.active {
    background: #eff2f7;
    border-color: rgba(33, 37, 41, 0.125);
}

.your-cart-box .list-group .lh-condensed h6 {
    color: #212529;
}

.your-cart-box .list-group .lh-condensed small, .your-cart-box .list-group .lh-condensed span, .your-cart-box .list-group .lh-condensed strong {
    color: #7e7e7e;
}

.your-cart-box .list-group .card {
    border: none;
}

.your-cart-box .new-badge {
    border-radius: 50% !important;
    padding: 8px;
    line-height: 0;
    font-size: 13px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 25px;
    height: 25px;
}

.your-cart-box .custome-imput-group .form-control {
    padding: 6px 12px;
}

.custome-form-select {
    padding: 12px 20px;
}

.checkout-label {
    padding-top: 2px;
}

.custome-radio-box {
    display: inline-block;
    margin-right: 10px;
}

[dir="rtl"] .custome-radio-box {
    margin-right: 0;
    margin-left: 10px;
}

.custome-radio-box .form-check-input {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    margin-top: 2px;
    background-color: #fff;
}

.custome-radio-box .form-check-input:checked {
    background-color: var(--theme-color);
    border-color: var(--theme-color);
}

.custome-radio-box .form-check-input:active {
    -webkit-filter: none;
    filter: none;
}

.custome-radio-box .form-check-input:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
}

hr {
    background-color: #6c757d;
}

/**=====================
       Order Success css Start
  ==========================**/
.success-icon {
    padding: 70px 20px;
    background-color: #f0f3f8;
}

@media (max-width: 575px) {
    .success-icon {
        padding: 30px 20px;
    }
}

.success-icon .main-container {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    align-items: center;
}

.success-icon .main-container .check-container {
    width: 100px;
    height: 120px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
    -webkit-animation: mover 1s infinite alternate;
    animation: mover 1s infinite alternate;
}

.success-icon .main-container .check-container .check-background {
    width: 100%;
    height: calc(100% - 20px);
    background: -webkit-gradient(linear, left top, right bottom, from(#008000), to(#008000));
    background: linear-gradient(to bottom right, #008000, #008000);
    -webkit-box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
    box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
    -webkit-transform: scale(0.84);
    transform: scale(0.84);
    border-radius: 50%;
    -webkit-animation: animateContainer 0.75s ease-out forwards 0.75s;
    animation: animateContainer 0.75s ease-out forwards 0.75s;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    opacity: 0;
}

.success-icon .main-container .check-container .check-background svg {
    width: 65%;
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
    stroke-dasharray: 80;
    stroke-dashoffset: 80;
    -webkit-animation: animateCheck 0.35s forwards 1.25s ease-out;
    animation: animateCheck 0.35s forwards 1.25s ease-out;
}

.success-icon .main-container .check-container .check-shadow {
    bottom: calc(-15% - 5px);
    left: 0;
    border-radius: 50%;
    background: radial-gradient(closest-side, #49da83, transparent);
    -webkit-animation: animateShadow 0.75s ease-out forwards 0.75s;
    animation: animateShadow 0.75s ease-out forwards 0.75s;
}

.success-icon .success-contain {
    text-align: center;
}

.success-icon .success-contain h4 {
    color: green;
    font-size: 30px;
    font-weight: 500;
}

.success-icon .success-contain h5 {
    margin: 5px 0 10px;
    font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.success-icon .success-contain h6 {
    letter-spacing: 1.1px;
}

.order-left-box {
    position: relative;
    text-align: center;
}

.order-left-box:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 1px;
    height: 100%;
    background-color: #ddd;
}

.order-left-box:nth-child(4)::after {
    width: 0;
}

@media (max-width: 991px) {
    .order-left-box:nth-child(2)::after {
        width: 0;
    }
}

.order-details-table .table tbody {
    border-bottom: 1px solid #ddd;
}

.order-details-table .table tbody tr td {
    padding: 10px;
    text-align: left;
    max-width: 150px;
    border-bottom: none !important;
    color: #7e7e7e;
}

[dir="rtl"] .order-details-table .table tbody tr td {
    text-align: right;
}

@media (max-width: 767px) {
    .order-details-table .table tbody tr td:nth-last-child(-n + 4) {
        display: revert !important;
    }
}

.order-details-table .table tbody tr td:nth-child(1) {
    background-color: transparent;
}

.order-details-table .table tbody tr td h5 {
    margin-top: 10px;
    color: #212529;
}

.order-details-table .table tfoot tr td {
    text-align: right;
    padding: 10px 15px;
}

[dir="rtl"] .order-details-table .table tfoot tr td {
    text-align: left;
}

.order-details-table .table tfoot tr td:nth-child(1) {
    text-align: left;
    width: 100%;
}

[dir="rtl"] .order-details-table .table tfoot tr td:nth-child(1) {
    text-align: right;
}

.order-details-table .table tfoot tr td h4 {
    font-weight: 400;
    color: #212529;
}

.order-details-table .table tfoot tr.table-order:nth-child(3) {
    border-bottom: 1px solid #ddd;
}

.order-details-table .order-success {
    padding: 30px;
    border-radius: 5px;
    background-color: #eff2f7;
}

@media (max-width: 360px) {
    .order-details-table .order-success {
        padding: 20px;
    }
}

.order-details-table .order-success h4 {
    font-weight: 700;
    text-transform: capitalize;
    font-size: 16px;
    margin-bottom: 8px;
}

.order-details-table .order-success .order-details li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-transform: capitalize;
    line-height: 1.6;
    font-size: 15px;
    margin-bottom: 3px;
    color: #7e7e7e;
}

.order-details-table .order-success .payment-mode p {
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 0;
    color: #7e7e7e;
    letter-spacing: 1px;
}

.order-details-table .order-success .delivery-sec {
    margin-bottom: -5px;
    padding: 0;
    margin-top: 20px;
    background-color: transparent;
}

.order-details-table .order-success .delivery-sec h3 {
    color: #212529;
    text-transform: capitalize;
    font-size: 18px;
    margin-bottom: 0;
    font-weight: 400;
}

.order-details-table .order-success .delivery-sec h3 span {
    font-weight: 700;
    margin-left: 5px;
}

[dir="rtl"] .order-details-table .order-success .delivery-sec h3 span {
    margin-left: 0;
    margin-right: 5px;
}

.order-details-table .order-success .delivery-sec a {
    font-size: 16px;
    text-transform: capitalize;
    margin-top: 5px;
    display: block;
    font-weight: 600;
}

/**=======================
   Dashboard Scss Start
  ============================**/
.dash-filter {
    margin-bottom: 40px;
}

.custome-nav-tabs {
    padding: 20px;
    color: black;
    border: none;
    border-radius: 5px;
    position: sticky;
    top: 10px;
    background: #eff2f7;
}

[dir="rtl"] .custome-nav-tabs {
    padding: 20px;
}

@media (max-width: 991px) {
    .custome-nav-tabs {
        position: fixed;
        z-index: 9;
        top: 0;
        left: -300px;
        width: 300px;
        height: 100%;
        z-index: 1;
        border-radius: 0;
        -webkit-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out;
    }

    .custome-nav-tabs.show {
        left: 0;
    }
}

.custome-nav-tabs .nav-item .nav-link {
    width: 100%;
    text-align: left;
    border-radius: 5px;
    background: transparent;
    border: 1px solid transparent;
    position: relative;
    font-size: 16px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    color: #212529 !important;
}

[dir="rtl"] .custome-nav-tabs .nav-item .nav-link {
    text-align: right;
}

.custome-nav-tabs .nav-item .nav-link i {
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

[dir="rtl"] .custome-nav-tabs .nav-item .nav-link i {
    top: 3px;
    left: unset;
    right: 0;
    -webkit-transform: rotate(180deg) translateY(-50%);
    transform: rotate(180deg) translateY(-50%);
}

.custome-nav-tabs .nav-item .nav-link:before {
    content: "\f101";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    opacity: 0;
}

[dir="rtl"] .custome-nav-tabs .nav-item .nav-link:before {
    left: unset;
    right: 0;
    top: 0;
    -webkit-transform: rotate(180deg) translateY(-50%);
    transform: rotate(180deg) translateY(-50%);
}

.custome-nav-tabs .nav-item .nav-link:hover {
    padding-left: 20px;
    color: var(--theme-color) !important;
}

[dir="rtl"] .custome-nav-tabs .nav-item .nav-link:hover {
    padding-left: 0;
    padding-right: 20px;
}

.custome-nav-tabs .nav-item .nav-link:hover:before {
    opacity: 1;
    left: 0px;
}

[dir="rtl"] .custome-nav-tabs .nav-item .nav-link:hover:before {
    left: unset;
    right: 0;
}

.custome-nav-tabs .nav-item .nav-link.active {
    padding-left: 20px;
    color: var(--theme-color) !important;
    font-weight: 600;
}

[dir="rtl"] .custome-nav-tabs .nav-item .nav-link.active {
    padding-left: 0;
    padding-right: 20px;
}

.custome-nav-tabs .nav-item .nav-link.active:before {
    opacity: 1;
    left: 0px;
}

[dir="rtl"] .custome-nav-tabs .nav-item .nav-link.active:before {
    left: unset;
    right: 0;
    top: 0;
    -webkit-transform: rotate(180deg) translateY(-50%);
    transform: rotate(180deg) translateY(-50%);
}

.page-title {
    margin-bottom: 32px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.page-title h2 {
    font-size: 28px;
    margin-top: -3px;
    color: #212529;
}

.page-title a {
    margin-left: 30px;
}

.box-head {
    margin-bottom: 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.box-head h2 {
    font-size: 25px;
    letter-spacing: 1.1px;
}

.box-head a {
    margin-left: 20px;
}

[dir="rtl"] .box-head a {
    margin-left: unset;
    margin-right: 20px;
}

.dashboard {
    background-color: transparent;
    padding: 0 15px;
    border: none;
    border-radius: 6px;
}

.dashboard .page-title {
    margin-bottom: calc(22px + (32 - 22) * ((100vw - 320px) / (1920 - 320)));
}

.dashboard .page-title h2 {
    font-size: calc(22px + (38 - 22) * ((100vw - 320px) / (1920 - 320)));
}

.dashboard address a {
    display: block;
    margin-bottom: -5px;
    margin-top: 10px;
}

.dashboard .welcome-msg p {
    letter-spacing: 0.3px;
    margin-bottom: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
    line-height: 1.5;
}

.dashboard .welcome-msg h6 {
    letter-spacing: 1.5px;
}

.dashboard .welcome-msg h6 span {
    font-weight: 600;
    color: #212529;
}

.dashboard .box-account {
    margin-top: calc(25px + (45 - 25) * ((100vw - 320px) / (1920 - 320)));
}

.dashboard .box-account .box-content {
    margin: 10px 0;
}

.dashboard .box-account .box-content h4 {
    margin: 15px 0;
}

.dashboard .address-box {
    margin-top: calc(5px + (20 - 5) * ((100vw - 320px) / (1920 - 320)));
}

.dashboard .box-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    border-bottom: 1px solid #ddd;
    padding: calc(4px + (8 - 4) * ((100vw - 320px) / (1920 - 320))) 0;
}

.dashboard .box-title h3 {
    font-weight: 400;
}

.dashboard h6, .dashboard p {
    margin: 6px 0;
    line-height: 1.4;
}

.order-box-contain .order-box {
    position: relative;
    overflow: hidden;
    padding: 20px 30px;
    border-radius: 6px;
    background-color: #eff2f7;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.order-box-contain .order-box .order-box-image {
    position: absolute;
    top: 50%;
    right: -20px;
    width: 25%;
    opacity: 0.04;
    -webkit-transform: rotate(0) translateY(-50%);
    transform: rotate(0) translateY(-50%);
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

[dir="rtl"] .order-box-contain .order-box .order-box-image {
    left: -20px;
    right: unset;
}

.order-box-contain .order-box:hover .order-box-image {
    -webkit-transform: rotate(-7deg) translateY(-50%);
    transform: rotate(-7deg) translateY(-50%);
    opacity: 0.25;
}

[dir="rtl"] .order-box-contain .order-box:hover .order-box-image {
    -webkit-transform: rotate(7deg) translateY(-50%);
    transform: rotate(7deg) translateY(-50%);
}

.order-box-contain .order-box .order-box-contain {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.order-box-contain .order-box .order-box-contain img {
    width: calc(40px + (50 - 40) * ((100vw - 320px) / (1920 - 320)));
}

.order-box-contain .order-box .order-box-contain > div {
    width: calc(100% - 20px);
    margin-left: 15px;
    text-transform: capitalize;
}

[dir="rtl"] .order-box-contain .order-box .order-box-contain > div {
    margin-left: unset;
    margin-right: 15px;
}

.order-box-contain .order-box .order-box-contain > div h3 {
    margin-top: 6px;
}

.dashboard-profile .dash-profile li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 2px;
}

@media (max-width: 575px) {
    .dashboard-profile .dash-profile li {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.dashboard-profile .dash-profile li .left {
    width: 220px;
}

@media (max-width: 575px) {
    .dashboard-profile .dash-profile li .left {
        width: auto;
        margin-right: 10px;
    }

    [dir="rtl"] .dashboard-profile .dash-profile li .left {
        margin-right: 0;
        margin-left: 10px;
    }
}

.dashboard-profile .dash-profile li .left h6 {
    margin: 0;
}

.dashboard-profile .dash-profile li a {
    margin-left: 20px;
}

[dir="rtl"] .dashboard-profile .dash-profile li a {
    margin-left: unset;
    margin-right: 20px;
}

.dashboard-security .page-title {
    margin-bottom: 10px;
}

.dashboard-security p {
    line-height: 1.6;
    letter-spacing: 0.05em;
}

.dashboard-security .security-details {
    margin-bottom: 18px;
}

.dashboard-security .security-details h5 span {
    font-weight: 500;
    color: #212529;
}

.dashboard-security .security-details-1 {
    border: 1px dashed rgba(0, 0, 0, 0.28);
    border-radius: 5px;
    padding: 15px;
}

.success-button {
    background-color: green;
    margin: 0 !important;
    padding: 4px 10px;
    border-radius: 5px;
    font-size: 12px !important;
    color: #fff !important;
}

.danger-button {
    background-color: var(--theme-color);
    margin: 0 !important;
    padding: 4px 10px;
    border-radius: 5px;
    font-size: 12px !important;
    color: #fff !important;
}

.danger-button.danger-center {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center !important;
    -ms-flex-align: center !important;
    align-items: center !important;
    -webkit-box-pack: center !important;
    -ms-flex-pack: center !important;
    justify-content: center !important;
    margin: 0 !important;
}

.danger-button.danger-center .feather {
    stroke: #fff;
}

.save-details-box .save-details {
    border: 1px solid #eff2f7;
    padding: calc(15px + (20 - 15) * ((100vw - 320px) / (1920 - 320)));
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    border-radius: 5px;
    background-color: #eff2f7;
    position: relative;
}

.save-details-box .save-details.show {
    -webkit-box-shadow: 0 0px 10px rgba(33, 37, 41, 0.2);
    box-shadow: 0 0px 10px rgba(33, 37, 41, 0.2);
}

.save-details-box .save-details .save-name {
    position: relative;
    margin-bottom: 20px;
}

.save-details-box .save-details .save-name h5 {
    color: #212529;
}

.save-details-box .save-details .save-position {
    position: absolute;
    background-color: var(--theme-color);
    top: 0;
    right: 0;
    color: #fff;
    padding: 8px 15px;
    border-radius: 4px;
}

[dir="rtl"] .save-details-box .save-details .save-position {
    right: unset;
    left: 0;
}

.save-details-box .save-details .save-position h6 {
    margin: 0;
    margin-bottom: -2px;
    font-weight: 500;
}

.save-details-box .save-details .save-address p {
    line-height: 1.4;
    letter-spacing: 1px;
    margin: 0 0 calc(2px + (5 - 2) * ((100vw - 320px) / (1920 - 320)));
}

.save-details-box .save-details .mobile p.mobile {
    margin-top: 20px;
    padding-bottom: 6px;
}

.save-details-box .save-details .button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: -5px;
}

.save-details-box .save-details .button a {
    width: 100%;
    margin: 5px;
    background-color: #fff;
    color: #212529;
}

.payment-card-detail {
    position: relative;
}

.payment-card-detail:hover .edit-card {
    opacity: 1;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.payment-card-detail.add-card {
    background-color: #f9f9f9;
    cursor: pointer;
    padding: 0;
}

.payment-card-detail.add-card .card-details {
    min-height: 130px;
    background: #d2d2d2;
    color: #212529;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
}

.payment-card-detail.add-card .card-details h5 {
    margin-bottom: 0;
    text-transform: capitalize;
}

.payment-card-detail .card-details {
    color: #fff;
    padding: 30px 20px;
    border-radius: 5px;
    background-color: #4b77a0;
    background-image: repeating-linear-gradient(45deg, rgba(255, 255, 255, 0) 1px, rgba(255, 255, 255, 0.03) 2px, rgba(255, 255, 255, 0.04) 3px, rgba(255, 255, 255, 0.05) 4px), -webkit-linear-gradient(-245deg, rgba(255, 255, 255, 0) 40%, rgba(255, 255, 255, 0.2) 70%, rgba(255, 255, 255, 0) 90%);
}

.payment-card-detail .card-details.card-visa {
    background-color: #777876;
}

.payment-card-detail .card-details.dabit-card {
    background-color: #86b8cf;
}

.payment-card-detail .card-details .card-number {
    margin-bottom: 10px;
}

.payment-card-detail .card-details .card-number h4 {
    color: #fff;
}

.payment-card-detail .card-details .valid-detail {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: calc(10px + (20 - 10) * ((100vw - 320px) / (1920 - 320)));
}

.payment-card-detail .card-details .valid-detail .title {
    margin-bottom: 0;
}

.payment-card-detail .card-details .valid-detail .title span {
    display: block;
    color: rgba(255, 255, 255, 0.7);
    text-transform: uppercase;
    font-size: 12px;
    line-height: 1.3;
}

.payment-card-detail .card-details .valid-detail .date h3 {
    margin-bottom: 0;
    color: #fff;
    margin-left: 15px;
    font-size: calc(16px + (18 - 16) * ((100vw - 320px) / (1920 - 320)));
    font-weight: normal;
}

[dir="rtl"] .payment-card-detail .card-details .valid-detail .date h3 {
    margin-left: 0;
    margin-right: 15px;
}

.payment-card-detail .card-details .valid-detail .primary {
    margin-left: auto;
}

[dir="rtl"] .payment-card-detail .card-details .valid-detail .primary {
    margin-left: 0;
    margin-right: auto;
}

.payment-card-detail .card-details .valid-detail .primary span {
    font-size: calc(12px + (14 - 12) * ((100vw - 320px) / (1920 - 320)));
    padding: 0;
    font-weight: 400;
    text-transform: capitalize;
}

.payment-card-detail .card-details .name-detail {
    margin-top: calc(10px + (25 - 10) * ((100vw - 320px) / (1920 - 320)));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.payment-card-detail .card-details .name-detail .name {
    width: 100%;
}

.payment-card-detail .card-details .name-detail .name h5 {
    text-transform: uppercase;
    font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
    margin-bottom: 0;
    color: #fff;
}

.payment-card-detail .card-details .name-detail .card-img {
    display: inline-block;
    margin-left: auto;
    text-align: right;
}

[dir="rtl"] .payment-card-detail .card-details .name-detail .card-img {
    text-align: left;
}

.payment-card-detail .edit-card {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    position: absolute;
    text-align: center;
    top: 0;
    left: 0;
    background-color: rgba(33, 37, 41, 0.8);
    border-radius: 5px;
    opacity: 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

@media (max-width: 767px) {
    .payment-card-detail .edit-card {
        display: none;
    }
}

.payment-card-detail .edit-card a {
    padding: 0 10px;
    text-transform: capitalize;
    color: #fff;
}

.edit-card-mobile {
    display: none;
}

@media (max-width: 767px) {
    .edit-card-mobile {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin-top: 10px;
    }

    .edit-card-mobile a {
        padding: 0 10px;
        text-transform: capitalize;
        color: #212529;
    }
}

/**============================
    Order Tracking css Start
  =================================**/
.tracker-title {
    font-size: 28px;
    letter-spacing: 1.2px;
    margin: 0;
    font-weight: 500;
}

@media (max-width: 360px) {
    .tracker-title {
        font-size: 26px;
        line-height: 1.5;
    }
}

.tracker-number p {
    margin-bottom: 10px;
    letter-spacing: 1.2px;
}

.tracker-number p span {
    font-weight: 500;
    margin-left: 10px;
    color: #212529;
}

.progtrckr {
    margin: 40px 0 15px;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

@media (max-width: 575px) {
    .progtrckr {
        display: block;
        margin: 30px 0;
    }
}

.progtrckr li {
    display: inline-block;
    text-align: center;
    margin: 10px 0;
}

@media (max-width: 575px) {
    .progtrckr li {
        margin: 0;
        width: 50% !important;
    }
}

.progtrckr li h5 {
    margin-top: 20px;
    text-align: center;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-weight: 500;
}

@media (max-width: 575px) {
    .progtrckr li h5 {
        display: block;
        text-align: left;
        margin-top: 0;
    }

    [dir="rtl"] .progtrckr li h5 {
        text-align: right;
    }
}

.progtrckr li:before {
    position: relative;
    top: -2px;
    float: left;
    left: 50% !important;
    line-height: 1;
    -webkit-transform: translate(-50%, -50%) !important;
    transform: translate(-50%, -50%) !important;
}

@media (max-width: 575px) {
    .progtrckr li:before {
        position: relative;
        top: 10px;
        float: left;
        left: -2px !important;
        line-height: 1;
        -webkit-transform: translate(-50%, -50%) !important;
        transform: translate(-50%, -50%) !important;
    }

    [dir="rtl"] .progtrckr li:before {
        float: right;
        right: -32px !important;
        left: unset !important;
    }
}

.progtrckr li.progtrckr-todo {
    color: #c0c0c0;
    border-top: 4px solid #c0c0c0;
    width: 100% !important;
}

@media (max-width: 575px) {
    .progtrckr li.progtrckr-todo {
        position: relative;
        text-align: left;
        margin-left: 30px;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        padding-bottom: calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320)));
        padding-left: 30px;
        border-top: unset;
        border-left: 4px solid #c0c0c0;
    }

    [dir="rtl"] .progtrckr li.progtrckr-todo {
        border-left: none;
        border-right: 4px solid #c0c0c0;
        margin-left: 0;
        margin-right: 30px;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
        padding-left: 0;
        padding-right: 30px;
        text-align: right;
    }
}

.progtrckr li.progtrckr-todo:before {
    content: "\f111";
    font-family: "Font Awesome 5 Free";
    color: #c0c0c0;
    background-color: #fff;
    font-size: 2.2em;
}

@media (max-width: 575px) {
    .progtrckr li.progtrckr-todo:before {
        position: absolute;
        top: 10px;
        left: -17px;
        line-height: 1;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }

    [dir="rtl"] .progtrckr li.progtrckr-todo:before {
        left: unset;
        right: -17px;
    }
}

.progtrckr li.progtrckr-todo h6 {
    font-size: 13px;
    margin-top: 8px;
}

.progtrckr li.progtrckr-done {
    color: #212529;
    border-top: 4px solid var(--theme-color);
    width: 100% !important;
}

@media (max-width: 575px) {
    .progtrckr li.progtrckr-done {
        position: relative;
        text-align: left;
        margin-left: 30px;
        -webkit-box-align: self-start;
        -ms-flex-align: self-start;
        align-items: self-start;
        padding-bottom: calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320)));
        border-top: unset;
        border-left: 4px solid var(--theme-color);
    }

    [dir="rtl"] .progtrckr li.progtrckr-done {
        margin-left: 0;
        margin-right: 30px;
        text-align: right;
        border-left: none;
        border-right: 4px solid var(--theme-color);
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
    }
}

.progtrckr li.progtrckr-done:before {
    content: "\f00c";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #fff;
    background-color: var(--theme-color);
    height: 30px;
    width: 30px;
    line-height: 2.2em;
    border: none;
    border-radius: 2.2em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.progtrckr li.progtrckr-done h6 {
    font-size: 13px;
    margin-top: 8px;
    color: #7e7e7e;
}

.order-left-image {
    margin-top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 991px) {
    .order-left-image {
        display: block;
    }
}

.order-left-image .tracking-product-image {
    margin-right: 40px;
    width: 30%;
}

[dir="rtl"] .order-left-image .tracking-product-image {
    margin-right: 0;
    margin-left: 40px;
}

@media (max-width: 991px) {
    .order-left-image .tracking-product-image {
        margin-bottom: 18px;
        width: 50%;
        margin-left: auto;
        margin-right: auto;
    }

    [dir="rtl"] .order-left-image .tracking-product-image {
        margin-right: auto;
        margin-left: auto;
    }
}

@media (max-width: 767px) {
    .order-left-image .tracking-product-image {
        margin: 0 auto;
        margin-bottom: calc(20px + (40 - 20) * ((100vw - 320px) / (1920 - 320)));
    }
}

.order-left-image .order-image-contain {
    width: calc(100% - 30px);
}

@media (max-width: 991px) {
    .order-left-image .order-image-contain {
        width: 100%;
    }
}

.order-left-image .order-image-contain p {
    margin-bottom: calc(5px + (10 - 5) * ((100vw - 320px) / (1920 - 320)));
    letter-spacing: 0.05em;
}

.order-left-image .order-image-contain p span {
    font-weight: 500;
    margin-left: 10px;
    color: #212529;
}

[dir="rtl"] .order-left-image .order-image-contain p span {
    margin-left: 0;
    margin-right: 10px;
}

.order-left-image .order-image-contain h4 {
    font-size: 22px;
    letter-spacing: 0.03em;
    margin-bottom: calc(12px + (23 - 12) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 500;
}

@media (max-width: 767px) {
    .order-left-image .order-image-contain h4 {
        font-size: calc(16px + (24 - 16) * ((100vw - 320px) / (1920 - 320)));
    }
}

.order-address {
    margin-top: 50px;
}

@media (max-width: 360px) {
    .order-address {
        margin-top: 20px;
    }
}

.order-address li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

@media (max-width: 360px) {
    .order-address li {
        display: block;
    }
}

.order-address li .left-box {
    text-transform: capitalize;
    min-width: 210px;
    padding: 10px 0;
}

.order-address li .left-box h6 {
    font-weight: 500;
}

@media (max-width: 360px) {
    .order-address li .left-box h6 {
        color: #7e7e7e !important;
        margin-bottom: -13px;
        padding-bottom: 8px;
        border-bottom: 1px solid #cacaca;
        font-weight: 500;
    }
}

.order-address li .right-box {
    padding: 10px 0;
    width: 180px;
}

.order-address li .right-box p {
    margin-bottom: 0;
    line-height: 1.6;
}

.tracker-table {
    padding-top: calc(30px + (60 - 30) * ((100vw - 320px) / (1920 - 320)));
    overflow: hidden;
    margin-bottom: 0;
}

.tracker-table .table {
    margin-bottom: 0;
}

.tracker-table .table thead th {
    border-bottom-width: 1px;
    font-weight: 500;
    color: #212529 !important;
    text-transform: uppercase;
    font-size: 15px;
    border-top: 0;
    text-align: left;
    padding: 16px;
    border-bottom: 1px solid #eff2f7 !important;
    background-color: #eff2f7;
}

[dir="rtl"] .tracker-table .table thead th {
    text-align: right;
}

.tracker-table .table tbody h2 {
    margin-bottom: 0;
}

.tracker-table .table tbody tr td {
    vertical-align: middle;
    color: #777777;
    border-top: 0;
    border-bottom: 1px solid #eff2f7 !important;
    text-align: left;
    padding: calc(0px + (16 - 0) * ((100vw - 320px) / (1920 - 320))) calc(6px + (16 - 6) * ((100vw - 320px) / (1920 - 320)));
    min-width: 175px;
}

[dir="rtl"] .tracker-table .table tbody tr td {
    text-align: right;
}

.tracker-table .table tbody tr td p {
    margin: 10px 0 !important;
}

.tracker-table .table tbody tr td:nth-child(odd) p {
    color: #212529;
}

.tracker-table .table tbody tr td a {
    font-weight: 400;
    font-size: 14px;
    text-transform: capitalize;
    display: inline-block;
}

/**=====================
    Element Page css Start
  ==========================**/
.header-image-contain {
    margin-bottom: calc(20px + (50 - 20) * ((100vw - 320px) / (1920 - 320)));
}

.header-image-contain .background-contain {
    background-image: none;
    height: 100%;
}

.custome-card {
    border: 1px solid #ced4da;
}

.custome-card .card-header {
    background-color: #eff2f7;
}

.custome-card .card-body {
    background-color: #fff;
}

/**=====================
    About Page css Start
  ==========================**/
@media (max-width: 991px) {
    .about-image {
        display: none;
    }
}

.about-details {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
}

.about-details h2 {
    margin-bottom: 10px;
    letter-spacing: 1px;
    color: var(--theme-color);
}

.about-details h3 {
    font-size: calc(18px + (25 - 18) * ((100vw - 320px) / (1920 - 320)));
    letter-spacing: 1.5px;
    margin-bottom: 16px;
    max-width: 80%;
    line-height: 1.5;
    text-transform: uppercase;
}

@media (max-width: 991px) {
    .about-details h3 {
        max-width: 100%;
    }
}

.about-details p {
    letter-spacing: 1px;
    line-height: 1.5;
    color: #7e7e7e;
}

.custome-accordion {
    padding: 25px;
    border: 1px solid #ddd;
    border-radius: 5px;
}

.custome-accordion .accordion-item {
    border-top: 1px solid rgba(221, 221, 221, 0.5);
    border: none;
}

.custome-accordion .accordion-item .accordion-header {
    border-top: 1px solid rgba(221, 221, 221, 0.5);
}

.custome-accordion .accordion-item .accordion-header .accordion-button {
    background-color: transparent;
    font-weight: 600;
    text-transform: capitalize;
}

.custome-accordion .accordion-item .accordion-header .accordion-button:focus {
    border-color: #c7c7c5;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.custome-accordion .accordion-item .accordion-header .accordion-button.collapsed {
    background-color: #fff;
    font-weight: 400;
}

.custome-accordion .accordion-item .accordion-header .accordion-button:after {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    margin-left: auto;
    color: #7e7e7e;
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    background-image: none;
    -webkit-transition: -webkit-transform 0.4s ease-in-out;
    transition: -webkit-transform 0.4s ease-in-out;
    transition: transform 0.4s ease-in-out;
    transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.custome-accordion .accordion-item .accordion-header .accordion-button:not(.collapsed) {
    color: #212529;
}

.custome-accordion .accordion-item .accordion-header .accordion-button:not(.collapsed)::after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}

.custome-accordion .accordion-item .accordion-collapse .accordion-body p {
    letter-spacing: 1.3px;
    margin-bottom: 0;
    line-height: 1.4;
    text-align: justify;
    color: #7e7e7e;
}

.team-contain.team-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    margin-bottom: 22px;
}

.team-contain.team-center img {
    width: 40%;
}

.team-contain.team-center .team-details {
    margin-top: 0;
    margin-left: 20px;
}

.team-contain.team-center .team-details p span {
    color: #7e7e7e;
    display: none;
}

.team-contain.team-center .team-details .moreless-button {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    text-align: right;
    color: var(--theme-color);
}

.team-details {
    margin-top: 30px;
    position: relative;
}

.team-details h3 {
    font-size: 23px;
    margin-bottom: 10px;
    color: #212529;
}

.team-details p {
    margin-bottom: 0;
    letter-spacing: 0.6px;
    line-height: 1.5;
    color: #7e7e7e;
}

.team-details p span {
    color: #7e7e7e;
    display: none;
}

.team-details .moreless-button {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    text-align: right;
    color: var(--theme-color);
}

.team-image {
    width: 100%;
    height: 220px;
    -o-object-fit: cover;
    object-fit: cover;
}

.team-leader-section {
    background-color: #eff2f7;
}

.leader-contain:hover .leader-image .social-media {
    bottom: 0;
    opacity: 1;
}

@media (max-width: 767px) {
    .leader-contain:hover .leader-image .social-media {
        top: 0;
        opacity: 1;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        height: 100%;
        border-radius: 0;
    }
}

.leader-contain .leader-image {
    border-radius: 5px;
    position: relative;
    overflow: hidden;
}

.leader-contain .leader-image .social-media {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    bottom: -60px;
    opacity: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    text-align: center;
    display: block;
    padding: calc(8px + (12 - 8) * ((100vw - 320px) / (1920 - 320)));
    background-color: rgba(226, 46, 83, 0.8);
    width: 100%;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
}

@media (max-width: 767px) {
    .leader-contain .leader-image .social-media {
        top: 0;
        bottom: unset;
        opacity: 0;
        height: 100%;
        background-color: rgba(226, 46, 83, 0.6);
    }
}

.leader-contain .leader-image .social-media li {
    margin: 0 5px;
    width: calc(20px + (30 - 20) * ((100vw - 320px) / (1920 - 320)));
    height: calc(20px + (30 - 20) * ((100vw - 320px) / (1920 - 320)));
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    border-radius: 3px;
}

.leader-contain .leader-image .social-media li:hover {
    background-color: rgba(33, 37, 41, 0.7);
}

.leader-contain .leader-image .social-media li:hover a {
    color: #fff;
}

.leader-contain .leader-image .social-media li a {
    color: #ddd;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    font-size: calc(14px + (20 - 14) * ((100vw - 320px) / (1920 - 320)));
}

.leader-contain .leader-contain {
    color: #212529;
    padding: calc(8px + (15 - 8) * ((100vw - 320px) / (1920 - 320)));
    width: 100%;
    text-align: center;
}

.leader-contain .leader-contain h3 {
    letter-spacing: 1px;
}

.leader-contain .leader-contain h6 {
    margin: calc(6px + (10 - 6) * ((100vw - 320px) / (1920 - 320))) 0 0;
    letter-spacing: 1.6px;
    color: #7e7e7e;
}

.testimonial-section .testimonial-contain {
    text-align: center;
    -webkit-box-shadow: 0 0 8px #ddd;
    box-shadow: 0 0 8px #ddd;
    padding: calc(20px + (30 - 20) * ((100vw - 320px) / (1920 - 320)));
    border-radius: 10px;
}

[dir="rtl"] .testimonial-section .testimonial-contain {
    direction: rtl;
}

.testimonial-section .testimonial-contain .textimonial-image {
    text-align: center;
}

.testimonial-section .testimonial-contain .textimonial-image img {
    border-radius: 25px;
    border: 1px solid #c7c7c5;
    padding: 5px;
    height: 100px;
    width: 100px;
    margin: 0 auto;
    -o-object-fit: cover;
    object-fit: cover;
}

.testimonial-section .testimonial-details {
    margin: 15px auto 0;
}

@media (max-width: 767px) {
    .testimonial-section .testimonial-details {
        width: 100%;
    }
}

.testimonial-section .testimonial-details .details-images {
    margin-top: 20px;
    font-size: 14px;
    letter-spacing: 0.5px;
    line-height: 1.8;
    color: #7e7e7e;
    position: relative;
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.testimonial-section .testimonial-details .details-images i {
    color: var(--theme-color);
    font-size: 15px;
    vertical-align: super;
}

[dir="rtl"] .testimonial-section .testimonial-details .details-images i {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.testimonial-section .testimonial-details .details-images i.fa-quote-left {
    margin-right: 8px;
}

[dir="rtl"] .testimonial-section .testimonial-details .details-images i.fa-quote-left {
    margin-right: 0;
    margin-left: 8px;
}

.testimonial-section .testimonial-details .details-images i.fa-quote-right {
    margin-left: 8px;
}

[dir="rtl"] .testimonial-section .testimonial-details .details-images i.fa-quote-right {
    margin-left: 0;
    margin-right: 8px;
}

.testimonial-section .testimonial-details .details-images::before {
    content: "";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    bottom: 0;
    width: 90px;
    height: 3px;
    background-color: var(--theme-color);
}

.testimonial-section .testimonial-details h5 {
    text-transform: uppercase;
    letter-spacing: 1.4px;
}

/**=====================
    Dark and RTL css Start
  ==========================**/
.theme-setting {
    position: fixed;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 3;
}

[dir="rtl"] .theme-setting ul {
    padding-right: 0;
}

.theme-setting ul li {
    background-color: #eff2f7;
    border: 1px solid #ced4da;
    margin: 10px 0;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    border-right: none;
    width: 40px;
    height: 38px;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 14px;
    text-decoration: none;
    cursor: pointer;
    font-weight: 600;
}

.theme-setting ul li button {
    color: #212529;
}

.theme-setting ul li button:hover {
    color: #212529;
}

.theme-setting ul li.color-picker {
    background: none;
    overflow: hidden;
    margin-bottom: 0;
    border: none;
}

.theme-setting ul li.color-picker input {
    height: 100%;
    opacity: 1;
    padding: 0;
    border: none;
    font-size: x-large;
}

/**=====================
    Dark and RTL css Start
  ==========================**/
.demo-contain {
    width: 100%;
    height: 500px;
    overflow: hidden;
    border: 2px solid rgba(33, 37, 41, 0.3);
    border-radius: 5px;
    position: relative;
}

.demo-contain .demo-image {
    overflow: hidden;
    width: 100%;
}

.demo-contain .demo-image:hover img {
    -webkit-transform: translateY(calc(-100% + 500px));
    transform: translateY(calc(-100% + 500px));
    -webkit-transition: -webkit-transform 5s ease-in-out;
    transition: -webkit-transform 5s ease-in-out;
    transition: transform 5s ease-in-out;
    transition: transform 5s ease-in-out, -webkit-transform 5s ease-in-out;
}

.demo-contain .demo-image img {
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transition: -webkit-transform 5s ease-in-out;
    transition: -webkit-transform 5s ease-in-out;
    transition: transform 5s ease-in-out;
    transition: transform 5s ease-in-out, -webkit-transform 5s ease-in-out;
    width: 100%;
}

.demo-contain .demo-image a {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #ff0000;
    color: #212529;
}

/**=====================
     Shop page css start
==========================**/
.custome-nav-tabs {
    position: sticky;
    top: 10px;
}

.category-scroll {
    max-height: 250px;
    overflow: auto;
    /* width */
    /* Track */
    /* Handle */
    /* Handle on hover */
}

.category-scroll::-webkit-scrollbar {
    width: 5px;
}

.category-scroll::-webkit-scrollbar-track {
    background-color: #ddd;
}

.category-scroll::-webkit-scrollbar-thumb {
    background: #b5bec7;
    border-radius: 5px;
}

.category-scroll::-webkit-scrollbar-thumb:hover {
    opacity: 0.8;
}

.custome-form-check {
    min-height: 0;
    margin-bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

[dir="rtl"] .custome-form-check {
    padding-right: 0;
}

.custome-form-check .form-check-input {
    margin-right: 10px;
    width: 17px;
    height: 17px;
    margin-top: 0;
    background-color: transparent;
    border: 1px solid #c7c7c5 !important;
    border-radius: 3px !important;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

[dir="rtl"] .custome-form-check .form-check-input {
    margin-left: 1.5rem;
    margin-right: 0;
}

.custome-form-check .form-check-input:checked[type="checkbox"] {
    background-image: url(../images/check.svg);
    background-size: 13px;
}

.custome-form-check .form-check-input:focus {
    border-color: transparent;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.custome-form-check .form-check-label {
    color: #212529;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sidebar-image {
    margin-top: 20px;
}

.sidebar-image img {
    height: 500px;
    border-radius: 5px;
}

.category-option {
    position: sticky;
    top: 40px;
    z-index: 1;
}

@media (max-width: 991px) {
    .category-option {
        position: fixed;
        top: 0;
        left: -320px;
        background-color: #fff;
        z-index: 7;
        padding: calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
        width: 300px;
        height: 100vh;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
        overflow-x: scroll;
        overflow-y: auto;
    }

    [dir="rtl"] .category-option {
        left: unset;
        right: -320px;
    }
}

.category-option.show {
    left: 0;
}

[dir="rtl"] .category-option.show {
    left: unset;
    right: 0;
}

.category-option .button-close {
    display: none;
}

@media (max-width: 991px) {
    .category-option .button-close {
        display: block;
        margin-bottom: 10px;
    }
}

.category-option .button-close button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 17px;
    color: #212529;
}

.category-option .button-close button .feather {
    display: block;
    width: 18px;
    margin-right: 8px;
}

[dir="rtl"] .category-option .button-close button .feather {
    margin-right: unset;
    margin-left: 8px;
}

.category-option .category-name {
    color: #fff;
    background-color: #fff;
}

.category-option .category-name .accordion-item {
    padding: 20px;
    border: 1px solid #ced4da;
    color: #212529;
    border-radius: 5px;
    background-color: #fff;
}

.category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check .form-check-label span {
    margin-left: 10px;
}

[dir="rtl"] .category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check .form-check-label span {
    margin-left: 0;
    margin-right: 10px;
}

.category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check p {
    margin-bottom: 0;
    margin-left: 12px;
    font-size: 13px;
}

[dir="rtl"] .category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check p {
    margin-left: 0;
    margin-right: 12px;
}

.category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check .rating {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check .rating .rating-list {
    margin: 0;
}

.category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check .rating .rating-list + .rating-list {
    margin-left: 3px;
}

.category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check .rating .rating-list .fa-star {
    color: #c3c3c3;
}

.category-option .category-name .accordion-item.category-rating .accordion-collapse .accordion-body .category-list li .form-check .rating .rating-list .fa-star.theme-color {
    color: #ffa202;
}

.category-option .category-name .accordion-item.category-price .accordion-collapse .accordion-body .category-list li {
    display: inline-block;
    padding: 5px 10px;
    background: #fff;
    border-radius: 5px;
    font-size: 13px;
    border: 1px solid #fff;
    margin: 3px 1px;
}

.category-option .category-name .accordion-item.category-price .accordion-collapse .accordion-body .category-list li a {
    color: #212529;
    font-weight: 400;
}

.category-option .category-name .accordion-item.filter-accordion .accordion-collapse .accordion-body .category-list li {
    margin: 0;
    padding: 2px 6px;
}

.category-option .category-name .accordion-item.filter-accordion .accordion-collapse .accordion-body .category-list li:nth-child(3) a .label-tag {
    margin-bottom: 0;
}

.category-option .category-name .accordion-item.filter-accordion .accordion-collapse .accordion-body .category-list li .label-tag {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border: none;
    padding: 0 5px;
    margin-bottom: 10px;
    border-radius: 5px;
}

.category-option .category-name .accordion-item.filter-accordion .accordion-collapse .accordion-body .category-list li .label-tag span {
    color: #7f7f7f;
    font-size: calc(13px + (15 - 13) * ((100vw - 320px) / (1920 - 320)));
}

.category-option .category-name .accordion-item.filter-accordion .accordion-collapse .accordion-body .category-list li .label-tag .btn-close {
    font-size: calc(8px + (10 - 8) * ((100vw - 320px) / (1920 - 320)));
    margin-left: auto;
    margin-top: 3px;
}

.category-option .category-name .accordion-item.category-color .accordion-collapse {
    margin-top: 22px;
}

.category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 0;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: -5px;
}

.category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li {
    margin-top: 0;
    margin: 5px;
}

.category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li a {
    width: 30px;
    height: 30px;
    background-color: #ff0000;
    border-radius: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li a i {
    color: #212529;
    display: none;
}

.category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li a i.active {
    display: block;
}

.category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li:nth-child(2) a {
    background-color: #fab1a0;
}

.category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li:nth-child(3) a {
    background-color: #10ac84;
}

.category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li:nth-child(4) a {
    background-color: #ff9f43;
}

.category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li:nth-child(5) a {
    background-color: #8395a7;
}

.category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li:nth-child(6) a {
    background-color: #fab1a0;
}

.category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li:nth-child(7) a {
    background-color: #10ac84;
}

.category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li:nth-child(8) a {
    background-color: #ff9f43;
}

.category-option .category-name .accordion-item.category-color .accordion-collapse .accordion-body .category-list li:nth-child(9) a {
    background-color: #8395a7;
}

@media (max-width: 991px) {
    .category-option .category-name .accordion-item {
        padding: 0;
        border: none;
    }
}

.category-option .category-name .accordion-item + .accordion-item {
    margin-top: 20px;
}

.category-option .category-name .accordion-item .accordion-header {
    margin-bottom: 0;
    background-color: #eff2f7;
}

.category-option .category-name .accordion-item .accordion-collapse {
    border: none;
    border-width: 0 1px;
    margin-top: 10px;
}

.category-option .category-name .accordion-item .accordion-collapse .accordion-body {
    padding: 0;
}

.category-option .category-name .accordion-item .accordion-collapse .accordion-body .category-list {
    overflow: hidden;
}

.category-option .category-name .accordion-item .accordion-collapse .accordion-body .category-list li {
    display: block;
    margin: 10px 5px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.category-option .category-name .accordion-item .accordion-collapse .accordion-body .category-list li::nth-child(9) {
    margin-bottom: 0;
}

.category-option .category-name .accordion-button {
    color: #212529;
    border: none;
    margin: 0;
    font-weight: bold;
    -webkit-box-shadow: none;
    box-shadow: none;
    background-color: #eff2f7;
}

.category-option .category-name .accordion-button:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
    outline: none;
}

.category-option .category-name .accordion-button:not(.collapsed)::after {
    background-image: url(../images/minus.svg);
    -webkit-filter: invert(1);
    filter: invert(1);
    -webkit-transform: rotate(0);
    transform: rotate(0);
}

.category-option .category-name .accordion-button:after {
    background-image: url(../images/plus.svg);
    -webkit-filter: invert(1);
    filter: invert(1);
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

.category-option-1 {
    background-color: #f0f3f8;
}

@media (max-width: 991px) {
    .category-option-1 {
        background-color: #fff;
    }
}

.category-option-1 .category-name .accordion-item {
    border: none;
    padding: 10px 20px 0;
    background-color: transparent;
}

@media (max-width: 991px) {
    .category-option-1 .category-name .accordion-item {
        padding: 0;
    }
}

.category-option-1 .category-name .accordion-item + .accordion-item {
    margin-top: 0;
}

.category-option-1 .category-name .accordion-item .accordion-header .accordion-button {
    padding: 14px 8px;
}

.category-option-1 .category-name .accordion-item .accordion-collapse {
    margin-top: 0;
}

.category-option-1 .category-name .accordion-item .accordion-collapse .accordion-body {
    padding: 10px 3px;
}

.category-option-1 .category-name .accordion-item .accordion-collapse .accordion-body .category-list {
    margin-top: -12px;
}

.category-option-1 .category-name .accordion-item .accordion-collapse .accordion-body .category-list li {
    margin-top: 12px;
}

.category-option-1 .category-name .accordion-item .accordion-collapse .accordion-body .category-list li .form-check .form-check-input {
    background-color: #fff;
}

.filter-button {
    display: none;
}

@media (max-width: 991px) {
    .filter-button {
        display: block;
    }
}

.filter-button a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.filter-button .feather {
    width: 20px;
    margin-right: 10px;
}

[dir="rtl"] .filter-button .feather {
    margin-right: unset;
    margin-left: 10px;
}

.filter-button span {
    display: block;
    margin-bottom: -3px;
}

.hide-button button {
    font-size: 15px !important;
    background-color: var(--theme-color);
    padding: 4px 10px;
    border-radius: 5px;
    color: #fff !important;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.hide-button button .feather {
    width: 20px;
    margin-right: 10px;
}

[dir="rtl"] .hide-button button .feather {
    margin-right: 0;
    -webkit-transform: rotateY(180deg);
    transform: rotateY(180deg);
}

.hide-button span {
    display: block;
    margin-bottom: -3px;
}

.short-name {
    margin: -5px;
}

.short-name .label-tag {
    display: inline-block;
    border: none;
    padding: 3px 12px;
    margin-bottom: 15px;
    border: none;
    margin: 5px;
    background-color: #eff2f7;
    border-radius: 8px;
}

.short-name .label-tag span {
    font-size: 14px;
}

.short-name .label-tag .btn-close {
    font-size: calc(8px + (10 - 8) * ((100vw - 320px) / (1920 - 320)));
    margin-left: 5px;
}

[dir="rtl"] .short-name .label-tag .btn-close {
    margin-left: 0;
    margin-right: 5px;
}

.select-featured {
    border: 1px solid #eff2f7;
    color: #8f8397;
    margin-left: auto;
    border-radius: 0;
}

.select-featured:focus {
    border-color: #eff2f7;
    -webkit-box-shadow: 0 0 0 0.25rem transparent;
    box-shadow: 0 0 0 0.25rem transparent;
}

.select-featured .dropdown-toggle {
    border: 1px solid #eff2f7;
    color: #8f8397;
    margin-left: auto;
    border-radius: 0;
    font-weight: 400;
    padding: 0.375rem 2.25rem 0.375rem 0.75rem;
    position: relative;
}

.select-featured .dropdown-toggle::after {
    display: none;
}

.select-featured .dropdown-toggle::before {
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 14px;
}

.select-featured .dropdown-menu {
    min-width: 100%;
}

.select-featured .dropdown-menu li {
    width: 100%;
}

.custome-offcanvas .offcanvas-body {
    background-color: #fff;
}

@media (max-width: 991px) {
    .custome-offcanvas {
        width: 300px;
    }
}

.custome-offcanvas .offcanvas-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.custome-offcanvas .offcanvas-header h5 {
    margin-top: -5px;
}

.custome-offcanvas .offcanvas-body .category-spacing .category-name .accordion-item {
    padding: 0;
}

.custome-offcanvas .offcanvas-body .category-spacing .category-name .accordion-item + .accordion-item {
    margin-top: 10px;
}

@media (max-width: 991px) {
    .custome-offcanvas .category-option {
        position: relative;
        top: 0;
        left: 0;
        background-color: #fff;
        z-index: unset;
        padding: 0;
        width: unset;
        height: auto;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
        overflow-y: auto;
    }

    [dir="rtl"] .custome-offcanvas .category-option {
        left: unset;
        right: 0;
    }
}

.image-slider {
    display: block;
    overflow: hidden;
}

.image-slider .image-product {
    position: relative;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.image-slider .image-product img {
    border-radius: 5px;
}

.image-slider .image-contain {
    display: block;
    text-align: center;
    padding: 20px 0 0;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.image-slider .image-contain h3 {
    font-weight: 400;
}

.filter-name {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.filter-name h4 {
    font-weight: 500;
    font-size: large;
}

.filter-icon {
    display: none;
}

@media (max-width: 991px) {
    .filter-icon {
        display: block;
    }
}

.category-filter {
    width: 100%;
}

.category-list {
    width: 100%;
}

.category-list .dropdown .dropdown-toggle {
    width: 100%;
    background-color: rgba(233, 233, 233, 0.5);
    border-radius: 5px;
    font-size: 16px;
    font-weight: 500;
    padding: calc(8px + (10 - 8) * ((100vw - 320px) / (1920 - 320))) calc(15px + (20 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.category-list .dropdown .dropdown-menu {
    padding: 1rem;
    width: 100%;
}

.category-list .dropdown .dropdown-menu .dropdown-list {
    display: block;
}

.category-list .dropdown .dropdown-menu .dropdown-list + .dropdown-list {
    margin-top: 10px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.filter-show-button {
    padding: 15px;
    display: none;
}

.filter-show-button a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.filter-show-button a .feather {
    margin-right: 10px;
    width: 20px;
}

.filter-show-button a h5 {
    font-weight: 600;
}

@media (max-width: 991px) {
    .filter-show-button {
        padding: 0 0 10px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.top-filter-section {
    background-color: #fff;
    padding-bottom: 50px;
}

@media (max-width: 991px) {
    .top-filter-section {
        position: fixed;
        left: -300px;
        width: 300px;
        height: 100vh;
        top: 0;
        margin-top: 0;
        padding: 20px;
        z-index: 5;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
        -webkit-box-shadow: 0 15px 5px 0 rgba(77, 77, 77, 0.28);
        box-shadow: 0 15px 5px 0 rgba(77, 77, 77, 0.28);
        overflow-y: auto;
    }
}

.top-filter-section.show {
    left: 0;
}

.top-filter-section ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media (max-width: 991px) {
    .top-filter-section ul {
        display: block;
    }
}

.top-filter-section ul .back-btn {
    display: none;
}

@media (max-width: 991px) {
    .top-filter-section ul .back-btn {
        padding-bottom: 20px;
        border-bottom: 1px solid #ddd;
        font-size: calc(14px + (18 - 14) * ((100vw - 320px) / (1920 - 320)));
        text-transform: capitalize;
        color: black;
        font-weight: 700;
        margin-bottom: 20px;
        cursor: pointer;
        display: block;
    }
}

.top-filter-section ul .onclick-title {
    width: 100%;
    cursor: pointer;
    position: relative;
    background-color: #eff2f7;
    border-radius: 5px;
    font-size: 16px;
    font-weight: 500;
    padding: calc(8px + (10 - 8) * ((100vw - 320px) / (1920 - 320))) calc(15px + (20 - 15) * ((100vw - 320px) / (1920 - 320)));
    margin: 0 15px;
}

.top-filter-section ul .onclick-title:nth-child(7) {
    margin-right: 0;
}

@media (max-width: 991px) {
    .top-filter-section ul .onclick-title {
        margin: 30px 0 0;
        background-color: #fff;
        padding: 0;
    }

    .top-filter-section ul .onclick-title:nth-child(3) {
        margin-top: 15px;
    }

    .top-filter-section ul .onclick-title + .onclick-title {
        margin-left: unset;
    }
}

.top-filter-section ul .onclick-title h6 {
    white-space: nowrap;
    text-transform: capitalize;
    font-size: 16px;
    text-align: left;
    margin-bottom: 0;
    padding: 0 20px 0 0;
    position: relative;
}

[dir="rtl"] .top-filter-section ul .onclick-title h6 {
    text-align: right;
    padding: 0 0 0 20px;
}

@media (max-width: 991px) {
    .top-filter-section ul .onclick-title h6 {
        text-align: left;
        font-weight: 500;
    }
}

.top-filter-section ul .onclick-title h6:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f107";
    position: absolute;
    right: 0;
    opacity: 0.2;
}

[dir="rtl"] .top-filter-section ul .onclick-title h6:before {
    right: unset;
    left: 0;
}

@media (max-width: 991px) {
    .top-filter-section ul .onclick-title h6:before {
        content: "";
    }
}

.top-filter-section ul .onclick-title:nth-child(-n + 3) {
    border-left: none;
}

.top-filter-section ul .onclick-title .onclick-content {
    display: none;
    position: absolute;
    background-color: #fff;
    padding: 1rem;
    width: 100%;
    left: 0;
    top: 40px;
    -webkit-box-shadow: 0px 5px 9px 3px rgba(33, 37, 41, 0.13);
    box-shadow: 0px 5px 9px 3px rgba(33, 37, 41, 0.13);
    z-index: 2;
}

@media (max-width: 991px) {
    .top-filter-section ul .onclick-title .onclick-content {
        display: block;
        position: relative;
        -webkit-box-shadow: none;
        box-shadow: none;
        padding: 0;
        top: 10px;
        margin-top: 10px;
    }
}

.top-filter-section ul .onclick-title .onclick-content li {
    display: block;
    cursor: pointer;
}

.top-filter-section ul .onclick-title .onclick-content li + li {
    margin-top: 10px;
}

.top-filter-section ul .onclick-title .onclick-content .custom-control .form-check-label {
    text-transform: capitalize;
}

.top-filter-section ul .filter-title {
    width: 100%;
    cursor: pointer;
    position: relative;
    border-left: 1px solid #e0e0e0;
    min-width: 60px;
}

@media (max-width: 991px) {
    .top-filter-section ul .filter-title {
        margin-bottom: 10px;
    }
}

.top-filter-section ul .filter-title h6 {
    text-transform: capitalize;
    font-size: 16px;
    margin-bottom: 0;
    padding: 0 20px 0 0;
    position: relative;
    padding: 0;
    font-weight: 700;
}

.top-filter-section ul .filter-title h6:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f107";
    position: absolute;
    right: 15px;
    opacity: 0.2;
    display: none;
}

.top-filter-section ul .filter-title:nth-child(-n + 3) {
    border-left: none;
}

.top-filter-section ul .filter-title .onclick-content {
    display: none;
    position: absolute;
    background-color: white;
    z-index: 1;
    padding: 10px 20px;
    width: 200px;
    left: 30px;
    top: 34px;
    -webkit-box-shadow: 0px 1px 9px 3px rgba(228, 228, 228, 0.81);
    box-shadow: 0px 1px 9px 3px rgba(228, 228, 228, 0.81);
}

@media (max-width: 991px) {
    .top-filter-section ul .filter-title .onclick-content {
        display: block;
        position: relative;
        top: 10px;
        -webkit-box-shadow: none;
        box-shadow: none;
    }
}

.top-filter-section ul .filter-title .onclick-content .custom-control .form-check-label {
    text-transform: capitalize;
}

.top-filter-section ul .onclick-title.show .onclick-content {
    display: block;
}

.top-filter-section ul .filter-title.show .onclick-content {
    display: block;
}

.top-filter-section .form-check {
    text-transform: capitalize;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.top-filter-section .form-check + .form-check {
    margin-top: 10px;
}

.top-filter-section .form-check .form-check-label {
    font-weight: 400;
    display: block;
    text-transform: capitalize;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.category-image {
    padding: 10px 20px;
    border-radius: 5px;
    background-color: #eff2f7;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.category-image .elec-image {
    padding-right: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 120px;
}

[dir="rtl"] .category-image .elec-image {
    padding-right: 0;
    padding-left: 30px;
}

.category-image .elec-image img {
    width: 90%;
}

.category-image .category-contain {
    color: #212529;
    width: calc(100% - 150px);
}

.category-image .category-contain h3 {
    text-transform: capitalize;
    color: #212529;
    letter-spacing: 1.1px;
}

.category-image .category-contain .product-list {
    margin: 5px 0;
    -webkit-padding-start: 15px;
    padding-inline-start: 15px; list-style-type: circle;
}

.category-image .category-contain .product-list li {
    display: list-item;
    text-transform: capitalize;
}

.category-image .category-contain .product-list li a {
    font-size: 14px;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}

.fliter-menu button {
    font-weight: 300;
    display: inline-block;
    border: none;
    padding: 5px calc(12px + (20 - 12) * ((100vw - 320px) / (1920 - 320)));
    border-radius: 0;
    border: 1px solid #ddd;
    margin: 5px;
}

.fliter-menu button .feather {
    width: 16px;
    stroke-width: 1px;
}

.product-box .product-details .main-price p {
    display: none;
}

.product-box .product-details .main-price .listing-content {
    display: none;
}

.list-view.product-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.list-view.product-box .img-wrapper .back {
    opacity: 0;
    position: absolute;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    top: 0;
    left: 0;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    width: 100%;
}

.list-view.product-box .product-details .rating-details, .list-view.product-box .product-details .main-price {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media (max-width: 575px) {
    .list-view.product-box .product-details .rating-details, .list-view.product-box .product-details .main-price {
        display: block;
        text-align: left;
    }

    [dir="rtl"] .list-view.product-box .product-details .rating-details, [dir="rtl"] .list-view.product-box .product-details .main-price {
        text-align: right;
    }
}

.list-view.product-box .product-details .main-price {
    margin-top: 10px;
}

@media (max-width: 575px) {
    .list-view.product-box .product-details .main-price {
        margin-top: 5px;
    }

    .list-view.product-box .product-details .main-price h3 {
        margin-top: 5px;
    }
}

.list-view.product-box .cart-wrap ul li + li {
    margin-left: 0;
}

[dir="rtl"] .list-view.product-box .cart-wrap ul li + li {
    margin-left: unset;
    margin-right: 0;
}

.list-view.product-box .cart-wrap a svg, .list-view.product-box .cart-wrap button svg {
    width: 14px;
    height: 14px;
}

@media (max-width: 575px) {
    .list-view.product-box .cart-wrap a svg, .list-view.product-box .cart-wrap button svg {
        width: 13px;
        height: 13px;
    }
}

.list-view.product-box:hover .img-wrapper .back {
    opacity: 1;
    -webkit-backface-visibility: visible;
    backface-visibility: visible;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

@media (max-width: 1660px) {
    .list-view.slide-4 {
        padding: 0 30px;
    }
}

.list-view.slide-4 .slick-prev {
    left: -70px;
}

@media (max-width: 1660px) {
    .list-view.slide-4 .slick-prev {
        left: -20px;
    }
}

@media (max-width: 575px) {
    .list-view.slide-4 .slick-prev {
        left: -5px;
    }
}

.list-view.slide-4 .slick-next {
    right: -70px;
}

@media (max-width: 1660px) {
    .list-view.slide-4 .slick-next {
        right: -20px;
    }
}

@media (max-width: 575px) {
    .list-view.slide-4 .slick-next {
        right: -5px;
    }
}

.collection-grid-view {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
}

.collection-grid-view ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
}

.collection-grid-view ul li {
    height: 100%;
    margin-right: 8px;
    border: 2px solid #212529;
}

.collection-grid-view ul li button {
    padding: 5px;
}

.collection-grid-view ul li button img {
    height: 50%;
}

.range-slider {
    margin-top: 0;
}

.range-slider .irs--flat .irs-line {
    background-color: #eff2f7;
}

.range-slider .irs--flat .irs-max {
    background-color: #c7c7c5;
    color: #212529;
}

.range-slider .irs--flat .irs-bar {
    background-color: var(--theme-color);
}

.range-slider .irs--flat .irs-handle i {
    position: absolute;
    display: block;
    top: 0;
    left: 50%;
    width: 2px;
    height: 100%;
    margin-left: -1px;
    background-color: var(--theme-color);
}

.range-slider .irs--flat .irs-to {
    background-color: var(--theme-color);
}

.range-slider .irs--flat .irs-to:before {
    border-top-color: var(--theme-color);
}

.range-slider .irs--flat .irs-from {
    background-color: var(--theme-color);
}

.range-slider .irs--flat .irs-from:before {
    border-top-color: var(--theme-color);
}

.banner-deatils .banner-contain p {
    line-height: 1.8;
    font-size: calc(14px + (15 - 14) * ((100vw - 320px) / (1920 - 320)));
}

.most-popular {
    margin: calc(35px + (50 - 35) * ((100vw - 320px) / (1920 - 320))) 0 0;
}

.most-popular .title {
    margin-bottom: 25px;
}

[dir="rtl"] .most-popular .title {
    text-align: left !important;
}

.most-popular .product-slider {
    padding-top: 20px;
    border-top: 1px solid #eff2f7;
}

.most-popular .product-slider .slick-prev, .most-popular .product-slider .slick-next {
    background-color: #eff2f7;
    position: absolute;
    top: -35px;
    z-index: 1;
    width: 35px;
    height: 35px;
    border-radius: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.most-popular .product-slider .slick-prev {
    left: unset;
    right: 50px;
}

.most-popular .product-slider .slick-prev::before {
    content: "\f053";
    color: #000;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    z-index: 1;
    font-size: 16px;
}

.most-popular .product-slider .slick-next {
    right: 0;
}

.most-popular .product-slider .slick-next::before {
    content: "\f054";
    color: #000;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    z-index: 1;
    font-size: 16px;
}

.list-style > div {
    width: 100%;
}

.list-style .product-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 767px) {
    .list-style .product-box {
        display: block;
        border: 1px solid rgba(0, 0, 0, 0.08);
        padding: 15px calc(15px + (20 - 15) * ((100vw - 320px) / (1920 - 320)));
        border-radius: 5px;
    }
}

.list-style .product-box .img-wrapper {
    width: 25%;
}

@media (max-width: 767px) {
    .list-style .product-box .img-wrapper {
        width: 60%;
        margin: 0 auto;
    }
}

@media (max-width: 575px) {
    .list-style .product-box .img-wrapper {
        width: 100%;
    }
}

.list-style .product-box .cart-wrap {
    display: none;
}

.list-style .product-box .product-details {
    padding-left: 15px;
    margin-top: 0;
    width: calc(100% - 100px);
}

[dir="rtl"] .list-style .product-box .product-details {
    padding-left: 0;
    padding-right: 15px;
}

@media (max-width: 767px) {
    .list-style .product-box .product-details {
        width: 100%;
        margin-top: 20px;
        padding: 0;
    }
}

.list-style .product-box .product-details .rating {
    margin: 0;
}

.list-style .product-box .product-details h5 {
    font-weight: 500;
    margin: calc(8px + (15 - 8) * ((100vw - 320px) / (1920 - 320))) 0 0 0;
}

.list-style .product-box .product-details span {
    margin-top: 5px;
}

.list-style .product-box .product-details .rating-details {
    text-align: left !important;
}

.list-style .product-box .product-details .rating-details.rating-shop {
    text-align: left;
}

[dir="rtl"] .list-style .product-box .product-details .rating-details.rating-shop {
    text-align: right;
}

.list-style .product-box .product-details .rating-details.rating-shop h5 {
    margin-top: 5px;
}

.list-style .product-box .product-details .rating-details.rating-shop .size-box {
    margin: 5px 0;
}

.list-style .product-box .product-details .rating-details .grid-content {
    display: none;
}

.list-style .product-box .product-details .main-price .listing-content {
    display: block;
}

.list-style .product-box .product-details .main-price .listing-content.listing-shop {
    text-align: left;
}

[dir="rtl"] .list-style .product-box .product-details .main-price .listing-content.listing-shop {
    text-align: right;
}

.list-style .product-box .main-price {
    display: block !important;
    margin-top: 0 !important;
}

.list-style .product-box .main-price h3 {
    padding: 0;
    margin: 0 0 8px;
}

.list-style .product-box .main-price p {
    display: block !important;
    margin: 8px 0;
    display: -webkit-box !important;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.6;
    letter-spacing: 0.04em;
}

.list-style .product-box .main-price button {
    position: relative;
    padding: calc(6px + (10 - 6) * ((100vw - 320px) / (1920 - 320))) calc(13px + (20 - 13) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 600;
    z-index: 1;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    border-radius: 0;
    font-weight: bold;
    background: var(--theme-color);
    font-size: calc(12px + (15 - 12) * ((100vw - 320px) / (1920 - 320)));
    color: #fff;
    border-radius: 5px;
    margin-top: 0;
}

.list-style .product-box .main-price button:hover {
    color: #fff;
    background-color: var(--theme-color);
}

.filter-options {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.filter-options .select-options {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.filter-options .select-options > div + div {
    margin-left: 12px;
}

[dir="rtl"] .filter-options .select-options > div + div {
    margin-left: 0;
    margin-right: 12px;
}

.filter-options .grid-options {
    margin-left: auto;
}

[dir="rtl"] .filter-options .grid-options {
    margin-left: unset;
    margin-right: auto;
}

.filter-options .grid-options.avtive li {
    background-color: var(--theme-color);
}

.filter-options .grid-options.avtive li a img {
    -webkit-filter: invert(1);
    filter: invert(1);
}

.filter-options .grid-options li {
    width: 36px;
    height: 36px;
    border-radius: 4px;
    background-color: #eff2f7;
    opacity: 0.5;
}

.filter-options .grid-options li.active {
    opacity: 1;
}

.filter-options .grid-options li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
}

.filter-options .grid-options li + li {
    margin-left: 8px;
}

[dir="rtl"] .filter-options .grid-options li + li {
    margin-left: 0;
    margin-right: 8px;
}

.category-side {
    -webkit-transition: .3s ease;
    transition: .3s ease;
}

.category-side.show {
    -webkit-transition: .3s ease;
    transition: .3s ease;
    width: 0;
    opacity: 0;
    padding: 0;
    visibility: hidden;
}

.category-side .category-option {
    background-color: #ddd;
}

@media (max-width: 991px) {
    .category-side .category-option {
        background-color: #eff2f7;
    }
}

.category-side .category-option .custome-form-check .form-check-input {
    background-color: #fff;
}

.category-side .category-option .category-name .accordion-button {
    background-color: #fff;
    border: none;
}

.category-side .category-option .category-name .accordion-item {
    background-color: #eff2f7;
    border: none;
}

@media (max-width: 991px) {
    .category-side .category-option .category-name .accordion-item {
        padding: 20px 0;
    }
}

.category-side .category-option .category-name .accordion-item + .accordion-item {
    margin-top: 0px;
}

/**=====================
     Product Page CSS Start
==========================**/
.pro-popular .product-slider .slick-prev {
    background-color: #ddd !important;
}

.pro-popular .product-slider .slick-next {
    background-color: #ddd !important;
}

.rating .fa-star {
    padding-right: 1px !important;
    font-size: 16px !important;
    color: #c3c3c3 !important;
}

.rating .fa-star.theme-color {
    color: #ff6f00 !important;
}

.product-title {
    color: #212529;
    text-transform: capitalize;
    font-weight: 500;
    font-size: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 14px;
}

.product-title-2 {
    margin-top: 18px;
}

.product-title.hurry-title {
    -webkit-box-pack: unset;
    -ms-flex-pack: unset;
    justify-content: unset;
    font-weight: 400;
}

.product-title.hurry-title span {
    margin: 0 5px;
    color: var(--theme-color);
}

.shipping-info {
    margin-top: 10px;
}

.shipping-info li {
    display: block;
    font-size: 16px;
    color: #777777;
    line-height: 1.5;
    padding-bottom: 5px;
}

.product-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media (max-width: 767px) {
    .product-icon {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.product-icon .product-social {
    margin-top: 5px;
}

.product-icon .product-social li {
    padding-right: 30px;
}

.product-icon .product-social li:last-child {
    padding-right: 0;
}

[dir="rtl"] .product-icon .product-social li {
    padding-right: 0;
    padding-left: 30px;
}

.product-icon .product-social li a {
    color: #212529;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    font-size: 16px;
}

.added-notification {
    width: 180px;
    position: fixed;
    top: -100px;
    right: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: transparent;
    border-radius: 3px;
    padding: 6px;
    overflow: hidden;
    -webkit-box-shadow: 0 0 2px 1px #ced4da;
    box-shadow: 0 0 2px 1px #ced4da;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    z-index: 9;
    background-color: #fff;
}

@media (max-width: 575px) {
    .added-notification {
        right: 12px;
    }
}

.added-notification.show {
    top: 30px;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.added-notification img {
    width: 25%;
}

.added-notification h3 {
    color: #212529;
    text-transform: capitalize;
    font-size: 16px;
    margin: 0 10px;
    font-weight: 400;
    white-space: nowrap;
}

.addeffect-section {
    padding-top: 15px;
    padding-bottom: 20px;
    border-top: 1px dashed #ddd;
}

.addeffect-section.cartMove .error-message {
    display: block;
}

.addeffect-section.cartMove .size-box {
    -webkit-animation: buttons-shake 0.82s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
    animation: buttons-shake 0.82s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
}

.addeffect-section .size-box {
    margin: 10px 0;
}

.addeffect-section .size-box ul li {
    height: 35px;
    width: 35px;
    border-radius: 5px;
    margin-right: 10px;
    cursor: pointer;
    background-color: #eff2f7;
    border: 1px solid #eff2f7;
    text-align: center;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

[dir="rtl"] .addeffect-section .size-box ul li {
    margin-right: 0;
    margin-left: 10px;
}

.addeffect-section .size-box ul li.active {
    background: #212529;
}

.addeffect-section .size-box ul li.active a {
    color: #fff;
}

.addeffect-section .size-box ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
    color: #212529;
    font-weight: 400;
}

.addeffect-section .error-message {
    display: none;
    color: var(--theme-color);
    font-weight: 500;
    margin: 10px 0;
}

@media (max-width: 767px) {
    .addeffect-section .qty-box .input-group {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.addeffect-section .qty-box .input-group span button {
    border: 1px solid #ced4da;
    height: 100%;
}

.addeffect-section .qty-box .input-group .form-control {
    text-align: center;
    width: 80px;
    -webkit-box-flex: unset;
    -ms-flex: unset;
    flex: unset;
}

.addeffect-section .qty-box .input-group input {
    padding: 12px 10px;
}

.addeffect-section .qty-box .input-group button {
    background-color: transparent;
    border: 0;
    color: #212529;
    cursor: pointer;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    padding: 15px 20px;
}

.addeffect-section .qty-box .input-group button i {
    font-weight: 900;
    color: #212529;
}

.addeffect-section .qty-box .input-group .icon {
    padding-right: 0;
}

.product-buttons {
    margin-bottom: 20px;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 767px) {
    .product-buttons {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

@media (max-width: 575px) {
    .product-buttons {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.product-buttons .btn-solid {
    background-color: var(--theme-color);
    color: #fff;
    padding: 12px 45px;
    font-size: 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.product-buttons .btn-solid + .btn-solid {
    margin-left: 8px;
}

[dir="rtl"] .product-buttons .btn-solid + .btn-solid {
    margin-right: 8px;
    margin-left: unset;
}

@media (max-width: 991px) {
    .product-buttons .btn-solid {
        padding: 12px 30px;
    }
}

@media (max-width: 575px) {
    .product-buttons .btn-solid {
        width: 100%;
    }
}

@media (max-width: 480px) {
    .product-buttons .btn-solid {
        padding: 10px 20px;
        font-size: 14px;
    }
}

.product-buttons .btn-solid i {
    font-size: 17px;
    margin-right: 5px;
}

[dir="rtl"] .product-buttons .btn-solid i {
    margin-right: unset;
    margin-left: 5px;
}

.product-buttons .btn-solid span {
    font-weight: 500;
}

.product-buttons .btn-solid.btn-animation i {
    -webkit-animation: ring 4s 0.7s ease-in-out infinite;
    animation: ring 4s 0.7s ease-in-out infinite;
}

.shipping-order li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: left;
}

@media (max-width: 767px) {
    .shipping-order li {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.shipping-order li img {
    margin-right: 18px;
}

.product-count {
    background-color: #eff2f7;
    padding: 10px 12px !important;
    margin-bottom: 20px;
}

.product-count img {
    margin-right: 6px;
}

[dir="rtl"] .product-count img {
    margin-right: 0;
    margin-left: 6px;
}

.product-count ul {
    margin-bottom: -4px;
}

.product-count ul li {
    margin-bottom: 4px;
}

.product-count ul li:first-child {
    margin-right: 14px;
}

[dir="rtl"] .product-count ul li:first-child {
    margin-right: 0;
    margin-left: 14px;
}

.rating-section {
    margin-bottom: 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 767px) {
    .rating-section {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.rating-section h6 {
    margin-bottom: 0;
    margin-left: 10px;
    font-weight: 500;
    font-size: 15px;
}

[dir="rtl"] .rating-section h6 {
    margin-left: 0;
    margin-right: 10px;
}

.color-variant {
    margin-bottom: 10px;
}

.color-variant li {
    height: 30px;
    width: 30px;
    cursor: pointer;
    display: inline-block;
    border-radius: 100%;
    margin-right: 5px;
    overflow: hidden;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}

.color-variant li + li {
    margin-left: 0;
}

.color-variant li:nth-child(1) {
    background-color: #f1e7e6;
}

.color-variant li:nth-child(3) {
    background-color: #bfbfbf;
}

.color-variant li.active {
    position: relative;
}

.color-variant li.active:after {
    content: "\f00c";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    top: 10px;
    height: 100%;
    right: 4px;
    height: 15px;
    width: 15px;
    background-size: 70%;
    background-repeat: no-repeat;
    position: absolute;
    opacity: 0.8;
}

.price-detail {
    font-size: 26px;
    color: #212529;
    font-weight: 400;
    margin: 15px 0;
}

.price-detail del {
    font-size: 14px;
    color: #aaaaaa;
    font-weight: 400;
}

.price-detail span {
    font-size: 16px;
    color: var(--theme-color);
    padding-left: 10px;
}

[dir="rtl"] .price-detail span {
    padding-left: 0;
    padding-right: 10px;
}

.label-section {
    margin: 10px 0;
}

.label-section .badge-grey-color {
    padding: 6px 11px;
    font-size: 12px;
    background: #929292;
}

.label-section .label-text {
    text-transform: capitalize;
    padding-left: 5px;
}

[dir="rtl"] .label-section .label-text {
    padding-left: 0;
    padding-right: 5px;
}

.service-accorion {
    padding: 28px;
}

.service-accorion .accordion-collapse {
    margin-top: 0 !important;
}

.service-accorion .accordion-collapse .accordion-body .category-list li {
    margin: 0 !important;
}

.service-accorion .accordion-collapse .accordion-body .category-list li + li {
    margin-top: 30px !important;
}

.service-accorion .accordion-collapse .accordion-body .category-list li .service-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.service-accorion .accordion-collapse .accordion-body .category-list li .service-wrap .service-icon svg {
    width: 30px;
    height: 30px;
    margin-right: 16px;
    fill: var(--theme-color);
    stroke: var(--theme-color);
    font-weight: 300;
}

[dir="rtl"] .service-accorion .accordion-collapse .accordion-body .category-list li .service-wrap .service-icon svg {
    margin-right: 0;
    margin-left: 16px;
}

@media (max-width: 767px) {
    .service-accorion .accordion-collapse .accordion-body .category-list li .service-wrap .service-icon svg {
        width: 35px;
        height: 35px;
    }
}

.service-accorion .accordion-collapse .accordion-body .category-list li .service-wrap .service-content h3 {
    margin-top: -1px;
    font-size: 15px;
    font-weight: 400;
}

@media (max-width: 1199px) {
    .service-accorion .accordion-collapse .accordion-body .category-list li .service-wrap .service-content h3 {
        margin-bottom: 2px !important;
    }
}

.service-accorion .accordion-collapse .accordion-body .category-list li .service-wrap .service-content span {
    display: block;
    margin-bottom: -3px;
}

@media (max-width: 991px) {
    .service-accorion .accordion-collapse .accordion-body .category-list li .service-wrap .service-content span {
        font-size: 13px;
    }
}

.details-items .color-image {
    margin: 20px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 767px) {
    .details-items .color-image {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.details-items .color-image .image-select {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.details-items .color-image .image-select h5 {
    white-space: nowrap;
}

.details-items .color-image .image-select .image-section {
    width: calc(100% - 30px);
    margin-left: 10px;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

[dir="rtl"] .details-items .color-image .image-select .image-section {
    margin-left: 0;
    margin-right: 10px;
}

.details-items .color-image .image-select .image-section li {
    width: 60px;
    height: 60px;
    margin-right: 10px;
    overflow: hidden;
    border-radius: 5px;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.details-items .color-image .image-select .image-section li.active {
    -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.4);
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.4);
}

.details-items .details-image {
    position: relative;
}

.details-items .details-image .product-image-tag {
    position: relative;
}

.details-items .details-image .product-image-tag img {
    border-radius: 5px;
    height: 100%;
    position: relative;
}

.details-items .details-image .product-image-tag .label-tag {
    position: absolute;
    bottom: 10px;
    right: 0;
    border-radius: 50px 0 0 50px;
    background-color: #fff;
    display: none;
}

@media (max-width: 575px) {
    .details-items .details-image .product-image-tag .label-tag {
        display: block;
    }
}

.details-items .details-image .product-image-tag .label-tag h6 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 8px 10px;
    font-weight: 500;
    font-size: 12px;
}

.details-items .details-image .product-image-tag .label-tag h6 i {
    font-size: 10px;
    margin: -1px 2px 0 0;
    color: var(--theme-color);
}

.details-items .details-image .product-image-tag .label-tag h6 span {
    font-weight: 400;
    border-left: 1px solid #ddd;
    padding-left: 6px;
    margin-left: 6px;
}

.details-items .degree-section {
    position: relative;
}

.details-items .degree-section .image-360 {
    position: absolute;
    top: 20px;
    right: 20px;
    -webkit-filter: brightness(0.5);
    filter: brightness(0.5);
    z-index: 1;
    cursor: pointer;
}

.details-items .degree-section .image-360.videoplay-box {
    -webkit-filter: contrast(0.5);
    filter: contrast(0.5);
}

.details-items .details-image-option .play-icon {
    position: relative;
}

.details-items .details-image-option .play-icon .fa-play {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    color: #212529;
    border: 2px solid #212529;
    padding: 15px;
    border-radius: 50%;
    font-size: 18px;
}

.details-items .cloth-details-size {
    position: sticky;
    top: 10px;
}

@media (max-width: 767px) {
    .details-items .cloth-details-size {
        text-align: center;
    }
}

.details-items .cloth-details-size .details-image-concept {
    margin: 15px 0;
}

.details-items .cloth-details-size .details-image-concept h2 {
    text-transform: uppercase;
    font-size: calc(20px + (25 - 20) * ((100vw - 320px) / (1920 - 320)));
    line-height: 1.2em;
    color: #212529;
}

.details-items .cloth-details-size .rating-number {
    display: inline-block;
    padding: 10px 0 0 0;
    color: #212529;
}

.details-items .cloth-details-size .rating-number h5 {
    font-size: 15px;
    margin: 0;
    padding: 10px;
    border-radius: 5px;
    border: 1px solid rgba(0, 0, 0, 0.1);
}

.details-items .cloth-details-size .rating-number h5 .feather {
    width: 15px;
    margin: 0 2px;
    margin-top: -3px;
    fill: #ffa202;
    color: #ffa202;
}

.details-items .cloth-details-size .rating-number h5 span {
    font-weight: 300;
    color: #212529;
}

.details-items .cloth-details-size .price-rating {
    padding: 0;
    margin-bottom: 0;
}

.details-items .cloth-details-size .price-rating li {
    list-style: none;
    display: inline-block;
    margin-right: 10px;
    color: var(--theme-color);
    text-decoration: none;
    font-weight: 600;
    font-size: 20px;
}

.details-items .cloth-details-size .price-rating li:nth-child(2) {
    color: #696969;
    text-decoration: line-through;
    font-weight: 300;
    font-size: 15px;
}

.details-items .cloth-details-size .price-rating li:nth-child(3) {
    color: #009c00;
    font-weight: 600;
}

.details-items .cloth-details-size .border-product {
    padding: 20px 0;
    border-top: 1px dashed #ddd;
}

.details-items .cloth-details-size .border-product img {
    width: 100%;
    max-width: 75%;
}

@media (max-width: 767px) {
    .details-items .cloth-details-size .border-product img {
        width: 100%;
        max-width: 100%;
    }
}

.details-items .cloth-details-size .timer-5 {
    margin-top: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 10px -5px 0;
}

.details-items .cloth-details-size .timer-5 h5 {
    display: inline-block;
    margin: 5px;
}

.details-items .cloth-details-size .timer-5 .timer1 {
    padding: 0;
    width: auto;
    display: inline-block;
}

.details-items .cloth-details-size .timer-5 .timer1 .counter {
    display: inline-block;
}

.details-items .cloth-details-size .timer-5 .timer1 .counter h5 {
    display: inline-block;
    color: #212529;
}

.details-items .cloth-details-size .progress {
    background-color: #ddd;
    height: 5px;
    width: 70%;
}

@media (max-width: 1199px) {
    .details-items .cloth-details-size .progress {
        width: 75%;
    }
}

@media (max-width: 767px) {
    .details-items .cloth-details-size .progress {
        width: 100%;
    }
}

.details-items .cloth-details-size .progress .progress-bar {
    background-color: var(--theme-color);
}

.details-items .cloth-details-size .image-bundle .bundle-img {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.details-items .cloth-details-size .image-bundle .bundle-img .image-contain a img {
    max-width: 115px;
    -webkit-box-shadow: 0 0 8px rgba(33, 37, 41, 0.15);
    box-shadow: 0 0 8px rgba(33, 37, 41, 0.15);
}

.details-items .cloth-details-size .image-bundle .bundle-img span {
    margin: 0 15px;
}

.details-items .cloth-details-size .image-bundle .checkbox-details {
    margin-top: 18px;
}

.details-items .cloth-details-size .image-bundle .checkbox-details .checkbox-list {
    display: block;
    margin-bottom: 10px;
}

.details-items .cloth-details-size .cloth-size h5 {
    font-weight: 600;
    font-size: 22px;
    margin-bottom: 4px;
}

.details-items .cloth-details-size .cloth-size .choose-size {
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: -10px;
}

.details-items .cloth-details-size .cloth-size .choose-size li {
    list-style: none;
    border-radius: 5px;
    font-size: 15px;
    border: 1px solid rgba(33, 37, 41, 0.2);
    margin: 10px;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.details-items .cloth-details-size .cloth-size .choose-size li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #212529;
    text-decoration: none;
    width: 40px;
    height: 40px;
    font-size: 13px;
}

.details-items .cloth-details-size .cloth-size .choose-size li:hover a {
    font-weight: bold;
}

.details-items .cloth-details-size .cloth-timer {
    height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #212529;
    background-color: #eaeaea;
}

.details-items .cloth-details-size .cloth-timer h4 {
    font-size: calc(13px + (15 - 13) * ((100vw - 300px) / (1600 - 300)));
}

.details-items .cloth-details-size .cloth-timer #time-date {
    border-right: 1px solid rgba(0, 0, 0, 0.2);
    bottom: 0;
    right: 0;
    font-size: calc(13px + (15 - 13) * ((100vw - 300px) / (1600 - 300)));
    display: inline-block;
    margin: 0;
    font-weight: 500;
}

.details-items .cloth-details-size .cloth-color .dropdown-color {
    border-radius: 5px;
    padding: 9px;
    border: 1px solid rgba(0, 0, 0, 0.2);
    width: 100%;
    height: 100%;
    font-weight: 400;
    background-color: white;
}

.details-items .cloth-details-size .cloth-color .dropdown-color:focus-visible {
    outline: none;
}

.details-items .cloth-details-size .cloth-color .dropdown-color option {
    color: #212529;
}

.details-items .cloth-details-size .cloth-color .counter-1 {
    width: 100%;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.details-items .cloth-details-size .cloth-color .counter-1 input {
    width: 100px;
    height: 40px;
    border: 0;
    line-height: 30px;
    font-size: 20px;
    text-align: center;
    background: #fff;
    margin: 0px 5px;
    color: #212529;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: 0;
}

.details-items .cloth-details-size .cloth-color .counter-1 span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 25px;
    width: 40px;
    height: 40px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: #696969;
    border-radius: 5px;
}

.details-items .cloth-details-size .cloth-color .counter-1 span .feather {
    color: #fff;
    width: 20px;
    stroke-width: 2.5px;
}

.details-items .cloth-details-size .cloth-color .wise-list {
    width: 40px;
    height: 40px;
    border-radius: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: auto;
    border: 1px solid var(--theme-color);
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.details-items .cloth-details-size .cloth-color .wise-list:hover {
    border: 1px solid var(--theme-color);
    background-color: var(--theme-color);
}

.details-items .cloth-details-size .cloth-color .wise-list:hover .feather {
    fill: var(--theme-color);
    color: white;
    stroke-width: 3px;
}

.details-items .cloth-details-size .cloth-color .wise-list .feather {
    width: 20px;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.details-items .cloth-details-size .cart-button .buy-cart {
    background-color: var(--theme-color);
    width: 100%;
    height: 100%;
    border-radius: 5px;
    color: #fff;
    font-weight: bold;
    font-size: calc(13px + (16 - 13) * ((100vw - 320px) / (1600 - 320)));
    border: none;
    padding: 0;
}

.details-items .cloth-details-size .cart-button .buy-cart .fa-shopping-cart {
    margin-top: -1px;
}

.details-items .cloth-details-size .cart-button .add-cart {
    background-color: #fff;
    width: 100%;
    height: calc(40px + (50 - 40) * ((100vw - 320px) / (1600 - 320)));
    border-radius: 5px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    font-size: calc(13px + (16 - 13) * ((100vw - 320px) / (1600 - 320)));
    padding: 0;
}

.details-items .cloth-details-size .cart-button .add-cart h6 {
    font-weight: 400;
}

.details-items .cloth-details-size .pay-option {
    padding: 0;
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.details-items .cloth-details-size .pay-option li {
    list-style: none;
    width: 60px;
    height: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.details-items .cloth-details-size .pay-option li a {
    color: gray;
    font-size: 30px;
    margin: 0;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-decoration: none;
}

.details-items .cloth-details-size .share-it {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
    align-content: center;
    position: absolute;
    top: 0;
    right: 0;
}

.details-items .cloth-details-size .share-it button {
    display: inline-block;
    color: #c6c9cc;
    cursor: pointer;
    background-color: #ececec;
    border: none;
    padding: 6px 12px;
    border-radius: 4px;
}

.details-items .cloth-details-size .share-it button .feather {
    width: 18px;
    color: #212529;
}

.details-items .cloth-details-size .share-it .share-option {
    padding: 0;
}

.details-items .cloth-details-size .share-it .share-option li {
    list-style: none;
    margin-right: 20px;
}

.details-items .cloth-details-size .share-it .share-option li a {
    color: #212529;
    font-size: 20px;
}

.details-items .cloth-details-size .share-it .share-option li a:hover {
    color: #696969;
}

.cloth-review .nav-tabs {
    -ms-flex-wrap: initial;
    flex-wrap: initial;
    overflow-x: auto;
    overflow-y: hidden;
    border-bottom: 1px solid #ced4da;
}

.cloth-review .nav-tabs .nav-link {
    color: #212529;
    border-bottom: 4px solid transparent;
    padding: 15px 20px;
    font-size: 19px;
    font-weight: 500;
    margin-right: 20px;
    white-space: nowrap;
}

[dir="rtl"] .cloth-review .nav-tabs .nav-link {
    margin-right: 0;
    margin-left: 20px;
}

@media (max-width: 575px) {
    .cloth-review .nav-tabs .nav-link {
        margin-right: 0;
    }
}

.cloth-review .nav-tabs .nav-link:hover {
    border-top-color: transparent;
    border-right-color: transparent;
    border-left-color: transparent;
    border-bottom: 4px solid var(--theme-color);
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.cloth-review .nav-tabs .nav-link.active {
    border-top-color: transparent;
    border-right-color: transparent;
    border-left-color: transparent;
    border-bottom: 4px solid var(--theme-color);
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    color: #212529;
    background-color: #fff;
}

.cloth-review .shipping-chart {
    padding-bottom: 5px;
    padding: 0;
}

.cloth-review .shipping-chart li {
    font-size: 15px;
    list-style: none;
    color: #696969;
    padding: 0;
    margin: 10px 0;
    display: block;
}

.cloth-review .tab-pane {
    padding-top: 30px;
}

.cloth-review .tab-pane .customer-review-box h4 {
    margin-bottom: 0px;
}

.cloth-review .tab-pane .customer-review-box .customer-section {
    border-bottom: 1px solid rgba(206, 212, 218, 0.7);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 30px 0;
}

.cloth-review .tab-pane .customer-review-box .customer-section .customer-profile {
    width: 60px;
    height: 60px;
    overflow: hidden;
    border-radius: 50%;
    margin-right: 28px;
}

[dir="rtl"] .cloth-review .tab-pane .customer-review-box .customer-section .customer-profile {
    margin-right: 0;
    margin-left: 28px;
}

.cloth-review .tab-pane .customer-review-box .customer-section .customer-details {
    width: calc(100% - 30px);
}

.cloth-review .tab-pane .customer-review-box .customer-section .customer-details h5 {
    font-weight: 500;
}

.cloth-review .tab-pane .customer-review-box .customer-section .customer-details p {
    line-height: 1.4;
}

.cloth-review .tab-pane .customer-review-box .customer-section .customer-details .date-custo {
    margin-top: 15px;
    font-size: 14px;
}

.cloth-review .tab-pane .customer-rating .rating-progess {
    margin-top: 21px;
}

.cloth-review .tab-pane .customer-rating .rating-progess li {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 20px;
}

.cloth-review .tab-pane .customer-rating .rating-progess li .progress {
    width: 100%;
    border-radius: 8px;
    height: 12px;
}

.cloth-review .tab-pane .customer-rating .rating-progess li .progress .progress-bar {
    background-color: #ffa202;
}

.cloth-review .tab-pane .customer-rating .rating-progess li h5 {
    margin: 0;
    white-space: nowrap;
    color: #212529;
    font-size: 14px;
}

.cloth-review .tab-pane .table-pane tr.bg-color {
    background-color: #eff2f7;
}

.cloth-review .tab-pane .pro .table-part {
    margin-top: 25px;
}

.cloth-review .tab-pane .pro .table-part tr {
    color: #7e7e7e;
}

.cloth-review .tab-pane .pro .table-part tr th {
    border: 1px solid #ced4da;
    background-color: #eff2f7;
    font-weight: 500;
    padding: 1.5rem !important;
    white-space: nowrap;
}

.cloth-review .tab-pane .pro .table-part tr td {
    border: 1px solid #ced4da;
    text-align: left;
    padding: 1.5rem !important;
    white-space: nowrap;
}

[dir="rtl"] .cloth-review .tab-pane .pro .table-part tr td {
    text-align: right;
}

.cloth-review .tab-pane .question-answer ul li {
    margin-bottom: 26px;
    padding-bottom: 26px;
    border-bottom: 1px solid #ced4da;
}

.cloth-review .tab-pane .question-answer ul li .que {
    font-weight: 500;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-bottom: 0;
}

.cloth-review .tab-pane .question-answer ul li .que .fa-question {
    margin-right: 15px;
    font-size: 19px;
    color: var(--theme-color);
    width: 38px;
    height: 38px;
    border-radius: 100%;
    border: 1px solid #ced4da;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

[dir="rtl"] .cloth-review .tab-pane .question-answer ul li .que .fa-question {
    margin-right: 0;
    margin-left: 15px;
}

.cloth-review .tab-pane .question-answer ul li .que .que-details {
    width: calc(100% - 30px);
}

.cloth-review .tab-pane .question-answer ul li .que .que-details h6 {
    font-weight: 400;
    text-transform: capitalize;
    letter-spacing: 0.9px;
    display: block;
    width: 100%;
    color: #212529;
    font-size: 16px;
    line-height: 1.5;
}

.cloth-review .tab-pane .question-answer ul li .que .que-details p {
    margin-bottom: 0;
    line-height: 1.6;
    letter-spacing: 0.05em;
    font-size: 14px;
    margin-top: 15px;
    font-weight: 300;
    color: #7e7e7e;
}

.cloth-review .tab-pane .speci-list {
    display: block;
    margin-bottom: 28px;
}

.cloth-review .tab-pane .speci-list h6 {
    font-weight: 500;
}

.cloth-review .tab-pane .speci-list h6 span {
    font-weight: 400;
}

.cloth-review .tab-pane p {
    margin-bottom: 0;
    line-height: 1.8;
    letter-spacing: 0.05em;
    font-size: 14px;
}

.cloth-review .tab-pane .submit-button {
    background-color: var(--theme-color);
    color: #fff;
    font-weight: bold;
}

.cloth-review .tab-pane table tbody tr th {
    padding: 1.2rem 0.5rem !important;
    font-weight: 400;
    white-space: nowrap;
}

.cloth-review .tab-pane table tbody tr td {
    padding: 1.2rem 0.5rem;
    white-space: nowrap;
    text-align: center;
}

.cloth-review .review-box .form-control:focus {
    border-color: #eff3f7 !important;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.part {
    margin-bottom: calc(0px + (20 - 0) * ((100vw - 320px) / (1920 - 320)));
}

.part .inner-title {
    font-weight: 400;
    text-transform: capitalize;
    font-size: 18px;
}

.custome-modal .modal-content {
    border-radius: 10px;
}

.custome-modal .modal-content .modal-header {
    padding: 0;
}

.custome-modal .modal-content .modal-header button {
    position: absolute;
    top: 10px;
    right: 10px;
    margin: 0;
    z-index: 1;
    opacity: 1;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.custome-modal .modal-content .modal-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
    align-content: center;
}

.custome-modal .modal-content .modal-body .share-it {
    padding: 0;
    margin: 0;
}

.custome-modal .modal-content .modal-body .share-it li {
    list-style: none;
    display: block;
}

.custome-modal .modal-content .modal-body .share-it li + li {
    margin-top: 30px;
}

.custome-modal .modal-content .modal-body .share-it li a {
    text-decoration: none;
    color: #212529;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
    align-content: center;
}

.custome-modal .modal-content .modal-body .share-it li a p {
    margin-bottom: 0;
}

.custome-modal .modal-content .modal-body .share-it li a i {
    margin-right: 10px;
    stroke-width: 1px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    line-height: 1.5;
    -ms-flex-line-pack: center;
    align-content: center;
}

.recently-purchase {
    background: #fff;
    max-width: 400px;
    border: 0;
    border-radius: 0;
    bottom: -200px;
    left: 10px;
    padding: 12px;
    position: fixed;
    text-align: left;
    width: auto;
    z-index: 7;
    -webkit-box-shadow: 0 0 4px 0 rgba(33, 37, 41, 0.2);
    box-shadow: 0 0 4px 0 rgba(33, 37, 41, 0.2);
    padding: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
}

[dir="rtl"] .recently-purchase {
    left: unset;
    right: 10px;
}

@media (max-width: 360px) {
    .recently-purchase {
        left: 0;
        margin: 0 13px;
    }
}

.recently-purchase.show {
    bottom: 10px;
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
}

@media (max-width: 767px) {
    .recently-purchase.show {
        bottom: 80px;
    }
}

@media (max-width: 480px) {
    .recently-purchase.show {
        bottom: 64px;
    }
}

.recently-purchase img {
    width: 22%;
}

.recently-purchase .close-popup {
    position: absolute;
    right: 7px;
    top: 7px;
    opacity: 0.5;
    color: #212529;
}

[dir="rtl"] .recently-purchase .close-popup {
    right: unset;
    left: 7px;
}

.recently-purchase .media-body {
    padding: 0 20px;
}

[dir="rtl"] .recently-purchase .media-body {
    text-align: right;
}

.recently-purchase .media-body h4 {
    font-size: calc(12px + (16 - 12) * ((100vw - 320px) / (1920 - 320)));
    font-weight: 500;
}

.recently-purchase .media-body .title {
    font-weight: 600;
}

.recently-purchase .media-body .product-name {
    color: var(--theme-color);
    font-size: 12px;
    display: block;
    margin: 2px 0;
}

.recently-purchase .media-body .timeAgo {
    display: block;
}

.stickyCart {
    padding-bottom: 94px;
}

@media (max-width: 575px) {
    .stickyCart {
        padding-bottom: 0;
    }
}

.stickyCart .sticky-bottom-cart {
    bottom: 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.stickyCart .recently-purchase.show {
    bottom: 110px;
}

.stickyCart .tap-top {
    bottom: 110px;
}

.outline-button {
    padding: 12px 45px;
    font-size: 15px;
    text-transform: capitalize;
    font-weight: 600;
}

@media (max-width: 767px) {
    .outline-button {
        padding: 12px;
    }
}

.sticky-bottom-cart {
    position: fixed;
    bottom: -160px;
    width: 100vw;
    z-index: 9;
    background-color: #fff;
    padding: 12px 0;
    -webkit-box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.16);
    box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.16);
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.sticky-bottom-cart .cart-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media (max-width: 575px) {
    .sticky-bottom-cart .cart-content {
        display: block;
    }
}

.sticky-bottom-cart .product-image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 575px) {
    .sticky-bottom-cart .product-image {
        display: none;
    }
}

.sticky-bottom-cart .product-image img {
    width: 60px;
    height: 70px;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: top;
    object-position: top;
}

.sticky-bottom-cart .product-image .content {
    margin-left: 12px;
    color: #212529;
    margin-top: 0;
}

[dir="rtl"] .sticky-bottom-cart .product-image .content {
    margin-left: 0;
    margin-right: 12px;
}

@media (max-width: 991px) {
    .sticky-bottom-cart .product-image .content {
        display: none;
    }
}

@media (max-width: 480px) {
    .sticky-bottom-cart .product-image .content {
        display: block;
    }
}

.sticky-bottom-cart .product-image .content h5, .sticky-bottom-cart .product-image .content h6 {
    margin-bottom: 0;
}

.sticky-bottom-cart .product-image .content h5 {
    font-size: 16px;
    font-weight: 500;
    text-transform: capitalize;
}

.sticky-bottom-cart .product-image .content h6 {
    font-size: 15px;
    margin-top: 3px;
}

.sticky-bottom-cart .product-image .content h6 del {
    margin-left: 7px;
}

.sticky-bottom-cart .product-image .content h6 span {
    color: var(--theme-deafult);
    margin-left: 5px;
}

[dir="rtl"] .sticky-bottom-cart .product-image .content h6 span {
    margin-left: 0;
    margin-right: 5px;
}

.sticky-bottom-cart .selection-section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 10px;
}

@media (max-width: 575px) {
    .sticky-bottom-cart .selection-section {
        display: none;
    }
}

.sticky-bottom-cart .selection-section .form-control {
    background-color: #eff2f7;
    border: 1px solid #eff2f7;
    text-transform: capitalize;
}

.sticky-bottom-cart .selection-section .form-control:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
}

.sticky-bottom-cart .selection-section .form-group {
    width: 300px;
    margin-left: 10px;
    margin-right: 10px;
}

@media (max-width: 1199px) {
    .sticky-bottom-cart .selection-section .form-group {
        width: 190px;
    }
}

@media (max-width: 767px) {
    .sticky-bottom-cart .selection-section .form-group {
        margin-right: 0;
        width: unset;
    }
}

@media (max-width: 575px) {
    .sticky-bottom-cart .add-btn {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

@media (max-width: 575px) {
    .sticky-bottom-cart .add-btn a {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.sticky-bottom-cart .add-btn a.wishlist-btn {
    display: none;
    background-color: #eff2f7;
    color: #212529;
}

.sticky-bottom-cart .add-btn a.wishlist-btn:hover {
    background-color: var(--theme-color);
    border-color: var(--theme-color);
    color: #fff;
}

@media (max-width: 575px) {
    .sticky-bottom-cart .add-btn a.wishlist-btn {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

@media (max-width: 575px) {
    .sticky-bottom-cart .add-btn a + a {
        margin-left: 8px;
    }

    [dir="rtl"] .sticky-bottom-cart .add-btn a + a {
        margin-right: 8px;
        margin-left: unset;
    }
}

.sticky-bottom-cart .add-btn a i {
    margin-right: 7px;
}

[dir="rtl"] .sticky-bottom-cart .add-btn a i {
    margin-right: unset;
    margin-left: 7px;
}

.product-image {
    border-radius: 7px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.product-image:hover .product-details .cart-wrap {
    opacity: 1;
}

.product-image:hover .product-details .cart-wrap ul li {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}

.product-image:hover .product-details .cart-wrap ul li:nth-child(2) {
    -webkit-transition-delay: 0.1s;
    transition-delay: 0.1s;
}

.product-image:hover .product-details .cart-wrap ul li:nth-child(3) {
    -webkit-transition-delay: 0.2s;
    transition-delay: 0.2s;
}

.product-image:hover .product-details .cart-wrap ul li:nth-child(4) {
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
}

.product-image:hover .product-details .cart-wrap ul li:nth-child(5) {
    -webkit-transition-delay: 0.4s;
    transition-delay: 0.4s;
}

[dir="rtl"] .product-image {
    direction: rtl;
}

.product-image img {
    width: 80px;
    height: 90px;
    -o-object-fit: cover;
    object-fit: cover;
}

.product-image .product-details {
    margin-left: 15px;
    overflow: hidden;
    position: relative;
}

.product-image .product-details .cart-wrap {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100%;
    height: 100%;
    left: 0;
    background-color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-left: 20px;
    opacity: 0;
    -webkit-transition: .4s ease;
    transition: .4s ease;
}

[dir="rtl"] .product-image .product-details .cart-wrap {
    margin-left: unset;
    padding-right: 20px;
}

.product-image .product-details .cart-wrap ul li {
    opacity: 0;
    -webkit-transform: translateY(40px);
    transform: translateY(40px);
    -webkit-transition: .4s ease;
    transition: .4s ease;
}

.product-image .product-details .cart-wrap ul li + li {
    margin-left: 10px;
}

[dir="rtl"] .product-image .product-details .cart-wrap ul li + li {
    margin-left: unset;
    margin-right: 10px;
}

.product-image .product-details .cart-wrap ul li a .feather {
    width: 20px;
}

[dir="rtl"] .product-image .product-details {
    margin-left: 0;
    margin-right: 15px;
}

.product-image .product-details a {
    color: #212529;
}

.product-image .product-details a h3 {
    font-size: calc(14px + (16 - 14) * ((100vw - 320px) / (1920 - 320)));
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin: 4px 0 0;
}

.product-image .product-details h4 {
    font-size: calc(15px + (16 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.product-image .product-details h4 span {
    margin-left: 10px;
}

[dir="rtl"] .product-image .product-details h4 span {
    margin-left: unset;
    margin-right: 10px;
}

.product-image + .product-image {
    margin-top: 30px;
}

.wrapper {
    text-align: center;
    color: #696969;
    overflow: hidden;
}

.wrapper #threesixty {
    margin: 0 auto;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.wrapper .buttons-wrapper {
    max-width: 120px;
    width: 100%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.wrapper .buttons-wrapper .button {
    position: relative;
    border: none;
    width: 45px;
    cursor: pointer;
    height: 45px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.wrapper .buttons-wrapper .button:hover {
    background-color: #212529;
    color: #fff;
}

.compare-table tbody tr th, .compare-table tbody tr td {
    padding: 12px 20px;
    font-weight: 400;
}

.compare-table tbody tr td p {
    font-size: 14px;
    line-height: 1.8;
    letter-spacing: 0.9px;
    margin-bottom: 0;
}

.compare-table tbody tr td.table-image-section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.compare-table tbody tr td.table-image-section img {
    width: 100%;
    max-width: 250px;
}

.compare-table tbody tr td.table-image-section .image-details {
    margin-left: 20px;
    width: 100%;
}

.compare-table tbody tr td.table-image-section .image-details h5 {
    margin: 8px 0;
}

.compare-table tbody tr td.table-image-section .image-details p {
    line-height: 10px;
    margin-bottom: 0;
}

.compare-table tbody tr td.table-image-section .image-details .btn-solid {
    background-color: var(--theme-color);
    color: #fff;
    padding: 7px 25px;
}

.compare-table tbody tr td.product-description {
    width: 500px;
}

@-webkit-keyframes rounded {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    50% {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes rounded {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    50% {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@-webkit-keyframes run-shoes {
    0% {
        -webkit-transform: rotate(0deg) translate(0, 0);
        transform: rotate(0deg) translate(0, 0);
    }

    50% {
        -webkit-transform: rotate(5deg);
        transform: rotate(5deg);
        -webkit-transform-origin: left;
        transform-origin: left;
    }

    75% {
        -webkit-transform: rotate(-5deg);
        transform: rotate(-5deg);
        -webkit-transform-origin: right;
        transform-origin: right;
    }

    100% {
        -webkit-transform: rotate(0deg) translate(0, 0);
        transform: rotate(0deg) translate(0, 0);
    }
}

@keyframes run-shoes {
    0% {
        -webkit-transform: rotate(0deg) translate(0, 0);
        transform: rotate(0deg) translate(0, 0);
    }

    50% {
        -webkit-transform: rotate(5deg);
        transform: rotate(5deg);
        -webkit-transform-origin: left;
        transform-origin: left;
    }

    75% {
        -webkit-transform: rotate(-5deg);
        transform: rotate(-5deg);
        -webkit-transform-origin: right;
        transform-origin: right;
    }

    100% {
        -webkit-transform: rotate(0deg) translate(0, 0);
        transform: rotate(0deg) translate(0, 0);
    }
}

@-webkit-keyframes ripple {
    0% {
        -webkit-box-shadow: 0 0 0 0 rgba(239, 243, 247, 0.3), 0 0 0 1em rgba(239, 243, 247, 0.3);
        box-shadow: 0 0 0 0 rgba(239, 243, 247, 0.3), 0 0 0 1em rgba(239, 243, 247, 0.3);
    }

    100% {
        -webkit-box-shadow: 0 0 0 1em rgba(239, 243, 247, 0.3), 0 0 0 3em rgba(239, 243, 247, 0.3);
        box-shadow: 0 0 0 1em rgba(239, 243, 247, 0.3), 0 0 0 3em rgba(239, 243, 247, 0.3);
    }
}

@keyframes ripple {
    0% {
        -webkit-box-shadow: 0 0 0 0 rgba(239, 243, 247, 0.3), 0 0 0 1em rgba(239, 243, 247, 0.3);
        box-shadow: 0 0 0 0 rgba(239, 243, 247, 0.3), 0 0 0 1em rgba(239, 243, 247, 0.3);
    }

    100% {
        -webkit-box-shadow: 0 0 0 1em rgba(239, 243, 247, 0.3), 0 0 0 3em rgba(239, 243, 247, 0.3);
        box-shadow: 0 0 0 1em rgba(239, 243, 247, 0.3), 0 0 0 3em rgba(239, 243, 247, 0.3);
    }
}

@-webkit-keyframes ripple-1 {
    0% {
        -webkit-box-shadow: 0 0 0 0 rgba(232, 115, 22, 0.3), 0 0 0 1em rgba(232, 115, 22, 0.3);
        box-shadow: 0 0 0 0 rgba(232, 115, 22, 0.3), 0 0 0 1em rgba(232, 115, 22, 0.3);
    }

    100% {
        -webkit-box-shadow: 0 0 0 1em rgba(232, 115, 22, 0.3), 0 0 0 1.5em rgba(232, 115, 22, 0);
        box-shadow: 0 0 0 1em rgba(232, 115, 22, 0.3), 0 0 0 1.5em rgba(232, 115, 22, 0);
    }
}

@keyframes ripple-1 {
    0% {
        -webkit-box-shadow: 0 0 0 0 rgba(232, 115, 22, 0.3), 0 0 0 1em rgba(232, 115, 22, 0.3);
        box-shadow: 0 0 0 0 rgba(232, 115, 22, 0.3), 0 0 0 1em rgba(232, 115, 22, 0.3);
    }

    100% {
        -webkit-box-shadow: 0 0 0 1em rgba(232, 115, 22, 0.3), 0 0 0 1.5em rgba(232, 115, 22, 0);
        box-shadow: 0 0 0 1em rgba(232, 115, 22, 0.3), 0 0 0 1.5em rgba(232, 115, 22, 0);
    }
}

@-webkit-keyframes ripple-2 {
    0% {
        -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.3), 0 0 0 1em rgba(255, 255, 255, 0.3);
        box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.3), 0 0 0 1em rgba(255, 255, 255, 0.3);
    }

    100% {
        -webkit-box-shadow: 0 0 0 1em rgba(255, 255, 255, 0.3), 0 0 0 1.5em rgba(255, 255, 255, 0);
        box-shadow: 0 0 0 1em rgba(255, 255, 255, 0.3), 0 0 0 1.5em rgba(255, 255, 255, 0);
    }
}

@keyframes ripple-2 {
    0% {
        -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.3), 0 0 0 1em rgba(255, 255, 255, 0.3);
        box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.3), 0 0 0 1em rgba(255, 255, 255, 0.3);
    }

    100% {
        -webkit-box-shadow: 0 0 0 1em rgba(255, 255, 255, 0.3), 0 0 0 1.5em rgba(255, 255, 255, 0);
        box-shadow: 0 0 0 1em rgba(255, 255, 255, 0.3), 0 0 0 1.5em rgba(255, 255, 255, 0);
    }
}

@-webkit-keyframes rotate-flower {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transform-origin: bottom;
        transform-origin: bottom;
    }

    25% {
        -webkit-transform: rotate(8deg);
        transform: rotate(8deg);
    }

    50% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    75% {
        -webkit-transform: rotate(-8deg);
        transform: rotate(-8deg);
    }

    100% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

@keyframes rotate-flower {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transform-origin: bottom;
        transform-origin: bottom;
    }

    25% {
        -webkit-transform: rotate(8deg);
        transform: rotate(8deg);
    }

    50% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    75% {
        -webkit-transform: rotate(-8deg);
        transform: rotate(-8deg);
    }

    100% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

@-webkit-keyframes back {
    0% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px);
    }

    70% {
        -webkit-transform: translateX(-13px);
        transform: translateX(-13px);
    }

    100% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px);
    }
}

@keyframes back {
    0% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px);
    }

    70% {
        -webkit-transform: translateX(-13px);
        transform: translateX(-13px);
    }

    100% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px);
    }
}

@-webkit-keyframes regMask {
    0% {
        -webkit-transform: translate(0px, 0px) scale(0);
        transform: translate(0px, 0px) scale(0);
    }

    50% {
        -webkit-transform: translate(100px, 100px) scale(0.5);
        transform: translate(100px, 100px) scale(0.5);
    }

    100% {
        -webkit-transform: translate(0px, 0px) scale(1);
        transform: translate(0px, 0px) scale(1);
    }
}

@keyframes regMask {
    0% {
        -webkit-transform: translate(0px, 0px) scale(0);
        transform: translate(0px, 0px) scale(0);
    }

    50% {
        -webkit-transform: translate(100px, 100px) scale(0.5);
        transform: translate(100px, 100px) scale(0.5);
    }

    100% {
        -webkit-transform: translate(0px, 0px) scale(1);
        transform: translate(0px, 0px) scale(1);
    }
}

@-webkit-keyframes regMaskR {
    0% {
        -webkit-transform: translate(0px, 0px) scale(1);
        transform: translate(0px, 0px) scale(1);
    }

    50% {
        -webkit-transform: translate(150px, -150px) scale(0.5);
        transform: translate(150px, -150px) scale(0.5);
    }

    100% {
        -webkit-transform: translate(0px, 0px) scale(0);
        transform: translate(0px, 0px) scale(0);
    }
}

@keyframes regMaskR {
    0% {
        -webkit-transform: translate(0px, 0px) scale(1);
        transform: translate(0px, 0px) scale(1);
    }

    50% {
        -webkit-transform: translate(150px, -150px) scale(0.5);
        transform: translate(150px, -150px) scale(0.5);
    }

    100% {
        -webkit-transform: translate(0px, 0px) scale(0);
        transform: translate(0px, 0px) scale(0);
    }
}

@-webkit-keyframes regTag {
    0% {
        -webkit-transform: translate(0px, 0px) rotate(0deg);
        transform: translate(0px, 0px) rotate(0deg);
    }

    25% {
        -webkit-transform: translate(4px, 25px) rotate(11.25deg);
        transform: translate(4px, 25px) rotate(11.25deg);
    }

    50% {
        -webkit-transform: translate(-88px, 40px) rotate(22.5deg);
        transform: translate(-88px, 40px) rotate(22.5deg);
    }

    100% {
        -webkit-transform: translate(-96px, 8px) rotate(45deg);
        transform: translate(-96px, 8px) rotate(45deg);
    }
}

@keyframes regTag {
    0% {
        -webkit-transform: translate(0px, 0px) rotate(0deg);
        transform: translate(0px, 0px) rotate(0deg);
    }

    25% {
        -webkit-transform: translate(4px, 25px) rotate(11.25deg);
        transform: translate(4px, 25px) rotate(11.25deg);
    }

    50% {
        -webkit-transform: translate(-88px, 40px) rotate(22.5deg);
        transform: translate(-88px, 40px) rotate(22.5deg);
    }

    100% {
        -webkit-transform: translate(-96px, 8px) rotate(45deg);
        transform: translate(-96px, 8px) rotate(45deg);
    }
}

@-webkit-keyframes regTag2 {
    0% {
        width: 140px;
        height: 140px;
        line-height: 140px;
        -webkit-box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0.45);
        box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0.45);
    }

    100% {
        width: 70px;
        height: 70px;
        -webkit-box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0);
        box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0);
        line-height: 68px;
    }
}

@keyframes regTag2 {
    0% {
        width: 140px;
        height: 140px;
        line-height: 140px;
        -webkit-box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0.45);
        box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0.45);
    }

    100% {
        width: 70px;
        height: 70px;
        -webkit-box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0);
        box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0);
        line-height: 68px;
    }
}

@-webkit-keyframes regTagR {
    0% {
        -webkit-transform: translate(-96px, 8px) rotate(45deg);
        transform: translate(-96px, 8px) rotate(45deg);
    }

    25% {
        -webkit-transform: translate(-88px, 40px) rotate(22.5deg);
        transform: translate(-88px, 40px) rotate(22.5deg);
    }

    50% {
        -webkit-transform: translate(4px, 25px) rotate(11.25deg);
        transform: translate(4px, 25px) rotate(11.25deg);
    }

    100% {
        -webkit-transform: translate(0px, 0px) rotate(0deg);
        transform: translate(0px, 0px) rotate(0deg);
    }
}

@keyframes regTagR {
    0% {
        -webkit-transform: translate(-96px, 8px) rotate(45deg);
        transform: translate(-96px, 8px) rotate(45deg);
    }

    25% {
        -webkit-transform: translate(-88px, 40px) rotate(22.5deg);
        transform: translate(-88px, 40px) rotate(22.5deg);
    }

    50% {
        -webkit-transform: translate(4px, 25px) rotate(11.25deg);
        transform: translate(4px, 25px) rotate(11.25deg);
    }

    100% {
        -webkit-transform: translate(0px, 0px) rotate(0deg);
        transform: translate(0px, 0px) rotate(0deg);
    }
}

@-webkit-keyframes regTag2R {
    0% {
        width: 70px;
        height: 70px;
        -webkit-box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0);
        box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0);
        line-height: 68px;
    }

    100% {
        width: 140px;
        height: 140px;
        line-height: 140px;
        -webkit-box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0.45);
        box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0.45);
    }
}

@keyframes regTag2R {
    0% {
        width: 70px;
        height: 70px;
        -webkit-box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0);
        box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0);
        line-height: 68px;
    }

    100% {
        width: 140px;
        height: 140px;
        line-height: 140px;
        -webkit-box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0.45);
        box-shadow: 0px 2px 5px -1px rgba(33, 37, 41, 0.45);
    }
}

@-webkit-keyframes shake {
    from, to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }

    10%, 30%, 50%, 70%, 90% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0);
    }

    20%, 40%, 60%, 80% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0);
    }
}

@keyframes shake {
    from, to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }

    10%, 30%, 50%, 70%, 90% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0);
    }

    20%, 40%, 60%, 80% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0);
    }
}

@-webkit-keyframes fade {
    0% {
        opacity: 0;
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    50% {
        opacity: 0.5;
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
    }

    100% {
        opacity: 1;
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes fade {
    0% {
        opacity: 0;
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    50% {
        opacity: 0.5;
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
    }

    100% {
        opacity: 1;
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@-webkit-keyframes buttons-shake {
    10%, 90% {
        -webkit-transform: translate3d(-1px, 0, 0);
        transform: translate3d(-1px, 0, 0);
    }

    20%, 80% {
        -webkit-transform: translate3d(2px, 0, 0);
        transform: translate3d(2px, 0, 0);
    }

    30%, 50%, 70% {
        -webkit-transform: translate3d(-2px, 0, 0);
        transform: translate3d(-2px, 0, 0);
    }

    40%, 60% {
        -webkit-transform: translate3d(2px, 0, 0);
        transform: translate3d(2px, 0, 0);
    }
}

@keyframes buttons-shake {
    10%, 90% {
        -webkit-transform: translate3d(-1px, 0, 0);
        transform: translate3d(-1px, 0, 0);
    }

    20%, 80% {
        -webkit-transform: translate3d(2px, 0, 0);
        transform: translate3d(2px, 0, 0);
    }

    30%, 50%, 70% {
        -webkit-transform: translate3d(-2px, 0, 0);
        transform: translate3d(-2px, 0, 0);
    }

    40%, 60% {
        -webkit-transform: translate3d(2px, 0, 0);
        transform: translate3d(2px, 0, 0);
    }
}

@-webkit-keyframes ring {
    0% {
        -webkit-transform: rotateZ(0);
        transform: rotateZ(0);
    }

    1% {
        -webkit-transform: rotateZ(15deg);
        transform: rotateZ(15deg);
    }

    3% {
        -webkit-transform: rotateZ(-14deg);
        transform: rotateZ(-14deg);
    }

    5% {
        -webkit-transform: rotateZ(17deg);
        transform: rotateZ(17deg);
    }

    7% {
        -webkit-transform: rotateZ(-16deg);
        transform: rotateZ(-16deg);
    }

    9% {
        -webkit-transform: rotateZ(15deg);
        transform: rotateZ(15deg);
    }

    11% {
        -webkit-transform: rotateZ(-14deg);
        transform: rotateZ(-14deg);
    }

    13% {
        -webkit-transform: rotateZ(13deg);
        transform: rotateZ(13deg);
    }

    15% {
        -webkit-transform: rotateZ(-12deg);
        transform: rotateZ(-12deg);
    }

    17% {
        -webkit-transform: rotateZ(12deg);
        transform: rotateZ(12deg);
    }

    19% {
        -webkit-transform: rotateZ(-10deg);
        transform: rotateZ(-10deg);
    }

    21% {
        -webkit-transform: rotateZ(9deg);
        transform: rotateZ(9deg);
    }

    23% {
        -webkit-transform: rotateZ(-8deg);
        transform: rotateZ(-8deg);
    }

    25% {
        -webkit-transform: rotateZ(7deg);
        transform: rotateZ(7deg);
    }

    27% {
        -webkit-transform: rotateZ(-5deg);
        transform: rotateZ(-5deg);
    }

    29% {
        -webkit-transform: rotateZ(5deg);
        transform: rotateZ(5deg);
    }

    31% {
        -webkit-transform: rotateZ(-4deg);
        transform: rotateZ(-4deg);
    }

    33% {
        -webkit-transform: rotateZ(3deg);
        transform: rotateZ(3deg);
    }

    35% {
        -webkit-transform: rotateZ(-2deg);
        transform: rotateZ(-2deg);
    }

    37% {
        -webkit-transform: rotateZ(1deg);
        transform: rotateZ(1deg);
    }

    39% {
        -webkit-transform: rotateZ(-1deg);
        transform: rotateZ(-1deg);
    }

    41% {
        -webkit-transform: rotateZ(1deg);
        transform: rotateZ(1deg);
    }

    43% {
        -webkit-transform: rotateZ(0);
        transform: rotateZ(0);
    }

    100% {
        -webkit-transform: rotateZ(0);
        transform: rotateZ(0);
    }
}

@keyframes ring {
    0% {
        -webkit-transform: rotateZ(0);
        transform: rotateZ(0);
    }

    1% {
        -webkit-transform: rotateZ(15deg);
        transform: rotateZ(15deg);
    }

    3% {
        -webkit-transform: rotateZ(-14deg);
        transform: rotateZ(-14deg);
    }

    5% {
        -webkit-transform: rotateZ(17deg);
        transform: rotateZ(17deg);
    }

    7% {
        -webkit-transform: rotateZ(-16deg);
        transform: rotateZ(-16deg);
    }

    9% {
        -webkit-transform: rotateZ(15deg);
        transform: rotateZ(15deg);
    }

    11% {
        -webkit-transform: rotateZ(-14deg);
        transform: rotateZ(-14deg);
    }

    13% {
        -webkit-transform: rotateZ(13deg);
        transform: rotateZ(13deg);
    }

    15% {
        -webkit-transform: rotateZ(-12deg);
        transform: rotateZ(-12deg);
    }

    17% {
        -webkit-transform: rotateZ(12deg);
        transform: rotateZ(12deg);
    }

    19% {
        -webkit-transform: rotateZ(-10deg);
        transform: rotateZ(-10deg);
    }

    21% {
        -webkit-transform: rotateZ(9deg);
        transform: rotateZ(9deg);
    }

    23% {
        -webkit-transform: rotateZ(-8deg);
        transform: rotateZ(-8deg);
    }

    25% {
        -webkit-transform: rotateZ(7deg);
        transform: rotateZ(7deg);
    }

    27% {
        -webkit-transform: rotateZ(-5deg);
        transform: rotateZ(-5deg);
    }

    29% {
        -webkit-transform: rotateZ(5deg);
        transform: rotateZ(5deg);
    }

    31% {
        -webkit-transform: rotateZ(-4deg);
        transform: rotateZ(-4deg);
    }

    33% {
        -webkit-transform: rotateZ(3deg);
        transform: rotateZ(3deg);
    }

    35% {
        -webkit-transform: rotateZ(-2deg);
        transform: rotateZ(-2deg);
    }

    37% {
        -webkit-transform: rotateZ(1deg);
        transform: rotateZ(1deg);
    }

    39% {
        -webkit-transform: rotateZ(-1deg);
        transform: rotateZ(-1deg);
    }

    41% {
        -webkit-transform: rotateZ(1deg);
        transform: rotateZ(1deg);
    }

    43% {
        -webkit-transform: rotateZ(0);
        transform: rotateZ(0);
    }

    100% {
        -webkit-transform: rotateZ(0);
        transform: rotateZ(0);
    }
}

@-webkit-keyframes animateContainer {
    0% {
        opacity: 0;
        -webkit-transform: scale(0);
        transform: scale(0);
        -webkit-box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
        box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
    }

    25% {
        opacity: 1;
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
        -webkit-box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
        box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
    }

    43.75% {
        -webkit-transform: scale(1.15);
        transform: scale(1.15);
        -webkit-box-shadow: 0px 0px 0px 43.334px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
        box-shadow: 0px 0px 0px 43.334px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
    }

    62.5% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 21.667px rgba(255, 255, 255, 0.25) inset;
        box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 21.667px rgba(255, 255, 255, 0.25) inset;
    }

    81.25% {
        -webkit-box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset;
        box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset;
    }

    100% {
        opacity: 1;
        -webkit-box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset;
        box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset;
    }
}

@keyframes animateContainer {
    0% {
        opacity: 0;
        -webkit-transform: scale(0);
        transform: scale(0);
        -webkit-box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
        box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
    }

    25% {
        opacity: 1;
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
        -webkit-box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
        box-shadow: 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
    }

    43.75% {
        -webkit-transform: scale(1.15);
        transform: scale(1.15);
        -webkit-box-shadow: 0px 0px 0px 43.334px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
        box-shadow: 0px 0px 0px 43.334px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 65px rgba(255, 255, 255, 0.25) inset;
    }

    62.5% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 21.667px rgba(255, 255, 255, 0.25) inset;
        box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 21.667px rgba(255, 255, 255, 0.25) inset;
    }

    81.25% {
        -webkit-box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset;
        box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset;
    }

    100% {
        opacity: 1;
        -webkit-box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset;
        box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 0px 0px 0px rgba(255, 255, 255, 0.25) inset;
    }
}

@-webkit-keyframes animateCheck {
    from {
        stroke-dashoffset: 80;
    }

    to {
        stroke-dashoffset: 0;
    }
}

@keyframes animateCheck {
    from {
        stroke-dashoffset: 80;
    }

    to {
        stroke-dashoffset: 0;
    }
}

@-webkit-keyframes animateShadow {
    0% {
        opacity: 0;
        width: 100%;
        height: 15%;
    }

    25% {
        opacity: 0.25;
    }

    43.75% {
        width: 40%;
        height: 7%;
        opacity: 0.35;
    }

    100% {
        width: 85%;
        height: 15%;
        opacity: 0.25;
    }
}

@keyframes animateShadow {
    0% {
        opacity: 0;
        width: 100%;
        height: 15%;
    }

    25% {
        opacity: 0.25;
    }

    43.75% {
        width: 40%;
        height: 7%;
        opacity: 0.35;
    }

    100% {
        width: 85%;
        height: 15%;
        opacity: 0.25;
    }
}

@-webkit-keyframes mover {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        -webkit-transform: translateY(-7px);
        transform: translateY(-7px);
    }
}

@keyframes mover {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        -webkit-transform: translateY(-7px);
        transform: translateY(-7px);
    }
}

@-webkit-keyframes floating {
    from {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    to {
        -webkit-transform: translateY(-187%);
        transform: translateY(-187%);
    }
}

@keyframes floating {
    from {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    to {
        -webkit-transform: translateY(-187%);
        transform: translateY(-187%);
    }
}

@-webkit-keyframes fadeIn {
    to {
        opacity: 1;
    }
}

@keyframes fadeIn {
    to {
        opacity: 1;
    }
}

@-webkit-keyframes moveDown {
    from {
        -webkit-transform: translate(0, -100%);
        transform: translate(0, -100%);
    }

    to {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
}

@keyframes moveDown {
    from {
        -webkit-transform: translate(0, -100%);
        transform: translate(0, -100%);
    }

    to {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
}

@-webkit-keyframes pendulum {
    20% {
        -webkit-transform: rotate(60deg);
        transform: rotate(60deg);
    }

    40% {
        -webkit-transform: rotate(-40deg);
        transform: rotate(-40deg);
    }

    60% {
        -webkit-transform: rotate(20deg);
        transform: rotate(20deg);
    }

    80% {
        -webkit-transform: rotate(-5deg);
        transform: rotate(-5deg);
    }
}

@keyframes pendulum {
    20% {
        -webkit-transform: rotate(60deg);
        transform: rotate(60deg);
    }

    40% {
        -webkit-transform: rotate(-40deg);
        transform: rotate(-40deg);
    }

    60% {
        -webkit-transform: rotate(20deg);
        transform: rotate(20deg);
    }

    80% {
        -webkit-transform: rotate(-5deg);
        transform: rotate(-5deg);
    }
}

@-webkit-keyframes catHi {
    0%, 100% {
        opacity: 0;
        -webkit-transform: scale(0.8);
        transform: scale(0.8);
    }

    10%, 60% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes catHi {
    0%, 100% {
        opacity: 0;
        -webkit-transform: scale(0.8);
        transform: scale(0.8);
    }

    10%, 60% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

@-webkit-keyframes catShadow {
    0%, 100% {
        -webkit-transform: translate(40px, -35px) scale(0.3);
        transform: translate(40px, -35px) scale(0.3);
    }

    10%, 60% {
        opacity: 1;
        -webkit-transform: translate(-5px, 10px) scale(0.5);
        transform: translate(-5px, 10px) scale(0.5);
    }

    60% {
        opacity: 0;
    }
}

@keyframes catShadow {
    0%, 100% {
        -webkit-transform: translate(40px, -35px) scale(0.3);
        transform: translate(40px, -35px) scale(0.3);
    }

    10%, 60% {
        opacity: 1;
        -webkit-transform: translate(-5px, 10px) scale(0.5);
        transform: translate(-5px, 10px) scale(0.5);
    }

    60% {
        opacity: 0;
    }
}

@-webkit-keyframes moveBox {
    0% {
        opacity: 0;
        -webkit-transform: translate(0, -150px) rotate(20deg);
        transform: translate(0, -150px) rotate(20deg);
    }

    15% {
        opacity: 1;
        -webkit-transform: translate(0, 100px) rotate(-15deg);
        transform: translate(0, 100px) rotate(-15deg);
    }

    25% {
        -webkit-transform: translate(0, 250px) rotate(10deg);
        transform: translate(0, 250px) rotate(10deg);
    }

    30% {
        -webkit-transform: translate(0, 350px) rotate(-5deg);
        transform: translate(0, 350px) rotate(-5deg);
    }

    35% {
        opacity: 1;
        -webkit-transform: translate(0, 570px) rotate(0deg);
        transform: translate(0, 570px) rotate(0deg);
    }

    45%, 100% {
        opacity: 0;
        -webkit-transform: translate(0, 570px);
        transform: translate(0, 570px);
    }
}

@keyframes moveBox {
    0% {
        opacity: 0;
        -webkit-transform: translate(0, -150px) rotate(20deg);
        transform: translate(0, -150px) rotate(20deg);
    }

    15% {
        opacity: 1;
        -webkit-transform: translate(0, 100px) rotate(-15deg);
        transform: translate(0, 100px) rotate(-15deg);
    }

    25% {
        -webkit-transform: translate(0, 250px) rotate(10deg);
        transform: translate(0, 250px) rotate(10deg);
    }

    30% {
        -webkit-transform: translate(0, 350px) rotate(-5deg);
        transform: translate(0, 350px) rotate(-5deg);
    }

    35% {
        opacity: 1;
        -webkit-transform: translate(0, 570px) rotate(0deg);
        transform: translate(0, 570px) rotate(0deg);
    }

    45%, 100% {
        opacity: 0;
        -webkit-transform: translate(0, 570px);
        transform: translate(0, 570px);
    }
}

@-webkit-keyframes parachute {
    0% {
        -webkit-transform: translate(0, -150px) rotate(20deg) scale(0.8);
        transform: translate(0, -150px) rotate(20deg) scale(0.8);
        opacity: 0;
    }

    15% {
        -webkit-transform: translate(0, 100px) rotate(-15deg) scale(1);
        transform: translate(0, 100px) rotate(-15deg) scale(1);
        opacity: 1;
    }

    25% {
        -webkit-transform: translate(0, 250px) rotate(10deg);
        transform: translate(0, 250px) rotate(10deg);
    }

    30% {
        -webkit-transform: translate(0, 350px) rotate(-5deg);
        transform: translate(0, 350px) rotate(-5deg);
    }

    33% {
        -webkit-transform: translate(0, 460px) rotate(0deg) scale(0.9);
        transform: translate(0, 460px) rotate(0deg) scale(0.9);
        opacity: 1;
    }

    45%, 100% {
        -webkit-transform: translate(0, 480px);
        transform: translate(0, 480px);
        opacity: 0;
    }
}

@keyframes parachute {
    0% {
        -webkit-transform: translate(0, -150px) rotate(20deg) scale(0.8);
        transform: translate(0, -150px) rotate(20deg) scale(0.8);
        opacity: 0;
    }

    15% {
        -webkit-transform: translate(0, 100px) rotate(-15deg) scale(1);
        transform: translate(0, 100px) rotate(-15deg) scale(1);
        opacity: 1;
    }

    25% {
        -webkit-transform: translate(0, 250px) rotate(10deg);
        transform: translate(0, 250px) rotate(10deg);
    }

    30% {
        -webkit-transform: translate(0, 350px) rotate(-5deg);
        transform: translate(0, 350px) rotate(-5deg);
    }

    33% {
        -webkit-transform: translate(0, 460px) rotate(0deg) scale(0.9);
        transform: translate(0, 460px) rotate(0deg) scale(0.9);
        opacity: 1;
    }

    45%, 100% {
        -webkit-transform: translate(0, 480px);
        transform: translate(0, 480px);
        opacity: 0;
    }
}

@-webkit-keyframes fadeInOut {
    5%, 12% {
        opacity: 1;
    }

    20% {
        opacity: 0;
    }
}

@keyframes fadeInOut {
    5%, 12% {
        opacity: 1;
    }

    20% {
        opacity: 0;
    }
}

@-webkit-keyframes clouds {
    from {
        -webkit-transform: translate(-150%, 0);
        transform: translate(-150%, 0);
    }

    to {
        -webkit-transform: translate(150%, 0);
        transform: translate(150%, 0);
    }
}

@keyframes clouds {
    from {
        -webkit-transform: translate(-150%, 0);
        transform: translate(-150%, 0);
    }

    to {
        -webkit-transform: translate(150%, 0);
        transform: translate(150%, 0);
    }
}

@-webkit-keyframes round {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    50% {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes round {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    50% {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

/**=====================
     banner css start
==========================**/
.banner-style-2 .collection-banner {
    position: relative;
    cursor: pointer;
}

.banner-style-2 .collection-banner .banner-img {
    min-height: 390px;
    -o-object-fit: cover;
    object-fit: cover;
}

@media (max-width: 1460px) {
    .banner-style-2 .collection-banner .banner-img {
        min-height: 330px;
    }
}

@media (max-width: 1199px) {
    .banner-style-2 .collection-banner .banner-img {
        min-height: 300px;
    }
}

@media (max-width: 360px) {
    .banner-style-2 .collection-banner .banner-img {
        min-height: 240px;
    }
}

.banner-style-2 .collection-banner .banner-detail {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: absolute;
    top: 0;
    width: 100%;
    padding: 30px;
}

@media (max-width: 575px) {
    .banner-style-2 .collection-banner .banner-detail {
        padding: 20px;
    }
}

.banner-style-2 .collection-banner .banner-detail .font-dark-30 {
    font-weight: 800;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    color: #212529 !important;
}

.banner-style-2 .collection-banner .banner-detail .heart-wishlist .far {
    color: rgba(35, 35, 35, 0.6);
}

.banner-style-2 .collection-banner .banner-detail .heart-wishlist::after {
    opacity: 0;
    -webkit-transition: 0.5;
    transition: 0.5;
}

.banner-style-2 .collection-banner .contain-banner {
    top: unset;
    bottom: 60px;
}

.banner-style-2 .collection-banner .contain-banner.contain-center {
    top: 0;
    bottom: 0;
}

@media (max-width: 1199px) {
    .banner-style-2 .collection-banner .contain-banner {
        bottom: 30px;
    }
}

.banner-style-2 .collection-banner .contain-banner .banner-content {
    padding: 40px;
    width: calc(100% - 120px);
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
}

.banner-style-2 .collection-banner .contain-banner .banner-content.banner-center {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
}

@media (max-width: 1460px) {
    .banner-style-2 .collection-banner .contain-banner .banner-content {
        padding: 30px;
        width: unset;
    }
}

@media (max-width: 575px) {
    .banner-style-2 .collection-banner .contain-banner .banner-content {
        padding: 20px;
    }
}

@media (max-width: 1460px) {
    .banner-style-2 .collection-banner .contain-banner .banner-content span {
        letter-spacing: 3px;
    }
}

.banner-style-2 .collection-banner.ratio2_1 .bg-size:before {
    display: none;
}

.banner-style-2 .collection-banner:hover .contain-banner .banner-content.banner-center {
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
}

.banner-style-2 .collection-banner:hover .contain-banner .banner-content.with-bg {
    background-color: var(--theme-color);
    opacity: 0.9;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    color: #fff;
}

.banner-style-2 .collection-banner:hover .contain-banner .banner-content.with-big {
    background-color: var(--theme-color);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    opacity: 0.9;
}

.banner-style-2 .collection-banner:hover .banner-detail .heart-wishlist .far {
    color: var(--theme-color);
}

.banner-style-2 .collection-banner:hover .banner-detail .heart-wishlist::after {
    opacity: 0.1;
    -webkit-transition: 0.5;
    transition: 0.5;
}

.banner-style-2 .collection-banner:hover .banner-detail .font-dark-30 {
    color: #232323 !important;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.banner-style-2 .collection-banner:hover .banner-detail .font-dark-30 span {
    color: var(--theme-color) !important;
}

.banner-style-2.offer-banner .collection-banner .banner-img {
    min-height: unset;
}

.banner-style-2.offer-banner .collection-banner .contain-banner {
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    bottom: unset;
}

.banner-style-2.offer-banner .collection-banner .contain-banner .banner-content {
    padding: 40px;
}

.banner-style-2.offer-banner .collection-banner .contain-banner .banner-content span {
    letter-spacing: unset;
}

/**=====================
     responsive css start
==========================**/
@media (min-width: 1430px) {
    .container {
        max-width: 1400px;
    }
}

/**=====================
    RTL css start
==========================**/
[dir="rtl"] ol, [dir="rtl"] ul {
    padding: 0;
}

[dir="rtl"] .slick-slider {
    direction: ltr;
}

[dir="rtl"] .slick-slide {
    float: left;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInV0aWxzL192YXJpYWJsZXMuc2NzcyIsInV0aWxzL21peGluL19jb21tb24uc2NzcyIsImRlbW82LmNzcyIsInV0aWxzL21peGluL19icmVha3BvaW50cy5zY3NzIiwiYmFzZS9fcmVzZXQuc2NzcyIsImJhc2UvX3R5cG9ncmFwaHkuc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiY29tcG9uZW50cy9fYWxlcnQuc2NzcyIsImNvbXBvbmVudHMvX2xhYmVsLnNjc3MiLCJjb21wb25lbnRzL190YWIuc2NzcyIsImNvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MiLCJjb21wb25lbnRzL190aW1lci5zY3NzIiwiY29tcG9uZW50cy9fdGl0bGUuc2NzcyIsImNvbXBvbmVudHMvX3RhcF90b190b3Auc2NzcyIsImNvbXBvbmVudHMvX21vZGFsLnNjc3MiLCJjb21wb25lbnRzL19yYXRpby5zY3NzIiwiY29tcG9uZW50cy9fZm9ybS5zY3NzIiwiY29tcG9uZW50cy9fc2xpZGVyLnNjc3MiLCJjb21wb25lbnRzL19sYXp5bG9hZC5zY3NzIiwiY29tcG9uZW50cy9fdG91Y2hzcGluLnNjc3MiLCJjb21wb25lbnRzL19icmVhZGNydW1iLnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19uYXYuc2NzcyIsImxheW91dC9faG9tZV9zbGlkZXIuc2NzcyIsImxheW91dC9fc2xpY2stc2xpZGVyLnNjc3MiLCJsYXlvdXQvX3Bvc3Rlci5zY3NzIiwibGF5b3V0L19hcnJpdmFscy5zY3NzIiwibGF5b3V0L19zdWJzY3JpYmUuc2NzcyIsImxheW91dC9fc2VydmljZS5zY3NzIiwibGF5b3V0L19wcm9kdWN0LnNjc3MiLCJsYXlvdXQvX2NhdGVnb3J5LnNjc3MiLCJ1dGlscy9taXhpbi9fY2F0ZWdvcnkuc2NzcyIsImxheW91dC9fb2ZmZXIuc2NzcyIsImxheW91dC9fYmFubmVyLnNjc3MiLCJsYXlvdXQvX2Zvb3Rlci5zY3NzIiwibGF5b3V0L19jb29raWVfYmFyLnNjc3MiLCJsYXlvdXQvX2NvZGUuc2NzcyIsInBhZ2VzL19pbm5lcl9wYWdlLnNjc3MiLCJwYWdlcy9fc2hvcF9wYWdlLnNjc3MiLCJwYWdlcy9fcHJvZHVjdF9kZXRhaWxzLnNjc3MiLCJ1dGlscy9taXhpbi9fYW5pbWF0aW9uLnNjc3MiLCJ0aGVtZXMvX3Jlc3BvbnNpdmUuc2NzcyIsInRoZW1lcy9fcnRsLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxzQkFBYyxFQUFBOztBQUdsQjtFQUNJLHNCQUFjLEVBQUE7O0FBR2xCO0VBQ0ksc0JBQWMsRUFBQTs7QUFHbEI7RUFDSSxzQkFBYyxFQUFBOztBQUdsQjtFQUNJLHNCQUFjLEVBQUE7O0FBR2xCO0VBQ0ksc0JBQWMsRUFBQTs7QUFHbEI7RUFDSSxjQUFjLEVBQUE7O0FDekJsQjs7NEJDdUI0QjtBRG5CNUIsd0NBQUE7QUE4QkEsc0NBQUE7QUFFQSw0Q0FBQTtBQU9BLDBDQUFBO0FBRUEsMENBQUE7QUFhSTtFQUNJLHlCQUFxQyxFQUFBOztBQUR6QztFQUNJLHdDQUFxQyxFQUFBOztBQUR6QztFQUNJLHlCQUFxQyxFQUFBOztBQUR6QztFQUNJLHlCQUFxQyxFQUFBOztBQUk3Qyx1Q0FBQTtBQUVBLHVDQUFBO0FBS0k7RUFDSSxXRDNDSTtFQzRDSix1QkFBdUI7RUFDdkIseUJEdEMwQixFQUFBO0VDbUM5QjtJQS9EQSxXQURtQztJQUVuQyxrQkFGcUI7SUFNckIsV0FEd0I7SUFFeEIsWUFGdUM7SUFtRS9CLE1BQU07SUFDTixPQUFPO0lBQ1AsV0FBVztJQUNYLHlCRDlDc0I7SUMrQ3RCLDRCQUFvQjtJQUFwQixvQkFBb0IsRUFBQTtFQVo1QjtJQWdCUSxjRG5Ec0IsRUFBQTtJQ21DOUI7TUFtQlksVUFBVTtNQUNWLGtDQUEwQjtjQUExQiwwQkFBMEIsRUFBQTs7QUFwQnRDO0VBQ0ksV0QzQ0k7RUM0Q0osdUJBQXVCO0VBQ3ZCLHlCRGhDYztFQ3NEVixXRG5FQSxFQUFBO0VDMENSO0lBL0RBLFdBRG1DO0lBRW5DLGtCQUZxQjtJQU1yQixXQUR3QjtJQUV4QixZQUZ1QztJQW1FL0IsTUFBTTtJQUNOLE9BQU87SUFDUCxXQUFXO0lBQ1gseUJEeENVO0lDeUNWLDRCQUFvQjtJQUFwQixvQkFBb0IsRUFBQTtFQVo1QjtJQWdCUSxjRG5Ec0IsRUFBQTtJQ21DOUI7TUFtQlksVUFBVTtNQUNWLGtDQUEwQjtjQUExQiwwQkFBMEIsRUFBQTtFQXBCdEM7SUErQlksV0R4RUosRUFBQTs7QUN5Q1I7RUFDSSxXRDNDSTtFQzRDSix1QkFBdUI7RUFDdkIsb0NBSm9CLEVBQUE7RUFDeEI7SUEvREEsV0FEbUM7SUFFbkMsa0JBRnFCO0lBTXJCLFdBRHdCO0lBRXhCLFlBRnVDO0lBbUUvQixNQUFNO0lBQ04sT0FBTztJQUNQLFdBQVc7SUFDWCxvQ0FaZ0I7SUFhaEIsNEJBQW9CO0lBQXBCLG9CQUFvQixFQUFBO0VBWjVCO0lBZ0JRLGNEbkRzQixFQUFBO0lDbUM5QjtNQW1CWSxVQUFVO01BQ1Ysa0NBQTBCO2NBQTFCLDBCQUEwQixFQUFBOztBQWlCMUMsb0NBQUE7QUFFQSxxQ0FBQTtBQVNBLG1DQUFBO0FBYUEsd0NBQUE7QUVuSUE7OzRCRGdINEI7QUVoSDVCOzs0QkZtSDRCO0FFL0c1Qjs7RUFFSSxpQkFBaUIsRUFBQTtFRGlCYjtJQ25CUjs7TUFLUSxpQkFBaUIsRUFBQSxFQWtCeEI7RURKTztJQ25CUjs7TUFTUSxpQkFBaUIsRUFBQSxFQWN4QjtFREpPO0lDbkJSOztNQWFRLGlCQUFpQixFQUFBLEVBVXhCO0VESk87SUNuQlI7O01BaUJRLGlCQUFpQixFQUFBLEVBTXhCO0VESk87SUNuQlI7O01BcUJRLGlCQUFpQixFQUFBLEVBRXhCOztBQUVEO0VBQ0ksb0JBQW9CLEVBQUE7RURQaEI7SUNNUjtNQUlRLG9CQUFvQixFQUFBLEVBa0IzQjtFRDVCTztJQ01SO01BUVEsb0JBQW9CLEVBQUEsRUFjM0I7RUQ1Qk87SUNNUjtNQVlRLG9CQUFvQixFQUFBLEVBVTNCO0VENUJPO0lDTVI7TUFnQlEsb0JBQW9CLEVBQUEsRUFNM0I7RUQ1Qk87SUNNUjtNQW9CUSxvQkFBb0IsRUFBQSxFQUUzQjs7QUFFRDtFQUVRLG1CQUFPO01BQVAsV0FBTztVQUFQLE9BQU8sRUFBQTs7QUFJZjtFQUdZLGNKdkJVLEVBQUE7O0FJNEJ0QjtFQUNJLGFBQWEsRUFBQTtFQURqQjtJQUlRLGFBQWEsRUFBQTs7QUFJckI7RUFDSSx3RUFBd0U7RUFDeEUsMkVBQTJFLEVBQUE7RUFGL0U7SUFLUSxxRUFBcUU7SUFDckUsd0VBQXdFLEVBQUE7O0FBSWhGO0VBQ0kseUJKcERnQixFQUFBOztBRzFCWjtFQ2tGSjtJQUNJLDhCQUE4QixFQUFBLEVBQ2pDOztBQzVGTDs7NEJIeUw0QjtBR3JMNUI7RUFDSSw4QkxtSGU7RUtsSGYsa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixjTDJCOEI7RUsxQjlCLFNBQVM7RUFDVCxzQkxrQlEsRUFBQTtFS3hCWjtJQVNRLGFBQWE7SUFDYixZQUFZO0lBQ1osb0NMY0k7SUtiSixlQUFlO0lBQ2YsVUFBVTtJQUNWLE1BQU07SUFDTixVQUFVO0lBQ1Ysa0JBQWtCO0lBQ2xCLHdCQUFnQjtJQUFoQixnQkFBZ0IsRUFBQTtJQWpCeEI7TUFvQlksbUJBQW1CO01BQ25CLFVBQVUsRUFBQTs7QUFLdEI7RUFDSSxlQUFlO0VBQ2YsZ0JBQWdCLEVBQUE7O0FBR3BCO0VBQ0kscUJBQXFCO0VBQ3JCLGVBQWUsRUFBQTs7QUFHbkI7RUFDSSxlQUFlO0VBQ2YsaUJBQWlCLEVBQUE7O0FBR3JCO0VBQ0kseUJBQXlCO0VBQ3pCLDZCQUFxQjtFQUFyQixxQkFBcUI7RUFDckIscUJBQXFCLEVBQUE7RUFIekI7SUFNUSxxQkFBcUI7SUFDckIsNkJBQXFCO0lBQXJCLHFCQUFxQixFQUFBO0VBUDdCO0lBV1EsYUFBYSxFQUFBOztBQUlyQjtFQUVRLGFBQWEsRUFBQTs7QUFJckI7RUFFUSx3QkFBZ0I7VUFBaEIsZ0JBQWdCLEVBQUE7O0FBSXhCO0VBQ0ksYUFBYSxFQUFBOztBQUdqQjtFQUNJLHNCTGpEUSxFQUFBO0VLZ0RaO0lBSVEsd0JBQWdCO1lBQWhCLGdCQUFnQixFQUFBOztBQUl4QjtFQUNJLG9FQUFvRTtFQUNwRSxnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLDBCQUEwQjtFQUMxQixTQUFTLEVBQUE7O0FBR2I7RUFDSSxvRUFBb0U7RUFDcEUsZ0JBQWdCO0VBQ2hCLGNBQWM7RUFDZCwwQkFBMEI7RUFDMUIsU0FBUyxFQUFBOztBQUdiO0VBQ0ksb0VBQW9FO0VBQ3BFLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsU0FBUyxFQUFBOztBQUdiO0VBQ0ksb0VBQW9FO0VBQ3BFLGdCQUFnQjtFQUNoQixTQUFTO0VBQ1QsZ0JBQWdCLEVBQUE7O0FBR3BCO0VBQ0ksb0VBQW9FO0VBQ3BFLGdCQUFnQjtFQUNoQixTQUFTO0VBQ1QsZ0JBQWdCLEVBQUE7O0FBR3BCO0VBQ0ksb0VBQW9FO0VBQ3BFLGdCQUFnQjtFQUNoQixTQUFTO0VBQ1QsZ0JBQWdCLEVBQUE7O0FBR3BCO0VBQ0kscUJBQXFCLEVBQUE7O0FBR3pCO0VBQ0ksb0NBQW9DLEVBQUE7O0FBR3hDO0VBQ0ksb0NBQW9DLEVBQUE7O0FDekl4Qzs7NEJKb1M0QjtBSWpTNUI7RUFDSSxrQkFBa0I7RUFDbEIsMEhBQTBIO0VBQzFILGdCQUFnQjtFQUNoQixVQUFVO0VBQ1YsNEJBQW9CO0VBQXBCLG9CQUFvQjtFQUNwQixnQkFBZ0I7RUFDaEIsaUJBQWlCO0VBQ2pCLG9FQUFvRTtFQUNwRSwwQkFBMEI7RUFDMUIsbUJBQW1CLEVBQUE7RUFFbkI7SUFDSSxvRUFBb0U7SUFDcEUsb0NBQW9DO0lBQ3BDLFdOVUksRUFBQTtJTWJQO01BTU8sb0NBQW9DO01BQ3BDLFdOTUEsRUFBQTtFTUZSO0lBQ0ksZUFBZSxFQUFBO0VBeEJ2QjtJQTRCUSx3QkFBZ0I7WUFBaEIsZ0JBQWdCLEVBQUE7RUFHcEI7SUFDSSx3SEFBd0gsRUFBQTs7QUFJaEk7RUFDSSxpQkFBaUI7RUFDakIsZ0JBQWdCLEVBQUE7O0FBSWhCO0VBQ0ksc0JObEJJO0VNbUJKLGdCQUFnQixFQUFBOztBQUdwQjtFQUNJLGNOTmE7RU1PYixrQkFBa0I7RUFDbEIsNkJBQTZCO0VBQzdCLDBIQUEwSDtFQUMxSCxnQkFBZ0IsRUFBQTtFQUxuQjtJTDNDRCxXQURtQztJQUVuQyxrQkFGcUI7SUFNckIsV0FEd0I7SUFFeEIsWUFGdUM7SUtpRC9CLE1BQU07SUFDTixPQUFPO0lBQ1Asb0NBQW9DO0lBQ3BDLGFBQWEsRUFBQTs7QUFJckI7RUFDSSx5QkFBeUI7RUFDekIsa0JBQWtCO0VBQ2xCLHVCQUF1QjtFQUN2Qiw2QkFBNkIsRUFBQTtFQUpoQztJTDVERCxXQURtQztJQUVuQyxrQkFGcUI7SUFNckIsV0FEd0I7SUFFeEIsWUFGdUM7SUtpRS9CLE1BQU07SUFDTixPQUFPO0lBQ1AsUUFBUTtJQUNSLFdBQVc7SUFDWCxvQ0FBb0M7SUFDcEMsYUFBYTtJQUNiLDRCQUFvQjtJQUFwQixvQkFBb0IsRUFBQTtFQWYzQjtJTDVERCxXQURtQztJQUVuQyxrQkFGcUI7SUFNckIsV0FEd0I7SUFFeEIsWUFGdUM7SUFpQm5DLFFBQVE7SUFDUixTQUFTO0lBQ1Qsd0NBQWdDO1lBQWhDLGdDQUFnQztJSzJENUIsV0FBVztJQUNYLG9DQUFvQztJQUNwQyxVQUFVO0lBQ1YsNEJBQW9CO0lBQXBCLG9CQUFvQixFQUFBO0VBekIzQjtJQTZCTyx5QkFBeUIsRUFBQTtJQTdCaEM7TUFnQ1csVUFBVTtNQUNWLGtDQUEwQjtjQUExQiwwQkFBMEIsRUFBQTtJQWpDckM7TUFxQ1csYUFBYSxFQUFBOztBQUt6QjtFQUNJLHlCQUF5QjtFQUN6QiwwSEFBMEgsRUFBQTtFQUY3SDtJQUtPLHlCQUF5QixFQUFBOztBQUlqQztFQUNJLG9DQUFvQztFQUNwQyxXTjVGSSxFQUFBO0VNMEZQO0lBS08sV04vRkEsRUFBQTs7QU1tR1I7RUFDSSxrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLDBCQUEwQjtFQUMxQixnQkFBZ0IsRUFBQTs7QUFHcEI7RUFDSSwwQ04zRWM7RU00RWQsOEJBQXNCO1VBQXRCLHNCQUFzQjtFQUN0QixvQ0FBb0MsRUFBQTtFQUh2QztJQU1PLG9DQUFvQztJQUNwQyxXTmpIQTtJTWtIQSw4QkFBc0I7WUFBdEIsc0JBQXNCLEVBQUE7O0FBbEdsQztFTHJDSSxXQURtQztFQUVuQyxrQkFGcUI7RUFNckIsV0FEd0I7RUFFeEIsWUFGdUM7RUswSW5DLE1BQU07RUFDTixPQUFPO0VBQ1AsUUFBUTtFQUNSLFdBQVc7RUFDWCxvQ0FBb0M7RUFDcEMsYUFBYTtFQUNiLDRCQUFvQjtFQUFwQixvQkFBb0IsRUFBQTs7QUEvRzVCO0VMckNJLFdBRG1DO0VBRW5DLGtCQUZxQjtFQU1yQixXQUR3QjtFQUV4QixZQUZ1QztFQWlCbkMsUUFBUTtFQUNSLFNBQVM7RUFDVCx3Q0FBZ0M7VUFBaEMsZ0NBQWdDO0VLb0loQyxXQUFXO0VBQ1gsb0NBQW9DO0VBQ3BDLFVBQVU7RUFDViw0QkFBb0I7RUFBcEIsb0JBQW9CLEVBQUE7O0FBekg1QjtFQTZIUSx5QkFBeUIsRUFBQTtFQTdIakM7SUFnSVksVUFBVTtJQUNWLGtDQUEwQjtZQUExQiwwQkFBMEIsRUFBQTtFQWpJdEM7SUFxSVksYUFBYSxFQUFBOztBQUt6QjtFQUNJLGlCQUFpQjtFQUNqQixXTjVKUTtFTTZKUix1QkFBdUI7RUFDdkIsMENOOUpRLEVBQUE7RU0wSlo7SUFPUSxlQUFlLEVBQUE7RUFQdkI7SUwvS0ksV0FEbUM7SUFFbkMsa0JBRnFCO0lBTXJCLFdBRHdCO0lBRXhCLFlBRnVDO0lLd0xuQyxNQUFNO0lBQ04sT0FBTztJQUNQLFdBQVc7SUFDWCwwQ04xS0k7SU0yS0osNEJBQW9CO0lBQXBCLG9CQUFvQixFQUFBO0VBakI1QjtJQXFCUSxXTi9LSSxFQUFBO0lNMEpaO01Bd0JZLFVBQVU7TUFDVixrQ0FBMEI7Y0FBMUIsMEJBQTBCLEVBQUE7O0FBS3RDO0VBQ0ksaUJBQWlCO0VBQ2pCLGNObkw4QjtFTW9MOUIsdUJBQXVCO0VBQ3ZCLHNCTjVMUSxFQUFBO0VNd0xaO0lBT1EsZUFBZSxFQUFBO0VBUHZCO0lMN01JLFdBRG1DO0lBRW5DLGtCQUZxQjtJQU1yQixXQUR3QjtJQUV4QixZQUZ1QztJS3NObkMsTUFBTTtJQUNOLE9BQU87SUFDUCxXQUFXO0lBQ1gsc0JOeE1JO0lNeU1KLDRCQUFvQjtJQUFwQixvQkFBb0IsRUFBQTtFQWpCNUI7SUFxQlEsV043TUksRUFBQTtJTXdMWjtNQXdCWSxVQUFVO01BQ1Ysa0NBQTBCO2NBQTFCLDBCQUEwQixFQUFBOztBQUt0QztFQUNJLFdBQVc7RUFDWCxrQkFBa0IsRUFBQTs7QUNwUHRCOzs0Qkw0ZTRCO0FLemU1QjtFQUVRLGVBQWUsRUFBQTs7QUFJdkI7RUFDSSx5QlAwRGdCLEVBQUE7O0FFK2FwQjtFS3JlSSxnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxPQUFPO0VBQ1AsV0FBVztFQUNYLFdBQVcsRUFBQTs7QUNuQmY7OzRCTjZmNEI7QU0xZjVCO0VBQ0ksZUFBZTtFQUNmLGlCQUFpQjtFQUNqQix5QkFBeUI7RUFDekIsV1JxQlE7RVFwQlIscUJBQXFCO0VBQ3JCLGdCQUFnQixFQUFBO0VMY1o7SUtwQlI7TUFTUSxnQkFBZ0I7TUFDaEIsZUFBZSxFQUFBLEVBMEJ0QjtFQXZCRztJQUNJLGtCQUFrQjtJQUNsQixrRUFBa0U7SUFDbEUsTUFBTTtJQUNOLFdBQVc7SUFDWCxVQUFVLEVBQUE7RUFHZDtJQUNJLHNCUklJLEVBQUE7RVFEUjtJQUNJLHNCUkFJLEVBQUE7SUVzZlI7TU1uZlEsWUFBWSxFQUFBO0VBSXBCO0lBQ0ksb0NBQW9DLEVBQUE7O0FDckM1Qzs7NEJQMGhCNEI7QU92aEI1QjtFQUVRLHdCQUF1QjtNQUF2QixxQkFBdUI7VUFBdkIsdUJBQXVCO0VBQ3ZCLGdDVG9DVSxFQUFBO0VHbkJWO0lNcEJSO01BTVksb0JBQW9CO01BQ3BCLHdCQUF1QjtVQUF2QixxQkFBdUI7Y0FBdkIsdUJBQXVCO01BQ3ZCLHNCQUFrQjtVQUFsQixrQkFBa0I7TUFDbEIsa0JBQWtCO01BQ2xCLGtCQUFrQjtNQUNsQixtQkFBbUIsRUFBQSxFQTZCMUI7RUF4Q0w7SUFlWSxvRUFBb0U7SUFDcEUsY0FBYztJQUNkLGNUb0JRO0lTbkJSLGdCQUFnQjtJQUNoQixvQkFBb0I7SUFDcEIsdUJBQXVCO0lBQ3ZCLFlBQVk7SUFDWixvQ0FBb0MsRUFBQTtJTkZ4QztNTXBCUjtRQXlCZ0Isb0JBQW9CLEVBQUEsRUFjM0I7SUF2Q1Q7TUErQmdCLFlBQVksRUFBQTtJQS9CNUI7TUFvQ2dCLDJDQUEyQztNQUMzQyxjVFZBLEVBQUE7O0FTM0JoQjtFQTJDUSxnQkFBZ0IsRUFBQTs7QUM5Q3hCOzs0QlI2akI0QjtBUWxqQjVCO0VBQ0ksU0FBUztFQUNULFVBQVU7RUFDVixrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixzQlZXUTtFVVZSLG1DQUEyQjtFQUEzQiwyQkFBMkI7RUFDM0IsZ0JBQWdCO0VBQ2hCLDhEVlNRO1VVVFIsc0RWU1EsRUFBQTtFVWxCWjtJQVlRLGVBQWUsRUFBQTtJQVp2QjtNQWdCZ0IsY1ZRa0IsRUFBQTtFVXhCbEM7SVRKSSxXQURtQztJQUVuQyxrQkFGcUI7SVM0QmpCLFFBQVE7SUFDUixTQUFTO0lBQ1Qsa0NBQWtDO0lBQ2xDLG1DQUFtQztJQUNuQyw2QlZWSTtJVVdKLFNBQVM7SUFDVCxXQUFXO0lBQ1gsVUFBVSxFQUFBO0lSOGlCZDtNUTNpQlEsWUFBWTtNQUNaLFVBQVUsRUFBQTs7QUFLdEI7RUFDSSxrQkFBa0I7RUFDbEIsZUFBZSxFQUFBO0VBRm5CO0lBTVksU0FBUztJQUNULFVBQVU7SUFDVixrQ0FBMEI7WUFBMUIsMEJBQTBCO0lBQzFCLG1CQUFtQixFQUFBO0lQcEN2QjtNTzJCUjtRQVlnQixZQUFZLEVBQUEsRUFFbkI7RUFkVDtJVFpJLG9CQUR5QjtJQUN6QixvQkFEeUI7SUFDekIsYUFEeUI7SUFFekIseUJBRnlDO1FBRXpDLHNCQUZ5QztZQUV6QyxtQkFGeUM7SUFHekMsd0JBSDJEO1FBRzNELHFCQUgyRDtZQUczRCx1QkFIMkQsRUFBQTtJU2EvRDtNQXNCZ0Isc0JBQXNCO01BQ3RCLGtCQUFrQjtNQUNsQixZQUFZLEVBQUE7TVJvaUJ0QjtRUWppQmMsbUJBQW1CO1FBQ25CLGlCQUFpQixFQUFBO01QdkQ3QjtRTzJCUjtVQWdDb0IsZUFBZSxFQUFBO1VSa2lCekI7WVEvaEJjLG1CQUFtQjtZQUNuQixjQUFjLEVBQUEsRUFDakI7SUFyQ3JCO01BMENnQixvRUFBb0UsRUFBQTs7QUM1RnBGOzs0QlQ0bkI0QjtBU3puQjVCO0VBRVEsYUFBYTtFQUNiLHVDWDZCMEI7RVc1QjFCLFdYcUJJO0VXcEJKLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUI7RUFDbkIsOEJBQTZCO01BQTdCLDJCQUE2QjtVQUE3Qiw2QkFBNkIsRUFBQTtFVDBuQm5DO0lTdm5CVSxhQUFhLEVBQUE7RVJVakI7SVFwQlI7TUFjWSxhQUFhLEVBQUEsRUFpRnBCO0VSM0VHO0lRcEJSO01Ba0JZLGFBQWEsRUFBQSxFQTZFcEI7RUEvRkw7SUFzQlksa0JBQWtCLEVBQUE7SUF0QjlCO01BeUJnQixjQUFjO01BQ2Qsa0JBQWtCLEVBQUE7SVJOMUI7TVFwQlI7UUE4QmdCLGVBQWUsRUFBQSxFQWdFdEI7SVIxRUQ7TVFwQlI7UUFtQ29CLGVBQWUsRUFBQSxFQUV0QjtJQXJDYjtNQXdDZ0IsaUJBQWlCLEVBQUE7TUF4Q2pDO1FWSUksV0FEbUM7UUFFbkMsa0JBRnFCO1FBWWpCLFFBQVE7UUFDUixtQ0FBMkI7Z0JBQTNCLDJCQUEyQjtRVTZCZixXQUFXO1FBQ1gsK0NYVEE7UVdVQSxXQUFXLEVBQUE7UVQrbUJ2QjtVUzVtQmdCLFlBQVk7VUFDWixzQkFBc0I7VUFDdEIsZ0RYZko7VVdnQkksa0JBQWtCLEVBQUE7UVJqQ2xDO1VRcEJSO1lBeUR3QixXQUFXLEVBQUE7WVQ2bUJ2QjtjUzFtQmdCLFlBQVksRUFBQSxFQUNmO1FSekNqQjtVUXBCUjtZQWlFd0IsVUFBVSxFQUFBO1lUMG1CdEI7Y1N2bUJnQixXQUFXLEVBQUEsRUFDZDtNVHdtQm5CO1FTbm1CYyxrQkFBa0I7UUFDbEIsNkJBQTZCLEVBQUE7TVJ2RHpDO1FRcEJSO1VBK0VvQixpQkFBaUIsRUFBQTtVVG9tQjNCO1lTam1CYyxrQkFBa0IsRUFBQSxFQUNyQjtNUi9EYjtRUXBCUjtVQXVGb0IsZ0JBQWdCLEVBQUE7VVRpbUIxQjtZUzlsQmMsaUJBQWlCLEVBQUEsRUFDcEI7O0FBT3JCO0VBRVEsa0VBQWtFO0VBQ2xFLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUIsRUFBQTtFQUozQjtJQU9ZLCtEQUErRDtJQUMvRCxzQlhqRkE7SVdrRkEsMEhBQTBIO0lBQzFILGVBQWU7SUFDZixjWGxGSSxFQUFBO0lXdUVoQjtNQWNnQixvRUFBb0UsRUFBQTtJQWRwRjtNQWtCZ0IsY0FBYztNQUNkLGtCQUFrQixFQUFBO0lSakcxQjtNUThFUjtRQXVCZ0IsZUFBZSxFQUFBLEVBUXRCO0lSN0dEO01ROEVSO1FBNEJvQixlQUFlLEVBQUEsRUFFdEI7O0FBS2I7RUFDSSxrQkFBa0I7RVY3R2QsUUFBUTtFQUNSLFNBQVM7RUFDVCx3Q0FBZ0M7VUFBaEMsZ0NBQWdDO0VVNkdwQyx5Q1gxRVk7RVcyRVosa0NBQTBCO1VBQTFCLDBCQUEwQjtFQUMxQixVQUFVLEVBQUE7RUFMZDtJQVFRLG9CQUFhO0lBQWIsb0JBQWE7SUFBYixhQUFhO0lBQ2IseUJBQW1CO1FBQW5CLHNCQUFtQjtZQUFuQixtQkFBbUI7SUFDbkIsOEJBQTZCO1FBQTdCLDJCQUE2QjtZQUE3Qiw2QkFBNkI7SUFDN0Isa0JBQWtCO0lBQ2xCLFdYeEhJO0lXeUhKLFdBQVcsRUFBQTtJQWJuQjtNQWdCWSw4S0FBOEs7TUFDOUssMEhBQTBIO01BQzFILFVBQVUsRUFBQTtNQWxCdEI7UUFxQmdCLGtCQUFrQixFQUFBO1FBckJsQztVVmpJSSxXQURtQztVQUVuQyxrQkFGcUI7VUFZakIsUUFBUTtVQUNSLG1DQUEyQjtrQkFBM0IsMkJBQTJCO1VVK0lmLFVBQVU7VUFDVixXQUFXO1VBQ1gsMENYeElSO1VXeUlRLFFBQVEsRUFBQTtNQTdCNUI7UUFrQ2dCLGVBQWUsRUFBQTtNQWxDL0I7UUFzQ2dCLG9FQUFvRSxFQUFBO01BdENwRjtRQTBDZ0IsY0FBYztRQUNkLGtCQUFrQixFQUFBO01SNUoxQjtRUWlIUjtVQStDZ0IsZUFBZSxFQUFBLEVBUXRCO01SeEtEO1FRaUhSO1VBb0RvQixlQUFlLEVBQUEsRUFFdEI7O0FDOUxiOzs0QlZrd0I0QjtBVTl2QjVCO0VBQ0ksd0VBQXdFLEVBQUE7RUFENUU7SUFLWSxvRUFBb0U7SUFDcEUsa0JBQWtCO0lBQ2xCLHFCQUFxQjtJQUNyQixvQkFBb0IsRUFBQTtJQVJoQztNWEdJLFdBRG1DO01BRW5DLGtCQUZxQjtNQWlCakIsU0FBUztNQUNULG1DQUEyQjtjQUEzQiwyQkFBMkI7TVdQbkIsYUFBYTtNQUNiLFdBQVc7TUFDWCxXQUFXO01BQ1gsc0JaWUMsRUFBQTtJWTVCakI7TVhHSSxXQURtQztNQUVuQyxrQkFGcUI7TUFpQmpCLFNBQVM7TUFDVCxtQ0FBMkI7Y0FBM0IsMkJBQTJCO01XRW5CLFlBQVk7TUFDWixVQUFVO01BQ1YsV0FBVztNQUNYLG9DQUFvQztNQUNwQyxtQkFBbUIsRUFBQTtFQTFCbkM7SUErQlksbUJBQW1CO0lBQ25CLGNaTkk7SVlPSixtQkFBbUI7SUFDbkIsVUFBVTtJQUNWLGdCQUFnQixFQUFBO0VBbkM1QjtJQTBDZ0IsT0FBTztJQUNQLGdDQUF3QjtZQUF4Qix3QkFBd0IsRUFBQTtFQTNDeEM7SUFpRFEsZ0JBQWdCO0lBQ2hCLGVBQWUsRUFBQTtFQWxEdkI7SUFzRFEsbUJBQW1CO0lBQ25CLGdCQUFnQjtJQUNoQixjWnBCWSxFQUFBOztBWXdCcEI7RUFDSSxjWm5DWSxFQUFBO0VZa0NoQjtJQUlRLGdCQUFnQixFQUFBO0VBSnhCO0lBUVEsZ0JBQWdCLEVBQUE7RUFSeEI7SUFZUSxnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLGNadENZLEVBQUE7O0FZMENwQjtFQUNJLHdFQUF3RSxFQUFBO0VBRDVFO0lBSVEsZ0NaNUNVLEVBQUE7RVl3Q2xCO0lBUVEsZ0JBQWdCLEVBQUE7RUFSeEI7SUFZUSxnQkFBZ0I7SUFDaEIsZ0JBQWdCLEVBQUE7O0FBSXhCO0VBQ0ksc0VBQWtGO0VBQ2xGLHFCQUFxQjtFQUNyQixvQ0FBb0M7RUFDcEMscUJBQXFCO0VBQ3JCLDZCQUE2QjtFQUM3QixlQUFlLEVBQUE7RUFFZjtJQUNJLG9FQUE4RSxFQUFBOztBQzVHdEY7OzRCWCswQjRCO0FXNTBCNUI7RUFDSSxvQ0FBb0M7RUFDcEMsZUFBZTtFQUNmLFlBQVk7RUFDWixZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixnRUFBZ0U7RUFDaEUsaUVBQWlFO0VaMkJqRSxvQkFEeUI7RUFDekIsb0JBRHlCO0VBQ3pCLGFBRHlCO0VBRXpCLHlCQUZ5QztNQUV6QyxzQkFGeUM7VUFFekMsbUJBRnlDO0VBR3pDLHdCQUgyRDtNQUczRCxxQkFIMkQ7VUFHM0QsdUJBSDJEO0VZeEIzRCxvRUFBb0U7RUFDcEUsb0RiZ0JZO1VhaEJaLDRDYmdCWTtFYWZaLFVBQVU7RUFDVixpQ0FBeUI7RUFBekIseUJBQXlCO0VBQ3pCLGVBQWU7RUFDZixVQUFVLEVBQUE7RVhnMUJaO0lXNzBCTSxZQUFZO0lBQ1osV0FBVyxFQUFBO0VBbkJuQjtJWklJLFdBRG1DO0lBRW5DLGtCQUZxQjtJWXFCakIsV0FBVztJQUNYLFNBQVM7SUFDVCxtQmJDUTtJYUFSLE1BQU07SUFDTixPQUFPO0lBQ1AsU0FBUztJQUNULFdBQVc7SUFDWCx3QkFBZ0I7SUFBaEIsZ0JBQWdCLEVBQUE7RUEvQnhCO0lBb0NZLFlBQVksRUFBQTtFVmhCaEI7SVVwQlI7TUF5Q1EsWUFBWSxFQUFBLEVBMEJuQjtFQW5FRDtJQTZDUSxXQUFXO0lBQ1gsaUNBQXlCO0lBQXpCLHlCQUF5QjtJQUN6QixVQUFVLEVBQUE7SVh1MEJkO01XcDBCUSxZQUFZO01BQ1osVUFBVSxFQUFBO0VBbkR0QjtJQXdEUSxXYi9CSTtJYWdDSixnRUFBZ0U7SUFDaEUsaUVBQWlFO0ladkJyRSxvQkFEeUI7SUFDekIsb0JBRHlCO0lBQ3pCLGFBRHlCO0lBRXpCLHlCQUZ5QztRQUV6QyxzQkFGeUM7WUFFekMsbUJBRnlDO0lBR3pDLHdCQUgyRDtRQUczRCxxQkFIMkQ7WUFHM0QsdUJBSDJEO0lZMEJ2RCxvRUFBb0U7SUFDcEUsVUFBVSxFQUFBO0lWekNWO01VcEJSO1FBZ0VZLFlBQVksRUFBQSxFQUVuQjs7QUNyRUw7OzRCWjI0QjRCO0FZdjRCNUI7RUFHWSxZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLHNCZG1CQSxFQUFBO0VjeEJaO0lBUWdCLFlBQVk7SUFDWixVQUFVO0lBQ1Ysc0JkY0osRUFBQTtJY3hCWjtNQWFvQixXQUFXO01BQ1gsWUFBWTtNQUNaLFVBQVU7TUFDVixZQUFZO01BQ1osaUJBQWlCO01BQ2pCLGtCQUFrQjtNQUNsQixxQkFBcUI7TUFDckIsa0JBQWtCO01BQ2xCLFdkR1I7TWNGUSxlQUFlO01BQ2YsWUFBWTtNQUNaLGVBQWU7TUFDZixtQ0FBMkI7TUFBM0IsMkJBQTJCO01BQzNCLFVBQVUsRUFBQTtNWFB0QjtRV25CUjtVQTZCd0IsWUFBWSxFQUFBO1VacTRCMUI7WVlsNEJrQixZQUFZO1lBQ1osV0FBVyxFQUFBLEVBQ2Q7TVptNEJuQjtRWS8zQmtCLFlBQVk7UUFDWixXQUFXLEVBQUE7TUF2Q25DO1FBMkN3QixnQkFBZ0I7UUFDaEIsa0NBQWtDO1FBQ2xDLGdCQUFnQjtRQUNoQixlQUFlLEVBQUE7RUE5Q3ZDO0lBb0RnQixrRUFBa0U7SUFDbEUsa0JBQWtCO0lBQ2xCLGdCQUFnQjtJQUNoQixVQUFVLEVBQUE7SUF2RDFCO01BMERvQixrQkFBa0I7TUFDbEIsVUFBVTtNQUNWLFlBQVk7TUFDWixZQUFZO01BQ1osZ0NBQXdCO2NBQXhCLHdCQUF3QjtNQUN4Qiw0QkFBb0I7Y0FBcEIsb0JBQW9CO01BQ3BCLFlBQVk7TUFDWixvRGR2Q0o7Y2N1Q0ksNENkdkNKO01jd0NJLFdBQVcsRUFBQTtNWjAzQnpCO1FZdjNCa0IsWUFBWTtRQUNaLFdBQVc7UUFDWCxpQ0FBeUI7Z0JBQXpCLHlCQUF5QixFQUFBO0lBdkVqRDtNQTZFd0IsY2RuRFI7TWNvRFEsZ0JBQWdCO01BQ2hCLG1CQUFtQixFQUFBO0lBL0UzQztNQW1Gd0IscUJBQXFCO01BQ3JCLDJCQUEwQjtjQUExQiwwQkFBMEIsRUFBQTtNQXBGbEQ7UUF1RjRCLGtCQUFrQjtRQUNsQixjZHBEUjtRY3FEUSxnQkFBZ0IsRUFBQTtRQXpGNUM7VUE0RmdDLGNkbEVoQixFQUFBOztBYzZFaEI7RUFHWSw2QkFBNkI7RUFDN0IsWUFBWSxFQUFBO0VBSnhCO0lBT2dCLFVBQVUsRUFBQTtJQVAxQjtNQVVvQixXQUFXO01BQ1gsYUFBYSxFQUFBOztBQVFqQztFQUVRLGdCQUFnQjtFQUNoQix5QmR0RmMsRUFBQTtFY21GdEI7SUFTd0IsNkJBQTZCLEVBQUE7RUFUckQ7SUFhd0IseUJkekdKLEVBQUE7RWM0RnBCO0lBb0JZLGNkcEhJLEVBQUE7RWNnR2hCO0lBeUJnQixvQ0FBb0MsRUFBQTtFQXpCcEQ7SUE4Qm9CLGlDQUFpQyxFQUFBO0VBOUJyRDtJQW1Dd0IsV2RySVo7SWNzSVksZ0JBQWdCO0lBQ2hCLGVBQWU7SUFDZixpQkFBaUI7SWI5SHJDLG9CQUR5QjtJQUN6QixvQkFEeUI7SUFDekIsYUFEeUI7SUFFekIseUJBRnlDO1FBRXpDLHNCQUZ5QztZQUV6QyxtQkFGeUM7SUFHekMsd0JBSDJEO1FBRzNELHFCQUgyRDtZQUczRCx1QkFIMkQ7SWFpSXZDLG9DQUFvQztJQUNwQyxrQkFBa0IsRUFBQTtJQXpDMUM7TUE0QzRCLFdkOUloQixFQUFBO0Vja0daO0lBbURnQiw4QmR0SU07SWN1SU4sYUFBYTtJQUNiLGdCQUFnQjtJQUNoQixRQUFRO0lBQ1IsY2R2SkEsRUFBQTtJY2dHaEI7TUEwRG9CLGdCQUFnQjtNQUNoQixnQkFBZ0I7TUFDaEIseUJBQXlCLEVBQUE7RUE1RDdDO0lBbUVnQixrQkFBa0IsRUFBQTtJQW5FbEM7TUFzRW9CLGVBQWU7TUFDZixjZHRJQTtNY3VJQSxrQkFBa0I7TUFDbEIsdUJBQXVCLEVBQUE7O0FBekUzQztFQWlGWSxRQUFRO0VBQ1IsTUFBTTtFQUNOLFVBQVUsRUFBQTs7QUFuRnRCO0VBdUZZLGtCQUFrQixFQUFBO0VBdkY5QjtJYmxISSxXQUR3QjtJQUV4QixZQUZ1QyxFQUFBOztBYW9OM0M7RUFDSSxZQUFZO0VBQ1osVUFBVSxFQUFBO0VBRmQ7SUFLUSxXQUFXO0lBQ1gsWUFBWTtJQUNaLFVBQVU7SUFDVixZQUFZO0lBQ1osaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixxQkFBcUI7SUFDckIsa0JBQWtCO0lBQ2xCLFdkaE5JO0ljaU5KLGVBQWU7SUFDZixZQUFZO0lBQ1osZUFBZTtJQUNmLG1DQUEyQjtJQUEzQiwyQkFBMkI7SUFDM0IsVUFBVSxFQUFBO0lYMU5WO01Xd01SO1FBcUJZLFlBQVksRUFBQTtRWmt6QmhCO1VZL3lCUSxZQUFZO1VBQ1osV0FBVyxFQUFBLEVBQ2Q7SVpnekJUO01ZNXlCUSxZQUFZO01BQ1osV0FBVyxFQUFBO0lBL0J2QjtNQW1DWSxnQkFBZ0I7TUFDaEIsa0NBQWtDO01BQ2xDLGdCQUFnQjtNQUNoQixlQUFlLEVBQUE7O0FBSzNCO0VBSWdCLGtFQUFrRSxFQUFBO0VBSmxGO0lBUXdCLGNkbE5WO0ljbU5VLGVBQWU7SUFDZixnQkFBZ0I7SUFDaEIsa0JBQWtCLEVBQUE7RUFYMUM7SUFld0IscUJBQXFCO0lBQ3JCLDJCQUEwQjtZQUExQiwwQkFBMEIsRUFBQTtJQWhCbEQ7TUFtQjRCLGtCQUFrQjtNQUNsQixjZHRQUjtNY3VQUSxnQkFBZ0IsRUFBQTtNQXJCNUM7UUF3QmdDLGNkcFFoQixFQUFBOztBYytRaEI7RUFJZ0IsWUFBWTtFQUNaLFVBQVUsRUFBQTtFQUwxQjtJQVFvQixXQUFXO0lBQ1gsWUFBWTtJQUNaLFVBQVU7SUFDVixZQUFZO0lBQ1osaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixxQkFBcUI7SUFDckIsa0JBQWtCO0lBQ2xCLFdkalNSO0lja1NRLGVBQWU7SUFDZixZQUFZO0lBQ1osZUFBZTtJQUNmLG1DQUEyQjtJQUEzQiwyQkFBMkI7SUFDM0IsVUFBVSxFQUFBO0lYM1N0QjtNV3NSUjtRQXdCd0IsWUFBWSxFQUFBO1FabXhCNUI7VVloeEJvQixZQUFZO1VBQ1osV0FBVyxFQUFBLEVBQ2Q7SUE3QnpCO01BaUN3QixnQkFBZ0I7TUFDaEIsa0NBQWtDO01BQ2xDLGdCQUFnQjtNQUNoQixlQUFlLEVBQUE7O0FBcEN2QztFQTBDZ0Isa0VBQWtFLEVBQUE7RUExQ2xGO0lBNkNvQixrQkFBa0I7SUFDbEIsY2RsUUE7SWNtUUEsbUJBQW1CO0lBQ25CLG1CZHhSQztJY3lSRCxhQUFhO0lBQ2IsV0FBVztJQUNYLGVBQWU7SUFDZixvQkFBYTtJQUFiLG9CQUFhO0lBQWIsYUFBYTtJQUNiLHlCQUFtQjtRQUFuQixzQkFBbUI7WUFBbkIsbUJBQW1CLEVBQUE7SVgzVS9CO01Xc1JSO1FBd0R3QixjQUFjLEVBQUEsRUFpQnJCO0lBekVqQjtNQTREd0IsZUFBZTtNQUNmLGtCQUFrQjtNQUNsQixXQUFXO01BQ1gsWUFBWTtNQUNaLG1CZHBSSjtNY3FSSSxrQkFBa0I7TUFDbEIsV2RuVlo7TUNVUixvQkFEeUI7TUFDekIsb0JBRHlCO01BQ3pCLGFBRHlCO01BRXpCLHlCQUZ5QztVQUV6QyxzQkFGeUM7Y0FFekMsbUJBRnlDO01BR3pDLHdCQUgyRDtVQUczRCxxQkFIMkQ7Y0FHM0QsdUJBSDJELEVBQUE7TUVkdkQ7UVdzUlI7VUFzRTRCLG1CQUFtQixFQUFBLEVBRTFCO0VBeEVyQjtJQTRFb0Isb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWE7SUFDYix5QkFBbUI7UUFBbkIsc0JBQW1CO1lBQW5CLG1CQUFtQixFQUFBO0lYblcvQjtNV3NSUjtRQWdGd0IsY0FBYztRQUNkLDZCZDlWUDtRYytWTyxvQkFBb0IsRUFBQSxFQTJDM0I7SVhuWlQ7TVdzUlI7UUF1RjRCLGtCQUFrQjtRQUNsQix3RUFBd0UsRUFBQSxFQUUvRTtJQTFGckI7TUE2RndCLGlCQUFpQixFQUFBO01YblhqQztRV3NSUjtVQWdHNEIsa0JBQWtCO1VBQ2xCLGNBQWMsRUFBQSxFQUVyQjtJQW5HckI7TUFzR3dCLGFBQWEsRUFBQTtJQXRHckM7TUEyRzRCLFdBQVc7TUFDWCxnQkFBZ0I7TUFDaEIsWUFBWTtNQUNaLGNBQWMsRUFBQTtNWHBZbEM7UVdzUlI7VUFpSGdDLGNBQWMsRUFBQSxFQVVyQjtNWGpaakI7UVdzUlI7VUFxSGdDLGNBQWMsRUFBQSxFQU1yQjtNWGpaakI7UVdzUlI7VUF5SGdDLGVBQWUsRUFBQSxFQUV0QjtFQTNIekI7SUFpSXdCLGdCQUFnQixFQUFBO0lBakl4QztNQW9JNEIsZ0JBQWdCLEVBQUE7RUFwSTVDO0lBMElvQixZQUFZLEVBQUE7SVhoYXhCO01Xc1JSO1FidlFJLG9CQUR5QjtRQUN6QixvQkFEeUI7UUFDekIsYUFEeUI7UUFFekIseUJBRnlDO1lBRXpDLHNCQUZ5QztnQkFFekMsbUJBRnlDO1FBR3pDLHdCQUgyRDtZQUczRCxxQkFIMkQ7Z0JBRzNELHVCQUgyRCxFQUFBLEVhcWE5QztJQTdKakI7TUFpSndCLG9DQUFvQztNQUNwQyxnQmRuYVo7TWNvYVkseUJBQXlCO01BQ3pCLDhEQUE4RDtNQUM5RCwwSEFBMEg7TUFDMUgsb0VBQW9FLEVBQUE7TUF0SjVGO1FBeUo0QixvQ0FBb0M7UUFDcEMsV2QzYWhCLEVBQUE7O0FjcWJaO0VBSWdCLFVBQVUsRUFBQTtFQUoxQjtJQU9vQixXQUFXO0lBQ1gsWUFBWTtJQUNaLFVBQVU7SUFDVixZQUFZO0lBQ1osaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixxQkFBcUI7SUFDckIsa0JBQWtCO0lBQ2xCLFdkcGNSO0ljcWNRLGVBQWU7SUFDZixZQUFZO0lBQ1osZUFBZTtJQUNmLG1DQUEyQjtJQUEzQiwyQkFBMkI7SUFDM0IsVUFBVSxFQUFBO0lBcEI5QjtNQXVCd0IsZUFBZSxFQUFBO0lYamQvQjtNVzBiUjtRQTJCd0IsYUFBYSxFQUFBLEVBRXBCOztBQU9qQjtFQUVRLFdBQVc7RUFDWCxZQUFZO0VBQ1osVUFBVTtFQUNWLFlBQVk7RUFDWixpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsV2RuZUk7RWNvZUosZUFBZTtFQUNmLFlBQVk7RUFDWixlQUFlO0VBQ2YsbUNBQTJCO0VBQTNCLDJCQUEyQjtFQUMzQixVQUFVLEVBQUE7RVg3ZVY7SVc4ZFI7TUFrQlksWUFBWSxFQUFBO01ad3RCbEI7UVlydEJVLFlBQVk7UUFDWixXQUFXLEVBQUEsRUFDZDtFQXZCYjtJQTJCWSxnQkFBZ0I7SUFDaEIsa0NBQWtDO0lBQ2xDLGdCQUFnQjtJQUNoQixlQUFlLEVBQUE7O0FBOUIzQjtFQW1DUSxrRUFBa0UsRUFBQTs7QUFuQzFFO0VBdUNRLGtCQUFrQixFQUFBO0VBdkMxQjtJQTBDWSxXQUFXLEVBQUE7SVh4Z0JmO01XOGRSO1FBNkNnQixpQkFBaUI7UUFDakIsb0JBQWlCO1dBQWpCLGlCQUFpQixFQUFBLEVBRXhCO0VBaERUO0lBbURZLGtCQUFrQjtJQUNsQixZQUFZO0lBQ1osVUFBVSxFQUFBO0lBckR0QjtNQTBEd0IsU0FBUztNQUNULHlCZHJnQkY7TWNzZ0JFLFdBQVc7TUFDWCxZQUFZO01BQ1osb0JBQWlCO1NBQWpCLGlCQUFpQixFQUFBO0lBOUR6QztNQXFFNEIsb0NBQW9DLEVBQUE7O0FBckVoRTtFQWdGZ0IsZUFBZSxFQUFBOztBQWhGL0I7RUFvRmdCLGdCQUFnQixFQUFBOztBQXBGaEM7RUF5Rm9CLGVBQWUsRUFBQTs7QUF6Rm5DO0VBOEZnQixjQUFjLEVBQUE7RUE5RjlCO0lBaUdvQixXQUFXLEVBQUE7SUFqRy9CO01Bb0d3QixXQUFXO01BQ1gsMkJBQTJCO01BQzNCLGtCQUFrQjtNQUNsQix5QmR0aEJEO01jdWhCQyx3Q0FBZ0M7TUFBaEMsZ0NBQWdDO01BQ2hDLG9EZGhrQlI7Y2Nna0JRLDRDZGhrQlI7TWNpa0JRLG1CZDdpQkUsRUFBQTs7QWNtYzFCO0VBZ0hnQixnQkFBZ0I7RUFDaEIsZUFBZTtFQUNmLDhCZDVqQk0sRUFBQTtFYzBjdEI7SUFxSG9CLGdCQUFnQixFQUFBO0VYbmxCNUI7SVc4ZFI7TUF5SG9CLGdCQUFnQixFQUFBLEVBT3ZCO0VYOWxCTDtJVzhkUjtNQTZIb0IsZ0JBQWdCO01BQ2hCLGVBQWUsRUFBQSxFQUV0Qjs7QUFoSWI7RUFvSVksZ0JBQWdCLEVBQUE7O0FBcEk1QjtFQXdJWSxnQkFBZ0IsRUFBQTs7QUF4STVCO0VBNElZLG1CQUFtQjtFQUNuQiwwQkFBMEIsRUFBQTs7QUE3SXRDO0VBaUpZLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUIsRUFBQTtFQWxKL0I7SUFxSmdCLG1CQUFtQixFQUFBO0laeXFCL0I7TVl0cUJnQixvQkFBb0I7TUFDcEIsa0JBQWtCLEVBQUE7O0FBekp0QztFQStKWSxnQkFBZ0I7RUFDaEIsZUFBZTtFQUNmLDhCZDNtQlUsRUFBQTtFYzBjdEI7SUFxS29CLGdCQUFnQixFQUFBO0VYbm9CNUI7SVc4ZFI7TUEwS2dCLGdCQUFnQixFQUFBLEVBT3ZCO0VYL29CRDtJVzhkUjtNQThLZ0IsZ0JBQWdCO01BQ2hCLGVBQWUsRUFBQSxFQUV0Qjs7QUFqTFQ7RUFvTFksZUFBZTtFQUNmLDhCZC9uQlUsRUFBQTtFR3BCZDtJVzhkUjtNQXdMZ0IsZUFBZSxFQUFBLEVBdUJ0QjtFQS9NVDtJQTRMZ0Isb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWEsRUFBQTtJQTVMN0I7TUErTG9CLFdBQVc7TUFDWCxZQUFZO01BQ1osa0JBQWtCO01BQ2xCLHlCZDVvQkU7TWM2b0JGLGVBQWU7TWJscEIvQixvQkFEeUI7TUFDekIsb0JBRHlCO01BQ3pCLGFBRHlCO01BRXpCLHlCQUZ5QztVQUV6QyxzQkFGeUM7Y0FFekMsbUJBRnlDO01BR3pDLHdCQUgyRDtVQUczRCxxQkFIMkQ7Y0FHM0QsdUJBSDJELEVBQUE7TWFnZC9EO1FBdU13QixnREFBd0M7Z0JBQXhDLHdDQUF3QyxFQUFBO01Bdk1oRTtRQTJNd0IsaUJBQWlCLEVBQUE7O0FBM016QztFQWtOWSxlQUFlO0VBQ2YsOEJkN3BCVTtFYzhwQlYsaUNkOXBCVSxFQUFBO0VHcEJkO0lXOGRSO01BdU5nQixlQUFlLEVBQUEsRUFnQnRCO0VBdk9UO0lBNE5vQixjQUFjLEVBQUE7SUE1TmxDO01BK053QixlQUFlLEVBQUE7SUEvTnZDO01BbU93QixnQkFBZ0IsRUFBQTs7QUFuT3hDO0VBME9ZLGdCQUFnQixFQUFBO0VYeHNCcEI7SVc4ZFI7TUE2T2dCLGdCQUFnQixFQUFBLEVBRXZCOztBQUtUO0VBRVEsWUFBWSxFQUFBO0VBRnBCO0lBS1ksbUJBQW1CO0lBQ25CLGtFQUFrRTtJQUNsRSxpQkFBaUIsRUFBQTtJQVA3QjtNQVVnQixXQUFXO01BQ1gsWUFBWTtNQUNaLFVBQVU7TUFDVixZQUFZO01BQ1osaUJBQWlCO01BQ2pCLGtCQUFrQjtNQUNsQixxQkFBcUI7TUFDckIsa0JBQWtCO01BQ2xCLFdkL3RCSjtNY2d1QkksZUFBZTtNQUNmLFlBQVk7TUFDWixlQUFlO01BQ2YsbUNBQTJCO01BQTNCLDJCQUEyQjtNQUMzQixVQUFVLEVBQUE7TVh6dUJsQjtRV2t0QlI7VUEwQm9CLFlBQVksRUFBQTtVWm9vQnRCO1lZam9CYyxZQUFZO1lBQ1osV0FBVyxFQUFBLEVBQ2Q7TUEvQnJCO1FBbUNvQixnQkFBZ0I7UUFDaEIsa0NBQWtDO1FBQ2xDLGdCQUFnQjtRQUNoQixlQUFlLEVBQUE7RUF0Q25DO0lBNENZLGtFQUFrRSxFQUFBO0VBNUM5RTtJQWdEWSxrRUFBa0U7SUFDbEUsZ0JBQWdCLEVBQUE7SUFqRDVCO01Bb0RnQixTQUFTLEVBQUE7TUFwRHpCO1FBdURvQixXZHB3QlI7UWNxd0JRLGtCQUFrQixFQUFBO1Fad25COUI7VVlybkJnQixlQUFlO1VBQ2YsaUJBQWlCLEVBQUE7O0FBU3pDO0VBRVEsWUFBWSxFQUFBO0VBRnBCO0lBS1ksVUFBVTtJQUNWLFlBQVksRUFBQTtJQU54QjtNQVNnQixXQUFXO01BQ1gsWUFBWTtNQUNaLFVBQVU7TUFDVixZQUFZO01BQ1osaUJBQWlCO01BQ2pCLGtCQUFrQjtNQUNsQixxQkFBcUI7TUFDckIsa0JBQWtCO01BQ2xCLFdkbnlCSjtNY295QkksZUFBZTtNQUNmLFlBQVk7TUFDWixlQUFlO01BQ2YsbUNBQTJCO01BQTNCLDJCQUEyQjtNQUMzQixVQUFVLEVBQUE7TVg3eUJsQjtRV3V4QlI7VUF5Qm9CLFlBQVksRUFBQTtVWjZtQnRCO1lZMW1CYyxZQUFZO1lBQ1osV0FBVyxFQUFBLEVBQ2Q7TUE5QnJCO1FBa0NvQixnQkFBZ0I7UUFDaEIsa0NBQWtDO1FBQ2xDLGdCQUFnQjtRQUNoQixlQUFlLEVBQUE7RUFyQ25DO0lBMkNZLGtFQUFrRSxFQUFBO0lBM0M5RTtNQThDZ0IsZ0JBQWdCLEVBQUE7RUE5Q2hDO0lBbURZLGtFQUFrRTtJQUNsRSxnQkFBZ0I7SUFDaEIsY0FBYztJQUNkLHVCQUEyQjtRQUEzQixvQkFBMkI7WUFBM0IsMkJBQTJCLEVBQUE7SUF0RHZDO01BeURnQixTQUFTLEVBQUE7TUF6RHpCO1FBNERvQixXZDkwQlI7UWMrMEJRLGtCQUFrQixFQUFBO1FaK2xCOUI7VVk1bEJnQixlQUFlO1VBQ2YsaUJBQWlCLEVBQUE7O0FBU3pDO0VBRVEsWUFBWSxFQUFBO0VBRnBCO0lBS1ksVUFBVTtJQUNWLFlBQVksRUFBQTtJQU54QjtNQVNnQixXQUFXO01BQ1gsWUFBWTtNQUNaLFVBQVU7TUFDVixZQUFZO01BQ1osaUJBQWlCO01BQ2pCLGtCQUFrQjtNQUNsQixxQkFBcUI7TUFDckIsa0JBQWtCO01BQ2xCLFdkNzJCSjtNYzgyQkksZUFBZTtNQUNmLFlBQVk7TUFDWixlQUFlO01BQ2YsbUNBQTJCO01BQTNCLDJCQUEyQjtNQUMzQixVQUFVLEVBQUE7TVh2M0JsQjtRV2kyQlI7VUF5Qm9CLFlBQVksRUFBQTtVWm9sQnRCO1lZamxCYyxZQUFZO1lBQ1osV0FBVyxFQUFBLEVBQ2Q7TUE5QnJCO1FBa0NvQixnQkFBZ0I7UUFDaEIsa0NBQWtDO1FBQ2xDLGdCQUFnQjtRQUNoQixlQUFlLEVBQUE7RUFyQ25DO0lBMkNZLGtFQUFrRSxFQUFBO0lBM0M5RTtNQThDZ0IsZ0JBQWdCLEVBQUE7RUE5Q2hDO0lBbURZLGtFQUFrRTtJQUNsRSxnQkFBZ0I7SUFDaEIsY0FBYztJQUNkLHVCQUEyQjtRQUEzQixvQkFBMkI7WUFBM0IsMkJBQTJCLEVBQUE7SUF0RHZDO01BeURnQixTQUFTLEVBQUE7TUF6RHpCO1FBNERvQixXZHg1QlI7UWN5NUJRLGtCQUFrQixFQUFBO1Fac2tCOUI7VVlua0JnQixlQUFlO1VBQ2YsaUJBQWlCLEVBQUE7O0FBU3pDO0VBRVEsWUFBWSxFQUFBO0VBRnBCO0lBS1ksVUFBVTtJQUNWLFlBQVksRUFBQTtJQU54QjtNQVNnQixXQUFXO01BQ1gsWUFBWTtNQUNaLFVBQVU7TUFDVixZQUFZO01BQ1osaUJBQWlCO01BQ2pCLGtCQUFrQjtNQUNsQixxQkFBcUI7TUFDckIsa0JBQWtCO01BQ2xCLFdkdjdCSjtNY3c3QkksZUFBZTtNQUNmLFlBQVk7TUFDWixlQUFlO01BQ2YsbUNBQTJCO01BQTNCLDJCQUEyQjtNQUMzQixVQUFVLEVBQUE7TVhqOEJsQjtRVzI2QlI7VUF5Qm9CLFlBQVksRUFBQTtVWjJqQnRCO1lZeGpCYyxZQUFZO1lBQ1osV0FBVyxFQUFBLEVBQ2Q7TUE5QnJCO1FBa0NvQixnQkFBZ0I7UUFDaEIsa0NBQWtDO1FBQ2xDLGdCQUFnQjtRQUNoQixlQUFlLEVBQUE7RUFyQ25DO0lBMkNZLGtFQUFrRSxFQUFBO0lBM0M5RTtNQThDZ0IsZ0JBQWdCLEVBQUE7RUE5Q2hDO0lBbURZLGtFQUFrRTtJQUNsRSxnQkFBZ0I7SUFDaEIsY0FBYztJQUNkLHVCQUEyQjtRQUEzQixvQkFBMkI7WUFBM0IsMkJBQTJCLEVBQUE7SUF0RHZDO01BeURnQixTQUFTLEVBQUE7TUF6RHpCO1FBNERvQixXZGwrQlI7UWNtK0JRLGtCQUFrQixFQUFBO1FaNmlCOUI7VVkxaUJnQixlQUFlO1VBQ2YsaUJBQWlCLEVBQUE7O0FDbmdDekM7OzRCYmtqRDRCO0FhL2lENUI7RUFHWSxnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSxnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSxnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSxnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSxnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSxnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSxnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSxnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSxtQkFBbUI7RUFDbkIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSxnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSxnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSxpQkFBaUI7RUFDakIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSxpQkFBaUI7RUFDakIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSx5QkFBeUI7RUFDekIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSxpQkFBaUI7RUFDakIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSxpQkFBaUI7RUFDakIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSxpQkFBaUI7RUFDakIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSx3QkFBd0I7RUFDeEIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSxpQkFBaUI7RUFDakIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUFLMUI7RUFHWSxpQkFBaUI7RUFDakIsV0FBVztFQUNYLGNBQWMsRUFBQTs7QUN0TTFCOzs4QmR5cEQ4QjtBY3RwRDlCO0VBQ0ksZUFBZTtFQUNmLDBIQUEwSCxFQUFBO0VBRjlIO0lBS1EsWUFBWTtJQUNaLGdCQUFnQixFQUFBO0VkdXBEdEI7SWNucERNLGlCQUFpQixFQUFBO0VBVnpCO0lBY1EseUJoQmlCWTtJZ0JoQloscUJoQnlCYztJZ0J4QmQsd0JBQWdCO1lBQWhCLGdCQUFnQjtJQUNoQixjaEJVUSxFQUFBOztBZ0JOaEI7RUFDSSxlQUFlLEVBQUE7RUFEbkI7SUFJUSx5QmhCR007SWdCRk4scUJoQmNjO0lnQmJkLHdCQUFnQjtZQUFoQixnQkFBZ0I7SUFDaEIsY2hCRFEsRUFBQTs7QWdCS2hCO0VBRVEsVUFBVSxFQUFBOztBQUlsQjtFQUNJLGVBQWU7RUFDZixrQkFBa0I7RUFDbEIsa0JBQWtCLEVBQUE7RWQyb0RwQjtJY3hvRE0sa0JBQWtCO0lBQ2xCLGlCQUFpQixFQUFBO0VBUHpCO0lBV1EsNkVBQTZEO0lBQTdELHFFQUE2RDtJQUE3RCw2REFBNkQ7SUFBN0Qsd0hBQTZEO0lBQzdELDZDQUFxQztZQUFyQyxxQ0FBcUM7SWY5Q3pDLFdBRG1DO0lBRW5DLGtCQUZxQjtJZWlEakIsU0FBUztJQUNULFFBQVE7SUFDUixVQUFVO0lBQ1YsV0FBVztJQUNYLFdBQVc7SUFDWCxvQ0FBb0M7SUFDcEMsc0JBQXNCO0lBQ3RCLHdCQUF3QixFQUFBO0VBckJoQztJZmxDSSxXQURtQztJQUVuQyxrQkFGcUI7SWU2RGpCLFNBQVM7SUFDVCxPQUFPO0lBQ1AsV0FBVztJQUNYLFlBQVk7SUFDWixnQmhCM0NJO0lnQjRDSixzQmhCeENTO0lnQnlDVCxlQUFlLEVBQUE7RUFoQ3ZCO0lBcUNZLDZDQUFxQztZQUFyQyxxQ0FBcUMsRUFBQTs7QUM5RWpEOzs0QmZzdEQ0QjtBZWx0RDVCO0VBRVEsVUFBVTtFQUNWLHdCQUFnQjtFQUFoQixnQkFBZ0IsRUFBQTtFQUh4QjtJQU1ZLHdCQUFnQjtJQUFoQixnQkFBZ0IsRUFBQTtFQU41QjtJQVVZLHdCQUFnQjtJQUFoQixnQkFBZ0IsRUFBQTtJQVY1QjtNQWFnQix3QkFBZ0I7TUFBaEIsZ0JBQWdCLEVBQUE7O0FBTWhDO0VBRVEsZUFBZSxFQUFBO0VBRnZCO0lBS1ksZUFBZSxFQUFBO0lkTG5CO01jQVI7UUFRZ0IsY0FBYyxFQUFBLEVBWXJCO0lBcEJUO01BYW9CLGNBQWMsRUFBQTtNZGIxQjtRY0FSO1VBZ0J3QixhQUFhLEVBQUEsRUFFcEI7RUFsQmpCO0lBdUJZLGdCQUFnQixFQUFBOztBQUs1QjtFQUVRLGVBQWUsRUFBQTtFZDlCZjtJYzRCUjtNQUtZLGNBQWMsRUFBQSxFQVlyQjtFQWpCTDtJQVVnQixjQUFjLEVBQUE7SWR0Q3RCO01jNEJSO1FBYW9CLGFBQWEsRUFBQSxFQUVwQjs7QUFmYjtFQW9CUSxnQkFBZ0IsRUFBQTs7QUFJeEI7RUFFUSxTQUFTLEVBQUE7O0FBSWpCO0VBRVEsa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixVQUFVO0VBQ1Ysd0JBQWdCO0VBQWhCLGdCQUFnQjtFQUNoQixlQUFlLEVBQUE7RWRoRWY7SWMwRFI7TUFTWSxZQUFZLEVBQUEsRUErSm5CO0VkbE9HO0ljMERSO01BYVksWUFBWSxFQUFBLEVBMkpuQjtFQXhLTDtJQWlCWSx5QkFBeUI7SUFDekIsd0JBQWdCO0lBQWhCLGdCQUFnQixFQUFBO0VBbEI1QjtJQXNCWSxlQUFlO0lBQ2YsbUJBQW1CLEVBQUE7SWRqRnZCO01jMERSO1FBMEJnQixvQkFBb0I7UUFDcEIsWUFBWTtRQUNaLHNCakJqRkosRUFBQTtRaUJxRFo7VUErQm9CLG9DQUFvQztVQUNwQyxXakJyRlIsRUFBQSxFaUJzRks7RUFqQ2pCO0lBc0NZLFVBQVUsRUFBQTtJZnNxRGxCO01lbHFEZ0IsNkJBQTZCO01BQzdCLHlCQUF5QixFQUFBO0lmb3FEekM7TWUvcERZLFlBQVk7TUFDWixRQUFRLEVBQUE7SWQzR2hCO01jMERSO1FBcURnQixZQUFZO1FBQ1osUUFBUSxFQUFBO1FmZ3FEaEI7VWU3cERZLFdBQVc7VUFDWCxTQUFTLEVBQUEsRUFDWjtJZHJIVDtNYzBEUjtRQStEZ0IscUJBQXFCO1FBQ3JCLHNCQUFzQjtRQUN0QixZQUFZLEVBQUE7UWY2cERwQjtVZTFwRFksU0FBUztVQUNULFlBQVksRUFBQSxFQUNmO0lkaElUO01jMERSO1FBMEVnQixVQUFVO1FBQ1YsV0FBVyxFQUFBO1FmMHBEbkI7VWV2cERZLFNBQVM7VUFDVCxZQUFZLEVBQUEsRUFDZjtFQWhGakI7SUFxRlksVUFBVSxFQUFBO0lmcXBEbEI7TWVqcERnQiw0QkFBNEI7TUFDNUIsMEJBQTBCLEVBQUE7SWZtcEQxQztNZTlvRFksWUFBWTtNQUNaLFNBQVMsRUFBQTtJZDFKakI7TWMwRFI7UUFvR2dCLFVBQVUsRUFBQTtRZitvRGxCO1VlNW9EWSxZQUFZO1VBQ1osU0FBUyxFQUFBLEVBQ1o7SWRuS1Q7TWMwRFI7UUE2R2dCLFlBQVk7UUFDWixTQUFTLEVBQUE7UWY0b0RqQjtVZXpvRFksV0FBVztVQUNYLFVBQVUsRUFBQSxFQUNiO0lkN0tUO01jMERSO1FBdUhnQixTQUFTLEVBQUE7UWZ5b0RqQjtVZXRvRFksV0FBVztVQUNYLFVBQVUsRUFBQSxFQUNiO0lkdExUO01jMERSO1FBZ0lnQixXQUFXO1FBQ1gsU0FBUyxFQUFBO1Fmc29EakI7VWVub0RZLFFBQVE7VUFDUixZQUFZLEVBQUEsRUFDZjtJQXRJakI7TWhCMUVJLFdBRG1DO01BRW5DLGtCQUZxQjtNQU1yQixXQUR3QjtNQUV4QixZQUZ1QztNZ0JrTjNCLHlDakJoTUo7TWlCaU1JLFdBQVc7TUFDWCxNQUFNLEVBQUE7TWZvb0RoQjtRZWpvRGMsV0FBVztRQUNYLFdBQVcsRUFBQTtNZDVNdkI7UWMwRFI7VUFzSm9CLGFBQWEsRUFBQSxFQUVwQjtFQXhKYjtJQTRKWSxnQkFBZ0I7SUFDaEIseUJBQXlCO0lBQ3pCLGVBQWUsRUFBQTtJZHhObkI7TWMwRFI7UUFpS2dCLGVBQWUsRUFBQSxFQU10QjtJZGpPRDtNYzBEUjtRQXFLZ0IsYUFBYSxFQUFBLEVBRXBCOztBQUlUO0VBRVEsa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixVQUFVO0VBQ1Ysd0JBQWdCO0VBQWhCLGdCQUFnQjtFQUNoQixlQUFlLEVBQUE7RUFOdkI7SUFTWSx5QkFBeUI7SUFDekIsd0JBQWdCO0lBQWhCLGdCQUFnQixFQUFBO0VBVjVCO0lBY1ksZUFBZTtJQUNmLG1CQUFtQixFQUFBO0lkcFB2QjtNY3FPUjtRQWtCZ0Isb0JBQW9CO1FBQ3BCLFlBQVk7UUFDWixzQmpCcFBKLEVBQUE7UWlCZ09aO1VBdUJvQixvQ0FBb0M7VUFDcEMsV2pCeFBSLEVBQUEsRWlCeVBLO0VBekJqQjtJQThCWSxVQUFVLEVBQUE7SWZnbkRsQjtNZTdtRFksdUJBQXVCO01BQ3ZCLG1CQUFtQixFQUFBO0lkdlEzQjtNRHUzREY7UWUzbURjLHNCQUFzQjtRQUN0QixxQkFBcUIsRUFBQSxFQUN4QjtJZDlRVDtNRDIzREY7UWV4bURjLHNCQUFzQjtRQUN0QixxQkFBcUIsRUFBQSxFQUN4QjtFQWhEakI7SUFxRFksVUFBVSxFQUFBO0lmc21EbEI7TWVubURZLHVCQUF1QjtNQUN2QixvQkFBb0IsRUFBQTtJQXpEcEM7TWhCclBJLFdBRG1DO01BRW5DLGtCQUZxQjtNQU1yQixXQUR3QjtNQUV4QixZQUZ1QztNZ0JnVDNCLHlDakI5Uko7TWlCK1JJLFdBQVc7TUFDWCxNQUFNLEVBQUE7TWZxbURoQjtRZWxtRGMsWUFBWTtRQUNaLFdBQVc7UUFDWCxTQUFTLEVBQUE7TWQzU3JCO1FjcU9SO1VBMEVvQixhQUFhLEVBQUEsRUFFcEI7SWRqVEw7TURtNURGO1FlOWxEYyxvQkFBb0IsRUFBQSxFQUN2QjtJZHRUVDtNRHM1REY7UWUzbERjLHNCQUFzQjtRQUN0QixxQkFBcUIsRUFBQSxFQUN4QjtJZDdUVDtNRDA1REY7UWV4bERjLHNCQUFzQjtRQUN0QixxQkFBcUIsRUFBQSxFQUN4QjtFQS9GakI7SUFvR1ksZ0JBQWdCO0lBQ2hCLHlCQUF5QjtJQUN6QixlQUFlLEVBQUE7SWQzVW5CO01jcU9SO1FBeUdnQixlQUFlLEVBQUEsRUFNdEI7SWRwVkQ7TWNxT1I7UUE2R2dCLGFBQWEsRUFBQSxFQUVwQjs7QUFJVDs7RUFHUSxtQkFBbUI7RUFDbkIsV0FBVztFQUNYLFlBQVksRUFBQTtFZDdWWjtJY3dWUjs7TUFRWSxXQUFXO01BQ1gsWUFBWSxFQUFBLEVBUW5CO0VBakJMOztJQWFZLGVBQWU7SUFDZixrQ0FBa0M7SUFDbEMsZ0JBQWdCLEVBQUE7O0FBZjVCOztFQW9CUSxVQUFVLEVBQUE7RUFwQmxCOztJQXVCWSxnQkFBZ0IsRUFBQTs7QUF2QjVCOztFQTZCWSxnQkFBZ0IsRUFBQTs7QUFLNUI7RUFFUSx5QmpCeldVLEVBQUE7RWlCdVdsQjtJQUtZLGNqQm5Yc0IsRUFBQTtFaUI4V2xDO0lBU1ksb0NBQW9DLEVBQUE7SUFUaEQ7TUFZZ0IsV2pCallKLEVBQUE7O0FpQnVZWjtFQUNJLG1CQUFtQixFQUFBOztBQUd2QjtFQUVRLDBDakI3WUk7RWlCOFlKLFdBQVc7RUFDWCxZQUFZLEVBQUE7RUFKcEI7SUFPWSxXakJsWkEsRUFBQTtFaUIyWVo7SUFhWSxzQmpCeFpBLEVBQUE7SWlCMllaO01BZ0JnQix5QkFBeUIsRUFBQTs7QUFNekM7RUFFUSxZQUFZLEVBQUE7O0FBRnBCO0VBTVEsWUFBWTtFQUNaLFdBQVcsRUFBQTs7QUFJbkI7RUFFUSxjQUFjLEVBQUE7O0FBSXRCO0VBRVEsYUFBYTtFQUNiLFdBQVc7RWhCL2JYLFFBQVE7RUFDUixtQ0FBMkI7VUFBM0IsMkJBQTJCO0VnQmdjM0IsUUFBUTtFQUNSLFdBQVcsRUFBQTtFZjhpRGpCO0llM2lEVSxPQUFPO0lBQ1AsWUFBWSxFQUFBO0VBVnhCO0lBY1ksV0FBVztJQUNYLFlBQVk7SUFDWixjQUFjO0lBQ2QsV0FBVyxFQUFBO0lBakJ2QjtNQW9CZ0IsV0FBVztNQUNYLFlBQVk7TUFDWixtQmpCamNrQjtNaUJrY2xCLGVBQWU7TUFDZixtQkFBbUIsRUFBQTtNQXhCbkM7UUEyQm9CLGFBQWEsRUFBQTtJQTNCakM7TUFpQ29CLG9DQUFvQyxFQUFBOztBQU94RDtFQUVRLGlCQUFpQjtFQUNqQix1QkFBdUIsRUFBQTs7QUFIL0I7RUFPUSxXQUFXLEVBQUE7O0FmK2hEbkI7O0VldGhEZ0IsV0FBVyxFQUFBOztBQU0zQjtFQUVRLGtCQUFrQixFQUFBO0VkdmZsQjtJY3FmUjtNQUtZLGtCQUFrQixFQUFBLEVBWXpCO0VBakJMO0lBVWdCLGdCQUFnQixFQUFBO0lkL2Z4QjtNY3FmUjtRQWFvQixnQkFBZ0IsRUFBQSxFQUV2Qjs7QUFLYjtFQUtvQixhQUFhLEVBQUE7O0FBTGpDO0VBVzRCLHlDQUFpQztVQUFqQyxpQ0FBaUM7RUFDakMsWUFBWSxFQUFBOztBQVp4QztFQWlCZ0MsNEJBQW9CO1VBQXBCLG9CQUFvQjtFQUNwQixVQUFVLEVBQUE7O0FBbEIxQztFQXdCd0Isd0NBQWdDO0VBQWhDLGdDQUFnQyxFQUFBOztBQXhCeEQ7RUE2QjRCLDRCQUFvQjtVQUFwQixvQkFBb0I7RUFDcEIsVUFBVSxFQUFBOztBQTlCdEM7RUFvQ29CLHdDQUFnQztVQUFoQyxnQ0FBZ0M7RUFDaEMsWUFBWSxFQUFBOztBQXJDaEM7RUEwQ3dCLDRCQUFvQjtVQUFwQixvQkFBb0I7RUFDcEIsVUFBVSxFQUFBOztBQTNDbEM7RUFnRDRCLDRCQUFvQjtVQUFwQixvQkFBb0I7RUFDcEIsVUFBVSxFQUFBOztBQ2psQnRDOzs0QmhCMmtFNEI7QWdCeGtFNUI7RUFDSSx5QkFBaUI7VUFBakIsaUJBQWlCO0VBQ2pCLDhDQUE4QyxFQUFBO0VBRmxEO0lBS1EsdUJBQWU7WUFBZixlQUFlLEVBQUE7O0FDUnZCOzs0QmpCb2xFNEI7QWlCamxFNUI7RUFHWSxlQUFlLEVBQUE7O0FBSDNCO0VBUVEsdUJBQXVCLEVBQUE7O0FBUi9CO0VBWVEsOEJuQnlHVyxFQUFBO0VtQnJIbkI7SUFlWSwyQkFBMkIsRUFBQTs7QUFLdkM7RUFDSSxlQUFlO0VBQ2YsWUFBWSxFQUFBO0VBRmhCO0lBS1EsaUJBQWlCLEVBQUE7RUFMekI7SUFVWSxrQkFBa0I7SUFDbEIsYUFBYSxFQUFBO0lBWHpCO01BY2dCLGdCQUFnQixFQUFBO0lBZGhDO01Ba0JnQixrQkFBa0I7TUFDbEIsUUFBUTtNQUNSLFNBQVM7TUFDVCxlQUFlO01BQ2YsZ0JBQWdCLEVBQUE7SUF0QmhDO01BMEJnQixjQUFjO01BQ2QsV0FBVztNQUNYLFdBQVc7TUFDWCxlQUFlO01BQ2YsWUFBWTtNQUNaLGlCQUFpQjtNQUNqQixrQkFBa0I7TUFDbEIsZ0JuQjVCSjtNbUI2QkkscUJuQmRNLEVBQUE7O0FvQjNDdEI7OzRCbEI2bkU0QjtBa0IxbkU1QjtFQUNJLHlCcEI4QmdCO0VvQjdCaEIsb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYixrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLFVBQVUsRUFBQTtFQUxkO0lBUVEsb0VBQW9FLEVBQUE7RUFHeEU7SUFDSSx5QnBCOENpQixFQUFBO0VvQjFEekI7SUFpQlksY3BCb0JRLEVBQUE7RW9CckNwQjtJQXNCUSxnQkFBZ0I7SUFDaEIsd0JBQXVCO1FBQXZCLHFCQUF1QjtZQUF2Qix1QkFBdUI7SUFDdkIsZ0JBQWdCLEVBQUE7RUF4QnhCO0lBNEJRLGtCQUFrQjtJQUNsQixNQUFNO0lBQ04sT0FBTztJbkJyQlgsV0FEd0I7SUFFeEIsWUFGdUM7SW1Cd0JuQyxnQkFBZ0I7SUFDaEIsV0FBVyxFQUFBO0lBakNuQjtNQW9DWSxrQkFBa0I7TUFDbEIsY0FBYztNQUNkLGdCQUFnQjtNQUNoQixXQUFXO01BQ1gsWUFBWTtNQUNaLG9DQUFvQztNQUNwQyw4Q0FBc0M7Y0FBdEMsc0NBQXNDO01BQ3RDLGNBQWM7TUFDZCx1QkFBdUIsRUFBQTtNQTVDbkM7UUErQ2dCLFNBQVM7UUFDVCxXQUFXO1FBQ1gsWUFBWTtRQUNaLDJCQUFtQjtnQkFBbkIsbUJBQW1CLEVBQUE7TUFsRG5DO1FBc0RnQixTQUFTO1FBQ1QsV0FBVztRQUNYLFlBQVk7UUFDWiwyQkFBbUI7Z0JBQW5CLG1CQUFtQjtRQUNuQiwrQkFBdUI7Z0JBQXZCLHVCQUF1QixFQUFBO01BMUR2QztRQThEZ0IsU0FBUztRQUNULFdBQVc7UUFDWCxZQUFZO1FBQ1osMkJBQW1CO2dCQUFuQixtQkFBbUIsRUFBQTtNQWpFbkM7UUFxRWdCLFNBQVM7UUFDVCxXQUFXO1FBQ1gsWUFBWTtRQUNaLDJCQUFtQjtnQkFBbkIsbUJBQW1CO1FBQ25CLCtCQUF1QjtnQkFBdkIsdUJBQXVCLEVBQUE7TUF6RXZDO1FBNkVnQixTQUFTO1FBQ1QsV0FBVztRQUNYLFlBQVk7UUFDWiwyQkFBbUI7Z0JBQW5CLG1CQUFtQixFQUFBO01BaEZuQztRQW9GZ0IsU0FBUztRQUNULFdBQVc7UUFDWCxZQUFZO1FBQ1osMkJBQW1CO2dCQUFuQixtQkFBbUIsRUFBQTtNQXZGbkM7UUEyRmdCLFNBQVM7UUFDVCxZQUFZO1FBQ1osYUFBYTtRQUNiLDJCQUFtQjtnQkFBbkIsbUJBQW1CLEVBQUE7TUE5Rm5DO1FBa0dnQixTQUFTO1FBQ1QsV0FBVztRQUNYLFlBQVk7UUFDWiw0QkFBb0I7Z0JBQXBCLG9CQUFvQjtRQUNwQiwrQkFBdUI7Z0JBQXZCLHVCQUF1QixFQUFBO01BdEd2QztRQTBHZ0IsU0FBUztRQUNULFdBQVc7UUFDWCxZQUFZO1FBQ1osMkJBQW1CO2dCQUFuQixtQkFBbUI7UUFDbkIsK0JBQXVCO2dCQUF2Qix1QkFBdUIsRUFBQTtNQTlHdkM7UUFrSGdCLFNBQVM7UUFDVCxZQUFZO1FBQ1osYUFBYTtRQUNiLDJCQUFtQjtnQkFBbkIsbUJBQW1CO1FBQ25CLCtCQUF1QjtnQkFBdkIsdUJBQXVCLEVBQUE7O0FBS25DO0VBQ0k7SUFDSSw2Q0FBcUM7WUFBckMscUNBQXFDO0lBQ3JDLFVBQVU7SUFDVixnQkFBZ0IsRUFBQTtFQUdwQjtJQUNJLHFEQUE2QztZQUE3Qyw2Q0FBNkM7SUFDN0MsVUFBVTtJQUNWLGtCQUFrQixFQUFBLEVBQUE7O0FBVjFCO0VBQ0k7SUFDSSw2Q0FBcUM7WUFBckMscUNBQXFDO0lBQ3JDLFVBQVU7SUFDVixnQkFBZ0IsRUFBQTtFQUdwQjtJQUNJLHFEQUE2QztZQUE3Qyw2Q0FBNkM7SUFDN0MsVUFBVTtJQUNWLGtCQUFrQixFQUFBLEVBQUE7O0FDeEk5Qjs7NEJuQm91RTRCO0FtQi90RXhCO0VBQ0ksZ0JBQWdCLEVBQUE7RWxCaUJoQjtJa0JsQko7TUFJUSxlQUFlLEVBQUEsRUFVdEI7RWxCSUc7SWtCbEJKO01BUVEsZUFBZSxFQUFBLEVBTXRCO0VsQklHO0lrQmxCSjtNQVlRLGVBQWUsRUFBQSxFQUV0Qjs7QUFFRDtFQUVRLGdDckJVSyxFQUFBOztBcUJaYjtFQVFnQixNQUFNLEVBQUE7O0FBUnRCO0VBWWdCLGVBQWUsRUFBQTs7QUFaL0I7RUFpQlksZUFBZTtFQUNmLFdBQVc7RUFDWCxPQUFPO0VBQ1AsV0FBVztFQUNYLGFBQWE7RUFDYixzQnJCZko7RXFCZ0JJLHVEQUErQztVQUEvQywrQ0FBK0M7RUFDL0MsaUNBQXlCO0VBQXpCLHlCQUF5QjtFQUN6QixVQUFVLEVBQUE7O0FBekJ0QjtFQThCUSxXQUFXO0VBQ1gsYUFBYTtFQUNiLHNCckJ6QkE7RXFCMEJBLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxjQUFjO0VBQ2Qsc0VBQThEO0VBQTlELDhEQUE4RDtFQUM5RCxVQUFVLEVBQUE7RWxCckNkO0lrQkZKO01BMENZLFNBQVMsRUFBQSxFQW9DaEI7RUE5RUw7SUE4Q1ksYUFBYSxFQUFBO0lBOUN6QjtNQWlEZ0IsYUFBYSxFQUFBO0VBakQ3QjtJQXNEWSxvQkFBYTtJQUFiLG9CQUFhO0lBQWIsYUFBYTtJQUNiLHlCQUFtQjtRQUFuQixzQkFBbUI7WUFBbkIsbUJBQW1CLEVBQUE7SUF2RC9CO01BMERnQixhQUFhLEVBQUE7SUExRDdCO01BOERnQixrQkFBa0IsRUFBQTtNQTlEbEM7UUFpRW9CLGNyQm5EVSxFQUFBO01xQmQ5QjtRQXVFNEIsZUFBZTtRQUNmLGNyQnJCWixFQUFBOztBcUJuRGhCO0VBaUZRLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2Ysb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYix5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQixFQUFBO0VsQmxGdkI7SWtCRko7TUF1RlksZUFBZSxFQUFBLEVBRXRCOztBQXpGTDtFQTRGUSxRQUFRLEVBQUE7RW5COHJFbEI7SW1CM3JFYyxZQUFZO0lBQ1osT0FBTyxFQUFBOztBbEI5RmY7RWtCRko7SUFzR1ksYUFBYSxFQUFBLEVBRXBCOztBbEJ0R0Q7RWtCRko7SUE4R29CLFVBQVU7SUFDVix3QkFBZ0I7WUFBaEIsZ0JBQWdCO0lBQ2hCLGtCQUFrQixFQUFBLEVBRXpCOztBQWxIYjtFQXVIZ0IsZ0NyQmxHRixFQUFBOztBR25CVjtFa0JGSjtJQTJIZ0IsZUFBZTtJQUNmLGlCQUFpQjtJQUNqQixhQUFhO0lBQ2IsWUFBWTtJQUNaLGFBQWE7SUFDYixxQkFBcUI7SUFDckIsOEJBQThCO0lBQzlCLHdCQUFnQjtJQUFoQixnQkFBZ0I7SUFDaEIsVUFBVSxFQUFBLEVBRWpCOztBbEJuSUw7RWtCRko7SUEwSW9CLFFBQVE7SUFDUix3QkFBZ0I7SUFBaEIsZ0JBQWdCLEVBQUEsRUFFdkI7O0FBN0liO0VBbUpZLHlCckI5SEU7RXFCK0hGLGFBQWE7RUFDYixvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CO0VBQ25CLHlCQUE4QjtNQUE5QixzQkFBOEI7VUFBOUIsOEJBQThCLEVBQUE7RUF2SjFDO0lBMEpnQixrQkFBa0IsRUFBQTtJQTFKbEM7TUE2Sm9CLGtCQUFrQjtNQUNsQixTQUFTO01BQ1QsV0FBVztNQUNYLGdCQUFnQixFQUFBO0VuQnlxRXRDO0ltQmxxRTBCLGlDQUF5QjtZQUF6Qix5QkFBeUIsRUFBQTs7QUF2S2pEO0VBOEtZLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUI7RUFDbkIsa0JBQWtCLEVBQUE7RUFoTDlCO0lBbUxnQixrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLFFBQVE7SUFDUixlQUFlO0lBQ2YsZ0JBQWdCLEVBQUE7RUF2TGhDO0lBMkxnQixXQUFXLEVBQUE7RUEzTDNCO0lBK0xnQixpQkFBaUIsRUFBQTtJbkIycEVqQztNbUJ4cEVvQixrQkFBa0I7TUFDbEIsa0JBQWtCLEVBQUE7SUFuTXRDO01BdU1vQixnQkFBZ0IsRUFBQTtJQXZNcEM7TUEyTW9CLGVBQWU7TUFDZixZQUFZO01BQ1osWUFBWTtNQUNaLGdCQUFnQjtNQUNoQixnQkFBZ0IsRUFBQTtJQS9NcEM7TUFtTm9CLGVBQWU7TUFDZixvQkFBYTtNQUFiLG9CQUFhO01BQWIsYUFBYTtNQUNiLHlCQUE4QjtVQUE5QixzQkFBOEI7Y0FBOUIsOEJBQThCO01BQzlCLHlCQUFtQjtVQUFuQixzQkFBbUI7Y0FBbkIsbUJBQW1CLEVBQUE7O0FBdE52QztFQTROWSxpQkFBaUIsRUFBQTtFQTVON0I7SUErTmdCLGtCQUFrQjtJQUNsQixjQUFjLEVBQUE7SWxCOU4xQjtNa0JGSjtRQW9Pd0IsaUJBQWlCLEVBQUEsRUFFeEI7RWxCcE9iO0lrQkZKO01BME9nQiwyQkFBMkI7TUFDM0IsY0FBYztNQUNkLGdDckJ0TkUsRUFBQSxFcUJ3TlQ7O0FBOU9UO0VBa1BRLGFBQWEsRUFBQTtFbEJoUGpCO0lrQkZKO01BcVBZLGtCQUFrQjtNQUNsQixXQUFXO01BQ1gsU0FBUztNQUNULE9BQU87TUFDUCxVQUFVLEVBQUEsRUFxQmpCO0VBOVFMO0lBNlBZLHlCQUF5QjtJQUN6QixnQkFBZ0I7SUFDaEIsYUFBYSxFQUFBO0lsQjdQckI7TWtCRko7UUFrUWdCLG9CQUFhO1FBQWIsb0JBQWE7UUFBYixhQUFhO1FBQ2IseUJBQW1CO1lBQW5CLHNCQUFtQjtnQkFBbkIsbUJBQW1CO1FBQ25CLHlCQUE4QjtZQUE5QixzQkFBOEI7Z0JBQTlCLDhCQUE4QjtRQUM5QixtQkFBbUIsRUFBQSxFQUUxQjtFQXZRVDtJQTBRWSxpQkFBaUI7SUFDakIsZUFBZTtJQUNmLFdBQVcsRUFBQTs7QUE1UXZCO0VBaVJRLGFBQWE7RUFDYixrQkFBa0IsRUFBQTtFQWxSMUI7SUFxUlksZUFBZTtJQUNmLHlCQUF5QjtJQUN6QixtQkFBbUIsRUFBQTs7QUF2Ui9CO0VBNFJRLHNCckJyUkE7RXFCc1JBLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsVUFBVTtFQUNWLFNBQVM7RUFDVCxRQUFRO0VBQ1IsMkJBQW1CO1VBQW5CLG1CQUFtQjtFQUNuQixpQ0FBeUI7RUFBekIseUJBQXlCO0VBQ3pCLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUIsRUFBQTtFQXJTM0I7SUF3U1kseUJyQm5SRSxFQUFBO0lxQnJCZDtNQTJTZ0IsNkJBQTZCO01BQzdCLFlBQVksRUFBQTtNQTVTNUI7UUErU29CLGVBQWUsRUFBQTtNQS9TbkM7UUFtVG9CLFlBQVksRUFBQTtJQW5UaEM7TUF3VGdCLFlBQVksRUFBQTtFQXhUNUI7SXBCVEEsV0FEd0I7SUFFeEIsWUFGdUM7SW9Cd1UzQiwwQ0FBa0M7WUFBbEMsa0NBQWtDO0lBQ2xDLDJCQUFtQjtZQUFuQixtQkFBbUI7SUFDbkIsaUNBQXlCO0lBQXpCLHlCQUF5QixFQUFBO0VBaFVyQztJQXFVZ0IsYUFBYTtJQUNiLHlCckJqVEY7SXFCa1RFLDJCQUEyQjtJQUMzQix3QkFBd0I7SUFDeEIsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQixzRUFBOEQ7SUFBOUQsOERBQThELEVBQUE7O0FBM1U5RTtFQWlWUSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFFBQVE7RUFDUixVQUFVO0VBQ1YsWUFBWTtFQUNaLGlDQUF5QjtFQUF6Qix5QkFBeUI7RUFDekIsb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYix5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQixFQUFBO0VBeFYzQjtJQTJWWSxnQkFBZ0I7SUFDaEIsc0JyQnJWSixFQUFBO0VxQlBSO0lBZ1dZLHdCQUF3QixFQUFBO0VBaFdwQztJQW9XWSxjQUFjO0lBQ2QsV0FBVztJQUNYLHNCckIvVko7SXFCZ1dJLHdCQUF3QjtJQUN4QixpREFBeUM7WUFBekMseUNBQXlDO0lBQ3pDLGlCQUFpQjtJQUNqQixjQUFjO0lBQ2Qsb0JBQW9CO0lBQ3BCLGtCQUFrQjtJQUNsQixjQUFjLEVBQUE7SUE3VzFCO01BZ1hnQixrQkFBa0IsRUFBQTtNQWhYbEM7UUFtWG9CLG9CQUFhO1FBQWIsb0JBQWE7UUFBYixhQUFhO1FBQ2IseUJBQW1CO1lBQW5CLHNCQUFtQjtnQkFBbkIsbUJBQW1CO1FBQ25CLG1CQUFtQixFQUFBO1FBclh2QztVQXdYd0IsV0FBVztVQUNYLGdCQUFnQjtVQUNoQixrQkFBa0IsRUFBQTtVQTFYMUM7WUE2WDRCLFdBQVcsRUFBQTtRQTdYdkM7VUFrWXdCLHdCQUF3QixFQUFBO1VBbFloRDtZQXFZNEIsa0JBQWtCLEVBQUE7RWxCblkxQztJa0JGSjtNQTZZWSxVQUFVLEVBQUEsRUE0Q2pCO0VsQnZiRDtJa0JGSjtNQWlaWSxVQUFVLEVBQUEsRUF3Q2pCO0VsQnZiRDtJa0JGSjtNQXFaWSxVQUFVLEVBQUEsRUFvQ2pCO0VBemJMO0lBMFpnQixxQnJCcFlFO0lxQnFZRixzQnJCcFpSLEVBQUE7RXFCUFI7SXBCVEEsV0FEd0I7SUFFeEIsWUFGdUM7SW9CMmEzQiwwQ0FBa0M7WUFBbEMsa0NBQWtDO0lBQ2xDLDJCQUFtQjtZQUFuQixtQkFBbUI7SUFDbkIsaUNBQXlCO0lBQXpCLHlCQUF5QixFQUFBO0VBbmFyQztJQXdhZ0IsU0FBUztJQUNULGFBQWE7SUFDYix5QnJCclpGO0lxQnNaRSwyQkFBbUI7SUFBbkIsd0JBQW1CO0lBQW5CLG1CQUFtQjtJQUNuQixpQkFBaUI7SUFDakIsc0VBQThEO0lBQTlELDhEQUE4RCxFQUFBO0VBN2E5RTtJQWtiWSxXckIzYUo7SXFCNGFJLGdCQUFnQixFQUFBO0lBbmI1QjtNQXNiZ0IsV3JCL2FSLEVBQUE7O0FxQlBSO0VBNGJRLGdCQUFnQixFQUFBO0VBNWJ4QjtJQStiWSxlQUFlLEVBQUE7SUEvYjNCO01Ba2NnQixjQUFjO01BQ2QsaUJBQWlCLEVBQUE7O0FBTWpDO0VBRVEsV0FBVztFQUNYLFlBQVk7RUFDWixpQkFBaUI7RUFDakIsK0JBQXVCO1VBQXZCLHVCQUF1QjtFQUN2Qix5Q0FBaUM7VUFBakMsaUNBQWlDO0VBQ2pDLDJDQUFtQztVQUFuQyxtQ0FBbUM7RUFDbkMsOEJBQXNCO1VBQXRCLHNCQUFzQjtFQUN0QixvQ0FBNEI7VUFBNUIsNEJBQTRCLEVBQUE7RW5CcWtFdEM7SW1CbGtFYyxlQUFlO0lBQ2YsZ0JBQWdCLEVBQUE7RUFiNUI7SUFpQlksd0JBQXdCLEVBQUE7O0FBS3BDO0VBQ0k7SUFDSSxnQ0FBd0I7WUFBeEIsd0JBQXdCLEVBQUE7RUFHNUI7SUFDSSxtQ0FBMkI7WUFBM0IsMkJBQTJCLEVBQUEsRUFBQTs7QUFObkM7RUFDSTtJQUNJLGdDQUF3QjtZQUF4Qix3QkFBd0IsRUFBQTtFQUc1QjtJQUNJLG1DQUEyQjtZQUEzQiwyQkFBMkIsRUFBQSxFQUFBOztBQUluQztFQUNJLGtCQUFrQixFQUFBO0VBRHRCO0lBSVEsYUFBYSxFQUFBO0lBSnJCO01BUWdCLGVBQWU7TUFDZixjQUFjLEVBQUE7TUFUOUI7UUFZb0IsY3JCdmVVO1FxQndlViwwQkFBMEIsRUFBQTtRQWI5QztVQW1Cd0IseUJBQXlCLEVBQUE7O0FBUWpEO0VBQ0ksYUFBYTtFQUNiLGVBQWU7RUFDZixjckJ6ZjBCO0VxQjBmMUIsZ0JBQWdCO0VBQ2hCLHlCQUF5QjtFQUN6QixnQ3JCcGZjO0VxQnFmZCxlQUFlO0VBQ2Ysb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYix5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQjtFQUNuQix5QkFBOEI7TUFBOUIsc0JBQThCO1VBQTlCLDhCQUE4QixFQUFBO0VBVmxDO0lBYVEsZUFBZSxFQUFBOztBQUt2QjtFQUNJLGVBQWU7RUFDZixTQUFTO0VBQ1QsYUFBYTtFQUNiLFdBQVc7RUFDWCxzQnJCcGhCSTtFcUJxaEJKLFVBQVU7RUFDViwwREFBa0Q7VUFBbEQsa0RBQWtELEVBQUE7RW5CeWlFeEQ7SW1CdGlFVSxPQUFPLEVBQUE7RUFWZjtJQWNRLG9CQUFhO0lBQWIsb0JBQWE7SUFBYixhQUFhLEVBQUE7SW5Cc2lFckI7TW1CbmlFWSxVQUFVLEVBQUE7SUFqQnRCO01BcUJZLFdBQVc7TUFDWCxrQkFBa0IsRUFBQTtNQXRCOUI7UUF5QmdCLGNBQWM7UUFDZCw0QnJCbGlCYyxFQUFBO1FHWjFCO1VrQm9oQko7WUE2Qm9CLGVBQWUsRUFBQSxFQXFCdEI7UUFsRGI7VUFrQ29CLHlCQUF5QixFQUFBO1FBbEM3QztVQXNDb0IsY0FBYztVQUNkLGNBQWM7VUFDZCxtQkFBbUIsRUFBQTtVbEI1akJuQztZa0JvaEJKO2NBMkN3QixZQUFZLEVBQUEsRUFFbkI7UUE3Q2pCO1VBZ0RvQixlQUFlLEVBQUE7O0FBT25DO0VBQ0k7SUFDSSxrQkFBa0IsRUFBQTtJQUR0QjtNQUlRLFNBQVM7TUFDVCxVQUFVO01BQ1Ysa0JBQWtCO01BQ2xCLGtCQUFrQjtNQUNsQixVQUFVO01BQ1Ysc0JyQmhsQko7TXFCaWxCSSxtQ0FBMkI7TUFBM0IsMkJBQTJCO01BQzNCLGdCQUFnQjtNQUNoQiw4RHJCbGxCSjtjcUJrbEJJLHNEckJsbEJKLEVBQUE7TXFCc2tCSjtRQWtCd0Isa0JBQWtCO1FBQ2xCLGNBQWMsRUFBQTtRQW5CdEM7VUFzQjRCLGtCQUFrQjtVQUNsQixrQ0FBa0M7VUFDbEMsZ0JBQWdCO1VBQ2hCLFFBQVE7VUFDUixnQkFBZ0I7VXBCM21CNUMsUUFBUTtVQUNSLG1DQUEyQjtrQkFBM0IsMkJBQTJCO1VvQjRtQkMsZUFBZSxFQUFBO1VuQmdoRXpDO1ltQjdnRThCLFlBQVk7WUFDWixPQUFPO1lBQ1Asa0RBQTBDO29CQUExQywwQ0FBMEMsRUFBQTtNQWpDMUU7UUF1Q3dCLGtCQUFrQjtRQUNsQixhQUFhO1FBQ2IsVUFBVTtRQUNWLGtCQUFrQjtRQUNsQixpQkFBaUI7UUFDakIsc0JyQm5uQnBCO1FxQm9uQm9CLHdCQUFnQjtRQUFoQixnQkFBZ0I7UUFDaEIsU0FBUztRQUNULDhEckJybkJwQjtnQnFCcW5Cb0Isc0RyQnJuQnBCO1FxQnNuQm9CLE1BQU07UUFDTixZQUFZLEVBQUE7UUFqRHBDO1VBcURnQyxtQkFBbUIsRUFBQTtRQXJEbkQ7VUEwRG9DLGNBQWMsRUFBQTtNQTFEbEQ7UUFrRTRCLFVBQVU7UUFDVixVQUFVO1FBQ1YsbUJBQW1CO1FBQ25CLHdCQUFnQjtRQUFoQixnQkFBZ0IsRUFBQTtRbkJnZ0U1QztVbUI3L0RnQyxZQUFZO1VBQ1osVUFBVSxFQUFBO0lBekUxQztNQW9GWSxTQUFTO01BQ1QsVUFBVTtNQUNWLGtDQUEwQjtjQUExQiwwQkFBMEI7TUFDMUIsbUJBQW1CLEVBQUEsRUFDdEI7O0FsQm5yQlQ7RWtCd3JCSjtJQU80QixnQkFBZ0IsRUFBQSxFQU12Qjs7QWxCcnNCakI7RWtCd3JCSjtJQVc0QixnQkFBZ0IsRUFBQSxFQUV2Qjs7QUFickI7RUFvQmdCLGVBQWUsRUFBQTs7QWxCN3JCM0I7RWtCb3NCQTtJQUVRLGVBQWU7SUFDZixzQnJCbHNCSjtJcUJtc0JJLFlBQVk7SUFDWixnQkFBZ0I7SUFDaEIseUJyQnRyQk07SXFCdXJCTixNQUFNO0lBQ04sYUFBYTtJQUNiLFlBQVk7SUFDWixXQUFXO0lBQ1gsaUNBQXlCO0lBQXpCLHlCQUF5QjtJQUN6QixnQkFBZ0I7SUFDaEIscUJBQXFCLEVBQUE7SUFiN0I7TUFnQlksT0FBTyxFQUFBO0VBS25CO0lBSWdCLGtCQUFrQjtJQUNsQixxQkFBcUI7SUFDckIsY0FBYyxFQUFBO0lBTjlCO01BVzRCLFFBQVEsRUFBQTtNbkJ1OUR0QztRbUJwOURrQyxZQUFZO1FBQ1osT0FBTyxFQUFBO0lBZnZDO01BcUJ3QixlQUFlLEVBQUE7TUFyQnZDO1FBd0I0QixpQkFBaUIsRUFBQTtNQXhCN0M7UUE2QmdDLGtCQUFrQjtRQUNsQixjQUFjLEVBQUE7UUE5QjlDO1VBaUNvQyxnQkFBZ0IsRUFBQTtRQWpDcEQ7VUFxQ29DLFFBQVE7VUFDUixRQUFRLEVBQUE7TUF0QzVDO1FBMkNnQyxlQUFlLEVBQUE7UUEzQy9DO1VBOENvQyxjQUFjLEVBQUE7RUE5Q2xEO0lBd0RZLGtCQUFrQixFQUFBO0lBeEQ5QjtNQTREb0IsZ0JBQWdCO01BQ2hCLGVBQWU7TUFDZix5QkFBeUIsRUFBQTtFQTlEN0M7SUFxRVEsYUFBYSxFQUFBLEVBQ2hCOztBQU1UO0VBRVEsZUFBZTtFQUNmLHlCckJyeEJNLEVBQUE7RXFCa3hCZDtJQU1ZLDZCQUE2QjtJQUM3QixnQ3JCbHlCQyxFQUFBO0VxQjJ4QmI7SUFXWSxzQnJCM3lCSixFQUFBO0VHTEo7SWtCcXlCSjtNQWVZLGVBQWUsRUFBQSxFQW9IdEI7RUFuSUw7SUFtQlkseUJBQThCO1FBQTlCLHNCQUE4QjtZQUE5Qiw4QkFBOEI7SUFDOUIseUJBQW1CO1FBQW5CLHNCQUFtQjtZQUFuQixtQkFBbUI7SUFDbkIsa0JBQWtCLEVBQUE7SWxCMXpCMUI7TWtCcXlCSjtRQXdCZ0IscUJBQXlCO1lBQXpCLGtCQUF5QjtnQkFBekIseUJBQXlCLEVBQUEsRUFFaEM7RUExQlQ7SUE2Qlksa0JBQWtCLEVBQUE7SW5CeTZEOUI7TW1CdDZEZ0Isb0JBQW9CO01BQ3BCLGlCQUFpQixFQUFBO0lBakNqQztNQXFDZ0IsZUFBZTtNQUNmLGtCQUFrQixFQUFBO01uQnM2RGhDO1FtQm42RGtCLG1CQUFtQjtRQUNuQixpQkFBaUIsRUFBQTtNbEIvMEJqQztRa0JxeUJKO1VBOENvQixlQUFlLEVBQUEsRUEwRHRCO01BeEdiO1FBa0RvQixjckIzMEJVLEVBQUE7UXFCeXhCOUI7VUFxRHdCLHNCQUFzQjtVQUN0QixlQUFlO1VBQ2YsaUJBQWlCLEVBQUE7VW5CaTZEbkM7WW1COTVEc0IsbUJBQW1CO1lBQ25CLGtCQUFrQixFQUFBO1VsQmgyQjFDO1lrQnF5Qko7Y0ErRDRCLGNBQWMsRUFBQSxFQUVyQjtNQWpFckI7UUFxRW9CLGVBQWUsRUFBQTtRbkIyNUQvQjtVbUJ4NURvQixrQkFBa0I7VUFDbEIsZ0JBQWdCLEVBQUE7UWxCOTJCcEM7VWtCcXlCSjtZQTZFd0IsYUFBYSxFQUFBLEVBRXBCO01BL0VqQjtRQWtGb0IsZ0JBQWdCLEVBQUE7UW5CczVEaEM7VW1CbjVEb0IsbUJBQW1CO1VBQ25CLGVBQWUsRUFBQTtNQXRGdkM7UUEyRm9CLDZDckJwM0JVLEVBQUE7UUVzd0YxQjtVbUIvNERvQixrQkFBa0I7VUFDbEIsOENyQngzQk0sRUFBQTtNR1oxQjtRa0JxeUJKO1VBcUd3Qix1QkFBdUIsRUFBQSxFQUU5QjtFbEI1NEJiO0lrQnF5Qko7TUE2R2dCLGVBQWUsRUFBQSxFQXFCdEI7RUFsSVQ7SUFrSG9CLGFBQWEsRUFBQTtFQWxIakM7SUEySGdDLG9DQUFvQztJQUNwQyxXQUFXLEVBQUE7O0FBNUgzQztFQXNJUSx5QkFBOEI7TUFBOUIsc0JBQThCO1VBQTlCLDhCQUE4QixFQUFBO0VBdEl0QztJQXlJWSxvQkFBYTtJQUFiLG9CQUFhO0lBQWIsYUFBYTtJQUNiLHlCQUFtQjtRQUFuQixzQkFBbUI7WUFBbkIsbUJBQW1CLEVBQUE7RWxCLzZCM0I7SWtCcXlCSjtNQWdKZ0Isa0JBQWtCLEVBQUE7TW5CbzNEaEM7UW1CajNEa0Isb0JBQW9CO1FBQ3BCLGlCQUFpQixFQUFBLEVBQ3BCO0VBckpqQjtJQXlKZ0Isa0JBQWtCO0lBQ2xCLFdyQjE3QlI7SXFCMjdCUSxlQUFlLEVBQUE7SUEzSi9CO01BOEpvQixjckI1N0JSLEVBQUE7SUdQUjtNa0JxeUJKO1FBa0tvQixnQkFBZ0IsRUFBQSxFQVl2QjtJbEJuOUJUO01rQnF5Qko7UUFzS29CLGdCQUFnQixFQUFBLEVBUXZCO0lsQm45QlQ7TWtCcXlCSjtRQTJLd0IsV0FBVyxFQUFBLEVBRWxCO0VBN0tqQjtJQWlMZ0Isb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWE7SUFDYix5QkFBbUI7UUFBbkIsc0JBQW1CO1lBQW5CLG1CQUFtQixFQUFBO0lBbExuQztNQXNMd0IsV0FBVyxFQUFBO01sQjM5Qi9CO1FrQnF5Qko7VUF5TDRCLFdBQVcsRUFBQSxFQUVsQjtJQTNMckI7TUE4THdCLGlCQUFpQixFQUFBO01uQmsyRHZDO1FtQi8xRDBCLDZCQUE2QjtRQUM3QixrQkFBa0IsRUFBQTtNbEJ2K0IxQztRa0JxeUJKO1VBc000QixpQkFBaUIsRUFBQTtVbkJnMkR2QztZbUI3MUQwQixrQkFBa0IsRUFBQSxFQUNyQjtFQTFNN0I7SUFpTmdCLG9CQUFhO0lBQWIsb0JBQWE7SUFBYixhQUFhO0lBQ2IseUJBQW1CO1FBQW5CLHNCQUFtQjtZQUFuQixtQkFBbUI7SUFDbkIsZUFBZSxFQUFBO0lBbk4vQjtNQXNOb0Isa0JBQWtCLEVBQUE7TUF0TnRDO1FBeU53QixlQUFlO1FBQ2Ysa0JBQWtCO1FBQ2xCLFNBQVM7UUFDVCxXQUFXO1FBQ1gsVUFBVTtRQUNWLGNBQWM7UUFDZCxXQUFXO1FBQ1gsWUFBWTtRcEJ0L0JwQyxvQkFEeUI7UUFDekIsb0JBRHlCO1FBQ3pCLGFBRHlCO1FBRXpCLHlCQUZ5QztZQUV6QyxzQkFGeUM7Z0JBRXpDLG1CQUZ5QztRQUd6Qyx3QkFIMkQ7WUFHM0QscUJBSDJEO2dCQUczRCx1QkFIMkQsRUFBQTtJb0J1eEIzRDtNQXNPb0IsaUJBQWlCLEVBQUE7TWxCM2dDakM7UWtCcXlCSjtVQXlPd0IsYUFBYSxFQUFBLEVBZXBCO01BeFBqQjtRQTZPd0IsY0FBYyxFQUFBO01BN090QztRQWlQd0IsZUFBZSxFQUFBO01uQmsxRHJDO1FtQjkwRHNCLGtCQUFrQjtRQUNsQixrQkFBa0IsRUFBQTtFbEIzaEN0QztJa0JxeUJKO01BOFBnQixpQkFBaUI7TUFDakIsZUFBZSxFQUFBO01uQjIwRDdCO1FtQngwRGtCLGNBQWM7UUFDZCw2QkFBNkIsRUFBQSxFQUNoQztFbEJ6aUNiO0lrQnF5Qko7TUF3UWdCLGtCQUFrQixFQUFBO01uQncwRGhDO1FtQnIwRGtCLGlCQUFpQixFQUFBLEVBQ3BCOztBQTVRakI7RUFrUlEsaUJBQWlCLEVBQUE7RW5CbTBEM0I7SW1CaDBEYyw2QkFBNkI7SUFDN0Isa0JBQWtCLEVBQUE7RWxCM2pDMUI7SWtCcXlCSjtNQTBSWSxpQkFBaUIsRUFBQTtNbkJpMEQzQjtRbUI5ekRjLGtCQUFrQixFQUFBLEVBQ3JCO0VsQm5rQ1Q7SWtCcXlCSjtNQWtTWSxpQkFBaUIsRUFBQTtNbkI4ekQzQjtRbUIzekRjLGtCQUFrQixFQUFBLEVBQ3JCO0VBdFNiO0lBMFNZLGlCQUFpQjtJQUNqQixnQkFBZ0IsRUFBQTtJbEJobEN4QjtNa0JxeUJKO1FBOFNnQixpQkFBaUIsRUFBQSxFQWF4QjtJQTNUVDtNQWtUZ0IsZUFBZTtNQUNmLHNCQUFzQjtNQUN0QixpQkFBaUIsRUFBQTtNbkJ3ekQvQjtRbUJyekRrQixtQkFBbUI7UUFDbkIsa0JBQWtCLEVBQUE7O0FDcG5DMUM7OzRCcEI4NkY0QjtBb0IxNkY1QjtFQUVRLGtCQUFrQixFQUFBO0VBRjFCO0lBS1kscUJBQXFCO0lBQ3JCLGdCQUFnQjtJQUNoQixTQUFTO0lBQ1QsVUFBVTtJQUNWLG1CQUFtQjtJQUNuQixjQUFjO0lyQmlHdEIsZ0JxQmhHcUM7SUFDN0Isc0JBQXNCLEVBQUE7SXBCMDZGOUI7TUR4MEZJLGlCcUJuR3dDLEVBQUE7SUFYaEQ7TUFlZ0Isa0JBQWtCO01yQjRGOUIsV3FCM0ZvQztNQUN4QixjQUFjLEVBQUE7TXBCMjZGeEI7UUQ5MEZFLFlxQjlGdUMsRUFBQTtNQWhCL0M7UUFxQndCLGlCQUFpQixFQUFBO1FwQjI2RmpDO1VvQng2Rm9CLGtCQUFrQjtVQUNsQixrQkFBa0IsRUFBQTtRbkJOdEM7VW1CbkJSO1lBNkI0QixjQUFjLEVBQUE7WXBCeTZGOUI7Y29CdDZGb0Isa0JBQWtCO2NBQ2xCLGVBQWUsRUFBQSxFQUNsQjtNQWxDN0I7UUF3Q29CLGNBQWM7UUFDZCxjdEJWYztRc0JXZCxlQUFlO1FBQ2YsZ0JBQWdCO1FBQ2hCLHFCQUFxQjtRQUNyQix5QkFBeUI7UUFDekIsVUFBVTtRQUNWLGtCQUFrQjtRQUNsQixtQkFBbUI7UUFDbkIscUJBQXFCLEVBQUE7TUFqRHpDO1FBc0R3Qix1Q3RCdkJVLEVBQUE7TXNCL0JsQztRQTJEb0Isa0JBQWtCO1FBQ2xCLE9BQU87UUFDUCxVQUFVO1FBQ1YscURBQTZDO2dCQUE3Qyw2Q0FBNkM7UUFDN0MsZUFBZTtRQUNmLGdCdEJ4Q1I7UXNCeUNRLHVCQUF1QixFQUFBO1FwQjY1Rm5DO1VvQjE1RmdCLFdBQVc7VUFDWCxRQUFRLEVBQUE7UUFyRWhDO1VBeUV3QixTQUFTO1VBQ1QsV0FBVztVQUNYLGtCQUFrQjtVQUNsQixjQUFjO1VBQ2QsYUFBYSxFQUFBO1VBN0VyQztZQWdGNEIsb0JBQW9CO1lBQ3BCLHVCQUF1QjtZQUN2QixjdEJ4RFo7WXNCeURZLDJCQUEyQjtZQUMzQixlQUFlO1lBQ2YsMEJBQTBCO1lBQzFCLDBCQUEwQjtZQUMxQixjQUFjO1lBQ2Qsc0JBQXNCO1lBQ3RCLGdCQUFnQjtZQUNoQixpQ0FBeUI7WUFBekIseUJBQXlCO1lBQ3pCLGtCQUFrQixFQUFBO1lwQnk1RmxDO2NvQnQ1Rm9CLDBCQUEwQixFQUFBO1lBOUYxRDtjQWtHZ0MsaUJBQWlCO2NBQ2pCLGtCQUFrQjtjQUNsQixlQUFlO2NBQ2YseUJBQXlCO2NBQ3pCLGlCQUFpQjtjQUNqQixzREFBOEM7c0JBQTlDLDhDQUE4QztjQUM5QyxnQkFBZ0I7Y0FDaEIsa0JBQWtCLEVBQUE7Y0F6R2xEO2dCckJHSSxXQURtQztnQkFFbkMsa0JBRnFCO2dCQU1yQixXQUR3QjtnQkFFeEIsWUFGdUM7Z0JxQnVHUCxNQUFNO2dCQUNOLE9BQU87Z0JBQ1Asb0NBQW9DO2dCQUNwQyxhQUFhLEVBQUE7Y0FqSGpEO2dCQXFIb0MsY3RCM0ZwQjtnQnNCNEZvQixtQnRCeEZoQixFQUFBO2NzQjlCcEI7Z0JBMEhvQyxjdEI1RmhCO2dCc0I2RmdCLHlCdEJ2RmhCLEVBQUE7WXNCcENwQjtjQWdJZ0MsZUFBZTtjQUNmLGN0QnJGbkI7Y3NCc0ZtQixrQkFBa0I7Y0FDbEIsa0JBQWtCLEVBQUE7WUFuSWxEO2NBeUlvQyxVQUFVLEVBQUE7WUF6STlDO2NBK0lvQyxZQUFZLEVBQUE7WUEvSWhEO2NBb0pnQyxnQkFBZ0I7Y0FDaEIsb0NBQW9DLEVBQUE7VUFySnBFO1lBMEo0QixrQkFBa0I7WUFDbEIsWUFBWTtZQUNaLGFBQWE7WUFDYixNQUFNO1lBQ04sZ0J0QnRJaEI7WXNCdUlnQixZQUFZO1lBQ1osc0JBQXNCO1lBQ3RCLHFDdEJ0Rlg7b0JzQnNGVyw2QnRCdEZYLEVBQUE7TXNCM0VqQjtRQXVLb0Isa0JBQWtCO1FBQ2xCLE9BQU87UUFDUCxVQUFVO1FBQ1YscURBQTZDO2dCQUE3Qyw2Q0FBNkM7UUFDN0MsYUFBYTtRQUNiLGdCdEJwSlI7UXNCcUpRLFdBQVc7UUFDWCxrQkFBa0IsRUFBQTtRQTlLdEM7VUFpTHdCLHlDQUF5QztVQUN6QywyQkFBMkI7VUFDM0IsNEJBQTRCO1VBQzVCLHNCQUFzQjtVQUN0QixnQkFBZ0IsRUFBQTtVbkJsS2hDO1ltQm5CUjtjQXdMNEIsdUJBQXVCLEVBQUEsRUFZOUI7VUFwTXJCO1lBNEw0QixrQkFBa0I7WUFDbEIsTUFBTTtZQUNOLFFBQVE7WUFDUixVQUFVO1lBQ1YsWUFBWTtZQUNaLGdEQUFnRDtZQUNoRCxzQ0FBc0MsRUFBQTtRQWxNbEU7VUF1TXdCLFVBQVUsRUFBQTtVbkJwTDFCO1ltQm5CUjtjQTBNNEIsV0FBVyxFQUFBLEVBNEhsQjtVQXRVckI7WUErTWdDLGVBQWU7WUFDZixjdEJwS25CO1lzQnFLbUIsa0JBQWtCO1lBQ2xCLGtCQUFrQixFQUFBO1VBbE5sRDtZQXlOb0MsZ0JBQWdCO1lBQ2hCLDBCQUEwQjtZQUMxQixlQUFlO1lBQ2YsbUJBQW1CLEVBQUE7VUE1TnZEO1lBaU9nQyx3QkFBZ0I7b0JBQWhCLGdCQUFnQjtZQUNoQiw2QkFBNkI7WUFDN0Isa0JBQWtCO1lBQ2xCLGNBQWM7WUFDZCxVQUFVLEVBQUE7WUFyTzFDO2NBeU93QyxZQUFZO2NBQ1osV0FBVztjQUNYLGtCQUFrQjtjQUNsQixjQUFjO2NBQ2QsYUFBYSxFQUFBO2NBN09yRDtnQkFnUDRDLG9CQUFvQjtnQkFDcEIsdUJBQXVCO2dCQUN2QixjdEJ4TjVCO2dCc0J5TjRCLDJCQUEyQjtnQkFDM0IsZUFBZTtnQkFDZiwwQkFBMEI7Z0JBQzFCLGNBQWM7Z0JBQ2QsY0FBYztnQkFDZCxzQkFBc0I7Z0JBQ3RCLGdCQUFnQjtnQkFDaEIsa0JBQWtCLEVBQUE7Z0JuQnZPdEQ7a0JtQm5CUjtvQkE2UGdELFVBQVU7b0JBQ1Ysc0JBQXNCLEVBQUEsRUF1RDdCO2dCQXJUekM7a0JBa1FnRCxpQkFBaUI7a0JBQ2pCLGtCQUFrQjtrQkFDbEIsZUFBZTtrQkFDZix5QkFBeUI7a0JBQ3pCLG1DQUFtQztrQkFDbkMsc0RBQThDOzBCQUE5Qyw4Q0FBOEM7a0JBQzlDLGdCQUFnQixFQUFBO2tCQXhRaEU7b0JBMlFvRCxjdEJqUHBDO29Cc0JrUG9DLG1CdEI5T2hDLEVBQUE7a0JzQjlCcEI7b0JBZ1JvRCxjdEJsUGhDO29Cc0JtUGdDLHlCdEI3T2hDLEVBQUE7Z0JzQnBDcEI7a0JBc1JnRCxXQUFXLEVBQUE7Z0JBdFIzRDtrQkEwUmdELGdCQUFnQjtrQkFDaEIsb0NBQW9DLEVBQUE7Z0JBM1JwRjtrQkErUmdELFdBQVc7a0JBQ1gsYUFBYTtrQkFDYixnQkFBZ0IsRUFBQTtrQkFqU2hFO29CQW9Tb0QsaUNBQXlCO29CQUF6Qix5QkFBeUIsRUFBQTtvQm5CalJyRTtzQm1CbkJSO3dCQXVTd0QsdUJBQWU7Z0NBQWYsZUFBZTt3QkFDZixhQUFhLEVBQUEsRUFFcEI7a0JBMVNqRDtvQkE2U29ELGNBQWMsRUFBQTtvQkE3U2xFO3NCQWdUd0QsdUJBQWU7OEJBQWYsZUFBZTtzQkFDZixjQUFjLEVBQUE7Y0FqVHRFO2dCQXdUNEMsa0JBQWtCLEVBQUE7Z0JBeFQ5RDtrQkEyVGdELHlCQUF5QixFQUFBO1VBM1R6RTtZQW1VZ0MsZ0JBQWdCLEVBQUE7TUFuVWhEO1FBMFVvQixlQUFlLEVBQUE7UUExVW5DO1VBaVZ3QyxXQUFXO1VBQ1gsa0JBQWtCO1VBQ2xCLGNBQWM7VUFDZCxhQUFhO1VBQ2IsVUFBVTtVQUNWLHdCQUFnQjtrQkFBaEIsZ0JBQWdCLEVBQUE7UUF0VnhEO1VBOFZnQyxXQUFXLEVBQUE7VUE5VjNDO1lyQlFJLFdBRHdCO1lBRXhCLFlBRnVDO1lxQjJWUCxnQkFBZ0I7WUFDaEIsY0FBYztZQUNkLFVBQVUsRUFBQTtZbkJqVnRDO2NtQm5CUjtnQkF1V3dDLGFBQWEsRUFBQSxFQW9CcEI7WUEzWGpDO2NBMld3QyxXQUFXO2NBQ1gsaUNBQXlCO2NBQXpCLHlCQUF5QixFQUFBO2NuQnpWekQ7Z0JtQm5CUjtrQkErVzRDLHVCQUFlOzBCQUFmLGVBQWUsRUFBQSxFQUV0QjtZQWpYckM7Y0FvWHdDLGNBQWMsRUFBQTtjQXBYdEQ7Z0JBdVg0Qyx1QkFBZTt3QkFBZixlQUFlO2dCQUNmLGNBQWMsRUFBQTtRQXhYMUQ7VUFnWTRCLGVBQWU7VUFDZixhQUFhO1VBQ2Isa0JBQWtCLEVBQUE7VW5CL1d0QztZbUJuQlI7Y0FxWWdDLGtCQUFrQjtjQUNsQixtQkFBbUIsRUFBQSxFQUUxQjs7QUFRekI7RUFDSTtJQUNJLGFBQWEsRUFBQTtFQUdqQjtJQUtvQixZQUFZO0lBQ1osVUFBVTtJQUNWLGtCQUFrQjtJQUNsQixrQkFBa0I7SUFDbEIsaUNBQXlCO0lBQXpCLHlCQUF5QixFQUFBO0lBVDdDO01BYTRCLGtCQUFrQjtNQUNsQixXQUFXO01BQ1gsUUFBUTtNQUNSLDBCQUEwQjtNQUMxQixlQUFlO01BQ2YsaUNBQXlCO01BQXpCLHlCQUF5QixFQUFBO0lBbEJyRDtNQXdCNEIsYUFBYTtNQUNiLGtCQUFrQixFQUFBO01BekI5QztRQTZCb0MsYUFBYTtRQUNiLGtCQUFrQixFQUFBO1FBOUJ0RDtVQWtDNEMsYUFBYSxFQUFBO1FBbEN6RDtVQXVDZ0QsY0FBYyxFQUFBO01BdkM5RDtRQStDd0MsY0FBYyxFQUFBO0lBL0N0RDtNQXVEZ0MsY0FBYyxFQUFBO0lBdkQ5QztNQThEb0MsV0FBVztNQUNYLGN0QjFieEI7TXNCMmJ3QixpQ0FBeUI7TUFBekIseUJBQXlCLEVBQUE7RUFoRTdEO0lBeUV3QixrQkFBa0I7SUFDbEIsbUJBQW1CLEVBQUE7SUExRTNDO01BNkU0QixrQkFBa0I7TUFDbEIsZ0JBQWdCO01BQ2hCLGtDQUFrQztNQUNsQyxRQUFRO01yQnZkaEMsUUFBUTtNQUNSLG1DQUEyQjtjQUEzQiwyQkFBMkI7TXFCd2RILGdCQUFnQjtNQUNoQixlQUFlLEVBQUE7RUFuRjNDO0lBeUZvQixVQUFVO0lBQ1Ysa0JBQWtCO0lBQ2xCLGlDQUF5QjtJQUF6Qix5QkFBeUIsRUFBQTtFQTNGN0M7SUFnR3dCLFVBQVU7SUFDVixVQUFVO0lBQ1YsbUJBQW1CO0lBQ25CLGdCQUFnQjtJQUNoQixpQ0FBeUI7SUFBekIseUJBQXlCLEVBQUE7RUFwR2pEO0lBd0d3QixVQUFVO0lBQ1YsbUJBQW1CO0lBQ25CLGdCQUFnQjtJQUNoQixpQ0FBeUI7SUFBekIseUJBQXlCLEVBQUE7RUFRakQ7SUFDSSxhQUFhLEVBQUE7RUFHakI7SUFDSSx3QkFBd0IsRUFBQSxFQUMzQjs7QW5CM2ZHO0VtQitmSjtJQUdZLGVBQWU7SUFDZixzQnRCOWZKO0lzQitmSSxZQUFZO0lBQ1osZ0JBQWdCO0lBQ2hCLHFCQUFxQjtJQUNyQixNQUFNO0lBQ04sYUFBYTtJQUNiLGFBQWE7SUFDYixXQUFXO0lBQ1gsaUNBQXlCO0lBQXpCLHlCQUF5QjtJQUN6QixrQkFBa0I7SUFDbEIsa0JBQWtCLEVBQUE7SUFkOUI7TUFpQmdCLFFBQVEsRUFBQTtJQWpCeEI7TUFxQmdCLG1CQUFtQixFQUFBO01BckJuQztRQXdCb0IsZUFBZSxFQUFBO1FBeEJuQztVQTJCd0IsZUFBZTtVQUNmLGlDQUF5QjtrQkFBekIseUJBQXlCLEVBQUE7SUE1QmpEO01Ba0NnQixjQUFjO01BQ2QsV0FBVztNQUNYLFdBQVc7TUFDWCxVQUFVLEVBQUE7TUFyQzFCO1FBd0NvQixpRHRCOWhCUDtRc0IraEJPLG1CQUFtQjtRQUNuQixvQkFBb0IsRUFBQTtNQTFDeEM7UUE4Q29CLGtCQUFrQjtRQUNsQixrQkFBa0IsRUFBQTtRQS9DdEM7VUFrRHdCLFdBQVc7VUFDWCxrQkFBa0IsRUFBQTtVQW5EMUM7WUFzRDRCLFlBQVk7WUFDWixvQkFBb0I7WUFDcEIsa0JBQWtCLEVBQUE7TUF4RDlDO1FBaUVnQyxRQUFRLEVBQUE7TUFqRXhDO1FBeUV3QyxRQUFRLEVBQUE7TUF6RWhEO1FBa0ZvQixXQUFXO1FBQ1gsVUFBVTtRQUNWLGtCQUFrQjtRQUNsQixhQUFhO1FBQ2Isd0JBQWdCO2dCQUFoQixnQkFBZ0IsRUFBQTtRQXRGcEM7VUEwRjRCLGtCQUFrQixFQUFBO1VBMUY5QztZckIvZ0JBLFdBRG1DO1lBRW5DLGtCQUZxQjtZQVlqQixRQUFRO1lBQ1IsbUNBQTJCO29CQUEzQiwyQkFBMkI7WXFCa21CQyxVQUFVO1lBQ1YsVUFBVTtZQUNWLFdBQVc7WUFDWCxrQkFBa0I7WUFDbEIseUJ0QjNsQnBCLEVBQUE7WUVneUdKO2NvQmxzRjRCLFdBQVc7Y0FDWCxXQUFXLEVBQUE7VUF2Ry9DO1lBNkdvQyxvQ0FBb0MsRUFBQTtRQTdHeEU7VUFvSHdCLGNBQWMsRUFBQTtRQXBIdEM7VUF5SDRCLGFBQWE7VUFDYixrQkFBa0I7VUFDbEIsUUFBUTtVQUNSLFdBQVc7VUFDWCxVQUFVO1VBQ1Ysd0JBQWdCO2tCQUFoQixnQkFBZ0IsRUFBQTtVQTlINUM7WUFvSTRDLGVBQWUsRUFBQTtVQXBJM0Q7WUEySWdELGVBQWUsRUFBQTtVQTNJL0Q7WUFtSmdDLGNBQWMsRUFBQTtVQW5KOUM7WUF3Sm9DLGVBQWUsRUFBQTtNQXhKbkQ7UUFnS29CLGFBQWE7UUFDYixVQUFVO1FBQ1Ysa0JBQWtCO1FBQ2xCLHdCQUFnQjtnQkFBaEIsZ0JBQWdCLEVBQUE7UUFuS3BDO1VBc0t3QixjQUFjLEVBQUE7UUF0S3RDO1VBMEt3QixXQUFXO1VBQ1gsVUFBVSxFQUFBO1VBM0tsQztZQStLZ0Msa0JBQWtCLEVBQUE7WUEvS2xEO2NBa0xvQyxnQkFBZ0I7Y0FDaEIsZ0JBQWdCO2NBQ2hCLGdCQUFnQjtjQUNoQixpQkFBaUIsRUFBQTtZQXJMckQ7Y0F5TG9DLFFBQVEsRUFBQTtVQXpMNUM7WUE4TGdDLGFBQWEsRUFBQTtZQTlMN0M7Y0FpTW9DLGNBQWM7Y0FDZCxlQUFlLEVBQUE7WUFsTW5EO2NBd000QyxnQkFBZ0IsRUFBQTtjQXhNNUQ7Z0JBMk1nRCxjQUFjLEVBQUE7Z0JBM005RDtrQkE4TW9ELGFBQWEsRUFBQTtVQTlNakU7WUF1TmdDLGFBQWEsRUFBQTtNQXZON0M7UUErTndCLDZCQUE2QjtRQUM3Qix3QkFBZ0I7Z0JBQWhCLGdCQUFnQjtRQUNoQixjdEJ6dEJaO1FzQjB0QlksaUNBQXlCO1FBQXpCLHlCQUF5QixFQUFBO1FBbE9qRDtVQXFPNEIseUJBQXlCO1VBQ3pCLGlDQUF5QjtVQUF6Qix5QkFBeUIsRUFBQTtJQXRPckQ7TUE2T2dCLDhCQUE4QjtNQUM5QixvQkFBb0I7TUFDcEIsZUFBZTtNQUNmLFNBQVM7TUFDVCxhQUFhO01BQ2IsWUFBWTtNQUNaLHdCQUF3QjtNQUN4Qix5QnRCeHVCQTtNc0J5dUJBLHlCQUFtQjtVQUFuQixzQkFBbUI7Y0FBbkIsbUJBQW1CO01BQ25CLGlDQUF5QjtNQUF6Qix5QkFBeUIsRUFBQTtNQXRQekM7UUF5UG9CLFdBQVcsRUFBQTtNQXpQL0I7UUE2UG9CLGlCQUFpQixFQUFBO1FBN1ByQztVQWdRd0IsZ0JBQWdCO1VBQ2hCLGVBQWUsRUFBQTtRQWpRdkM7VUFxUXdCLGVBQWU7VUFDZixhQUFhLEVBQUE7RUF0UXJDO0lBK1FZLGlCQUFpQjtJQUNqQixrQkFBa0IsRUFBQTtFQUs5QjtJQVFnQyxTQUFTO0lBQ1QsWUFBWSxFQUFBO0VBVTVDO0lBRVEsOEJBQWlCO1FBQWpCLGlCQUFpQixFQUFBO0VBSXpCO0lBQ0ksa0JBQWtCO0lBQ2xCLFdBQVc7SUFDWCxTQUFTLEVBQUE7SXBCc2xGYjtNb0JubEZRLFlBQVk7TUFDWixVQUFVLEVBQUEsRUFDYjs7QUM1MEJUOzs0QnJCbTZHNEI7QXFCLzVHeEI7RUFDSSxnQkFBZ0IsRUFBQTtFQURwQjtJQUlRLFdBQVc7SUFDWCxhQUFhO0lBQ2Isa0JBQWtCLEVBQUE7SXJCZzZHMUI7TXFCNzVHWSxjQUFjLEVBQUE7SXBCVXRCO01vQm5CSjtRQWFZLGFBQWEsRUFBQSxFQWtCcEI7SXBCWkQ7TW9CbkJKO1FBaUJZLG9DQUFvQyxFQUFBO1FyQjY1RzVDO1VxQjE1R1kscUNBQXFDLEVBQUEsRUFDeEM7SXBCRlQ7TW9CbkJKO1FBeUJZLGFBQWEsRUFBQSxFQU1wQjtJcEJaRDtNb0JuQko7UUE2QlksYUFBYSxFQUFBLEVBRXBCO0VBL0JMO0lBa0NRLFlBQVksRUFBQTtJQWxDcEI7TUFxQ1ksb0VBQW9FO01BQ3BFLGdCQUFnQixFQUFBO01wQm5CeEI7UW9CbkJKO1VBeUNnQixvRUFBb0UsRUFBQSxFQUUzRTtJQTNDVDtNQThDWSxjdkJwQkEsRUFBQTtJdUIxQlo7TUFrRFksb0VBQW9FO01BQ3BFLGdCQUFnQjtNQUNoQixjdkIxQkEsRUFBQTtNR1BSO1FvQm5CSjtVQXVEZ0IsY0FBYyxFQUFBLEVBVXJCO01wQjlDTDtRb0JuQko7VUEyRGdCLGNBQWMsRUFBQSxFQU1yQjtNcEI5Q0w7UW9CbkJKO1VBK0RnQixjQUFjLEVBQUEsRUFFckI7SUFqRVQ7TUFvRVkscUVBQXFFLEVBQUE7TXJCMjRHL0U7UXFCeDRHYyxpQkFBaUIsRUFBQTtNcEJwRDdCO1FvQm5CSjtVQTJFZ0IsZ0JBQWdCLEVBQUEsRUF3RHZCO01BbklUO1FBK0VnQix5QkFBbUI7WUFBbkIsc0JBQW1CO2dCQUFuQixtQkFBbUIsRUFBQTtNQS9FbkM7UUFtRmdCLGdFQUFnRTtRQUNoRSxpRUFBaUU7UUFDakUsbUJBQW1CO1F0Qm5EbkMsb0JBRHlCO1FBQ3pCLG9CQUR5QjtRQUN6QixhQUR5QjtRQUV6Qix5QkFGeUM7WUFFekMsc0JBRnlDO2dCQUV6QyxtQkFGeUM7UUFHekMsd0JBSDJEO1lBRzNELHFCQUgyRDtnQkFHM0QsdUJBSDJEO1FzQnNEM0MsV3ZCL0RSO1F1QmdFUSxvRUFBb0U7UUFDcEUsa0JBQWtCO1FBQ2xCLFVBQVUsRUFBQTtRQTFGMUI7VXRCR0EsV0FEbUM7VUFFbkMsa0JBRnFCO1VzQjRGRCx3QkFBd0I7VUFDeEIseUJBQXlCO1VBQ3pCLG9DQUFvQztVQUNwQyxtQkFBbUI7VUFDbkIsWUFBWTtVQUNaLFVBQVU7VUFDVixTQUFTO1VBQ1QsV0FBVyxFQUFBO1FBckcvQjtVQXlHb0IsZ0JBQWdCLEVBQUE7VXJCcTRHOUI7WXFCbDRHa0IsZUFBZTtZQUNmLGtCQUFrQixFQUFBO01BN0cxQztRQW1IZ0IsaUJBQWlCLEVBQUE7UXBCaEc3QjtVb0JuQko7WUFzSG9CLGlCQUFpQixFQUFBLEVBWXhCO1FyQm8zR1Q7VXFCNTNHZ0Isa0JBQWtCO1VBQ2xCLGtCQUFrQjtVQUNsQixpQkFBaUIsRUFBQTtVcEJ6R2pDO1lEdytHSTtjcUI1M0dnQixrQkFBa0IsRUFBQSxFQUV6QjtFQWpJakI7SUF1SVEsa0JBQWtCLEVBQUE7SUF2STFCO01BMElZLG9CQUFhO01BQWIsb0JBQWE7TUFBYixhQUFhO01BQ2IseUJBQW1CO1VBQW5CLHNCQUFtQjtjQUFuQixtQkFBbUIsRUFBQTtNQTNJL0I7UUErSW9CLG9FQUFvRSxFQUFBO01BL0l4RjtRQW1Kb0IsaUJBQWlCLEVBQUE7UUFuSnJDO1VBc0p3QixtQkFBbUI7VUFDbkIsZ0JBQWdCLEVBQUE7TUF2SnhDO1FBNEpvQixvQkFBb0I7UUFDcEIsZ0JBQWdCO1FBQ2hCLGN2QnBJUixFQUFBOztBdUJrN0VaO0VBQ0ksYUFBYTtFQUNiLHlEQUF5RDtFQUN6RCw0QkFBNEI7RUFDNUIsc0JBQXNCO0VBQ3RCLGtCQUFrQjtFQUNsQixnQkFBZ0IsRUFBQTtFcEIvN0VoQjtJb0J5N0VKO01BU1EsYUFBYSxFQUFBLEVBd1VwQjtFcEIxd0ZHO0lvQnk3RUo7TUFhUSxhQUFhO01BQ2IsaUJBQWlCLEVBQUEsRUFtVXhCO0VwQjF3Rkc7SW9CeTdFSjtNQWtCUSxhQUFhLEVBQUEsRUErVHBCO0VwQjF3Rkc7SW9CeTdFSjtNQXNCUSxpQkFBaUIsRUFBQSxFQTJUeEI7RXBCMXdGRztJb0J5N0VKO01BMEJRLGFBQWEsRUFBQSxFQXVUcEI7RUFqVkQ7SUE4QlEscUJBQXFCO0lBQ3JCLFdBQVc7SUFDWCxVQUFVLEVBQUE7SXJCNmpDbEI7TXFCMWpDWSx1QkFBdUI7TUFDdkIsbUJBQW1CLEVBQUE7TXJCNGpDN0I7UXFCempDYyw2QkFBNkI7UUFDN0IsNkJBQTZCLEVBQUE7SXBCaitFekM7TW9CeTdFSjtRQTZDWSxXQUFXLEVBQUEsRUFzRGxCO0lwQjVoRkQ7TW9CeTdFSjtRQWlEWSxXQUFXO1FBQ1gscUJBQXFCLEVBQUEsRUFpRDVCO0lwQjVoRkQ7TW9CeTdFSjtRQXNEWSxXQUFXO1FBQ1gsb0JBQW9CLEVBQUE7UXJCdWpDNUI7VXFCcGpDWSxtQkFBbUIsRUFBQSxFQUN0QjtJcEJwL0VUO01vQnk3RUo7UUErRFksV0FBVztRQUNYLG9CQUFvQixFQUFBO1FyQm9qQzVCO1VxQmpqQ1kscUJBQXFCLEVBQUEsRUFDeEI7SXBCNy9FVDtNb0J5N0VKO1FBd0VZLG1CQUFtQjtRQUNuQixXQUFXLEVBQUE7UXJCaWpDbkI7VXFCOWlDWSxxQkFBcUI7VUFDckIsc0JBQXNCLEVBQUEsRUFDekI7SXBCdmdGVDtNb0J5N0VKO1FBa0ZZLFdBQVc7UUFDWCxvQkFBb0IsRUFBQTtRckI4aUM1QjtVcUIzaUNZLFdBQVc7VUFDWCxvQkFBb0IsRUFBQSxFQUN2QjtJcEJqaEZUO01vQnk3RUo7UUE0RlksV0FBVztRQUNYLG9CQUFvQixFQUFBO1FyQjJpQzVCO1VxQnhpQ1ksV0FBVyxFQUFBLEVBQ2Q7RUFqR2I7SUFzR1Esb0JBQW9CO0lBQ3BCLFdBQVc7SUFDWCxVQUFVLEVBQUE7SXJCc2lDbEI7TXFCbmlDWSx1QkFBdUI7TUFDdkIsb0JBQW9CLEVBQUE7TXJCcWlDOUI7UXFCbGlDYyw4QkFBOEI7UUFDOUIsNEJBQTRCLEVBQUE7SUFoSDVDO01BcUhZLHNCQUFzQixFQUFBO0lwQjlpRjlCO01vQnk3RUo7UUF5SFksV0FBVyxFQUFBLEVBbURsQjtJcEJybUZEO01vQnk3RUo7UUE2SFksV0FBVyxFQUFBLEVBK0NsQjtJcEJybUZEO01vQnk3RUo7UUFpSVksV0FBVztRQUNYLG9CQUFvQixFQUFBO1FyQjhoQzVCO1VxQjNoQ1ksWUFBWTtVQUNaLG9CQUFvQixFQUFBLEVBQ3ZCO0lwQmhrRlQ7TW9CeTdFSjtRQTJJWSxXQUFXO1FBQ1gsb0JBQW9CLEVBQUEsRUFnQzNCO0lwQnJtRkQ7TW9CeTdFSjtRQWdKWSxvQkFBb0I7UUFDcEIsV0FBVyxFQUFBO1FyQjBoQ25CO1VxQnZoQ1ksb0JBQW9CO1VBQ3BCLHNCQUFzQixFQUFBLEVBQ3pCO0lwQi9rRlQ7TW9CeTdFSjtRQTBKWSxXQUFXO1FBQ1gsb0JBQW9CLEVBQUE7UXJCdWhDNUI7VXFCcGhDWSxXQUFXO1VBQ1gsb0JBQW9CLEVBQUEsRUFDdkI7SXBCemxGVDtNb0J5N0VKO1FBb0tZLFdBQVc7UUFDWCxvQkFBb0IsRUFBQTtRckJvaEM1QjtVcUJqaENZLFdBQVc7VUFDWCxvQkFBb0IsRUFBQSxFQUN2QjtFQTFLYjtJQStLUSxrQkFBa0I7SUFDbEIsTUFBTTtJdEJ6bUZWLFNBQVM7SUFDVCxtQ0FBMkI7WUFBM0IsMkJBQTJCO0lzQjBtRnZCLGVBQWU7SUFDZixVQUFVLEVBQUE7SXBCNW1GZDtNb0J5N0VKO1FBc0xZLGVBQWUsRUFBQSxFQXlCdEI7SXBCeG9GRDtNb0J5N0VKO1FBMExZLFVBQVU7UXRCbm5GbEIsU0FBUztRQUNULG1DQUEyQjtnQkFBM0IsMkJBQTJCO1FzQm9uRm5CLGVBQWUsRUFBQSxFQW1CdEI7SXBCeG9GRDtNb0J5N0VKO1FBZ01ZLGVBQWUsRUFBQSxFQWV0QjtJcEJ4b0ZEO01vQnk3RUo7UUFvTVksZUFBZTtRQUNmLFVBQVUsRUFBQSxFQVVqQjtJQS9NTDtNQXlNWSxVQUFVO01BQ1YsV0FBVztNQUNYLFlBQVk7TUFDWixzQkFBbUI7U0FBbkIsbUJBQW1CO01BQ25CLDhDQUFzQztjQUF0QyxzQ0FBc0MsRUFBQTtFQTdNbEQ7SUFrTlEsd0NBQXdDO0lBQ3hDLFVBQVUsRUFBQTtJQW5ObEI7TUFzTlksY0FBYztNQUNkLGNBQWM7TUFDZCxhQUFhO01BQ2Isb0RBQTRDO2NBQTVDLDRDQUE0QyxFQUFBO01wQmxwRnBEO1FvQnk3RUo7VUE0TmdCLGFBQWEsRUFBQSxFQXFDcEI7TXBCMXJGTDtRb0J5N0VKO1VBZ09nQixhQUFhLEVBQUEsRUFpQ3BCO01wQjFyRkw7UW9CeTdFSjtVQW9PZ0IsYUFBYSxFQUFBLEVBNkJwQjtNcEIxckZMO1FvQnk3RUo7VUF3T2dCLGNBQWM7VUFDZCxhQUFhO1VBQ2IsY0FBYztVQUNkLGdCQUFnQixFQUFBLEVBc0J2QjtNcEIxckZMO1FvQnk3RUo7VUErT2dCLGFBQWE7VUFDYixnQkFBZ0I7VUFDaEIsaUJBQWlCO1VBQ2pCLGFBQWEsRUFBQTtVckJvZ0N2QjtZcUJqZ0NjLGVBQWU7WUFDZixrQkFBa0IsRUFBQSxFQUNyQjtNcEJockZiO1FvQnk3RUo7VUEyUGdCLGNBQWM7VUFDZCxrQkFBa0I7VUFDbEIsc0JBQW1CO2FBQW5CLG1CQUFtQjtVQUNuQixhQUFhO1VBQ2IsY0FBYyxFQUFBLEVBRXJCO0VBalFUO0lBcVFRLGtCQUFrQjtJdEJuc0Z0QixRQUFRO0lBQ1IsbUNBQTJCO1lBQTNCLDJCQUEyQjtJc0Jvc0Z2QixZQUFZO0lBQ1osaUJBQWlCO0lBQ2pCLG9CQUFhO0lBQWIsb0JBQWE7SUFBYixhQUFhO0lBQ2IseUJBQW1CO1FBQW5CLHNCQUFtQjtZQUFuQixtQkFBbUI7SUFDbkIsVUFBVSxFQUFBO0lyQjgvQmxCO01xQjMvQlksWUFBWTtNQUNaLFdBQVcsRUFBQTtJcEJ4c0ZuQjtNb0J5N0VKO1FBbVJZLFdBQVcsRUFBQSxFQTZEbEI7SXBCendGRDtNb0J5N0VKO1FBdVJZLFdBQVcsRUFBQSxFQXlEbEI7SXBCendGRDtNb0J5N0VKO1FBMlJZLFdBQVcsRUFBQSxFQXFEbEI7SUFoVkw7TUErUlksa0JBQWtCO01BQ2xCLHFCQUFxQjtNQUNyQixlQUFlO01BQ2YsZ0JBQWdCO01BQ2hCLGtCQUFrQixFQUFBO01yQncvQjVCO1FxQnIvQmMsV0FBVyxFQUFBO01wQi90RnZCO1FvQnk3RUo7VUEwU2dCLGFBQWEsRUFBQSxFQThCcEI7TUF4VVQ7UUE4U2dCLGVBQWU7UUFDZixvQkFBYTtRQUFiLG9CQUFhO1FBQWIsYUFBYTtRQUNiLGtCQUFrQjtRQUNsQixnQkFBZ0I7UUFDaEIsVUFBVSxFQUFBO01BbFQxQjtRQXNUZ0Isa0JBQWtCO1FBQ2xCLE1BQU07UUFDTixPQUFPO1FBQ1AsVUFBVTtRdEJudUYxQixvQkFEeUI7UUFDekIsb0JBRHlCO1FBQ3pCLGFBRHlCO1FBRXpCLHlCQUZ5QztZQUV6QyxzQkFGeUM7Z0JBRXpDLG1CQUZ5QztRQUd6Qyx3QkFIMkQ7WUFHM0QscUJBSDJEO2dCQUczRCx1QkFIMkQ7UUF6QjNELFdBRHdCO1FBRXhCLFlBRnVDO1FzQml3RnZCLHdDdkJ4cEZOO1F1QnlwRk0sMkJBQW1CO2dCQUFuQixtQkFBbUI7UUFDbkIsNkJBQXFCO1FBQXJCLHFCQUFxQjtRQUNyQixrQkFBa0I7UUFDbEIsVUFBVSxFQUFBO1FBaFUxQjtVQW1Vb0Isc0J2QnZ2Rlo7VXVCd3ZGWSxnRUFBZ0U7VUFDaEUsa0JBQWtCLEVBQUE7SUFyVXRDO01BNFVnQiw4QkFBc0I7Y0FBdEIsc0JBQXNCO01BQ3RCLFVBQVUsRUFBQTs7QUFNMUI7RUFDSSxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFNBQVMsRUFBQTtFcEIvd0ZUO0lvQjR3Rko7TUFNUSxRQUFRO01BQ1IsU0FBUyxFQUFBLEVBNkJoQjtFcEJoekZHO0lvQjR3Rko7TUFXUSxTQUFTLEVBQUEsRUF5QmhCO0VwQmh6Rkc7SW9CNHdGSjtNQWVRLFFBQVE7TUFDUixTQUFTLEVBQUEsRUFvQmhCO0VwQmh6Rkc7SW9CNHdGSjtNQW9CUSxhQUFhLEVBQUEsRUFnQnBCO0VBcENEO0lBeUJZLHlCQUF5QixFQUFBO0VBekJyQztJQTZCWSxrRUFBa0U7SUFDbEUsc0J2QnJ5Rko7SXVCc3lGSSxrQkFBa0I7SUFDbEIsb0VBQW9FO0lBQ3BFLGdEQUF3QztZQUF4Qyx3Q0FBd0MsRUFBQTs7QUFLcEQ7RUFDSSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFdBQVc7RUFDWCxvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CO0VBQ25CLFVBQVU7RUFDVixZQUFZLEVBQUE7RXJCZytCbEI7SXFCNzlCVSxXQUFXO0lBQ1gsWUFBWSxFQUFBO0VwQjd6RmhCO0lvQmt6Rko7TUFlUSxVQUFVO01BQ1YsVUFBVSxFQUFBLEVBa0xqQjtFcEJwL0ZHO0lvQmt6Rko7TUFvQlEsVUFBVTtNQUNWLFVBQVUsRUFBQSxFQTZLakI7RXBCcC9GRztJb0JrekZKO01BeUJRLFVBQVU7TUFDVixVQUFVLEVBQUEsRUF3S2pCO0VwQnAvRkc7SW9Ca3pGSjtNQThCUSxVQUFVO01BQ1YsVUFBVSxFQUFBLEVBbUtqQjtFcEJwL0ZHO0lvQmt6Rko7TUFtQ1EsVUFBVTtNQUNWLFVBQVUsRUFBQSxFQThKakI7RXBCcC9GRztJb0JrekZKO01Bd0NRLFVBQVU7TUFDVixVQUFVLEVBQUE7TXJCeTlCaEI7UXFCdDlCVSxXQUFXO1FBQ1gsV0FBVyxFQUFBLEVBQ2Q7RXBCaDJGTDtJb0JrekZKO01Ba0RRLFdBQVc7TUFDWCxZQUFZO010QjEyRmhCLFFBQVE7TUFDUixtQ0FBMkI7Y0FBM0IsMkJBQTJCO01zQjIyRnZCLE9BQU87TUFDUCxrQkFBa0I7TUFDbEIsV3ZCcDJGQTtNdUJxMkZBLGNBQWM7TUFDZCxVQUFVLEVBQUEsRUF5SWpCO0VwQnAvRkc7SW9Ca3pGSjtNQThEWSxjQUFjO01BQ2Qsd0N2QnB4RkY7TXVCcXhGRSxrRUFBa0U7TUFDbEUsa0NBQTBCO2NBQTFCLDBCQUEwQixFQUFBLEVBZ0lqQztFQWpNTDtJQXFFWSxnQkFBZ0I7SUFDaEIsY3ZCajNGQSxFQUFBO0lHUFI7TW9Ca3pGSjtRQXlFZ0IsZ0JBQWdCO1FBQ2hCLFd2QnYzRlIsRUFBQSxFdUJnNEZDO0lwQnI0Rkw7TW9Ca3pGSjtRQStFb0Isc0JBQTZCO1FBQzdCLGdCQUFnQixFQUFBLEVBRXZCO0VBbEZiO0lBc0ZZLGlFQUFpRTtJQUNqRSxnQkFBZ0I7SUFDaEIsY3ZCbjRGQTtJdUJvNEZBLG9FQUFvRSxFQUFBO0lwQjM0RjVFO01vQmt6Rko7UUE0RmdCLFd2Qno0RlIsRUFBQSxFdUIrNEZDO0lBbEdUO01BZ0dnQixtQkFBbUIsRUFBQTtFQWhHbkM7SUFxR1ksY3ZCaDVGQTtJdUJpNUZBLG9CQUFvQixFQUFBO0lwQng1RjVCO01vQmt6Rko7UUF5R2dCLGFBQWEsRUFBQSxFQUVwQjtFQTNHVDtJQThHWSxjdkJ6NUZBO0l1QjA1RkEsb0VBQW9FLEVBQUE7SXBCajZGNUU7TW9Ca3pGSjtRQWtIZ0IsbUJBQW1CLEVBQUEsRUFnQjFCO0lwQnA3Rkw7TW9Ca3pGSjtRQXNIZ0IsZ0JBQWdCO1FBQ2hCLFd2QnA2RlIsRUFBQSxFdUIrNkZDO0lBbElUO01BMkhnQixvRUFBb0UsRUFBQTtNcEI3NkZoRjtRb0JrekZKO1VBOEhvQixzQkFBNkI7VUFDN0IsZ0JBQWdCLEVBQUEsRUFFdkI7RUFqSWI7SUFxSVksa0JBQWtCO0lBQ2xCLFNBQVM7SUFDVCxPQUFPO0lBQ1Asb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWE7SUFDYixrQkFBa0IsRUFBQTtJcEIzN0YxQjtNb0JrekZKO1FBNElnQixhQUFhLEVBQUEsRUFFcEI7RUE5SVQ7SUFpSlksaUJBQWlCO0lBQ2pCLGlFQUFpRSxFQUFBO0VBbEo3RTtJQXNKWSxnQkFBZ0I7SUFDaEIsZUFBZTtJQUNmLGdCQUFnQjtJQUNoQixvQkFBYTtJQUFiLG9CQUFhO0lBQWIsYUFBYTtJQUNiLHlCQUFtQjtRQUFuQixzQkFBbUI7WUFBbkIsbUJBQW1CLEVBQUE7SXBCNThGM0I7TW9Ca3pGSjtRQTZKZ0IsYUFBYSxFQUFBLEVBbUNwQjtJQWhNVDtNQWlLZ0Isb0VBQW9FO01BQ3BFLGtCQUFrQjtNQUNsQixXdkIvOEZSO011Qmc5RlEsbUJBQW1CLEVBQUE7SUFwS25DO01Bd0tnQix5QnZCbDlGTjtNdUJtOUZNLGdFQUFnRTtNQUNoRSxpRUFBaUU7TUFDakUsa0JBQWtCO01BQ2xCLGtCQUFrQjtNQUNsQixrQkFBa0IsRUFBQTtNQTdLbEM7UXRCbDBGQSxXQURtQztRQUVuQyxrQkFGcUI7UUFzQmpCLFFBQVE7UUFDUixTQUFTO1FBQ1Qsd0NBQWdDO2dCQUFoQyxnQ0FBZ0M7UXNCNjlGaEIsa0JBQWtCO1FBQ2xCLDhEQUE4RDtRQUM5RCwrREFBK0Q7UUFDL0Qsc0J2QmorRlosRUFBQTtNdUI0eUZSO1FBeUxvQixvQ0FBb0MsRUFBQTtRQXpMeEQ7VUE0THdCLHNCdkJ6K0ZoQixFQUFBOztBdUJpL0ZSO0VBQ0ksa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixZQUFZO0V0QjErRmhCLG9CQUR5QjtFQUN6QixvQkFEeUI7RUFDekIsYUFEeUI7RUFFekIseUJBRnlDO01BRXpDLHNCQUZ5QztVQUV6QyxtQkFGeUM7RUFHekMsd0JBSDJEO01BRzNELHFCQUgyRDtVQUczRCx1QkFIMkQ7RXNCNitGdkQsVUFBVSxFQUFBO0VyQmc3QmhCO0lxQjc2QlUsWUFBWTtJQUNaLFdBQVcsRUFBQTtFcEIvL0ZmO0lvQnMvRko7TUFhUSxXQUFXLEVBQUEsRUEyQmxCO0VwQjloR0c7SW9Ccy9GSjtNQWlCUSxXQUFXLEVBQUEsRUF1QmxCO0VwQjloR0c7SW9Ccy9GSjtNQXFCUSxhQUFhLEVBQUEsRUFtQnBCO0VBeENEO0l0QnYrRkEsb0JBRHlCO0lBQ3pCLG9CQUR5QjtJQUN6QixhQUR5QjtJQUV6Qix5QkFGeUM7UUFFekMsc0JBRnlDO1lBRXpDLG1CQUZ5QztJQUd6Qyx3QkFIMkQ7UUFHM0QscUJBSDJEO1lBRzNELHVCQUgyRCxFQUFBO0lzQncrRjNEO01BNEJZLGlCQUFpQixFQUFBO01yQjI2QjNCO1FxQng2QmMsY0FBYztRQUNkLGtCQUFrQixFQUFBO0lBaENsQztNQXFDWSxjdkJwaEdBLEVBQUE7O0F3QjlCaEI7OzZCdEI0OUg2QjtBc0J4OUh6QjtFQUVRLDZEQUE2RDtFQUM3RCxVQUFVLEVBQUE7RXJCZ0JkO0lxQm5CSjtNQU1ZLFVBQVUsRUFBQSxFQVdqQjtFQWpCTDtJQVVZLGdCQUFnQjtJQUNoQixrQ0FBa0M7SUFDbEMsZ0JBQWdCO0lBQ2hCLE9BQU87SUFDUCxjeEJZQTtJd0JYQSxlQUFlLEVBQUE7O0FBZjNCO0VBb0JRLGdFQUFnRTtFQUNoRSxVQUFVLEVBQUE7RUFyQmxCO0lBd0JZLGdCQUFnQjtJQUNoQixrQ0FBa0M7SUFDbEMsZ0JBQWdCO0lBQ2hCLFFBQVE7SUFDUixjeEJGQTtJd0JHQSxlQUFlLEVBQUE7O0FBSzNCO0VBRVEsV0FBVztFQUNYLFlBQVksRUFBQTtFQUhwQjtJQU1ZLG9DQUFvQztJQUNwQyxtQkFBbUIsRUFBQTtJQVAvQjtNQVVnQiw2QkFBNkIsRUFBQTtFQVY3QztJQWVZLHlCeEIrQkc7SXdCOUJILGtCQUFrQjtJQUNsQixXQUFXO0lBQ1gsWUFBWTtJQUNaLGtCQUFrQixFQUFBO0lBbkI5QjtNQXNCZ0IsV0FBVyxFQUFBOztBQzVEL0I7OzRCdkJ5Z0k0QjtBdUJ0Z0k1QjtFQUVRLFlBQVk7RUFDWix5QnpCb0NVO0V5Qm5DVixrQkFBa0IsRUFBQTtFQUoxQjtJQU9ZLGtCQUFrQjtJQUNsQixNQUFNO0lBQ04sUUFBUTtJQUNSLFlBQVk7SUFDWixvQkFBYTtJQUFiLG9CQUFhO0lBQWIsYUFBYTtJQUNiLHlCQUFtQjtRQUFuQixzQkFBbUI7WUFBbkIsbUJBQW1CO0lBQ25CLFVBQVU7SUFDVixrQkFBa0I7SUFDbEIseUJBQXlCLEVBQUE7SXRCSzdCO01zQnBCUjtRQWtCZ0IsaUJBQWlCLEVBQUEsRUFxQ3hCO0l0Qm5DRDtNc0JwQlI7UUFzQmdCLGtCQUFrQixFQUFBLEVBaUN6QjtJQXZEVDtNQTBCZ0Isb0VBQW9FO01BQ3BFLGN6QkFBO015QkNBLGdCQUFnQjtNQUNoQixtRUFBbUUsRUFBQTtJQTdCbkY7TUFpQ2dCLG9FQUFvRTtNQUNwRSxnQkFBZ0IsRUFBQTtJQWxDaEM7TUFzQ2dCLGdCekJVTTtNeUJUTixvRUFBb0U7TUFDcEUsZ0JBQWdCO01BQ2hCLGdCQUFnQixFQUFBO0lBekNoQztNQTZDZ0Isb0VBQW9FO01BQ3BFLGlCQUFpQjtNQUNqQixjekJwQkE7TXlCcUJBLGlFQUFpRSxFQUFBO01BaERqRjtRQW1Eb0IseUJBQXlCO1FBQ3pCLG9FQUFvRSxFQUFBOztBQ3ZEeEY7OzRCeEJzakk0QjtBd0JyNEh4QjtFQUNJLGtCQUFrQjtFekI1SXRCLG9CQUR5QjtFQUN6QixvQkFEeUI7RUFDekIsYUFEeUI7RUFFekIseUJBRnlDO01BRXpDLHNCQUZ5QztVQUV6QyxtQkFGeUM7RUFHekMsd0JBSDJEO01BRzNELHFCQUgyRDtVQUczRCx1QkFIMkQsRUFBQTtFeUI0STNEO0lBS1EseUIxQnRJQyxFQUFBO0kwQmlJVDtNQVFZLGtCQUFrQjtNQUNsQixpQkFBaUI7TUFDakIsYUFBYTtNQUNiLE1BQU07TUFDTixRQUFRLEVBQUE7TXZCdEtoQjtRdUIwSko7VUFlZ0IsYUFBYSxFQUFBLEVBTXBCO012Qi9LTDtRdUIwSko7VUFtQmdCLGFBQWEsRUFBQSxFQUVwQjtJQXJCVDtNQXdCWSxrQkFBa0I7TUFDbEIsYUFBYTtNQUNiLFNBQVMsRUFBQTtNdkJwTGpCO1F1QjBKSjtVQTZCZ0IsYUFBYSxFQUFBLEVBVXBCO012QmpNTDtRdUIwSko7VUFpQ2dCLGFBQWEsRUFBQSxFQU1wQjtNQXZDVDtRQXFDZ0IsaUJBQWlCLEVBQUE7SUFyQ2pDO01BMENZLGtCQUFrQjtNQUNsQixhQUFhO01BQ2IsU0FBUztNQUNULFFBQVEsRUFBQTtNdkJ2TWhCO1F1QjBKSjtVQWdEZ0IsYUFBYSxFQUFBLEVBeUJwQjtNdkJuT0w7UXVCMEpKO1VBb0RnQixhQUFhLEVBQUEsRUFxQnBCO01BekVUO1FBeURvQiwwQkFBMEI7UUFDMUIsd0JBQXdCO1FBQ3hCLFdBQVcsRUFBQTtRdkJyTjNCO1V1QjBKSjtZQThEd0IsV0FBVyxFQUFBLEVBRWxCO01BaEVqQjtRQW9Fd0IsWTFCeE5oQjtRMEJ5TmdCLFUxQnpOaEIsRUFBQTs7QTJCN0JaOzs0QnpCOG1JNEI7QXlCMW1JNUI7RUFDSSx5QjNCZ0R1QixFQUFBO0UyQjlDdkI7SUFDSSx5QjNCbURjLEVBQUE7RTJCdkR0QjtJQVFRLFlBQVksRUFBQTtJQVJwQjtNQVdZLG9FQUFvRTtNQUNwRSxnQkFBZ0IsRUFBQTtJQVo1QjtNQWdCWSxlQUFlO01BQ2YsbUJBQW1CO01BQ25CLGNBQWM7TUFDZCxtQkFBbUI7TUFDbkIsZ0JBQWdCLEVBQUE7RUFwQjVCO0kxQmtDSSxvQkFEeUI7SUFDekIsb0JBRHlCO0lBQ3pCLGFBRHlCO0lBRXpCLHlCQUZ5QztRQUV6QyxzQkFGeUM7WUFFekMsbUJBRnlDO0lBR3pDLHdCQUgyRDtRQUczRCxxQkFIMkQ7WUFHM0QsdUJBSDJEO0kwQkh2RCxZQUFZLEVBQUE7SUE5QnBCO01BMEJZLGdCQUFnQixFQUFBOztBQzlCNUI7OzRCMUJ3b0k0QjtBQ2puSXBCO0V5QmxCSjtJQUVRLG1CQUFtQixFQUFBLEVBNEQxQjs7QUE5REQ7RUFNUSxvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CLEVBQUE7RUFQM0I7SUFXZ0IsV0FBVztJQUNYLFlBQVk7SUFDWix3QkFBd0I7SUFDeEIsMEJBQTBCO0lBQzFCLGtCQUFrQixFQUFBO0kxQmtvSWxDO00wQi9uSW9CLGVBQWU7TUFDZixpQkFBaUIsRUFBQTtJekJEakM7TXlCbEJKO1FBdUJvQixXQUFXO1FBQ1gsWUFBWSxFQUFBLEVBT25CO0l6QmJUO015QmxCSjtRQTRCb0IsV0FBVztRQUNYLFlBQVksRUFBQSxFQUVuQjtFQS9CYjtJQW9DZ0IsZ0JBQWdCLEVBQUE7SXpCbEI1QjtNeUJsQko7UUF1Q29CLDZCQUE2QixFQUFBLEVBRXBDO0VBekNiO0lBNENnQixjQUFjO0lBQ2QsbUJBQW1CO0lBQ25CLGdCQUFnQjtJQUNoQixzQkFBc0IsRUFBQTs7QUEvQ3RDO0VBd0RvQixXQUFXO0VBQ1gsWUFBWSxFQUFBOztBQWtDaEM7RUFFUSxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLG1CQUFtQixFQUFBO0VBSjNCO0lBT1ksbUJBQW1CLEVBQUE7O0FBUC9CO0VBYVksa0JBQWtCLEVBQUE7RUFiOUI7STNCekZBLFdBRG1DO0lBRW5DLGtCQUZxQjtJQVlqQixRQUFRO0lBQ1IsbUNBQTJCO1lBQTNCLDJCQUEyQjtJMkJnR1gsVUFBVTtJQUNWLFlBQVk7SUFDWix5QjVCM0VOLEVBQUE7RUduQlY7SXlCeUVKO01BMkI0QixXQUFXO01BQ1gsYUFBYSxFQUFBLEVBQ2hCO0V6QnRHckI7SXlCeUVKO01Bb0M0QixXQUFXO01BQ1gsYUFBYSxFQUFBLEVBQ2hCOztBQ3RJN0I7OzRCM0I0c0k0QjtBMkI5a0Y1QjtFQUtvQixjQUFjLEVBQUE7RTNCNGtGaEM7STJCemtGc0Isa0JBQWtCO0lBQ2xCLGVBQWUsRUFBQTtFQVR2QztJQWF3QixjQUFjLEVBQUE7STNCeWtGbEM7TTJCdGtGd0IsY0FBYyxFQUFBOztBQXpvRHRDO0VBQ0ksY0FBYztFQUNkLG1CQUFtQixFQUFBO0UzQm10SXpCO0kyQmh0SVUsVUFBVSxFQUFBO0VBTGxCO0lBVVkseUJBQTZCLEVBQUE7SUFWekM7TUFhZ0IseUJBQXlCLEVBQUE7O0FBTXpDO0VBQ0ksZUFBZTtFQUNmLFdBQVc7RUFDWCxZQUFZO0U1QldoQixvQkFEeUI7RUFDekIsb0JBRHlCO0VBQ3pCLGFBRHlCO0VBRXpCLHlCQUZ5QztNQUV6QyxzQkFGeUM7VUFFekMsbUJBRnlDO0VBR3pDLHdCQUgyRDtNQUczRCxxQkFIMkQ7VUFHM0QsdUJBSDJEO0U0QlJ2RCxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLDRCQUFvQjtFQUFwQixvQkFBb0I7RUFDcEIsc0I3QkpJO0U2QktKLG1CQUFtQixFQUFBO0VBVHZCO0lBWVEsZUFBZTtJQUNmLGlCQUFpQixFQUFBO0kzQjJzSXpCO00yQnhzSVksa0JBQWtCO01BQ2xCLGtCQUFrQixFQUFBO0VBakI5QjtJNUJqQkEsV0FEbUM7SUFFbkMsa0JBRnFCO0lBTXJCLFdBRHdCO0lBRXhCLFlBRnVDO0lBaUh2QyxvQ0FBb0M7SUFDcEMsWUFBWTtJQUNaLG1CQUFtQjtJQUNuQiw0QkFBb0I7SUFBcEIsb0JBQW9CO0lBQ3BCLFdBQVcsRUFBQTtFNEJ4R1g7SUEyQlksNkJBQTZCLEVBQUE7O0FBS3pDO0VBQ0ksZ0JBQWdCLEVBQUE7RTNCeXNJdEI7STJCdHNJVSxjQUFjLEVBQUE7RUFKdEI7SUFVZ0IscUJBQXFCO0lBQ3JCLFc3QnZDUixFQUFBO0k2QjRCUjtNQWNvQixVQUFVLEVBQUE7RUFkOUI7SUFtQmdCLFlBQVk7SUFDWix1QkFBdUI7SUFDdkIsVUFBVTtJQUNWLGtCQUFrQixFQUFBO0VBdEJsQztJQTJCb0IsVUFBVSxFQUFBO0VBM0I5QjtJQWlDb0IsVUFBVSxFQUFBO0VBakM5QjtJQXNDZ0IsOEJBQXNCO1lBQXRCLHNCQUFzQixFQUFBO0VBdEN0QztJQTBDZ0IsVUFBVSxFQUFBO0VBMUMxQjtJQWdEUSxrQkFBa0I7SUFDbEIsZ0JBQWdCLEVBQUE7SUFqRHhCO001QmpEQSxXQURtQztNQUVuQyxrQkFGcUI7TUFNckIsV0FEd0I7TUFFeEIsWUFGdUM7TTRCb0d2QixzREFBc0Q7TUFDdEQsc0JBQXNCO01BQ3RCLDRCQUE0QjtNQUM1QixNQUFNO01BQ04sT0FBTztNQUNQLFVBQVU7TUFDViw2QkFBcUI7TUFBckIscUJBQXFCLEVBQUE7SUE3RHJDO001QmpEQSxXQURtQztNQUVuQyxrQkFGcUI7TUFNckIsV0FEd0I7TUFFeEIsWUFGdUM7TTRCa0h2QixxREFBcUQ7TUFDckQsc0JBQXNCO01BQ3RCLDRCQUE0QjtNQUM1QixNQUFNO01BQ04sT0FBTztNQUNQLFVBQVU7TUFDViw2QkFBcUI7TUFBckIscUJBQXFCLEVBQUE7TTFCNUdqQztRMEJpQ0o7VUE4RW9CLFVBQVUsRUFBQSxFQUVqQjtJQWhGYjtNQW9GWSxrQkFBa0I7TUFDbEIsMEM3QjVFQTtNNkI2RUEsVUFBVTtNQUNWLFdBQVc7TUFDWCxXQUFXO01BQ1gsV0FBVztNQUNYLGtCQUFrQjtNQUNsQixVQUFVO01BQ1YsMkJBQW1CO2NBQW5CLG1CQUFtQjtNQUNuQiw2QkFBcUI7TUFBckIscUJBQXFCO01BQ3JCLGtDQUEwQjtjQUExQiwwQkFBMEIsRUFBQTtNQTlGdEM7UUFpR2dCLFlBQVk7UUFDWixhQUFhO1FBQ2Isa0JBQWtCO1FBQ2xCLDBDQUEwQztRQUMxQyxXQUFXO1FBQ1gsWUFBWTtRQUNaLGtCQUFrQjtRQUNsQixVQUFVO1FBQ1YsNkJBQXFCO1FBQXJCLHFCQUFxQixFQUFBO0lBekdyQztNQThHWSx5QkFBeUI7TUFDekIsa0JBQWtCO01BQ2xCLFNBQVM7TUFDVCxZQUFZO01BQ1osaUNBQXlCO1VBQXpCLHVCQUF5QjtjQUF6Qix5QkFBeUI7TUFDekIsdUJBQXVCO01BQ3ZCLG1CQUFtQjtNQUNuQixlQUFlO01BQ2YsOEJBQThCO01BQzlCLHlCQUFpQjtTQUFqQixzQkFBaUI7VUFBakIscUJBQWlCO2NBQWpCLGlCQUFpQjtNQUNqQixVQUFVO01BQ1YsNkJBQXFCO01BQXJCLHFCQUFxQixFQUFBO0VBekhqQztJQThIUSxrQkFBa0I7SUFDbEIsWUFBWTtJQUNaLE9BQU87SUFDUCxRQUFRO0lBQ1Isa0JBQWtCO0lBQ2xCLFVBQVU7SUFDVixpQ0FBeUI7SUFBekIseUJBQXlCO0lBQ3pCLFVBQVUsRUFBQTtJMUJ0S2Q7TTBCaUNKO1FBd0lZLFlBQVksRUFBQSxFQXVGbkI7STFCaFFEO00wQmlDSjtRQTRJWSxZQUFZLEVBQUEsRUFtRm5CO0lBL05MO001QmxCQSxvQkFEeUI7TUFDekIsb0JBRHlCO01BQ3pCLGFBRHlCO01BRXpCLHlCQUZ5QztVQUV6QyxzQkFGeUM7Y0FFekMsbUJBRnlDO01BR3pDLHdCQUgyRDtVQUczRCxxQkFIMkQ7Y0FHM0QsdUJBSDJEO000Qm9LL0MsV0FBVyxFQUFBO0lBakp2Qjs7TUFzSlksYUFBYTtNQUNiLHNCN0JuTEo7TTZCb0xJLGtCQUFrQjtNQUNsQixVQUFVLEVBQUE7TTFCMUxsQjtRMEJpQ0o7O1VBNEpnQixhQUFhLEVBQUEsRUErQ3BCO00xQjVPTDtRMEJpQ0o7O1VBZ0tnQixZQUFZLEVBQUEsRUEyQ25CO01BM01UOztRNUJqREEsV0FEbUM7UUFFbkMsa0JBRnFCO1FBTXJCLFdBRHdCO1FBRXhCLFlBRnVDO1E0Qm1OdkIsb0NBQW9DO1FBQ3BDLDJCQUFtQjtnQkFBbkIsbUJBQW1CO1FBQ25CLHdCQUFnQjtRQUFoQixnQkFBZ0I7UUFDaEIsTUFBTTtRQUNOLE9BQU87UUFDUCxXQUFXLEVBQUE7UTNCa3FJdkI7O1UyQi9wSWdCLFdBQVc7VUFDWCxRQUFRLEVBQUE7TUEvSzVCOztRQW9MZ0IsV0FBVztRQUNYLFlBQVksRUFBQTtRMUJ0TnhCO1UwQmlDSjs7WUF3TG9CLFdBQVc7WUFDWCxZQUFZLEVBQUEsRUFPbkI7UTFCak9UO1UwQmlDSjs7WUE2TG9CLFdBQVc7WUFDWCxZQUFZLEVBQUEsRUFFbkI7TUFoTWI7O1FBbU1nQiw2QkFBNkI7UUFDN0IsVzdCaE9SLEVBQUE7UTZCNEJSOztVQXVNb0IsMkJBQW1CO2tCQUFuQixtQkFBbUI7VUFDbkIsd0JBQWdCO1VBQWhCLGdCQUFnQixFQUFBO0lBeE1wQztNQThNWSxjN0JuT2tCLEVBQUE7STZCcUI5QjtNQWtOWSxnQkFBZ0IsRUFBQTtJM0J5cEk1QjtNMkJscEl3QixpQkFBaUI7TUFDakIsa0JBQWtCLEVBQUE7RUExTjFDO0lBa09RLGdCQUFnQixFQUFBO0lBbE94QjtNQXNPZ0IsZUFBZTtNQUNmLDZCQUE2QjtNQUM3QixnQkFBZ0IsRUFBQTtNM0I0b0k5QjtRMkJ6b0lrQixjQUFjO1FBQ2QsaUJBQWlCLEVBQUE7SUE1T3JDO01Ba1BZLHlCQUF5QjtNQUN6QixxQkFBcUI7TUFDckIsNEJBQTRCO01BQzVCLG9CQUFvQjtNQUNwQixnQkFBZ0I7TUFDaEIsVUFBVTtNQUNWLGdCQUFnQixFQUFBO0lBeFA1QjtNQTRQWSwwQkFBMEI7TUFDMUIsWUFBWSxFQUFBO01BN1B4QjtRQWdRZ0IsYzdCMVJKO1E2QjJSSSxXQUFXO1FBQ1gsZ0JBQWdCO1FBQ2hCLGVBQWU7UUFDZixrQkFBa0I7UUFDbEIseUJBQXlCLEVBQUE7TUFyUXpDO1FBMFFvQix5QjdCaFNKLEVBQUE7STZCc0JoQjtNQWdSWSxjQUFjO01BQ2QsbUJBQW1CLEVBQUE7TUFqUi9CO1FBb1JnQixrQkFBa0IsRUFBQTtNQXBSbEM7UUF5Um9CLGVBQWU7UUFDZixjN0IxUUosRUFBQTtRNkJoQmhCO1VBNlJ3QixjN0JwU1osRUFBQTtFNkJPWjtJQXNTWSxPQUFPLEVBQUE7STNCaW5JbkI7TURoMklBLFk0QmtQeUM7TUFDekIsV0FBVztNQUNYLFFBQVEsRUFBQTtNM0Jnbkl0QjtRRGoySUUsVzRCK08yQyxFQUFBO0VBelMvQztJQWdUWSxZQUFZO0lBQ1osUUFBUSxFQUFBO0kzQittSXBCO01EejJJQSxXNEI2UHdDO01BQ3hCLFlBQVk7TUFDWixPQUFPLEVBQUE7TTNCOG1JckI7UUQxMklFLFk0QjBQMkMsRUFBQTtFQXBUL0M7SUE2VFksVUFBVTtJQUNWLGlDQUF5QjtJQUF6Qix5QkFBeUIsRUFBQTtJQTlUckM7TUFtVXdCLDZDQUFxQztjQUFyQyxxQ0FBcUMsRUFBQTtJQW5VN0Q7TUF1VXdCLDZDQUFxQztjQUFyQyxxQ0FBcUMsRUFBQTtJQXZVN0Q7TUEyVXdCLDZDQUFxQztjQUFyQyxxQ0FBcUMsRUFBQTtJQTNVN0Q7TUErVXdCLDhDQUFzQztjQUF0QyxzQ0FBc0MsRUFBQTs7QUFVekQ7RUFFTyw0QkFBNEIsRUFBQTs7QUFIeEM7RUFRUSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULG1FQUFtRSxFQUFBO0VBVjNFO0lBYVksV0FBVztJQUNYLFlBQVksRUFBQTtJQWR4QjtNQWlCZ0IsVUFBVTtNQUNWLFdBQVc7TUFDWCxrQkFBa0I7TUFDbEIsVUFBVTtNQUNWLFNBQVM7TUFDVCx1QzdCblljO002Qm9ZZCxpQ0FBeUI7TUFBekIseUJBQXlCLEVBQUE7TUF2QnpDO1FBMEJvQixhQUFhLEVBQUE7SUExQmpDO01BZ0NvQixTQUFTO01BQ1QsV0FBVztNQUNYLG9DQUFvQztNQUNwQyxpQ0FBeUI7TUFBekIseUJBQXlCLEVBQUE7O0FBbkM3QztFQTBDUSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULE9BQU87RUFDUCxRQUFRO0VBQ1Isa0JBQWtCLEVBQUE7O0FBOUMxQjtFQW1EWSxtQkFBbUIsRUFBQTs7QUFNM0I7RUFDSSxnQkFBZ0I7RUFDaEIsWUFBWSxFQUFBOztBMUJwYmhCO0UwQmliSjtJQU9RLDRCQUFTO1FBQVQsa0JBQVM7WUFBVCxTQUFTLEVBQUEsRUE4RWhCOztBQXJGRDtFQVdRLDZFQUE2RTtFQUM3RSxZQUFZLEVBQUE7RTFCN2JoQjtJMEJpYko7TUFlWSx3QkFBd0IsRUFBQSxFQVUvQjtFQXpCTDtJNUJsYUEsb0JBRHlCO0lBQ3pCLG9CQUR5QjtJQUN6QixhQUR5QjtJQUV6Qix5QkFGeUM7UUFFekMsc0JBRnlDO1lBRXpDLG1CQUZ5QztJQUd6Qyx3QkFIMkQ7UUFHM0QscUJBSDJEO1lBRzNELHVCQUgyRDtJNEJ3YjNDLGNBQWM7SUFDZCxXQUFXLEVBQUE7O0FBdEIzQjtFQTRCUSxVQUFVO0VBQ1Ysa0JBQWtCLEVBQUE7RUE3QjFCO0lBZ0NZLFdBQVcsRUFBQTs7QUFoQ3ZCO0VBcUNRLGtCQUFrQjtFQUNsQixZQUFZO0U1QnZkaEIsU0FBUztFQUNULG1DQUEyQjtVQUEzQiwyQkFBMkI7RTRCd2R2QixhQUFhO0VBQ2IsdUM3Qjljc0I7RTZCK2N0QixtQ0FBMkI7VUFBM0IsMkJBQTJCO0VBQzNCLFc3QnZkQTtFNkJ3ZEEsVUFBVTtFQUNWLGtCQUFrQjtFQUNsQixVQUFVLEVBQUE7RUE5Q2xCO0lBaURZLHlDN0J4YkEsRUFBQTtJNkJ1WVo7TUFvRGdCLGdCQUFnQixFQUFBO0lBcERoQztNQXdEZ0IsbUJBQW1CLEVBQUE7RTFCemUvQjtJMEJpYko7TUE2RFksYUFBYSxFQUFBLEVBdUJwQjtFMUJyZ0JEO0kwQmliSjtNQWlFWSxZQUFZLEVBQUEsRUFtQm5CO0UxQnJnQkQ7STBCaWJKO01BcUVZLFVBQVU7TUFDVixhQUFhLEVBQUEsRUFjcEI7RTFCcmdCRDtJMEJpYko7TUEwRVksVUFBVSxFQUFBLEVBVWpCO0VBcEZMO0lBOEVZLG1CQUFtQixFQUFBO0VBOUUvQjtJQWtGWSxnQkFBZ0IsRUFBQTs7QUFLNUI7RUFFUSxrQkFBa0IsRUFBQTtFQUYxQjtJNUJ4aEJBLFdBRG1DO0lBRW5DLGtCQUZxQjtJQU1yQixXQUR3QjtJQUV4QixZQUZ1QztJNEIyaEIzQixvQ0FBb0M7SUFDcEMsVUFBVTtJQUNWLGtCQUFrQjtJQUNsQixNQUFNO0lBQ04sT0FBTztJQUNQLDRCQUFvQjtJQUFwQixvQkFBb0IsRUFBQTtFQVpoQztJQWlCZ0IsNEJBQTRCO0lBQzVCLDJCQUEyQjtJQUMzQixhQUFhO0lBQ2IsWUFBWTtJQUNaLHNCQUFtQjtPQUFuQixtQkFBbUIsRUFBQTtJMUI3aEIvQjtNMEJ3Z0JKO1FBd0JvQixhQUFhO1FBQ2IsWUFBWSxFQUFBLEVBT25CO0kxQnhpQlQ7TTBCd2dCSjtRQTZCb0IsYUFBYTtRQUNiLFlBQVksRUFBQSxFQUVuQjtFQWhDYjtJQW1DZ0IsZ0JBQWdCO0lBQ2hCLHlCQUF5QjtJQUN6QixnQkFBZ0I7SUFDaEIsaUNBQXlCO1FBQXpCLHVCQUF5QjtZQUF6Qix5QkFBeUI7SUFDekIseUJBQXlCO0lBQ3pCLGtCQUFrQjtJQUNsQixNQUFNLEVBQUE7SUF6Q3RCO01BNENvQixVQUFVO01BQ1YsNkJBQXFCO01BQXJCLHFCQUFxQixFQUFBO0lBN0N6QztNQWlEb0IsVUFBVSxFQUFBO0lBakQ5QjtNQXFEb0Isa0JBQWtCO01BQ2xCLFdBQVc7TUFDWCxZQUFZO01BQ1osZUFBZTtNQUNmLHFCQUFxQjtNQUNyQixrQkFBa0I7TUFDbEIseUJBQXlCLEVBQUE7TUEzRDdDO1E1QnhoQkEsV0FEbUM7UUFFbkMsa0JBRnFCO1FBTXJCLFdBRHdCO1FBRXhCLFlBRnVDO1FBaUh2QyxvQ0FBb0M7UUFDcEMsWUFBWTtRQUNaLG1CQUFtQjtRQUNuQiw0QkFBb0I7UUFBcEIsb0JBQW9CO1FBQ3BCLFdBQVc7UTRCOGRhLFVBQVU7UUFDVixPQUFPO1FBQ1AsTUFBTSxFQUFBO01BakU5QjtRQXFFd0Isc0I3QnhrQmhCO1E2QnlrQmdCLGtCQUFrQjtRQUNsQixnREFBd0M7Z0JBQXhDLHdDQUF3QyxFQUFBO1FBdkVoRTtVQTBFNEIsc0I3QjdrQnBCLEVBQUE7STZCbWdCUjtNQWlGd0Isb0JBQW9CO01BQ3BCLGlCQUFpQjtNQUNqQixXN0J0bEJoQixFQUFBO01HTEo7UTBCd2dCSjtVQXNGNEIsbUJBQW1CO1VBQ25CLGVBQWU7VUFDZixpQkFBaUIsRUFBQSxFQUV4QjtFQTFGckI7SUFnR1ksa0JBQWtCO0lBQ2xCLE9BQU87SUFDUCxNQUFNO0lBQ04sVUFBVTtJQUNWLGtCQUFrQjtJNUJ2bkI5QixXQUR3QjtJQUV4QixZQUZ1QztJNEIwbkIzQixXN0J6bUJKO0k2QjBtQkksVUFBVTtJNUJobUJ0QixvQkFEeUI7SUFDekIsb0JBRHlCO0lBQ3pCLGFBRHlCO0lBRXpCLHlCQUZ5QztRQUV6QyxzQkFGeUM7WUFFekMsbUJBRnlDO0lBR3pDLHdCQUgyRDtRQUczRCxxQkFIMkQ7WUFHM0QsdUJBSDJEO0k0Qm1tQi9DLDRCQUFvQjtJQUFwQixvQkFBb0I7SUFDcEIsa0VBQWtFLEVBQUE7SUExRzlFO01BNkdnQixtQkFBNkI7TUFDN0IsMEVBR29DO01BQ3BDLFVBQVUsRUFBQTtJQWxIMUI7TUFzSGdCLGtCQUFrQjtNQUNsQixTQUFTO001Qi9uQnJCLFNBQVM7TUFDVCxtQ0FBMkI7Y0FBM0IsMkJBQTJCO000QmdvQmYsb0VBQW9FO01BQ3BFLGdCQUFnQjtNQUNoQixhQUFhLEVBQUE7TTFCbm9CekI7UTBCd2dCSjtVQThIb0IsU0FBUyxFQUFBLEVBRWhCO0lBaEliO01BbUlnQixvRUFBb0U7TUFDcEUsZ0JBQWdCO01BQ2hCLG1CQUFtQjtNQUNuQixnQkFBZ0IsRUFBQTtNQXRJaEM7UUF5SW9CLHFCQUFxQjtRQUNyQiw0QkFBNEI7UUFDNUIsb0JBQW9CO1FBQ3BCLGdCQUFnQixFQUFBO01BNUlwQztRQWdKb0Isb0VBQW9FO1FBQ3BFLG1CQUFtQjtRQUNuQixnQkFBZ0IsRUFBQTtNMUIxcEJoQztRMEJ3Z0JKO1VBc0pvQixtQkFBbUIsRUFBQSxFQUUxQjtJQXhKYjtNQTJKZ0IsZ0JBQWdCO01BQ2hCLG1CQUFtQixFQUFBO00xQnBxQi9CO1EwQndnQko7VUErSm9CLGtCQUFrQixFQUFBLEVBRXpCO0lBaktiO01Bb0tnQixnQkFBZ0IsRUFBQTtFQXBLaEM7SUEwS2dCLFVBQVU7SUFDVixrQ0FBMEI7WUFBMUIsMEJBQTBCO0lBQzFCLG1CQUFtQjtJQUNuQiw0QkFBb0I7SUFBcEIsb0JBQW9CLEVBQUE7SUE3S3BDO01BZ0xvQixtQkFBNkI7TUFDN0IsMEVBR29DO01BQ3BDLFVBQVUsRUFBQTtFQXJMOUI7SUEwTGdCLFlBQVk7SUFDWixtQkFBbUI7SUFDbkIsNEJBQW9CO0lBQXBCLG9CQUFvQixFQUFBOztBQU9wQztFQUVRLFdBQVc7RUFDWCxZQUFZO0VBQ1osZUFBZSxFQUFBO0VBSnZCO0lBT1ksaUJBQWlCLEVBQUE7RUFQN0I7SUFXWSx5RkFDc0M7WUFEdEMsaUZBQ3NDLEVBQUE7O0FBWmxEO0VBaUJRLHlCN0J6c0JNO0U2QjBzQk4sa0JBQWtCLEVBQUE7RUFsQjFCO0lBcUJZLHlCN0JwdEJrQjtJNkJxdEJsQixrQkFBa0I7SUFDbEIsVUFBVTtJQUNWLFFBQVE7SUFDUixNQUFNO0lBQ04scUJBQXFCO0lBQ3JCLFlBQVksRUFBQTs7QUEzQnhCO0VBZ0NRLHlCN0JsckJTLEVBQUE7O0E2QmtwQmpCO0VBb0NRLHlCN0I1dEJNLEVBQUE7O0E2QndyQmQ7RUF3Q1Esc0I3Qjd1QkEsRUFBQTs7QTZCaXZCUjtFQUNJLGtCQUFrQjtFQUNsQixpQkFBaUI7RUFDakIsYUFBYTtFQUNiLE1BQU07RUFDTixRQUFRLEVBQUE7O0FBS1o7RUFFUSx5QjdCaHZCTTtFNkJpdkJOLGFBQWE7RUFDYixrQkFBa0IsRUFBQTtFQUoxQjtJQU9ZLHlCN0JsdUJTLEVBQUE7RTZCMnRCckI7SUFXWSx5REFBeUQ7SUFDekQsNkJBQTZCO0lBQzdCLDJCQUEyQjtJQUMzQiw0QkFBNEI7SUFDNUIsc0JBQXNCLEVBQUE7RUFmbEM7SUFtQlkseUI3Qi91Qk0sRUFBQTtFR3JDZDtJMEJpd0JKO01BdUJZLGFBQWEsRUFBQSxFQXNEcEI7RUE3RUw7SUE0QmdCLGNBQWM7SUFDZCxpQkFBaUI7SUFDakIsZ0JBQWdCO0lBQ2hCLFVBQVUsRUFBQTtFQS9CMUI7SUFtQ2dCLGtCQUFrQjtJQUNsQiw4Q0FBc0M7WUFBdEMsc0NBQXNDO0lBQ3RDLFVBQVU7SUFDVixXQUFXLEVBQUE7RUF0QzNCO0lBMENnQixrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLE9BQU87STVCeHpCdkIsV0FEd0I7SUFFeEIsWUFGdUMsRUFBQTtFNEI2d0J2QztJQWlEZ0Isb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWE7SUFDYixzQkFBcUI7UUFBckIsbUJBQXFCO1lBQXJCLHFCQUFxQjtJQUNyQixpQkFBaUIsRUFBQTtFQW5EakM7SUF3RFksb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWE7SUFDYix5QkFBOEI7UUFBOUIsc0JBQThCO1lBQTlCLDhCQUE4QixFQUFBO0lBekQxQztNQTREZ0IsVUFBVTtNQUNWLHNCN0J6ekJSO002QjB6QlEsa0JBQWtCLEVBQUE7SUE5RGxDO01Ba0VnQixlQUFlLEVBQUE7RUFsRS9CO0lBd0VnQixxQkFBcUI7SUFDckIsYzdCbjBCSjtJNkJvMEJJLGdCQUFnQixFQUFBOztBQTFFaEM7RUFpRlksdUVBQXVFO0VBQ3ZFLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUIsRUFBQTtFMUJwMUIzQjtJMEJpd0JKO01Bc0ZnQixhQUFhLEVBQUEsRUEyRHBCO0VBakpUO0lBMEZnQixlQUFlLEVBQUE7STFCMzFCM0I7TTBCaXdCSjtRQTZGb0IsZUFBZSxFQUFBLEVBb0J0QjtJQWpIYjtNQWtHd0IsaUJBQWlCLEVBQUE7SUFsR3pDO01BdUdvQixhQUFhO01BQ2IsZUFBZTtNQUNmLDRCQUE0QjtNQUM1QixzQkFBbUI7U0FBbkIsbUJBQW1CLEVBQUE7TTFCMzJCbkM7UTBCaXdCSjtVQTZHd0IsWUFBWTtVQUNaLGVBQWUsRUFBQSxFQUV0QjtFQWhIakI7SUFvSGdCLGFBQWE7SUFDYixzRUFBc0UsRUFBQTtJM0JtOEh0RjtNMkJoOEhvQiw2QkFBNkI7TUFDN0IsdUVBQXVFLEVBQUE7STFCMTNCdkY7TTBCaXdCSjtRQTZIb0IsaUJBQWlCLEVBQUE7UTNCaThIakM7VTJCOTdIb0Isa0JBQWtCLEVBQUEsRUFDckI7SUFqSXJCO01BcUlvQixvQkFBYTtNQUFiLG9CQUFhO01BQWIsYUFBYTtNQUNiLHlCQUFtQjtVQUFuQixzQkFBbUI7Y0FBbkIsbUJBQW1CLEVBQUE7RUF0SXZDO0lBMklnQixnQkFBZ0IsRUFBQTtJMUI1NEI1QjtNMEJpd0JKO1FBOElvQixnQkFBZ0IsRUFBQSxFQUV2Qjs7QUFoSmI7RUF5SndCLGlCQUFpQjtFQUNqQixnQkFBZ0I7RUFDaEIsYUFBYTtFQUNiLHNCQUFtQjtLQUFuQixtQkFBbUIsRUFBQTtFMUI3NUJ2QztJMEJpd0JKO01BK0o0QixhQUFhLEVBQUEsRUFFcEI7O0FBaktyQjtFQXlLWSxVQUFVLEVBQUE7RUF6S3RCO0lBNEtnQixrQkFBa0I7SUFDbEIsZ0VBQWdFO0lBQ2hFLDhEQUE4RCxFQUFBO0kzQjA2SDlFO00yQnY2SG9CLFlBQVk7TUFDWixVQUFVLEVBQUE7RUFsTDlCO0lBd0xvQiw4REFBOEQ7SUFDOUQsK0RBQStELEVBQUE7STNCcTZIbkY7TTJCbDZId0IsV0FBVztNQUNYLFdBQVcsRUFBQTtFQTdMbkM7SUFtTWdCLGtFQUFrRSxFQUFBO0lBbk1sRjtNQXNNb0Isa0VBQWtFLEVBQUE7O0FBU3RGO0VBSWdCLFVBQVU7RUFDVixrQkFBa0I7RUFDbEIsbUNBQTJCO1VBQTNCLDJCQUEyQjtFQUMzQixNQUFNO0VBQ04sT0FBTztFQUNQLGlDQUF5QjtFQUF6Qix5QkFBeUI7RUFDekIsV0FBVyxFQUFBOztBQVYzQjtFQWlCZ0IsU0FBUyxFQUFBOztBQWpCekI7O0VBc0JnQixvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CO0VBQ25CLHlCQUE4QjtNQUE5QixzQkFBOEI7VUFBOUIsOEJBQThCLEVBQUE7RUF4QjlDOztJQTJCb0IseUJBQXlCO0lBQ3pCLGtCQUFrQixFQUFBO0kzQmc1SHRDOztNMkI3NEh3QixpQkFBaUIsRUFBQTtFMUIvK0JyQztJMEJnOUJKOztNQW9Db0IsY0FBYztNNUI1NUJsQyxnQjRCNjVCaUQsRUFBQTtNM0IrNEgvQzs7UUR6eUpFLGlCNEIwNUJvRCxFQUFBLEU1Qno1QnZEOztBNEJvM0JEO0VBMENnQixnQkFBZ0IsRUFBQTtFMUIxL0I1QjtJMEJnOUJKO01BNkNvQixlQUFlLEVBQUE7TUE3Q25DO1FBZ0R3QixlQUFlLEVBQUEsRUFDbEI7O0FBakRyQjtFQTBEd0IsY0FBYyxFQUFBO0UzQnc0SHhDO0kyQnI0SDhCLGtCQUFrQjtJQUNsQixlQUFlLEVBQUE7O0FBOUQzQzs7RUF1RW9CLFdBQVc7RUFDWCxZQUFZLEVBQUE7RTFCeGhDNUI7STBCZzlCSjs7TUEyRXdCLFdBQVc7TUFDWCxZQUFZLEVBQUEsRUFFbkI7O0FBOUVqQjtFQXFGb0IsVUFBVTtFQUNWLG9DQUE0QjtVQUE1Qiw0QkFBNEI7RUFDNUIsaUNBQXlCO0VBQXpCLHlCQUF5QixFQUFBOztBMUJ2aUN6QztFMEJnOUJKO0lBK0ZZLGVBQWUsRUFBQSxFQTBCdEI7O0FBekhMO0VBbUdZLFdBQVcsRUFBQTtFMUJuakNuQjtJMEJnOUJKO01Bc0dnQixXQUFXLEVBQUEsRUFNbEI7RTFCNWpDTDtJMEJnOUJKO01BMEdnQixVQUFVLEVBQUEsRUFFakI7O0FBNUdUO0VBK0dZLFlBQVksRUFBQTtFMUIvakNwQjtJMEJnOUJKO01Ba0hnQixZQUFZLEVBQUEsRUFNbkI7RTFCeGtDTDtJMEJnOUJKO01Bc0hnQixXQUFXLEVBQUEsRUFFbEI7O0FBTVQ7RUFDSSxvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CO0VBQ25CLHlCQUE4QjtNQUE5QixzQkFBOEI7VUFBOUIsOEJBQThCO0VBQzlCLGdCQUFnQixFQUFBO0UxQmxsQ2hCO0kwQjhrQ0o7TUFRWSxjQUFjO01BQ2Qsa0JBQWtCLEVBQUEsRUEwQ3pCO0VBbkRMO0lBYVksZ0JBQWdCLEVBQUE7STNCMjJINUI7TTJCeDJIZ0IsaUJBQWlCLEVBQUE7STFCOWxDN0I7TTBCOGtDSjtRQW9CZ0Isa0JBQWtCLEVBQUE7UTNCeTJIOUI7VTJCdDJIZ0Isa0JBQWtCLEVBQUEsRUFDckI7STFCdG1DYjtNMEI4a0NKO1FBOEJ3QixrQkFBa0IsRUFBQSxFQUV6QjtFQWhDakI7SUFxQ1ksaUJBQWlCLEVBQUE7STNCKzFIN0I7TTJCNTFIZ0IsZ0JBQWdCLEVBQUE7STFCdG5DNUI7TTBCOGtDSjtRQTRDZ0Isa0JBQWtCLEVBQUE7UTNCNjFIOUI7VTJCMTFIZ0Isa0JBQWtCLEVBQUEsRUFDckI7RUFoRGpCO0lBc0RRLGdCQUFnQjtJQUNoQiwwQkFBMEIsRUFBQTtJQXZEbEM7TUEwRFksb0VBQW9FO01BQ3BFLGdCQUFnQjtNQUNoQix1QkFBdUI7TUFDdkIsbUJBQW1CO01BQ25CLGM3QnJvQ0E7TTZCc29DQSxnQkFBZ0IsRUFBQTtJQS9ENUI7TUFtRVksb0VBQW9FO01BQ3BFLGdCQUFnQixFQUFBO0VBcEU1QjtJQTBFWSxvRUFBb0UsRUFBQTs7QUFLaEY7RUFDSSxxRUFBcUUsRUFBQTtFM0I2MEgzRTtJMkIxMEhVLGlCQUFpQixFQUFBO0VBSnpCO0lBUVEsb0VBQW9FLEVBQUE7O0FBSTVFO0VBQ0ksa0JBQWtCO0VBQ2xCLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUIsRUFBQTtFM0J3MEh6QjtJMkJyMEhVLGNBQWMsRUFBQTtFQU50QjtJQVVRLGdCQUFnQixFQUFBO0VBVnhCO0lBY1EsV0FBVztJQUNYLFlBQVk7SUFDWixvQkFBaUI7T0FBakIsaUJBQWlCLEVBQUE7RUFoQnpCO0lBb0JRLGlCQUFpQjtJQUNqQixnQkFBZ0IsRUFBQTtJM0JpMEh4QjtNMkI5ekhZLGNBQWM7TUFDZCxrQkFBa0IsRUFBQTtJQXpCOUI7TUE2QlksYzdCMXJDa0IsRUFBQTtJNkI2cEM5QjtNQWlDWSxvRUFBb0U7TUFDcEUsZ0JBQWdCO01BQ2hCLHVCQUF1QjtNQUN2QixtQkFBbUI7TUFDbkIsY0FBYyxFQUFBO0lBckMxQjtNQTBDZ0IsaUJBQWlCLEVBQUE7O0FBUWpDO0VBS29CLFVBQVUsRUFBQTs7QUFMOUI7RUFZUSxtQjdCanBDSztFNkJrcENMLDBFQUcyQixFQUFBO0VBaEJuQztJQW1CWSxrQkFBa0IsRUFBQTtJQW5COUI7TUFzQmdCLGtCQUFrQjtNQUNsQixNQUFNO01BQ04sT0FBTztNNUI5dkN2QixXQUR3QjtNQUV4QixZQUZ1QztNQTJCdkMsb0JBRHlCO01BQ3pCLG9CQUR5QjtNQUN6QixhQUR5QjtNQUV6Qix5QkFGeUM7VUFFekMsc0JBRnlDO2NBRXpDLG1CQUZ5QztNQUd6Qyx3QkFIMkQ7VUFHM0QscUJBSDJEO2NBRzNELHVCQUgyRDtNNEJ3dUMzQyxVQUFVO01BQ1YsNkJBQXFCO01BQXJCLHFCQUFxQixFQUFBO01BNUJyQztRQWdDd0IsbUJBQThCO1FBQzlCLDZEQUVrQyxFQUFBO01BbkMxRDtRNUIzdUNBLFdBRG1DO1FBRW5DLGtCQUZxQjtRNEJxeENELG1CN0I5cUNQO1E2QitxQ08sMEVBRzJCO1E1Qm54Qy9DLFdBRHdCO1FBRXhCLFlBRnVDO1E0QnN4Q25CLE1BQU07UUFDTixPQUFPO1FBQ1AsWUFBWSxFQUFBO01BakRoQztRQXFEb0IsWUFBWTtRQUNaLGFBQWE7UUFDYiwwQzdCN3dDWjtRNkI4d0NZLGtCQUFrQjtRQUNsQixrQ0FBMEI7Z0JBQTFCLDBCQUEwQjtRQUMxQixXN0JoeENaO1FDVVIsb0JBRHlCO1FBQ3pCLG9CQUR5QjtRQUN6QixhQUR5QjtRQUV6Qix5QkFGeUM7WUFFekMsc0JBRnlDO2dCQUV6QyxtQkFGeUM7UUFHekMsd0JBSDJEO1lBRzNELHFCQUgyRDtnQkFHM0QsdUJBSDJEO1E0Qnl3Q3ZDLFVBQVU7UUFDVixrQkFBa0IsRUFBQTtRQTdEdEM7VUFnRXdCLG9FQUFvRTtVQUNwRSxtQkFBbUIsRUFBQTtRQWpFM0M7VUFxRXdCLGdCQUFnQjtVQUNoQixvRUFBb0UsRUFBQTs7QUF0RTVGO0VBOEVRLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2Isa0JBQWtCLEVBQUE7RUFoRjFCO0lBbUZZLGVBQWU7SUFDZixtQkFBbUI7SUFDbkIsYUFBYTtJQUNiLHFFQUFxRSxFQUFBO0VBdEZqRjtJQTBGWSxrQkFBa0I7SUFDbEIsOERBQThEO0k1QnR6Q3RFLFNBQVM7SUFDVCxtQ0FBMkI7WUFBM0IsMkJBQTJCO0k0QnV6Q25CLFdBQVcsRUFBQTtFQTdGdkI7SUFpR1ksbUJBQW1CO0lBQ25CLG9FQUFvRSxFQUFBO0UzQnF4SGxGO0kyQmh4SGtCLGNBQWMsRUFBQTs7QUFROUI7RUFDSSxrQkFBa0IsRUFBQTtFQUR0QjtJQUlRLGtCQUFrQjtJQUNsQix5QjdCNXpDTSxFQUFBO0k2QnV6Q2Q7TUFRWSw2QkFBNkIsRUFBQTtJQVJ6QztNQVlZLGdCQUFnQixFQUFBO0lBWjVCO001QjN6Q0Esb0JBRHlCO01BQ3pCLG9CQUR5QjtNQUN6QixhQUR5QjtNQUV6Qix5QkFGeUM7VUFFekMsc0JBRnlDO2NBRXpDLG1CQUZ5QztNQUd6Qyx3QkFIMkQ7VUFHM0QscUJBSDJEO2NBRzNELHVCQUgyRCxFQUFBO000QjR6QzNEO1E1QjN6Q0Esb0JBRHlCO1FBQ3pCLG9CQUR5QjtRQUN6QixhQUR5QjtRQUV6Qix5QkFGeUM7WUFFekMsc0JBRnlDO2dCQUV6QyxtQkFGeUM7UUFHekMsd0JBSDJEO1lBRzNELHFCQUgyRDtnQkFHM0QsdUJBSDJEO1E0QmcxQzNDLGtCQUFrQjtRQUNsQixrQkFBa0I7UUFDbEIsMkJBQW1CO2dCQUFuQixtQkFBbUI7UUFDbkIsb0NBQW9DO1FBQ3BDLDZCQUFxQjtRQUFyQixxQkFBcUI7UUFDckIsZ0VBQWdFO1FBQ2hFLGlFQUFpRSxFQUFBO1FBMUJqRjtVQThCd0IsZ0VBQWdFO1VBQ2hFLFc3QnAyQ2hCO1U2QnEyQ2dCLGVBQWU7VUFDZixpQkFBaUI7VUFDakIsNkJBQXFCO1VBQXJCLHFCQUFxQjtVQUNyQixXN0J4MkNoQixFQUFBO1E2QnEwQ1I7VUF3QzRCLFc3QjcyQ3BCLEVBQUE7UTZCcTBDUjtVQThDNEIsZUFBZSxFQUFBO1FBOUMzQztVQW9Eb0IsV0FBVztVQUNYLFlBQVk7VUFDWixzQjdCMzNDWjtVNkI0M0NZLFc3QjMzQ1o7VTZCNDNDWSxlQUFlO1VBQ2YsaUJBQWlCO1U1QnAzQ3JDLG9CQUR5QjtVQUN6QixvQkFEeUI7VUFDekIsYUFEeUI7VUFFekIseUJBRnlDO2NBRXpDLHNCQUZ5QztrQkFFekMsbUJBRnlDO1VBR3pDLHdCQUgyRDtjQUczRCxxQkFIMkQ7a0JBRzNELHVCQUgyRDtVNEJ1M0N2Qyw2QkFBcUI7VUFBckIscUJBQXFCO1VBQ3JCLFlBQVk7VUFDWixlQUFlLEVBQUE7VUE3RG5DO1lBZ0V3QixhQUFhLEVBQUE7VUFoRXJDO1lBb0V3QixXN0J6NENoQixFQUFBO0k2QnEwQ1I7TUEyRVksYUFBYSxFQUFBO01BM0V6QjtRQThFZ0Isa0JBQWtCO1FBQ2xCLGFBQWE7UUFDYixZQUFZO1FBQ1osVUFBVTtRQUNWLFVBQVU7UUFDViw2QkFBcUI7UUFBckIscUJBQXFCLEVBQUE7UUFuRnJDO1VBc0ZvQixrQkFBa0IsRUFBQTtVQXRGdEM7WUF5RndCLFdBQVc7WUFDWCxZQUFZO1lBQ1osWUFBWTtZQUNaLHNCN0JqNkNoQjtZNkJrNkNnQixnQkFBZ0I7WUFDaEIsa0JBQWtCO1lBQ2xCLGVBQWU7WUFDZixnQkFBZ0IsRUFBQTtZQWhHeEM7Y0FtRzRCLHFCN0JqM0NYO2M2QmszQ1csd0JBQWdCO3NCQUFoQixnQkFBZ0IsRUFBQTtVQXBHNUM7WUF5R3dCLHlCN0J0MUNkO1k2QnUxQ2Msa0JBQWtCO1lBQ2xCLFlBQVk7WUFDWixVQUFVO1lBQ1YsdUJBQWU7b0JBQWYsZUFBZTtZQUNmLFdBQVc7WUFDWCxZQUFZO1k1QjE2Q3BDLG9CQUR5QjtZQUN6QixvQkFEeUI7WUFDekIsYUFEeUI7WUFFekIseUJBRnlDO2dCQUV6QyxzQkFGeUM7b0JBRXpDLG1CQUZ5QztZQUd6Qyx3QkFIMkQ7Z0JBRzNELHFCQUgyRDtvQkFHM0QsdUJBSDJEO1k0QjY2Q25DLGdCQUFnQjtZQUNoQixVQUFVLEVBQUE7WUFsSGxDO2NBcUg0QixNQUFNO2NBQ04sT0FBTyxFQUFBO1lBdEhuQztjQTBINEIsTUFBTTtjQUNOLFFBQVEsRUFBQTtZQTNIcEM7Y0ErSDRCLHNCQUF3QixFQUFBO1VBL0hwRDtZQW9Jd0IsYUFBYTtZQUNiLHdCQUFnQjtvQkFBaEIsZ0JBQWdCO1lBQ2hCLFlBQVksRUFBQTtZQXRJcEM7Y0F5STRCLFc3Qjc4Q3BCLEVBQUE7TTZCbzBDUjtRQWdKZ0IsY0FBYyxFQUFBO0VBaEo5QjtJQXNKUSxnQkFBZ0I7SUFDaEIsa0JBQWtCLEVBQUE7SUF2SjFCO01BMEpZLGdCQUFnQixFQUFBO01BMUo1QjtRQTZKZ0IsNkJBQTZCO1FBQzdCLGM3QnY5Q0E7UTZCdzlDQSxlQUFlO1FBQ2YsZ0JBQWdCO1FBQ2hCLGdCQUFnQixFQUFBO0lBaktoQztNQXNLWSxjQUFjO01BQ2QsYzdCMStDQTtNNkIyK0NBLGdCQUFnQjtNQUNoQixnQkFBZ0I7TUFDaEIsdUJBQXVCO01BQ3ZCLG1CQUFtQixFQUFBO0VBM0svQjtJQW1Mb0IsVUFBVTtJQUNWLDZCQUFxQjtJQUFyQixxQkFBcUIsRUFBQTtFQXBMekM7SUE2TGdDLDZDQUFxQztZQUFyQyxxQ0FBcUMsRUFBQTtFQTdMckU7SUFtTWdDLDZDQUFxQztZQUFyQyxxQ0FBcUMsRUFBQTtFQW5NckU7SUF5TWdDLDZDQUFxQztZQUFyQyxxQ0FBcUMsRUFBQTtFQXpNckU7SUErTWdDLDhDQUFzQztZQUF0QyxzQ0FBc0MsRUFBQTtFQS9NdEU7SUF3Tm9CLFlBQVk7SUFDWixVQUFVLEVBQUE7RUF6TjlCO0lBaU9ZLGVBQWU7SUFDZix5QjdCeGdETSxFQUFBO0k2QnN5Q2xCO01Bc09vQixVQUFVO01BQ1YsNkJBQXFCO01BQXJCLHFCQUFxQjtNQUNyQixnQkFBZ0IsRUFBQTtNMUJsakRoQztRMEIwMENKO1VBMk93QixVQUFVLEVBQUEsRUFFakI7STFCdmpEYjtNMEIwMENKO1FBbVB3Qix5Q0FBaUM7Z0JBQWpDLGlDQUFpQyxFQUFBLEVBVXhDO0lBN1BqQjtNQXdQNEIsb0NBQW9DO01BQ3BDLFc3QjlqRHBCO002QitqRG9CLDZCQUFxQjtNQUFyQixxQkFBcUIsRUFBQTtFQTFQakQ7SUFrUVksZ0JBQWdCO0lBQ2hCLGtCQUFrQixFQUFBO0lBblE5QjtNQXNRZ0IsYzdCempEQyxFQUFBO0U2Qm16Q2pCO0lBOFF3QixVQUFVLEVBQUE7RUE5UWxDO0lBb1J3Qiw4QkFBc0I7WUFBdEIsc0JBQXNCLEVBQUE7O0FDcm5EbEQ7OzRCNUJpeEs0QjtBNkJqeEs1Qjs7NEI3Qm94SzRCO0E0Qjd3S3hCO0VBSWdCLGdCQUFnQixFQUFBOztBQU1oQztFQUNJLGtFQUFrRTtFQUNsRSxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUIsRUFBQTtFM0JDbkI7STJCTko7TUFRUSxhQUFhLEVBQUEsRUE0SHBCO0VBcElEO0lBWVEseUI5QktRLEVBQUE7RUdYWjtJMkJOSjtNQWlCWSxhQUFhLEVBQUEsRUFNcEI7RTNCakJEO0kyQk5KO01BcUJZLGFBQWEsRUFBQSxFQUVwQjtFQXZCTDtJQTBCUSxXOUJmQTtJOEJnQkEsb0NBQW9DLEVBQUE7SUEzQjVDO01BOEJZLGVBQWU7TUFDZixpQkFBaUI7TUFDakIsVzlCckJKO004QnNCSSxnQkFBZ0I7TUFDaEIsZ0JBQWdCO01BQ2hCLGtCQUFrQjtNQUNsQixhQUFhO01BQ2IsVUFBVTtNQUNWLE9BQU8sRUFBQTtNNUIrdktqQjtRNEI1dktjLFdBQVc7UUFDWCxRQUFRLEVBQUE7SUExQ3hCO01BK0NZLG1CQUFtQixFQUFBO01BL0MvQjtRQWtEZ0IsZ0JBQWdCLEVBQUE7SUFsRGhDO01BdURZLHNFQUFzRTtNQUN0RSx5QkFBeUI7TUFDekIsY0FBYztNQUNkLG1CQUFtQixFQUFBO0VBMUQvQjtJQStEUSxrQkFBa0I7SUFDbEIsV0FBVztJN0IvRGYsUUFBUTtJQUNSLG1DQUEyQjtZQUEzQiwyQkFBMkIsRUFBQTtJNkJGL0I7TUFvRVksYzlCdkRBO004QndEQSxjQUFjO01BQ2QsaUJBQWlCLEVBQUE7STVCb3ZLN0I7TTRCaHZLWSxpQkFBaUIsRUFBQTtJQTFFN0I7TUE4RVksaUJBQWlCLEVBQUE7TUE5RTdCO1FBaUZnQixvRUFBb0U7UUFDcEUsZ0JBQWdCLEVBQUE7TUFsRmhDO1FBc0ZnQixvRUFBb0U7UUFDcEUsY0FBYztRQUNkLG1CQUFtQixFQUFBO01BeEZuQztRQTZGb0IsZ0JBQWdCLEVBQUE7TUE3RnBDO1FBaUdvQixjQUFjO1FBQ2QsbUJBQW1CLEVBQUE7TUFsR3ZDO1FBd0dvQixnQkFBZ0IsRUFBQTtNQXhHcEM7UUE0R29CLG1CQUFtQixFQUFBO01BNUd2QztRQWtIb0IsZ0JBQWdCO1FBQ2hCLGM5QnRHUixFQUFBO004QmJaO1FBdUhvQixjQUFjO1FBQ2QsbUJBQW1CO1FBQ25CLGM5QjVHUixFQUFBO0k4QmJaO01BK0hZLGtCQUFrQjtNQUNsQixnQkFBZ0I7TUFDaEIsb0VBQW9FLEVBQUE7O0FBaUloRjtFQUVRLGtCQUFrQjtFQUNsQixvQkFBb0I7RUFDcEIsVUFBVSxFQUFBO0VBSmxCO0lBT1ksV0FBVyxFQUFBO0UzQm5RbkI7STJCNFBKO01BV1ksb0JBQW9CLEVBQUEsRUE4QzNCO0VBekRMO0lBZVksa0JBQWtCO0lBQ2xCLFNBQVM7SUFDVCxRQUFRLEVBQUE7SUFqQnBCO01Bb0JnQixXQUFXLEVBQUE7TTVCbWxLekI7UTRCaGxLa0Isa0JBQWtCLEVBQUE7TTNCblJsQztRMkI0UEo7VUEyQm9CLGlCQUFpQixFQUFBLEVBRXhCO0VBN0JiO0lBaUNZLGtCQUFrQjtJQUNsQixPQUFPO0lBQ1AsUUFBUTtJQUNSLFc5QjNSSjtJOEI0UkksWUFBWTtJQUNaLFNBQVM7SUFDVCxVQUFVLEVBQUE7STVCNmtLdEI7TTRCMWtLZ0IsV0FBVztNQUNYLFdBQVc7TUFDWCxpQkFBaUIsRUFBQTtJQTVDakM7TUFnRGdCLG9FQUFvRTtNQUNwRSxrQkFBa0I7TUFDbEIsZ0JBQWdCLEVBQUE7SUFsRGhDO01Bc0RnQixvRUFBb0UsRUFBQTs7QUV6VXhGOzs0QjlCbzVLNEI7QThCLzRLeEI7RUFDSSx5QmhDK0NtQjtFZ0M5Q25CLDZIQUE2SDtFQUM3SCxvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CO0VBQ25CLGtCQUFrQixFQUFBO0VBTHRCO0lBUVEsbUVBQW1FLEVBQUE7RTdCVXZFO0k2QmxCSjtNQVlRLGNBQWMsRUFBQSxFQWlLckI7RUE3S0Q7SUFnQlEsa0JBQWtCLEVBQUE7STlCNjRLMUI7TThCMTRLWSxlQUFlO01BQ2YsaUJBQWlCLEVBQUE7STdCRnpCO002QmxCSjtRQXdCWSxlQUFlO1FBQ2Ysa0JBQWtCLEVBQUE7UTlCMjRLMUI7VThCeDRLWSxlQUFlO1VBQ2YsZ0JBQWdCLEVBQUEsRUFDbkI7SUE5QmI7TUFrQ1ksWUFBWTtNQUNaLGFBQWE7TUFDYixtQkFBNkI7TUFDN0IsNkRBRWtDO01BQ2xDLGtCQUFrQixFQUFBO003QnRCMUI7UTZCbEJKO1VBMkNnQixZQUFZO1VBQ1osYUFBYSxFQUFBLEVBV3BCO003QnJDTDtRNkJsQko7VUFnRGdCLFlBQVk7VUFDWixhQUFhLEVBQUEsRUFNcEI7TTdCckNMO1E2QmxCSjtVQXFEZ0IsYUFBYSxFQUFBLEVBRXBCO0lBdkRUO01BMERZLGtCQUFrQjtNQUNsQixRQUFRO01BQ1IsVUFBVTtNQUNWLGdDQUF3QjtjQUF4Qix3QkFBd0I7TUFDeEIsVUFBVSxFQUFBO005Qmc0S3BCO1E4QjczS2MsV0FBVztRQUNYLFlBQVksRUFBQTtNN0JoRHhCO1E2QmxCSjtVQXNFZ0IsUUFBUTtVQUNSLFVBQVU7VUFDVixVQUFVLEVBQUEsRUEwQmpCO003QmhGTDtRNkJsQko7VUE0RWdCLFFBQVE7VUFDUixVQUFVO1VBQ1YsVUFBVSxFQUFBLEVBb0JqQjtNN0JoRkw7UTZCbEJKO1VBa0ZnQixrQkFBa0I7VUFDbEIsNEJBQW9CO2tCQUFwQixvQkFBb0I7VUFDcEIsY0FBYztVQUNkLFdBQVc7VUFDWCxPQUFPO1VBQ1AsZ0RBQXdDO2tCQUF4Qyx3Q0FBd0MsRUFBQTtVOUI0M0tsRDtZOEJ6M0tjLFdBQVc7WUFDWCxtQkFBbUIsRUFBQSxFQUN0QjtNN0IxRWI7UTZCbEJKO1VBZ0dnQixXQUFXLEVBQUEsRUFFbEI7SUFsR1Q7TUFxR1ksa0JBQWtCO01BQ2xCLFNBQVM7TUFDVCxXQUFXO01BQ1gsVUFBVTtNQUNWLGdEQUF3QztjQUF4Qyx3Q0FBd0MsRUFBQTtNOUJzM0tsRDtROEJuM0tjLFdBQVc7UUFDWCxXQUFXLEVBQUE7TTdCM0Z2QjtRNkJsQko7VUFpSGdCLFNBQVM7VUFDVCxXQUFXO1VBQ1gsVUFBVSxFQUFBLEVBWWpCO003QjdHTDtRNkJsQko7VUF1SGdCLFNBQVM7VUFDVCxXQUFXO1VBQ1gsVUFBVSxFQUFBLEVBTWpCO003QjdHTDtRNkJsQko7VUE2SGdCLGFBQWEsRUFBQSxFQUVwQjtFQS9IVDtJL0JPQSxXQUR3QjtJQUV4QixZQUZ1QztJQTJCdkMsb0JBRHlCO0lBQ3pCLG9CQUR5QjtJQUN6QixhQUR5QjtJQUV6Qix5QkFGeUM7UUFFekMsc0JBRnlDO1lBRXpDLG1CQUZ5QztJQUd6Qyx3QkFIMkQ7UUFHM0QscUJBSDJEO1lBRzNELHVCQUgyRDtJK0JxR25ELGtCQUFrQixFQUFBO0k3Qm5IdEI7TTZCbEJKO1FBd0lZLGtCQUFrQjtRQUNsQixXQUFXO1FBQ1gsY0FBYyxFQUFBLEVBa0NyQjtJQTVLTDtNQThJWSx5QmhDcEdXO01nQ3FHWCxrQkFBa0I7TUFDbEIsV0FBVztNQUNYLFlBQVk7TUFDWixjQUFjO00vQmpIMUIsb0JBRHlCO01BQ3pCLG9CQUR5QjtNQUN6QixhQUR5QjtNQUV6Qix5QkFGeUM7VUFFekMsc0JBRnlDO2NBRXpDLG1CQUZ5QztNQUd6Qyx3QkFIMkQ7VUFHM0QscUJBSDJEO2NBRzNELHVCQUgyRCxFQUFBO00rQmhDM0Q7UUFzSmdCLG9DQUEwQyxFQUFBO01BdEoxRDtRQTBKZ0IseUJoQ3JHRSxFQUFBO01nQ3JEbEI7UUE4SmdCLGVBQWUsRUFBQTtJQTlKL0I7TUFtS1ksY2hDMUlBLEVBQUE7SWdDekJaO01BdUtZLG9FQUFvRTtNQUNwRSxnQkFBZ0I7TUFDaEIsZ0JBQWdCO01BQ2hCLGNoQ2pKQSxFQUFBOztBZ0NvU1o7RUFDSSx5QmhDOVFtQjtFZ0MrUW5CLGtCQUFrQjtFQUNsQixhQUFhO0VBQ2IsZ0JBQWdCLEVBQUE7RTdCL1NoQjtJNkIyU0o7TUFPUSxhQUFhLEVBQUEsRUF5SXBCO0U3QjNiRztJNkIyU0o7TUFXUSxhQUFhLEVBQUEsRUFxSXBCO0U3QjNiRztJNkIyU0o7TUFlUSxZQUFZO01BQ1osa0VBQWtFLEVBQUEsRUFnSXpFO0VBaEpEO0lBb0JRLGtCQUFrQixFQUFBO0k3Qi9UdEI7TTZCMlNKO1FBdUJZLGVBQWU7UUFDZixrQkFBa0IsRUFBQSxFQTZEekI7SUFyRkw7TUE0Qlksa0JBQWtCO01BQ2xCLFVBQVU7TUFDVixZQUFZO01BQ1osaUNBQXlCO2NBQXpCLHlCQUF5QjtNQUN6QixVQUFVLEVBQUE7TTdCM1VsQjtRNkIyU0o7VUFtQ2dCLFNBQVM7VUFDVCxZQUFZO1VBQ1osVUFBVSxFQUFBLEVBWWpCO003QjVWTDtRNkIyU0o7VUF5Q2dCLFNBQVM7VUFDVCxZQUFZO1VBQ1osVUFBVSxFQUFBLEVBTWpCO003QjVWTDtRNkIyU0o7VUErQ2dCLGFBQWEsRUFBQSxFQUVwQjtJQWpEVDtNQW9EWSxrQkFBa0I7TUFDbEIsV0FBVztNQUNYLGFBQWE7TUFDYixVQUFVO01BQ1YsaUNBQXlCO2NBQXpCLHlCQUF5QixFQUFBO003Qm5XakM7UTZCMlNKO1VBMkRnQixXQUFXO1VBQ1gsYUFBYTtVQUNiLFVBQVUsRUFBQSxFQXVCakI7TTdCL1hMO1E2QjJTSjtVQWlFZ0IsV0FBVztVQUNYLGFBQWE7VUFDYixVQUFVLEVBQUEsRUFpQmpCO003Qi9YTDtRNkIyU0o7VUF1RWdCLGtCQUFrQjtVQUNsQiw0QkFBb0I7a0JBQXBCLG9CQUFvQjtVQUNwQixjQUFjO1VBQ2QsV0FBVztVQUNYLE1BQU07VUFDTixPQUFPO1VBQ1AsZ0RBQXdDO2tCQUF4Qyx3Q0FBd0MsRUFBQTtVOUJ5c0tsRDtZOEJ0c0tjLFdBQVc7WUFDWCxRQUFRLEVBQUEsRUFDWDtFQWxGakI7SUF3RlEsa0JBQWtCO0kvQnhZdEIsUUFBUTtJQUNSLG1DQUEyQjtZQUEzQiwyQkFBMkI7SStCeVl2QixPQUFPO0lBQ1Asb0NBQW9DO0lBQ3BDLHlCQUFpQjtPQUFqQixzQkFBaUI7UUFBakIscUJBQWlCO1lBQWpCLGlCQUFpQjtJQUNqQixXaENuWUE7SWdDb1lBLGtFQUFrRSxFQUFBO0k3QnpZdEU7TTZCMlNKO1FBaUdZLGFBQWEsRUFBQSxFQVdwQjtJQTVHTDtNQXFHWSxvRUFBb0UsRUFBQTtJQXJHaEY7TUF5R1ksc0VBQXNFO01BQ3RFLG1FQUFtRSxFQUFBO0VBMUcvRTtJL0J0VEEsV0FEd0I7SUFFeEIsWUFGdUM7SUEyQnZDLG9CQUR5QjtJQUN6QixvQkFEeUI7SUFDekIsYUFEeUI7SUFFekIseUJBRnlDO1FBRXpDLHNCQUZ5QztZQUV6QyxtQkFGeUM7SUFHekMsd0JBSDJEO1FBRzNELHFCQUgyRDtZQUczRCx1QkFIMkQ7SStCOFluRCxrQkFBa0IsRUFBQTtJN0I1WnRCO002QjJTSjtRQW9IWSxrQkFBa0I7UUFDbEIsV0FBVztRQUNYLGNBQWMsRUFBQSxFQXlCckI7SUEvSUw7TUEwSFksYUFBYTtNQUNiLGtCQUFrQjtNQUNsQixxQkFBcUIsRUFBQTtNQTVIakM7UUErSGdCLHlCaEN2WUUsRUFBQTtNZ0N3UWxCO1FBbUlnQix3QkFBd0I7UUFDeEIsMEJBQTBCO1FBQzFCLFdBQVc7UUFDWCxZQUFZLEVBQUE7SUF0STVCO01BMklZLG9FQUFvRTtNQUNwRSxnQkFBZ0I7TUFDaEIsZ0JBQWdCLEVBQUE7O0FDL2NoQzs7NEIvQjBvTDRCO0ErQnJvTHhCO0VBQ0ksK0JBQXdCO0VBQXhCLCtCQUF3QjtFQUF4Qix3QkFBd0I7RUFDeEIseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUI7RUFDbkIsd0JBQXVCO01BQXZCLHFCQUF1QjtVQUF2Qix1QkFBdUI7RUFDdkIsa0JBQWtCLEVBQUE7O0FBR3RCO0VBQ0ksa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixZQUFZLEVBQUE7RTlCUVo7SThCWEo7TUFPWSxvQ2pDVUo7TWlDVEksa0JBQWtCO01BQ2xCLGtCQUFrQjtNQUNsQixrQ0FBMEI7Y0FBMUIsMEJBQTBCLEVBQUE7TUFWdEM7OztRQWVnQixzQkFBd0IsRUFBQSxFQUMzQjtFQWhCYjtJQXFCUSxnQkFBZ0IsRUFBQTtFQXJCeEI7SUF5QlEsa0JBQWtCO0lBQ2xCLE1BQU07SWhDMUJkLFdBRHdCO0lBRXhCLFlBRnVDO0lnQzZCL0Isb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWE7SUFDYix5QkFBbUI7UUFBbkIsc0JBQW1CO1lBQW5CLG1CQUFtQixFQUFBO0lBN0IzQjtNQWdDWSx3QkFBdUI7VUFBdkIscUJBQXVCO2NBQXZCLHVCQUF1QixFQUFBO0lBaENuQztNQW9DWSxrQkFBa0IsRUFBQTtNOUJ6QjFCO1E4QlhKO1VBdUNnQixrQkFBa0IsRUFBQSxFQTZGekI7TTlCekhMO1E4QlhKO1VBMkNnQixrQkFBa0IsRUFBQSxFQXlGekI7TTlCekhMO1E4QlhKO1VBK0NnQixrQkFBa0IsRUFBQSxFQXFGekI7TTlCekhMO1E4QlhKO1VBbURnQixhQUFhLEVBQUEsRUFpRnBCO005QnpITDtROEJYSjtVQXVEZ0IsYUFBYSxFQUFBLEVBNkVwQjtNOUJ6SEw7UThCWEo7VUEyRGdCLGFBQWEsRUFBQSxFQXlFcEI7TUFwSVQ7UUErRGdCLGFBQWEsRUFBQTtROUJwRHpCO1U4QlhKO1lBa0VvQixhQUFhLEVBQUEsRUFzQnBCO1E5QjdFVDtVOEJYSjtZQXNFb0IsYUFBYSxFQUFBLEVBa0JwQjtROUI3RVQ7VThCWEo7WUEwRW9CLGFBQWEsRUFBQSxFQWNwQjtROUI3RVQ7VThCWEo7WUE4RW9CLGFBQWEsRUFBQSxFQVVwQjtROUI3RVQ7VThCWEo7WUFrRm9CLGFBQWEsRUFBQSxFQU1wQjtROUI3RVQ7VThCWEo7WUFzRm9CLGFBQWEsRUFBQSxFQUVwQjtNQXhGYjtRQTJGZ0Isd0NqQ3BFYztRaUNxRWQsV2pDNUVSLEVBQUE7UWlDaEJSO1VBK0ZvQixnQkFBZ0IsRUFBQTtRQS9GcEM7VUFtR29CLGdCQUFnQixFQUFBO1FBbkdwQztVQXVHb0IsY0FBYztVQUNkLG1CQUFtQixFQUFBO01BeEd2QztRQTZHZ0Isd0NqQ3RGYztRaUN1RmQsV2pDOUZSLEVBQUE7UWlDaEJSO1VBaUhvQixnQkFBZ0IsRUFBQTtNQWpIcEM7UUFzSGdCLGVBQWU7UUFDZixnQkFBZ0I7UUFDaEIsbUJBQW1CLEVBQUE7UTlCN0cvQjtVOEJYSjtZQTJIb0IsbUJBQW1CLEVBQUEsRUFFMUI7TUE3SGI7UUFpSW9CLGdCQUFnQixFQUFBO0VBaklwQztJQXdJUSxZQUFZLEVBQUE7RUF4SXBCOztJQStJWSx3QkFBdUI7UUFBdkIscUJBQXVCO1lBQXZCLHVCQUF1QixFQUFBO0VBL0luQzs7SUF1SlkscUJBQXlCO1FBQXpCLGtCQUF5QjtZQUF6Qix5QkFBeUIsRUFBQTtJL0Ira0xyQzs7TStCNWtMZ0IsdUJBQTJCO1VBQTNCLG9CQUEyQjtjQUEzQiwyQkFBMkIsRUFBQTtJQTFKM0M7O01BOEpnQixnQkFBZ0IsRUFBQTtJQTlKaEM7O01Ba0tnQixnQkFBZ0I7TUFDaEIsY0FBYyxFQUFBO0VBbks5QjtJQXdLWSxpQkFBaUIsRUFBQTtFQXhLN0I7O0lBZ0xZLHVCQUEyQjtRQUEzQixvQkFBMkI7WUFBM0IsMkJBQTJCLEVBQUE7SS9CcWtMdkM7O00rQmxrTGdCLHFCQUF5QjtVQUF6QixrQkFBeUI7Y0FBekIseUJBQXlCLEVBQUE7RUFuTHpDO0lBMExZLHNCQUFxQjtRQUFyQixtQkFBcUI7WUFBckIscUJBQXFCLEVBQUE7RUExTGpDO0lBK0xRLGtCQUFrQjtJQUNsQixNQUFNO0loQ2hNZCxXQUR3QjtJQUV4QixZQUZ1QztJZ0NtTS9CLG9CQUFhO0lBQWIsb0JBQWE7SUFBYixhQUFhO0lBQ2IseUJBQW1CO1FBQW5CLHNCQUFtQjtZQUFuQixtQkFBbUIsRUFBQTtJQW5NM0I7TUFzTVksYUFBYTtNQUNiLFVBQVUsRUFBQTtNL0I2akxwQjtRK0IxakxjLGlCQUFpQixFQUFBO01BMU1qQztRQStNb0IsY2pDN0xSO1FpQzhMUSxnQkFBZ0IsRUFBQTtROUJyTWhDO1U4QlhKO1lBbU53QixrQkFBa0IsRUFBQSxFQUV6QjtNOUIxTWI7UThCWEo7VUF5TmdCLGtCQUFrQixFQUFBLEVBdUJ6QjtNOUJyT0w7UThCWEo7VUE2TmdCLGtCQUFrQixFQUFBLEVBbUJ6QjtNOUJyT0w7UThCWEo7VUFpT2dCLGtCQUFrQixFQUFBLEVBZXpCO005QnJPTDtROEJYSjtVQXFPZ0IsZUFBZSxFQUFBLEVBV3RCO005QnJPTDtROEJYSjtVQXlPZ0IsZUFBZSxFQUFBLEVBT3RCO005QnJPTDtROEJYSjtVQTZPZ0IsZUFBZTtVQUNmLFVBQVUsRUFBQSxFQUVqQjtJQWhQVDtNQW1QWSxnQkFBZ0I7TUFDaEIsZ0JBQWdCLEVBQUE7SUFwUDVCO01Bd1BZLGlFQUFpRTtNQUNqRSxvRUFBb0U7TUFDcEUsaUJBQWlCO01BQ2pCLGNqQ3pPQSxFQUFBO0lpQ2xCWjtNQStQWSxvRUFBb0U7TUFDcEUsaUJBQWlCO01BQ2pCLG1CQUFtQixFQUFBO01BalEvQjtRQW9RZ0Isc0VBQXNFO1FBQ3RFLGdCQUFnQjtRQUNoQixjakNwUEosRUFBQTtJaUNsQlo7TUEyUVksb0VBQW9FLEVBQUE7O0FBS2hGO0VBR1ksVUFBVSxFQUFBO0UvQmlpTHhCO0krQjloTGtCLGdCQUFnQixFQUFBO0VBTmhDO0lBVWdCLGdCQUFnQjtJQUNoQixjakN6UUosRUFBQTs7QWlDK1FaO0VBQ0ksa0JBQWtCO0VBQ2xCLGFBQWE7RUFDYix5QmpDdFFVO0VpQ3VRVixjakNuUlEsRUFBQTtFR1BSO0k4QnNSSjtNQU9RLGFBQWEsRUFBQSxFQWNwQjtFOUIzU0c7SThCc1JKO01BV1EsYUFBYSxFQUFBLEVBVXBCO0U5QjNTRztJOEJzUko7TUFlUSxhQUFhLEVBQUEsRUFNcEI7RUFyQkQ7SUFtQlEsZ0JBQWdCLEVBQUE7O0FBSXhCO0VBQ0ksa0JBQWtCLEVBQUE7RUFEdEI7SUFJUSxrQkFBa0I7SUFDbEIsK0RBQStEO0loQ3ZUbkUsUUFBUTtJQUNSLG1DQUEyQjtZQUEzQiwyQkFBMkI7SWdDd1R2QixVQUFVLEVBQUE7SUFQbEI7TUFVWSxvRUFBb0U7TUFDcEUsaUJBQWlCO01BQ2pCLHNFQUFzRTtNQUN0RSxtRUFBbUU7TUFDbkUseUJBQXlCLEVBQUE7TTlCM1RqQztROEI2U0o7VUFpQmdCLGdCQUFnQixFQUFBLEVBRXZCO0lBbkJUO01Bc0JZLGNqQ2xUSTtNaUNtVEosZ0JBQWdCO01BQ2hCLGdCQUFnQixFQUFBO005QnJVeEI7UThCNlNKO1VBMkJnQixhQUFhLEVBQUEsRUFFcEI7O0FBTVQ7RUFDSSxnQkFBZ0IsRUFBQTtFQURwQjtJQUlRLGtCQUFrQjtJQUNsQiw4Q0FBc0M7WUFBdEMsc0NBQXNDO0lBQ3RDLFVBQVU7SUFDVixVQUFVLEVBQUE7RUFQbEI7SWhDM1VJLFFBQVE7SUFDUixTQUFTO0lBQ1Qsd0NBQWdDO1lBQWhDLGdDQUFnQztJZ0NxVjVCLGtCQUFrQjtJQUNsQixVQUFVLEVBQUE7RUFibEI7SUFpQlEsVUFBVTtJQUNWLGtCQUFrQjtJaEN2V3RCLFFBQVE7SUFDUixtQ0FBMkI7WUFBM0IsMkJBQTJCO0lnQ3dXdkIsV0FBVztJQUNYLGlDQUF5QjtRQUF6Qix1QkFBeUI7WUFBekIseUJBQXlCO0lBQ3pCLHVCQUF1QjtJQUN2QixvQkFBYTtJQUFiLG9CQUFhO0lBQWIsYUFBYTtJQUNiLHlCQUFtQjtRQUFuQixzQkFBbUI7WUFBbkIsbUJBQW1CLEVBQUE7SS9Cd2dMM0I7TStCcmdMWSxrREFBMEM7Y0FBMUMsMENBQTBDLEVBQUE7SS9CdWdMdEQ7TStCbmdMWSxVQUFVO01BQ1YsWUFBWSxFQUFBO0k5QmhYcEI7TThCZ1ZKO1FBb0NZLFNBQVM7UUFDVCxrQkFBa0I7UUFDbEIsbUNBQTJCO1lBQTNCLHVCQUEyQjtnQkFBM0IsMkJBQTJCO1FBQzNCLFVBQVUsRUFBQTtRL0JvZ0xsQjtVK0JqZ0xZLGdEQUF3QztrQkFBeEMsd0NBQXdDLEVBQUEsRUFDM0M7SUEzQ2I7TWhDalVBLG9CQUR5QjtNQUN6QixvQkFEeUI7TUFDekIsYUFEeUI7TUFFekIseUJBRnlDO1VBRXpDLHNCQUZ5QztjQUV6QyxtQkFGeUM7TUFHekMsd0JBSDJEO1VBRzNELHFCQUgyRDtjQUczRCx1QkFIMkQsRUFBQTtNZ0NrVTNEO1FBa0RnQixnQkFBZ0IsRUFBQTtRL0JpZ0w1QjtVK0I5L0tnQixhQUFhO1VBQ2IsbUJBQW1CLEVBQUE7UTlCdFluQztVOEJnVko7WUEwRG9CLGFBQWE7WUFDYixnQkFBZ0IsRUFBQTtZL0IrL0s1QjtjK0I1L0tnQixjQUFjO2NBQ2QsaUJBQWlCO2NBQ2pCLGtCQUFrQixFQUFBLEVBQ3JCO01BakVyQjtRQXNFZ0IsZ0NBQXdCO2dCQUF4Qix3QkFBd0I7UUFDeEIsbUJBQW1CLEVBQUE7US9CMC9LL0I7VStCdi9LZ0IsZ0JBQWdCLEVBQUE7UTlCMVpoQztVOEJnVko7WUE4RW9CLCtCQUF1QjtvQkFBdkIsdUJBQXVCO1lBQ3ZCLGdCQUFnQixFQUFBLEVBRXZCO01BakZiO1FBb0ZnQixnQkFBZ0I7UUFDaEIsa0VBQWtFO1FBQ2xFLGNqQy9aSixFQUFBO1FHUFI7VThCZ1ZKO1lBeUZvQixhQUFhLEVBQUEsRUFFcEI7RTlCM2FUO0k4QmdWSjtNQWtHZ0IsZ0JBQWdCLEVBQUEsRUFVdkI7RTlCNWJMO0k4QmdWSjtNQXNHZ0IsZ0JBQWdCLEVBQUEsRUFNdkI7RTlCNWJMO0k4QmdWSjtNQTBHZ0IsZ0JBQWdCLEVBQUEsRUFFdkI7RUE1R1Q7SUFnSFEsZUFBZTtJQUNmLGdCQUFnQjtJQUNoQixpQkFBaUI7SUFDakIsa0JBQWtCO0lBQ2xCLFNBQVM7SWhDcGNiLFNBQVM7SUFDVCxtQ0FBMkI7WUFBM0IsMkJBQTJCLEVBQUE7SWdDK1UvQjtNaENoV0EsV0FEbUM7TUFFbkMsa0JBRnFCO01BTXJCLFdBRHdCO01BRXhCLFlBRnVDO01nQ3NkM0IscUNBQXFDO01BQ3JDLE9BQU87TUFDUCxNQUFNO01BQ04sWUFBWSxFQUFBO00vQjIrS3RCO1ErQngrS2MsV0FBVztRQUNYLFFBQVEsRUFBQTtJOUJqZHBCO004QmdWSjtRQXNJWSxTQUFTO1FBQ1QsV0FBVztRQUNYLHdCQUFnQjtnQkFBaEIsZ0JBQWdCO1FBQ2hCLFdBQVcsRUFBQSxFQVdsQjtJOUJwZUQ7TThCZ1ZKO1FBNklZLGlCQUFpQixFQUFBLEVBT3hCO0k5QnBlRDtNOEJnVko7UUFpSlksU0FBUztRQUNULFdBQVcsRUFBQSxFQUVsQjtFQXBKTDtJQXVKUSwyQkFBb0I7SUFBcEIsMkJBQW9CO0lBQXBCLG9CQUFvQjtJQUNwQixVQUFVO0lBQ1YsbUNBQTJCO1lBQTNCLDJCQUEyQixFQUFBO0lBekpuQztNQTRKWSxrQkFBa0IsRUFBQTtNQTVKOUI7UUErSmdCLHdDQUF3QztRQUN4QyxrQ0FBMEI7Z0JBQTFCLDBCQUEwQjtRQUMxQixXakM1ZVIsRUFBQTtNR0xKO1E4QmdWSjtVQXFLZ0IsYUFBYSxFQUFBLEVBMEVwQjtNOUIvakJMO1E4QmdWSjtVQXlLZ0IsYUFBYSxFQUFBLEVBc0VwQjtNOUIvakJMO1E4QmdWSjtVQTZLZ0IsYUFBYSxFQUFBLEVBa0VwQjtNQS9PVDtRQWtMb0Isa0JBQWtCLEVBQUE7UTlCbGdCbEM7VThCZ1ZKO1lBcUx3QixrQkFBa0I7WUFDbEIsZUFBZSxFQUFBLEVBRXRCO01BeExqQjtRQTJMb0IsaUJBQWlCLEVBQUE7US9CdzlLakM7VStCcjlLb0IsNkJBQTZCO1VBQzdCLGtCQUFrQixFQUFBO1E5Qi9nQnRDO1U4QmdWSjtZQW1Nd0IsaUJBQWlCLEVBQUE7WS9CczlLakM7YytCbjlLb0Isa0JBQWtCLEVBQUEsRUFDckI7UTlCdmhCckI7VThCZ1ZKO1lBMk13QixpQkFBaUIsRUFBQTtZL0JtOUtqQztjK0JoOUtvQixrQkFBa0IsRUFBQSxFQUNyQjtRQS9NekI7VUFtTndCLFdBQVc7VUFDWCwrQ2pDL2hCaEIsRUFBQTtVRTgrTEY7WStCNThLc0Isc0JBQXNCO1lBQ3RCLFlBQVk7WUFDWixnRGpDcGlCcEI7WWlDcWlCb0Isa0JBQWtCLEVBQUE7VTlCMWlCMUM7WThCZ1ZKO2NBOE40QixXQUFXLEVBQUE7Yy9CNjhLN0I7Z0IrQjE4S3NCLFlBQVksRUFBQSxFQUNmO1U5QmxqQnpCO1k4QmdWSjtjQXNPNEIsV0FBVyxFQUFBO2MvQjA4SzdCO2dCK0J2OEtzQixZQUFZLEVBQUEsRUFDZjtFQTFPN0I7SUFtUFEsaUNBQXlCO1FBQXpCLHVCQUF5QjtZQUF6Qix5QkFBeUI7SUFDekIsdUJBQXVCO0lBQ3ZCLGtCQUFrQjtJQUNsQixVQUFVO0lBQ1Ysa0RBQTBDO1lBQTFDLDBDQUEwQztJQUMxQyxVQUFVO0loQzdrQmQsUUFBUTtJQUNSLG1DQUEyQjtZQUEzQiwyQkFBMkI7SWdDOGtCdkIsY2pDbmtCSSxFQUFBO0lFcWdNWjtNK0IvN0tZLHNCQUFzQjtNQUN0QixXQUFXO01BQ1gsbUNBQTJCO2NBQTNCLDJCQUEyQixFQUFBO0k5Qi9rQm5DO004QmdWSjtRQW1RWSxVQUFVO1FBQ1YsU0FBUztRQUNULDJCQUFtQjtZQUFuQix1QkFBbUI7Z0JBQW5CLG1CQUFtQjtRQUNuQix5QkFBeUI7UUFDekIsdUNBQStCO2dCQUEvQiwrQkFBK0I7UUFDL0Isd0JBQWdCO2dCQUFoQixnQkFBZ0IsRUFBQTtRL0JnOEt4QjtVK0I3N0tZLFlBQVk7VUFDWixxQkFBcUIsRUFBQSxFQUN4QjtJOUI3bEJUO004QmdWSjtRQWlSWSxVQUFVO1FBQ1YsU0FBUyxFQUFBO1EvQjY3S2pCO1UrQjE3S1kscUJBQXFCO1VBQ3JCLFlBQVksRUFBQSxFQUNmO0k5QnZtQlQ7TThCZ1ZKO1FBNFJnQixlQUFlLEVBQUEsRUFNdEI7STlCbG5CTDtNOEJnVko7UUFnU2dCLGVBQWUsRUFBQSxFQUV0QjtJQWxTVDtNQXFTWSx3QkFBd0I7TUFDeEIsa0JBQWtCLEVBQUE7TS9CcTdLNUI7UStCbDdLYyx3QkFBd0I7UUFDeEIsa0JBQWtCO1FBQ2xCLHdCQUF3QixFQUFBO005QjNuQnBDO1E4QmdWSjtVQStTZ0IsVUFBVSxFQUFBLEVBdUNqQjtNOUJ0cUJMO1E4QmdWSjtVQW1UZ0Isb0JBQW9CO1VBQ3BCLHdCQUF3QjtVQUN4QixnQkFBZ0IsRUFBQSxFQWlDdkI7TTlCdHFCTDtROEJnVko7VUF5VGdCLGFBQWEsRUFBQSxFQTZCcEI7TUF0VlQ7UWhDaFdBLFdBRG1DO1FBRW5DLGtCQUZxQjtRQU1yQixXQUR3QjtRQUV4QixZQUZ1QztRQWlCbkMsUUFBUTtRQUNSLFNBQVM7UUFDVCx3Q0FBZ0M7Z0JBQWhDLGdDQUFnQztRZ0N5b0JwQixvQ0FBb0M7UUFDcEMsWUFBWTtRQUNaLG1CQUFtQixFQUFBO1E5QmxwQi9CO1U4QmdWSjtZQXFVb0IsYUFBYSxFQUFBLEVBTXBCO1E5QjNwQlQ7VThCZ1ZKO1lBeVVvQixjQUFjLEVBQUEsRUFFckI7TUEzVWI7UUE4VWdCLGVBQWU7UUFDZixnQ0FBd0I7Z0JBQXhCLHdCQUF3QixFQUFBO1E5Qi9wQnBDO1U4QmdWSjtZQWtWb0Isd0JBQWdCO29CQUFoQixnQkFBZ0I7WUFDaEIsZUFBZSxFQUFBLEVBRXRCOztBQUtiO0VBRVEsK0JBQXdCO0VBQXhCLCtCQUF3QjtFQUF4Qix3QkFBd0I7RUFDeEIsc0JBQXFCO01BQXJCLG1CQUFxQjtVQUFyQixxQkFBcUI7RUFDckIsd0JBQXVCO01BQXZCLHFCQUF1QjtVQUF2Qix1QkFBdUI7RUFDdkIsWUFBWSxFQUFBO0U5Qi9xQmhCO0k4QjBxQko7TUFRWSx5QkFBbUI7VUFBbkIsc0JBQW1CO2NBQW5CLG1CQUFtQixFQUFBLEVBa0IxQjtFOUJwc0JEO0k4QjBxQko7TUFZWSxhQUFhLEVBQUEsRUFjcEI7RTlCcHNCRDtJOEIwcUJKO01Ba0JvQixnQkFBZ0IsRUFBQSxFQU12QjtFOUJsc0JUO0k4QjBxQko7TUFzQm9CLGdCQUFnQixFQUFBLEVBRXZCOztBQUtiO0VBQ0ksa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxPQUFPO0VBQ1Asb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWEsRUFBQTtFL0IrNUtuQjtJK0I1NUtVLFdBQVc7SUFDWCxRQUFRLEVBQUE7RUFSaEI7SUFhWSxpQkFBaUIsRUFBQTtJL0IyNUs3QjtNK0J4NUtnQixrQkFBa0I7TUFDbEIsa0JBQWtCLEVBQUE7O0FDL3VCdEM7OzRCaEM0b000QjtBQ3JuTXBCO0UrQnBCUjtJQUdZLGVBQWUsRUFBQSxFQUV0Qjs7QUFMTDtFQVFRLDZCbEMrQlU7RWtDOUJWLGdDbEM4QlU7RWtDN0JWLGVBQWUsRUFBQTtFL0JVZjtJK0JwQlI7TUFhWSxlQUFlLEVBQUEsRUFrQ3RCO0UvQjNCRztJK0JwQlI7TUFpQlksZUFBZSxFQUFBLEVBOEJ0QjtFL0IzQkc7SStCcEJSO01BcUJZLGVBQWUsRUFBQSxFQTBCdEI7RS9CM0JHO0krQnBCUjtNQXlCWSxlQUFlLEVBQUEsRUFzQnRCO0UvQjNCRztJK0JwQlI7TUE2QlksZUFBZSxFQUFBLEVBa0J0QjtFL0IzQkc7SStCcEJSO01Bc0N3Qiw0QkFBUztVQUFULGtCQUFTO2NBQVQsU0FBUyxFQUFBLEVBTWhCO0UvQnhCVDtJK0JwQlI7TUEwQ3dCLGdDQUFZO1VBQVoscUJBQVk7Y0FBWixZQUFZLEVBQUEsRUFFbkI7O0FBNUNqQjtFQWtEUSxtQkFBbUIsRUFBQTtFaEN3bk16QjtJZ0Nybk1VLCtCQUErQjtJQUMvQixrQkFBa0IsRUFBQTtFQXREOUI7SUEyRGdCLFdBQVc7SUFDWCxZQUFZO0lBQ1osaUJBQWlCO0lBQ2pCLHVCQUFlO1lBQWYsZUFBZTtJQUNmLG9DQUE0QjtZQUE1Qiw0QkFBNEIsRUFBQTtJaENvbk14QztNZ0Nqbk1nQixlQUFlO01BQ2YsZ0JBQWdCLEVBQUE7SUFuRXBDO01BdUVvQix3QkFBd0IsRUFBQTtFL0JuRHBDO0krQnBCUjtNQTZFWSxtQkFBbUIsRUFBQTtNaEM4bU16QjtRZ0MzbU1VLGtCQUFrQixFQUFBLEVBQ3JCO0UvQjdETDtJK0JwQlI7TUFxRlksZ0JBQWdCLEVBQUE7TWhDMm1NdEI7UWdDeG1NVSxlQUFlLEVBQUEsRUFDbEI7RUF6RmI7SUE2RlksY0FBYztJQUNkLHdFQUF3RSxFQUFBO0VoQ3VtTWxGO0lnQ2xtTWMsVUFBVSxFQUFBO0VBbkcxQjtJQXVHZ0Isb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWE7SUFDYiwwQkFBMEIsRUFBQTtJQXhHMUM7TUE0R3dCLGdCQUFnQixFQUFBO0lBNUd4QztNQWtId0IsbUJBQW1CLEVBQUE7SUFsSDNDO01BdUhvQixlQUFlLEVBQUE7TUF2SG5DO1FBMEh3QixnQkFBZ0I7UUFDaEIsa0JBQWtCLEVBQUE7UWhDd2xNbEM7VWdDcmxNb0Isb0JBQW9CO1VBQ3BCLGlCQUFpQjtVQUNqQixZQUFZLEVBQUE7SUFoSXhDO01Bc0lvQixxRUFBcUUsRUFBQTtNL0JsSGpGO1ErQnBCUjtVQXlJd0IsZ0JBQWdCLEVBQUEsRUFNdkI7TS9CM0hUO1ErQnBCUjtVQTZJd0IsZ0JBQWdCLEVBQUEsRUFFdkI7O0FBL0lqQjtFQXVKZ0Isa0JBQWtCLEVBQUE7RS9CbkkxQjtJK0JwQlI7TUEySndCLGtCQUFrQjtNQUNsQixnQkFBZ0I7TUFDaEIsa0NBQWtDO01BQ2xDLGNBQWM7TUFDZCxnQkFBZ0I7TUFDaEIsUUFBUTtNakNqSnhCLFFBQVE7TUFDUixtQ0FBMkI7Y0FBM0IsMkJBQTJCO01pQ2tKWCxjbEM3SEo7TWtDOEhJLHdCQUFnQjtNQUFoQixnQkFBZ0IsRUFBQTtNaEMya01sQztRZ0N4a01zQixZQUFZO1FBQ1osT0FBTyxFQUFBLEVBQ1Y7O0EvQnBKakI7RStCcEJSO0lBaUw0QixnQkFBZ0I7SUFDaEIsd0JBQWdCO0lBQWhCLGdCQUFnQixFQUFBLEVBRXZCOztBQXBMckI7RUEwTFksc0VBQXNFLEVBQUE7O0FoQ2drTWxGO0VnQzNqTWdCLFVBQVUsRUFBQTs7QUEvTDFCO0VBbU1nQixjQUFjLEVBQUE7RUFuTTlCO0lBdU13QixvQ0FBb0MsRUFBQTtFQXZNNUQ7SUE0TW9CLGdCQUFnQixFQUFBO0kvQnhMNUI7TStCcEJSO1FBK013QixnQkFBZ0IsRUFBQSxFQU12QjtJL0JqTVQ7TStCcEJSO1FBbU53QixlQUFlLEVBQUEsRUFFdEI7O0FBck5qQjtFQTROWSx3RUFBd0UsRUFBQTs7QUE1TnBGO0VBZ09ZLGdCQUFnQjtFQUNoQixxQkFBcUIsRUFBQTs7QUFqT2pDO0VBc09nQixnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWix5QmxDbE1FO0VrQ21NRiw2QmxDMU1rQixFQUFBO0VrQ2hDbEM7SUE2T29CLHlCbENuTEssRUFBQTs7QWtDMUR6QjtFQWtQZ0IsaUJBQWlCO0VBQ2pCLG9DQUFvQztFQUNwQyxvQ0FBb0M7RUFDcEMsV2xDNU5KO0VrQzZOSSxnQkFBZ0I7RUFDaEIsZUFBZSxFQUFBOztBQXZQL0I7RUE2UFEsb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYix5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQixFQUFBO0VBOVAzQjtJQWlRWSx5QmxDL01lO0lDZnZCLG9CQUR5QjtJQUN6QixvQkFEeUI7SUFDekIsYUFEeUI7SUFFekIseUJBRnlDO1FBRXpDLHNCQUZ5QztZQUV6QyxtQkFGeUM7SUFHekMsd0JBSDJEO1FBRzNELHFCQUgyRDtZQUczRCx1QkFIMkQ7SWlDaU9uRCxXQUFXO0lBQ1gsWUFBWTtJQUNaLGtCQUFrQjtJQUNsQixrQkFBa0IsRUFBQTtJaEN3aU0xQjtNZ0NyaU1ZLGVBQWU7TUFDZixpQkFBaUIsRUFBQTtJQTFRakM7TUE4UWdCLFdBQVcsRUFBQTtFQTlRM0I7SUFvUmdCLGdCQUFnQixFQUFBOztBQXBSaEM7RUEwUlEscUVBQXFFLEVBQUE7RUExUjdFO0lBNlJZLGdCQUFnQjtJQUNoQixnQkFBZ0IsRUFBQTs7QUE5UjVCO0VBbVNRLG9FQUFvRSxFQUFBO0UvQi9RcEU7SStCcEJSO01Bc1NZLGtCQUFrQixFQUFBLEVBK0N6QjtFQXJWTDtJQTBTWSx5QkFBbUI7UUFBbkIsc0JBQW1CO1lBQW5CLG1CQUFtQixFQUFBO0VoQ3loTTdCO0lnQ3BoTWMsVUFBVSxFQUFBO0VBL1MxQjtJQW9Ub0Isc0VBQXNFLEVBQUE7SWhDbWhNdEY7TWdDaGhNb0IsNkJBQTZCO01BQzdCLHVFQUF1RSxFQUFBO0kvQnBTdkY7TStCcEJSO1FBNFR3QixpQkFBaUIsRUFBQTtRaENpaE1qQztVZ0M5Z01vQixrQkFBa0IsRUFBQSxFQUNyQjtFQWhVekI7SUF1VVksaUJBQWlCLEVBQUE7SWhDMGdNekI7TWdDdmdNWSxnQkFBZ0IsRUFBQTtJL0J0VHhCO00rQnBCUjtRQThVZ0Isa0JBQWtCLEVBQUE7UWhDd2dNMUI7VWdDcmdNWSxrQkFBa0IsRUFBQSxFQUNyQjs7QS9COVRUO0UrQm9VUjtJQUVRLG1CQUFtQixFQUFBLEVBRTFCOztBQy9WRDs7NEJqQ2syTTRCO0FpQzF1TXhCO0VBQ0ksb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYix5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQjtFQUNuQix5QkFBOEI7TUFBOUIsc0JBQThCO1VBQTlCLDhCQUE4QjtFQUM5QixtQm5DL0RpQjtFbUNnRWpCLGVBQWU7RUFDZixZQUFZO0VsQ3ZHWixTQUFTO0VBQ1QsbUNBQTJCO1VBQTNCLDJCQUEyQjtFa0N1RzNCLGtCQUFrQjtFQUNsQiwwQkFBa0I7RUFBbEIsdUJBQWtCO0VBQWxCLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsV0FBVztFQUNYLG9EbkNyR1E7VW1DcUdSLDRDbkNyR1E7RW1Dc0dSLFVBQVU7RUFDViw0QkFBb0I7RUFBcEIsb0JBQW9CLEVBQUE7RWhDOUdwQjtJZ0NpR0o7TUFnQlEsV0FBVztNQUNYLFdBQVc7TUFDWCxXQUFXO01BQ1gsY0FBYztNQUNkLFVBQVU7TUFDVixjQUFjO01BQ2QsdUJBQWU7Y0FBZixlQUFlO01BQ2Ysa0JBQWtCO01BQ2xCLFVBQVUsRUFBQSxFQWdGakI7RWhDek1HO0lnQ2lHSjtNQTRCUSxZQUFZLEVBQUEsRUE0RW5CO0VoQ3pNRztJZ0NpR0o7TUFnQ1EsMEJBQWtCO01BQWxCLHVCQUFrQjtNQUFsQixrQkFBa0I7TUFDbEIsT0FBTztNQUNQLGtDQUEwQjtjQUExQiwwQkFBMEI7TUFDMUIsY0FBYyxFQUFBLEVBcUVyQjtFQXhHRDtJQXVDUSx5Qm5DN0hRLEVBQUE7RW1Dc0ZoQjtJQTJDUSx5Qm5DdkdVLEVBQUE7RW1DNERsQjtJQStDUSxVQUFVO0lBQ1YsY0FBYyxFQUFBO0VBaER0QjtJQW9EUSxXQUFXLEVBQUE7SWhDckpmO01nQ2lHSjtRQXVEWSxtQkFBbUIsRUFBQSxFQU0xQjtJaEM5SkQ7TWdDaUdKO1FBMkRZLFdBQVcsRUFBQSxFQUVsQjtFQTdETDtJQWdFUSxvQkFBYTtJQUFiLG9CQUFhO0lBQWIsYUFBYTtJQUNiLHlCQUFtQjtRQUFuQixzQkFBbUI7WUFBbkIsbUJBQW1CO0lBQ25CLHlCQUE4QjtRQUE5QixzQkFBOEI7WUFBOUIsOEJBQThCLEVBQUE7SWhDbktsQztNZ0NpR0o7UUFxRVksY0FBYztRQUNkLGtCQUFrQixFQUFBLEVBaUN6QjtJQXZHTDtNQTBFWSxrQkFBa0I7TUFDbEIsY0FBYztNQUNkLGdCQUFnQjtNQUNoQixzQkFBc0IsRUFBQTtNaEM5SzlCO1FnQ2lHSjtVQWdGZ0IsZ0JBQWdCLEVBQUEsRUFFdkI7SUFsRlQ7TUFzRmdCLGtCQUFrQjtNQUNsQixtQkFBbUI7TUFDbkIsMEJBQTBCLEVBQUE7TUF4RjFDO1FBMkZvQixXbkN2TFosRUFBQTtNR0xKO1FnQ2lHSjtVQStGb0Isa0JBQWtCLEVBQUEsRUFNekI7TWhDdE1UO1FnQ2lHSjtVQW1Hb0IsV0FBVyxFQUFBLEVBRWxCOztBQzdOakI7OzRCbENxN000QjtBa0NsN001QjtFQUNJLGtEQUFrRDtFQUNsRCwyQkFBMkI7RUFDM0Isd0JBQXdCO0VBQ3hCLFlBQVksRUFBQTtFQUpoQjtJbkNtQ0ksb0JBRHlCO0lBQ3pCLG9CQUR5QjtJQUN6QixhQUR5QjtJQUV6Qix5QkFGeUM7UUFFekMsc0JBRnlDO1lBRXpDLG1CQUZ5QztJQUd6Qyx3QkFIMkQ7UUFHM0QscUJBSDJEO1lBRzNELHVCQUgyRDtJbUMxQnZELGVBQWUsRUFBQTtJQVJ2QjtNQVdZLG9CQUFhO01BQWIsb0JBQWE7TUFBYixhQUFhO01BQ2IseUJBQW1CO1VBQW5CLHNCQUFtQjtjQUFuQixtQkFBbUI7TUFDbkIsV3BDWUE7TW9DWEEsWUFBWSxFQUFBO01BZHhCO1FBaUJnQixrQkFBa0I7UUFDbEIsa0JBQWtCLEVBQUE7UWxDbTdNMUI7VWtDaDdNWSxtQkFBbUI7VUFDbkIsaUJBQWlCLEVBQUE7UUF0QnJDO1VBMEJvQixXQUFXO1VBQ1gsNENBQW9DO2tCQUFwQyxvQ0FBb0MsRUFBQTtRQTNCeEQ7VW5DU0ksV0FEd0I7VUFFeEIsWUFGdUM7VUEyQnZDLG9CQUR5QjtVQUN6QixvQkFEeUI7VUFDekIsYUFEeUI7VUFFekIseUJBRnlDO2NBRXpDLHNCQUZ5QztrQkFFekMsbUJBRnlDO1VBR3pDLHdCQUgyRDtjQUczRCxxQkFIMkQ7a0JBRzNELHVCQUgyRDtVbUNEM0Msa0JBQWtCO1VBQ2xCLE1BQU07VUFDTixPQUFPO1VBQ1AseUJBQXlCO1VBQ3pCLGVBQWUsRUFBQTtNQXJDbkM7UUEwQ2dCLFdwQ2pCSixFQUFBO1FvQ3pCWjtVQTZDb0IsbUJBQW1CLEVBQUE7O0FDaER2Qzs7NEJuQ2crTTRCO0FtQzc5TTVCO0VBQ0ksbUJBQW1CLEVBQUE7O0FBR3ZCO0VBQ0ksVUFBVSxFQUFBOztBQUdkO0VBQ0ksb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYix5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQixFQUFBO0VBRnZCO0lBS1Esa0JBQWtCO0lBQ2xCLFdBQVc7SUFDWCxZQUFZO0lBQ1osZ0JBQWdCO0lBQ2hCLGtCQUFrQixFQUFBO0lBVDFCO01BWVksNkJBQXFCO01BQXJCLHFCQUFxQjtNQUNyQixXQUFXO01BQ1gsWUFBWTtNQUNaLG9CQUFpQjtTQUFqQixpQkFBaUIsRUFBQTtFQWY3QjtJQW9CUSxpQkFBaUIsRUFBQTtJbkN3OU1yQjtNbUNyOU1RLGtCQUFrQjtNQUNsQixrQkFBa0IsRUFBQTtJQXhCOUI7TUE2QmdCLGdCQUFnQixFQUFBO0lBN0JoQztNQWtDWSxrQkFBa0I7TUFDbEIsb0VBQW9FO01BQ3BFLGdCQUFnQjtNQUNoQixrQkFBa0IsRUFBQTtJQXJDOUI7TUF5Q1ksY3JDa0NnQjtNcUNqQ2hCLG9FQUFvRSxFQUFBOztBQUtoRjtFQUdZLFVBQVU7RUFDVix1QkFBdUIsRUFBQTs7QUFKbkM7RUFRWSxrQkFBa0I7RUFDbEIsb0NBQW9DO0VBQ3BDLFdyQ3hDQTtFcUN5Q0EscUNBQXFDLEVBQUE7RUFYakQ7SUFjZ0IsV3JDNUNKLEVBQUE7RXFDOEJaO0lBa0JnQixhQUFhLEVBQUE7O0FBbEI3QjtFQXdCZ0IscUJyQ3ZDTSxFQUFBOztBcUM2Q3RCOzs4Qm5DZzhNOEI7QW1DNzdNOUI7RUFDSSxvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYSxFQUFBO0VBRGpCO0lBSVEsd0JBQXVCO1FBQXZCLHFCQUF1QjtZQUF2Qix1QkFBdUIsRUFBQTtFQUovQjtJQVNZLG9FQUFvRSxFQUFBO0luQzI3TTVFO01tQ3g3TVksa0JBQWtCO01BQ2xCLHFFQUFxRSxFQUFBO0VBYnJGO0lBbUJRLGdFQUFnRTtJQUNoRSxpRUFBaUU7SUFDakUseUJyQ2xGUTtJQ1FaLG9CQUR5QjtJQUN6QixvQkFEeUI7SUFDekIsYUFEeUI7SUFFekIseUJBRnlDO1FBRXpDLHNCQUZ5QztZQUV6QyxtQkFGeUM7SUFHekMsd0JBSDJEO1FBRzNELHFCQUgyRDtZQUczRCx1QkFIMkQ7SW9DNkV2RCxrQkFBa0IsRUFBQTtJQXZCMUI7TUE0Qlksb0VBQW9FLEVBQUE7SUE1QmhGO01BZ0NZLHlCckN6RlEsRUFBQTtNR1haO1FrQ29FUjtVQW1DZ0Isb0NBQW9DLEVBQUEsRUFjM0M7TUFqRFQ7UUF1Q2dCLGNyQ3BHQSxFQUFBO1FHUFI7VWtDb0VSO1lBMENvQixlQUFlLEVBQUEsRUFNdEI7UWxDcEhMO1VrQ29FUjtZQThDb0IsV3JDN0dSLEVBQUEsRXFDK0dDO0lBaERiO01Bb0RZLFdyQ25IQSxFQUFBOztBcUN3SFo7OzhCbkMwNk04QjtBbUN2Nk05QjtFQUNJLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsWUFBWSxFQUFBO0VBSGhCO0lBTVEsZUFBZTtJQUNmLHlCQUF5QjtJQUN6QixjQUFjO0lBQ2QsZUFBZTtJQUNmLDBCckNqSVM7SXFDa0lULDZCckNsSVM7SXFDbUlULFdBQVc7SUFDWCx5QkFBeUIsRUFBQTs7QUFJakM7RUFFUSxhQUFhLEVBQUE7O0FBSXJCOzs4Qm5DbzZNOEI7QW1DajZNOUI7RUFDSSxpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLG1CckMxSWM7RUNKZCxvQkFEeUI7RUFDekIsb0JBRHlCO0VBQ3pCLGFBRHlCO0VBRXpCLHlCQUZ5QztNQUV6QyxzQkFGeUM7VUFFekMsbUJBRnlDO0VBR3pDLHdCQUgyRDtNQUczRCxxQkFIMkQ7VUFHM0QsdUJBSDJEO0VvQ2lKM0Qsa0VBQWtFLEVBQUE7RUFMdEU7SUFRUSxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGtCQUFrQjtJQUNsQixNQUFNO0lBQ04sT0FBTztJQUNQLCtCQUF1QjtZQUF2Qix1QkFBdUIsRUFBQTtJQWIvQjtNQWdCWSxrQkFBa0I7TUFDbEIsTUFBTTtNQUNOLFVBQVU7TUFDVixXQUFXO01BQ1gsNEhBQTRIO01BQzVILFdBQVc7TUFDWCxnQnJDM0tBO01xQzRLQSxtQkFBbUI7TUFDbkIsMkJBQW1CO2NBQW5CLG1CQUFtQjtNQUNuQixVQUFVLEVBQUE7TUF6QnRCO1FBNEJnQiw4QkFBc0I7Z0JBQXRCLHNCQUFzQjtRQUN0QixVQUFVO1FBQ1YsWUFBWTtRQUNaLFdBQVcsRUFBQTtNQS9CM0I7UXBDMUtJLFdBRG1DO1FBRW5DLGtCQUZxQjtRb0MrTVQsV0FBVztRQUNYLFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsVUFBVTtRQUNWLDBDckM3TEo7UXFDOExJLE9BQU87UUFDUCw4QkFBc0I7Z0JBQXRCLHNCQUFzQixFQUFBO0lBMUN0QztNQStDWSxXQUFXO01BQ1gsaUJBQWlCO01BQ2pCLGVBQWU7TUFDZixnQkFBZ0I7TUFDaEIsc0VBQXNFO01BQ3RFLHlCQUF5QjtNQUN6QixrQkFBa0IsRUFBQTtNQXJEOUI7UXBDMUtJLFdBRG1DO1FBRW5DLGtCQUZxQjtRb0NvT1QsVUFBVTtRQUNWLFlBQVk7UUFDWixNQUFNO1FBQ04saUVBQWlFO1FBQ2pFLDhCQUE4QixFQUFBO1FuQzg1TXRDO1VtQzM1TVksV0FBVztVQUNYLGtFQUFrRSxFQUFBO01BakV0RjtRQXNFZ0Isb0VBQW9FO1FBQ3BFLHFFQUFxRTtRQUNyRSxnQkFBZ0IsRUFBQTtJQXhFaEM7TUE2RVksdUVBQXVFO01BQ3ZFLGtCQUFrQjtNQUNsQixxRHJDak9FO2NxQ2lPRiw2Q3JDak9FO01DT1Ysb0JBRHlCO01BQ3pCLG9CQUR5QjtNQUN6QixhQUR5QjtNQUV6Qix5QkFGeUM7VUFFekMsc0JBRnlDO2NBRXpDLG1CQUZ5QztNQUd6Qyx3QkFIMkQ7VUFHM0QscUJBSDJEO2NBRzNELHVCQUgyRCxFQUFBO01vQzRJL0Q7UUFtRmdCLGlCQUFpQjtRQUNqQixtQkFBbUI7UUFDbkIsV3JDMU9KLEVBQUE7UUVrb05KO1VtQ3I1TVksY0FBYztVQUNkLGtCQUFrQixFQUFBO01BekZ0QztRQThGZ0IsNkRBQTZELEVBQUE7TUE5RjdFO1FBa0dnQix5QnJDNUxHLEVBQUE7UXFDMEZuQjtVQXFHb0IsV3JDMVBSO1VxQzJQUSxlQUFlLEVBQUE7TUF0R25DO1FBMkdnQixXckMvUEosRUFBQTtRcUNvSlo7VUE4R29CLGVBQWU7VUFDZixXckNuUVIsRUFBQTtJcUNvSlo7TUFxSFksV0FBVztNQUNYLFdBQVc7TUFDWCxrQkFBa0I7TUFDbEIsNEJyQzNRSTtNcUM0UUosb0VBQW9FO01BQ3BFLHFFQUFxRTtNQUNyRSxnQkFBZ0IsRUFBQTtNQTNINUI7UUE4SGdCLG1FQUFtRSxFQUFBO0lBOUhuRjtNQW1JWSxzREFBOEM7TUFBOUMsOENBQThDLEVBQUE7TUFuSTFEOzs7UUF3SWdCLHNEQUE4QztRQUE5Qyw4Q0FBOEMsRUFBQTtJQXhJOUQ7TUE2SVksc0RBQThDO01BQTlDLDhDQUE4QyxFQUFBO01BN0kxRDtRQWdKZ0Isc0RBQThDO1FBQTlDLDhDQUE4QyxFQUFBO0lBaEo5RDtNQXdKZ0Isc0RBQThDO01BQTlDLDhDQUE4QyxFQUFBO0lBeEo5RDtNQTZKWSxzREFBOEM7TUFBOUMsOENBQThDLEVBQUE7SUE3SjFEOzs7OztNQXFLWSxzREFBOEM7TUFBOUMsOENBQThDLEVBQUE7SUFySzFEO01BeUtZLFdBQVc7TUFDWCxXQUFXLEVBQUE7TUExS3ZCOzs7UUErS2dCLFdBQVc7UUFDWCxXQUFXLEVBQUE7SUFoTDNCO01BcUxZLFdBQVc7TUFDWCxXQUFXLEVBQUE7TUF0THZCO1FBeUxnQixXQUFXO1FBQ1gsV0FBVyxFQUFBO0lBMUwzQjtNQStMWSxxRUFBcUU7TUFDckUsWUFBWSxFQUFBO0lBaE14QjtNQW9NWSxrQkFBa0IsRUFBQTtNQXBNOUI7UUF1TWdCLGtCQUFrQixFQUFBO0lBdk1sQztNQTRNWSxrQkFBa0IsRUFBQTtNQTVNOUI7UUErTWdCLGtCQUFrQixFQUFBO0lBL01sQztNQXFOZ0IsWUFBWTtNQUNaLFNBQVM7TUFDVCxZQUFZO01BQ1osdUJBQXVCO01BQ3ZCLGlDckNsUkc7TXFDbVJILGVBQWU7TUFDZixjckM5V0E7TXFDK1dBLGdCQUFnQixFQUFBO0lBNU5oQztNQWdPZ0IsaUNyQ3pSRztNcUMwUkgsb0VBQW9FO01BQ3BFLDRCckNyWEE7TXFDc1hBLGdCQUFnQixFQUFBO01Bbk9oQztRQXNPb0Isb0VBQW9FLEVBQUE7SUF0T3hGO01BNk9nQixpQ3JDdFNHO01xQ3VTSCxlQUFlO01BQ2YsNEJyQ2xZQTtNcUNtWUEsZ0JBQWdCLEVBQUE7SUFoUGhDOztNQXdQZ0IsV0FBVztNQUNYLFdBQVc7TUFDWCxrQkFBa0I7TUFDbEIsU0FBUztNQUNULE9BQU8sRUFBQTtNbkNtMU1qQjs7UW1DaDFNYyxXQUFXO1FBQ1gsUUFBUSxFQUFBO0lBaFE1QjtNQXFRZ0IsV0FBVztNQUNYLGtDckN6WkE7TXFDMFpBLFVBQVUsRUFBQTtJQXZRMUI7TUEyUWdCLDhCQUE4QjtNQUM5QixVQUFVO01BQ1YsUUFBUSxFQUFBO0lBN1F4QjtNQW1SZ0IsZ0JyQ3hhSixFQUFBO0lxQ3FKWjtNQXVSZ0Isb0NyQzVhSixFQUFBO0lxQ3FKWjtNQTZSZ0Isa0JBQWtCO01BQ2xCLFNBQVM7TUFDVCxPQUFPO01BQ1AsVUFBVTtNQUNWLGVBQWU7TUFDZixpQkFBaUI7TUFDakIsY3JDclpJLEVBQUE7SXFDa0hwQjtNQXdTWSxnQkFBZ0I7TUFDaEIsbUVBQW1FO01BQ25FLGdCQUFnQjtNQUNoQixVQUFVLEVBQUE7TUEzU3RCO1FBOFNnQixnQkFBZ0IsRUFBQTtNQTlTaEM7UUFtVG9CLFdBQVc7UUFDWCxRQUFRO1FBQ1Isb0NBQW9DO1FBQ3BDLG9DQUFvQztRQUNwQyxnQkFBZ0I7UUFDaEIsZUFBZTtRQUNmLFdyQzljUjtRcUMrY1Esa0VBQWtFO1FBQ2xFLGtCQUFrQixFQUFBO1FBM1R0QztVQThUd0IsY0FBYztVQUNkLGdCQUFnQixFQUFBO01BL1R4QztRQXFVZ0IsV0FBVztRQUNYLFFBQVE7UUFDUiw2QkFBNkI7UUFDN0IsdUNyQzNkQTtRcUM0ZEEsZ0JBQWdCO1FBQ2hCLGVBQWU7UUFDZiw0QnJDOWRBO1FxQytkQSxrRUFBa0UsRUFBQTtNQTVVbEY7UUFnVmdCLHNCckNyZUo7UXFDc2VJLHlCQUF5QjtRQUN6QixZQUFZLEVBQUE7TUFsVjVCO1FBdVZvQiw2QkFBNkI7UUFDN0Isc0JBQXdCO1FBQ3hCLG9DQUFvQyxFQUFBO1FBelZ4RDtVQTRWd0IsVUFBVTtVQUNWLDJCQUFtQjtrQkFBbkIsbUJBQW1CO1VBQ25CLGFBQWEsRUFBQTtRQTlWckM7VUFrV3dCLFVBQVU7VUFDVix3Q0FBaUM7a0JBQWpDLGdDQUFpQztVQUNqQyxjQUFjLEVBQUE7TUFwV3RDO1FwQ3JLSSxXQUR3QjtRQUV4QixZQUZ1QztRb0NnaEJ2QixrQkFBa0I7UUFDbEIsTUFBTTtRQUNOLE9BQU87UUFDUCxlQUFlO1FBQ2YsMENBQWtDO2dCQUFsQyxrQ0FBa0M7UUFDbEMsYUFBYSxFQUFBO01BL1dqQztRQW9YZ0IsZUFBZTtRQUNmLGtCQUFrQjtRQUNsQixVQUFVLEVBQUE7SUF0WDFCO01BMlhZLFdBQVc7TUFDWCxZQUFZO01BQ1osaUJBQWlCO01BQ2pCLDRCckNqaEJJO01xQ2toQkosb0VBQW9FO01BQ3BFLG1CQUFtQixFQUFBO01BaFkvQjtRQW1ZZ0IseUJBQXlCLEVBQUE7SUFuWXpDO01Bd1lZLFdBQVc7TUFDWCxrQkFBa0I7TUFDbEIsNEJyQzdoQkk7TXFDOGhCSixvRUFBb0U7TUFDcEUsaUJBQWlCO01BQ2pCLGtCQUFrQixFQUFBO01BN1k5QjtRQWdaZ0Isc0JyQ3JpQko7UXFDc2lCSSxVQUFVO1FBQ1YsZUFBZSxFQUFBO01BbFovQjtRcEMxS0ksV0FEbUM7UUFFbkMsa0JBRnFCO1FBWWpCLFFBQVE7UUFDUixtQ0FBMkI7Z0JBQTNCLDJCQUEyQjtRb0NzakJuQixPQUFPO1FBQ1AsV0FBVztRQUNYLFdBQVc7UUFDWCw0QnJDOWlCQTtRcUMraUJBLFdBQVcsRUFBQTtJQTVaM0I7TXBDcktJLFdBRHdCO01BRXhCLFlBRnVDO01vQ3drQi9CLGtCQUFrQjtNQUNsQixNQUFNO01BQ04sT0FBTztNQUNQLGlCQUFpQjtNQUNqQixtQkFBbUI7TUFDbkIsNEJBQTRCLEVBQUE7TUF2YXhDOzs7UUE0YWdCLFlBQVk7UUFDWixrQkFBa0I7UUFDbEIsc0JBQXdCO1FBQ3hCLGFBQWEsRUFBQTtNQS9hN0I7UUFtYmdCLFVBQVUsRUFBQTtNQW5iMUI7UUF1YmdCLGdCQUFnQixFQUFBO1FBdmJoQzs7VUEyYm9CLFdyQ2hsQlIsRUFBQTtNcUNxSlo7O1FBaWNnQixjQUFjLEVBQUE7UUFqYzlCOztVQW9jb0IsY0FBYyxFQUFBO0lBcGNsQzs7TUEyY1ksWUFBWTtNQUNaLGFBQWE7TUFDYixrQkFBa0I7TUFDbEIsOEJBQThCO01BQzlCLGtCQUFrQjtNQUNsQixTQUFTO01BQ1QsWUFBWTtNQUNaLGVBQWU7TUFDZixZQUFZO01BQ1osb0NBQTRCO2NBQTVCLDRCQUE0QixFQUFBO0lBcGR4Qzs7TUEwZGdCLGtCQUFrQjtNQUNsQixNQUFNO01BQ04sUUFBUTtNcENqb0JwQixXQUR3QjtNQUV4QixZQUZ1QyxFQUFBO0lvQ3NLM0M7Ozs7TXBDMUtJLFdBRG1DO01BRW5DLGtCQUZxQjtNb0NpcEJiLGdCckMzbkJBO01DQUosUUFBUTtNQUNSLFNBQVM7TUFDVCx3Q0FBZ0M7Y0FBaEMsZ0NBQWdDLEVBQUE7SW9DbUp4Qzs7TUE0ZVksV0FBVztNQUNYLFdBQVcsRUFBQTtJQTdldkI7O01Ba2ZZLFlBQVk7TUFDWixVQUFVLEVBQUE7SUFuZnRCOztNQXdmWSxRQUFRO01BQ1IsVUFBVTtNQUNWLG9EQUE0QztjQUE1Qyw0Q0FBNEMsRUFBQTs7QUFLeEQ7OzhCbkMwd004QjtBbUN2d005QjtFQUVRLGtCQUFrQixFQUFBO0VBRjFCO0lBS1ksVUFBVSxFQUFBOztBQUx0QjtFcEM3b0JJLG9CQUR5QjtFQUN6QixvQkFEeUI7RUFDekIsYUFEeUI7RUFFekIseUJBRnlDO01BRXpDLHNCQUZ5QztVQUV6QyxtQkFGeUM7RUFHekMsd0JBSDJEO01BRzNELHFCQUgyRDtVQUczRCx1QkFIMkQ7RW9DeXBCdkQsa0JBQWtCO0VBQ2xCLGtFQUFrRTtFQUNsRSxxRUFBcUUsRUFBQTtFQWI3RTtJQWdCWSx3RUFBd0U7SUFDeEUsY3JDdHFCSTtJcUN1cUJKLG9FQUFvRTtJQUNwRSxnQkFBZ0IsRUFBQTtFQW5CNUI7SUF1QlksZUFBZTtJQUNmLGdCQUFnQjtJQUNoQixjckNwcUJRLEVBQUE7O0FxQ3lxQnBCOzs4Qm5Da3dNOEI7QW1DL3ZNOUI7RUFFUSxXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixPQUFPO0VBQ1AsK0JBQXVCO1VBQXZCLHVCQUF1QixFQUFBO0VBTi9CO0lBVWdCLGdCQUFnQixFQUFBO0VBVmhDO0lBY2dCLGdCQUFnQjtJQUNoQixnQkFBZ0I7SUFDaEIsY3JDNW9CTTtJcUM2b0JOLGdCQUFnQjtJQUNoQixvRUFBb0UsRUFBQTtFQWxCcEY7SUF1Qlksa0JBQWtCO0lBQ2xCLE1BQU07SUFDTixVQUFVO0lBQ1YsV0FBVztJQUNYLFdBQVc7SUFDWCxnQnJDcHRCQTtJcUNxdEJBLG1CQUFtQjtJQUNuQiwyQkFBbUI7WUFBbkIsbUJBQW1CO0lBQ25CLFVBQVUsRUFBQTtFQS9CdEI7SUFtQ1ksc0RBQThDO0lBQTlDLDhDQUE4QyxFQUFBO0lBbkMxRDs7OztNQXlDZ0Isc0RBQThDO01BQTlDLDhDQUE4QyxFQUFBO0VBekM5RDtJQThDWSxxRUFBcUU7SUFDckUsWUFBWSxFQUFBO0VBL0N4QjtJQW1EWSxrQkFBa0IsRUFBQTtJQW5EOUI7TUFzRGdCLGtCQUFrQixFQUFBO0lBdERsQztNQTBEZ0Isa0JBQWtCO01BQ2xCLFdBQVcsRUFBQTtFQTNEM0I7O0lBbUVnQixZQUFZO0lBQ1osU0FBUztJQUNULFlBQVk7SUFDWix1QkFBdUI7SUFDdkIsaUNyQ25xQkc7SXFDb3FCSCxlQUFlO0lBQ2YsNEJyQy92QkE7SXFDZ3dCQSxnQkFBZ0IsRUFBQTtFQTFFaEM7SUE4RWdCLGlDckMxcUJHO0lxQzJxQkgsb0VBQW9FO0lBQ3BFLDRCckN0d0JBO0lxQ3V3QkEsZ0JBQWdCLEVBQUE7SUFqRmhDO01Bb0ZvQixvRUFBb0UsRUFBQTtFQXBGeEY7O0lBNkZnQixXQUFXO0lBQ1gsV0FBVztJQUNYLGtCQUFrQjtJQUNsQixTQUFTO0lBQ1QsT0FBTyxFQUFBO0VBakd2QjtJQXFHZ0IsV0FBVztJQUNYLGlDckM1eEJBO0lxQzZ4QkEsVUFBVSxFQUFBO0VBdkcxQjtJQTJHZ0IsOEJBQThCO0lBQzlCLFVBQVU7SUFDVixRQUFRLEVBQUE7RUE3R3hCO0lBa0hZLGtCQUFrQjtJQUNsQixTQUFTO0lBQ1QsT0FBTztJQUNQLFVBQVU7SUFDVixlQUFlO0lBQ2YsaUJBQWlCO0lBQ2pCLGNyQ3B2QlUsRUFBQTs7QXFDNG5CdEI7RUE4SFksV0FBVztFQUNYLG9FQUFvRTtFQUNwRSxtQkFBbUIsRUFBQTs7QUFoSS9CO0VBcUlRLHlCckN2ekJZO0VxQ3d6QlosWUFBWTtFQUNaLGtFQUFrRTtFQUNsRSxvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CLEVBQUE7RUF6STNCO0lBNElZLGdCQUFnQjtJQUNoQixnQkFBZ0I7SUFDaEIsbUJBQW1CO0lBQ25CLG9FQUFvRSxFQUFBO0VBL0loRjtJQW1KWSxnQkFBZ0I7SUFDaEIsbUJBQW1CLEVBQUE7RUFwSi9CO0lBd0pZLGdCQUFnQjtJQUNoQixvQkFBYTtJQUFiLG9CQUFhO0lBQWIsYUFBYTtJQUNiLHdCQUF1QjtRQUF2QixxQkFBdUI7WUFBdkIsdUJBQXVCLEVBQUE7SUExSm5DO01BNkpnQix1QkFBdUI7TUFDdkIsc0VBQXNFLEVBQUE7TW5DOHNNaEY7UW1DM3NNYyxrQkFBa0I7UUFDbEIsdUVBQXVFLEVBQUE7TWxDLzFCbkY7UWtDNnJCUjtVQXNLb0Isd0JBQXdCLEVBQUEsRUFrQi9CO01BeExiO1FBMEtvQixtQkFBbUI7UUFDbkIsZ0JBQWdCLEVBQUE7TUEzS3BDO1FBK0tvQixnQkFBZ0I7UUFDaEIscUJBQXFCO1FBQ3JCLGlCQUFpQixFQUFBO1FBakxyQztVQW9Md0IsYUFBYTtVQUNiLG1CQUFtQixFQUFBO0lBckwzQztNQTJMZ0IsZ0VBQWdFO01BQ2hFLGlFQUFpRTtNQUNqRSxtQkFBbUI7TXBDMzJCL0Isb0JBRHlCO01BQ3pCLG9CQUR5QjtNQUN6QixhQUR5QjtNQUV6Qix5QkFGeUM7VUFFekMsc0JBRnlDO2NBRXpDLG1CQUZ5QztNQUd6Qyx3QkFIMkQ7VUFHM0QscUJBSDJEO2NBRzNELHVCQUgyRDtNb0M4MkIvQyxrQkFBa0I7TUFDbEIsZ0JBQWdCLEVBQUE7TUFoTWhDO1FBbU1vQixnRUFBZ0U7UUFDaEUsMEJBQTBCLEVBQUE7TUFwTTlDO1FwQzdzQkksV0FEbUM7UUFFbkMsa0JBRnFCO1FBTXJCLFdBRHdCO1FBRXhCLFlBRnVDO1FvQ201QnZCLE9BQU87UUFDUCxNQUFNO1FBQ04sb0NBQW9DO1FBQ3BDLGFBQWE7UUFDYixtQkFBbUIsRUFBQTs7QUFPdkM7OzhCbkNnc004QjtBbUM3ck05QjtFQUNJLHdFQUF3RTtFQUN4RSxrQkFBa0IsRUFBQTtFQUZ0QjtJQUtRLG9FQUFvRTtJQUNwRSxnQkFBZ0I7SUFDaEIsY0FBYztJQUNkLGlCQUFpQjtJQUNqQixvQkFBb0IsRUFBQTs7QUFJNUI7RUFDSSxrQkFBa0IsRUFBQTtFQUR0QjtJQUlRLGtCQUFrQjtJQUNsQixrRUFBa0U7SUFDbEUsbUJBQW1CO0lBQ25CLFlBQVk7SUFDWiw2QkFBcUI7SUFBckIscUJBQXFCO0lBQ3JCLFVBQVU7SUFDVixzQnJDdjZCSTtJcUN3NkJKLHNEckN0NkJRO1lxQ3M2QlIsOENyQ3Q2QlEsRUFBQTtJcUMyNUJoQjtNQWNZLFdBQVc7TUFDWCxZQUFZO01wQ2w2QnBCLG9CQUR5QjtNQUN6QixvQkFEeUI7TUFDekIsYUFEeUI7TUFFekIseUJBRnlDO1VBRXpDLHNCQUZ5QztjQUV6QyxtQkFGeUM7TUFHekMsd0JBSDJEO1VBRzNELHFCQUgyRDtjQUczRCx1QkFIMkQ7TW9DcTZCbkQsY0FBYyxFQUFBO01BakIxQjtRQW9CZ0Isc0JBQW1CO1dBQW5CLG1CQUFtQixFQUFBO0lBcEJuQztNQXlCWSxxRUFBcUU7TUFDckUsb0VBQW9FO01BQ3BFLGdCQUFnQjtNQUNoQixjckN2N0JJLEVBQUE7SXFDMjVCaEI7TUFnQ1ksY3JDajdCUTtNcUNrN0JSLGdCQUFnQjtNQUNoQixnQkFBZ0I7TUFDaEIsZ0JBQWdCO01BQ2hCLG1CQUFtQjtNQUNuQixtQkFBbUI7TUFDbkIsc0JBQXNCLEVBQUE7O0FBS2xDO0VBRVEsb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYix3QkFBdUI7TUFBdkIscUJBQXVCO1VBQXZCLHVCQUF1QjtFQUN2QixnQkFBZ0I7RUFDaEIsU0FBUyxFQUFBO0VBTGpCO0lBU2dCLGNBQWMsRUFBQTtFQVQ5QjtJQWNZLG9CQUFhO0lBQWIsb0JBQWE7SUFBYixhQUFhO0lBQ2Isd0JBQXVCO1FBQXZCLHFCQUF1QjtZQUF2Qix1QkFBdUI7SUFDdkIsa0JBQWtCO0lBQ2xCLG9CQUFvQjtJQUNwQixpQkFBaUI7SUFDakIsY3JDejlCSSxFQUFBO0lxQ3M4QmhCO01wQzc5QkksV0FEbUM7TUFFbkMsa0JBRnFCO01vQ3EvQlQsV0FBVztNQUNYLFdBQVc7TUFDWCxTQUFTO01BQ1QsT0FBTztNQUNQLDJDQUEyQyxFQUFBO01sQ3grQm5EO1FrQzY4QlI7VUE4Qm9CLFVBQVUsRUFBQSxFQUVqQjtJQWhDYjtNQW1DZ0IsZ0JBQWdCO01BQ2hCLG9FQUFvRSxFQUFBO0lBcENwRjtNQXdDZ0Isb0VBQW9FO01BQ3BFLGdCQUFnQjtNQUNoQixpQkFBaUIsRUFBQTtNbkN3cU0zQjtRbUNycU1jLGNBQWM7UUFDZCxrQkFBa0IsRUFBQTtJQTlDdEM7TUFtRGdCLGdCQUFnQixFQUFBOztBQU1oQztFQUNJLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2Isd0JBQXVCO01BQXZCLHFCQUF1QjtVQUF2Qix1QkFBdUIsRUFBQTtFQUYzQjtJQUtRLHFFQUFxRSxFQUFBO0VBTDdFO0lBU1EsZ0VBQWdFO0lBQ2hFLFlBQVk7SUFDWixnQkFBZ0IsRUFBQTtFQVh4QjtJQWVRLGlCQUFpQjtJQUNqQix1QkFBdUIsRUFBQTtJbkMycE0zQjtNbUN4cE1RLGNBQWM7TUFDZCxrQkFBa0IsRUFBQTtJQXBCOUI7TUF3Qlksb0VBQW9FO01BQ3BFLGdCQUFnQjtNQUNoQixnQkFBZ0I7TUFDaEIsZ0JBQWdCO01BQ2hCLGdCQUFnQixFQUFBO0lBNUI1QjtNQWdDWSxvRUFBb0U7TUFDcEUsZ0JBQWdCO01BQ2hCLHNCQUFzQjtNQUN0QixtQkFBbUI7TUFDbkIsZ0JBQWdCLEVBQUE7O0FBSzVCOzs4Qm5Db3BNOEI7QW1DanBNOUI7RUFFUSxrQkFBa0I7RUFDbEIsa0VBQWtFO0VBQ2xFLHNCckNqakNJO0VxQ2tqQ0osa0RyQ2hqQ1E7VXFDZ2pDUiwwQ3JDaGpDUTtFcUNpakNSLGtCQUFrQjtFQUNsQiw2QkFBcUI7RUFBckIscUJBQXFCO0VBQ3JCLGdCQUFnQixFQUFBO0VBUnhCO0lBV1ksK0NyQ3ZqQ0E7WXFDdWpDQSx1Q3JDdmpDQTtJcUN3akNBLG1DQUEyQjtZQUEzQiwyQkFBMkIsRUFBQTtJQVp2QztNQWdCb0IsYUFBYSxFQUFBO0lBaEJqQztNQW9Cb0IsYUFBYSxFQUFBO0VBcEJqQztJQTBCWSxvQkFBYTtJQUFiLG9CQUFhO0lBQWIsYUFBYTtJQUNiLHlCQUFtQjtRQUFuQixzQkFBbUI7WUFBbkIsbUJBQW1CLEVBQUE7SUEzQi9CO01BOEJnQixnQkFBZ0I7TUFDaEIsa0JBQWtCO01BQ2xCLFVBQVU7TUFDVixXQUFXO01BQ1gsZ0NBQXdCO2NBQXhCLHdCQUF3QjtNQUN4Qix5QkFBeUI7TUFDekIsYUFBYTtNQUNiLDZCQUFxQjtNQUFyQixxQkFBcUIsRUFBQTtJQXJDckM7TUF5Q2dCLGdCQUFnQjtNQUNoQixrQkFBa0I7TUFDbEIsYUFBYTtNQUNiLFlBQVk7TUFDWixnQ0FBd0I7Y0FBeEIsd0JBQXdCO01BQ3hCLHlCQUF5QjtNQUN6QixhQUFhO01BQ2IsNkJBQXFCO01BQXJCLHFCQUFxQixFQUFBO0lBaERyQztNQW9EZ0Isa0JBQWtCO01BQ2xCLGdFQUFnRTtNQUNoRSxpRUFBaUU7TUFDakUsZ0JBQWdCO01BQ2hCLGtCQUFrQixFQUFBO01BeERsQztRQTJEb0IsNkJBQXFCO1FBQXJCLHFCQUFxQjtRQUNyQixXQUFXO1FBQ1gsb0JBQWlCO1dBQWpCLGlCQUFpQixFQUFBO0lBN0RyQztNQWtFZ0IsYUFBYSxFQUFBO01BbEU3QjtRQXFFb0IsZUFBZSxFQUFBO0lBckVuQztNQTBFZ0Isb0VBQW9FLEVBQUE7TW5DNG5NOUU7UW1Dem5NYyxjQUFjO1FBQ2QscUVBQXFFLEVBQUE7TUE5RXpGO1FBa0ZvQixrQkFBa0I7UUFDbEIsb0VBQW9FO1FBQ3BFLGdCQUFnQjtRQUNoQixlQUFlLEVBQUE7TUFyRm5DO1FBeUZvQixjckM1a0NRO1FxQzZrQ1IsbUJBQW1CO1FBQ25CLG9FQUFvRSxFQUFBO0VBM0Z4RjtJQWtHZ0IsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQixjckN2bENZO0lxQ3dsQ1osc0JBQXNCO0lBQ3RCLGdCQUFnQjtJQUNoQixlQUFlO0lBQ2YsbUJBQW1CO0lBQ25CLHFCQUFhO1FBQWIsaUJBQWE7WUFBYixhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLGtCQUFrQjtJQUNsQixnQkFBZ0IsRUFBQTtJQTVHaEM7TUErR29CLGNBQWMsRUFBQTs7QUFPbEM7OzhCbkM2bU04QjtBbUMxbU05QjtFQUVRLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsY0FBYztFQUNkLFVBQVU7RUFDVixlQUFlLEVBQUE7RUFOdkI7SUFTWSxTQUFTO0lBQ1QsVUFBVSxFQUFBOztBQVZ0QjtFQWdCWSxnQkFBZ0I7RUFDaEIsVUFBVTtFcEM3cUNsQixvQkFEeUI7RUFDekIsb0JBRHlCO0VBQ3pCLGFBRHlCO0VBRXpCLHlCQUZ5QztNQUV6QyxzQkFGeUM7VUFFekMsbUJBRnlDO0VBR3pDLHdCQUgyRDtNQUczRCxxQkFIMkQ7VUFHM0QsdUJBSDJELEVBQUE7RW9DNnBDL0Q7SUFxQmdCLHFCQUFxQjtJQUNyQixpQkFBaUI7SUFDakIsZUFBZTtJQUNmLDZCQUE2QjtJcENwckN6QyxvQkFEeUI7SUFDekIsb0JBRHlCO0lBQ3pCLGFBRHlCO0lBRXpCLHlCQUZ5QztRQUV6QyxzQkFGeUM7WUFFekMsbUJBRnlDO0lBR3pDLHdCQUgyRDtRQUczRCxxQkFIMkQ7WUFHM0QsdUJBSDJEO0lvQ3VyQy9DLGtCQUFrQjtJQUNsQixvRUFBb0U7SUFDcEUsNkJBQTZCO0lBQzdCLGdCQUFnQjtJQUNoQixjckN4ckNJO0lxQ3lyQ0osa0JBQWtCO0lBQ2xCLDBIQUEwSCxFQUFBO0lBaEMxSTtNQW1Db0IsZ0JBQWdCO01BQ2hCLG1CQUFtQixFQUFBO0lBcEN2QztNQXlDd0IseUJBQXlCLEVBQUE7SUF6Q2pEO01BOENvQixXckNwdENSO01xQ3F0Q1Esb0NBQW9DLEVBQUE7TUEvQ3hEO1FBa0R3QixXckN4dENaLEVBQUE7O0FxQ3NxQ1o7RUEwRFEsa0JBQWtCO0VBQ2xCLGdCQUFnQixFQUFBO0VBM0R4QjtJQStEZ0IsV0FBVztJQUNYLGFBQWE7SUFDYixvQkFBaUI7T0FBakIsaUJBQWlCLEVBQUE7RUFqRWpDO0lBc0VZLDZCQUFxQjtJQUFyQixxQkFBcUI7SUFDckIsV0FBVyxFQUFBO0VBdkV2QjtJQTRFZ0IsTUFBTTtJQUNOLFVBQVUsRUFBQTtJQTdFMUI7TUFnRm9CLFVBQVUsRUFBQTtFQWhGOUI7SUFzRlksa0JBQWtCO0lBQ2xCLFFBQVE7SUFDUixPQUFPO0lwQzl3Q2YsV0FEd0I7SUFFeEIsWUFGdUM7SW9DaXhDL0IsNkJBQXFCO0lBQXJCLHFCQUFxQjtJQUNyQixvQkFBYTtJQUFiLG9CQUFhO0lBQWIsYUFBYTtJQUNiLHNCQUFxQjtRQUFyQixtQkFBcUI7WUFBckIscUJBQXFCO0lBQ3JCLHdCQUF1QjtRQUF2QixxQkFBdUI7WUFBdkIsdUJBQXVCO0lBQ3ZCLFVBQVU7SUFDVixhQUFhLEVBQUE7SUEvRnpCO01Ba0dnQixzQnJDeHdDSjtNcUN5d0NJLGNyQ3Z3Q0E7TXFDd3dDQSxvQkFBYTtNQUFiLG9CQUFhO01BQWIsYUFBYTtNQUNiLHlCQUFtQjtVQUFuQixzQkFBbUI7Y0FBbkIsbUJBQW1CO01BQ25CLDZCQUFxQjtNQUFyQixxQkFBcUI7TUFDckIsV0FBVztNQUNYLGFBQWE7TUFDYixhQUFhO01BQ2Isa0JBQWtCO01BQ2xCLGtCQUFrQjtNQUNsQixVQUFVLEVBQUE7TUE1RzFCO1FBK0dvQixvRUFBb0U7UUFDcEUsZ0JBQWdCO1FBQ2hCLDZCQUFxQjtRQUFyQixxQkFBcUI7UUFDckIsa0JBQWtCLEVBQUE7TUFsSHRDO1FBc0hvQixlQUFlO1FBQ2YsZ0JBQWdCLEVBQUE7O0FBdkhwQztFQThIUSxZQUFZO0VBQ1osc0JyQ3J5Q0ksRUFBQTs7QXFDeXlDWjs7OEJuQ3drTThCO0FtQ3JrTTlCO0VBRVEsb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYix5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQjtFQUNuQiwwQ3JDbHlDVTtFcUNteUNWLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsZ0JBQWdCLEVBQUE7RWxDeHpDaEI7SWtDaXpDUjtNQVVZLGNBQWMsRUFBQSxFQXdJckI7RUFsSkw7SUFjWSxZQUFZO0lBQ1osYUFBYTtJQUNiLG9CQUFpQjtPQUFqQixpQkFBaUIsRUFBQTtJbENqMENyQjtNa0NpekNSO1FBbUJnQixXQUFXO1FBQ1gsWUFBWSxFQUFBLEVBRW5CO0VBdEJUO0lBeUJZLGlCQUFpQixFQUFBO0lsQzEwQ3JCO01rQ2l6Q1I7UUE0QmdCLGNBQWM7UUFDZCw0SEFBNEgsRUFBQSxFQW9Ibkk7SUFqSlQ7TUFpQ2dCLHNFQUFzRTtNQUN0RSxnQkFBZ0I7TUFDaEIsb0VBQW9FO01BQ3BFLGdCQUFnQixFQUFBO01BcENoQztRQXVDb0IsZ0JBQWdCO1FBQ2hCLGVBQWUsRUFBQTtJQXhDbkM7TUE2Q2dCLGNyQ3YxQ0E7TXFDdzFDQSxnQkFBZ0I7TUFDaEIsb0VBQW9FO01BQ3BFLHNFQUFzRTtNQUN0RSxnQkFBZ0I7TUFDaEIsbUJBQW1CLEVBQUE7TWxDbjJDM0I7UWtDaXpDUjtVQXFEb0IsY0FBYyxFQUFBLEVBRXJCO0lBdkRiO01BMERnQixnQkFBZ0I7TUFDaEIsb0VBQW9FO01BQ3BFLHNFQUFzRTtNQUN0RSx3RUFBd0UsRUFBQTtJQTdEeEY7TUFpRWdCLG9CQUFhO01BQWIsb0JBQWE7TUFBYixhQUFhO01BQ2IseUJBQW1CO1VBQW5CLHNCQUFtQjtjQUFuQixtQkFBbUI7TUFDbkIsaUJBQWlCLEVBQUE7TWxDcDNDekI7UWtDaXpDUjtVQXNFb0IsY0FBYyxFQUFBLEVBeURyQjtNQS9IYjtRQTBFb0IsZ0JBQWdCO1FBQ2hCLGtCQUFrQjtRQUNsQixVQUFVO1FBQ1YsV0FBVztRQUNYLGdDQUF3QjtnQkFBeEIsd0JBQXdCO1FBQ3hCLHlCQUF5QjtRQUN6QixhQUFhO1FBQ2IsNkJBQXFCO1FBQXJCLHFCQUFxQixFQUFBO01BakZ6QztRQXFGb0IsZ0JBQWdCO1FBQ2hCLGtCQUFrQjtRQUNsQixhQUFhO1FBQ2IsWUFBWTtRQUNaLGdDQUF3QjtnQkFBeEIsd0JBQXdCO1FBQ3hCLHlCQUF5QjtRQUN6QixhQUFhO1FBQ2IsNkJBQXFCO1FBQXJCLHFCQUFxQixFQUFBO01BNUZ6QztRQWdHb0Isa0JBQWtCO1FBQ2xCLFdBQVc7UUFDWCxZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLGtCQUFrQixFQUFBO1FBcEd0QztVQXVHd0IsNkJBQXFCO1VBQXJCLHFCQUFxQjtVQUNyQixXQUFXO1VBQ1gsWUFBWTtVQUNaLG9CQUFpQjthQUFqQixpQkFBaUIsRUFBQTtNQTFHekM7UUErR29CLGlCQUFpQixFQUFBO1FBL0dyQztVQWtId0Isa0JBQWtCO1VBQ2xCLGVBQWU7VUFDZixnQkFBZ0I7VUFDaEIsZ0JBQWdCO1VBQ2hCLGtCQUFrQixFQUFBO1FBdEgxQztVQTBId0IsY3JDNTJDSTtVcUM2MkNKLG1CQUFtQjtVQUNuQixvRUFBb0UsRUFBQTtJQTVINUY7TUFtSW9CLGdCQUFnQjtNQUNoQixnQkFBZ0I7TUFDaEIsY3JDdjNDUTtNcUN3M0NSLGVBQWU7TUFDZixxQkFBcUI7TUFDckIsZ0JBQWdCO01BQ2hCLG9FQUFvRTtNQUNwRSxtQkFBbUIsRUFBQTtNQTFJdkM7UUE2SXdCLGNBQWMsRUFBQTs7QUFRdEM7RUFDSSxVQUFVO0VBQ1YsWUFBWTtFQUNaLHNCckNwOENRLEVBQUE7RXFDaThDWjtJQU1RLG1CQUFtQixFQUFBO0VBTjNCO0lBVVEsa0JBQWtCO0lBQ2xCLGtCQUFrQjtJQUNsQixnQkFBZ0IsRUFBQTtJQVp4QjtNcEN0OUNJLFdBRG1DO01BRW5DLGtCQUZxQjtNQU1yQixXQUR3QjtNQUV4QixZQUZ1QztNb0NtK0MvQixPQUFPO01BQ1AsTUFBTTtNQUNOLDhCQUE4QjtNQUM5QixVQUFVO01BQ1YsaUNBQXlCO01BQXpCLHlCQUF5QixFQUFBO0VBckJyQztJQTBCUSxVQUFVO0lBQ1YsZ0JBQWdCO0lBQ2hCLHNCckM3OUNJLEVBQUE7SUVxL09SO01tQ3JoTVEsY0FBYyxFQUFBO0lBL0IxQjtNQW1DWSx5QkFBeUI7TUFDekIsa0JBQWtCLEVBQUE7SUFwQzlCO01Bd0NZLGdCQUFnQjtNQUNoQixnQkFBZ0I7TUFDaEIsZUFBZTtNQUNmLG1CQUFtQjtNQUNuQixjckMzK0NJLEVBQUE7SXFDKzdDaEI7TUFnRFksb0JBQWE7TUFBYixvQkFBYTtNQUFiLGFBQWE7TUFDYix5QkFBbUI7VUFBbkIsc0JBQW1CO2NBQW5CLG1CQUFtQixFQUFBO01BakQvQjtRQW9EZ0Isa0JBQWtCO1FBQ2xCLFdBQVc7UUFDWCxZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLGtCQUFrQixFQUFBO1FBeERsQztVQTJEb0IsNkJBQXFCO1VBQXJCLHFCQUFxQjtVQUNyQixXQUFXO1VBQ1gsWUFBWTtVQUNaLG9CQUFpQjthQUFqQixpQkFBaUIsRUFBQTtNQTlEckM7UUFtRWdCLGNBQWM7UUFDZCxvQkFBYTtRQUFiLG9CQUFhO1FBQWIsYUFBYTtRQUNiLHlCQUFtQjtZQUFuQixzQkFBbUI7Z0JBQW5CLG1CQUFtQixFQUFBO1FuQzRnTTNCO1VtQ3pnTVksZUFBZSxFQUFBO1FBeEVuQztVQTRFb0Isa0JBQWtCO1VBQ2xCLGVBQWU7VUFDZixhQUFhO1VBQ2IsZ0JBQWdCO1VBQ2hCLGNyQ3JnREE7VXFDc2dEQSxnQkFBZ0I7VUFDaEIsbUJBQW1CO1VBQ25CLDRCckNoaERIO1VxQ2loREcsa0JBQWtCLEVBQUE7VW5DeWdNNUI7WW1DdGdNYyxnQkFBZ0I7WUFDaEIsa0JBQWtCO1lBQ2xCLDJCckN0aERQO1lxQ3VoRE8sa0JBQWtCO1lBQ2xCLGVBQWU7WUFDZixpQkFBaUIsRUFBQTtRQTVGekM7VUFpR29CLGNyQ3RoREE7VXFDdWhEQSxnQkFBZ0I7VUFDaEIsZUFBZTtVQUNmLGdCQUFnQixFQUFBO0lBcEdwQztNQTJHZ0IsZ0JBQWdCO01BQ2hCLGdCQUFnQjtNQUNoQixjckNwL0NZO01xQ3EvQ1osZUFBZTtNQUNmLHFCQUFxQjtNQUNyQixnQkFBZ0I7TUFDaEIsb0VBQW9FO01BQ3BFLG1CQUFtQixFQUFBO01BbEhuQztRQXFIb0IsY0FBYyxFQUFBO0VBckhsQztJcEN0OUNJLFdBRG1DO0lBRW5DLGtCQUZxQjtJQU1yQixXQUR3QjtJQUV4QixZQUZ1QztJb0NrbEQzQixPQUFPO0lBQ1AsTUFBTTtJQUNOLDhCQUE4QjtJQUM5QixZQUFZO0lBQ1osaUNBQXlCO0lBQXpCLHlCQUF5QixFQUFBOztBQU16QztFQUNJLGtCQUFrQjtFQUNsQixnQkFBZ0IsRUFBQTtFQUZwQjtJQUtRLGtCQUFrQjtJQUNsQixzQkFBc0I7SUFDdEIsY0FBYztJQUNkLFVBQVU7SUFDVixlQUFlLEVBQUE7SUFUdkI7TUFZWSxTQUFTO01BQ1QsVUFBVSxFQUFBO0VBYnRCO0lBbUJZLGdCQUFnQjtJQUNoQixVQUFVO0lwQ3JsRGxCLG9CQUR5QjtJQUN6QixvQkFEeUI7SUFDekIsYUFEeUI7SUFFekIseUJBRnlDO1FBRXpDLHNCQUZ5QztZQUV6QyxtQkFGeUM7SUFHekMsd0JBSDJEO1FBRzNELHFCQUgyRDtZQUczRCx1QkFIMkQsRUFBQTtJb0Nra0QvRDtNQXdCZ0IscUJBQXFCO01BQ3JCLGlCQUFpQjtNQUNqQixlQUFlO01BQ2YsNkJBQTZCO01wQzVsRHpDLG9CQUR5QjtNQUN6QixvQkFEeUI7TUFDekIsYUFEeUI7TUFFekIseUJBRnlDO1VBRXpDLHNCQUZ5QztjQUV6QyxtQkFGeUM7TUFHekMsd0JBSDJEO1VBRzNELHFCQUgyRDtjQUczRCx1QkFIMkQ7TW9DK2xEL0Msa0JBQWtCO01BQ2xCLG9FQUFvRTtNQUNwRSw2QkFBNkI7TUFDN0IsZ0JBQWdCO01BQ2hCLGNyQ2htREksRUFBQTtNcUMrakRwQjtRcENobURJLFdBRG1DO1FBRW5DLGtCQUZxQjtRb0Nzb0RMLFNBQVM7UUFDVCxPQUFPO1FBQ1AsUUFBUTtRQUNSLFdBQVc7UUFDWCxvQ0FBb0M7UUFDcEMsNkJBQXFCO1FBQXJCLHFCQUFxQixFQUFBO01BMUN6QztRQThDb0IsZ0JBQWdCO1FBQ2hCLG1CQUFtQixFQUFBO01BL0N2QztRQW9Ed0IseUJBQXlCLEVBQUE7TUFwRGpEO1FBeURvQix5QkFBeUIsRUFBQTtRQXpEN0M7VUE0RHdCLFdBQVcsRUFBQTtFQTVEbkM7SUFvRVEsa0JBQWtCO0lBQ2xCLHFEckM5b0RRO1lxQzhvRFIsNkNyQzlvRFE7SXFDK29EUixZQUFZO0lBQ1osZ0JBQWdCO0lBQ2hCLG9CQUFhO0lBQWIsb0JBQWE7SUFBYixhQUFhO0lBQ2IseUJBQW1CO1FBQW5CLHNCQUFtQjtZQUFuQixtQkFBbUI7SUFDbkIsc0JyQ3JwREksRUFBQTtJR0xKO01rQ2dsRFI7UUE2RVksY0FBYyxFQUFBLEVBd0pyQjtJQXJPTDtNQWlGWSxxREFBNkM7Y0FBN0MsNkNBQTZDLEVBQUE7SUFqRnpEO01BcUZZLFVBQVUsRUFBQTtNbENycURkO1FrQ2dsRFI7VUF3RmdCLFdBQVcsRUFBQSxFQUVsQjtJQTFGVDtNQTZGWSxXQUFXLEVBQUE7TUE3RnZCO1FBZ0dnQixhQUFhO1FBQ2Isb0JBQWlCO1dBQWpCLGlCQUFpQjtRQUNqQixxREFBNkM7Z0JBQTdDLDZDQUE2QyxFQUFBO0lBbEc3RDtNQXVHWSxrRUFBa0UsRUFBQTtNQXZHOUU7UUEwR2dCLFVBQVUsRUFBQTtNbEMxckRsQjtRa0NnbERSO1VBOEdnQixXQUFXLEVBQUEsRUFzSGxCO01BcE9UO1FBa0hnQixrQkFBa0IsRUFBQTtNQWxIbEM7UUFzSGdCLFdBQVc7UUFDWCxZQUFZO1FBQ1osY0FBYztRQUNkLFlBQVk7UUFDWixjQUFjO1FBQ2Qsd0VBQXdFLEVBQUE7TUEzSHhGO1FBK0hnQixtQkFBbUI7UUFDbkIsZ0JBQWdCO1FBQ2hCLGNBQWMsRUFBQTtNQWpJOUI7UUFxSWdCLHFCQUFxQjtRQUNyQixrQkFBa0I7UUFDbEIseUJBQXlCLEVBQUE7TUF2SXpDO1FBMklnQixnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLG9FQUFvRTtRQUNwRSxrQkFBa0I7UUFDbEIsY3JDeHREQSxFQUFBO1FxQ3lrRGhCO1VBa0pvQixvRUFBb0U7VUFDcEUscUJBQXFCLEVBQUE7TUFuSnpDO1FBd0pnQixxQkFBcUI7UUFDckIsZ0JBQWdCO1FBQ2hCLGdCQUFnQjtRQUNoQixvQkFBb0I7UUFDcEIscUJBQXFCO1FBQ3JCLDRCQUE0QjtRQUM1QixnQkFBZ0I7UUFDaEIsZ0JBQWdCLEVBQUE7TUEvSmhDO1FBbUtnQixvQkFBYTtRQUFiLG9CQUFhO1FBQWIsYUFBYTtRQUNiLHlCQUFtQjtZQUFuQixzQkFBbUI7Z0JBQW5CLG1CQUFtQjtRQUNuQiw2QnJDbnRETTtRcUNvdEROLGlCQUFpQjtRQUNqQixnQkFBZ0IsRUFBQTtRQXZLaEM7VUEwS29CLHdCQUF1QjtjQUF2QixxQkFBdUI7a0JBQXZCLHVCQUF1QixFQUFBO1FBMUszQztVQThLb0Isa0JBQWtCO1VBQ2xCLFdBQVc7VUFDWCxZQUFZO1VBQ1osZ0JBQWdCO1VBQ2hCLGtCQUFrQixFQUFBO1VBbEx0QztZQXFMd0IsNkJBQXFCO1lBQXJCLHFCQUFxQjtZQUNyQixXQUFXO1lBQ1gsWUFBWTtZQUNaLG9CQUFpQjtlQUFqQixpQkFBaUIsRUFBQTtRQXhMekM7VUE2TG9CLGlCQUFpQixFQUFBO1VBN0xyQztZQWdNd0Isa0JBQWtCO1lBQ2xCLGVBQWU7WUFDZixpQkFBaUI7WUFDakIsZ0JBQWdCO1lBQ2hCLGNyQzd3RFIsRUFBQTtZcUN5a0RoQjtjQXVNNEIsZ0JBQWdCO2NBQ2hCLGVBQWU7Y0FDZix5QkFBeUIsRUFBQTtVQXpNckQ7WUE4TXdCLGNyQy90REk7WXFDZ3VESixlQUFlLEVBQUE7TUEvTXZDO1FBc05vQixnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLGNyQ3p1RFE7UXFDMHVEUixlQUFlO1FBQ2YscUJBQXFCO1FBQ3JCLGdCQUFnQjtRQUNoQixvRUFBb0U7UUFDcEUsbUJBQW1CLEVBQUE7UUE3TnZDO1VBZ093QixjQUFjLEVBQUE7O0FBUXRDO0VBRVEsd0VBQXdFLEVBQUE7RUFGaEY7SUFLWSxvRUFBb0UsRUFBQTs7QUFMaEY7RUFVUSxvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CO0VBQ25CLG1CQUFtQixFQUFBO0VuQzI2THpCO0ltQ3g2TFUsb0JBQW9CLEVBQUE7RUFmaEM7SUFtQlksWUFBWTtJQUNaLGFBQWE7SUFDYixvQkFBaUI7T0FBakIsaUJBQWlCLEVBQUE7RUFyQjdCO0lBeUJZLGlCQUFpQixFQUFBO0lBekI3QjtNQTRCZ0Isb0VBQW9FO01BQ3BFLG1CQUFtQjtNQUNuQixnQkFBZ0I7TUFDaEIsZ0JBQWdCLEVBQUE7SUEvQmhDO01BbUNnQixtQkFBbUI7TUFDbkIsZ0JBQWdCLEVBQUE7TUFwQ2hDO1FBdUNvQixnQkFBZ0IsRUFBQTs7QUF2Q3BDO0VBK0NZLGdCQUFnQixFQUFBOztBQUs1QjtFQUNJLG1CQUFtQjtFQUNuQix5QnJDbjJEZ0I7RXFDbzJEaEIsa0JBQWtCLEVBQUE7RUFIdEI7SUFNUSxnQkFBZ0IsRUFBQTtFQU54QjtJQVVRLGdCQUFnQjtJQUNoQixlQUFlLEVBQUE7O0FBSXZCO0VBQ0ksZ0JBQWdCLEVBQUE7RUFEcEI7SUFLUSxhQUFhO0lBQ2Isc0JyQ3gzRFM7SXFDeTNEVCxjckMzM0RRO0lxQzQzRFIsa0JBQWtCLEVBQUE7SUFSMUI7TUFXWSxvQkFBYTtNQUFiLG9CQUFhO01BQWIsYUFBYTtNQUNiLHlCQUFtQjtVQUFuQixzQkFBbUI7Y0FBbkIsbUJBQW1CO01BQ25CLG1CQUFlO1VBQWYsZUFBZTtNQUNmLDBCQUEwQixFQUFBO01BZHRDO1FBaUJnQixlQUFlO1FBQ2Ysb0JBQWE7UUFBYixvQkFBYTtRQUFiLGFBQWE7UUFDYix5QkFBbUI7WUFBbkIsc0JBQW1CO2dCQUFuQixtQkFBbUI7UUFDbkIsZ0JBQWdCO1FBQ2hCLFdBQVcsRUFBQTtRQXJCM0I7VUF3Qm9CLFdBQVc7VUFDWCxpQkFBaUIsRUFBQTtVbkNnNUwzQjtZbUM3NExjLG1CQUFtQjtZQUNuQixnQkFBZ0IsRUFBQTtJQTdCeEM7TUFvQ1ksb0JBQWE7TUFBYixvQkFBYTtNQUFiLGFBQWE7TUFDYix3QkFBdUI7VUFBdkIscUJBQXVCO2NBQXZCLHVCQUF1QixFQUFBO01BckNuQztRQXdDZ0IsZ0JBQWdCLEVBQUE7TUF4Q2hDO1FBNENnQixrQkFBa0I7UUFDbEIsV0FBVyxFQUFBO1FuQ3U0TG5CO1VtQ3A0TFksWUFBWTtVQUNaLGlCQUFpQixFQUFBO1FBakRyQztVQXFEb0IsZUFBZTtVQUNmLGdCQUFnQjtVQUNoQixjQUFjO1VBQ2QsZ0JBQWdCLEVBQUE7VWxDbjdENUI7WWtDMjNEUjtjQTJEd0IsZUFBZSxFQUFBLEVBRXRCO01BN0RqQjtRQWlFZ0IsWUFBWTtRQUNaLGFBQWE7UUFDYixvQkFBaUI7V0FBakIsaUJBQWlCLEVBQUE7TUFuRWpDO1FBdUVnQixpQkFBaUIsRUFBQTtRQXZFakM7VUEwRW9CLG9FQUFvRTtVQUNwRSxrQkFBa0I7VUFDbEIsZ0JBQWdCO1VBQ2hCLGdCQUFnQjtVQUNoQixzQkFBc0I7VUFDdEIsZ0JBQWdCLEVBQUE7UUEvRXBDO1VBbUZvQixtQkFBbUI7VUFDbkIsZ0JBQWdCLEVBQUE7VUFwRnBDO1lBdUZ3QixnQkFBZ0IsRUFBQTtJQXZGeEM7TUErRmdCLGdCQUFnQixFQUFBO0lBL0ZoQztNQW1HZ0Isb0JBQWE7TUFBYixvQkFBYTtNQUFiLGFBQWEsRUFBQTtNbEM5OURyQjtRa0MyM0RSO1VBc0dvQix5QkFBbUI7Y0FBbkIsc0JBQW1CO2tCQUFuQixtQkFBbUI7VUFDbkIsd0JBQXVCO2NBQXZCLHFCQUF1QjtrQkFBdkIsdUJBQXVCLEVBQUEsRUFrQjlCO01BekhiO1FBMkdvQixXQUFXO1FBQ1gsWUFBWTtRQUNaLHlCckNqK0RKO1FDUVosb0JBRHlCO1FBQ3pCLG9CQUR5QjtRQUN6QixhQUR5QjtRQUV6Qix5QkFGeUM7WUFFekMsc0JBRnlDO2dCQUV6QyxtQkFGeUM7UUFHekMsd0JBSDJEO1lBRzNELHFCQUgyRDtnQkFHM0QsdUJBSDJEO1FvQzQ5RDNDLGtCQUFrQixFQUFBO1FBL0d0QztVQWtId0IsaUJBQWlCLEVBQUE7UUFsSHpDO1VBc0h3QixXckM1K0RaLEVBQUE7RXFDczNEWjtJQWtJWSx3Q0FBZ0M7SUFBaEMsZ0NBQWdDO0lBQ2hDLGNBQWMsRUFBQTtJQW5JMUI7TUFzSWdCLGVBQWUsRUFBQTtJQXRJL0I7TUEwSWdCLHdDQUFnQztNQUFoQyxnQ0FBZ0MsRUFBQTtNQTFJaEQ7UUE2SW9CLHlCckNyL0RGLEVBQUE7UXFDdzJEbEI7VUFnSndCLG9DQUFvQyxFQUFBO1VBaEo1RDtZQW1KNEIsc0JBQXdCLEVBQUE7UUFuSnBEO1VBeUo0QixjckM3Z0VaO1VxQzhnRVksZ0JBQWdCLEVBQUE7SUExSjVDO01BaUtnQixvQkFBYTtNQUFiLG9CQUFhO01BQWIsYUFBYTtNQUNiLHlCQUFtQjtVQUFuQixzQkFBbUI7Y0FBbkIsbUJBQW1CO01BQ25CLGtCQUFrQjtNQUNsQiw2QkFBcUI7TUFBckIscUJBQXFCLEVBQUE7TUFwS3JDO1FBdUtvQixXQUFXO1FBQ1gsWUFBWTtRQUNaLGtCQUFrQjtRcENyaEVsQyxvQkFEeUI7UUFDekIsb0JBRHlCO1FBQ3pCLGFBRHlCO1FBRXpCLHlCQUZ5QztZQUV6QyxzQkFGeUM7Z0JBRXpDLG1CQUZ5QztRQUd6Qyx3QkFIMkQ7WUFHM0QscUJBSDJEO2dCQUczRCx1QkFIMkQ7UW9Dd2hFM0Msd0NBQWdDO1FBQWhDLGdDQUFnQyxFQUFBO1FBM0twRDtVQThLd0IsZUFBZTtVQUNmLHdDQUFnQztVQUFoQyxnQ0FBZ0MsRUFBQTtNQS9LeEQ7UUFvTG9CLGlCQUFpQjtRQUNqQix3Q0FBZ0M7UUFBaEMsZ0NBQWdDLEVBQUE7UW5DbTFMNUM7VW1DaDFMZ0Isa0JBQWtCO1VBQ2xCLGtCQUFrQixFQUFBO1FBekwxQztVQTZMd0Isd0NBQWdDO1VBQWhDLGdDQUFnQztVQUNoQyxjckNsakVSO1VxQ21qRVEsZ0JBQWdCLEVBQUE7SUEvTHhDO01Bd000Qix5QkFBeUIsRUFBQTtJQXhNckQ7TUE4TTRCLHlCQUF5QixFQUFBO0VBOU1yRDtJQTJOWSxxQkFBcUI7SUFDckIsYUFBYSxFQUFBOztBQU96QjtFQUNJLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLGNBQWM7RUFDZCx5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQjtFQUNuQixrQkFBa0IsRUFBQTtFbENwbUVkO0lrQzhsRVI7TUFTUSxnQkFBZ0IsRUFBQSxFQTJJdkI7RUFwSkQ7SUFhUSxrQkFBa0IsRUFBQTtJQWIxQjtNQWdCWSxXQUFXLEVBQUE7SUFoQnZCO01Bb0JZLGtCQUFrQjtNQUNsQixZQUFZO01BQ1osV0FBVztNQUNYLGFBQWE7TUFDYixnQnJDam5FQTtNcUNrbkVBLGtCQUFrQjtNcEN4bUUxQixvQkFEeUI7TUFDekIsb0JBRHlCO01BQ3pCLGFBRHlCO01BRXpCLHlCQUZ5QztVQUV6QyxzQkFGeUM7Y0FFekMsbUJBRnlDO01BR3pDLHdCQUgyRDtVQUczRCxxQkFIMkQ7Y0FHM0QsdUJBSDJEO01vQzJtRW5ELGtCQUFrQixFQUFBO01sQ3puRXRCO1FrQzhsRVI7VUE4QmdCLFlBQVk7VUFDWixZQUFZO1VBQ1osV0FBVztVQUNYLDZCQUE2QixFQUFBLEVBbUJwQztNQXBEVDtRQXFDZ0IscUVBQXFFLEVBQUE7UUFyQ3JGO1VBd0NvQixnQkFBZ0I7VUFDaEIsbUJBQW1CLEVBQUE7VWxDdm9FL0I7WWtDOGxFUjtjQTRDd0IsYUFBYSxFQUFBLEVBRXBCO1FBOUNqQjtVQWlEb0Isb0VBQW9FLEVBQUE7RUFqRHhGO0lBd0RRLHdFQUF3RTtJQUN4RSxnQkFBZ0IsRUFBQTtJQXpEeEI7TUE0RFksbUJBQW1CO01BQ25CLGdCQUFnQjtNQUNoQixjQUFjLEVBQUE7SUE5RDFCO01Ba0VZLGdCQUFnQjtNQUNoQixnQkFBZ0I7TUFDaEIsb0VBQW9FO01BQ3BFLG1CQUFtQjtNQUNuQixnQkFBZ0IsRUFBQTtJQXRFNUI7TUEwRVksc0JBQXNCO01BQ3RCLGdCQUFnQjtNQUNoQixnQkFBZ0I7TUFDaEIsZ0JBQWdCO01BQ2hCLG1CQUFtQixFQUFBO01BOUUvQjtRQWlGZ0IscUVBQXFFLEVBQUE7TUFqRnJGO1FBcUZnQixXQUFXO1FBQ1gsZUFBZTtRQUNmLGlCQUFpQjtRQUNqQixnQkFBZ0I7UUFDaEIsbUJBQW1CO1FBQ25CLGlCQUFpQjtRQUNqQixjckNsckVBLEVBQUE7SXFDdWxFaEI7TUFnR1ksb0JBQWE7TUFBYixvQkFBYTtNQUFiLGFBQWE7TUFDYix5QkFBbUI7VUFBbkIsc0JBQW1CO2NBQW5CLG1CQUFtQixFQUFBO01BakcvQjtRQW9HZ0Isa0JBQWtCO1FBQ2xCLFdBQVc7UUFDWCxZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLGtCQUFrQixFQUFBO1FBeEdsQztVQTJHb0IsNkJBQXFCO1VBQXJCLHFCQUFxQjtVQUNyQixXQUFXO1VBQ1gsWUFBWTtVQUNaLG9CQUFpQjthQUFqQixpQkFBaUIsRUFBQTtNQTlHckM7UUFtSGdCLGlCQUFpQixFQUFBO1FBbkhqQztVQXNIb0Isa0JBQWtCO1VBQ2xCLG9FQUFvRTtVQUNwRSxnQkFBZ0I7VUFDaEIsa0JBQWtCLEVBQUE7UUF6SHRDO1VBNkhvQixjckM1cEVRO1VxQzZwRVIsb0VBQW9FLEVBQUE7SUE5SHhGO01BcUlnQixnQkFBZ0I7TUFDaEIsZ0JBQWdCO01BQ2hCLGNyQ3RxRVk7TXFDdXFFWixlQUFlO01BQ2YscUJBQXFCO01BQ3JCLGdCQUFnQjtNQUNoQixvRUFBb0U7TUFDcEUsbUJBQW1CLEVBQUE7TUE1SW5DO1FBK0lvQixjQUFjLEVBQUE7O0FBT2xDO0VBRVEseUJyQ251RVU7RXFDb3VFVixZQUFZLEVBQUE7RUFIcEI7SUFNWSx5QkFBeUIsRUFBQTs7QUFLckM7RUFDSSxpQ0FBaUMsRUFBQTs7QUFHckM7OzhCbkNvd0w4QjtBbUNqd0w5QjtFcEN2dkVJLG9CQUR5QjtFQUN6QixvQkFEeUI7RUFDekIsYUFEeUI7RUFFekIseUJBRnlDO01BRXpDLHNCQUZ5QztVQUV6QyxtQkFGeUM7RUFHekMsd0JBSDJEO01BRzNELHFCQUgyRDtVQUczRCx1QkFIMkQ7RW9DMHZFM0Qsa0JBQWtCO0VBQ2xCLGdCQUFnQixFQUFBO0VBSHBCO0lBTVEsZ0JBQWdCLEVBQUE7SW5Db3dMcEI7TW1DN3ZMd0Isa0NBQTBCO2NBQTFCLDBCQUEwQixFQUFBO0lBYnREO01Bb0JnQixpQkFBaUIsRUFBQTtNbkMwdkwzQjtRbUN2dkxjLGtCQUFrQjtRQUNsQixrQkFBa0IsRUFBQTtJQXhCdEM7TUE4Qm9CLGtCQUFrQjtNQUNsQixvQ0FBb0M7TUFDcEMsV3JDanlFUjtNcUNreUVRLGdCQUFnQjtNQUNoQixVQUFVLEVBQUE7SUFsQzlCO01BdUNnQiw2QkFBNkI7TUFDN0IseUJBQXlCO01BQ3pCLGtCQUFrQjtNQUNsQixzQnJDM3lFSixFQUFBO01xQ2l3RVo7UUE2Q29CLHlCckN4eUVBO1FxQ3l5RUEseUJBQXlCLEVBQUE7TUE5QzdDO1FBa0RvQiw2QkFBNkI7UUFDN0Isd0JBQWdCO2dCQUFoQixnQkFBZ0IsRUFBQTs7QUFPcEM7OzhCbkMydUw4QjtBbUN4dUw5QjtFQUtvQixrQkFBa0IsRUFBQTs7QUFMdEM7RUFhb0IsYUFBYSxFQUFBOztBQWJqQztFQW9CUSxtQkFBbUI7RUFDbkIsbUJyQ3IwRVU7RXFDczBFVixhQUFhO0VBQ2IscUJBQXFCO0VBQ3JCLG1CQUFtQjtFcEM1MEV2QixvQkFEeUI7RUFDekIsb0JBRHlCO0VBQ3pCLGFBRHlCO0VBRXpCLHlCQUZ5QztNQUV6QyxzQkFGeUM7VUFFekMsbUJBRnlDO0VBR3pDLHdCQUgyRDtNQUczRCxxQkFIMkQ7VUFHM0QsdUJBSDJEO0VvQyswRXZELGNyQ3QxRVEsRUFBQTtFR1BSO0lrQ20wRVI7TUE2QlksY0FBYztNQUNkLGtCQUFrQixFQUFBLEVBVXpCO0VBeENMO0lBa0NZLGtCQUFrQixFQUFBO0lsQ3IyRXRCO01rQ20wRVI7UUFxQ2dCLGVBQWUsRUFBQSxFQUV0Qjs7QUF2Q1Q7RUEyQ1EsY0FBYyxFQUFBO0VBM0N0QjtJQThDWSxrQkFBa0IsRUFBQTs7QUFLOUI7RUFJZ0IsZ0JBQWdCLEVBQUE7O0FBTWhDO0VBQ0ksaUJBQWlCLEVBQUE7RUFEckI7SUFLWSxpQkFBaUI7SUFDakIsbUJBQW1CO0lBQ25CLG1CQUFtQixFQUFBOztBbEN2NEV2QjtFa0M0NEVSO0lBTXdCLGFBQWEsRUFBQSxFQUNoQjs7QWxDbjVFYjtFa0M0NEVSO0lBa0J3QixhQUFhLEVBQUE7RUFsQnJDO0lBdUI0Qix3QkFBdUI7UUFBdkIscUJBQXVCO1lBQXZCLHVCQUF1QixFQUFBLEVBQzFCOztBQVF6QjtFQUNJLGdCQUFnQjtFQUNoQixnQkFBZ0IsRUFBQTtFQUZwQjtJQU1ZLHdCQUF3QjtJQUN4QixnQkFBZ0I7SUFDaEIsY3JDNzZFSTtJcUM4NkVKLHlCQUF5QjtJQUN6QixlQUFlO0lBQ2YsYUFBYTtJQUNiLGtCQUFrQjtJQUNsQixhQUFhO0lBQ2IsMkNBQStDO0lBQy9DLHlCckNoN0VRLEVBQUE7RXFDaTZFcEI7SUFxQlksZ0JBQWdCLEVBQUE7RUFyQjVCO0lBMEJnQixzQkFBc0I7SUFDdEIsY3JDLzVFSTtJcUNnNkVKLGFBQWE7SUFDYiwyQ0FBK0M7SUFDL0Msa0JBQWtCO0lBQ2xCLGlCQUFpQixFQUFBO0lBL0JqQztNQWtDb0IsbUJBQW1CO01BQ25CLGdCQUFnQjtNQUNoQixlQUFlO01BQ2YsMEJBQTBCO01BQzFCLGdCQUFnQjtNQUNoQixxQkFBcUIsRUFBQTtNQXZDekM7UUEwQ3dCLHlCckMzOEVKO1FxQzQ4RUkseUJyQzU4RUo7UXFDNjhFSSxhQUFhLEVBQUE7UWxDeDlFN0I7VWtDNDZFUjtZQStDNEIsU0FBUyxFQUFBLEVBZ0JoQjtRQS9EckI7VUFvRGdDLHlCQUF5QixFQUFBO1FBcER6RDtVQXlENEIsZ0VBQWdFO1VBQ2hFLGlFQUFpRTtVQUNqRSxvRUFBb0U7VXBDeDlFNUYsb0JBRHlCO1VBQ3pCLG9CQUR5QjtVQUN6QixhQUR5QjtVQUV6Qix5QkFGeUM7Y0FFekMsc0JBRnlDO2tCQUV6QyxtQkFGeUM7VUFHekMsd0JBSDJEO2NBRzNELHFCQUgyRDtrQkFHM0QsdUJBSDJEO1VvQzI5RW5DLGtCQUFrQixFQUFBO01BN0Q5QztRQWtFd0IsWUFBWSxFQUFBO0lBbEVwQztNQXVFb0IsY3JDNStFSjtNcUM2K0VJLG1CQUFtQjtNQUNuQixnQkFBZ0I7TUFDaEIsZUFBZTtNQUNmLDBCQUEwQjtNQUMxQixnQkFBZ0IsRUFBQTtNQTVFcEM7UUErRXdCLFlBQVksRUFBQTtJQS9FcEM7TUFvRm9CLDJCQUEyQixFQUFBO0lBcEYvQztNQXdGb0IsZUFBZTtNQUNmLGNyQzkvRUo7TXFDKy9FSSxnQkFBZ0IsRUFBQTtJQTFGcEM7TUE4Rm9CLGFBQWE7TUFDYix3QkFBdUI7VUFBdkIscUJBQXVCO2NBQXZCLHVCQUF1QjtNQUN2QixnQkFBZ0IsRUFBQTtNbEM1Z0Y1QjtRa0M0NkVSO1VwQzc1RUksb0JBRHlCO1VBQ3pCLG9CQUR5QjtVQUN6QixhQUR5QjtVQUV6Qix5QkFGeUM7Y0FFekMsc0JBRnlDO2tCQUV6QyxtQkFGeUM7VUFHekMsd0JBSDJEO2NBRzNELHFCQUgyRDtrQkFHM0QsdUJBSDJEO1VvQ2tnRnZDLHFCQUFpQjtjQUFqQixpQkFBaUIsRUFBQSxFQTZCeEI7TUFqSWpCO1FBd0d3QixrQkFBa0IsRUFBQTtRQXhHMUM7VUE0R2dDLFdBQVc7VUFDWCxZQUFZLEVBQUE7TUE3RzVDO1FBbUh3QiwyQkFBa0I7WUFBbEIsa0JBQWtCO1FBQ2xCLGNBQWMsRUFBQTtRbENoaUY5QjtVa0M0NkVSO1lBdUg0QixTQUFTO1lBQ1Qsb0JBQWE7WUFBYixvQkFBYTtZQUFiLGFBQWE7WUFDYixtQkFBbUIsRUFBQSxFQUUxQjtNQTNIckI7UUE4SHdCLGVBQWU7UUFDZixpQkFBaUIsRUFBQTtJQS9IekM7TUFxSXdCLGNBQWMsRUFBQTtNQXJJdEM7UUF3STRCLFdBQVc7UUFDWCxjQUFjO1FBQ2Qsa0JBQWtCLEVBQUE7O0FBUzlDO0VBR1ksaUJBQWlCO0VBQ2pCLGlCQUFpQixFQUFBOztBQUo3QjtFQVFZLGlCQUFpQjtFQUNqQixpQkFBaUI7RUFDakIsaUJBQWlCO0VBQ2pCLFlBQVk7RUFDWixtQkFBbUI7RUFDbkIsbUJBQW1CLEVBQUE7RUFiL0I7SUFnQmdCLGVBQWU7SUFDZixnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLGtCQUFrQixFQUFBO0VBbkJsQztJQXVCZ0IsVUFBVTtJQUNWLGVBQWU7SUFDZixtQkFBbUI7SUFDbkIsMEJBQTBCO0lBQzFCLGdCQUFnQixFQUFBOztBQU1oQztFQUNJLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUIsRUFBQTtFQUZ2QjtJQUtRLGtCQUFrQixFQUFBO0lBTDFCO01BUVksaUJBQWlCLEVBQUE7RWxDeG1GckI7SWtDZ21GUjtNQWFRLGtCQUFrQixFQUFBLEVBU3pCO0VsQ3RuRk87SWtDZ21GUjtNQWtCWSxXQUFXO01BQ1gsa0JBQWtCLEVBQUEsRUFFekI7O0FBR0w7RUFFUSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLHFCQUFxQjtFcEM3bUZ6QixvQkFEeUI7RUFDekIsb0JBRHlCO0VBQ3pCLGFBRHlCO0VBRXpCLHlCQUZ5QztNQUV6QyxzQkFGeUM7VUFFekMsbUJBRnlDO0VBR3pDLHdCQUgyRDtNQUczRCxxQkFIMkQ7VUFHM0QsdUJBSDJEO0VvQ2duRnZELGNyQ3ZuRlEsRUFBQTtFR1BSO0lrQ3duRlI7TUFTWSxjQUFjO01BQ2Qsa0JBQWtCLEVBQUEsRUFnQnpCO0VBMUJMO0lBY1ksa0JBQWtCLEVBQUE7SW5DOG1MMUI7TW1DM21MWSxtQkFBbUI7TUFDbkIsaUJBQWlCLEVBQUE7SWxDMW9GekI7TWtDd25GUjtRQXNCZ0IsZUFBZTtRQUNmLG1CQUFtQixFQUFBLEVBRTFCOztBQXpCVDtFQWdDb0IsZ0JBQWdCLEVBQUE7O0FBaENwQztFQXVDUSxpQkFBaUIsRUFBQTtFQXZDekI7SUEyQ2dCLGlCQUFpQjtJQUNqQixtQkFBbUI7SUFDbkIsbUJBQW1CLEVBQUE7O0FBN0NuQztFQW1EUSxnQkFBZ0I7RUFDaEIsZ0JBQWdCLEVBQUE7RUFwRHhCO0lBd0RnQix3QkFBd0I7SUFDeEIsZ0JBQWdCO0lBQ2hCLGNyQzNxRkE7SXFDNHFGQSx5QkFBeUI7SUFDekIsZUFBZTtJQUNmLGFBQWE7SUFDYixrQkFBa0I7SUFDbEIsMkNBQStDO0lBQy9DLGFBQWE7SUFDYix5QnJDOXFGSSxFQUFBO0lHWFo7TWtDd25GUjtRQXFFd0IsYUFBYSxFQUFBLEVBQ2hCOztBQXRFckI7RUE4RVksZ0JBQWdCLEVBQUE7O0FBOUU1QjtFQXFGb0IsZ0JBQWdCLEVBQUE7O0FBckZwQztFQTBGZ0Isc0JBQXNCO0VBQ3RCLGNyQzVzRkE7RXFDNnNGQSxhQUFhO0VBQ2IsMkNBQXlDO0VBQ3pDLGtCQUFrQjtFQUNsQixnQkFBZ0IsRUFBQTtFbEN2dEZ4QjtJa0N3bkZSO01BbUd3QixhQUFhLEVBQUEsRUFDaEI7RUFwR3JCO0lBd0dvQixjckMvc0ZBO0lxQ2d0RkEsZ0JBQWdCO0lBQ2hCLGVBQWU7SUFDZiwwQkFBMEI7SUFDMUIsZ0JBQWdCLEVBQUE7SUE1R3BDO01BK0d3QiwwQ0FBMEM7TUFDMUMsa0JBQWtCO01BQ2xCLGtCQUFrQixFQUFBO0lBakgxQztNQXFId0IsWUFBWSxFQUFBO0VBckhwQztJQTBIb0IsY3JDMXNGQTtJcUMyc0ZBLGdCQUFnQjtJQUNoQixlQUFlO0lBQ2YsMEJBQTBCO0lBQzFCLGdCQUFnQixFQUFBO0lBOUhwQztNQWlJd0IsWUFBWSxFQUFBO0VBaklwQztJQXNJb0IsMkJBQTJCLEVBQUE7RUF0SS9DO0lBMElvQixlQUFlO0lBQ2YseUJBQXlCO0lBQ3pCLGdCQUFnQixFQUFBO0VBNUlwQztJQWdKb0IsYUFBYTtJQUNiLHdCQUF1QjtRQUF2QixxQkFBdUI7WUFBdkIsdUJBQXVCO0lBQ3ZCLGdCQUFnQixFQUFBO0lsQzF3RjVCO01rQ3duRlI7UXBDem1GSSxvQkFEeUI7UUFDekIsb0JBRHlCO1FBQ3pCLGFBRHlCO1FBRXpCLHlCQUZ5QztZQUV6QyxzQkFGeUM7Z0JBRXpDLG1CQUZ5QztRQUd6Qyx3QkFIMkQ7WUFHM0QscUJBSDJEO2dCQUczRCx1QkFIMkQ7UW9DZ3dGdkMscUJBQWlCO1lBQWpCLGlCQUFpQixFQUFBLEVBMkJ4QjtJQWpMakI7TUEwSndCLGtCQUFrQixFQUFBO01BMUoxQztRQThKZ0MsV0FBVztRQUNYLFlBQVksRUFBQTtJQS9KNUM7TUFxS3dCLDJCQUFrQjtVQUFsQixrQkFBa0I7TUFDbEIsY0FBYyxFQUFBO01sQzl4RjlCO1FrQ3duRlI7VUF5SzRCLFNBQVM7VUFDVCxvQkFBYTtVQUFiLG9CQUFhO1VBQWIsYUFBYSxFQUFBLEVBRXBCO0lBNUtyQjtNQStLd0IsZUFBZSxFQUFBO0VBL0t2QztJQXFMd0IsY0FBYyxFQUFBO0lBckx0QztNQXdMNEIsV0FBVztNQUNYLGNBQWM7TUFDZCxrQkFBa0I7TUFDbEIsWUFBWTtNQUNaLFlBQVksRUFBQTs7QUE1THhDO0VBdU1nQixpQkFBaUI7RUFDakIsaUJBQWlCLEVBQUE7O0FBeE1qQztFQTRNZ0IsaUJBQWlCO0VBQ2pCLGlCQUFpQjtFQUNqQixpQkFBaUI7RUFDakIsWUFBWTtFQUNaLG1CQUFtQjtFQUNuQixtQkFBbUIsRUFBQTtFQWpObkM7SUFvTm9CLGVBQWU7SUFDZixnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLGtCQUFrQixFQUFBO0VBdk50QztJQTJOb0IsVUFBVTtJQUNWLGVBQWU7SUFDZixtQkFBbUI7SUFDbkIsMEJBQTBCO0lBQzFCLGdCQUFnQixFQUFBOztBQS9OcEM7RUFzT1Esb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYix5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQixFQUFBO0VuQzhoTHpCO0ltQ3poTGtCLGlDQUF5QjtZQUF6Qix5QkFBeUIsRUFBQTtFbENwMkZyQztJa0N3bkZSO01Ba1BZLGtCQUFrQixFQUFBLEVBU3pCO0VsQ24zRkc7SWtDd25GUjtNQXVQZ0IsV0FBVztNQUNYLGtCQUFrQixFQUFBLEVBRXpCOztBQTFQVDtFQThQUSxnQkFBZ0IsRUFBQTtFQTlQeEI7SUFrUWdCLG9CQUFhO0lBQWIsb0JBQWE7SUFBYixhQUFhO0lBQ2IseUJBQW1CO1FBQW5CLHNCQUFtQjtZQUFuQixtQkFBbUIsRUFBQTtJQW5RbkM7TUFzUW9CLGtCQUFrQixFQUFBO0VBdFF0QztJQTRRWSxpQkFBaUIsRUFBQTtJbkM0Z0x6QjtNbUN6Z0xZLGdCQUFnQixFQUFBO0lBL1FoQztNQW1SZ0Isa0JBQWtCLEVBQUE7RUFuUmxDO0lBd1JZLHlCckNyNEZRO0lxQ3M0RlIsbUJBQW1CO0lBQ25CLGdCQUFnQjtJQUNoQixVQUFVLEVBQUE7SUEzUnRCO01BOFJnQixnQkFBZ0I7TUFDaEIsa0JBQWtCO01BQ2xCLDBCQUEwQixFQUFBO0lBaFMxQztNQXNTd0IsWUFBWSxFQUFBO01uQ2lnTDlCO1FtQzkvS3NCLFdBQVcsRUFBQTtJQXpTdkM7TUE4U3dCLGdDckM5NUZWO01xQys1RlUsYUFBYTtNQUNiLGdCQUFnQixFQUFBO01BaFR4QztRQW1UNEIsbUJBQW1CO1FBQ25CLGNyQ3I2RlosRUFBQTtNcUNpbkZoQjtRQXdUNEIsZ0JBQWdCO1FBQ2hCLGNyQzE2RlosRUFBQTtJcUNpbkZoQjtNQStUNEIsb0NBQW9DO01BQ3BDLFdBQVc7TUFDWCxjQUFjO01BQ2QsZUFBZTtNQUNmLGtCQUFrQjtNQUNsQixXckN2N0ZoQjtNcUN3N0ZnQixnQkFBZ0I7TUFDaEIscUJBQXFCLEVBQUE7O0FBU2pEOzs4Qm5DZy9LOEI7QW1DNytLOUI7RUFDSSxnQkFBZ0I7RUFDaEIsU0FBUyxFQUFBO0VBRmI7SUFNWSxrQkFBa0I7SUFDbEIsc0JyQzU4RkEsRUFBQTtJcUNxOEZaO01BVWdCLG1CckN6OEZJO01xQzA4RkoscUNyQzk4RkEsRUFBQTtJcUNtOEZoQjtNQWVnQixjckNsOUZBLEVBQUE7SXFDbThGaEI7OztNQXFCZ0IsY3JDOThGSSxFQUFBO0VxQ3k3RnBCO0lBMEJZLFlBQVksRUFBQTtFQTFCeEI7SUErQlEsNkJBQTZCO0lBQzdCLFlBQVk7SUFDWixjQUFjO0lBQ2QsZUFBZTtJcEM3OUZuQixvQkFEeUI7SUFDekIsb0JBRHlCO0lBQ3pCLGFBRHlCO0lBRXpCLHlCQUZ5QztRQUV6QyxzQkFGeUM7WUFFekMsbUJBRnlDO0lBR3pDLHdCQUgyRDtRQUczRCxxQkFIMkQ7WUFHM0QsdUJBSDJEO0lvQ2crRnZELFdBQVc7SUFDWCxZQUFZLEVBQUE7RUFyQ3BCO0lBMENZLGlCQUFpQixFQUFBOztBQUs3QjtFQUNJLGtCQUFrQixFQUFBOztBQUd0QjtFQUNJLGdCQUFnQixFQUFBOztBQUdwQjtFQUNJLHFCQUFxQjtFQUNyQixrQkFBa0IsRUFBQTtFbkM0OUtwQjtJbUN6OUtNLGVBQWU7SUFDZixpQkFBaUIsRUFBQTtFQU56QjtJQVVRLHdDQUFnQztJQUFoQyxnQ0FBZ0M7SUFDaEMsZUFBZTtJQUNmLHNCckN4Z0dJLEVBQUE7SXFDNC9GWjtNQWVZLG9DQUFvQztNQUNwQyxnQ0FBZ0MsRUFBQTtJQWhCNUM7TUFvQlksb0JBQVk7Y0FBWixZQUFZLEVBQUE7SUFwQnhCO01Bd0JZLHdCQUFnQjtjQUFoQixnQkFBZ0IsRUFBQTs7QUFLNUI7RUFDSSx5QnJDaCtGd0IsRUFBQTs7QXFDbStGNUI7OzhCbkNpOUs4QjtBbUM5OEs5QjtFQUNJLGtCQUFrQjtFQUNsQix5QnJDcGhHYyxFQUFBO0VHbkJWO0lrQ3FpR1I7TUFLUSxrQkFBa0IsRUFBQSxFQW9FekI7RUF6RUQ7SXBDaGpHSSxXQUR3QjtJQUV4QixZQUZ1QztJQTJCdkMsb0JBRHlCO0lBQ3pCLG9CQUR5QjtJQUN6QixhQUR5QjtJQUV6Qix5QkFGeUM7UUFFekMsc0JBRnlDO1lBRXpDLG1CQUZ5QztJQUd6Qyx3QkFIMkQ7UUFHM0QscUJBSDJEO1lBRzNELHVCQUgyRDtJb0NraUd2RCxtQkFBbUIsRUFBQTtJQVgzQjtNQWNZLFlBQVk7TUFDWixhQUFhO01BQ2Isb0JBQWE7TUFBYixvQkFBYTtNQUFiLGFBQWE7TUFDYix5QkFBbUI7VUFBbkIsc0JBQW1CO2NBQW5CLG1CQUFtQjtNQUNuQix5QkFBOEI7VUFBOUIsc0JBQThCO2NBQTlCLDhCQUE4QjtNQUM5Qiw0QkFBaUI7TUFBakIsNkJBQWlCO1VBQWpCLHFCQUFpQjtjQUFqQixpQkFBaUI7TUFDakIsOENBQXNDO2NBQXRDLHNDQUFzQyxFQUFBO01BcEJsRDtRQXVCZ0IsV0FBVztRQUNYLHlCQUF5QjtRQUN6Qix3RkFBc0U7UUFBdEUsOERBQXNFO1FBQ3RFLHNIQUNvRDtnQkFEcEQsOEdBQ29EO1FBQ3BELDhCQUFzQjtnQkFBdEIsc0JBQXNCO1FBQ3RCLGtCQUFrQjtRQUNsQixpRUFBeUQ7Z0JBQXpELHlEQUF5RDtRcENwakdyRSxvQkFEeUI7UUFDekIsb0JBRHlCO1FBQ3pCLGFBRHlCO1FBRXpCLHlCQUZ5QztZQUV6QyxzQkFGeUM7Z0JBRXpDLG1CQUZ5QztRQUd6Qyx3QkFIMkQ7WUFHM0QscUJBSDJEO2dCQUczRCx1QkFIMkQ7UW9DdWpHL0MsVUFBVSxFQUFBO1FBaEMxQjtVQW1Db0IsVUFBVTtVQUNWLGtDQUEwQjtrQkFBMUIsMEJBQTBCO1VBQzFCLG9CQUFvQjtVQUNwQixxQkFBcUI7VUFDckIsNkRBQXFEO2tCQUFyRCxxREFBcUQsRUFBQTtNQXZDekU7UUE0Q2dCLHdCQUF3QjtRQUN4QixPQUFPO1FBQ1Asa0JBQWtCO1FBQ2xCLCtEQUVvQjtRQUNwQiw4REFBc0Q7Z0JBQXRELHNEQUFzRCxFQUFBO0VBbER0RTtJQXdEUSxrQkFBa0IsRUFBQTtJQXhEMUI7TUEyRFksWUFBWTtNQUNaLGVBQWU7TUFDZixnQkFBZ0IsRUFBQTtJQTdENUI7TUFpRVksa0JBQWtCO01BQ2xCLG9FQUFvRSxFQUFBO0lBbEVoRjtNQXNFWSxxQkFBcUIsRUFBQTs7QUFLakM7RUFDSSxrQkFBa0I7RUFDbEIsa0JBQWtCLEVBQUE7RUFGdEI7SXBDaG9HSSxXQURtQztJQUVuQyxrQkFGcUI7SW9DdW9HakIsTUFBTTtJQUNOLFFBQVE7SUFDUixVQUFVO0lBQ1YsWUFBWTtJQUNaLHNCckNqbkdTLEVBQUE7RXFDdW1HakI7SUFnQlksUUFBUSxFQUFBO0VsQ2hvR1o7SWtDZ25HUjtNQXVCZ0IsUUFBUSxFQUFBLEVBQ1g7O0FBS2I7RUFHWSw2QnJDdm9HSyxFQUFBO0VxQ29vR2pCO0lBT29CLGFBQWE7SUFDYixnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLDhCQUE4QjtJQUM5QixjckN2b0dBLEVBQUE7SUVxalJoQjtNbUMzNktvQixpQkFBaUIsRUFBQTtJbEMzcEdqQztNa0M2b0dSO1FBbUI0QiwwQkFBMEIsRUFBQSxFQUM3QjtJQXBCekI7TUF3QndCLDZCQUE2QixFQUFBO0lBeEJyRDtNQTRCd0IsZ0JBQWdCO01BQ2hCLGNyQ25xR1IsRUFBQTs7QXFDc29HaEI7RUFzQ29CLGlCQUFpQjtFQUNqQixrQkFBa0IsRUFBQTtFbkNnNktwQztJbUM3NUtzQixnQkFBZ0IsRUFBQTtFQTFDeEM7SUE4Q3dCLGdCQUFnQjtJQUNoQixXQUFXLEVBQUE7SW5DNjVLL0I7TW1DMTVLd0IsaUJBQWlCLEVBQUE7RUFsRDdDO0lBdUR3QixnQkFBZ0I7SUFDaEIsY3JDOXJHUixFQUFBOztBcUNzb0doQjtFQThEd0IsNkJyQ2xzR1AsRUFBQTs7QXFDb29HakI7RUFzRVEsYUFBYTtFQUNiLGtCQUFrQjtFQUNsQix5QnJDMXNHWSxFQUFBO0VHWFo7SWtDNm9HUjtNQTJFWSxhQUFhLEVBQUEsRUErRHBCO0VBMUlMO0lBK0VZLGdCQUFnQjtJQUNoQiwwQkFBMEI7SUFDMUIsZUFBZTtJQUNmLGtCQUFrQixFQUFBO0VBbEY5QjtJQXVGZ0Isb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWE7SUFDYiwwQkFBMEI7SUFDMUIsZ0JBQWdCO0lBQ2hCLGVBQWU7SUFDZixrQkFBa0I7SUFDbEIsY3JDeHRHSSxFQUFBO0VxQzRuR3BCO0lBa0dnQixlQUFlO0lBQ2YsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQixjckNqdUdJO0lxQ2t1R0osbUJBQW1CLEVBQUE7RUF0R25DO0lBMkdZLG1CQUFtQjtJQUNuQixVQUFVO0lBQ1YsZ0JBQWdCO0lBQ2hCLDZCQUE2QixFQUFBO0lBOUd6QztNQWlIZ0IsY3JDdnZHQTtNcUN3dkdBLDBCQUEwQjtNQUMxQixlQUFlO01BQ2YsZ0JBQWdCO01BQ2hCLGdCQUFnQixFQUFBO01BckhoQztRQXdIb0IsZ0JBQWdCO1FBQ2hCLGdCQUFnQixFQUFBO1FuQ200SzVCO1VtQ2g0S2dCLGNBQWM7VUFDZCxpQkFBaUIsRUFBQTtJQTdIekM7TUFtSWdCLGVBQWU7TUFDZiwwQkFBMEI7TUFDMUIsZUFBZTtNQUNmLGNBQWM7TUFDZCxnQkFBZ0IsRUFBQTs7QUFNaEM7O2dDbkMyM0tnQztBbUN4M0toQztFQUNJLG1CQUFtQixFQUFBOztBQUd2QjtFQUNJLGFBQWE7RUFDYixZQUFZO0VBQ1osWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsU0FBUztFQUNULG1CckM3eEdnQixFQUFBO0VFc3BSbEI7SW1DdDNLTSxhQUFhLEVBQUE7RWxDM3lHYjtJa0NpeUdSO01BY1EsZUFBZTtNQUNmLFVBQVU7TUFDVixNQUFNO01BQ04sWUFBWTtNQUNaLFlBQVk7TUFDWixZQUFZO01BQ1osVUFBVTtNQUNWLGdCQUFnQjtNQUNoQix3Q0FBZ0M7TUFBaEMsZ0NBQWdDLEVBQUE7TUF0QnhDO1FBeUJZLE9BQU8sRUFBQSxFQUNWO0VBMUJUO0lBK0JZLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsa0JBQWtCO0lBQ2xCLHVCQUF1QjtJQUN2Qiw2QkFBNkI7SUFDN0Isa0JBQWtCO0lBQ2xCLGVBQWU7SUFDZix3Q0FBZ0M7SUFBaEMsZ0NBQWdDO0lBQ2hDLHlCQUF5QixFQUFBO0luQ2szS2pDO01tQy8yS1ksaUJBQWlCLEVBQUE7SUExQ2pDO01BOENnQixrQkFBa0I7TUFDbEIsT0FBTztNcENyMUdmLFFBQVE7TUFDUixtQ0FBMkI7Y0FBM0IsMkJBQTJCO01vQ3MxR25CLHdDQUFnQztNQUFoQyxnQ0FBZ0MsRUFBQTtNbkNnM0sxQztRbUM3MktjLFFBQVE7UUFDUixXQUFXO1FBQ1gsUUFBUTtRQUNSLGtEQUEwQztnQkFBMUMsMENBQTBDLEVBQUE7SUF2RDlEO01BNERnQixnQkFBZ0I7TUFDaEIsa0NBQWtDO01BQ2xDLGdCQUFnQjtNQUNoQixrQkFBa0I7TUFDbEIsT0FBTztNcEN0MkdmLFFBQVE7TUFDUixtQ0FBMkI7Y0FBM0IsMkJBQTJCO01vQ3UyR25CLHdDQUFnQztNQUFoQyxnQ0FBZ0M7TUFDaEMsVUFBVSxFQUFBO01uQzYyS3BCO1FtQzEyS2MsV0FBVztRQUNYLFFBQVE7UUFDUixNQUFNO1FBQ04sa0RBQTBDO2dCQUExQywwQ0FBMEMsRUFBQTtJQXpFOUQ7TUE4RWdCLGtCQUFrQjtNQUNsQixvQ0FBb0MsRUFBQTtNbkN5Mks5QztRbUN0MktjLGVBQWU7UUFDZixtQkFBbUIsRUFBQTtNQW5GdkM7UUF1Rm9CLFVBQVU7UUFDVixTQUFTLEVBQUE7UW5DczJLckI7VW1DbjJLZ0IsV0FBVztVQUNYLFFBQVEsRUFBQTtJQTVGaEM7TUFrR2dCLGtCQUFrQjtNQUNsQixvQ0FBb0M7TUFDcEMsZ0JBQWdCLEVBQUE7TW5DaTJLMUI7UW1DOTFLYyxlQUFlO1FBQ2YsbUJBQW1CLEVBQUE7TUF4R3ZDO1FBNEdvQixVQUFVO1FBQ1YsU0FBUyxFQUFBO1FuQzgxS3JCO1VtQzMxS2dCLFdBQVc7VUFDWCxRQUFRO1VBQ1IsTUFBTTtVQUNOLGtEQUEwQztrQkFBMUMsMENBQTBDLEVBQUE7O0FBUWxFO0VBQ0ksbUJBQW1CO0VBQ25CLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUIsRUFBQTtFQUh2QjtJQU1RLGVBQWU7SUFDZixnQkFBZ0I7SUFDaEIsY3JDNzVHUSxFQUFBO0VxQ3E1R2hCO0lBWVEsaUJBQWlCLEVBQUE7O0FBSXpCO0VBQ0ksbUJBQW1CO0VBQ25CLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUIsRUFBQTtFQUh2QjtJQU1RLGVBQWU7SUFDZixxQkFBcUIsRUFBQTtFQVA3QjtJQVdRLGlCQUFpQixFQUFBO0luQyswS3JCO01tQzUwS1Esa0JBQWtCO01BQ2xCLGtCQUFrQixFQUFBOztBQUs5QjtFQUNJLDZCQUE2QjtFQUM3QixlQUFlO0VBQ2YsWUFBWTtFQUNaLGtCQUFrQixFQUFBO0VBSnRCO0lBT1Esd0VBQXdFLEVBQUE7SUFQaEY7TUFVWSxvRUFBb0UsRUFBQTtFQVZoRjtJQWdCWSxjQUFjO0lBQ2QsbUJBQW1CO0lBQ25CLGdCQUFnQixFQUFBO0VBbEI1QjtJQXdCWSxxQkFBcUI7SUFDckIsd0VBQXdFO0lBQ3hFLGdCQUFnQixFQUFBO0VBMUI1QjtJQThCWSxxQkFBcUIsRUFBQTtJQTlCakM7TUFpQ2dCLGdCQUFnQjtNQUNoQixjckMzOUdBLEVBQUE7RXFDeTdHaEI7SUF3Q1EscUVBQXFFLEVBQUE7SUF4QzdFO01BMkNZLGNBQWMsRUFBQTtNQTNDMUI7UUE4Q2dCLGNBQWMsRUFBQTtFQTlDOUI7SUFvRFEsbUVBQW1FLEVBQUE7RUFwRDNFO0lBd0RRLG9CQUFhO0lBQWIsb0JBQWE7SUFBYixhQUFhO0lBQ2IseUJBQW1CO1FBQW5CLHNCQUFtQjtZQUFuQixtQkFBbUI7SUFDbkIseUJBQThCO1FBQTlCLHNCQUE4QjtZQUE5Qiw4QkFBOEI7SUFDOUIsNkJyQ2wvR1M7SXFDbS9HVCxpRUFBaUUsRUFBQTtJQTVEekU7TUErRFksZ0JBQWdCLEVBQUE7RUEvRDVCOztJQXFFUSxhQUFhO0lBQ2IsZ0JBQWdCLEVBQUE7O0FBSXhCO0VBRVEsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLHlCckNyZ0hZO0VxQ3NnSFosd0JBQWdCO1VBQWhCLGdCQUFnQixFQUFBO0VBUHhCO0lBVVksa0JBQWtCO0lBQ2xCLFFBQVE7SUFDUixZQUFZO0lBQ1osVUFBVTtJQUNWLGFBQWE7SUFDYiw2Q0FBcUM7WUFBckMscUNBQXFDO0lBQ3JDLHdDQUFnQztJQUFoQyxnQ0FBZ0MsRUFBQTtJbkMweUt4QztNbUN2eUtZLFdBQVc7TUFDWCxZQUFZLEVBQUE7RUFwQjVCO0lBMEJnQixpREFBeUM7WUFBekMseUNBQXlDO0lBQ3pDLGFBQWEsRUFBQTtJbkNxeUt6QjtNbUNseUtnQixnREFBd0M7Y0FBeEMsd0NBQXdDLEVBQUE7RUE5QjVEO0lBb0NZLG9CQUFhO0lBQWIsb0JBQWE7SUFBYixhQUFhO0lBQ2IseUJBQW1CO1FBQW5CLHNCQUFtQjtZQUFuQixtQkFBbUIsRUFBQTtJQXJDL0I7TUF3Q2dCLGdFQUFnRSxFQUFBO0lBeENoRjtNQTRDZ0Isd0JBQXdCO01BQ3hCLGlCQUFpQjtNQUNqQiwwQkFBMEIsRUFBQTtNbkM2eEtwQztRbUMxeEtjLGtCQUFrQjtRQUNsQixrQkFBa0IsRUFBQTtNQWxEdEM7UUFzRG9CLGVBQWUsRUFBQTs7QUFPbkM7RUFHWSxvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CO0VBQ25CLGtCQUFrQixFQUFBO0VsQzVrSHRCO0lrQ3VrSFI7TUFRZ0IsbUJBQWU7VUFBZixlQUFlLEVBQUEsRUE2QnRCO0VBckNUO0lBWWdCLFlBQVksRUFBQTtJbENubEhwQjtNa0N1a0hSO1FBZW9CLFdBQVc7UUFDWCxrQkFBa0IsRUFBQTtRbkNpeEs5QjtVbUM5d0tnQixlQUFlO1VBQ2YsaUJBQWlCLEVBQUEsRUFDcEI7SUFyQnJCO01BeUJvQixTQUFTLEVBQUE7RUF6QjdCO0lBOEJnQixpQkFBaUIsRUFBQTtJbkMwd0s3QjtNbUN2d0tnQixrQkFBa0I7TUFDbEIsa0JBQWtCLEVBQUE7O0FBT3RDO0VBRVEsbUJBQW1CLEVBQUE7O0FBRjNCO0VBTVEsZ0JBQWdCO0VBQ2hCLHNCQUFzQixFQUFBOztBQVA5QjtFQVdRLG1CQUFtQixFQUFBO0VBWDNCO0lBZWdCLGdCQUFnQjtJQUNoQixjckN6bkhBLEVBQUE7O0FxQ3ltSGhCO0VBc0JRLHNDckNob0hJO0VxQ2lvSEosa0JBQWtCO0VBQ2xCLGFBQWEsRUFBQTs7QUFJckI7RUFDSSx1QkFBdUI7RUFDdkIsb0JBQW9CO0VBQ3BCLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsMEJBQTBCO0VBQzFCLHNCQUF3QixFQUFBOztBQUc1QjtFQUNJLG9DQUFvQztFQUNwQyxvQkFBb0I7RUFDcEIsaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUNsQiwwQkFBMEI7RUFDMUIsc0JBQXdCLEVBQUE7RUFONUI7SUFTUSwrQkFBd0I7SUFBeEIsK0JBQXdCO0lBQXhCLHdCQUF3QjtJQUN4QixvQ0FBOEI7UUFBOUIsaUNBQThCO1lBQTlCLDhCQUE4QjtJQUM5QixtQ0FBa0M7UUFBbEMsZ0NBQWtDO1lBQWxDLGtDQUFrQztJQUNsQyxvQkFBb0IsRUFBQTtJQVo1QjtNQWVZLFlyQy9wSEEsRUFBQTs7QXFDb3FIWjtFQUVRLHlCckNocUhZO0VxQ2lxSFosa0VBQWtFO0VBQ2xFLHdDQUFnQztFQUFoQyxnQ0FBZ0M7RUFDaEMsa0JBQWtCO0VBQ2xCLHlCckNwcUhZO0VxQ3FxSFosa0JBQWtCLEVBQUE7RUFQMUI7SUFVWSxvRHJDNXFISTtZcUM0cUhKLDRDckM1cUhJLEVBQUE7RXFDa3FIaEI7SUFjWSxrQkFBa0I7SUFDbEIsbUJBQW1CLEVBQUE7SUFmL0I7TUFrQmdCLGNyQ3BySEEsRUFBQTtFcUNrcUhoQjtJQXVCWSxrQkFBa0I7SUFDbEIsb0NBQW9DO0lBQ3BDLE1BQU07SUFDTixRQUFRO0lBQ1IsV3JDL3JIQTtJcUNnc0hBLGlCQUFpQjtJQUNqQixrQkFBa0IsRUFBQTtJbkM0dUsxQjtNbUN6dUtZLFlBQVk7TUFDWixPQUFPLEVBQUE7SUFqQ3ZCO01BcUNnQixTQUFTO01BQ1QsbUJBQW1CO01BQ25CLGdCQUFnQixFQUFBO0VBdkNoQztJQTZDZ0IsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtJQUNuQixrRUFBa0UsRUFBQTtFQS9DbEY7SUFzRG9CLGdCQUFnQjtJQUNoQixtQkFBbUIsRUFBQTtFQXZEdkM7SUE2RFksb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWE7SUFDYix5QkFBbUI7UUFBbkIsc0JBQW1CO1lBQW5CLG1CQUFtQjtJQUNuQixZQUFZLEVBQUE7SUEvRHhCO01Ba0VnQixXQUFXO01BQ1gsV0FBVztNQUNYLHNCckN4dUhKO01xQ3l1SEksY3JDdnVIQSxFQUFBOztBcUM2dUhoQjtFQUNJLGtCQUFrQixFQUFBO0VBRHRCO0lBS1ksVUFBVTtJQUNWLHdDQUFnQztJQUFoQyxnQ0FBZ0MsRUFBQTtFQU41QztJQVdRLHlCckMzckhrQjtJcUM0ckhsQixlQUFlO0lBQ2YsVUFBVSxFQUFBO0lBYmxCO01BZ0JZLGlCQUFpQjtNQUNqQixtQnJDaHNIYTtNcUNpc0hiLGNyQy92SEk7TUNRWixvQkFEeUI7TUFDekIsb0JBRHlCO01BQ3pCLGFBRHlCO01BRXpCLHlCQUZ5QztVQUV6QyxzQkFGeUM7Y0FFekMsbUJBRnlDO01BR3pDLHdCQUgyRDtVQUczRCxxQkFIMkQ7Y0FHM0QsdUJBSDJEO01vQzB2SG5ELGtCQUFrQixFQUFBO01BcEI5QjtRQXVCZ0IsZ0JBQWdCO1FBQ2hCLDBCQUEwQixFQUFBO0VBeEIxQztJQThCUSxXckM3d0hJO0lxQzh3SEosa0JBQWtCO0lBQ2xCLGtCQUFrQjtJQUNsQix5QnJDaHVIZTtJcUNpdUhmLG1TQVFpRCxFQUFBO0lBMUN6RDtNQTZDWSx5QnJDOXVIYyxFQUFBO0lxQ2lzSDFCO01BaURZLHlCckNqdkhRLEVBQUE7SXFDZ3NIcEI7TUFxRFksbUJBQW1CLEVBQUE7TUFyRC9CO1FBd0RnQixXckN2eUhKLEVBQUE7SXFDK3VIWjtNQTZEWSxvQkFBYTtNQUFiLG9CQUFhO01BQWIsYUFBYTtNQUNiLHlCQUFtQjtVQUFuQixzQkFBbUI7Y0FBbkIsbUJBQW1CO01BQ25CLHFFQUFxRSxFQUFBO01BL0RqRjtRQWtFZ0IsZ0JBQWdCLEVBQUE7UUFsRWhDO1VBcUVvQixjQUFjO1VBQ2QsK0JyQ3J6SFI7VXFDc3pIUSx5QkFBeUI7VUFDekIsZUFBZTtVQUNmLGdCQUFnQixFQUFBO01BekVwQztRQStFb0IsZ0JBQWdCO1FBQ2hCLFdyQy96SFI7UXFDZzBIUSxpQkFBaUI7UUFDakIsb0VBQW9FO1FBQ3BFLG1CQUFtQixFQUFBO1FuQ3VySy9CO1VtQ3ByS2dCLGNBQWM7VUFDZCxrQkFBa0IsRUFBQTtNQXZGMUM7UUE2RmdCLGlCQUFpQixFQUFBO1FuQ2tyS3pCO1VtQy9xS1ksY0FBYztVQUNkLGtCQUFrQixFQUFBO1FBakd0QztVQXFHb0Isb0VBQW9FO1VBQ3BFLFVBQVU7VUFDVixnQkFBZ0I7VUFDaEIsMEJBQTBCLEVBQUE7SUF4RzlDO01BOEdZLHFFQUFxRTtNQUNyRSxvQkFBYTtNQUFiLG9CQUFhO01BQWIsYUFBYTtNQUNiLHlCQUFtQjtVQUFuQixzQkFBbUI7Y0FBbkIsbUJBQW1CLEVBQUE7TUFoSC9CO1FBbUhnQixXQUFXLEVBQUE7UUFuSDNCO1VBc0hvQix5QkFBeUI7VUFDekIsb0VBQW9FO1VBQ3BFLGdCQUFnQjtVQUNoQixXckN4MkhSLEVBQUE7TXFDK3VIWjtRQThIZ0IscUJBQXFCO1FBQ3JCLGlCQUFpQjtRQUNqQixpQkFBaUIsRUFBQTtRbkNzcUt6QjtVbUNucUtZLGdCQUFnQixFQUFBO0VBbklwQztJcENydUhJLG9CQUR5QjtJQUN6QixvQkFEeUI7SUFDekIsYUFEeUI7SUFFekIseUJBRnlDO1FBRXpDLHNCQUZ5QztZQUV6QyxtQkFGeUM7SUFHekMsd0JBSDJEO1FBRzNELHFCQUgyRDtZQUczRCx1QkFIMkQ7SUF6QjNELFdBRHdCO0lBRXhCLFlBRnVDO0lvQzQ0SG5DLGtCQUFrQjtJQUNsQixrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLE9BQU87SUFDUCx1Q3JDNzNIUTtJcUM4M0hSLGtCQUFrQjtJQUNsQixVQUFVO0lBQ1YsaUNBQXlCO0lBQXpCLHlCQUF5QixFQUFBO0lsQ3Y0SHpCO01rQ292SFI7UUFzSlksYUFBYSxFQUFBLEVBUXBCO0lBOUpMO01BMEpZLGVBQWU7TUFDZiwwQkFBMEI7TUFDMUIsV3JDMzRIQSxFQUFBOztBcUNnNUhaO0VBQ0ksYUFBYSxFQUFBO0VsQ3Q1SFQ7SWtDcTVIUjtNcEN0NEhJLG9CQUR5QjtNQUN6QixvQkFEeUI7TUFDekIsYUFEeUI7TUFFekIseUJBRnlDO1VBRXpDLHNCQUZ5QztjQUV6QyxtQkFGeUM7TUFHekMsd0JBSDJEO1VBRzNELHFCQUgyRDtjQUczRCx1QkFIMkQ7TW9DNDRIdkQsZ0JBQWdCLEVBQUE7TUFMeEI7UUFRWSxlQUFlO1FBQ2YsMEJBQTBCO1FBQzFCLGNyQ3g1SEksRUFBQSxFcUN5NUhQOztBQUlUOztxQ25DNnBLcUM7QW1DMXBLckM7RUFDSSxlQUFlO0VBQ2YscUJBQXFCO0VBQ3JCLFNBQVM7RUFDVCxnQkFBZ0IsRUFBQTtFbEMzNkhaO0lrQ3U2SFI7TUFPUSxlQUFlO01BQ2YsZ0JBQWdCLEVBQUEsRUFFdkI7O0FBRUQ7RUFFUSxtQkFBbUI7RUFDbkIscUJBQXFCLEVBQUE7RUFIN0I7SUFNWSxnQkFBZ0I7SUFDaEIsaUJBQWlCO0lBQ2pCLGNyQ3A3SEksRUFBQTs7QXFDeTdIaEI7RUFDSSxtQkFBbUI7RUFDbkIsVUFBVTtFQUNWLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2Isd0JBQXVCO01BQXZCLHFCQUF1QjtVQUF2Qix1QkFBdUIsRUFBQTtFbENwOEhuQjtJa0NnOEhSO01BT1EsY0FBYztNQUNkLGNBQWMsRUFBQSxFQTJKckI7RUFuS0Q7SUFZUSxxQkFBcUI7SUFDckIsa0JBQWtCO0lBQ2xCLGNBQWMsRUFBQTtJbEM5OEhkO01rQ2c4SFI7UUFpQlksU0FBUztRQUNULHFCQUFxQixFQUFBLEVBZ0o1QjtJQWxLTDtNQXNCWSxnQkFBZ0I7TUFDaEIsa0JBQWtCO01BQ2xCLFdBQVc7TUFDWCxvQkFBYTtNQUFiLG9CQUFhO01BQWIsYUFBYTtNQUNiLHdCQUF1QjtVQUF2QixxQkFBdUI7Y0FBdkIsdUJBQXVCO01BQ3ZCLGdCQUFnQixFQUFBO01sQzM5SHBCO1FrQ2c4SFI7VUE4QmdCLGNBQWM7VUFDZCxnQkFBZ0I7VUFDaEIsYUFBYSxFQUFBO1VuQ2lwS25CO1ltQzlvS1UsaUJBQWlCLEVBQUEsRUFDcEI7SUFwQ2pCO01BeUNZLGtCQUFrQjtNQUNsQixTQUFTO01BQ1QsV0FBVztNQUNYLG9CQUFvQjtNQUNwQixjQUFjO01BQ2QsbURBQTJDO2NBQTNDLDJDQUEyQyxFQUFBO01sQzkrSC9DO1FrQ2c4SFI7VUFpRGdCLGtCQUFrQjtVQUNsQixTQUFTO1VBQ1QsV0FBVztVQUNYLHFCQUFxQjtVQUNyQixjQUFjO1VBQ2QsbURBQTJDO2tCQUEzQywyQ0FBMkMsRUFBQTtVbkM0b0tqRDtZbUN6b0tVLFlBQVk7WUFDWix1QkFBdUI7WUFDdkIsc0JBQXNCLEVBQUEsRUFDekI7SUE1RGpCO01BaUVZLGNyQzM4SEk7TXFDNDhISiw2QnJDNThISTtNcUM2OEhKLHNCQUFzQixFQUFBO01sQ25nSTFCO1FrQ2c4SFI7VUFzRWdCLGtCQUFrQjtVQUNsQixnQkFBZ0I7VUFDaEIsaUJBQWlCO1VBQ2pCLHdCQUF1QjtjQUF2QixxQkFBdUI7a0JBQXZCLHVCQUF1QjtVQUN2Qix5RUFBeUU7VUFDekUsa0JBQWtCO1VBQ2xCLGlCQUFpQjtVQUNqQiw4QnJDdjlIQSxFQUFBO1VFOGxTTjtZbUNwb0tVLGlCQUFpQjtZQUNqQiwrQnJDMzlISjtZcUM0OUhJLGNBQWM7WUFDZCxrQkFBa0I7WUFDbEIsc0JBQXFCO2dCQUFyQixtQkFBcUI7b0JBQXJCLHFCQUFxQjtZQUNyQixlQUFlO1lBQ2YsbUJBQW1CO1lBQ25CLGlCQUFpQixFQUFBLEVBQ3BCO01BeEZqQjtRQTRGZ0IsZ0JBQWdCO1FBQ2hCLGtDQUFrQztRQUNsQyxjckN4K0hBO1FxQ3krSEEsc0JyQzFoSUo7UXFDMmhJSSxnQkFBZ0IsRUFBQTtRbENoaUl4QjtVa0NnOEhSO1lBbUdvQixrQkFBa0I7WUFDbEIsU0FBUztZQUNULFdBQVc7WUFDWCxjQUFjO1lBQ2QsbUNBQTJCO29CQUEzQiwyQkFBMkIsRUFBQTtZbkNtb0tuQztjbUNob0tZLFdBQVc7Y0FDWCxZQUFZLEVBQUEsRUFDZjtNQTVHckI7UUFpSGdCLGVBQWU7UUFDZixlQUFlLEVBQUE7SUFsSC9CO01BdUhZLGNyQ2hqSUk7TXFDaWpJSix3Q0FBd0M7TUFDeEMsc0JBQXNCLEVBQUE7TWxDempJMUI7UWtDZzhIUjtVQTRIZ0Isa0JBQWtCO1VBQ2xCLGdCQUFnQjtVQUNoQixpQkFBaUI7VUFDakIsNkJBQXVCO2NBQXZCLDBCQUF1QjtrQkFBdkIsdUJBQXVCO1VBQ3ZCLHlFQUF5RTtVQUN6RSxpQkFBaUI7VUFDakIseUNBQXlDLEVBQUE7VW5DMm5LL0M7WW1DeG5LVSxjQUFjO1lBQ2Qsa0JBQWtCO1lBQ2xCLGlCQUFpQjtZQUNqQixpQkFBaUI7WUFDakIsMENBQTBDO1lBQzFDLHNCQUFxQjtnQkFBckIsbUJBQXFCO29CQUFyQixxQkFBcUIsRUFBQSxFQUN4QjtNQTNJakI7UUErSWdCLGdCQUFnQjtRQUNoQixrQ0FBa0M7UUFDbEMsZ0JBQWdCO1FBQ2hCLFdyQzdrSUo7UXFDOGtJSSxvQ0FBb0M7UUFDcEMsWUFBWTtRQUNaLFdBQVc7UUFDWCxrQkFBa0I7UUFDbEIsWUFBWTtRQUNaLG9CQUFvQjtRcEN6a0loQyxvQkFEeUI7UUFDekIsb0JBRHlCO1FBQ3pCLGFBRHlCO1FBRXpCLHlCQUZ5QztZQUV6QyxzQkFGeUM7Z0JBRXpDLG1CQUZ5QztRQUd6Qyx3QkFIMkQ7WUFHM0QscUJBSDJEO2dCQUczRCx1QkFIMkQsRUFBQTtNb0NrN0gvRDtRQTZKZ0IsZUFBZTtRQUNmLGVBQWU7UUFDZixjckM5a0lJLEVBQUE7O0FxQ29sSXBCO0VBQ0ksYUFBYTtFQUNiLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUIsRUFBQTtFbEN4bUlmO0lrQ3FtSVI7TUFNUSxjQUFjLEVBQUEsRUFnRXJCO0VBdEVEO0lBVVEsa0JBQWtCO0lBQ2xCLFVBQVUsRUFBQTtJbkNpbktkO01tQzltS1EsZUFBZTtNQUNmLGlCQUFpQixFQUFBO0lsQ3BuSXJCO01rQ3FtSVI7UUFtQlksbUJBQW1CO1FBQ25CLFVBQVU7UUFDVixpQkFBaUI7UUFDakIsa0JBQWtCLEVBQUE7UW5DK21LdEI7VW1DNW1LUSxrQkFBa0I7VUFDbEIsaUJBQWlCLEVBQUEsRUFDcEI7SWxDaG9JTDtNa0NxbUlSO1FBK0JZLGNBQWM7UUFDZCx3RUFBd0UsRUFBQSxFQUUvRTtFQWxDTDtJQXFDUSx3QkFBd0IsRUFBQTtJbEMxb0l4QjtNa0NxbUlSO1FBd0NZLFdBQVcsRUFBQSxFQTZCbEI7SUFyRUw7TUE0Q1ksc0VBQXNFO01BQ3RFLHNCQUFzQixFQUFBO01BN0NsQztRQWdEZ0IsZ0JBQWdCO1FBQ2hCLGlCQUFpQjtRQUNqQixjckNocElBLEVBQUE7UUVzdlNSO1VtQ25tS1ksY0FBYztVQUNkLGtCQUFrQixFQUFBO0lBdER0QztNQTREWSxlQUFlO01BQ2Ysc0JBQXNCO01BQ3RCLHdFQUF3RTtNQUN4RSxnQkFBZ0IsRUFBQTtNbENwcUlwQjtRa0NxbUlSO1VBa0VnQixvRUFBb0UsRUFBQSxFQUUzRTs7QUFJVDtFQUNJLGdCQUFnQixFQUFBO0VsQzlxSVo7SWtDNnFJUjtNQUlRLGdCQUFnQixFQUFBLEVBdUN2QjtFQTNDRDtJQVFRLG9CQUFhO0lBQWIsb0JBQWE7SUFBYixhQUFhO0lBQ2Isd0JBQXVCO1FBQXZCLHFCQUF1QjtZQUF2Qix1QkFBdUIsRUFBQTtJbEN0ckl2QjtNa0M2cUlSO1FBWVksY0FBYyxFQUFBLEVBOEJyQjtJQTFDTDtNQWdCWSwwQkFBMEI7TUFDMUIsZ0JBQWdCO01BQ2hCLGVBQWUsRUFBQTtNQWxCM0I7UUFxQmdCLGdCQUFnQixFQUFBO1FsQ2xzSXhCO1VrQzZxSVI7WUF3Qm9CLHlCQUE2QjtZQUM3QixvQkFBb0I7WUFDcEIsbUJBQW1CO1lBQ25CLGdDckNqcElDO1lxQ2twSUQsZ0JBQWdCLEVBQUEsRUFFdkI7SUE5QmI7TUFrQ1ksZUFBZTtNQUNmLFlBQVksRUFBQTtNQW5DeEI7UUFzQ2dCLGdCQUFnQjtRQUNoQixnQkFBZ0IsRUFBQTs7QUFNaEM7RUFDSSxzRUFBc0U7RUFDdEUsZ0JBQWdCO0VBQ2hCLGdCQUFnQixFQUFBO0VBSHBCO0lBTVEsZ0JBQWdCLEVBQUE7SUFOeEI7TUFVZ0Isd0JBQXdCO01BQ3hCLGdCQUFnQjtNQUNoQix5QkFBeUI7TUFDekIseUJBQXlCO01BQ3pCLGVBQWU7TUFDZixhQUFhO01BQ2IsZ0JBQWdCO01BQ2hCLGFBQWE7TUFDYiwyQ0FBK0M7TUFDL0MseUJyQ2x1SUksRUFBQTtNRTh5U2Q7UW1DemtLYyxpQkFBaUIsRUFBQTtJQXRCckM7TUE2QmdCLGdCQUFnQixFQUFBO0lBN0JoQztNQWtDb0Isc0JBQXNCO01BQ3RCLGNyQ3J0SUE7TXFDc3RJQSxhQUFhO01BQ2IsMkNBQStDO01BQy9DLGdCQUFnQjtNQUNoQix3SEFBd0g7TUFDeEgsZ0JBQWdCLEVBQUE7TW5DbWtLOUI7UW1DaGtLa0IsaUJBQWlCLEVBQUE7TUEzQ3pDO1FBK0N3Qix5QkFBeUIsRUFBQTtNQS9DakQ7UUFvRDRCLGNyQ3Z3SVosRUFBQTtNcUNtdEloQjtRQXlEd0IsZ0JBQWdCO1FBQ2hCLGVBQWU7UUFDZiwwQkFBMEI7UUFDMUIscUJBQXFCLEVBQUE7O0FBUTdDOzs4Qm5DcWpLOEI7QW1DbGpLOUI7RUFDSSx3RUFBd0UsRUFBQTtFQUQ1RTtJQUlRLHNCQUFzQjtJQUN0QixZQUFZLEVBQUE7O0FBSXBCO0VBQ0kseUJyQ3Z4SWtCLEVBQUE7RXFDc3hJdEI7SUFJUSx5QnJDbnlJWSxFQUFBO0VxQyt4SXBCO0lBUVEsc0JyQzd5SUksRUFBQTs7QXFDaXpJWjs7OEJuQzZpSzhCO0FDbjJTdEI7RWtDeXpJUjtJQUVRLGFBQWEsRUFBQSxFQUVwQjs7QUFFRDtFcENoeklJLG9CQUR5QjtFQUN6QixvQkFEeUI7RUFDekIsYUFEeUI7RUFFekIseUJBRnlDO01BRXpDLHNCQUZ5QztVQUV6QyxtQkFGeUM7RUFHekMsd0JBSDJEO01BRzNELHFCQUgyRDtVQUczRCx1QkFIMkQ7RW9DbXpJM0QsWUFBWSxFQUFBO0VBRmhCO0lBS1EsbUJBQW1CO0lBQ25CLG1CQUFtQjtJQUNuQix5QkFBeUIsRUFBQTtFQVBqQztJQVdRLG9FQUFvRTtJQUNwRSxxQkFBcUI7SUFDckIsbUJBQW1CO0lBQ25CLGNBQWM7SUFDZCxnQkFBZ0I7SUFDaEIseUJBQXlCLEVBQUE7SWxDLzBJekI7TWtDK3pJUjtRQW1CWSxlQUFlLEVBQUEsRUFFdEI7RUFyQkw7SUF3QlEsbUJBQW1CO0lBQ25CLGdCQUFnQjtJQUNoQixjckN4MElZLEVBQUE7O0FxQzQwSXBCO0VBQ0ksYUFBYTtFQUNiLHNCckN0MUlhO0VxQ3UxSWIsa0JBQWtCLEVBQUE7RUFIdEI7SUFNUSw4Q3JDMTFJUztJcUMyMUlULFlBQVksRUFBQTtJQVBwQjtNQVVZLDhDckM5MUlLLEVBQUE7TXFDbzFJakI7UUFhZ0IsNkJBQTZCO1FBQzdCLGdCQUFnQjtRQUNoQiwwQkFBMEIsRUFBQTtRQWYxQztVQWtCb0IscUJyQ3YySU47VXFDdzJJTSx3QkFBZ0I7a0JBQWhCLGdCQUFnQixFQUFBO1FBbkJwQztVQXVCb0Isc0JyQy8ySVI7VXFDZzNJUSxnQkFBZ0IsRUFBQTtRQXhCcEM7VUE0Qm9CLG9CQUFjO2NBQWQsY0FBYztVQUNkLFdBQVc7VUFDWCxZQUFZO1VBQ1osaUJBQWlCO1VBQ2pCLGNyQzUySUE7VXFDNjJJQSxnQkFBZ0I7VUFDaEIsa0NBQWtDO1VBQ2xDLGdCQUFnQjtVQUNoQixzQkFBc0I7VUFDdEIsc0RBQXNDO1VBQXRDLDhDQUFzQztVQUF0QyxzQ0FBc0M7VUFBdEMsMEVBQXNDO1VwQ24zSXRELG9CQUR5QjtVQUN6QixvQkFEeUI7VUFDekIsYUFEeUI7VUFFekIseUJBRnlDO2NBRXpDLHNCQUZ5QztrQkFFekMsbUJBRnlDO1VBR3pDLHdCQUgyRDtjQUczRCxxQkFIMkQ7a0JBRzNELHVCQUgyRCxFQUFBO1FvQyswSS9EO1VBMENvQixjckNoNElKLEVBQUE7VXFDczFJaEI7WUE2Q3dCLGdDQUF3QjtvQkFBeEIsd0JBQXdCLEVBQUE7SUE3Q2hEO01Bc0RvQixxQkFBcUI7TUFDckIsZ0JBQWdCO01BQ2hCLGdCQUFnQjtNQUNoQixtQkFBbUI7TUFDbkIsY3JDdDRJQSxFQUFBOztBcUM2NElwQjtFcEMvNElJLG9CQUR5QjtFQUN6QixvQkFEeUI7RUFDekIsYUFEeUI7RUFFekIseUJBRnlDO01BRXpDLHNCQUZ5QztVQUV6QyxtQkFGeUM7RUFHekMsd0JBSDJEO01BRzNELHFCQUgyRDtVQUczRCx1QkFIMkQ7RW9DbTVJdkQsa0JBQWtCO0VBQ2xCLG1CQUFtQixFQUFBO0VBSjNCO0lBT1ksVUFBVSxFQUFBO0VBUHRCO0lBV1ksYUFBYTtJQUNiLGlCQUFpQixFQUFBO0lBWjdCO01BZ0JvQixjckM3NUlBO01xQzg1SUEsYUFBYSxFQUFBO0lBakJqQztNQXNCZ0Isa0JBQWtCO01BQ2xCLE1BQU07TUFDTixRQUFRO01BQ1IsV0FBVztNQUNYLGlCQUFpQjtNQUNqQix5QkFBeUIsRUFBQTs7QUFNekM7RUFDSSxnQkFBZ0I7RUFDaEIsa0JBQWtCLEVBQUE7RUFGdEI7SUFLUSxlQUFlO0lBQ2YsbUJBQW1CO0lBQ25CLGNyQy83SVEsRUFBQTtFcUN3N0loQjtJQVdRLGdCQUFnQjtJQUNoQixxQkFBcUI7SUFDckIsZ0JBQWdCO0lBQ2hCLGNyQzU3SVksRUFBQTtJcUM4NklwQjtNQWlCWSxjckMvN0lRO01xQ2c4SVIsYUFBYSxFQUFBO0VBbEJ6QjtJQXVCUSxrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLFFBQVE7SUFDUixXQUFXO0lBQ1gsaUJBQWlCO0lBQ2pCLHlCQUF5QixFQUFBOztBQUlqQztFQUNJLFdBQVc7RUFDWCxhQUFhO0VBQ2Isb0JBQWlCO0tBQWpCLGlCQUFpQixFQUFBOztBQUdyQjtFQUNJLHlCckMzOUlnQixFQUFBOztBcUM4OUlwQjtFQUlnQixTQUFTO0VBQ1QsVUFBVSxFQUFBO0VsQzkrSWxCO0lrQ3krSVI7TUFRb0IsTUFBTTtNQUNOLFVBQVU7TXBDbitJMUIsb0JBRHlCO01BQ3pCLG9CQUR5QjtNQUN6QixhQUR5QjtNQUV6Qix5QkFGeUM7VUFFekMsc0JBRnlDO2NBRXpDLG1CQUZ5QztNQUd6Qyx3QkFIMkQ7VUFHM0QscUJBSDJEO2NBRzNELHVCQUgyRDtNb0NzK0kzQyxZQUFZO01BQ1osZ0JBQWdCLEVBQUEsRUFFdkI7O0FBZGI7RUFtQlEsa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixnQkFBZ0IsRUFBQTtFQXJCeEI7SXBDMTlJSSxvQkFEeUI7SUFDekIsb0JBRHlCO0lBQ3pCLGFBRHlCO0lBRXpCLHlCQUZ5QztRQUV6QyxzQkFGeUM7WUFFekMsbUJBRnlDO0lBR3pDLHdCQUgyRDtRQUczRCxxQkFIMkQ7WUFHM0QsdUJBSDJEO0lvQ28vSW5ELGtCQUFrQjtJQUNsQixhQUFhO0lBQ2IsVUFBVTtJcENwZ0pkLFNBQVM7SUFDVCxtQ0FBMkI7WUFBM0IsMkJBQTJCO0lvQ3FnSnZCLGtCQUFrQjtJQUNsQixjQUFjO0lBQ2QsZ0VBQWdFO0lBQ2hFLHdDQUF3QztJQUN4QyxXQUFXO0lBQ1gsd0NBQWdDO0lBQWhDLGdDQUFnQztJQUNoQywyQkFBMkI7SUFDM0IsNEJBQTRCO0lBQzVCLGtDQUEwQjtZQUExQiwwQkFBMEIsRUFBQTtJbEM5Z0o5QjtNa0N5K0lSO1FBd0NnQixNQUFNO1FBQ04sYUFBYTtRQUNiLFVBQVU7UUFDVixZQUFZO1FBQ1osd0NBQXdDLEVBQUEsRUEwQi9DO0lBdEVUO01BZ0RnQixhQUFhO01BQ2IsZ0VBQWdFO01BQ2hFLGlFQUFpRTtNQUNqRSx3Q0FBZ0M7TUFBaEMsZ0NBQWdDO01BQ2hDLGtCQUFrQixFQUFBO01BcERsQztRQXVEb0IsdUNyQ3poSkosRUFBQTtRcUNrK0loQjtVQTBEd0IsV3JDOWhKWixFQUFBO01xQ28rSVo7UUErRG9CLFdyQy9oSkg7UUNwQmIsV0FEd0I7UUFFeEIsWUFGdUM7UUEyQnZDLG9CQUR5QjtRQUN6QixvQkFEeUI7UUFDekIsYUFEeUI7UUFFekIseUJBRnlDO1lBRXpDLHNCQUZ5QztnQkFFekMsbUJBRnlDO1FBR3pDLHdCQUgyRDtZQUczRCxxQkFIMkQ7Z0JBRzNELHVCQUgyRDtRb0M2aEozQyx3Q0FBZ0M7UUFBaEMsZ0NBQWdDO1FBQ2hDLG9FQUFvRSxFQUFBOztBQW5FeEY7RUEwRVEsY3JDNWlKUTtFcUM2aUpSLGdFQUFnRTtFQUNoRSxXQUFXO0VBQ1gsa0JBQWtCLEVBQUE7RUE3RTFCO0lBZ0ZZLG1CQUFtQixFQUFBO0VBaEYvQjtJQW9GWSxtRUFBbUU7SUFDbkUscUJBQXFCO0lBQ3JCLGNyQzlpSlEsRUFBQTs7QXFDbWpKcEI7RUFFUSxrQkFBa0I7RUFDbEIsZ0NyQzlqSlM7VXFDOGpKVCx3QnJDOWpKUztFcUMrakpULGtFQUFrRTtFQUNsRSxtQkFBbUIsRUFBQTtFbkN1K0p6QjtJbUNwK0pVLGNBQWMsRUFBQTtFQVIxQjtJQVlZLGtCQUFrQixFQUFBO0lBWjlCO01BZWdCLG1CQUFtQjtNQUNuQix5QnJDNWtKRjtNcUM2a0pFLFlBQVk7TUFDWixhQUFhO01BQ2IsWUFBWTtNQUNaLGNBQWM7TUFDZCxvQkFBaUI7U0FBakIsaUJBQWlCLEVBQUE7O0FBckJqQztFQTJCUSxtQkFBbUIsRUFBQTtFbEMvbEpuQjtJa0Nva0pSO01BOEJZLFdBQVcsRUFBQSxFQXVEbEI7RUFyRkw7SUFrQ1ksZ0JBQWdCO0lBQ2hCLGVBQWU7SUFDZixxQkFBcUI7SUFDckIsZ0JBQWdCO0lBQ2hCLGNyQ3psSlE7SXFDMGxKUixrQkFBa0I7SUFDbEIsb0JBQW9CO0lBQ3BCLG1CQUFtQixFQUFBO0lBekMvQjtNQTRDZ0IseUJBQXlCO01BQ3pCLGVBQWU7TUFDZixxQkFBcUIsRUFBQTtNbkM2OUovQjtRbUMxOUpjLGlDQUF5QjtnQkFBekIseUJBQXlCLEVBQUE7TUFqRDdDO1FBcURvQixpQkFBaUIsRUFBQTtRbkMwOUo3QjtVbUN2OUpnQixlQUFlO1VBQ2YsZ0JBQWdCLEVBQUE7TUF6RHhDO1FBOERvQixnQkFBZ0IsRUFBQTtRbkNzOUo1QjtVbUNuOUpnQixjQUFjO1VBQ2QsaUJBQWlCLEVBQUE7SUFsRXpDO01wQ3BsSkksV0FEbUM7TUFFbkMsa0JBRnFCO01BWWpCLFFBQVE7TUFDUixtQ0FBMkI7Y0FBM0IsMkJBQTJCO01vQ2twSm5CLFNBQVM7TUFDVCxXQUFXO01BQ1gsV0FBVztNQUNYLG9DQUFvQyxFQUFBO0VBN0VwRDtJQWtGWSx5QkFBeUI7SUFDekIscUJBQXFCLEVBQUE7O0FBS2pDOzs4Qm5DODhKOEI7QW1DMzhKOUI7RUFDSSxlQUFlO0VBQ2YsUUFBUTtFcEN0cUpKLFFBQVE7RUFDUixtQ0FBMkI7VUFBM0IsMkJBQTJCO0VvQ3VxSi9CLFVBQVUsRUFBQTtFbkM4OEpaO0ltQzE4SlUsZ0JBQWdCLEVBQUE7RUFSNUI7SUFZWSx5QnJDaHFKUTtJcUNpcUpSLHlCckN4cEpVO0lxQ3lwSlYsY0FBYztJQUNkLDJCQUEyQjtJQUMzQiw4QkFBOEI7SUFDOUIsa0JBQWtCO0lBQ2xCLFdBQVc7SUFDWCxZQUFZO0lBQ1osVUFBVTtJcENwcUpsQixvQkFEeUI7SUFDekIsb0JBRHlCO0lBQ3pCLGFBRHlCO0lBRXpCLHlCQUZ5QztRQUV6QyxzQkFGeUM7WUFFekMsbUJBRnlDO0lBR3pDLHdCQUgyRDtRQUczRCxxQkFIMkQ7WUFHM0QsdUJBSDJEO0lvQ3VxSm5ELGVBQWU7SUFDZixxQkFBcUI7SUFDckIsZUFBZTtJQUNmLGdCQUFnQixFQUFBO0lBekI1QjtNQTRCZ0IsY3JDcHJKQSxFQUFBO01xQ3dwSmhCO1FBK0JvQixjckN2ckpKLEVBQUE7SXFDd3BKaEI7TUFvQ2dCLGdCQUFnQjtNQUNoQixnQkFBZ0I7TUFDaEIsZ0JBQWdCO01BQ2hCLFlBQVksRUFBQTtNQXZDNUI7UUEwQ29CLFlBQVk7UUFDWixVQUFVO1FBQ1YsVUFBVTtRQUNWLFlBQVk7UUFDWixrQkFBa0IsRUFBQTs7QUFPdEM7OzhCbkNrOEo4QjtBbUMvN0o5QjtFQUNJLFdBQVc7RUFDWCxhQUFhO0VBQ2IsZ0JBQWdCO0VBQ2hCLHVDckNwdEpZO0VxQ3F0Slosa0JBQWtCO0VBQ2xCLGtCQUFrQixFQUFBO0VBTnRCO0lBU1EsZ0JBQWdCO0lBQ2hCLFdBQVcsRUFBQTtJQVZuQjtNQWNnQixrREFBMEM7Y0FBMUMsMENBQTBDO01BQzFDLG9EQUFvQztNQUFwQyw0Q0FBb0M7TUFBcEMsb0NBQW9DO01BQXBDLHNFQUFvQyxFQUFBO0lBZnBEO01Bb0JZLG9CQUFpQjtTQUFqQixpQkFBaUI7TUFDakIsb0RBQW9DO01BQXBDLDRDQUFvQztNQUFwQyxvQ0FBb0M7TUFBcEMsc0VBQW9DO01BQ3BDLFdBQVcsRUFBQTtJQXRCdkI7TXBDbHVKSSxXQUR3QjtNQUV4QixZQUZ1QztNQTJCdkMsb0JBRHlCO01BQ3pCLG9CQUR5QjtNQUN6QixhQUR5QjtNQUV6Qix5QkFGeUM7VUFFekMsc0JBRnlDO2NBRXpDLG1CQUZ5QztNQUd6Qyx3QkFIMkQ7VUFHM0QscUJBSDJEO2NBRzNELHVCQUgyRDtNb0NxdUpuRCxrQkFBa0I7TUFDbEIsTUFBTTtNQUNOLE9BQU87TUFDUCx5QnJDN3RKQztNcUM4dEpELGNyQ2h2SkksRUFBQTs7QXNDOUJoQjs7NEJwQzZzVDRCO0FvQzFzVDVCO0VBQ0ksZ0JBQWdCO0VBQ2hCLFNBQVMsRUFBQTs7QUFHYjtFQUNJLGlCQUFpQjtFQUNqQixjQUFjO0VBRWQsVUFBQTtFQUtBLFVBQUE7RUFLQSxXQUFBO0VBTUEsb0JBQUEsRUFBcUI7RUFwQnpCO0lBTVEsVUFBVSxFQUFBO0VBTmxCO0lBV1Esc0J0Q2FTLEVBQUE7RXNDeEJqQjtJQWdCUSxtQnRDMkVjO0lzQzFFZCxrQkFBa0IsRUFBQTtFQWpCMUI7SUFzQlEsWUFBWSxFQUFBOztBQUlwQjtFQUNJLGFBQWE7RUFDYixnQkFBZ0I7RUFDaEIsb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYix5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQixFQUFBO0VwQ2tzVHJCO0lvQy9yVE0sZ0JBQWdCLEVBQUE7RUFQeEI7SUFXUSxrQkFBa0I7SUFDbEIsV0FBVztJQUNYLFlBQVk7SUFDWixhQUFhO0lBQ2IsNkJBQTZCO0lBQzdCLG9DQUFrQztJQUNsQyw2QkFBNkI7SUFDN0Isd0NBQWdDO0lBQWhDLGdDQUFnQyxFQUFBO0lwQytyVHBDO01vQzVyVFEsbUJBQW1CO01BQ25CLGVBQWUsRUFBQTtJQXRCM0I7TUEwQlksMENBQTBDO01BQzFDLHFCQUFxQixFQUFBO0lBM0JqQztNQStCWSx5QkFBeUI7TUFDekIsd0JBQWdCO2NBQWhCLGdCQUFnQixFQUFBO0VBaEM1QjtJQXFDUSxjdEN6Q1E7SXNDMENSLGdCQUFnQjtJQUNoQix1QkFBdUI7SUFDdkIsbUJBQW1CLEVBQUE7O0FBSTNCO0VBQ0ksZ0JBQWdCLEVBQUE7RUFEcEI7SUFJUSxhQUFhO0lBQ2Isa0JBQWtCLEVBQUE7O0FBSTFCO0VBQ0ksZ0JBQWdCO0VBQ2hCLFNBQVM7RUFDVCxVQUFVLEVBQUE7RW5DbkVOO0ltQ2dFUjtNQU1RLGVBQWU7TUFDZixNQUFNO01BQ04sWUFBWTtNQUNaLHNCdENwRUk7TXNDcUVKLFVBQVU7TUFDVixrRUFBa0U7TUFDbEUsWUFBWTtNQUNaLGFBQWE7TUFDYixpQ0FBeUI7TUFBekIseUJBQXlCO01BQ3pCLGtCQUFrQjtNQUNsQixnQkFBZ0IsRUFBQTtNcENrclRsQjtRb0MvcVRNLFdBQVc7UUFDWCxhQUFhLEVBQUEsRUFDaEI7RUFyQlQ7SUF5QlEsT0FBTyxFQUFBO0lwQzhxVFg7TW9DM3FUUSxXQUFXO01BQ1gsUUFBUSxFQUFBO0VBN0JwQjtJQWtDUSxhQUFhLEVBQUE7SW5DbEdiO01tQ2dFUjtRQXFDWSxjQUFjO1FBQ2QsbUJBQW1CLEVBQUEsRUFtQjFCO0lBekRMO01BMENZLG9CQUFhO01BQWIsb0JBQWE7TUFBYixhQUFhO01BQ2IsZUFBZTtNQUNmLGN0Q3JHSSxFQUFBO01zQ3lEaEI7UUErQ2dCLGNBQWM7UUFDZCxXQUFXO1FBQ1gsaUJBQWlCLEVBQUE7UXBDdXFUekI7VW9DcHFUWSxtQkFBbUI7VUFDbkIsZ0JBQWdCLEVBQUE7RUFyRHBDO0lBNERRLFd0Q3ZISTtJc0N3SEosc0J0Q3hISSxFQUFBO0lzQzJEWjtNQWdFWSxhQUFhO01BQ2IseUJ0QzdHVTtNc0M4R1YsY3RDM0hJO01zQzRISixrQkFBa0I7TUFDbEIsc0J0Qy9IQSxFQUFBO01zQzJEWjtRQTRFb0Msb0JBQWE7UUFBYixvQkFBYTtRQUFiLGFBQWE7UUFDYix5QkFBbUI7WUFBbkIsc0JBQW1CO2dCQUFuQixtQkFBbUIsRUFBQTtRQTdFdkQ7VUFpRjRDLGlCQUFpQixFQUFBO1VwQ3dwVG5EO1lvQ3JwVHNDLGNBQWM7WUFDZCxrQkFBa0IsRUFBQTtRQXJGbEU7VUEyRndDLGdCQUFnQjtVQUNoQixpQkFBaUI7VUFDakIsZUFBZSxFQUFBO1VwQ21wVDdDO1lvQ2hwVGtDLGNBQWM7WUFDZCxrQkFBa0IsRUFBQTtRQWpHOUQ7VUFzR3dDLG9CQUFhO1VBQWIsb0JBQWE7VUFBYixhQUFhLEVBQUE7VUF0R3JEO1lBeUc0QyxTQUFTLEVBQUE7WUF6R3JEO2NBNEdnRCxnQkFBZ0IsRUFBQTtZQTVHaEU7Y0FnSGdELGN0Qy9INUIsRUFBQTtjc0NlcEI7Z0JBbUhvRCxjdEN6SnBDLEVBQUE7TXNDc0NoQjtRQW9JZ0MscUJBQXFCO1FBQ3JCLGlCQUFpQjtRQUNqQixnQnRDak1wQjtRc0NrTW9CLGtCQUFrQjtRQUNsQixlQUFlO1FBQ2Ysc0J0Q3BNcEI7UXNDcU1vQixlQUFlLEVBQUE7UUExSS9DO1VBNklvQyxjdEN0TXBCO1VzQ3VNb0IsZ0JBQWdCLEVBQUE7TUE5SXBEO1FBMkpnQyxTQUFTO1FBQ1QsZ0JBQWdCLEVBQUE7UUE1SmhEO1VBaUs0QyxnQkFBZ0IsRUFBQTtRQWpLNUQ7VUF1S29DLG9CQUFhO1VBQWIsb0JBQWE7VUFBYixhQUFhO1VBQ2IsWUFBWTtVQUNaLGNBQWM7VUFDZCxtQkFBbUI7VUFDbkIsa0JBQWtCLEVBQUE7VUEzS3REO1lBOEt3QyxjdENqS3JCO1lzQ2tLcUIsb0VBQW9FLEVBQUE7VUEvSzVHO1lBbUx3QyxrRUFBa0U7WUFDbEUsaUJBQWlCO1lBQ2pCLGVBQWUsRUFBQTtNQXJMdkQ7UUFnTW9CLGdCQUFnQixFQUFBO1FBaE1wQztVQW9NNEIsb0JBQWE7VUFBYixvQkFBYTtVQUFiLGFBQWE7VUFDYix5QkFBbUI7Y0FBbkIsc0JBQW1CO2tCQUFuQixtQkFBbUI7VUFDbkIsZ0JBQWdCO1VBQ2hCLG1CQUFlO2NBQWYsZUFBZTtVQUNmLFlBQVksRUFBQTtVQXhNeEM7WUEyTWdDLGFBQWE7WUFDYixXQUFXLEVBQUE7WUE1TTNDO2NBK01vQyxXQUFXO2NBQ1gsWUFBWTtjQUNaLHlCdEN4UHZCO2NzQ3lQdUIsa0JBQWtCO2NyQ25RbEQsb0JBRHlCO2NBQ3pCLG9CQUR5QjtjQUN6QixhQUR5QjtjQUV6Qix5QkFGeUM7a0JBRXpDLHNCQUZ5QztzQkFFekMsbUJBRnlDO2NBR3pDLHdCQUgyRDtrQkFHM0QscUJBSDJEO3NCQUczRCx1QkFIMkQsRUFBQTtjcUNrRC9EO2dCQXNOd0MsY3RDL1F4QjtnQnNDZ1J3QixhQUFhLEVBQUE7Z0JBdk5yRDtrQkEwTjRDLGNBQWMsRUFBQTtZQTFOMUQ7Y0FpT3dDLHlCdENqTmxCLEVBQUE7WXNDaEJ0QjtjQXVPd0MseUJ0Q3ROakIsRUFBQTtZc0NqQnZCO2NBNk93Qyx5QnRDM05uQixFQUFBO1lzQ2xCckI7Y0FtUHdDLHlCdENoT2IsRUFBQTtZc0NuQjNCO2NBeVB3Qyx5QnRDek9sQixFQUFBO1lzQ2hCdEI7Y0ErUHdDLHlCdEM5T2pCLEVBQUE7WXNDakJ2QjtjQXFRd0MseUJ0Q25QbkIsRUFBQTtZc0NsQnJCO2NBMlF3Qyx5QnRDeFBiLEVBQUE7TUduRm5CO1FtQ2dFUjtVQXFSZ0IsVUFBVTtVQUNWLFlBQVksRUFBQSxFQW9DbkI7TUExVFQ7UUEwUmdCLGdCQUFnQixFQUFBO01BMVJoQztRQThSZ0IsZ0JBQWdCO1FBQ2hCLHlCdENwVkksRUFBQTtNc0NxRHBCO1FBbVNnQixZQUFZO1FBQ1osbUJBQW1CO1FBQ25CLGdCQUFnQixFQUFBO1FBclNoQztVQXdTb0IsVUFBVSxFQUFBO1VBeFM5QjtZQTJTd0IsZ0JBQWdCLEVBQUE7WUEzU3hDO2NBOFM0QixjQUFjO2NBQ2QsZ0JBQWdCO2NBQ2hCLHVCQUF1QjtjQUN2QixtQkFBbUIsRUFBQTtjQWpUL0M7Z0JBb1RnQyxnQkFBZ0IsRUFBQTtJQXBUaEQ7TUE2VFksY3RDdFhJO01zQ3VYSixZQUFZO01BQ1osU0FBUztNQUNULGlCQUFpQjtNQUNqQix3QkFBZ0I7Y0FBaEIsZ0JBQWdCO01BQ2hCLHlCdEN2WFEsRUFBQTtNc0NxRHBCO1FBcVVnQix3QkFBZ0I7Z0JBQWhCLGdCQUFnQjtRQUNoQixhQUFhLEVBQUE7TUF0VTdCO1FBMlVvQiwwQ0FBMEM7UUFDMUMseUJBQWlCO2dCQUFqQixpQkFBaUI7UUFDakIsNEJBQW9CO2dCQUFwQixvQkFBb0IsRUFBQTtNQTdVeEM7UUFrVmdCLHlDQUF5QztRQUN6Qyx5QkFBaUI7Z0JBQWpCLGlCQUFpQjtRQUNqQix3Q0FBZ0M7UUFBaEMsZ0NBQWdDLEVBQUE7RUFLNUM7SUFDSSx5QnRDdllVLEVBQUE7SUduQlY7TW1DeVpKO1FBSVEsc0J0Q3haQSxFQUFBLEVzQ3NjUDtJQWxEQTtNQVNXLFlBQVk7TUFDWixvQkFBb0I7TUFDcEIsNkJBQTZCLEVBQUE7TW5DcGFyQztRbUN5Wkg7VUFjZSxVQUFVLEVBQUEsRUFrQ2pCO01BaERSO1FBa0JlLGFBQWEsRUFBQTtNQWxCNUI7UUF1Qm1CLGlCQUFpQixFQUFBO01BdkJwQztRQTRCZSxhQUFhLEVBQUE7UUE1QjVCO1VBK0JtQixpQkFBaUIsRUFBQTtVQS9CcEM7WUFrQ3VCLGlCQUFpQixFQUFBO1lBbEN4QztjQXFDMkIsZ0JBQWdCLEVBQUE7Y0FyQzNDO2dCQXlDbUMsc0J0QzdiNUIsRUFBQTs7QXNDeWNaO0VBQ0ksYUFBYSxFQUFBO0VuQy9jVDtJbUM4Y1I7TUFJUSxjQUFjLEVBQUEsRUFzQnJCO0VBMUJEO0lBUVEsb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWE7SUFDYix5QkFBbUI7UUFBbkIsc0JBQW1CO1lBQW5CLG1CQUFtQixFQUFBO0VBVDNCO0lBYVEsV0FBVztJQUNYLGtCQUFrQixFQUFBO0lwQ3MvU3RCO01vQ24vU1EsbUJBQW1CO01BQ25CLGlCQUFpQixFQUFBO0VBbEI3QjtJQXVCUSxjQUFjO0lBQ2QsbUJBQW1CLEVBQUE7O0FBSTNCO0VBRVEsMEJBQTBCO0VBQzFCLG9DQUFvQztFQUNwQyxpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLHNCQUF3QjtFQUN4QixvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CLEVBQUE7RUFSM0I7SUFXWSxXQUFXO0lBQ1gsa0JBQWtCLEVBQUE7SXBDOCtTMUI7TW9DMytTWSxlQUFlO01BQ2Ysa0NBQTBCO2NBQTFCLDBCQUEwQixFQUFBOztBQWhCMUM7RUFzQlEsY0FBYztFQUNkLG1CQUFtQixFQUFBOztBQUkzQjtFQUNJLFlBQVksRUFBQTtFQURoQjtJQUlRLHFCQUFxQjtJQUNyQixZQUFZO0lBQ1osaUJBQWlCO0lBQ2pCLG1CQUFtQjtJQUNuQixZQUFZO0lBQ1osV0FBVztJQUNYLHlCdENwZ0JZO0lzQ3FnQlosa0JBQWtCLEVBQUE7SUFYMUI7TUFjWSxlQUFlLEVBQUE7SUFkM0I7TUFrQlksa0VBQWtFO01BQ2xFLGdCQUFnQixFQUFBO01wQ28rU3RCO1FvQ2orU1UsY0FBYztRQUNkLGlCQUFpQixFQUFBOztBQU1qQztFQUNJLHlCdEN4aEJnQjtFc0N5aEJoQixjdEN0ZGlCO0VzQ3VkakIsaUJBQWlCO0VBQ2pCLGdCQUFnQixFQUFBO0VBSnBCO0lBT1EscUJ0QzloQlk7SXNDK2hCWiw2Q0FBcUM7WUFBckMscUNBQXFDLEVBQUE7RUFSN0M7SUFZUSx5QnRDbmlCWTtJc0NvaUJaLGN0Q2plYTtJc0NrZWIsaUJBQWlCO0lBQ2pCLGdCQUFnQjtJQUNoQixnQkFBZ0I7SUFDaEIsMENBQTBDO0lBQzFDLGtCQUFrQixFQUFBO0lBbEIxQjtNQXFCWSxhQUFhLEVBQUE7SUFyQnpCO01BeUJZLGdCQUFnQjtNQUNoQixrQ0FBa0M7TUFDbEMsZ0JBQWdCO01BQ2hCLGtCQUFrQjtNQUNsQixRQUFRO01BQ1IsbUNBQTJCO2NBQTNCLDJCQUEyQjtNQUMzQixXQUFXLEVBQUE7RUEvQnZCO0lBcUNRLGVBQWUsRUFBQTtJQXJDdkI7TUF3Q1ksV0FBVyxFQUFBOztBQUt2QjtFQUVRLHNCdEM1a0JJLEVBQUE7O0FHTEo7RW1DK2tCUjtJQU1RLFlBQVksRUFBQSxFQTRDbkI7O0FBbEREO0VyQ2hrQkksb0JBRHlCO0VBQ3pCLG9CQUR5QjtFQUN6QixhQUR5QjtFQUV6Qix5QkFGeUM7TUFFekMsc0JBRnlDO1VBRXpDLG1CQUZ5QztFQUd6Qyx3QkFIMkQ7TUFHM0QscUJBSDJEO1VBRzNELHVCQUgyRCxFQUFBO0VxQ2lrQi9EO0lBYVksZ0JBQWdCLEVBQUE7O0FBYjVCO0VBcUJvQixVQUFVLEVBQUE7RUFyQjlCO0lBd0J3QixnQkFBZ0IsRUFBQTs7QW5Ddm1CaEM7RW1DK2tCUjtJQWlDWSxrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLE9BQU87SUFDUCxzQnRDOW1CQTtJc0MrbUJBLGNBQWM7SUFDZCxVQUFVO0lBQ1YsWUFBWTtJQUNaLFlBQVk7SUFDWixpQ0FBeUI7SUFBekIseUJBQXlCO0lBQ3pCLGdCQUFnQixFQUFBO0lwQ3E4U3hCO01vQ2w4U1ksV0FBVztNQUNYLFFBQVEsRUFBQSxFQUNYOztBQUtiO0VBQ0ksY0FBYztFQUNkLGdCQUFnQixFQUFBO0VBRnBCO0lBS1Esa0JBQWtCO0lBQ2xCLHdDQUFnQztJQUFoQyxnQ0FBZ0MsRUFBQTtJQU54QztNQVNZLGtCQUFrQixFQUFBO0VBVDlCO0lBY1EsY0FBYztJQUNkLGtCQUFrQjtJQUNsQixpQkFBaUI7SUFDakIsd0NBQWdDO0lBQWhDLGdDQUFnQyxFQUFBO0lBakJ4QztNQW9CWSxnQkFBZ0IsRUFBQTs7QUFLNUI7RUFDSSxZQUFZO0VBQ1osb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYix5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQixFQUFBO0VBSHZCO0lBTVEsZ0JBQWdCO0lBQ2hCLGdCQUFnQixFQUFBOztBQUl4QjtFQUNJLGFBQWEsRUFBQTtFbkN4cUJUO0ltQ3VxQlI7TUFJUSxjQUFjLEVBQUEsRUFFckI7O0FBRUQ7RUFDSSxXQUFXLEVBQUE7O0FBR2Y7RUFDSSxXQUFXLEVBQUE7RUFEZjtJQUtZLFdBQVc7SUFDWCwwQ0FBMEM7SUFDMUMsa0JBQWtCO0lBQ2xCLGVBQWU7SUFDZixnQkFBZ0I7SUFDaEIsMEhBQTBILEVBQUE7RUFWdEk7SUFjWSxhQUFhO0lBQ2IsV0FBVyxFQUFBO0lBZnZCO01Ba0JnQixjQUFjLEVBQUE7TUFsQjlCO1FBcUJvQixnQkFBZ0I7UUFDaEIsdUJBQXVCO1FBQ3ZCLG1CQUFtQixFQUFBOztBQU92QztFQUNJLGFBQWE7RUFDYixhQUFhLEVBQUE7RUFGakI7SUFLUSxvQkFBYTtJQUFiLG9CQUFhO0lBQWIsYUFBYTtJQUNiLHlCQUFtQjtRQUFuQixzQkFBbUI7WUFBbkIsbUJBQW1CLEVBQUE7SUFOM0I7TUFTWSxrQkFBa0I7TUFDbEIsV0FBVyxFQUFBO0lBVnZCO01BY1ksZ0JBQWdCLEVBQUE7RW5DL3RCcEI7SW1DaXRCUjtNQW1CUSxpQkFBaUI7TUFDakIsb0JBQWE7TUFBYixvQkFBYTtNQUFiLGFBQWEsRUFBQSxFQUVwQjs7QUFFRDtFQUNJLHNCdENydUJRO0VzQ3N1QlIsb0JBQW9CLEVBQUE7RW5DM3VCaEI7SW1DeXVCUjtNQUtRLGVBQWU7TUFDZixZQUFZO01BQ1osWUFBWTtNQUNaLGFBQWE7TUFDYixNQUFNO01BQ04sYUFBYTtNQUNiLGFBQWE7TUFDYixVQUFVO01BQ1YsaUNBQXlCO01BQXpCLHlCQUF5QjtNQUN6Qix1REFBK0M7Y0FBL0MsK0NBQStDO01BQy9DLGdCQUFnQixFQUFBLEVBME92QjtFQXpQRDtJQW1CUSxPQUFPLEVBQUE7RUFuQmY7SXJDMXRCSSxvQkFEeUI7SUFDekIsb0JBRHlCO0lBQ3pCLGFBRHlCO0lBRXpCLHlCQUZ5QztRQUV6QyxzQkFGeUM7WUFFekMsbUJBRnlDO0lBR3pDLHdCQUgyRDtRQUczRCxxQkFIMkQ7WUFHM0QsdUJBSDJELEVBQUE7SUVkdkQ7TW1DeXVCUjtRQTBCWSxjQUFjLEVBQUEsRUEyTXJCO0lBck9MO01BOEJZLGFBQWEsRUFBQTtNbkN2d0JqQjtRbUN5dUJSO1VBaUNnQixvQkFBb0I7VUFDcEIsNkJ0Q2x3QkM7VXNDbXdCRCxvRUFBb0U7VUFDcEUsMEJBQTBCO1VBQzFCLFlBQVk7VUFDWixnQkFBZ0I7VUFDaEIsbUJBQW1CO1VBQ25CLGVBQWU7VUFDZixjQUFjLEVBQUEsRUFFckI7SUEzQ1Q7TUE4Q1ksV0FBVztNQUNYLGVBQWU7TUFDZixrQkFBa0I7TUFDbEIseUJ0Qy93QlE7TXNDZ3hCUixrQkFBa0I7TUFDbEIsZUFBZTtNQUNmLGdCQUFnQjtNQUNoQiwwSEFBMEg7TUFDMUgsY0FBYyxFQUFBO01BdEQxQjtRQXlEZ0IsZUFBZSxFQUFBO01uQ2x5QnZCO1FtQ3l1QlI7VUE2RGdCLGdCQUFnQjtVQUNoQixzQnRDbHlCSjtVc0NteUJJLFVBQVUsRUFBQTtVQS9EMUI7WUFrRW9CLGdCQUFnQixFQUFBO1VBbEVwQztZQXNFb0Isa0JBQWtCLEVBQUEsRUFDckI7TUF2RWpCO1FBMkVnQixtQkFBbUI7UUFDbkIsMEJBQTBCO1FBQzFCLGVBQWU7UUFDZixnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLG1CQUFtQjtRQUNuQixrQkFBa0IsRUFBQTtRcEMrNFMxQjtVb0M1NFNZLGlCQUFpQjtVQUNqQixtQkFBbUIsRUFBQTtRbkM5ekIvQjtVbUN5dUJSO1lBeUZvQixnQkFBZ0I7WUFDaEIsZ0JBQWdCLEVBQUEsRUFvQnZCO1FBOUdiO1VBOEZvQixrQ0FBa0M7VUFDbEMsZ0JBQWdCO1VBQ2hCLGdCQUFnQjtVQUNoQixrQkFBa0I7VUFDbEIsUUFBUTtVQUNSLFlBQVksRUFBQTtVcEMyNFN0QjtZb0N4NFNjLFlBQVk7WUFDWixPQUFPLEVBQUE7VW5DaDFCdkI7WW1DeXVCUjtjQTJHd0IsV0FBVyxFQUFBLEVBRWxCO01BN0dqQjtRQWlIZ0IsaUJBQWlCLEVBQUE7TUFqSGpDO1FBcUhnQixhQUFhO1FBQ2Isa0JBQWtCO1FBQ2xCLHNCdEMzMUJKO1FzQzQxQkksYUFBYTtRQUNiLFdBQVc7UUFDWCxPQUFPO1FBQ1AsU0FBUztRQUNULDBEQUFpRDtnQkFBakQsa0RBQWlEO1FBQ2pELFVBQVUsRUFBQTtRbkN0MkJsQjtVbUN5dUJSO1lBZ0lvQixjQUFjO1lBQ2Qsa0JBQWtCO1lBQ2xCLHdCQUFnQjtvQkFBaEIsZ0JBQWdCO1lBQ2hCLFVBQVU7WUFDVixTQUFTO1lBQ1QsZ0JBQWdCLEVBQUEsRUFpQnZCO1FBdEpiO1VBeUlvQixjQUFjO1VBQ2QsZUFBZSxFQUFBO1VBMUluQztZQTZJd0IsZ0JBQWdCLEVBQUE7UUE3SXhDO1VBbUp3QiwwQkFBMEIsRUFBQTtJQW5KbEQ7TUEwSlksV0FBVztNQUNYLGVBQWU7TUFDZixrQkFBa0I7TUFDbEIsOEJ0Q3Z6QmM7TXNDd3pCZCxlQUFlLEVBQUE7TW5DdjRCbkI7UW1DeXVCUjtVQWlLZ0IsbUJBQW1CLEVBQUEsRUFtRDFCO01BcE5UO1FBcUtnQiwwQkFBMEI7UUFDMUIsZUFBZTtRQUNmLGdCQUFnQjtRQUNoQixtQkFBbUI7UUFDbkIsa0JBQWtCO1FBQ2xCLFVBQVU7UUFDVixnQkFBZ0IsRUFBQTtRQTNLaEM7VUE4S29CLGtDQUFrQztVQUNsQyxnQkFBZ0I7VUFDaEIsZ0JBQWdCO1VBQ2hCLGtCQUFrQjtVQUNsQixXQUFXO1VBQ1gsWUFBWTtVQUNaLGFBQWEsRUFBQTtNQXBMakM7UUF5TGdCLGlCQUFpQixFQUFBO01BekxqQztRQTZMZ0IsYUFBYTtRQUNiLGtCQUFrQjtRQUNsQix1QkFBdUI7UUFDdkIsVUFBVTtRQUNWLGtCQUFrQjtRQUNsQixZQUFZO1FBQ1osVUFBVTtRQUNWLFNBQVM7UUFDVCw2REFBcUQ7Z0JBQXJELHFEQUFxRCxFQUFBO1FuQzk2QjdEO1VtQ3l1QlI7WUF3TW9CLGNBQWM7WUFDZCxrQkFBa0I7WUFDbEIsU0FBUztZQUNULHdCQUFnQjtvQkFBaEIsZ0JBQWdCLEVBQUEsRUFRdkI7UUFuTmI7VUFnTndCLDBCQUEwQixFQUFBO0lBaE5sRDtNQXlOb0IsY0FBYyxFQUFBO0lBek5sQztNQWlPb0IsY0FBYyxFQUFBO0VBak9sQztJQXdPUSwwQkFBMEI7SUFDMUIsdUJBQXVCO0lBQ3ZCLG1CQUFtQixFQUFBO0lBMU8zQjtNQTZPWSxnQkFBZ0IsRUFBQTtJQTdPNUI7TUFpUFksZ0JBQWdCO01BQ2hCLGNBQWM7TUFDZCwwQkFBMEI7TUFDMUIsZ0JBQWdCO01BQ2hCLHVCQUF1QjtNQUN2QixtQkFBbUIsRUFBQTs7QUFLL0I7RUFDSSxrQkFBa0I7RUFDbEIsa0JBQWtCO0VBQ2xCLHlCdEM1OUJnQjtFc0M2OUJoQixvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CLEVBQUE7RUFMdkI7SUFRUSxtQkFBbUI7SXJDNzlCdkIsb0JBRHlCO0lBQ3pCLG9CQUR5QjtJQUN6QixhQUR5QjtJQUV6Qix5QkFGeUM7UUFFekMsc0JBRnlDO1lBRXpDLG1CQUZ5QztJQUd6Qyx3QkFIMkQ7UUFHM0QscUJBSDJEO1lBRzNELHVCQUgyRDtJcUNnK0J2RCxZQUFZLEVBQUE7SXBDcTFTaEI7TW9DbDFTUSxnQkFBZ0I7TUFDaEIsa0JBQWtCLEVBQUE7SUFkOUI7TUFrQlksVUFBVSxFQUFBO0VBbEJ0QjtJQXVCUSxjdENwL0JRO0lzQ3EvQlIseUJBQXlCLEVBQUE7SUF4QmpDO01BMkJZLDBCQUEwQjtNQUMxQixjdEN6L0JJO01zQzAvQkoscUJBQXFCLEVBQUE7SUE3QmpDO01BaUNZLGFBQWE7TUFDYiwyQkFBMEI7Y0FBMUIsMEJBQTBCO01BQzFCLHVCQUF1QixFQUFBO01BbkNuQztRQXNDZ0Isa0JBQWtCO1FBQ2xCLDBCQUEwQixFQUFBO1FBdkMxQztVQTBDb0IsZUFBZTtVQUNmLHFCQUFxQjtVQUNyQiw0QkFBNEI7VUFDNUIsb0JBQW9CO1VBQ3BCLGdCQUFnQixFQUFBOztBQU9wQztFQUVRLGdCQUFnQjtFQUNoQixxQkFBcUI7RUFDckIsWUFBWTtFQUNaLHNFQUFzRTtFQUN0RSxnQkFBZ0I7RUFDaEIsc0J0Q3ZoQ1M7RXNDd2hDVCxXQUFXLEVBQUE7RUFSbkI7SUFXWSxXQUFXO0lBQ1gsaUJBQWlCLEVBQUE7O0FBSzdCO0VBSWdCLGFBQWEsRUFBQTs7QUFKN0I7RUFRZ0IsYUFBYSxFQUFBOztBQU03QjtFQUVRLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUIsRUFBQTtFQUgzQjtJQU9nQixVQUFVO0lBQ1Ysa0JBQWtCO0lBQ2xCLG1DQUEyQjtZQUEzQiwyQkFBMkI7SUFDM0IsTUFBTTtJQUNOLE9BQU87SUFDUCxpQ0FBeUI7SUFBekIseUJBQXlCO0lBQ3pCLFdBQVcsRUFBQTtFQWIzQjs7SUFxQmdCLG9CQUFhO0lBQWIsb0JBQWE7SUFBYixhQUFhO0lBQ2IseUJBQW1CO1FBQW5CLHNCQUFtQjtZQUFuQixtQkFBbUI7SUFDbkIseUJBQThCO1FBQTlCLHNCQUE4QjtZQUE5Qiw4QkFBOEIsRUFBQTtJbkMva0N0QztNbUN3akNSOztRQTBCb0IsY0FBYztRckMxL0I5QixnQnFDMi9CNkMsRUFBQTtRcENpelN6Qzs7VUR6eVVBLGlCcUN3L0JnRCxFQUFBLEVyQ3YvQm5EO0VxQzQ5Qkw7SUFnQ2dCLGdCQUFnQixFQUFBO0luQ3hsQ3hCO01tQ3dqQ1I7UUFtQ29CLGVBQWUsRUFBQTtRQW5DbkM7VUFzQ3dCLGVBQWUsRUFBQSxFQUNsQjtFQXZDckI7SUFnRHdCLGNBQWMsRUFBQTtJcEN3eVNsQztNb0NyeVN3QixrQkFBa0I7TUFDbEIsZUFBZSxFQUFBO0VBcEQzQzs7SUE2RG9CLFdBQVc7SUFDWCxZQUFZLEVBQUE7SW5DdG5DeEI7TW1Dd2pDUjs7UUFpRXdCLFdBQVc7UUFDWCxZQUFZLEVBQUEsRUFFbkI7RUFwRWpCO0lBMkVvQixVQUFVO0lBQ1Ysb0NBQTRCO1lBQTVCLDRCQUE0QjtJQUM1QixpQ0FBeUI7SUFBekIseUJBQXlCLEVBQUE7O0FuQ3JvQ3JDO0VtQ3dqQ1I7SUFxRlksZUFBZSxFQUFBLEVBMEJ0Qjs7QUEvR0w7RUF5RlksV0FBVyxFQUFBO0VuQ2pwQ2Y7SW1Dd2pDUjtNQTRGZ0IsV0FBVyxFQUFBLEVBTWxCO0VuQzFwQ0Q7SW1Dd2pDUjtNQWdHZ0IsVUFBVSxFQUFBLEVBRWpCOztBQWxHVDtFQXFHWSxZQUFZLEVBQUE7RW5DN3BDaEI7SW1Dd2pDUjtNQXdHZ0IsWUFBWSxFQUFBLEVBTW5CO0VuQ3RxQ0Q7SW1Dd2pDUjtNQTRHZ0IsV0FBVyxFQUFBLEVBRWxCOztBQUlUO0VyQzNwQ0ksb0JBRHlCO0VBQ3pCLG9CQUR5QjtFQUN6QixhQUR5QjtFQUV6Qix5QkFGeUM7TUFFekMsc0JBRnlDO1VBRXpDLG1CQUZ5QztFQUd6Qyx3QkFIMkQ7TUFHM0QscUJBSDJEO1VBRzNELHVCQUgyRDtFcUM4cEMzRCxZQUFZLEVBQUE7RUFGaEI7SXJDM3BDSSxvQkFEeUI7SUFDekIsb0JBRHlCO0lBQ3pCLGFBRHlCO0lBRXpCLHlCQUZ5QztRQUV6QyxzQkFGeUM7WUFFekMsbUJBRnlDO0lBR3pDLHdCQUgyRDtRQUczRCxxQkFIMkQ7WUFHM0QsdUJBSDJEO0lxQ2txQ3ZELFlBQVksRUFBQTtJQU5wQjtNQVNZLFlBQVk7TUFDWixpQkFBaUI7TUFDakIseUJ0QzlxQ0ksRUFBQTtNc0NtcUNoQjtRQWNnQixZQUFZLEVBQUE7UUFkNUI7VUFpQm9CLFdBQVcsRUFBQTs7QUFPL0I7RUFDSSxhQUFhLEVBQUE7RUFEakI7SUFLWSx5QnRDNXJDUSxFQUFBO0VzQ3VyQ3BCO0lBU1kseUJ0Q25zQ0U7SXNDb3NDRixjdENyc0NJLEVBQUE7RXNDMnJDaEI7SUFjWSxvQ0FBb0MsRUFBQTtFQWRoRDtJQW1CZ0Isa0JBQWtCO0lBQ2xCLGNBQWM7SUFDZCxNQUFNO0lBQ04sU0FBUztJQUNULFVBQVU7SUFDVixZQUFZO0lBQ1osaUJBQWlCO0lBQ2pCLG9DQUFvQyxFQUFBO0VBMUJwRDtJQStCWSxvQ0FBb0MsRUFBQTtJQS9CaEQ7TUFrQ2dCLG9DQUFvQyxFQUFBO0VBbENwRDtJQXVDWSxvQ0FBb0MsRUFBQTtJQXZDaEQ7TUEwQ2dCLG9DQUFvQyxFQUFBOztBQU1wRDtFQUdZLGdCQUFnQjtFQUNoQixvRUFBb0UsRUFBQTs7QUFLaEY7RUFDSSxxRUFBcUUsRUFBQTtFQUR6RTtJQUlRLG1CQUFtQixFQUFBO0lwQzh1U3ZCO01vQzN1U1EsMkJBQTJCLEVBQUE7RUFQdkM7SUFZUSxpQkFBaUI7SUFDakIsNkJ0Qzd2Q1ksRUFBQTtJc0NndkNwQjs7TUFpQlkseUJ0Q2p3Q1E7TXNDa3dDUixrQkFBa0I7TUFDbEIsVUFBVTtNQUNWLFVBQVU7TUFDVixXQUFXO01BQ1gsWUFBWTtNQUNaLGtCQUFrQjtNckNud0MxQixvQkFEeUI7TUFDekIsb0JBRHlCO01BQ3pCLGFBRHlCO01BRXpCLHlCQUZ5QztVQUV6QyxzQkFGeUM7Y0FFekMsbUJBRnlDO01BR3pDLHdCQUgyRDtVQUczRCxxQkFIMkQ7Y0FHM0QsdUJBSDJELEVBQUE7SXFDNnVDL0Q7TUE0QlksV0FBVztNQUNYLFdBQVcsRUFBQTtNQTdCdkI7UUFnQ2dCLGdCQUFnQjtRQUNoQixXdEN0eENKO1FzQ3V4Q0ksa0NBQWtDO1FBQ2xDLGdCQUFnQjtRQUNoQixVQUFVO1FBQ1YsZUFBZSxFQUFBO0lBckMvQjtNQTBDWSxRQUFRLEVBQUE7TUExQ3BCO1FBNkNnQixnQkFBZ0I7UUFDaEIsV3RDbnlDSjtRc0NveUNJLGtDQUFrQztRQUNsQyxnQkFBZ0I7UUFDaEIsVUFBVTtRQUNWLGVBQWUsRUFBQTs7QUFNL0I7RUFFUSxXQUFXLEVBQUE7O0FBRm5CO0VBTVEsb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYix5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQixFQUFBO0VuQzF6Q25CO0ltQ216Q1I7TUFVWSxjQUFjO01BQ2QscUNBQXFDO01BQ3JDLHVFQUF1RTtNQUN2RSxrQkFBa0IsRUFBQSxFQWdJekI7RUE3SUw7SUFpQlksVUFBVSxFQUFBO0luQ3AwQ2Q7TW1DbXpDUjtRQW9CZ0IsVUFBVTtRQUNWLGNBQWMsRUFBQSxFQU1yQjtJbkM5MENEO01tQ216Q1I7UUF5QmdCLFdBQVcsRUFBQSxFQUVsQjtFQTNCVDtJQThCWSxhQUFhLEVBQUE7RUE5QnpCO0lBa0NZLGtCQUFrQjtJQUNsQixhQUFhO0lBQ2IseUJBQXlCLEVBQUE7SXBDc3RTakM7TW9DbnRTWSxlQUFlO01BQ2YsbUJBQW1CLEVBQUE7SW5DMzFDM0I7TW1DbXpDUjtRQTRDZ0IsV0FBVztRQUNYLGdCQUFnQjtRQUNoQixVQUFVLEVBQUEsRUFxRGpCO0lBbkdUO01Ba0RnQixTQUFTLEVBQUE7SUFsRHpCO01Bc0RnQixnQkFBZ0I7TUFDaEIscUVBQXFFLEVBQUE7SUF2RHJGO01BMkRnQixlQUFlLEVBQUE7SUEzRC9CO01BK0RnQiwyQkFBMkIsRUFBQTtNQS9EM0M7UUFrRW9CLGdCQUFnQixFQUFBO1FwQzJzUzVCO1VvQ3hzU2dCLGlCQUFpQixFQUFBO1FBckV6QztVQXlFd0IsZUFBZSxFQUFBO1FBekV2QztVQTZFd0IsYUFBYSxFQUFBO01BN0VyQztRQWtGb0IsYUFBYSxFQUFBO0lBbEZqQztNQXdGb0IsY0FBYyxFQUFBO01BeEZsQztRQTJGd0IsZ0JBQWdCLEVBQUE7UXBDOHJTaEM7VW9DM3JTb0IsaUJBQWlCLEVBQUE7RUE5RjdDO0lBc0dZLHlCQUF5QjtJQUN6Qix3QkFBd0IsRUFBQTtJQXZHcEM7TUEwR2dCLFVBQVU7TUFDVixlQUFlLEVBQUE7SUEzRy9CO01BK0dnQix5QkFBeUI7TUFDekIsYUFBYTtNQUNiLCtCQUErQjtNQUMvQixxQkFBcUI7TUFDckIsNEJBQTRCO01BQzVCLGdCQUFnQjtNQUNoQixnQkFBZ0I7TUFDaEIsc0JBQXNCLEVBQUE7SUF0SHRDO01BMEhnQixrQkFBa0I7TUFDbEIsMEhBQTBIO01BQzFILGdCQUFnQjtNQUNoQixVQUFVO01BQ1YsNEJBQW9CO01BQXBCLG9CQUFvQjtNQUNwQixnQkFBZ0I7TUFDaEIsaUJBQWlCO01BQ2pCLDhCQUE4QjtNQUM5QixvRUFBb0U7TUFDcEUsV3RDajdDSjtNc0NrN0NJLGtCQUFrQjtNQUNsQixhQUFhLEVBQUE7TUFySTdCO1FBd0lvQixXdEN0N0NSO1FzQ3U3Q1Esb0NBQW9DLEVBQUE7O0FBT3hEO0VBQ0ksb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYix5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQixFQUFBO0VBRnZCO0lBS1Esb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWE7SUFDYix5QkFBbUI7UUFBbkIsc0JBQW1CO1lBQW5CLG1CQUFtQixFQUFBO0lBTjNCO01BVWdCLGlCQUFpQixFQUFBO01wQ3lxUzNCO1FvQ3RxU2MsY0FBYztRQUNkLGtCQUFrQixFQUFBO0VBZHRDO0lBcUJRLGlCQUFpQixFQUFBO0lwQ21xU3JCO01vQ2hxU1Esa0JBQWtCO01BQ2xCLGtCQUFrQixFQUFBO0lBekI5QjtNQThCZ0Isb0NBQW9DLEVBQUE7TUE5QnBEO1FBa0N3Qix5QkFBaUI7Z0JBQWpCLGlCQUFpQixFQUFBO0lBbEN6QztNQXlDWSxXQUFXO01BQ1gsWUFBWTtNQUNaLGtCQUFrQjtNQUNsQix5QnRDcCtDUTtNc0NxK0NSLFlBQVksRUFBQTtNQTdDeEI7UUFnRGdCLFVBQVUsRUFBQTtNQWhEMUI7UXJDcDdDSSxvQkFEeUI7UUFDekIsb0JBRHlCO1FBQ3pCLGFBRHlCO1FBRXpCLHlCQUZ5QztZQUV6QyxzQkFGeUM7Z0JBRXpDLG1CQUZ5QztRQUd6Qyx3QkFIMkQ7WUFHM0QscUJBSDJEO2dCQUczRCx1QkFIMkQ7UXFDMCtDL0MsWUFBWSxFQUFBO01BckQ1QjtRQXlEZ0IsZ0JBQWdCLEVBQUE7UXBDcXBTeEI7VW9DbHBTWSxjQUFjO1VBQ2QsaUJBQWlCLEVBQUE7O0FBT3JDO0VBQ0ksNEJBQW9CO0VBQXBCLG9CQUFvQixFQUFBO0VBRHhCO0lBSVEsNEJBQW9CO0lBQXBCLG9CQUFvQjtJQUNwQixRQUFRO0lBQ1IsVUFBVTtJQUNWLFVBQVU7SUFDVixrQkFBa0IsRUFBQTtFQVIxQjtJQVlRLHNCdEMxZ0RTLEVBQUE7SUdUVDtNbUN1Z0RSO1FBZVkseUJ0QzNnRFEsRUFBQSxFc0N1aURmO0lBM0NMO01Bb0JnQixzQnRDdGhESixFQUFBO0lzQ2tnRFo7TUEwQmdCLHNCdEM1aERKO01zQzZoREksWUFBWSxFQUFBO0lBM0I1QjtNQStCZ0IseUJ0QzNoREk7TXNDNGhESixZQUFZLEVBQUE7TW5DdmlEcEI7UW1DdWdEUjtVQW1Db0IsZUFBZSxFQUFBLEVBTXRCO01BekNiO1FBdUNvQixlQUFlLEVBQUE7O0FDcmtEbkM7OzRCckN5c1Y0QjtBcUN0c1Y1QjtFQUdZLGlDQUF3QyxFQUFBOztBQUhwRDtFQU9ZLGlDQUF3QyxFQUFBOztBQUtwRDtFQUVRLDZCQUE2QjtFQUM3QiwwQkFBMEI7RUFDMUIseUJBQTZCLEVBQUE7RUFKckM7SUFPWSx5QkFBeUIsRUFBQTs7QUFLckM7RUFDSSxjdkNFWTtFdUNEWiwwQkFBMEI7RUFDMUIsZ0JBQWdCO0VBQ2hCLGVBQWU7RUFDZixvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CO0VBQ25CLHlCQUE4QjtNQUE5QixzQkFBOEI7VUFBOUIsOEJBQThCO0VBQzlCLG1CQUFtQixFQUFBO0VBRW5CO0lBQ0ksZ0JBQWdCLEVBQUE7RUFYeEI7SUFlUSx1QkFBc0I7UUFBdEIsb0JBQXNCO1lBQXRCLHNCQUFzQjtJQUN0QixnQkFBZ0IsRUFBQTtJQWhCeEI7TUFtQlksYUFBYTtNQUNiLHlCQUF5QixFQUFBOztBQUtyQztFQUNJLGdCQUFnQixFQUFBO0VBRHBCO0lBSVEsY0FBYztJQUNkLGVBQWU7SUFDZixjdkNLWTtJdUNKWixnQkFBZ0I7SUFDaEIsbUJBQW1CLEVBQUE7O0FBSTNCO0VBQ0ksb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWEsRUFBQTtFcEMxQ1Q7SW9DeUNSO01BSVEsd0JBQXVCO1VBQXZCLHFCQUF1QjtjQUF2Qix1QkFBdUIsRUFBQSxFQXlCOUI7RUE3QkQ7SUFRUSxlQUFlLEVBQUE7SUFSdkI7TUFXWSxtQkFBbUIsRUFBQTtNQVgvQjtRQWNnQixnQkFBZ0IsRUFBQTtNckMrcVYxQjtRcUMzcVZVLGdCQUFnQjtRQUNoQixrQkFBa0IsRUFBQTtNQW5CbEM7UUF1QmdCLGN2Q3pEQTtRdUMwREEsaUNBQXlCO1FBQXpCLHlCQUF5QjtRQUN6QixlQUFlLEVBQUE7O0FBTS9CO0VBQ0ksWUFBWTtFQUNaLGVBQWU7RUFDZixXQUFXO0VBQ1gsV0FBVztFQUNYLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUI7RUFDbkIsNkJBQTZCO0VBQzdCLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLHVDdkMvRGtCO1V1QytEbEIsK0J2Qy9Ea0I7RXVDZ0VsQixpQ0FBeUI7RUFBekIseUJBQXlCO0VBQ3pCLFVBQVU7RUFDVixzQnZDakZRLEVBQUE7RUdMSjtJb0N3RVI7TUFpQlEsV0FBVyxFQUFBLEVBb0JsQjtFQXJDRDtJQXFCUSxTQUFTO0lBQ1QsaUNBQXlCO0lBQXpCLHlCQUF5QixFQUFBO0VBdEJqQztJQTBCUSxVQUFVLEVBQUE7RUExQmxCO0lBOEJRLGN2Qy9GUTtJdUNnR1IsMEJBQTBCO0lBQzFCLGVBQWU7SUFDZixjQUFjO0lBQ2QsZ0JBQWdCO0lBQ2hCLG1CQUFtQixFQUFBOztBQUkzQjtFQUNJLGlCQUFpQjtFQUNqQixvQkFBb0I7RUFDcEIsMkJ2Q3pHYSxFQUFBO0V1Q3NHakI7SUFPWSxjQUFjLEVBQUE7RUFQMUI7SUFXWSxnRkFBd0U7WUFBeEUsd0VBQXdFLEVBQUE7RUFYcEY7SUFnQlEsY0FBYyxFQUFBO0lBaEJ0QjtNQW9CZ0IsWUFBWTtNQUNaLFdBQVc7TUFDWCxrQkFBa0I7TUFDbEIsa0JBQWtCO01BQ2xCLGVBQWU7TUFDZix5QnZDN0hJO011QzhISix5QnZDOUhJO011QytISixrQkFBa0I7TUFDbEIsd0NBQWdDO01BQWhDLGdDQUFnQyxFQUFBO01yQ3NwVjFDO1FxQ25wVmMsZUFBZTtRQUNmLGlCQUFpQixFQUFBO01BaENyQztRQW9Db0IsbUJ2QzVJSixFQUFBO1F1Q3dHaEI7VUF1Q3dCLFd2Q2pKWixFQUFBO011QzBHWjtRdENoR0ksb0JBRHlCO1FBQ3pCLG9CQUR5QjtRQUN6QixhQUR5QjtRQUV6Qix5QkFGeUM7WUFFekMsc0JBRnlDO2dCQUV6QyxtQkFGeUM7UUFHekMsd0JBSDJEO1lBRzNELHFCQUgyRDtnQkFHM0QsdUJBSDJEO1FzQzhJM0MsWUFBWTtRQUNaLGN2Q3RKSjtRdUN1SkksZ0JBQWdCLEVBQUE7RUEvQ3BDO0lBc0RRLGFBQWE7SUFDYix5QkFBeUI7SUFDekIsZ0JBQWdCO0lBQ2hCLGNBQWMsRUFBQTtFcEN4S2Q7SW9DK0dSO01BK0RnQix3QkFBdUI7VUFBdkIscUJBQXVCO2NBQXZCLHVCQUF1QixFQUFBLEVBdUM5QjtFQXRHVDtJQW9Fb0IseUJ2Qy9KRTtJdUNnS0YsWUFBWSxFQUFBO0VBckVoQztJQTBFZ0Isa0JBQWtCO0lBQ2xCLFdBQVc7SUFDWCx1QkFBVztRQUFYLGVBQVc7WUFBWCxXQUFXLEVBQUE7RUE1RTNCO0lBZ0ZnQixrQkFBa0IsRUFBQTtFQWhGbEM7SUFvRmdCLDZCQUE2QjtJQUM3QixTQUFTO0lBQ1QsY3ZDOUxBO0l1QytMQSxlQUFlO0lBQ2YsZUFBZTtJQUNmLGdCQUFnQjtJQUNoQixjQUFjO0lBQ2Qsa0JBQWtCLEVBQUE7SUEzRmxDO01BOEZvQixnQkFBZ0I7TUFDaEIsY3ZDdk1KLEVBQUE7RXVDd0doQjtJQW9HZ0IsZ0JBQWdCLEVBQUE7O0FBTWhDO0VBQ0ksbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CLEVBQUE7RXBDN05mO0lvQ3lOUjtNQU9RLHdCQUNKO1VBREkscUJBQ0o7Y0FESSx1QkFDSixFQUFBLEVBdURIO0VwQ3hSTztJb0N5TlI7TXRDMU1JLG9CQUR5QjtNQUN6QixvQkFEeUI7TUFDekIsYUFEeUI7TUFFekIseUJBRnlDO1VBRXpDLHNCQUZ5QztjQUV6QyxtQkFGeUM7TUFHekMsd0JBSDJEO1VBRzNELHFCQUgyRDtjQUczRCx1QkFIMkQsRUFBQSxFc0MwUTlEO0VBL0REO0lBZVEsb0NBQW9DO0lBQ3BDLFd2Q3BPSTtJdUNxT0osa0JBQWtCO0lBQ2xCLGVBQWU7SXRDNU5uQixvQkFEeUI7SUFDekIsb0JBRHlCO0lBQ3pCLGFBRHlCO0lBRXpCLHlCQUZ5QztRQUV6QyxzQkFGeUM7WUFFekMsbUJBRnlDO0lBR3pDLHdCQUgyRDtRQUczRCxxQkFIMkQ7WUFHM0QsdUJBSDJELEVBQUE7SXNDMk0vRDtNQXNCWSxnQkFBZ0IsRUFBQTtNckN1blZ0QjtRcUNwblZVLGlCQUFpQjtRQUNqQixrQkFBa0IsRUFBQTtJcENuUDFCO01vQ3lOUjtRQStCWSxrQkFBa0IsRUFBQSxFQStCekI7SXBDdlJHO01vQ3lOUjtRQW1DWSxXQUFXLEVBQUEsRUEyQmxCO0lwQ3ZSRztNb0N5TlI7UUF1Q1ksa0JBQWtCO1FBQ2xCLGVBQWUsRUFBQSxFQXNCdEI7SUE5REw7TUE0Q1ksZUFBZTtNQUNmLGlCQUFpQixFQUFBO01yQ2duVnZCO1FxQzdtVlUsbUJBQW1CO1FBQ25CLGdCQUFnQixFQUFBO0lBakRoQztNQXNEWSxnQkFBZ0IsRUFBQTtJQXRENUI7TUEyRGdCLG9EQUE0QztjQUE1Qyw0Q0FBNEMsRUFBQTs7QUFNNUQ7RUFFUSxvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CO0VBQ25CLGdCQUFnQixFQUFBO0VwQzlSaEI7SW9DMFJSO01BT1ksd0JBQXVCO1VBQXZCLHFCQUF1QjtjQUF2Qix1QkFBdUIsRUFBQSxFQU05QjtFQWJMO0lBV1ksa0JBQWtCLEVBQUE7O0FBSzlCO0VBQ0kseUJ2Q2hTZ0I7RXVDaVNoQiw2QkFBNkI7RUFDN0IsbUJBQW1CLEVBQUE7RUFIdkI7SUFNUSxpQkFBaUIsRUFBQTtJckM4bFZyQjtNcUMzbFZRLGVBQWU7TUFDZixnQkFBZ0IsRUFBQTtFQVY1QjtJQWVRLG1CQUFtQixFQUFBO0lBZjNCO01Ba0JZLGtCQUFrQixFQUFBO01BbEI5QjtRQXFCZ0Isa0JBQWtCLEVBQUE7UXJDd2xWMUI7VXFDcmxWWSxlQUFlO1VBQ2YsaUJBQWlCLEVBQUE7O0FBT3JDO0VBQ0ksbUJBQW1CO0VBQ25CLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUIsRUFBQTtFcEM3VWY7SW9DMFVSO01BTVEsd0JBQXVCO1VBQXZCLHFCQUF1QjtjQUF2Qix1QkFBdUIsRUFBQSxFQWM5QjtFQXBCRDtJQVVRLGdCQUFnQjtJQUNoQixpQkFBaUI7SUFDakIsZ0JBQWdCO0lBQ2hCLGVBQWUsRUFBQTtJckNnbFZuQjtNcUM3a1ZRLGNBQWM7TUFDZCxrQkFBa0IsRUFBQTs7QUFLOUI7RUFDSSxtQkFBbUIsRUFBQTtFQUR2QjtJQUlRLFlBQVk7SUFDWixXQUFXO0lBQ1gsZUFBZTtJQUNmLHFCQUFxQjtJQUNyQixtQkFBbUI7SUFDbkIsaUJBQWlCO0lBQ2pCLGdCQUFnQjtJQUNoQixnQ0FBd0I7SUFBeEIsd0JBQXdCLEVBQUE7SUFYaEM7TUFjWSxjQUFjLEVBQUE7SUFkMUI7TUFrQlkseUJ2QzVTSyxFQUFBO0l1QzBSakI7TUFzQlkseUJ2Qy9TYSxFQUFBO0l1Q3lSekI7TUEwQlksa0JBQWtCLEVBQUE7TUExQjlCO1FBNkJnQixnQkFBZ0I7UUFDaEIsa0NBQWtDO1FBQ2xDLGdCQUFnQjtRQUNoQixTQUFTO1FBQ1QsWUFBWTtRQUNaLFVBQVU7UUFDVixZQUFZO1FBQ1osV0FBVztRQUNYLG9CQUFvQjtRQUNwQiw0QkFBNEI7UUFDNUIsa0JBQWtCO1FBQ2xCLFlBQVksRUFBQTs7QUFNNUI7RUFDSSxlQUFlO0VBQ2YsY3ZDellZO0V1QzBZWixnQkFBZ0I7RUFDaEIsY0FBYyxFQUFBO0VBSmxCO0lBT1EsZUFBZTtJQUNmLGN2QzlVa0I7SXVDK1VsQixnQkFBZ0IsRUFBQTtFQVR4QjtJQWFRLGVBQWU7SUFDZix5QkFBeUI7SUFDekIsa0JBQWtCLEVBQUE7SXJDNGpWdEI7TXFDempWUSxlQUFlO01BQ2YsbUJBQW1CLEVBQUE7O0FBSy9CO0VBQ0ksY0FBYyxFQUFBO0VBRGxCO0lBSVEsaUJBQWlCO0lBQ2pCLGVBQWU7SUFDZixtQnZDbldnQixFQUFBO0V1QzZWeEI7SUFVUSwwQkFBMEI7SUFDMUIsaUJBQWlCLEVBQUE7SXJDcWpWckI7TXFDbGpWUSxlQUFlO01BQ2Ysa0JBQWtCLEVBQUE7O0FBSzlCO0VBQ0ksYUFBYSxFQUFBO0VBRGpCO0lBSVEsd0JBQXdCLEVBQUE7SUFKaEM7TUFTb0Isb0JBQW9CLEVBQUE7TUFUeEM7UUFZd0IsMkJBQTJCLEVBQUE7TUFabkQ7UUFnQndCLG9CQUFhO1FBQWIsb0JBQWE7UUFBYixhQUFhO1FBQ2IseUJBQW1CO1lBQW5CLHNCQUFtQjtnQkFBbkIsbUJBQW1CLEVBQUE7UUFqQjNDO1VBcUJnQyxXQUFXO1VBQ1gsWUFBWTtVQUNaLGtCQUFrQjtVQUNsQix3QkFBd0I7VUFDeEIsMEJBQTBCO1VBQzFCLGdCQUFnQixFQUFBO1VyQ3dpVnRDO1lxQ3JpVjBCLGVBQWU7WUFDZixpQkFBaUIsRUFBQTtVcEN4ZDdDO1lvQzBiUjtjQWtDb0MsV0FBVztjQUNYLFlBQVksRUFBQSxFQUVuQjtRQXJDN0I7VUEwQ2dDLGdCQUFnQjtVQUNoQixlQUFlO1VBQ2YsZ0JBQWdCLEVBQUE7VXBDdGV4QztZb0MwYlI7Y0ErQ29DLDZCQUE2QixFQUFBLEVBRXBDO1FBakQ3QjtVQW9EZ0MsY0FBYztVQUNkLG1CQUFtQixFQUFBO1VwQy9lM0M7WW9DMGJSO2NBd0RvQyxlQUFlLEVBQUEsRUFFdEI7O0FBUzdCO0VBRVEsY0FBYztFQUNkLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUIsRUFBQTtFcENqZ0JuQjtJb0M2ZlI7TUFPWSx3QkFBdUI7VUFBdkIscUJBQXVCO2NBQXZCLHVCQUF1QixFQUFBLEVBcUM5QjtFQTVDTDtJQVdZLG9CQUFhO0lBQWIsb0JBQWE7SUFBYixhQUFhO0lBQ2IseUJBQW1CO1FBQW5CLHNCQUFtQjtZQUFuQixtQkFBbUIsRUFBQTtJQVovQjtNQWVnQixtQkFBbUIsRUFBQTtJQWZuQztNQW1CZ0Isd0JBQXdCO01BQ3hCLGlCQUFpQjtNQUNqQixxQkFBaUI7VUFBakIsaUJBQWlCO01BQ2pCLG9CQUFhO01BQWIsb0JBQWE7TUFBYixhQUFhO01BQ2IseUJBQW1CO1VBQW5CLHNCQUFtQjtjQUFuQixtQkFBbUIsRUFBQTtNckMrZ1Y3QjtRcUM1Z1ZjLGNBQWM7UUFDZCxrQkFBa0IsRUFBQTtNQTNCdEM7UUErQm9CLFdBQVc7UUFDWCxZQUFZO1FBQ1osa0JBQWtCO1FBQ2xCLGdCQUFnQjtRQUNoQixrQkFBa0I7UUFDbEIsd0NBQWdDO1FBQWhDLGdDQUFnQyxFQUFBO1FBcENwRDtVQXVDd0IsZ0RBQXdDO2tCQUF4Qyx3Q0FBd0MsRUFBQTs7QUF2Q2hFO0VBK0NRLGtCQUFrQixFQUFBO0VBL0MxQjtJQWtEWSxrQkFBa0IsRUFBQTtJQWxEOUI7TUFxRGdCLGtCQUFrQjtNQUNsQixZQUFZO01BQ1osa0JBQWtCLEVBQUE7SUF2RGxDO01BMkRnQixrQkFBa0I7TUFDbEIsWUFBWTtNQUNaLFFBQVE7TUFDUiw0QkFBNEI7TUFDNUIsc0J2Q3ZqQko7TXVDd2pCSSxhQUFhLEVBQUE7TXBDN2pCckI7UW9DNmZSO1VBbUVvQixjQUFjLEVBQUEsRUFzQnJCO01BekZiO1F0QzllSSxvQkFEeUI7UUFDekIsb0JBRHlCO1FBQ3pCLGFBRHlCO1FBRXpCLHlCQUZ5QztZQUV6QyxzQkFGeUM7Z0JBRXpDLG1CQUZ5QztRQUd6Qyx3QkFIMkQ7WUFHM0QscUJBSDJEO2dCQUczRCx1QkFIMkQ7UXNDdWpCM0MsaUJBQWlCO1FBQ2pCLGdCQUFnQjtRQUNoQixlQUFlLEVBQUE7UUExRW5DO1VBNkV3QixlQUFlO1VBQ2Ysb0JBQW9CO1VBQ3BCLHlCQUF5QixFQUFBO1FBL0VqRDtVQW1Gd0IsZ0JBQWdCO1VBQ2hCLDJCdkN4a0JQO1V1Q3lrQk8saUJBQWlCO1VBQ2pCLGdCQUFnQixFQUFBOztBQXRGeEM7RUE4RlEsa0JBQWtCLEVBQUE7RUE5RjFCO0lBaUdZLGtCQUFrQjtJQUNsQixTQUFTO0lBQ1QsV0FBVztJQUNYLCtCQUF1QjtZQUF2Qix1QkFBdUI7SUFDdkIsVUFBVTtJQUNWLGVBQWUsRUFBQTtJQXRHM0I7TUF5R2dCLDZCQUFxQjtjQUFyQixxQkFBcUIsRUFBQTs7QUF6R3JDO0VBZ0hZLGtCQUFrQixFQUFBO0VBaEg5QjtJQW1IZ0Isa0JBQWtCO0l0QzNtQjFCLFFBQVE7SUFDUixTQUFTO0lBQ1Qsd0NBQWdDO1lBQWhDLGdDQUFnQztJc0MybUJ4QixjdkMzbUJBO0l1QzRtQkEseUJ2QzVtQkE7SXVDNm1CQSxhQUFhO0lBQ2Isa0JBQWtCO0lBQ2xCLGVBQWUsRUFBQTs7QUF6SC9CO0VBK0hRLGdCQUFnQjtFQUNoQixTQUFTLEVBQUE7RXBDN25CVDtJb0M2ZlI7TUFtSVksa0JBQWtCLEVBQUEsRUF3WXpCO0VBM2dCTDtJQXVJWSxjQUFjLEVBQUE7SUF2STFCO01BMElnQix5QkFBeUI7TUFDekIsb0VBQW9FO01BQ3BFLGtCQUFrQjtNQUNsQixjdkNub0JBLEVBQUE7RXVDc2ZoQjtJQWtKWSxxQkFBcUI7SUFDckIsbUJBQW1CO0lBQ25CLGN2QzFvQkksRUFBQTtJdUNzZmhCO01BdUpnQixlQUFlO01BQ2YsU0FBUztNQUNULGFBQWE7TUFDYixrQkFBa0I7TUFDbEIsb0N2Q2xwQkosRUFBQTtNdUN1Zlo7UUE4Sm9CLFdBQVc7UUFDWCxhQUFhO1FBQ2IsZ0JBQWdCO1FBQ2hCLGF2Q3BvQko7UXVDcW9CSSxjdkNyb0JKLEVBQUE7TXVDbWVoQjtRQXNLb0IsZ0JBQWdCO1FBQ2hCLGN2QzdwQkosRUFBQTtFdUNzZmhCO0lBNktZLFVBQVU7SUFDVixnQkFBZ0IsRUFBQTtJQTlLNUI7TUFpTGdCLGdCQUFnQjtNQUNoQixxQkFBcUI7TUFDckIsa0JBQWtCO01BQ2xCLHlCQUF5QjtNQUN6QixxQkFBcUI7TUFDckIsZ0JBQWdCO01BQ2hCLGVBQWUsRUFBQTtNQXZML0I7UUEwTG9CLGN2Q2xxQkE7UXVDbXFCQSw2QkFBNkI7UUFDN0IsZ0JBQWdCO1FBQ2hCLGVBQWUsRUFBQTtNQTdMbkM7UUFpTW9CLGN2Q2pxQkw7UXVDa3FCSyxnQkFBZ0IsRUFBQTtFQWxNcEM7SUF3TVksZUFBZTtJQUNmLDJCdkM3ckJLLEVBQUE7SXVDb2ZqQjtNQTRNZ0IsV0FBVztNQUNYLGNBQWMsRUFBQTtNcEMxc0J0QjtRb0M2ZlI7VUFnTm9CLFdBQVc7VUFDWCxlQUFlLEVBQUEsRUFFdEI7RUFuTmI7SUF1TlksZ0JBQWdCO0lBQ2hCLG9CQUFhO0lBQWIsb0JBQWE7SUFBYixhQUFhO0lBQ2IsbUJBQWU7UUFBZixlQUFlO0lBQ2YsbUJBQW1CLEVBQUE7SUExTi9CO01BNk5nQixxQkFBcUI7TUFDckIsV0FBVyxFQUFBO0lBOU4zQjtNQWtPZ0IsVUFBVTtNQUNWLFdBQVc7TUFDWCxxQkFBcUIsRUFBQTtNQXBPckM7UUF1T29CLHFCQUFxQixFQUFBO1FBdk96QztVQTBPd0IscUJBQXFCO1VBQ3JCLGN2Q2p1QlIsRUFBQTtFdUNzZmhCO0lBa1BZLHNCdkN0dUJLO0l1Q3V1QkwsV0FBVztJQUNYLFVBQVUsRUFBQTtJcENqdkJkO01vQzZmUjtRQXVQZ0IsVUFBVSxFQUFBLEVBVWpCO0lwQzl2QkQ7TW9DNmZSO1FBMlBnQixXQUFXLEVBQUEsRUFNbEI7SUFqUVQ7TUErUGdCLG9DQUFvQyxFQUFBO0VBL1BwRDtJQXFRZ0Isb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWE7SUFDYix5QkFBbUI7UUFBbkIsc0JBQW1CO1lBQW5CLG1CQUFtQixFQUFBO0lBdFFuQztNQTJRNEIsZ0JBQWdCO01BQ2hCLGtEdkNsd0JaO2N1Q2t3QlksMEN2Q2x3QlosRUFBQTtJdUNzZmhCO01Ba1JvQixjQUFjLEVBQUE7RUFsUmxDO0lBdVJnQixnQkFBZ0IsRUFBQTtJQXZSaEM7TUEwUm9CLGNBQWM7TUFDZCxtQkFBbUIsRUFBQTtFQTNSdkM7SUFrU2dCLGdCQUFnQjtJQUNoQixlQUFlO0lBQ2Ysa0JBQWtCLEVBQUE7RUFwU2xDO0lBd1NnQixVQUFVO0lBQ1Ysb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWE7SUFDYixhQUFhLEVBQUE7SUExUzdCO01BNlNvQixnQkFBZ0I7TUFDaEIsa0JBQWtCO01BQ2xCLGVBQWU7TUFDZix1Q3ZDdHlCSjtNdUN1eUJJLFlBQVk7TUFDWixXQUFXO010Q2h5QjNCLG9CQUR5QjtNQUN6QixvQkFEeUI7TUFDekIsYUFEeUI7TUFFekIseUJBRnlDO1VBRXpDLHNCQUZ5QztjQUV6QyxtQkFGeUM7TUFHekMsd0JBSDJEO1VBRzNELHFCQUgyRDtjQUczRCx1QkFIMkQsRUFBQTtNc0MrZS9EO1F0QzllSSxvQkFEeUI7UUFDekIsb0JBRHlCO1FBQ3pCLGFBRHlCO1FBRXpCLHlCQUZ5QztZQUV6QyxzQkFGeUM7Z0JBRXpDLG1CQUZ5QztRQUd6Qyx3QkFIMkQ7WUFHM0QscUJBSDJEO2dCQUczRCx1QkFIMkQ7UXNDc3lCdkMsY3ZDN3lCUjtRdUM4eUJRLHFCQUFxQjtRQUNyQixXQUFXO1FBQ1gsWUFBWTtRQUNaLGVBQWUsRUFBQTtNQTNUdkM7UUFnVTRCLGlCQUFpQixFQUFBO0VBaFU3QztJQXdVWSxZQUFZO0l0Q3R6QnBCLG9CQUR5QjtJQUN6QixvQkFEeUI7SUFDekIsYUFEeUI7SUFFekIseUJBRnlDO1FBRXpDLHNCQUZ5QztZQUV6QyxtQkFGeUM7SUFHekMsd0JBSDJEO1FBRzNELHFCQUgyRDtZQUczRCx1QkFIMkQ7SXNDeXpCbkQsY3ZDaDBCSTtJdUNpMEJKLHlCdkN0eUJVLEVBQUE7SXVDMmR0QjtNQThVZ0Isb0VBQW9FLEVBQUE7SUE5VXBGO01Ba1ZnQiwwQ3ZDejBCSjtNdUMwMEJJLFNBQVM7TUFDVCxRQUFRO01BQ1Isb0VBQW9FO01BQ3BFLHFCQUFxQjtNQUNyQixTQUFTO01BQ1QsZ0JBQWdCLEVBQUE7RUF4VmhDO0lBOFZnQixrQkFBa0I7SUFDbEIsWUFBWTtJQUNaLG9DdkN2MUJKO0lDakJSLFdBRHdCO0lBRXhCLFlBRnVDO0lzQzIyQjNCLGdCQUFnQjtJQUNoQix1QkFBdUIsRUFBQTtJQW5XdkM7TUFzV29CLGFBQWEsRUFBQTtJQXRXakM7TUEwV29CLGN2Q2gyQkosRUFBQTtFdUNzZmhCO0lBK1dnQixXQUFXO0lBQ1gsa0JBQWtCO0l0QzkxQjlCLG9CQUR5QjtJQUN6QixvQkFEeUI7SUFDekIsYUFEeUI7SUFFekIseUJBRnlDO1FBRXpDLHNCQUZ5QztZQUV6QyxtQkFGeUM7SUFHekMsd0JBSDJEO1FBRzNELHFCQUgyRDtZQUczRCx1QkFIMkQsRUFBQTtJc0MrZS9EO01Bb1hvQixZQUFZO01BQ1osWUFBWTtNQUNaLFNBQVM7TUFDVCxpQkFBaUI7TUFDakIsZUFBZTtNQUNmLGtCQUFrQjtNQUNsQixnQnZDbDNCUjtNdUNtM0JRLGVBQWU7TUFDZixjdkNsM0JKO011Q20zQkksd0JBQWdCO1NBQWhCLHFCQUFnQjtjQUFoQixnQkFBZ0I7TUFDaEIsVUFBVSxFQUFBO0lBOVg5QjtNdEM5ZUksb0JBRHlCO01BQ3pCLG9CQUR5QjtNQUN6QixhQUR5QjtNQUV6Qix5QkFGeUM7VUFFekMsc0JBRnlDO2NBRXpDLG1CQUZ5QztNQUd6Qyx3QkFIMkQ7VUFHM0QscUJBSDJEO2NBRzNELHVCQUgyRDtNc0NrM0IzQyxlQUFlO01BQ2YsV0FBVztNQUNYLFlBQVk7TUFDWixlQUFlO01BQ2YseUJBQWlCO1NBQWpCLHNCQUFpQjtVQUFqQixxQkFBaUI7Y0FBakIsaUJBQWlCO01BQ2pCLHlCdkNoM0JBO011Q2kzQkEsa0JBQWtCLEVBQUE7TUF6WXRDO1FBNFl3QixXdkNwNEJaO1F1Q3E0QlksV0FBVztRQUNYLG1CQUFtQixFQUFBO0VBOVkzQztJQW9aZ0IsV0FBVztJQUNYLFlBQVk7SUFDWixrQkFBa0I7SXRDcDRCOUIsb0JBRHlCO0lBQ3pCLG9CQUR5QjtJQUN6QixhQUR5QjtJQUV6Qix5QkFGeUM7UUFFekMsc0JBRnlDO1lBRXpDLG1CQUZ5QztJQUd6Qyx3QkFIMkQ7UUFHM0QscUJBSDJEO1lBRzNELHVCQUgyRDtJc0N1NEIvQyxpQkFBaUI7SUFDakIsb0NBQW9DO0lBQ3BDLHdDQUFnQztJQUFoQyxnQ0FBZ0MsRUFBQTtJQTFaaEQ7TUE2Wm9CLG9DQUFvQztNQUNwQyxvQ0FBb0MsRUFBQTtNQTlaeEQ7UUFpYXdCLHdCQUF3QjtRQUN4QixZQUFZO1FBQ1osaUJBQWlCLEVBQUE7SUFuYXpDO01Bd2FvQixXQUFXO01BQ1gsd0NBQWdDO01BQWhDLGdDQUFnQyxFQUFBO0VBemFwRDtJQWdiZ0Isb0NBQW9DO0l0Q3g3QmhELFdBRHdCO0lBRXhCLFlBRnVDO0lzQzI3QjNCLGtCQUFrQjtJQUNsQixXdkMzNkJKO0l1QzQ2QkksaUJBQWlCO0lBQ2pCLG9FQUFvRTtJQUNwRSxZQUFZO0lBQ1osVUFBVSxFQUFBO0lBdmIxQjtNQTBib0IsZ0JBQWdCLEVBQUE7RUExYnBDO0lBK2JnQixzQnZDdjdCSjtJdUN3N0JJLFdBQVc7SUFDWCxpRUFBaUU7SUFDakUsa0JBQWtCO0lBQ2xCLG9DdkMxN0JKO0l1QzI3Qkksb0VBQW9FO0lBQ3BFLFVBQVUsRUFBQTtJQXJjMUI7TUF3Y29CLGdCQUFnQixFQUFBO0VBeGNwQztJQThjWSxVQUFVO0lBQ1YsU0FBUztJQUNULG9CQUFhO0lBQWIsb0JBQWE7SUFBYixhQUFhLEVBQUE7SUFoZHpCO01BbWRnQixnQkFBZ0I7TUFDaEIsV0FBVztNQUNYLFlBQVk7TXRDbjhCeEIsb0JBRHlCO01BQ3pCLG9CQUR5QjtNQUN6QixhQUR5QjtNQUV6Qix5QkFGeUM7VUFFekMsc0JBRnlDO2NBRXpDLG1CQUZ5QztNQUd6Qyx3QkFIMkQ7VUFHM0QscUJBSDJEO2NBRzNELHVCQUgyRCxFQUFBO01zQytlL0Q7UUF5ZG9CLFdBQVc7UUFDWCxlQUFlO1FBQ2YsU0FBUztRQUNULFVBQVU7UXRDMThCMUIsb0JBRHlCO1FBQ3pCLG9CQUR5QjtRQUN6QixhQUR5QjtRQUV6Qix5QkFGeUM7WUFFekMsc0JBRnlDO2dCQUV6QyxtQkFGeUM7UUFHekMsd0JBSDJEO1lBRzNELHFCQUgyRDtnQkFHM0QsdUJBSDJEO1FzQzY4QjNDLHFCQUFxQixFQUFBO0VBOWR6QztJQW9lWSxvQkFBYTtJQUFiLG9CQUFhO0lBQWIsYUFBYTtJQUNiLDBCQUFxQjtRQUFyQixxQkFBcUI7SUFDckIsa0JBQWtCO0lBQ2xCLE1BQU07SUFDTixRQUFRLEVBQUE7SUF4ZXBCO01BMmVnQixxQkFBcUI7TUFDckIsY3ZDLzVCUTtNdUNnNkJSLGVBQWU7TUFDZix5QnZDaDZCUztNdUNpNkJULFlBQVk7TUFDWixpQkFBaUI7TUFDakIsa0JBQWtCLEVBQUE7TUFqZmxDO1FBb2ZvQixXQUFXO1FBQ1gsY3ZDMytCSixFQUFBO0l1Q3NmaEI7TUEwZmdCLFVBQVUsRUFBQTtNQTFmMUI7UUE2Zm9CLGdCQUFnQjtRQUNoQixrQkFBa0IsRUFBQTtRQTlmdEM7VUFpZ0J3QixjdkN2L0JSO1V1Q3cvQlEsZUFBZSxFQUFBO1VBbGdCdkM7WUFxZ0I0QixjdkM3K0JSLEVBQUE7O0F1Q3MvQnBCO0VBRVEsc0JBQWtCO01BQWxCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLGdDdkM1L0JjLEVBQUE7RXVDdS9CdEI7SUFRWSxjdkM1Z0NJO0l1QzZnQ0osb0NBQW9DO0lBQ3BDLGtCQUFrQjtJQUNsQixlQUFlO0lBQ2YsZ0JBQWdCO0lBQ2hCLGtCQUFrQjtJQUNsQixtQkFBbUIsRUFBQTtJckM0M1UzQjtNcUN6M1VZLGVBQWU7TUFDZixpQkFBaUIsRUFBQTtJcEM3aEN6QjtNb0MyZ0NSO1FBc0JnQixlQUFlLEVBQUEsRUFvQnRCO0lBMUNUO01BMEJnQiw2QkFBNkI7TUFDN0IsK0JBQStCO01BQy9CLDhCQUE4QjtNQUM5QiwyQ0FBMkM7TUFDM0MsaUNBQXlCO01BQXpCLHlCQUF5QixFQUFBO0lBOUJ6QztNQWtDZ0IsNkJBQTZCO01BQzdCLCtCQUErQjtNQUMvQiw4QkFBOEI7TUFDOUIsMkNBQTJDO01BQzNDLGlDQUF5QjtNQUF6Qix5QkFBeUI7TUFDekIsY3ZDM2lDQTtNdUM0aUNBLHNCdkM5aUNKLEVBQUE7O0F1Q3NnQ1o7RUE4Q1EsbUJBQW1CO0VBQ25CLFVBQVUsRUFBQTtFQS9DbEI7SUFrRFksZUFBZTtJQUNmLGdCQUFnQjtJQUNoQixjdkMxaUNRO0l1QzJpQ1IsVUFBVTtJQUNWLGNBQWM7SUFDZCxjQUFjLEVBQUE7O0FBdkQxQjtFQTREUSxpQkFBaUIsRUFBQTtFQTVEekI7SUFnRWdCLGtCQUFrQixFQUFBO0VBaEVsQztJQW9FZ0IsaUR2QzNqQ007SXVDNGpDTixvQkFBYTtJQUFiLG9CQUFhO0lBQWIsYUFBYTtJQUNiLHdCQUF1QjtRQUF2QixxQkFBdUI7WUFBdkIsdUJBQXVCO0lBQ3ZCLGVBQWUsRUFBQTtJQXZFL0I7TUEwRW9CLFdBQVc7TUFDWCxZQUFZO01BQ1osZ0JBQWdCO01BQ2hCLGtCQUFrQjtNQUNsQixrQkFBa0IsRUFBQTtNckMyMlVoQztRcUN4MlVrQixlQUFlO1FBQ2YsaUJBQWlCLEVBQUE7SUFsRnpDO01BdUZvQix3QkFBd0IsRUFBQTtNQXZGNUM7UUEwRndCLGdCQUFnQixFQUFBO01BMUZ4QztRQThGd0IsZ0JBQWdCLEVBQUE7TUE5RnhDO1FBa0d3QixnQkFBZ0I7UUFDaEIsZUFBZSxFQUFBO0VBbkd2QztJQTJHZ0IsZ0JBQWdCLEVBQUE7SUEzR2hDO01BOEdvQixXQUFXO01BQ1gsb0JBQWE7TUFBYixvQkFBYTtNQUFiLGFBQWE7TUFDYix5QkFBbUI7VUFBbkIsc0JBQW1CO2NBQW5CLG1CQUFtQjtNQUNuQixtQkFBbUIsRUFBQTtNQWpIdkM7UUFvSHdCLFdBQVc7UUFDWCxrQkFBa0I7UUFDbEIsWUFBWSxFQUFBO1FBdEhwQztVQXlINEIseUJ2QzFtQ1osRUFBQTtNdUNpL0JoQjtRQThId0IsU0FBUztRQUNULG1CQUFtQjtRQUNuQixjdkNwb0NSO1F1Q3FvQ1EsZUFBZSxFQUFBO0VBakl2QztJQTBJb0IseUJ2QzFvQ0EsRUFBQTtFdUNnZ0NwQjtJQWlKZ0IsZ0JBQWdCLEVBQUE7SUFqSmhDO01Bb0pvQixjdkM5b0NBLEVBQUE7TXVDMC9CcEI7UUF1SndCLHlCdkM5b0NGO1F1QytvQ0UseUJ2Q3hwQ0o7UXVDeXBDSSxnQkFBZ0I7UUFDaEIsMEJBQTBCO1FBQzFCLG1CQUFtQixFQUFBO01BM0ozQztRQStKd0IseUJ2Q3RwQ0Y7UXVDdXBDRSxnQkFBZ0I7UUFDaEIsMEJBQTBCO1FBQzFCLG1CQUFtQixFQUFBO1FyQ3MwVW5DO1VxQ24wVW9CLGlCQUFpQixFQUFBO0VBcks3QztJQStLb0IsbUJBQW1CO0lBQ25CLG9CQUFvQjtJQUNwQixnQ3ZDeHFDRSxFQUFBO0l1Q3UvQnRCO01Bb0x3QixnQkFBZ0I7TUFDaEIsb0JBQWE7TUFBYixvQkFBYTtNQUFiLGFBQWE7TUFDYix3QkFBdUI7VUFBdkIscUJBQXVCO2NBQXZCLHVCQUF1QjtNQUN2QixnQkFBZ0IsRUFBQTtNQXZMeEM7UUEwTDRCLGtCQUFrQjtRQUNsQixlQUFlO1FBQ2YseUJBQXlCO1FBQ3pCLFdBQVc7UUFDWCxZQUFZO1FBQ1osbUJBQW1CO1FBQ25CLHlCdkN2ckNOO1FDTGxCLG9CQUR5QjtRQUN6QixvQkFEeUI7UUFDekIsYUFEeUI7UUFFekIseUJBRnlDO1lBRXpDLHNCQUZ5QztnQkFFekMsbUJBRnlDO1FBR3pDLHdCQUgyRDtZQUczRCxxQkFIMkQ7Z0JBRzNELHVCQUgyRCxFQUFBO1FDMi9XdkQ7VXFDMXpVd0IsZUFBZTtVQUNmLGlCQUFpQixFQUFBO01Bck1qRDtRQTBNNEIsd0JBQXdCLEVBQUE7UUExTXBEO1VBNk1nQyxnQkFBZ0I7VUFDaEIsMEJBQTBCO1VBQzFCLHFCQUFxQjtVQUNyQixjQUFjO1VBQ2QsV0FBVztVQUNYLGN2Q3R0Q2hCO1V1Q3V0Q2dCLGVBQWU7VUFDZixnQkFBZ0IsRUFBQTtRQXBOaEQ7VUF3TmdDLGdCQUFnQjtVQUNoQixnQkFBZ0I7VUFDaEIsc0JBQXNCO1VBQ3RCLGVBQWU7VUFDZixnQkFBZ0I7VUFDaEIsZ0JBQWdCO1VBQ2hCLGN2Q3h0Q1osRUFBQTtFdUMwL0JwQjtJQXVPWSxjQUFjO0lBQ2QsbUJBQW1CLEVBQUE7SUF4Ty9CO01BMk9nQixnQkFBZ0IsRUFBQTtNQTNPaEM7UUE4T29CLGdCQUFnQixFQUFBO0VBOU9wQztJQW9QWSxnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLHNCQUFzQjtJQUN0QixlQUFlLEVBQUE7RUF2UDNCO0lBMlBZLG9DQUFvQztJQUNwQyxXdkNsd0NBO0l1Q213Q0EsaUJBQWlCLEVBQUE7RUE3UDdCO0lBb1F3QixpQ0FBaUM7SUFDakMsZ0JBQWdCO0lBQ2hCLG1CQUFtQixFQUFBO0VBdFEzQztJQTBRd0Isc0JBQXNCO0lBQ3RCLG1CQUFtQjtJQUNuQixrQkFBa0IsRUFBQTs7QUE1UTFDO0VBc1JnQixnQ0FBMkM7RUFDM0Msd0JBQWdCO1VBQWhCLGdCQUFnQixFQUFBOztBQU1oQztFQUNJLHNFQUFzRSxFQUFBO0VBRDFFO0lBSVEsZ0JBQWdCO0lBQ2hCLDBCQUEwQjtJQUMxQixlQUFlLEVBQUE7O0FBSXZCO0VBRVEsbUJBQW1CLEVBQUE7RUFGM0I7SUFLWSxVQUFVLEVBQUE7SUFMdEI7TUFRZ0Isa0JBQWtCO01BQ2xCLFNBQVM7TUFDVCxXQUFXO01BQ1gsU0FBUztNQUNULFVBQVU7TUFDVixVQUFVO01BQ1YsV3ZDM3pDSjtNdUM0ekNJLG9CQUFhO01BQWIsb0JBQWE7TUFBYixhQUFhLEVBQUE7RUFmN0I7SUFvQlksb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWE7SUFDYiwwQkFBcUI7UUFBckIscUJBQXFCLEVBQUE7SUFyQmpDO01Bd0JnQixVQUFVO01BQ1YsU0FBUyxFQUFBO01BekJ6QjtRQTRCb0IsZ0JBQWdCO1FBQ2hCLGNBQWMsRUFBQTtRQTdCbEM7VUFnQ3dCLGdCQUFnQixFQUFBO1FBaEN4QztVQW9Dd0IscUJBQXFCO1VBQ3JCLGN2Q2gxQ1I7VXVDaTFDUSxvQkFBYTtVQUFiLG9CQUFhO1VBQWIsYUFBYTtVQUNiLDBCQUFxQjtjQUFyQixxQkFBcUIsRUFBQTtVQXZDN0M7WUEwQzRCLGdCQUFnQixFQUFBO1VBMUM1QztZQThDNEIsa0JBQWtCO1lBQ2xCLGlCQUFpQjtZQUNqQixvQkFBYTtZQUFiLG9CQUFhO1lBQWIsYUFBYTtZQUNiLGdCQUFnQjtZQUNoQiwwQkFBcUI7Z0JBQXJCLHFCQUFxQixFQUFBOztBQVNqRDtFQUNJLGdCdkN6MkNRO0V1QzAyQ1IsZ0JBQWdCO0VBQ2hCLFNBQVM7RUFDVCxnQkFBZ0I7RUFDaEIsY0FBYztFQUNkLFVBQVU7RUFDVixhQUFhO0VBQ2IsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsVUFBVTtFQUNWLG1EdkNsM0NZO1V1Q2szQ1osMkN2Q2wzQ1k7RXVDbTNDWixZQUFZO0VBQ1osb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYix5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQjtFQUNuQixpQ0FBeUI7RUFBekIseUJBQXlCLEVBQUE7RXJDNnZVM0I7SXFDMXZVTSxXQUFXO0lBQ1gsV0FBVyxFQUFBO0VwQ2o0Q1g7SW9DNjJDUjtNQXlCUSxPQUFPO01BQ1AsY0FBYyxFQUFBLEVBNERyQjtFQXRGRDtJQThCUSxZQUFZO0lBQ1osaUNBQXlCO0lBQXpCLHlCQUF5QixFQUFBO0lwQzU0Q3pCO01vQzYyQ1I7UUFrQ1ksWUFBWSxFQUFBLEVBTW5CO0lwQ3I1Q0c7TW9DNjJDUjtRQXNDWSxZQUFZLEVBQUEsRUFFbkI7RUF4Q0w7SUEyQ1EsVUFBVSxFQUFBO0VBM0NsQjtJQStDUSxrQkFBa0I7SUFDbEIsVUFBVTtJQUNWLFFBQVE7SUFDUixZQUFZO0lBQ1osY3ZDejVDUSxFQUFBO0lFMm9YWjtNcUMvdVVRLFlBQVk7TUFDWixTQUFTLEVBQUE7RUF2RHJCO0lBNERRLGVBQWUsRUFBQTtJckM4dVVuQjtNcUMzdVVRLGlCQUFpQixFQUFBO0lBL0Q3QjtNQW1FWSxvRUFBb0U7TUFDcEUsZ0JBQWdCLEVBQUE7SUFwRTVCO01Bd0VZLGdCQUFnQixFQUFBO0lBeEU1QjtNQTRFWSx5QkFBeUI7TUFDekIsZUFBZTtNQUNmLGNBQWM7TUFDZCxhQUFhLEVBQUE7SUEvRXpCO01BbUZZLGNBQWMsRUFBQTs7QUFLMUI7RUFDSSxvQkFBb0IsRUFBQTtFcEN0OENoQjtJb0NxOENSO01BSVEsaUJBQWlCLEVBQUEsRUFpQnhCO0VBckJEO0lBUVEsU0FBUztJQUNULGlDQUF5QjtJQUF6Qix5QkFBeUIsRUFBQTtFQVRqQztJQWNZLGFBQWEsRUFBQTtFQWR6QjtJQW1CUSxhQUFhLEVBQUE7O0FBSXJCO0VBQ0ksa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZiwwQkFBMEI7RUFDMUIsZ0JBQWdCLEVBQUE7RXBDaCtDWjtJb0M0OUNSO01BT1EsYUFBYSxFQUFBLEVBRXBCOztBQUVEO0VBQ0ksZUFBZTtFQUNmLGNBQWM7RUFDZCxZQUFZO0VBQ1osVUFBVTtFQUNWLHNCdkN2K0NRO0V1Q3crQ1IsZUFBZTtFQUNmLG1EQUEyQztVQUEzQywyQ0FBMkM7RUFDM0MsaUNBQXlCO0VBQXpCLHlCQUF5QixFQUFBO0VBUjdCO0lBV1Esb0JBQWE7SUFBYixvQkFBYTtJQUFiLGFBQWE7SUFDYix5QkFBbUI7UUFBbkIsc0JBQW1CO1lBQW5CLG1CQUFtQjtJQUNuQix5QkFBOEI7UUFBOUIsc0JBQThCO1lBQTlCLDhCQUE4QixFQUFBO0lwQ3AvQzlCO01vQ3UrQ1I7UUFnQlksY0FBYyxFQUFBLEVBRXJCO0VBbEJMO0lBcUJRLG9CQUFhO0lBQWIsb0JBQWE7SUFBYixhQUFhO0lBQ2IseUJBQW1CO1FBQW5CLHNCQUFtQjtZQUFuQixtQkFBbUIsRUFBQTtJcEM3L0NuQjtNb0N1K0NSO1FBeUJZLGFBQWEsRUFBQSxFQTBEcEI7SUFuRkw7TUE2QlksV0FBVztNQUNYLFlBQVk7TUFDWixvQkFBaUI7U0FBakIsaUJBQWlCO01BQ2pCLHVCQUFvQjtTQUFwQixvQkFBb0IsRUFBQTtJQWhDaEM7TUFvQ1ksaUJBQWlCO01BQ2pCLGN2Q3JnREk7TXVDc2dESixhQUFhLEVBQUE7TXJDOHNVbkI7UXFDM3NVVSxjQUFjO1FBQ2Qsa0JBQWtCLEVBQUE7TXBDamhEMUI7UW9DdStDUjtVQThDZ0IsYUFBYSxFQUFBLEVBb0NwQjtNcEN6akREO1FvQ3UrQ1I7VUFrRGdCLGNBQWMsRUFBQSxFQWdDckI7TUFsRlQ7O1FBdURnQixnQkFBZ0IsRUFBQTtNQXZEaEM7UUEyRGdCLGVBQWU7UUFDZixnQkFBZ0I7UUFDaEIsMEJBQTBCLEVBQUE7TUE3RDFDO1FBaUVnQixlQUFlO1FBQ2YsZUFBZSxFQUFBO1FBbEUvQjtVQXFFb0IsZ0JBQWdCLEVBQUE7UUFyRXBDO1VBeUVvQiwyQkFBMkI7VUFDM0IsZ0JBQWdCLEVBQUE7VXJDa3NVMUI7WXFDL3JVYyxjQUFjO1lBQ2QsaUJBQWlCLEVBQUE7RUE5RXpDO0lBc0ZRLG9CQUFhO0lBQWIsb0JBQWE7SUFBYixhQUFhO0lBQ2IseUJBQW1CO1FBQW5CLHNCQUFtQjtZQUFuQixtQkFBbUI7SUFDbkIsY0FBYyxFQUFBO0lwQy9qRGQ7TW9DdStDUjtRQTJGWSxhQUFhLEVBQUEsRUEyQnBCO0lBdEhMO01BK0ZZLHlCdkMzakRRO011QzRqRFIseUJ2QzVqRFE7TXVDNmpEUiwwQkFBMEIsRUFBQTtNQWpHdEM7UUFvR2dCLHdCQUFnQjtnQkFBaEIsZ0JBQWdCLEVBQUE7SUFwR2hDO01BeUdZLFlBQVk7TUFDWixpQkFBaUI7TUFDakIsa0JBQWtCLEVBQUE7TXBDbGxEdEI7UW9DdStDUjtVQThHZ0IsWUFBWSxFQUFBLEVBT25CO01wQzVsREQ7UW9DdStDUjtVQWtIZ0IsZUFBZTtVQUNmLFlBQVksRUFBQSxFQUVuQjtFcEM1bEREO0lvQ3UrQ1I7TXRDeDlDSSxvQkFEeUI7TUFDekIsb0JBRHlCO01BQ3pCLGFBRHlCO01BRXpCLHlCQUZ5QztVQUV6QyxzQkFGeUM7Y0FFekMsbUJBRnlDO01BR3pDLHdCQUgyRDtVQUczRCxxQkFIMkQ7Y0FHM0QsdUJBSDJELEVBQUEsRXNDZ29EMUQ7RXBDOW9ERztJb0N1K0NSO01BK0hnQixXQUFXO010Q3ZsRHZCLG9CQUR5QjtNQUN6QixvQkFEeUI7TUFDekIsYUFEeUI7TUFFekIseUJBRnlDO1VBRXpDLHNCQUZ5QztjQUV6QyxtQkFGeUM7TUFHekMsd0JBSDJEO1VBRzNELHFCQUgyRDtjQUczRCx1QkFIMkQsRUFBQSxFc0MrbkR0RDtFQXRLVDtJQW9JZ0IsYUFBYTtJQUNiLHlCdkNqbURJO0l1Q2ttREosY3ZDdG1EQSxFQUFBO0l1Q2crQ2hCO01BeUlvQixvQ0FBb0M7TUFDcEMsZ0NBQWdDO01BQ2hDLFd2QzdtRFIsRUFBQTtJR0xKO01vQ3UrQ1I7UUErSW9CLG9CQUFhO1FBQWIsb0JBQWE7UUFBYixhQUFhLEVBQUEsRUFFcEI7RXBDeG5ETDtJb0N1K0NSO01BcUpvQixnQkFBZ0IsRUFBQTtNckMycVU5QjtRcUN4cVVrQixpQkFBaUI7UUFDakIsa0JBQWtCLEVBQUEsRUFDckI7RUExSnJCO0lBK0pnQixpQkFBaUIsRUFBQTtJckNzcVU3QjtNcUNucVVnQixtQkFBbUI7TUFDbkIsZ0JBQWdCLEVBQUE7O0FBT3BDO0VBQ0ksa0JBQWtCO0VBQ2xCLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUIsRUFBQTtFQUh2QjtJQVFnQixVQUFVLEVBQUE7SUFSMUI7TUFZd0IsVUFBVTtNQUNWLGdDQUF3QjtjQUF4Qix3QkFBd0IsRUFBQTtNQWJoRDtRQWdCNEIsOEJBQXNCO2dCQUF0QixzQkFBc0IsRUFBQTtNQWhCbEQ7UUFvQjRCLDhCQUFzQjtnQkFBdEIsc0JBQXNCLEVBQUE7TUFwQmxEO1FBd0I0Qiw4QkFBc0I7Z0JBQXRCLHNCQUFzQixFQUFBO01BeEJsRDtRQTRCNEIsOEJBQXNCO2dCQUF0QixzQkFBc0IsRUFBQTtFckNvcFVoRDtJcUMzb1VNLGNBQWMsRUFBQTtFQXJDdEI7SUF5Q1EsV0FBVztJQUNYLFlBQVk7SUFDWixvQkFBaUI7T0FBakIsaUJBQWlCLEVBQUE7RUEzQ3pCO0lBK0NRLGlCQUFpQjtJQUNqQixnQkFBZ0I7SUFDaEIsa0JBQWtCLEVBQUE7SUFqRDFCO01Bb0RZLGtCQUFrQjtNdEMxc0R0QixRQUFRO01BQ1IsbUNBQTJCO2NBQTNCLDJCQUEyQjtNQVAvQixXQUR3QjtNQUV4QixZQUZ1QztNc0NvdEQvQixPQUFPO01BQ1Asc0J2Q3BzREE7TXVDcXNEQSxvQkFBYTtNQUFiLG9CQUFhO01BQWIsYUFBYTtNQUNiLHlCQUFtQjtVQUFuQixzQkFBbUI7Y0FBbkIsbUJBQW1CO01BQ25CLGtCQUFrQjtNQUNsQixVQUFVO01BQ1YsNEJBQW9CO01BQXBCLG9CQUFvQixFQUFBO01yQzBvVTFCO1FxQ3ZvVVUsa0JBQWtCO1FBQ2xCLG1CQUFtQixFQUFBO01BakVuQztRQXNFb0IsVUFBVTtRQUNWLG1DQUEyQjtnQkFBM0IsMkJBQTJCO1FBQzNCLDRCQUFvQjtRQUFwQixvQkFBb0IsRUFBQTtRQXhFeEM7VUEyRXdCLGlCQUFpQixFQUFBO1VyQ3FvVS9CO1lxQ2xvVWtCLGtCQUFrQjtZQUNsQixrQkFBa0IsRUFBQTtRQS9FOUM7VUFxRjRCLFdBQVcsRUFBQTtJckNnb1VuQztNcUN4blVRLGNBQWM7TUFDZCxrQkFBa0IsRUFBQTtJQTlGOUI7TUFrR1ksY3ZDNXVESSxFQUFBO011QzBvRGhCO1FBcUdnQixvRUFBb0U7UUFDcEUsZ0JBQWdCO1FBQ2hCLHVCQUF1QjtRQUN2QixtQkFBbUI7UUFDbkIsZUFBZSxFQUFBO0lBekcvQjtNQThHWSxvRUFBb0UsRUFBQTtNQTlHaEY7UUFpSGdCLGlCQUFpQixFQUFBO1FyQ21uVXpCO1VxQ2huVVksa0JBQWtCO1VBQ2xCLGtCQUFrQixFQUFBO0VBckh0QztJQTRIUSxnQkFBZ0IsRUFBQTs7QUFLeEI7RUFDSSxrQkFBa0I7RUFDbEIsY3ZDL3ZEZ0I7RXVDZ3dEaEIsZ0JBQWdCLEVBQUE7RUFIcEI7SUFNUSxjQUFjO0lBQ2QseUJBQWlCO09BQWpCLHNCQUFpQjtRQUFqQixxQkFBaUI7WUFBakIsaUJBQWlCLEVBQUE7RUFQekI7SUFXUSxnQkFBZ0I7SUFDaEIsV0FBVztJQUNYLGNBQWM7SUFDZCxvQkFBYTtJQUFiLG9CQUFhO0lBQWIsYUFBYTtJQUNiLHlCQUE4QjtRQUE5QixzQkFBOEI7WUFBOUIsOEJBQThCLEVBQUE7SUFmdEM7TUFrQlksa0JBQWtCO01BQ2xCLFlBQVk7TUFDWixXQUFXO01BQ1gsZUFBZTtNQUNmLFlBQVk7TUFDWix3Q0FBZ0M7TUFBaEMsZ0NBQWdDLEVBQUE7TUF2QjVDO1FBMEJnQix5QnZDcnlEQTtRdUNzeURBLFd2Q3h5REosRUFBQTs7QXVDK3lEWjs7RUFNZ0Isa0JBQWtCO0VBQ2xCLGdCQUFnQixFQUFBOztBQVBoQztFQVlvQixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLHFCQUFxQjtFQUNyQixnQkFBZ0IsRUFBQTs7QUFmcEM7RUFtQm9CLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUIsRUFBQTtFQXBCdkM7SUF1QndCLFdBQVc7SUFDWCxnQkFBZ0IsRUFBQTtFQXhCeEM7SUE0QndCLGlCQUFpQjtJQUNqQixXQUFXLEVBQUE7SUE3Qm5DO01BZ0M0QixhQUFhLEVBQUE7SUFoQ3pDO01Bb0M0QixpQkFBaUI7TUFDakIsZ0JBQWdCLEVBQUE7SUFyQzVDO01BeUM0QixvQ0FBb0M7TUFDcEMsV3ZDejFEaEI7TXVDMDFEZ0IsaUJBQWlCLEVBQUE7O0FBM0M3QztFQWlEb0IsWUFBWSxFQUFBOztBQzUzRGhDO0VBQ0k7SUFDSSwrQkFBdUI7WUFBdkIsdUJBQXVCLEVBQUE7RUFHM0I7SUFDSSxpQ0FBeUI7WUFBekIseUJBQXlCLEVBQUE7RUFHN0I7SUFDSSxpQ0FBeUI7WUFBekIseUJBQXlCLEVBQUEsRUFBQTs7QUFWakM7RUFDSTtJQUNJLCtCQUF1QjtZQUF2Qix1QkFBdUIsRUFBQTtFQUczQjtJQUNJLGlDQUF5QjtZQUF6Qix5QkFBeUIsRUFBQTtFQUc3QjtJQUNJLGlDQUF5QjtZQUF6Qix5QkFBeUIsRUFBQSxFQUFBOztBQUlqQztFQUNJO0lBQ0ksK0NBQXVDO1lBQXZDLHVDQUF1QyxFQUFBO0VBRzNDO0lBQ0ksK0JBQXVCO1lBQXZCLHVCQUF1QjtJQUN2Qiw4QkFBc0I7WUFBdEIsc0JBQXNCLEVBQUE7RUFHMUI7SUFDSSxnQ0FBd0I7WUFBeEIsd0JBQXdCO0lBQ3hCLCtCQUF1QjtZQUF2Qix1QkFBdUIsRUFBQTtFQUczQjtJQUNJLCtDQUF1QztZQUF2Qyx1Q0FBdUMsRUFBQSxFQUFBOztBQWhCL0M7RUFDSTtJQUNJLCtDQUF1QztZQUF2Qyx1Q0FBdUMsRUFBQTtFQUczQztJQUNJLCtCQUF1QjtZQUF2Qix1QkFBdUI7SUFDdkIsOEJBQXNCO1lBQXRCLHNCQUFzQixFQUFBO0VBRzFCO0lBQ0ksZ0NBQXdCO1lBQXhCLHdCQUF3QjtJQUN4QiwrQkFBdUI7WUFBdkIsdUJBQXVCLEVBQUE7RUFHM0I7SUFDSSwrQ0FBdUM7WUFBdkMsdUNBQXVDLEVBQUEsRUFBQTs7QUFJL0M7RUFDSTtJQUNJLHdGeENpQm1CO1l3Q2pCbkIsZ0Z4Q2lCbUIsRUFBQTtFd0NidkI7SUFDSSwwRnhDWW1CO1l3Q1puQixrRnhDWW1CLEVBQUEsRUFBQTs7QXdDbkIzQjtFQUNJO0lBQ0ksd0Z4Q2lCbUI7WXdDakJuQixnRnhDaUJtQixFQUFBO0V3Q2J2QjtJQUNJLDBGeENZbUI7WXdDWm5CLGtGeENZbUIsRUFBQSxFQUFBOztBd0NQM0I7RUFDSTtJQUNJLHNGeENpQlE7WXdDakJSLDhFeENpQlEsRUFBQTtFd0NkWjtJQUNJLHdGeENhUTtZd0NiUixnRnhDYVEsRUFBQSxFQUFBOztBd0NuQmhCO0VBQ0k7SUFDSSxzRnhDaUJRO1l3Q2pCUiw4RXhDaUJRLEVBQUE7RXdDZFo7SUFDSSx3RnhDYVE7WXdDYlIsZ0Z4Q2FRLEVBQUEsRUFBQTs7QXdDVGhCO0VBQ0k7SUFDSSx3RkFBZ0Y7WUFBaEYsZ0ZBQWdGLEVBQUE7RUFHcEY7SUFDSSwwRkFBa0Y7WUFBbEYsa0ZBQWtGLEVBQUEsRUFBQTs7QUFOMUY7RUFDSTtJQUNJLHdGQUFnRjtZQUFoRixnRkFBZ0YsRUFBQTtFQUdwRjtJQUNJLDBGQUFrRjtZQUFsRixrRkFBa0YsRUFBQSxFQUFBOztBQUkxRjtFQUNJO0lBQ0ksK0JBQXVCO1lBQXZCLHVCQUF1QjtJQUN2QixnQ0FBd0I7WUFBeEIsd0JBQXdCLEVBQUE7RUFHNUI7SUFDSSwrQkFBdUI7WUFBdkIsdUJBQXVCLEVBQUE7RUFHM0I7SUFDSSwrQkFBdUI7WUFBdkIsdUJBQXVCLEVBQUE7RUFHM0I7SUFDSSxnQ0FBd0I7WUFBeEIsd0JBQXdCLEVBQUE7RUFHNUI7SUFDSSwrQkFBdUI7WUFBdkIsdUJBQXVCLEVBQUEsRUFBQTs7QUFuQi9CO0VBQ0k7SUFDSSwrQkFBdUI7WUFBdkIsdUJBQXVCO0lBQ3ZCLGdDQUF3QjtZQUF4Qix3QkFBd0IsRUFBQTtFQUc1QjtJQUNJLCtCQUF1QjtZQUF2Qix1QkFBdUIsRUFBQTtFQUczQjtJQUNJLCtCQUF1QjtZQUF2Qix1QkFBdUIsRUFBQTtFQUczQjtJQUNJLGdDQUF3QjtZQUF4Qix3QkFBd0IsRUFBQTtFQUc1QjtJQUNJLCtCQUF1QjtZQUF2Qix1QkFBdUIsRUFBQSxFQUFBOztBQUkvQjtFQUNJO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBO0VBRzlCO0lBQ0ksb0NBQTRCO1lBQTVCLDRCQUE0QixFQUFBO0VBR2hDO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBLEVBQUE7O0FBVmxDO0VBQ0k7SUFDSSxrQ0FBMEI7WUFBMUIsMEJBQTBCLEVBQUE7RUFHOUI7SUFDSSxvQ0FBNEI7WUFBNUIsNEJBQTRCLEVBQUE7RUFHaEM7SUFDSSxrQ0FBMEI7WUFBMUIsMEJBQTBCLEVBQUEsRUFBQTs7QUFJbEM7RUFDSTtJQUNJLCtDQUF1QztZQUF2Qyx1Q0FBdUMsRUFBQTtFQUczQztJQUNJLHFEQUE2QztZQUE3Qyw2Q0FBNkMsRUFBQTtFQUdqRDtJQUNJLCtDQUF1QztZQUF2Qyx1Q0FBdUMsRUFBQSxFQUFBOztBQVYvQztFQUNJO0lBQ0ksK0NBQXVDO1lBQXZDLHVDQUF1QyxFQUFBO0VBRzNDO0lBQ0kscURBQTZDO1lBQTdDLDZDQUE2QyxFQUFBO0VBR2pEO0lBQ0ksK0NBQXVDO1lBQXZDLHVDQUF1QyxFQUFBLEVBQUE7O0FBSS9DO0VBQ0k7SUFDSSwrQ0FBdUM7WUFBdkMsdUNBQXVDLEVBQUE7RUFHM0M7SUFDSSxzREFBOEM7WUFBOUMsOENBQThDLEVBQUE7RUFHbEQ7SUFDSSwrQ0FBdUM7WUFBdkMsdUNBQXVDLEVBQUEsRUFBQTs7QUFWL0M7RUFDSTtJQUNJLCtDQUF1QztZQUF2Qyx1Q0FBdUMsRUFBQTtFQUczQztJQUNJLHNEQUE4QztZQUE5Qyw4Q0FBOEMsRUFBQTtFQUdsRDtJQUNJLCtDQUF1QztZQUF2Qyx1Q0FBdUMsRUFBQSxFQUFBOztBQUkvQztFQUNJO0lBQ0ksbURBQTJDO1lBQTNDLDJDQUEyQyxFQUFBO0VBRy9DO0lBQ0ksd0RBQWdEO1lBQWhELGdEQUFnRCxFQUFBO0VBR3BEO0lBQ0kseURBQWlEO1lBQWpELGlEQUFpRCxFQUFBO0VBR3JEO0lBQ0ksc0RBQThDO1lBQTlDLDhDQUE4QyxFQUFBLEVBQUE7O0FBZHREO0VBQ0k7SUFDSSxtREFBMkM7WUFBM0MsMkNBQTJDLEVBQUE7RUFHL0M7SUFDSSx3REFBZ0Q7WUFBaEQsZ0RBQWdELEVBQUE7RUFHcEQ7SUFDSSx5REFBaUQ7WUFBakQsaURBQWlELEVBQUE7RUFHckQ7SUFDSSxzREFBOEM7WUFBOUMsOENBQThDLEVBQUEsRUFBQTs7QUFJdEQ7RUFDSTtJQUNJLFlBQVk7SUFDWixhQUFhO0lBQ2Isa0JBQWtCO0lBQ2xCLDJEeEM1SFE7WXdDNEhSLG1EeEM1SFEsRUFBQTtFd0MrSFo7SUFDSSxXQUFXO0lBQ1gsWUFBWTtJQUNaLHdEeENsSVE7WXdDa0lSLGdEeENsSVE7SXdDbUlSLGlCQUFpQixFQUFBLEVBQUE7O0FBWnpCO0VBQ0k7SUFDSSxZQUFZO0lBQ1osYUFBYTtJQUNiLGtCQUFrQjtJQUNsQiwyRHhDNUhRO1l3QzRIUixtRHhDNUhRLEVBQUE7RXdDK0haO0lBQ0ksV0FBVztJQUNYLFlBQVk7SUFDWix3RHhDbElRO1l3Q2tJUixnRHhDbElRO0l3Q21JUixpQkFBaUIsRUFBQSxFQUFBOztBQUl6QjtFQUNJO0lBQ0ksc0RBQThDO1lBQTlDLDhDQUE4QyxFQUFBO0VBR2xEO0lBQ0kseURBQWlEO1lBQWpELGlEQUFpRCxFQUFBO0VBR3JEO0lBQ0ksd0RBQWdEO1lBQWhELGdEQUFnRCxFQUFBO0VBR3BEO0lBQ0ksbURBQTJDO1lBQTNDLDJDQUEyQyxFQUFBLEVBQUE7O0FBZG5EO0VBQ0k7SUFDSSxzREFBOEM7WUFBOUMsOENBQThDLEVBQUE7RUFHbEQ7SUFDSSx5REFBaUQ7WUFBakQsaURBQWlELEVBQUE7RUFHckQ7SUFDSSx3REFBZ0Q7WUFBaEQsZ0RBQWdELEVBQUE7RUFHcEQ7SUFDSSxtREFBMkM7WUFBM0MsMkNBQTJDLEVBQUEsRUFBQTs7QUFJbkQ7RUFDSTtJQUNJLFdBQVc7SUFDWCxZQUFZO0lBQ1osd0R4QzdKUTtZd0M2SlIsZ0R4QzdKUTtJd0M4SlIsaUJBQWlCLEVBQUE7RUFHckI7SUFDSSxZQUFZO0lBQ1osYUFBYTtJQUNiLGtCQUFrQjtJQUNsQiwyRHhDcktRO1l3Q3FLUixtRHhDcktRLEVBQUEsRUFBQTs7QXdDeUpoQjtFQUNJO0lBQ0ksV0FBVztJQUNYLFlBQVk7SUFDWix3RHhDN0pRO1l3QzZKUixnRHhDN0pRO0l3QzhKUixpQkFBaUIsRUFBQTtFQUdyQjtJQUNJLFlBQVk7SUFDWixhQUFhO0lBQ2Isa0JBQWtCO0lBQ2xCLDJEeENyS1E7WXdDcUtSLG1EeENyS1EsRUFBQSxFQUFBOztBd0N5S2hCO0VBRUk7O0lBRUksdUNBQStCO1lBQS9CLCtCQUErQixFQUFBO0VBR25DOzs7OztJQUtJLDJDQUFtQztZQUFuQyxtQ0FBbUMsRUFBQTtFQUd2Qzs7OztJQUlJLDBDQUFrQztZQUFsQyxrQ0FBa0MsRUFBQSxFQUFBOztBQW5CMUM7RUFFSTs7SUFFSSx1Q0FBK0I7WUFBL0IsK0JBQStCLEVBQUE7RUFHbkM7Ozs7O0lBS0ksMkNBQW1DO1lBQW5DLG1DQUFtQyxFQUFBO0VBR3ZDOzs7O0lBSUksMENBQWtDO1lBQWxDLGtDQUFrQyxFQUFBLEVBQUE7O0FBSTFDO0VBQ0k7SUFDSSxVQUFVO0lBQ1YsK0JBQXVCO1lBQXZCLHVCQUF1QixFQUFBO0VBRzNCO0lBQ0ksWUFBWTtJQUNaLGlDQUF5QjtZQUF6Qix5QkFBeUIsRUFBQTtFQUc3QjtJQUNJLFVBQVU7SUFDVixpQ0FBeUI7WUFBekIseUJBQXlCLEVBQUEsRUFBQTs7QUFiakM7RUFDSTtJQUNJLFVBQVU7SUFDViwrQkFBdUI7WUFBdkIsdUJBQXVCLEVBQUE7RUFHM0I7SUFDSSxZQUFZO0lBQ1osaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksVUFBVTtJQUNWLGlDQUF5QjtZQUF6Qix5QkFBeUIsRUFBQSxFQUFBOztBQUlqQztFQUVJOztJQUVJLDBDQUFrQztZQUFsQyxrQ0FBa0MsRUFBQTtFQUd0Qzs7SUFFSSx5Q0FBaUM7WUFBakMsaUNBQWlDLEVBQUE7RUFHckM7OztJQUdJLDBDQUFrQztZQUFsQyxrQ0FBa0MsRUFBQTtFQUd0Qzs7SUFFSSx5Q0FBaUM7WUFBakMsaUNBQWlDLEVBQUEsRUFBQTs7QUFwQnpDO0VBRUk7O0lBRUksMENBQWtDO1lBQWxDLGtDQUFrQyxFQUFBO0VBR3RDOztJQUVJLHlDQUFpQztZQUFqQyxpQ0FBaUMsRUFBQTtFQUdyQzs7O0lBR0ksMENBQWtDO1lBQWxDLGtDQUFrQyxFQUFBO0VBR3RDOztJQUVJLHlDQUFpQztZQUFqQyxpQ0FBaUMsRUFBQSxFQUFBOztBQUl6QztFQUNJO0lBQ0ksNkJBQXFCO1lBQXJCLHFCQUFxQixFQUFBO0VBR3pCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBO0VBRzlCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBO0VBRzlCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBO0VBRzlCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBO0VBRzlCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBO0VBRzlCO0lBQ0ksZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzVCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzVCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzVCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzVCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzVCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzVCO0lBQ0ksNkJBQXFCO1lBQXJCLHFCQUFxQixFQUFBO0VBR3pCO0lBQ0ksNkJBQXFCO1lBQXJCLHFCQUFxQixFQUFBLEVBQUE7O0FBOUY3QjtFQUNJO0lBQ0ksNkJBQXFCO1lBQXJCLHFCQUFxQixFQUFBO0VBR3pCO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzdCO0lBQ0ksa0NBQTBCO1lBQTFCLDBCQUEwQixFQUFBO0VBRzlCO0lBQ0ksaUNB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RDs7NEJ2Q202WTRCO0F1Q2g2WTVCO0VBQ0k7SUFDSSxpQkFBaUIsRUFBQSxFQUNwQjs7QUNOTDs7NEJ4QzA2WTRCO0FBQzVCOztFd0NwNllRLFVBQVUsRUFBQTs7QXhDdzZZbEI7RXdDcDZZUSxjQUFjLEVBQUE7O0F4Q3U2WXRCO0V3Q242WVEsV0FBVyxFQUFBIiwiZmlsZSI6ImRlbW82LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIjpyb290IHtcbiAgICAtLXRoZW1lLWNvbG9yOiAjMDE2M2QyO1xufVxuXG4udGhlbWUtY29sb3IyIHtcbiAgICAtLXRoZW1lLWNvbG9yOiAjZTIyNDU0O1xufVxuXG4udGhlbWUtY29sb3IzIHtcbiAgICAtLXRoZW1lLWNvbG9yOiAjNzUyMGRkO1xufVxuXG4udGhlbWUtY29sb3I0IHtcbiAgICAtLXRoZW1lLWNvbG9yOiAjZTg3MzE2O1xufVxuXG4udGhlbWUtY29sb3I1IHtcbiAgICAtLXRoZW1lLWNvbG9yOiAjZGY0MjQ2O1xufVxuXG4udGhlbWUtY29sb3I2IHtcbiAgICAtLXRoZW1lLWNvbG9yOiAjNTE5ODNjO1xufVxuXG4udGV4dC1jb2xvciB7XG4gICAgY29sb3I6ICM2ZDZkNmQ7XG59XG5cbiR3aGl0ZTogI2ZmZjtcbiRibGFjazogIzAwMDtcbiRibGFjazE6ICMyMTI1Mjk7XG4kZ3JheTogI2M3YzdjNTtcbiRncmF5LWxpZ2h0OiAjZGRkO1xuJGdyYXktOTA6ICNlNWU1ZTU7XG4kbGlnaHQtYmx1ZTogI2VmZjJmNztcbiR0aGVtZS1mb250LWNvbG9yOiByZ2IoMzUsIDM1LCAzNSk7XG4kZGFyay1jb2xvcjogIzFkMWQxZDtcbiRmb250LWRhcms6IHJnYmEoJHRoZW1lLWZvbnQtY29sb3IsIDAuNjUpO1xuJGZvbnQtZGFyay0zMDogcmdiYSgkdGhlbWUtZm9udC1jb2xvciwgMSk7XG4kcmF0aW5nLWNvbG9yOiAjZmFjYzIxO1xuJGZvbnQtbGlnaHQ6ICM3ZTdlN2U7XG4kbGlnaHQtYnV0dG9uOiAjZmVmZWZlO1xuJGRlbW8xLWJnOiAjZjBmM2Y4O1xuJGJvcmRlci1jb2xvcjogI2NlZDRkYTtcbiRkYXJrc2lsdmVyOiAjNjk2OTY5O1xuJGxpZ2h0c2lsdmVyOiAjZjhmOGY4O1xuJHRoZW1lLWNvbG9yOiAjNzUyMGRkO1xuJHRoZW1lLWxpZ2h0LWNvbG9yOiAjZTNkZGY0O1xuJHJlZDogI2ZmMDAwMDtcbiR5ZWxsb3c6ICNmZmEyMDI7XG4kYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiRsaWdodC10ZXh0OiAjMzgzODM4OTk7XG4kZ3JlZW46ICMwMDljMDA7XG4kbGlnaHQtdGhlbWUtY29sb3I6ICNlZmYzZjc7XG4kcmVkLTQwOiByZ2JhKDI1NSwgMCwgMCwgMC40KTtcbiRkZW1vLWxpZ2h0LTI6ICNlZmRlZTc7XG4kZGVtby1saWdodC00OiAjZWFkZmQ1O1xuJGxpZ2h0LWRlbW8tNDogI2VhZWFlYTtcbiRkZW1vLWxpZ2h0LTU6ICNlZWUxZTY7XG4kbGlnaHQtZGVtby02OiAjZjBmOGYwO1xuJGxpZ2h0LWRlbW8tNzogI2YwZjdmMDtcbiRsaWdodC1yZWQtc2hhZGU6ICNlOWU5ZTk7XG4kYW1lcmljYW4tc2lsdmVyOiAjY2VjZWNlO1xuJHNoYWRlLWdyYXk6ICM3Nzc3Nzc7XG4kbmVybzogIzE5MTkxOTtcbiRkZW1vLTQ6ICNlODczMTY7XG4kdGhlbWUtY29sb3IxOiAjMDE2M2QyO1xuJGdyZWVuLWRhcms6ICMwZjUxMzI7XG4kZGFyay1ncmVlbjogIzBjNTQ2MDtcbiRsaWdodC1ncmVlbjogI2QxZTdkZDtcbiRhbWVyaWNhbi1ncmF5OiAjZDBkMGQwO1xuJGxpZ2h0LXllbGxvdzogI2ZjYmE3ZjtcbiRsaWdodC1ncmF5OiAjYzNjM2MzO1xuJHB1cnBsZTogIzczMWZkYTtcbiRjYW1vdWZsYWdlLWdyZWVuOiAjNzc3ODc2O1xuJGhhbGYtYmFrZWQ6ICM4NmI4Y2Y7XG4kbW9ub2Nocm9tYXRpYzogIzRiNzdhMDtcbiRzaWx2ZXI6ICNjMGMwYzA7XG4kZGFyay1zaWx2ZXI6ICNjYWNhY2E7XG4kZ3JheS01MDogI2ViZWJlYjtcbiRkb2RnZXItYmx1ZTogIzg4ZDFmNDtcbiRsaWdodC1yZWQ6I2UzNjI3YjtcbiRsaWdodC1wdXJwbGU6ICNhMDc2OGU7XG4kYnJpZ2h0LWdyYXk6ICNlZmVmZWY7XG4kZ2FpbnNib3JvOiAjZGVkZWRlO1xuJHF1aWNrLXNpbHZlcjogI2E1YTVhNTtcbiRsaWdodC1ncmF5aXNoLWJsdWU6ICM2Yzc1N2Q7XG4kZGFyay1ibHVlOiAjNDM2MDljO1xuJGJlcm11ZGEtZ3JleTogIzc4OTA5YztcbiRncmVlbi1kYXJrOiAjMDA4MDAwO1xuJHdoaXRlLWRhcms6ICNmMmY5ZmM7XG4kbGlnaHQtc2hhZGUtZ3JheTogI2Y5ZjlmOTtcbiRkYXJrLXNoYWRlLWdyYXk6ICNkMmQyZDI7XG4kd2hpc3BlcjogI2YxZTdlNjtcbiRzaWx2ZXItb3JpZ2luYWw6ICNiZmJmYmY7XG4kc2lsdmVyLXNhdHVyYXRlZDogI2FhYWFhYTtcbiRncmF5LXNhdHVyYXRlZDogIzkyOTI5MjtcbiRjaGluZXNlLXNpbHZlcjogI2M2YzljYztcbiRicmlnaHQtc2lsdmVyLTE6ICNlY2VjZWM7XG4kc2lsdmVyLWxpZ2h0OiAjYjViZWM3O1xuJGdyYXktZGFyazogIzdmN2Y3ZjtcbiRncmF5LWRhcmstMTogIzhmODM5NztcbiRjaGluZXNlLXNpbHZlci0xOiAjZTBlMGUwO1xuJGxpZ2h0LW9yYW5nZTogI2ZhYjFhMDtcbiRsaWdodC1ncmVlbi0xOiAjMTBhYzg0O1xuJHllbGxvdy1kYXJrOiAjZmY5ZjQzO1xuJGRhcmstc2hhZGUtc2lsdmVyOiAjODM5NWE3O1xuJGJsYWNrLW9saXZlOiAjM2QzZDNkO1xuXG4kb3JhbmdlMTogI2VjN2ExZjtcbiRwdXJwbGUtZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgtMjNkZWcsICM0OTBjOTIgMCUsICM3YjIzZTkgMTAwJSk7XG4kcmVkLWdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoMTYwZGVnLCAjYTExZDE5IDAlLCAjOWQxYzFlIDEwMCUpO1xuJGJsdWUtZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgxMTlkZWcsICMwMDc5ZGIgMCUsICMwMDEyNjUgMTAwJSk7XG4kdGhlbWUtY29sb3ItZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgxNjBkZWcsICNhMTFkMTkgMCUsICM5ZDFjMWUgMTAwJSk7XG4kcmVkLTUwOiByZ2JhKDI1NSwgMCwgMCwgMC4yKTtcbiRwaW5rMTogI2RmMGY4ODtcbiR2ZWcxOiAjNTE5ODNjO1xuXG4vLyBmb250IGZhbWlseVxuJGZvbnRfMDogUnViaWs7XG4kZm9udF8xOiBzYW5zLXNlcmlmO1xuXG4kbWluLWJyZWFrcG9pbnRzOiAobGc6IDk5MnB4LFxuICAgIHhsOiAxMjAwcHgsXG4gICAgMnhsOiAxMzY2cHgsXG4pO1xuXG4kbWF4LWJyZWFrcG9pbnRzOiAoMnhzOiAzNjBweCxcbiAgICB4czogNDgwcHgsXG4gICAgc206IDU3NXB4LFxuICAgIG1kOiA3NjdweCxcbiAgICBsZzogOTkxcHgsXG4gICAgeGw6IDExOTlweCxcbiAgICAyeGw6IDEzNjZweCxcbiAgICAzeGw6IDE0NjBweCxcbiAgICA0eGw6IDE2NjBweCxcbik7IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgY29tbW9uIG1peGlucyBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5cbi8qPT09PT09PSBwb3NpdGlvbiBjc3Mgc3RhcnRzICA9PT09PT09ICovXG5cbkBtaXhpbiBwb3MoJHBvczogYWJzb2x1dGUsICRjb250ZW50OiBcIlwiKSB7XG4gICAgY29udGVudDogJGNvbnRlbnQ7XG4gICAgcG9zaXRpb246ICRwb3M7XG59XG5cbkBtaXhpbiBwc2V1ZG93aCgkd2lkdGg6IDEwMCUsICRoZWlnaHQ6IDEwMCUpIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIGhlaWdodDogJGhlaWdodDtcbn1cblxuQG1peGluIGNlbnRlcigkcG9zaXRpb24pIHtcbiAgICBAaWYgJHBvc2l0aW9uPT1cInZlcnRpY2FsXCIge1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cblxuICAgIEBlbHNlIGlmICRwb3NpdGlvbj09XCJob3Jpem9udGFsXCIge1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG5cbiAgICBAZWxzZSBpZiAkcG9zaXRpb249PVwiYm90aFwiIHtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxufVxuXG4vKj09PT09PT0gcG9zaXRpb24gY3NzIGVuZHMgID09PT09PT0gKi9cblxuLyo9PT09PT09IGRpc3BsYXkgZmxleCBjc3Mgc3RhcnRzICA9PT09PT09ICovXG5AbWl4aW4gZmxleF9jb21tb24oJGRpczogZmxleCwgJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIpIHtcbiAgICBkaXNwbGF5OiAkZGlzO1xuICAgIGFsaWduLWl0ZW1zOiAkYWxpZ247XG4gICAganVzdGlmeS1jb250ZW50OiAkanVzdGlmeTtcbn1cblxuLyo9PT09PT09IGRpc3BsYXkgZmxleCBjc3MgZW5kcyAgPT09PT09PSAqL1xuXG4vKj09PT09PT0gRm9udC1jb2xvciBjc3Mgc3RhcnRzICA9PT09PT09ICovXG4kdGV4dC1uYW1lOiBkZWZhdWx0LFxuZGFyayxcbmxpZ2h0LFxuZGFyay0zMDtcbiR0eHQtY29sb3I6ICR0aGVtZS1mb250LWNvbG9yLFxuJGZvbnQtZGFyayxcbiRmb250LWxpZ2h0LFxuJGZvbnQtZGFyay0zMDtcblxuQGVhY2ggJHZhciBpbiAkdGV4dC1uYW1lIHtcbiAgICAkaTogaW5kZXgoJHRleHQtbmFtZSwgJHZhcik7XG5cbiAgICAuZm9udC0jeyR2YXJ9IHtcbiAgICAgICAgY29sb3I6IG50aCgkdHh0LWNvbG9yLCAkaSkgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8qPT09PT09PSBGb250LWNvbG9yIGNzcyBlbmQgID09PT09PT0gKi9cblxuLyo9PT09PT09IGJ1dHRvbnMgY3NzIHN0YXJ0cyAgPT09PT09PSAqL1xuQGVhY2ggJGJ0bi1uYW1lLFxuJGJ0bi1jb2xvciBpbiAoZGFyaywgJHRoZW1lLWZvbnQtY29sb3IpLFxuKGxpZ2h0LCAkbGlnaHQtYnV0dG9uKSxcbihkZWZhdWx0LCB2YXIoLS10aGVtZS1jb2xvcikpIHtcbiAgICAuYnRuLXNvbGlkLSN7JGJ0bi1uYW1lfSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYnRuLWNvbG9yO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRidG4tY29sb3I7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1mb250LWNvbG9yO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUsIDAuNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKCRidG4tbmFtZT09XCJsaWdodFwiKSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICY6YWN0aXZlLFxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qPT09PT09PSBidXR0b25zIGNzcyBlbmQgID09PT09PT0gKi9cblxuLyo9PT09PT09IGFsaWduIGNzcyBzdGFydHMgID09PT09PT0gKi9cbkBtaXhpbiBydGwoJHByb3BlcnR5LCAkbHRyLXZhbHVlLCAkcnRsLXZhbHVlKSB7XG4gICAgI3skcHJvcGVydHl9OiAkbHRyLXZhbHVlO1xuXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiAkcnRsLXZhbHVlO1xuICAgIH1cbn1cblxuLyo9PT09PT09IGFsaWduIGNzcyBlbmRzICA9PT09PT09ICovXG5cbi8vIHJlcGVhdGVkIGNzcyBtaXhpbnNcbkBtaXhpbiBiYWNrLWxpZ2h0IHtcbiAgICBAaW5jbHVkZSBwb3M7XG4gICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIG9wYWNpdHk6IDAuMTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgIHotaW5kZXg6IC0xO1xufVxuXG4vKj09PT09PT0gYnJlYWtwb2ludCBjc3MgZW5kcyAgPT09PT09PSAqLyIsIjpyb290IHtcbiAgLS10aGVtZS1jb2xvcjogIzAxNjNkMjsgfVxuXG4udGhlbWUtY29sb3IyIHtcbiAgLS10aGVtZS1jb2xvcjogI2UyMjQ1NDsgfVxuXG4udGhlbWUtY29sb3IzIHtcbiAgLS10aGVtZS1jb2xvcjogIzc1MjBkZDsgfVxuXG4udGhlbWUtY29sb3I0IHtcbiAgLS10aGVtZS1jb2xvcjogI2U4NzMxNjsgfVxuXG4udGhlbWUtY29sb3I1IHtcbiAgLS10aGVtZS1jb2xvcjogI2RmNDI0NjsgfVxuXG4udGhlbWUtY29sb3I2IHtcbiAgLS10aGVtZS1jb2xvcjogIzUxOTgzYzsgfVxuXG4udGV4dC1jb2xvciB7XG4gIGNvbG9yOiAjNmQ2ZDZkOyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIGNvbW1vbiBtaXhpbnMgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLyo9PT09PT09IHBvc2l0aW9uIGNzcyBzdGFydHMgID09PT09PT0gKi9cbi8qPT09PT09PSBwb3NpdGlvbiBjc3MgZW5kcyAgPT09PT09PSAqL1xuLyo9PT09PT09IGRpc3BsYXkgZmxleCBjc3Mgc3RhcnRzICA9PT09PT09ICovXG4vKj09PT09PT0gZGlzcGxheSBmbGV4IGNzcyBlbmRzICA9PT09PT09ICovXG4vKj09PT09PT0gRm9udC1jb2xvciBjc3Mgc3RhcnRzICA9PT09PT09ICovXG4uZm9udC1kZWZhdWx0IHtcbiAgY29sb3I6ICMyMzIzMjMgIWltcG9ydGFudDsgfVxuXG4uZm9udC1kYXJrIHtcbiAgY29sb3I6IHJnYmEoMzUsIDM1LCAzNSwgMC42NSkgIWltcG9ydGFudDsgfVxuXG4uZm9udC1saWdodCB7XG4gIGNvbG9yOiAjN2U3ZTdlICFpbXBvcnRhbnQ7IH1cblxuLmZvbnQtZGFyay0zMCB7XG4gIGNvbG9yOiAjMjMyMzIzICFpbXBvcnRhbnQ7IH1cblxuLyo9PT09PT09IEZvbnQtY29sb3IgY3NzIGVuZCAgPT09PT09PSAqL1xuLyo9PT09PT09IGJ1dHRvbnMgY3NzIHN0YXJ0cyAgPT09PT09PSAqL1xuLmJ0bi1zb2xpZC1kYXJrIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMjMyMzIzOyB9XG4gIC5idG4tc29saWQtZGFyazo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogLTE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIzMjMyMztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41czsgfVxuICAuYnRuLXNvbGlkLWRhcms6aG92ZXIge1xuICAgIGNvbG9yOiAjMjMyMzIzOyB9XG4gICAgLmJ0bi1zb2xpZC1kYXJrOmhvdmVyOjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41LCAwLjUpOyB9XG5cbi5idG4tc29saWQtbGlnaHQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZWZlZmU7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIC5idG4tc29saWQtbGlnaHQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7IH1cbiAgLmJ0bi1zb2xpZC1saWdodDpob3ZlciB7XG4gICAgY29sb3I6ICMyMzIzMjM7IH1cbiAgICAuYnRuLXNvbGlkLWxpZ2h0OmhvdmVyOjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41LCAwLjUpOyB9XG4gIC5idG4tc29saWQtbGlnaHQ6aG92ZXIsIC5idG4tc29saWQtbGlnaHQ6Zm9jdXMsIC5idG4tc29saWQtbGlnaHQ6YWN0aXZlLCAuYnRuLXNvbGlkLWxpZ2h0LmFjdGl2ZSB7XG4gICAgY29sb3I6ICMwMDA7IH1cblxuLmJ0bi1zb2xpZC1kZWZhdWx0IHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgLmJ0bi1zb2xpZC1kZWZhdWx0OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7IH1cbiAgLmJ0bi1zb2xpZC1kZWZhdWx0OmhvdmVyIHtcbiAgICBjb2xvcjogIzIzMjMyMzsgfVxuICAgIC5idG4tc29saWQtZGVmYXVsdDpob3Zlcjo6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSwgMC41KTsgfVxuXG4vKj09PT09PT0gYnV0dG9ucyBjc3MgZW5kICA9PT09PT09ICovXG4vKj09PT09PT0gYWxpZ24gY3NzIHN0YXJ0cyAgPT09PT09PSAqL1xuLyo9PT09PT09IGFsaWduIGNzcyBlbmRzICA9PT09PT09ICovXG4vKj09PT09PT0gYnJlYWtwb2ludCBjc3MgZW5kcyAgPT09PT09PSAqL1xuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgYnJlYWtwb2ludCBtaXhpbnMgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIHJlc2V0IGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbnNlY3Rpb24sXG4uc2VjdGlvbi10LXNwYWNlIHtcbiAgcGFkZGluZy10b3A6IDgwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDE0NjBweCkge1xuICAgIHNlY3Rpb24sXG4gICAgLnNlY3Rpb24tdC1zcGFjZSB7XG4gICAgICBwYWRkaW5nLXRvcDogNzBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICBzZWN0aW9uLFxuICAgIC5zZWN0aW9uLXQtc3BhY2Uge1xuICAgICAgcGFkZGluZy10b3A6IDYwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICBzZWN0aW9uLFxuICAgIC5zZWN0aW9uLXQtc3BhY2Uge1xuICAgICAgcGFkZGluZy10b3A6IDUwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBzZWN0aW9uLFxuICAgIC5zZWN0aW9uLXQtc3BhY2Uge1xuICAgICAgcGFkZGluZy10b3A6IDQwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICBzZWN0aW9uLFxuICAgIC5zZWN0aW9uLXQtc3BhY2Uge1xuICAgICAgcGFkZGluZy10b3A6IDMwcHg7IH0gfVxuXG4uc2VjdGlvbi1iLXNwYWNlIHtcbiAgcGFkZGluZy1ib3R0b206IDgwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDE0NjBweCkge1xuICAgIC5zZWN0aW9uLWItc3BhY2Uge1xuICAgICAgcGFkZGluZy1ib3R0b206IDcwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLnNlY3Rpb24tYi1zcGFjZSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5zZWN0aW9uLWItc3BhY2Uge1xuICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuc2VjdGlvbi1iLXNwYWNlIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLnNlY3Rpb24tYi1zcGFjZSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfSB9XG5cbi5tZWRpYSAubWVkaWEtYm9keSB7XG4gIGZsZXg6IDE7IH1cblxuLnJhdGluZyBsaSBpLm9yYW5nZSB7XG4gIGNvbG9yOiAjZmFjYzIxOyB9XG5cbi5nLTE4IHtcbiAgbWFyZ2luOiAtMThweDsgfVxuICAuZy0xOCA+IGRpdiB7XG4gICAgcGFkZGluZzogMThweDsgfVxuXG4uY3VzdG9tLWd5LTUge1xuICBtYXJnaW4tdG9wOiBjYWxjKC0xNnB4ICsgKC0yMCAtIC0xNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoLTE2cHggKyAoLTIwIC0gLTE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAuY3VzdG9tLWd5LTUgPiBkaXYge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMTZweCArICgyMCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDE2cHggKyAoMjAgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cblxuLmxpZ2h0LWdyYXktYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmN1c3RvbS1jb2wge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSArIDQuMTYlKTsgfSB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICB0eXBvZ3JhcGh5IGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbmJvZHkge1xuICBmb250LWZhbWlseTogUnViaWssIHNhbnMtc2VyaWY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogIzIzMjMyMztcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIGJvZHkgLmJnLW92ZXJsYXkge1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMztcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogMC41czsgfVxuICAgIGJvZHkgLmJnLW92ZXJsYXkuc2hvdyB7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgb3BhY2l0eTogMTsgfVxuXG51bCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5saSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxNHB4OyB9XG5cbnAge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4OyB9XG5cbmEge1xuICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogMC41cyBlYXNlOyB9XG4gIGE6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cblxuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG4uYnRuLWNsb3NlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG46Zm9jdXMge1xuICBvdXRsaW5lOiBub25lOyB9XG5cbi5mb3JtLWNvbnRyb2wge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIC5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuaDEge1xuICBmb250LXNpemU6IGNhbGMoNDBweCArICg3MCAtIDQwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIG1hcmdpbjogMDsgfVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogY2FsYygyMnB4ICsgKDI4IC0gMjIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIG1hcmdpbjogMDsgfVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDIwIC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW46IDA7IH1cblxuaDQge1xuICBmb250LXNpemU6IGNhbGMoMTdweCArICgxOCAtIDE3KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbWFyZ2luOiAwO1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbmg1IHtcbiAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTYgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbjogMDtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG5oNiB7XG4gIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE0IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4udGhlbWUtY29sb3Ige1xuICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpICFpbXBvcnRhbnQ7IH1cblxuLnRoZW1lLWJnLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBidXR0b25zIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IGNhbGMoOHB4ICsgKDE0IC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBmb250LXdlaWdodDogNjAwO1xuICB6LWluZGV4OiAxO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogY2FsYygxMnB4ICsgKDEzIC0gMTIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAuYnRuLXN1Ym1pdCB7XG4gICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTYgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ0bi1zdWJtaXQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLmJ0bi1zaXplIHtcbiAgICBmb250LXNpemU6IDEycHg7IH1cbiAgLmJ0bjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAuYnRuLXNwYWNpbmcge1xuICAgIHBhZGRpbmc6IGNhbGMoNXB4ICsgKDE0IC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYyg4cHggKyAoMzAgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuXG4uYnRuLXNtIHtcbiAgcGFkZGluZzogOHB4IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuLmRlZmF1bHQtd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5kZWZhdWx0LWxpZ2h0IHtcbiAgY29sb3I6ICNmOGY4Zjg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IGNhbGMoNnB4ICsgKDE0IC0gNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBmb250LXdlaWdodDogODAwOyB9XG4gIC5kZWZhdWx0LWxpZ2h0OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgb3BhY2l0eTogMC4xNTsgfVxuXG4uZGVmYXVsdC1saWdodDEge1xuICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICAuZGVmYXVsdC1saWdodDE6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICBvcGFjaXR5OiAwLjExO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzOyB9XG4gIC5kZWZhdWx0LWxpZ2h0MTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgei1pbmRleDogLTE7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7IH1cbiAgLmRlZmF1bHQtbGlnaHQxOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gICAgLmRlZmF1bHQtbGlnaHQxOmhvdmVyOjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41LCAwLjUpOyB9XG4gICAgLmRlZmF1bHQtbGlnaHQxOmhvdmVyOjphZnRlciB7XG4gICAgICBvcGFjaXR5OiAwLjExOyB9XG5cbi5kZWZhdWx0LWxpZ2h0LXRoZW1lIHtcbiAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgcGFkZGluZzogY2FsYyg2cHggKyAoMTQgLSA2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgLmRlZmF1bHQtbGlnaHQtdGhlbWU6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cblxuLmRlZmF1bHQtdGhlbWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIC5kZWZhdWx0LXRoZW1lOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG4uZGVmYXVsdC10aGVtZS0yIHtcbiAgcGFkZGluZzogMTJweCAyNXB4O1xuICBmb250LXNpemU6IDE1cHg7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbi5kZWZhdWx0LXRoZW1lLTEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0MCwgMjQ3LCAyNDAsIDAuNik7XG4gIHRyYW5zZm9ybTogc2NhbGUoMTAwJSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAuZGVmYXVsdC10aGVtZS0xOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxMDAlKTsgfVxuXG4uZGVmYXVsdDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAtMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICBvcGFjaXR5OiAwLjExO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41czsgfVxuXG4uZGVmYXVsdDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB6LWluZGV4OiAtMTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41czsgfVxuXG4uZGVmYXVsdDpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgLmRlZmF1bHQ6aG92ZXI6OmJlZm9yZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSwgMC41KTsgfVxuICAuZGVmYXVsdDpob3Zlcjo6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDAuMTE7IH1cblxuLmJ0bi1saWdodC13aGl0ZSB7XG4gIHBhZGRpbmc6IDZweCAyMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTsgfVxuICAuYnRuLWxpZ2h0LXdoaXRlIGkge1xuICAgIGZvbnQtc2l6ZTogMTJweDsgfVxuICAuYnRuLWxpZ2h0LXdoaXRlOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7IH1cbiAgLmJ0bi1saWdodC13aGl0ZTpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnRuLWxpZ2h0LXdoaXRlOmhvdmVyOjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41LCAwLjUpOyB9XG5cbi5idG4td2hpdGUge1xuICBwYWRkaW5nOiA2cHggMjBweDtcbiAgY29sb3I6ICMyMzIzMjM7XG4gIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZmOyB9XG4gIC5idG4td2hpdGUgaSB7XG4gICAgZm9udC1zaXplOiAxMnB4OyB9XG4gIC5idG4td2hpdGU6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7IH1cbiAgLmJ0bi13aGl0ZTpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnRuLXdoaXRlOmhvdmVyOjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41LCAwLjUpOyB9XG5cbi5idG4tZnVsbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiA1cHg7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGFsZXJ0IGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5hbGVydC1pbmZvIC5idG4tY2xvc2Uge1xuICBmb250LXNpemU6IDEwcHg7IH1cblxuLnByb2dyZXNzLWJhci1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBjNTQ2MDsgfVxuXG5bZGF0YS1ub3RpZnk9XCJwcm9ncmVzc2JhclwiXSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1cHg7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgbGFiZWwgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmxhYmVsIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBwYWRkaW5nOiA2cHggMTBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAubGFiZWwge1xuICAgICAgcGFkZGluZzogNHB4IDZweDtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDsgfSB9XG4gIC5sYWJlbC1ibG9jayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMTsgfVxuICAubGFiZWwtZGFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgfVxuICAubGFiZWwtYmxhY2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5sYWJlbC1ibGFjayB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmxhYmVsLXRoZW1lIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIHRhYiBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4udGFiLXdyYXAgLm5hdi10YWJzIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZjBmM2Y4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC50YWItd3JhcCAubmF2LXRhYnMge1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGZsZXgtd3JhcDogaW5oZXJpdDtcbiAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH0gfVxuICAudGFiLXdyYXAgLm5hdi10YWJzIC5uYXYtbGluayB7XG4gICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTYgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICM3ZTdlN2U7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBwYWRkaW5nOiAwIDIwcHggMjBweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAudGFiLXdyYXAgLm5hdi10YWJzIC5uYXYtbGluayB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweCAxNXB4OyB9IH1cbiAgICAudGFiLXdyYXAgLm5hdi10YWJzIC5uYXYtbGluazpob3ZlciwgLnRhYi13cmFwIC5uYXYtdGFicyAubmF2LWxpbms6YWN0aXZlLCAudGFiLXdyYXAgLm5hdi10YWJzIC5uYXYtbGluazpmb2N1cyB7XG4gICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAudGFiLXdyYXAgLm5hdi10YWJzIC5uYXYtbGluay5hY3RpdmUsIC50YWItd3JhcCAubmF2LXRhYnMgLm5hdi1saW5rOmFjdGl2ZSB7XG4gICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cblxuLnRhYi13cmFwIC50YWItY29udGVudCB7XG4gIG1hcmdpbi10b3A6IDMwcHg7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGRyb3Bkb3duIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5vbmhvdmVyLWRpdiB7XG4gIHRvcDogNzBweDtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC4zcztcbiAgbWluLXdpZHRoOiAyODBweDtcbiAgYm94LXNoYWRvdzogMy4zNDZweCAzLjcxNnB4IDIyLjVweCByZ2JhKDAsIDAsIDAsIDAuMDcpOyB9XG4gIC5vbmhvdmVyLWRpdiBsaSB7XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgLm9uaG92ZXItZGl2IGxpIGEgc3ZnIHtcbiAgICAgIGNvbG9yOiAjMjMyMzIzOyB9XG4gIC5vbmhvdmVyLWRpdjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiA3cHggc29saWQgI2ZmZjtcbiAgICB0b3A6IC03cHg7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgei1pbmRleDogMjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLm9uaG92ZXItZGl2OjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgbGVmdDogMTBweDsgfVxuXG4ub25ob3Zlci1kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5vbmhvdmVyLWRyb3Bkb3duOmhvdmVyIC5vbmhvdmVyLWRpdiB7XG4gICAgdG9wOiA1MHB4O1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLm9uaG92ZXItZHJvcGRvd246aG92ZXIgLm9uaG92ZXItZGl2IHtcbiAgICAgICAgd2lkdGg6IDMyMHB4OyB9IH1cbiAgLm9uaG92ZXItZHJvcGRvd24uY2FydC1kcm9wZG93biBidXR0b24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5vbmhvdmVyLWRyb3Bkb3duLmNhcnQtZHJvcGRvd24gYnV0dG9uIC5mZWF0aGVyIHtcbiAgICAgIHdpZHRoOiAyM3B4ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDIycHg7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLm9uaG92ZXItZHJvcGRvd24uY2FydC1kcm9wZG93biBidXR0b24gLmZlYXRoZXIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHVuc2V0O1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgIC5vbmhvdmVyLWRyb3Bkb3duLmNhcnQtZHJvcGRvd24gYnV0dG9uIC5mZWF0aGVyIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5vbmhvdmVyLWRyb3Bkb3duLmNhcnQtZHJvcGRvd24gYnV0dG9uIC5mZWF0aGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG4gICAgLm9uaG92ZXItZHJvcGRvd24uY2FydC1kcm9wZG93biBidXR0b24gc3BhbiB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNiAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgdGltZXIgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnRpbWVyIHVsIHtcbiAgcGFkZGluZzogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNSwgMzUsIDM1LCAwLjgpO1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7IH1cbiAgW2Rpcj1cInJ0bFwiXSAudGltZXIgdWwge1xuICAgIHBhZGRpbmc6IDIwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgIC50aW1lciB1bCB7XG4gICAgICBwYWRkaW5nOiAxNXB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLnRpbWVyIHVsIHtcbiAgICAgIHBhZGRpbmc6IDEwcHg7IH0gfVxuICAudGltZXIgdWwgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC50aW1lciB1bCBsaSBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogM3B4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAudGltZXIgdWwgbGkge1xuICAgICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLnRpbWVyIHVsIGxpIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4OyB9IH1cbiAgICAudGltZXIgdWwgbGkgKyBsaSB7XG4gICAgICBtYXJnaW4tbGVmdDogMzBweDsgfVxuICAgICAgLnRpbWVyIHVsIGxpICsgbGk6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgbGVmdDogLTE3cHg7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgxMjYsIDEyNiwgMTI2LCAwLjQpO1xuICAgICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC50aW1lciB1bCBsaSArIGxpOjpiZWZvcmUge1xuICAgICAgICAgIHJpZ2h0OiAtMTdweDtcbiAgICAgICAgICBsZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMTI2LCAxMjYsIDEyNiwgMC40KTtcbiAgICAgICAgICBib3JkZXItbGVmdDogdW5zZXQ7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgICAgICAgIC50aW1lciB1bCBsaSArIGxpOjpiZWZvcmUge1xuICAgICAgICAgICAgbGVmdDogLTEycHg7IH1cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gLnRpbWVyIHVsIGxpICsgbGk6OmJlZm9yZSB7XG4gICAgICAgICAgICAgIHJpZ2h0OiAtMTJweDsgfSB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAgIC50aW1lciB1bCBsaSArIGxpOjpiZWZvcmUge1xuICAgICAgICAgICAgbGVmdDogLTVweDsgfVxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAudGltZXIgdWwgbGkgKyBsaTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgcmlnaHQ6IC01cHg7IH0gfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAudGltZXIgdWwgbGkgKyBsaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMzY2cHgpIHtcbiAgICAgICAgLnRpbWVyIHVsIGxpICsgbGkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAudGltZXIgdWwgbGkgKyBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC50aW1lciB1bCBsaSArIGxpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNnB4OyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAudGltZXIgdWwgbGkgKyBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDZweDsgfSB9XG5cbi50aW1lci1zdHlsZS0yIHVsIHtcbiAgbWFyZ2luOiBjYWxjKC01cHggKyAoLTE1IC0gLTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC50aW1lci1zdHlsZS0yIHVsIGxpIHtcbiAgICBtYXJnaW46IGNhbGMoNXB4ICsgKDE1IC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nOiBjYWxjKDhweCArICgxMCAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTJweCArICgyMCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAudGltZXItc3R5bGUtMiB1bCBsaSBoMiB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMThweCArICgyOCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC50aW1lci1zdHlsZS0yIHVsIGxpIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgIC50aW1lci1zdHlsZS0yIHVsIGxpIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgIC50aW1lci1zdHlsZS0yIHVsIGxpIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4OyB9IH1cblxuLnRpbWVyLXN0eWxlLTMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIzMiwgMTE1LCAyMiwgMC44KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDJweCk7XG4gIHdpZHRoOiA4MCU7IH1cbiAgLnRpbWVyLXN0eWxlLTMgdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAudGltZXItc3R5bGUtMyB1bCBsaSB7XG4gICAgICBtYXJnaW46IGNhbGMoNXB4ICsgKDUgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDVweCArICg1IC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYyg1cHggKyAoNSAtIDUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIDA7XG4gICAgICBwYWRkaW5nOiBjYWxjKDhweCArICgxMCAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTJweCArICgyMCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAgIC50aW1lci1zdHlsZS0zIHVsIGxpICsgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgLnRpbWVyLXN0eWxlLTMgdWwgbGkgKyBsaTo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgIGhlaWdodDogNTAlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgICBsZWZ0OiAwJTsgfVxuICAgICAgLnRpbWVyLXN0eWxlLTMgdWwgbGk6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAudGltZXItc3R5bGUtMyB1bCBsaSBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygxOHB4ICsgKDI4IC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgICAudGltZXItc3R5bGUtMyB1bCBsaSBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC50aW1lci1zdHlsZS0zIHVsIGxpIHtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC50aW1lci1zdHlsZS0zIHVsIGxpIGg1IHtcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7IH0gfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgdGl0bGUgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygyMHB4ICsgKDUwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC50aXRsZS50aXRsZTEgaDIge1xuICAgIGZvbnQtc2l6ZTogY2FsYygyMnB4ICsgKDM1IC0gMjIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1ib3R0b206IDE2cHg7IH1cbiAgICAudGl0bGUudGl0bGUxIGgyOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgYm90dG9tOiAxLjVweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkOyB9XG4gICAgLnRpdGxlLnRpdGxlMSBoMjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgd2lkdGg6IDMwJTtcbiAgICAgIGhlaWdodDogNHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTBweDsgfVxuICAudGl0bGUudGl0bGUxIHAge1xuICAgIG1hcmdpbjogMjBweCBhdXRvIDA7XG4gICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICB3aWR0aDogNTAlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cbiAgLnRpdGxlLnRpdGxlLWVmZmVjdCBoMjo6YWZ0ZXIge1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG4gIC50aXRsZS50aXRsZS0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDAgMTVweDsgfVxuICAudGl0bGUgaDUge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICBjb2xvcjogIzdlN2U3ZTsgfVxuXG4udGl0bGUtMiB7XG4gIGNvbG9yOiAjMjEyNTI5OyB9XG4gIC50aXRsZS0yIGgyIHtcbiAgICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gIC50aXRsZS0yIGgzIHtcbiAgICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gIC50aXRsZS0yIGg1IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgY29sb3I6ICM3ZTdlN2U7IH1cblxuLnRpdGxlLTMge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKDIwcHggKyAoNTAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgLnRpdGxlLTMudGl0bGUtYm9yZGVyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YwZjNmODsgfVxuICAudGl0bGUtMyBoMiB7XG4gICAgbWFyZ2luLXRvcDogLTJweDsgfVxuICAudGl0bGUtMyBoNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbi5ncmFkaWVudC10aXRsZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMDBkZWcsICMzZDNkM2QsIHZhcigtLXRoZW1lLWNvbG9yKSk7XG4gIGJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmdyYWRpZW50LXRpdGxlLTEge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMDBkZWcsIHdoaXRlLCB2YXIoLS10aGVtZS1jb2xvcikpOyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBUYXAgdG8gdG9wIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi50YXAtdG8tdG9wIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMTVweDtcbiAgcmlnaHQ6IC02MHB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiBjYWxjKDM1cHggKyAoNDUgLSAzNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gIGhlaWdodDogY2FsYygzNXB4ICsgKDQ1IC0gMzUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTggLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gIGJveC1zaGFkb3c6IDAgM3B4IDhweCByZ2JhKDMzLCAzNywgNDEsIDAuMzUpO1xuICB6LWluZGV4OiAzO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDA7IH1cbiAgW2Rpcj1cInJ0bFwiXSAudGFwLXRvLXRvcCB7XG4gICAgcmlnaHQ6IHVuc2V0O1xuICAgIGxlZnQ6IC02MHB4OyB9XG4gIC50YXAtdG8tdG9wOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kOiAjMjEyNTI5O1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0cmFuc2l0aW9uOiAwLjVzOyB9XG4gIC50YXAtdG8tdG9wOmhvdmVyOjpiZWZvcmUge1xuICAgIGhlaWdodDogMTAwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAudGFwLXRvLXRvcCB7XG4gICAgICBib3R0b206IDc1cHg7IH0gfVxuICAudGFwLXRvLXRvcC5zaG93IHtcbiAgICByaWdodDogMTVweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgICBbZGlyPVwicnRsXCJdIC50YXAtdG8tdG9wLnNob3cge1xuICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgbGVmdDogMTVweDsgfVxuICAudGFwLXRvLXRvcCBhIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB3aWR0aDogY2FsYygzNXB4ICsgKDQwIC0gMzUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGhlaWdodDogY2FsYygzNXB4ICsgKDQwIC0gMzUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxOCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICB6LWluZGV4OiAzOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAudGFwLXRvLXRvcCBhIHtcbiAgICAgICAgYm90dG9tOiA3NXB4OyB9IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgTW9kYWwgY3NzIFN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLm5ld2xldHRlci1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIC5uZXdsZXR0ZXItbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gICAgLm5ld2xldHRlci1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZSB7XG4gICAgICB3aWR0aDogNTRweDtcbiAgICAgIGhlaWdodDogNTRweDtcbiAgICAgIHRvcDogLTUwcHg7XG4gICAgICByaWdodDogLTUwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNTRweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZDogMCAwO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgIC5uZXdsZXR0ZXItbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgICAgICAgIHJpZ2h0OiAtMTRweDsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLm5ld2xldHRlci1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZSB7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBsZWZ0OiAtMTRweDsgfSB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5uZXdsZXR0ZXItbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgIGxlZnQ6IC01MHB4OyB9XG4gICAgICAubmV3bGV0dGVyLW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4OyB9XG4gIC5uZXdsZXR0ZXItbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSB7XG4gICAgcGFkZGluZzogY2FsYygyMHB4ICsgKDQwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICAubmV3bGV0dGVyLW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgaW1nIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTE1cHg7XG4gICAgICByaWdodDogLTI1cHg7XG4gICAgICB3aWR0aDogMTQwcHg7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyMGRlZyk7XG4gICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxKTtcbiAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgIGJveC1zaGFkb3c6IDAgN3B4IDExcHggcmdiYSgzMywgMzcsIDQxLCAwLjUpO1xuICAgICAgei1pbmRleDogLTE7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLm5ld2xldHRlci1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IGltZyB7XG4gICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgbGVmdDogLTI1cHg7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0yMGRlZyk7IH1cbiAgICAubmV3bGV0dGVyLW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLm1vZGFsLXRpdGxlIGgyIHtcbiAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7IH1cbiAgICAubmV3bGV0dGVyLW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLm1vZGFsLXRpdGxlIHVsIHtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAxNXB4OyB9XG4gICAgICAubmV3bGV0dGVyLW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLm1vZGFsLXRpdGxlIHVsIGxpIHtcbiAgICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgICAgICBjb2xvcjogIzdlN2U3ZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNzsgfVxuICAgICAgICAubmV3bGV0dGVyLW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLm1vZGFsLXRpdGxlIHVsIGxpOjptYXJrZXIge1xuICAgICAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG5cbi52aWRlby1wbGF5LW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lOyB9XG4gIC52aWRlby1wbGF5LW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAudmlkZW8tcGxheS1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IGlmcmFtZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogNTUwcHg7IH1cblxuLmNvbXBhcmVtb2RhbC1ib2R5IC50YWJsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7IH1cbiAgLmNvbXBhcmVtb2RhbC1ib2R5IC50YWJsZS50YWJsZS1zdHJpcGVkLTEgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmNvbXBhcmVtb2RhbC1ib2R5IC50YWJsZS50YWJsZS1zdHJpcGVkLTEgdGJvZHkgdHI6bnRoLW9mLXR5cGUoZXZlbikge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7IH1cbiAgLmNvbXBhcmVtb2RhbC1ib2R5IC50YWJsZSBhIHtcbiAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAuY29tcGFyZW1vZGFsLWJvZHkgLnRhYmxlIHRyLnRhYmxlLXByb2R1Y3QtZGV0YWlscyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG4gIC5jb21wYXJlbW9kYWwtYm9keSAudGFibGUgdHIudGFibGUtY2FydC1idXR0b24gdGQge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICAuY29tcGFyZW1vZGFsLWJvZHkgLnRhYmxlIHRyLnRhYmxlLWNhcnQtYnV0dG9uIGEuYnRuIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBwYWRkaW5nOiA2cHggMTZweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuICAgIC5jb21wYXJlbW9kYWwtYm9keSAudGFibGUgdHIudGFibGUtY2FydC1idXR0b24gYS5idG46aG92ZXIge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLmNvbXBhcmVtb2RhbC1ib2R5IC50YWJsZSB0ciB0ZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2VkNGRhO1xuICAgIHBhZGRpbmc6IDE0cHg7XG4gICAgbWluLXdpZHRoOiAyMzBweDtcbiAgICB3aWR0aDogMDtcbiAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgIC5jb21wYXJlbW9kYWwtYm9keSAudGFibGUgdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgbWluLXdpZHRoOiAyNzBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5jb21wYXJlbW9kYWwtYm9keSAudGFibGUgdWwubGlzdC1kZXRhaWwge1xuICAgIHBhZGRpbmctbGVmdDogMjJweDsgfVxuICAgIC5jb21wYXJlbW9kYWwtYm9keSAudGFibGUgdWwubGlzdC1kZXRhaWwgbGkge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgY29sb3I6ICM3Nzc3Nzc7XG4gICAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IHNxdWFyZTsgfVxuXG4uY29tcGFyZW1vZGFsLWJvZHkgLnByb2R1Y3QtYm94IC5idG4tY2xvc2Uge1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxOyB9XG5cbi5jb21wYXJlbW9kYWwtYm9keSAucHJvZHVjdC1ib3ggLnByb2R1Y3QtaW1hZ2Uge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmNvbXBhcmVtb2RhbC1ib2R5IC5wcm9kdWN0LWJveCAucHJvZHVjdC1pbWFnZSBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuXG4ubW9kYWwtaGVhZGVyIHtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZSB7XG4gICAgd2lkdGg6IDU0cHg7XG4gICAgaGVpZ2h0OiA1NHB4O1xuICAgIHRvcDogLTUwcHg7XG4gICAgcmlnaHQ6IC01MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA1NHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6IDAgMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICBvcGFjaXR5OiAxOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgICAgICByaWdodDogLTE0cHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICBsZWZ0OiAtMTRweDsgfSB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgbGVmdDogLTUwcHg7IH1cbiAgICAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2U6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgZm9udC1zaXplOiAyMnB4OyB9XG5cbi5zaGlwcGluZy1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IHtcbiAgcGFkZGluZzogY2FsYygxNXB4ICsgKDQwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5zaGlwcGluZy1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC10aXRsZSBoNiB7XG4gICAgY29sb3I6ICMxOTE5MTk7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogNnB4OyB9XG4gIC5zaGlwcGluZy1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC10aXRsZSB1bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAxNXB4OyB9XG4gICAgLnNoaXBwaW5nLW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLm1vZGFsLXRpdGxlIHVsIGxpIHtcbiAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICAgIGNvbG9yOiAjN2U3ZTdlO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNzsgfVxuICAgICAgLnNoaXBwaW5nLW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLm1vZGFsLXRpdGxlIHVsIGxpOjptYXJrZXIge1xuICAgICAgICBjb2xvcjogIzIxMjUyOTsgfVxuXG4uY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIge1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgIHdpZHRoOiA1NHB4O1xuICAgIGhlaWdodDogNTRweDtcbiAgICB0b3A6IC01MHB4O1xuICAgIHJpZ2h0OiAtNTBweDtcbiAgICBsaW5lLWhlaWdodDogNTRweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kOiAwIDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4gICAgb3BhY2l0eTogMTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgICAgICByaWdodDogLTE0cHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZSB7XG4gICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgIGxlZnQ6IC0xNHB4OyB9IH1cbiAgICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGYwMGRcIjtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICBmb250LXNpemU6IDIycHg7IH1cblxuLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSB7XG4gIHBhZGRpbmc6IGNhbGMoMTVweCArICg0MCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC1tZXNzYWdlcyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjMDA4MDAwO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgYmFja2dyb3VuZDogI2QxZTdkZDtcbiAgICBwYWRkaW5nOiAxMnB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5jYXJ0LW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLm1vZGFsLW1lc3NhZ2VzIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIC5jYXJ0LW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLm1vZGFsLW1lc3NhZ2VzIC5mYS1jaGVjayB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICB3aWR0aDogMjVweDtcbiAgICAgIGhlaWdodDogMjVweDtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDgwMDA7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC1tZXNzYWdlcyAuZmEtY2hlY2sge1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDEycHg7IH0gfVxuICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC1wcm9kdWN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5jYXJ0LW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLm1vZGFsLXByb2R1Y3Qge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5jYXJ0LW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLm1vZGFsLXByb2R1Y3QgLm1vZGFsLWNvbnRhaW4taW1nIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDEwcHggKyAoMTggLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH0gfVxuICAgIC5jYXJ0LW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLm1vZGFsLXByb2R1Y3QgLm1vZGFsLWNvbnRhaW4tZGV0YWlscyB7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgIC5jYXJ0LW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLm1vZGFsLXByb2R1Y3QgLm1vZGFsLWNvbnRhaW4tZGV0YWlscyB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cbiAgICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC1wcm9kdWN0IGg1IHtcbiAgICAgIG1hcmdpbjogNXB4IDA7IH1cbiAgICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC1wcm9kdWN0IC5tb2RhbC1jb250YWluLWltZyBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDIyMHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC1wcm9kdWN0IC5tb2RhbC1jb250YWluLWltZyBpbWcge1xuICAgICAgICAgIG1heC13aWR0aDogNjAlOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC1wcm9kdWN0IC5tb2RhbC1jb250YWluLWltZyBpbWcge1xuICAgICAgICAgIG1heC13aWR0aDogNzUlOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgICAgICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5tb2RhbC1wcm9kdWN0IC5tb2RhbC1jb250YWluLWltZyBpbWcge1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG4gIC5jYXJ0LW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLnByb2R1Y3QtdG90YWwgaDUge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5wcm9kdWN0LXRvdGFsIGg1IHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5zaG9wLWNhcnQtYnV0dG9uIHtcbiAgICBtYXJnaW46IC04cHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgIC5jYXJ0LW1vZGFsIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLnNob3AtY2FydC1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG4gICAgLmNhcnQtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAuc2hvcC1jYXJ0LWJ1dHRvbiAuY29udGktYnV0dG9uIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgbWFyZ2luOiBjYWxjKDNweCArICg4IC0gMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBwYWRkaW5nOiBjYWxjKDZweCArICgxMiAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTBweCArICgyNSAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE1IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgICAuY2FydC1tb2RhbCAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5zaG9wLWNhcnQtYnV0dG9uIC5jb250aS1idXR0b246aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG5cbi5tb2RhbC1zaXplIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciB7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLm1vZGFsLXNpemUgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIGJ1dHRvbiB7XG4gICAgd2lkdGg6IDU0cHg7XG4gICAgaGVpZ2h0OiA1NHB4O1xuICAgIHRvcDogLTUwcHg7XG4gICAgcmlnaHQ6IC01MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA1NHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6IDAgMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICBvcGFjaXR5OiAxOyB9XG4gICAgLm1vZGFsLXNpemUgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIGJ1dHRvbiAuZmEtdGltZXMge1xuICAgICAgZm9udC1zaXplOiAyMnB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAubW9kYWwtc2l6ZSAubW9kYWwtZGlhbG9nIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIgYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5xdWljay12aWV3LW1vZGFsIC5idG4tY2xvc2Uge1xuICB3aWR0aDogNTRweDtcbiAgaGVpZ2h0OiA1NHB4O1xuICB0b3A6IC01MHB4O1xuICByaWdodDogLTUwcHg7XG4gIGxpbmUtaGVpZ2h0OiA1NHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogMCAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xuICBvcGFjaXR5OiAxOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5xdWljay12aWV3LW1vZGFsIC5idG4tY2xvc2Uge1xuICAgICAgcmlnaHQ6IC0xNHB4OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5xdWljay12aWV3LW1vZGFsIC5idG4tY2xvc2Uge1xuICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgIGxlZnQ6IC0xNHB4OyB9IH1cbiAgLnF1aWNrLXZpZXctbW9kYWwgLmJ0bi1jbG9zZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgZm9udC1zaXplOiAyMnB4OyB9XG5cbi5xdWljay12aWV3LW1vZGFsIC5tb2RhbC1ib2R5IHtcbiAgcGFkZGluZzogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG5cbi5xdWljay12aWV3LW1vZGFsIC5xdWljay12aWV3LWltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5xdWljay12aWV3LW1vZGFsIC5xdWljay12aWV3LWltYWdlIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC5xdWljay12aWV3LW1vZGFsIC5xdWljay12aWV3LWltYWdlIGltZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDQwMHB4O1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjsgfSB9XG4gIC5xdWljay12aWV3LW1vZGFsIC5xdWljay12aWV3LWltYWdlIC5xdWljay1uYXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDIwcHg7XG4gICAgbGVmdDogMjBweDsgfVxuICAgIC5xdWljay12aWV3LW1vZGFsIC5xdWljay12aWV3LWltYWdlIC5xdWljay1uYXYgLnNsaWNrLXNsaWRlID4gZGl2IGltZyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuICAgIC5xdWljay12aWV3LW1vZGFsIC5xdWljay12aWV3LWltYWdlIC5xdWljay1uYXYgLnNsaWNrLXNsaWRlLnNsaWNrLWN1cnJlbnQgPiBkaXYgaW1nIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuXG4ucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodC52ZWctcHJvZHVjdC1yaWdodCBoMiB7XG4gIGZvbnQtc2l6ZTogMjZweDsgfVxuXG4ucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodC52ZWctcHJvZHVjdC1yaWdodCAucHJvZHVjdC1kZXRhaWxzIHtcbiAgbWFyZ2luLXRvcDogMTBweDsgfVxuXG4ucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodC52ZWctcHJvZHVjdC1yaWdodCAucHJvZHVjdC1idG5zIGEge1xuICBmb250LXNpemU6IDE0cHg7IH1cblxuLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQudmVnLXByb2R1Y3QtcmlnaHQgLnByaWNlIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQudmVnLXByb2R1Y3QtcmlnaHQgLnByaWNlIGxpIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0LnZlZy1wcm9kdWN0LXJpZ2h0IC5wcmljZSBsaSAuY3VzdG9tZS1mb3JtLWNoZWNrIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMTVweCA4cHggMTVweCAzMHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2QwZDBkMDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgYm94LXNoYWRvdzogMCA0cHggMTBweCByZ2JhKDMzLCAzNywgNDEsIDAuMSk7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3OyB9XG5cbi5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0LnZlZy1wcm9kdWN0LXJpZ2h0IC52ZWctZGV0YWlscyB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIHBhZGRpbmc6IDIwcHggMDtcbiAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAjY2VkNGRhOyB9XG4gIC5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0LnZlZy1wcm9kdWN0LXJpZ2h0IC52ZWctZGV0YWlscyBwIHtcbiAgICBsaW5lLWhlaWdodDogMS43OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0LnZlZy1wcm9kdWN0LXJpZ2h0IC52ZWctZGV0YWlscyB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQudmVnLXByb2R1Y3QtcmlnaHQgLnZlZy1kZXRhaWxzIHtcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICBwYWRkaW5nOiAxNXB4IDA7IH0gfVxuXG4ucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodCBoMiB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQgaDYge1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbi5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0IGg0IHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cblxuLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQgLnByaWNlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodCAucHJpY2UgaDMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0IC5wcmljZSBoMyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuXG4ucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodCAuY29sb3ItdHlwZXMge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBwYWRkaW5nOiAyMHB4IDA7XG4gIGJvcmRlci10b3A6IDFweCBkYXNoZWQgI2NlZDRkYTsgfVxuICAucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodCAuY29sb3ItdHlwZXMudmVnLWRldGFpbHMgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNzsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodCAuY29sb3ItdHlwZXMge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0IC5jb2xvci10eXBlcyB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgcGFkZGluZzogMTVweCAwOyB9IH1cblxuLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQgLnNpemUtZGV0YWlsIHtcbiAgcGFkZGluZzogMjBweCAwO1xuICBib3JkZXItdG9wOiAxcHggZGFzaGVkICNjZWQ0ZGE7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQgLnNpemUtZGV0YWlsIHtcbiAgICAgIHBhZGRpbmc6IDE1cHggMDsgfSB9XG4gIC5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0IC5zaXplLWRldGFpbCB1bCB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAgIC5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0IC5zaXplLWRldGFpbCB1bCBsaSB7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodCAuc2l6ZS1kZXRhaWwgdWwgbGkuc2VsZWN0ZWQge1xuICAgICAgICBib3gtc2hhZG93OiAwIDJweCA3cHggcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG4gICAgICAucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodCAuc2l6ZS1kZXRhaWwgdWwgbGkgKyBsaSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG5cbi5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0IC5wcm9kdWN0LWRldGFpbHMge1xuICBwYWRkaW5nOiAyMHB4IDA7XG4gIGJvcmRlci10b3A6IDFweCBkYXNoZWQgI2NlZDRkYTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjY2VkNGRhOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5xdWljay12aWV3LW1vZGFsIC5wcm9kdWN0LXJpZ2h0IC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgcGFkZGluZzogMTVweCAwOyB9IH1cbiAgLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQgLnByb2R1Y3QtZGV0YWlscyB1bCBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAucXVpY2stdmlldy1tb2RhbCAucHJvZHVjdC1yaWdodCAucHJvZHVjdC1kZXRhaWxzIHVsIGxpICsgbGkge1xuICAgICAgbWFyZ2luLXRvcDogNXB4OyB9XG4gICAgLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQgLnByb2R1Y3QtZGV0YWlscyB1bCBsaSBzcGFuIHtcbiAgICAgIG1pbi13aWR0aDogMTUwcHg7IH1cblxuLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQgLnByb2R1Y3QtYnRucyB7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLnF1aWNrLXZpZXctbW9kYWwgLnByb2R1Y3QtcmlnaHQgLnByb2R1Y3QtYnRucyB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9IH1cblxuLnJlc2V0LWVtYWlsLW1vZGFsIC5tb2RhbC1jb250ZW50IHtcbiAgYm9yZGVyOiBub25lOyB9XG4gIC5yZXNldC1lbWFpbC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAgIC5yZXNldC1lbWFpbC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgICAgd2lkdGg6IDU0cHg7XG4gICAgICBoZWlnaHQ6IDU0cHg7XG4gICAgICB0b3A6IC01MHB4O1xuICAgICAgcmlnaHQ6IC01MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQ6IDAgMDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICAucmVzZXQtZW1haWwtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgICAgICAgICByaWdodDogLTE0cHg7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5yZXNldC1lbWFpbC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgbGVmdDogLTE0cHg7IH0gfVxuICAgICAgLnJlc2V0LWVtYWlsLW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDsgfVxuICAucmVzZXQtZW1haWwtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkge1xuICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAucmVzZXQtZW1haWwtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWZvb3RlciB7XG4gICAgcGFkZGluZzogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGJvcmRlci10b3A6IG5vbmU7IH1cbiAgICAucmVzZXQtZW1haWwtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWZvb3RlciBidXR0b24ge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAucmVzZXQtZW1haWwtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWZvb3RlciBidXR0b24ubW9kYWwtY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5yZXNldC1lbWFpbC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtZm9vdGVyIGJ1dHRvbi5tb2RhbC1jbG9zZS1idXR0b24ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuXG4uZGVsZXRlLWFjY291bnQtbW9kYWwgLm1vZGFsLWNvbnRlbnQge1xuICBib3JkZXI6IG5vbmU7IH1cbiAgLmRlbGV0ZS1hY2NvdW50LW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lOyB9XG4gICAgLmRlbGV0ZS1hY2NvdW50LW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZSB7XG4gICAgICB3aWR0aDogNTRweDtcbiAgICAgIGhlaWdodDogNTRweDtcbiAgICAgIHRvcDogLTUwcHg7XG4gICAgICByaWdodDogLTUwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNTRweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZDogMCAwO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgIC5kZWxldGUtYWNjb3VudC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgICAgICAgIHJpZ2h0OiAtMTRweDsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLmRlbGV0ZS1hY2NvdW50LW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZSB7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBsZWZ0OiAtMTRweDsgfSB9XG4gICAgICAuZGVsZXRlLWFjY291bnQtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4OyB9XG4gIC5kZWxldGUtYWNjb3VudC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSB7XG4gICAgcGFkZGluZzogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgLmRlbGV0ZS1hY2NvdW50LW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IGg0IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLmRlbGV0ZS1hY2NvdW50LW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1mb290ZXIge1xuICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgIC5kZWxldGUtYWNjb3VudC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtZm9vdGVyIGJ1dHRvbiB7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIC5kZWxldGUtYWNjb3VudC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtZm9vdGVyIGJ1dHRvbi5tb2RhbC1jbG9zZS1idXR0b24ge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLmRlbGV0ZS1hY2NvdW50LW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1mb290ZXIgYnV0dG9uLm1vZGFsLWNsb3NlLWJ1dHRvbiB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG5cbi5wYXltZW50LW1vZGFsIC5tb2RhbC1jb250ZW50IHtcbiAgYm9yZGVyOiBub25lOyB9XG4gIC5wYXltZW50LW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lOyB9XG4gICAgLnBheW1lbnQtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgICAgIHdpZHRoOiA1NHB4O1xuICAgICAgaGVpZ2h0OiA1NHB4O1xuICAgICAgdG9wOiAtNTBweDtcbiAgICAgIHJpZ2h0OiAtNTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA1NHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kOiAwIDA7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLnBheW1lbnQtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgICAgICAgICByaWdodDogLTE0cHg7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5wYXltZW50LW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZSB7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBsZWZ0OiAtMTRweDsgfSB9XG4gICAgICAucGF5bWVudC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2U6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGYwMGRcIjtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBmb250LXNpemU6IDIycHg7IH1cbiAgLnBheW1lbnQtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkge1xuICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5wYXltZW50LW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IGg0IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLnBheW1lbnQtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWZvb3RlciB7XG4gICAgcGFkZGluZzogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gICAgLnBheW1lbnQtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWZvb3RlciBidXR0b24ge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAucGF5bWVudC1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtZm9vdGVyIGJ1dHRvbi5tb2RhbC1jbG9zZS1idXR0b24ge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLnBheW1lbnQtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWZvb3RlciBidXR0b24ubW9kYWwtY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cblxuLmFkZC1hZGRyZXNzLW1vZGFsIC5tb2RhbC1jb250ZW50IHtcbiAgYm9yZGVyOiBub25lOyB9XG4gIC5hZGQtYWRkcmVzcy1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAgIC5hZGQtYWRkcmVzcy1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgICAgd2lkdGg6IDU0cHg7XG4gICAgICBoZWlnaHQ6IDU0cHg7XG4gICAgICB0b3A6IC01MHB4O1xuICAgICAgcmlnaHQ6IC01MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQ6IDAgMDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICAuYWRkLWFkZHJlc3MtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgICAgICAgICByaWdodDogLTE0cHg7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5hZGQtYWRkcmVzcy1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xuICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgbGVmdDogLTE0cHg7IH0gfVxuICAgICAgLmFkZC1hZGRyZXNzLW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDsgfVxuICAuYWRkLWFkZHJlc3MtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkge1xuICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5hZGQtYWRkcmVzcy1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSBoNCB7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gIC5hZGQtYWRkcmVzcy1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtZm9vdGVyIHtcbiAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgICAuYWRkLWFkZHJlc3MtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWZvb3RlciBidXR0b24ge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAuYWRkLWFkZHJlc3MtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWZvb3RlciBidXR0b24ubW9kYWwtY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5hZGQtYWRkcmVzcy1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtZm9vdGVyIGJ1dHRvbi5tb2RhbC1jbG9zZS1idXR0b24ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgcmF0aW8gY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnJhdGlvXzMwIC5iZy1zaXplOmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiAzMCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yYXRpb18zNSAuYmctc2l6ZTpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogMzUlO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucmF0aW9fNDAgLmJnLXNpemU6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDQwJTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJhdGlvXzQ1IC5iZy1zaXplOmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiA0NSU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yYXRpbzJfMSAuYmctc2l6ZTpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogNTAlO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucmF0aW9fNTUgLmJnLXNpemU6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDU1JTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJhdGlvXzU5IC5iZy1zaXplOmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiA1OSU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yYXRpbzJfMyAuYmctc2l6ZTpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogNjAlO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucmF0aW8zXzIgLmJnLXNpemU6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDY2LjY2JTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJhdGlvXzkwIC5iZy1zaXplOmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiA5MyU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yYXRpb19sYW5kc2NhcGUgLmJnLXNpemU6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDc1JTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJhdGlvX3ZlZyAuYmctc2l6ZTpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogMTEzJTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJhdGlvX3NxdWFyZSAuYmctc2l6ZTpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogMTAwJTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJhdGlvX2Fzb3MgLmJnLXNpemU6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDEyNy43Nzc3Nzc4JTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJhdGlvX3NtYWxsIC5iZy1zaXplOmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiAxMTglO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucmF0aW9fbWVkaXVtIC5iZy1zaXplOmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiAxMzglO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucmF0aW9fcG9ydHJhaXQgLmJnLXNpemU6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDE1MCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yYXRpbzJfMiAuYmctc2l6ZTpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogMTU0Ljc3Nzc3OCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yYXRpb18yIC5iZy1zaXplOmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiAxNjMlO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucmF0aW8xXzIgLmJnLXNpemU6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDIwMCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBmb3JtIGNzcyBzdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmZvcm0tY29udHJvbCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcGFkZGluZzogY2FsYyg4cHggKyAoMTQgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgLmZvcm0tY29udHJvbC5zdWJzY3JpYmUtaW5wdXQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIFtkaXI9XCJydGxcIl0gLmZvcm0tY29udHJvbCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNztcbiAgICBib3JkZXItY29sb3I6ICNjZWQ0ZGE7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBjb2xvcjogIzIxMjUyOTsgfVxuXG4uZm9ybS1zZWxlY3Qge1xuICBmb250LXNpemU6IDE0cHg7IH1cbiAgLmZvcm0tc2VsZWN0OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzdjN2M1O1xuICAgIGJvcmRlci1jb2xvcjogI2NlZDRkYTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiAjMjEyNTI5OyB9XG5cbi5pbnB1dC1ncm91cCAuYnRuIHtcbiAgei1pbmRleDogMTsgfVxuXG4uY2hlY2tib3hfYW5pbWF0ZWQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXJpZ2h0OiAxNnB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLmNoZWNrYm94X2FuaW1hdGVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDE2cHg7IH1cbiAgLmNoZWNrYm94X2FuaW1hdGVkOmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMgY3ViaWMtYmV6aWVyKDAuNDUsIDEuOCwgMC41LCAwLjc1KTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAsIDApO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDRweDtcbiAgICB0b3A6IDRweDtcbiAgICB6LWluZGV4OiAxO1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogNnB4O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBub25lO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogbm9uZTsgfVxuICAuY2hlY2tib3hfYW5pbWF0ZWQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTJweDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAyMXB4O1xuICAgIGhlaWdodDogMjFweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNkZGQ7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5jaGVja2JveF9hbmltYXRlZDpjaGVja2VkOmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgxLCAxKTsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgc2xpZGVyIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5zbGljay1pbml0aWFsaXplZCAuc2xpY2stYXJyb3cge1xuICB6LWluZGV4OiAxO1xuICB0cmFuc2l0aW9uOiAwLjVzOyB9XG4gIC5zbGljay1pbml0aWFsaXplZCAuc2xpY2stYXJyb3c6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiAwLjVzOyB9XG4gIC5zbGljay1pbml0aWFsaXplZCAuc2xpY2stYXJyb3c6aG92ZXIge1xuICAgIHRyYW5zaXRpb246IDAuNXM7IH1cbiAgICAuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLWFycm93OmhvdmVyOmJlZm9yZSB7XG4gICAgICB0cmFuc2l0aW9uOiAwLjVzOyB9XG5cbi5zcGFjaW5nLXNsaWRlci5zbGljay1zbGlkZXIge1xuICBtYXJnaW46IDAgLTEycHg7IH1cbiAgLnNwYWNpbmctc2xpZGVyLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgbWFyZ2luOiAwIC0xMnB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAuc3BhY2luZy1zbGlkZXIuc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAgICAgbWFyZ2luOiAwIC02cHg7IH0gfVxuICAgIC5zcGFjaW5nLXNsaWRlci5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3QgLnNsaWNrLXNsaWRlID4gZGl2IHtcbiAgICAgIG1hcmdpbjogMCAxMnB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLnNwYWNpbmctc2xpZGVyLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCAuc2xpY2stc2xpZGUgPiBkaXYge1xuICAgICAgICAgIG1hcmdpbjogMCA2cHg7IH0gfVxuICAuc3BhY2luZy1zbGlkZXIuc2xpY2stc2xpZGVyLnNsaWNrLWRvdHRlZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgbWFyZ2luOiAwIC0xMnB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgICAgbWFyZ2luOiAwIC02cHg7IH0gfVxuICAuc2xpY2stc2xpZGVyIC5zbGljay1saXN0IC5zbGljay1zbGlkZSA+IGRpdiB7XG4gICAgbWFyZ2luOiAwIDEycHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3QgLnNsaWNrLXNsaWRlID4gZGl2IHtcbiAgICAgICAgbWFyZ2luOiAwIDZweDsgfSB9XG5cbi5zbGljay1zbGlkZXIuc2xpY2stZG90dGVkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uc2xpZGUtNiAuc2xpY2stbGlzdCB7XG4gIG1hcmdpbjogMDsgfVxuXG4uY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDUwcHg7XG4gIHotaW5kZXg6IDE7XG4gIHRyYW5zaXRpb246IDAuNXM7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93IHtcbiAgICAgIGJvdHRvbTogOTBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cge1xuICAgICAgYm90dG9tOiAxMHB4OyB9IH1cbiAgLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdzpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICB0cmFuc2l0aW9uOiAwLjVzOyB9XG4gIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cgaSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiAxcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cgaSB7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA4cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgICAgICAgLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdyBpOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH0gfVxuICAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93LnByZXYge1xuICAgIHJpZ2h0OiAyMCU7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cucHJldiBpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTZweCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5wcmV2IHtcbiAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgIGxlZnQ6IDclOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93LnByZXYge1xuICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgIGxlZnQ6IDUlOyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5wcmV2IHtcbiAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICByaWdodDogNSU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5wcmV2IHtcbiAgICAgICAgcmlnaHQ6IDUzJSAhaW1wb3J0YW50O1xuICAgICAgICBsZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICBib3R0b206IDIwcHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93LnByZXYge1xuICAgICAgICAgIGxlZnQ6IDEwJTtcbiAgICAgICAgICByaWdodDogdW5zZXQ7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgICAgLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5wcmV2IHtcbiAgICAgICAgcmlnaHQ6IDEyJTtcbiAgICAgICAgbGVmdDogdW5zZXQ7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93LnByZXYge1xuICAgICAgICAgIGxlZnQ6IDEyJTtcbiAgICAgICAgICByaWdodDogdW5zZXQ7IH0gfVxuICAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93Lm5leHQge1xuICAgIHJpZ2h0OiAxMyU7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cubmV4dCBpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5uZXh0IHtcbiAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgIGxlZnQ6IDEzJTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cubmV4dCB7XG4gICAgICAgIHJpZ2h0OiAxMSU7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93Lm5leHQge1xuICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICBsZWZ0OiAxNSU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5uZXh0IHtcbiAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICBsZWZ0OiAxNiU7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93Lm5leHQge1xuICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgIHJpZ2h0OiAxNiU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5uZXh0IHtcbiAgICAgICAgbGVmdDogMjAlOyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5uZXh0IHtcbiAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICByaWdodDogMjAlOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cubmV4dCB7XG4gICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICByaWdodDogMyU7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93Lm5leHQge1xuICAgICAgICAgIGxlZnQ6IDMlO1xuICAgICAgICAgIHJpZ2h0OiB1bnNldDsgfSB9XG4gICAgLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdy5uZXh0OjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICBsZWZ0OiAtMjhweDtcbiAgICAgIHRvcDogMDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93Lm5leHQ6OmJlZm9yZSB7XG4gICAgICAgIHJpZ2h0OiAxOHB4O1xuICAgICAgICBsZWZ0OiB1bnNldDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDE2NjBweCkge1xuICAgICAgICAuY2xhc3NpYy1hcnJvdyAuY3VzdG9tLWFycm93Lm5leHQ6OmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cgc3BhbiB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmNsYXNzaWMtYXJyb3cgLmN1c3RvbS1hcnJvdyBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5jbGFzc2ljLWFycm93IC5jdXN0b20tYXJyb3cgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uY2xhc3NpYy1hcnJvdy0xIC5jdXN0b20tYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogNTBweDtcbiAgei1pbmRleDogMTtcbiAgdHJhbnNpdGlvbjogMC41cztcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5jbGFzc2ljLWFycm93LTEgLmN1c3RvbS1hcnJvdzpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICB0cmFuc2l0aW9uOiAwLjVzOyB9XG4gIC5jbGFzc2ljLWFycm93LTEgLmN1c3RvbS1hcnJvdyBpIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgdmVydGljYWwtYWxpZ246IDFweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLmNsYXNzaWMtYXJyb3ctMSAuY3VzdG9tLWFycm93IGkge1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogOHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gICAgICAgIC5jbGFzc2ljLWFycm93LTEgLmN1c3RvbS1hcnJvdyBpOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH0gfVxuICAuY2xhc3NpYy1hcnJvdy0xIC5jdXN0b20tYXJyb3cucHJldiB7XG4gICAgcmlnaHQ6IDIwJTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmNsYXNzaWMtYXJyb3ctMSAuY3VzdG9tLWFycm93LnByZXYge1xuICAgICAgcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICBsZWZ0OiA2JSAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICBbZGlyPVwicnRsXCJdIC5jbGFzc2ljLWFycm93LTEgLmN1c3RvbS1hcnJvdy5wcmV2IHtcbiAgICAgICAgbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgcmlnaHQ6IDUxJSAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgIFtkaXI9XCJydGxcIl0gLmNsYXNzaWMtYXJyb3ctMSAuY3VzdG9tLWFycm93LnByZXYge1xuICAgICAgICBsZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICByaWdodDogNTIlICFpbXBvcnRhbnQ7IH0gfVxuICAuY2xhc3NpYy1hcnJvdy0xIC5jdXN0b20tYXJyb3cubmV4dCB7XG4gICAgcmlnaHQ6IDEzJTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmNsYXNzaWMtYXJyb3ctMSAuY3VzdG9tLWFycm93Lm5leHQge1xuICAgICAgcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICBsZWZ0OiAxMiUgIWltcG9ydGFudDsgfVxuICAgIC5jbGFzc2ljLWFycm93LTEgLmN1c3RvbS1hcnJvdy5uZXh0OjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICBsZWZ0OiAtMjhweDtcbiAgICAgIHRvcDogMDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdy0xIC5jdXN0b20tYXJyb3cubmV4dDo6YmVmb3JlIHtcbiAgICAgICAgcmlnaHQ6IC0yOHB4O1xuICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgd2lkdGg6IDglOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTY2MHB4KSB7XG4gICAgICAgIC5jbGFzc2ljLWFycm93LTEgLmN1c3RvbS1hcnJvdy5uZXh0OjpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdy0xIC5jdXN0b20tYXJyb3cubmV4dCB7XG4gICAgICAgIGxlZnQ6IDE2JSAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIFtkaXI9XCJydGxcIl0gLmNsYXNzaWMtYXJyb3ctMSAuY3VzdG9tLWFycm93Lm5leHQge1xuICAgICAgICBsZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICByaWdodDogMTMlICFpbXBvcnRhbnQ7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xhc3NpYy1hcnJvdy0xIC5jdXN0b20tYXJyb3cubmV4dCB7XG4gICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgIHJpZ2h0OiA0NCUgIWltcG9ydGFudDsgfSB9XG4gIC5jbGFzc2ljLWFycm93LTEgLmN1c3RvbS1hcnJvdyBzcGFuIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuY2xhc3NpYy1hcnJvdy0xIC5jdXN0b20tYXJyb3cgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAuY2xhc3NpYy1hcnJvdy0xIC5jdXN0b20tYXJyb3cgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ubGlnaHQtYXJyb3cgLnNsaWNrLWFycm93LFxuLndoaXRlLWFycm93IC5zbGljay1hcnJvdyB7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmxpZ2h0LWFycm93IC5zbGljay1hcnJvdyxcbiAgICAud2hpdGUtYXJyb3cgLnNsaWNrLWFycm93IHtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgaGVpZ2h0OiAzMHB4OyB9IH1cbiAgLmxpZ2h0LWFycm93IC5zbGljay1hcnJvdzpiZWZvcmUsXG4gIC53aGl0ZS1hcnJvdyAuc2xpY2stYXJyb3c6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7IH1cblxuLmxpZ2h0LWFycm93IC5zbGljay1wcmV2LFxuLndoaXRlLWFycm93IC5zbGljay1wcmV2IHtcbiAgei1pbmRleDogMTsgfVxuICAubGlnaHQtYXJyb3cgLnNsaWNrLXByZXY6YmVmb3JlLFxuICAud2hpdGUtYXJyb3cgLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjA1M1wiOyB9XG5cbi5saWdodC1hcnJvdyAuc2xpY2stbmV4dDpiZWZvcmUsXG4ud2hpdGUtYXJyb3cgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTRcIjsgfVxuXG4ubGlnaHQtYXJyb3cgLnNsaWNrLWFycm93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjNmODsgfVxuICAubGlnaHQtYXJyb3cgLnNsaWNrLWFycm93OmJlZm9yZSB7XG4gICAgY29sb3I6ICMyMzIzMjM7IH1cbiAgLmxpZ2h0LWFycm93IC5zbGljay1hcnJvdzpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gICAgLmxpZ2h0LWFycm93IC5zbGljay1hcnJvdzpob3ZlcjpiZWZvcmUge1xuICAgICAgY29sb3I6ICNmZmY7IH1cblxuLmJvdHRvbS1zcGFjZSB7XG4gIG1hcmdpbi1ib3R0b206IC00cHg7IH1cblxuLndoaXRlLWFycm93IC5zbGljay1hcnJvdyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDsgfVxuICAud2hpdGUtYXJyb3cgLnNsaWNrLWFycm93OmJlZm9yZSB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLndoaXRlLWFycm93IC5zbGljay1hcnJvdzpob3ZlciwgLndoaXRlLWFycm93IC5zbGljay1hcnJvdzphY3RpdmUsIC53aGl0ZS1hcnJvdyAuc2xpY2stYXJyb3c6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgICAud2hpdGUtYXJyb3cgLnNsaWNrLWFycm93OmhvdmVyOmJlZm9yZSwgLndoaXRlLWFycm93IC5zbGljay1hcnJvdzphY3RpdmU6YmVmb3JlLCAud2hpdGUtYXJyb3cgLnNsaWNrLWFycm93OmZvY3VzOmJlZm9yZSB7XG4gICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG5cbi5jYXRlZ29yeS1zbGlkZXIgLnNsaWNrLXByZXYge1xuICBsZWZ0OiAtMTIwcHg7IH1cblxuLmNhdGVnb3J5LXNsaWRlciAuc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiB1bnNldDtcbiAgbGVmdDogLTgwcHg7IH1cblxuLmJyYW5kLWltYWdlIGltZyB7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5kb3QtZGFyayAuc2xpY2stZG90cyB7XG4gIGJvdHRvbTogdW5zZXQ7XG4gIHdpZHRoOiBhdXRvO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICByaWdodDogMDtcbiAgbGVmdDogdW5zZXQ7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuZG90LWRhcmsgLnNsaWNrLWRvdHMge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IHVuc2V0OyB9XG4gIC5kb3QtZGFyayAuc2xpY2stZG90cyBsaSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogNXB4OyB9XG4gICAgLmRvdC1kYXJrIC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIGJhY2tncm91bmQ6ICMyMzIzMjM7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlOyB9XG4gICAgICAuZG90LWRhcmsgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuZG90LWRhcmsgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cblxuLmltYWdlLXNob3cgLnNsaWNrLWxpc3Qge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuLmltYWdlLXNob3cgLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IG5vbmU7IH1cblxuW2Rpcj1cInJ0bFwiXSAucG9zdGVyLXNlY3Rpb24tNiAuaW1hZ2Utc2hvdyAuc2xpY2stc2xpZGUsIFtkaXI9XCJydGxcIl1cbi5wb3N0ZXItc2VjdGlvbiAuaW1hZ2Utc2hvdyAuc2xpY2stc2xpZGUge1xuICBmbG9hdDogbm9uZTsgfVxuXG4uc2xpY2stbGctc3BhY2UgLnNsaWNrLWxpc3Qge1xuICBtYXJnaW46IC01cHggLTE4cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnNsaWNrLWxnLXNwYWNlIC5zbGljay1saXN0IHtcbiAgICAgIG1hcmdpbjogLTVweCAtMTBweDsgfSB9XG4gIC5zbGljay1sZy1zcGFjZSAuc2xpY2stbGlzdCAuc2xpY2stc2xpZGUgPiBkaXYge1xuICAgIG1hcmdpbjogNXB4IDE4cHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5zbGljay1sZy1zcGFjZSAuc2xpY2stbGlzdCAuc2xpY2stc2xpZGUgPiBkaXYge1xuICAgICAgICBtYXJnaW46IDVweCAxMHB4OyB9IH1cblxuLmJsYWNrLXNsaWRlIC5zbGljay1saXN0IC5zbGljay10cmFjayAuc2xpY2stc2xpZGUgPiBkaXYge1xuICBtYXJnaW46IDAgNXB4OyB9XG5cbi5ibGFjay1zbGlkZSAuc2xpY2stbGlzdCAuc2xpY2stdHJhY2sgLnNsaWNrLXNsaWRlLnNsaWNrLWFjdGl2ZSAucGxheS1pY29uIC5mYS1wbGF5IHtcbiAgZmlsdGVyOiBncmF5c2NhbGUoMTAwJSkgYmx1cigxcHgpO1xuICBvcGFjaXR5OiAwLjU7IH1cblxuLmJsYWNrLXNsaWRlIC5zbGljay1saXN0IC5zbGljay10cmFjayAuc2xpY2stc2xpZGUuc2xpY2stYWN0aXZlIC5wbGF5LWljb246aG92ZXIgLmZhLXBsYXkge1xuICBmaWx0ZXI6IGdyYXlzY2FsZSgwKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uYmxhY2stc2xpZGUgLnNsaWNrLWxpc3QgLnNsaWNrLXRyYWNrIC5zbGljay1zbGlkZS5zbGljay1hY3RpdmUgaW1nIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7IH1cblxuLmJsYWNrLXNsaWRlIC5zbGljay1saXN0IC5zbGljay10cmFjayAuc2xpY2stc2xpZGUuc2xpY2stYWN0aXZlOmhvdmVyIGltZyB7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDApO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5ibGFjay1zbGlkZSAuc2xpY2stbGlzdCAuc2xpY2stdHJhY2sgLnNsaWNrLXNsaWRlIGltZyB7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDIwJSkgYmx1cigxcHgpO1xuICBvcGFjaXR5OiAwLjg7IH1cblxuLmJsYWNrLXNsaWRlIC5zbGljay1saXN0IC5zbGljay10cmFjayAuc2xpY2stc2xpZGUuc2xpY2stY2VudGVyIGltZyB7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDApO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5ibGFjay1zbGlkZSAuc2xpY2stbGlzdCAuc2xpY2stdHJhY2sgLnNsaWNrLXNsaWRlLnNsaWNrLWNlbnRlciAucGxheS1pY29uIC5mYS1wbGF5IHtcbiAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgTGF6eSBMb2FkIGNzcyBTdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5ibHVyLXVwIHtcbiAgZmlsdGVyOiBibHVyKDVweCk7XG4gIHRyYW5zaXRpb246IGZpbHRlciA0MDBtcywgLXdlYmtpdC1maWx0ZXIgNDAwbXM7IH1cbiAgLmJsdXItdXAubGF6eWxvYWRlZCB7XG4gICAgZmlsdGVyOiBibHVyKDApOyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIFRvdWNoc3BpbiAgQ1NTIFN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmJvb3RzdHJhcC10b3VjaHNwaW4gaW5wdXQudG91Y2hzcGluIHtcbiAgcGFkZGluZzogMCAxMnB4OyB9XG5cbi5ib290c3RyYXAtdG91Y2hzcGluIC5pbnB1dC1ncm91cCAuYnRuIHtcbiAgcGFkZGluZzogMC41cmVtIDEuNzVyZW07IH1cblxuLmJvb3RzdHJhcC10b3VjaHNwaW4gLmlucHV0LWdyb3VwIHtcbiAgZm9udC1mYW1pbHk6IFJ1YmlrLCBzYW5zLXNlcmlmOyB9XG4gIC5ib290c3RyYXAtdG91Y2hzcGluIC5pbnB1dC1ncm91cCAuYnRuIHtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7IH1cblxuLnRvdWNoc3Bpbi12ZXJ0aWNhbC10YWIge1xuICBtYXgtd2lkdGg6IDYwcHg7XG4gIHdpZHRoOiB1bnNldDsgfVxuICAudG91Y2hzcGluLXZlcnRpY2FsLXRhYiAudG91Y2hzcGluLXZlcnRpY2FsIHtcbiAgICBwYWRkaW5nOiA2cHggMTJweDsgfVxuICAudG91Y2hzcGluLXZlcnRpY2FsLXRhYiAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0bi12ZXJ0aWNhbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGdyaWQ7IH1cbiAgICAudG91Y2hzcGluLXZlcnRpY2FsLXRhYiAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0bi12ZXJ0aWNhbCAuYm9vdHN0cmFwLXRvdWNoc3Bpbi1kb3duIHtcbiAgICAgIG1hcmdpbi10b3A6IC0ycHg7IH1cbiAgICAudG91Y2hzcGluLXZlcnRpY2FsLXRhYiAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ0bi12ZXJ0aWNhbCBpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNHB4O1xuICAgICAgbGVmdDogN3B4O1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDsgfVxuICAgIC50b3VjaHNwaW4tdmVydGljYWwtdGFiIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnRuLXZlcnRpY2FsID4gLmJ0biB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiA5cHg7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBib3JkZXItY29sb3I6ICNjZWQ0ZGE7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIEJyZWFkY3J1bWIgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmJyZWFkY3J1bWItc2VjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwOyB9XG4gIC5icmVhZGNydW1iLXNlY3Rpb24gaDMge1xuICAgIGZvbnQtc2l6ZTogY2FsYygyMHB4ICsgKDI2IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5icmVhZGNydW1iLXNlY3Rpb24tMSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZTllOTsgfVxuICAuYnJlYWRjcnVtYi1zZWN0aW9uIC5icmVhZGNydW1iLWl0ZW0uYWN0aXZlIHtcbiAgICBjb2xvcjogIzdlN2U3ZTsgfVxuICAuYnJlYWRjcnVtYi1zZWN0aW9uIC5icmVhZGNydW1iIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgLmJyZWFkY3J1bWItc2VjdGlvbiAuY2lyY2xlcyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHotaW5kZXg6IC0xOyB9XG4gICAgLmJyZWFkY3J1bWItc2VjdGlvbiAuY2lyY2xlcyBsaSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIGFuaW1hdGlvbjogYW5pbWF0ZSAyNXMgbGluZWFyIGluZmluaXRlO1xuICAgICAgYm90dG9tOiAtMTUwcHg7XG4gICAgICBvcGFjaXR5OiAwLjIgIWltcG9ydGFudDsgfVxuICAgICAgLmJyZWFkY3J1bWItc2VjdGlvbiAuY2lyY2xlcyBsaTpudGgtY2hpbGQoMSkge1xuICAgICAgICBsZWZ0OiAyNSU7XG4gICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMHM7IH1cbiAgICAgIC5icmVhZGNydW1iLXNlY3Rpb24gLmNpcmNsZXMgbGk6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgbGVmdDogMTAlO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDJzO1xuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDEyczsgfVxuICAgICAgLmJyZWFkY3J1bWItc2VjdGlvbiAuY2lyY2xlcyBsaTpudGgtY2hpbGQoMykge1xuICAgICAgICBsZWZ0OiA3MCU7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogNHM7IH1cbiAgICAgIC5icmVhZGNydW1iLXNlY3Rpb24gLmNpcmNsZXMgbGk6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgbGVmdDogNDAlO1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDBzO1xuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDE4czsgfVxuICAgICAgLmJyZWFkY3J1bWItc2VjdGlvbiAuY2lyY2xlcyBsaTpudGgtY2hpbGQoNSkge1xuICAgICAgICBsZWZ0OiA2NSU7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMHM7IH1cbiAgICAgIC5icmVhZGNydW1iLXNlY3Rpb24gLmNpcmNsZXMgbGk6bnRoLWNoaWxkKDYpIHtcbiAgICAgICAgbGVmdDogNzUlO1xuICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDNzOyB9XG4gICAgICAuYnJlYWRjcnVtYi1zZWN0aW9uIC5jaXJjbGVzIGxpOm50aC1jaGlsZCg3KSB7XG4gICAgICAgIGxlZnQ6IDE5JTtcbiAgICAgICAgd2lkdGg6IDExMHB4O1xuICAgICAgICBoZWlnaHQ6IDExMHB4O1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDdzOyB9XG4gICAgICAuYnJlYWRjcnVtYi1zZWN0aW9uIC5jaXJjbGVzIGxpOm50aC1jaGlsZCg4KSB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAxNXM7XG4gICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogNDVzOyB9XG4gICAgICAuYnJlYWRjcnVtYi1zZWN0aW9uIC5jaXJjbGVzIGxpOm50aC1jaGlsZCg5KSB7XG4gICAgICAgIGxlZnQ6IDIwJTtcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAycztcbiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzNXM7IH1cbiAgICAgIC5icmVhZGNydW1iLXNlY3Rpb24gLmNpcmNsZXMgbGk6bnRoLWNoaWxkKDEwKSB7XG4gICAgICAgIGxlZnQ6IDg1JTtcbiAgICAgICAgd2lkdGg6IDExMHB4O1xuICAgICAgICBoZWlnaHQ6IDExMHB4O1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDBzO1xuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDExczsgfVxuXG5Aa2V5ZnJhbWVzIGFuaW1hdGUge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHJvdGF0ZSgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAwcHgpIHJvdGF0ZSg3MjBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGhlYWRlciBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uY29udGFpbmVyLWZsdWlkLWxnIHtcbiAgcGFkZGluZzogMCAxMTJweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTQ2MHB4KSB7XG4gICAgLmNvbnRhaW5lci1mbHVpZC1sZyB7XG4gICAgICBwYWRkaW5nOiAwIDYwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgLmNvbnRhaW5lci1mbHVpZC1sZyB7XG4gICAgICBwYWRkaW5nOiAwIDMwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLmNvbnRhaW5lci1mbHVpZC1sZyB7XG4gICAgICBwYWRkaW5nOiAwIDEycHg7IH0gfVxuXG5oZWFkZXIgLnNlYXJjaC1oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTsgfVxuXG5oZWFkZXIubmF2LWRvd24ubmF2LXVwIC5uYXZiYXItc2VhcmNoYmFyIHtcbiAgdG9wOiAwOyB9XG5cbmhlYWRlci5uYXYtZG93bi5uYXYtdXAgLm1haW4tbWVudSB7XG4gIHBhZGRpbmc6IDEwcHggMDsgfVxuXG5oZWFkZXIubmF2LWRvd24gLm5hdmJhci1zZWFyY2hiYXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogLTEwMHB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm94LXNoYWRvdzogMHB4IDRweCAxMHB4IHJnYmEoMjMsIDMyLCA5MCwgMC4xNSk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gIHotaW5kZXg6IDY7IH1cblxuaGVhZGVyIC5zZWFyY2gtc3VnZ2VzdGlvbiB7XG4gIGhlaWdodDogMHB4O1xuICBtYXgtaGVpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHRvcDogNjhweDtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMTAwMG1zIGN1YmljLWJlemllcigwLjI3LCAwLjcsIDAsIDAuOTkpO1xuICB6LWluZGV4OiAxOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGhlYWRlciAuc2VhcmNoLXN1Z2dlc3Rpb24ge1xuICAgICAgdG9wOiA1NnB4OyB9IH1cbiAgaGVhZGVyIC5zZWFyY2gtc3VnZ2VzdGlvbiA+IHVsIHtcbiAgICBtYXJnaW46IC0xMHB4OyB9XG4gICAgaGVhZGVyIC5zZWFyY2gtc3VnZ2VzdGlvbiA+IHVsID4gbGkge1xuICAgICAgcGFkZGluZzogMTBweDsgfVxuICBoZWFkZXIgLnNlYXJjaC1zdWdnZXN0aW9uIC5wcm9kdWN0LWNhcnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIGhlYWRlciAuc2VhcmNoLXN1Z2dlc3Rpb24gLnByb2R1Y3QtY2FydCBpbWcge1xuICAgICAgaGVpZ2h0OiAxMDBweDsgfVxuICAgIGhlYWRlciAuc2VhcmNoLXN1Z2dlc3Rpb24gLnByb2R1Y3QtY2FydCAubWVkaWEtYm9keSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7IH1cbiAgICAgIGhlYWRlciAuc2VhcmNoLXN1Z2dlc3Rpb24gLnByb2R1Y3QtY2FydCAubWVkaWEtYm9keSBhIHtcbiAgICAgICAgY29sb3I6ICMyMzIzMjM7IH1cbiAgICAgIGhlYWRlciAuc2VhcmNoLXN1Z2dlc3Rpb24gLnByb2R1Y3QtY2FydCAubWVkaWEtYm9keSAucmF0aW5nIGxpIGkge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGNvbG9yOiAjYzNjM2MzOyB9XG5cbmhlYWRlciAubWFpbi1tZW51IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAyMHB4IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgaGVhZGVyIC5tYWluLW1lbnUge1xuICAgICAgcGFkZGluZzogMTBweCAwOyB9IH1cblxuaGVhZGVyIC5vbmhvdmVyLWRpdiB7XG4gIHJpZ2h0OiAwOyB9XG4gIFtkaXI9XCJydGxcIl0gaGVhZGVyIC5vbmhvdmVyLWRpdiB7XG4gICAgcmlnaHQ6IHVuc2V0O1xuICAgIGxlZnQ6IDA7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gIGhlYWRlciAud2lzbGlzdC1kcm9wZG93biB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICBoZWFkZXIgLmNhcnQtZHJvcGRvd246aG92ZXIgLm9uaG92ZXItZGl2IHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdW5zZXQ7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9IH1cblxuaGVhZGVyIC5jYXJ0LWRyb3Bkb3duIC5vbmhvdmVyLWRpdjo6YmVmb3JlIHtcbiAgYm9yZGVyLWJvdHRvbTogN3B4IHNvbGlkICNmMGYzZjg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGhlYWRlciAuY2FydC1kcm9wZG93biAub25ob3Zlci1kaXYge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHdpZHRoOiAyOTBweDtcbiAgICByaWdodDogLTI5MHB4O1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogMC41cztcbiAgICB6LWluZGV4OiA0OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGhlYWRlciAuY2FydC1kcm9wZG93bi5zaG93IC5vbmhvdmVyLWRpdiB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNpdGlvbjogMC41czsgfSB9XG5cbmhlYWRlciAuY2FydC1tZW51IC5jYXJ0LXRpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjNmODtcbiAgcGFkZGluZzogMjBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIGhlYWRlciAuY2FydC1tZW51IC5jYXJ0LXRpdGxlIGg2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICBoZWFkZXIgLmNhcnQtbWVudSAuY2FydC10aXRsZSBoNiAubGFiZWwge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtNHB4O1xuICAgICAgcmlnaHQ6IC05cHg7XG4gICAgICBwYWRkaW5nOiAycHggNnB4OyB9XG4gIFtkaXI9XCJydGxcIl0gaGVhZGVyIC5jYXJ0LW1lbnUgLmNhcnQtdGl0bGUgc3BhbiBpIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG5cbmhlYWRlciAuY2FydC1tZW51IC5tZWRpYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBoZWFkZXIgLmNhcnQtbWVudSAubWVkaWEgLmJ0bi1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICBoZWFkZXIgLmNhcnQtbWVudSAubWVkaWEgaW1nIHtcbiAgICB3aWR0aDogNjBweDsgfVxuICBoZWFkZXIgLmNhcnQtbWVudSAubWVkaWEgLm1lZGlhLWJvZHkge1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSBoZWFkZXIgLmNhcnQtbWVudSAubWVkaWEgLm1lZGlhLWJvZHkge1xuICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9XG4gICAgaGVhZGVyIC5jYXJ0LW1lbnUgLm1lZGlhIC5tZWRpYS1ib2R5IGg2IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICBoZWFkZXIgLmNhcnQtbWVudSAubWVkaWEgLm1lZGlhLWJvZHkgaW5wdXQge1xuICAgICAgbWF4LXdpZHRoOiA2MHB4O1xuICAgICAgd2lkdGg6IHVuc2V0O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZzogM3B4IDhweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgICBoZWFkZXIgLmNhcnQtbWVudSAubWVkaWEgLm1lZGlhLWJvZHkgLnF0eS13aXRoLXByaWNlIHtcbiAgICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbmhlYWRlciAuY2FydC1tZW51IHVsIHtcbiAgcGFkZGluZy10b3A6IDEwcHg7IH1cbiAgaGVhZGVyIC5jYXJ0LW1lbnUgdWwgbGkge1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgaGVhZGVyIC5jYXJ0LW1lbnUgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgaGVhZGVyIC5jYXJ0LW1lbnUgdWwge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTgwcHgpO1xuICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NlZDRkYTsgfSB9XG5cbmhlYWRlciAuY2FydC1idG4ge1xuICBwYWRkaW5nOiAyMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGhlYWRlciAuY2FydC1idG4ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgei1pbmRleDogMTsgfSB9XG4gIGhlYWRlciAuY2FydC1idG4gLmNhcnQtdG90YWwge1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBoZWFkZXIgLmNhcnQtYnRuIC5jYXJ0LXRvdGFsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9IH1cbiAgaGVhZGVyIC5jYXJ0LWJ0biAuYnRuIHtcbiAgICBwYWRkaW5nOiA4cHggMTJweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuaGVhZGVyIC53aXNsaXN0LWVtcHR5IHtcbiAgcGFkZGluZzogMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIGhlYWRlciAud2lzbGlzdC1lbXB0eSBpIHtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG5cbmhlYWRlciAuc2VhcmNoLWZ1bGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIGhlYWRlciAuc2VhcmNoLWZ1bGwgLmlucHV0LWdyb3VwIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZjBmM2Y4OyB9XG4gICAgaGVhZGVyIC5zZWFyY2gtZnVsbCAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLXRleHQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAgIGhlYWRlciAuc2VhcmNoLWZ1bGwgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC10ZXh0LmNsb3NlLXNlYXJjaCB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgaGVhZGVyIC5zZWFyY2gtZnVsbCAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLXRleHQgc3ZnIHtcbiAgICAgICAgaGVpZ2h0OiAxOHB4OyB9XG4gICAgaGVhZGVyIC5zZWFyY2gtZnVsbCAuaW5wdXQtZ3JvdXAgaW5wdXQge1xuICAgICAgYm9yZGVyOiBub25lOyB9XG4gIGhlYWRlciAuc2VhcmNoLWZ1bGwub3BlbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGFuaW1hdGlvbjogem9vbUluIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOyB9XG4gIGhlYWRlciAuc2VhcmNoLWZ1bGwuc2hvdyAuc2VhcmNoLXN1Z2dlc3Rpb24ge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YwZjNmODtcbiAgICBoZWlnaHQ6IC13ZWJraXQtbWF4LWNvbnRlbnQ7XG4gICAgaGVpZ2h0OiAtbW96LW1heC1jb250ZW50O1xuICAgIGhlaWdodDogbWF4LWNvbnRlbnQ7XG4gICAgbWF4LWhlaWdodDogNTAwcHg7XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAxMDAwbXMgY3ViaWMtYmV6aWVyKDAuMjcsIDAuNywgMCwgMC45OSk7IH1cblxuaGVhZGVyIC5zZWFyY2gtYm94MSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDU1JTtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBoZWFkZXIgLnNlYXJjaC1ib3gxIC5mb3JtLWNvbnRyb2wge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICBoZWFkZXIgLnNlYXJjaC1ib3gxIC50d2l0dGVyLXR5cGVhaGVhZCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDUwcHgpOyB9XG4gIGhlYWRlciAuc2VhcmNoLWJveDEgLnR0LW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyOiB1bnNldCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIG1heC1oZWlnaHQ6IDM1MHB4O1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHRvcDogNTVweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBwYWRkaW5nOiA4cHggMDsgfVxuICAgIGhlYWRlciAuc2VhcmNoLWJveDEgLnR0LW1lbnUgLnR0LWRhdGFzZXQtc3RhdGVzIHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweDsgfVxuICAgICAgaGVhZGVyIC5zZWFyY2gtYm94MSAudHQtbWVudSAudHQtZGF0YXNldC1zdGF0ZXMgLnR0LXNlbGVjdGFibGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgICAgIGhlYWRlciAuc2VhcmNoLWJveDEgLnR0LW1lbnUgLnR0LWRhdGFzZXQtc3RhdGVzIC50dC1zZWxlY3RhYmxlIC5pbWFnZS1zZWN0aW9uIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMHB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuICAgICAgICAgIGhlYWRlciAuc2VhcmNoLWJveDEgLnR0LW1lbnUgLnR0LWRhdGFzZXQtc3RhdGVzIC50dC1zZWxlY3RhYmxlIC5pbWFnZS1zZWN0aW9uIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICBoZWFkZXIgLnNlYXJjaC1ib3gxIC50dC1tZW51IC50dC1kYXRhc2V0LXN0YXRlcyAudHQtc2VsZWN0YWJsZSAuZGVzY3JpcHRpb24tc2VjdGlvbiB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpOyB9XG4gICAgICAgICAgaGVhZGVyIC5zZWFyY2gtYm94MSAudHQtbWVudSAudHQtZGF0YXNldC1zdGF0ZXMgLnR0LXNlbGVjdGFibGUgLmRlc2NyaXB0aW9uLXNlY3Rpb24gaDQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNjYwcHgpIHtcbiAgICBoZWFkZXIgLnNlYXJjaC1ib3gxIHtcbiAgICAgIHdpZHRoOiA0OCU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgaGVhZGVyIC5zZWFyY2gtYm94MSB7XG4gICAgICB3aWR0aDogNDAlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIGhlYWRlciAuc2VhcmNoLWJveDEge1xuICAgICAgd2lkdGg6IDMwJTsgfSB9XG4gIGhlYWRlciAuc2VhcmNoLWJveDEgLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjY2VkNGRhO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgaGVhZGVyIC5zZWFyY2gtYm94MS5vcGVuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYW5pbWF0aW9uOiB6b29tSW4gMC41cyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7IH1cbiAgaGVhZGVyIC5zZWFyY2gtYm94MS5zaG93IC5zZWFyY2gtc3VnZ2VzdGlvbiB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YwZjNmODtcbiAgICBoZWlnaHQ6IG1heC1jb250ZW50O1xuICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMTAwMG1zIGN1YmljLWJlemllcigwLjI3LCAwLjcsIDAsIDAuOTkpOyB9XG4gIGhlYWRlciAuc2VhcmNoLWJveDEgLmlucHV0LWdyb3VwLXRleHQge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgICBoZWFkZXIgLnNlYXJjaC1ib3gxIC5pbnB1dC1ncm91cC10ZXh0IC5mZWF0aGVyIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG5cbmhlYWRlciAucHJvZmlsZS1kcm9wZG93biB7XG4gIG1pbi13aWR0aDogMTYwcHg7IH1cbiAgaGVhZGVyIC5wcm9maWxlLWRyb3Bkb3duIHVsIHtcbiAgICBwYWRkaW5nOiAxMHB4IDA7IH1cbiAgICBoZWFkZXIgLnByb2ZpbGUtZHJvcGRvd24gdWwgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiA1cHggMjBweDsgfVxuXG4uYnJhbmQtbG9nbyAuc3ZnLWljb24ge1xuICB3aWR0aDogMjVweDtcbiAgaGVpZ2h0OiAyNXB4O1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgYW5pbWF0aW9uLW5hbWU6IHNwaW5uZXI7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogM3M7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuYnJhbmQtbG9nbyAuc3ZnLWljb24ge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogNXB4OyB9XG4gIC5icmFuZC1sb2dvIC5zdmctaWNvbiAuZmlsbC1jb2xvciB7XG4gICAgZmlsbDogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG5cbkBrZXlmcmFtZXMgc3Bpbm5lciB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWSgwZGVnKTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVZKC0zNjBkZWcpOyB9IH1cblxuLmNhdGVnb3J5LW1lbnUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHtcbiAgICBwYWRkaW5nOiAyMHB4OyB9XG4gICAgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHVsIGxpIHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuY2F0ZWdvcnktbWVudSAuY2F0ZWdvcnktZHJvcGRvd24gdWwgbGkgYSB7XG4gICAgICAgIGNvbG9yOiAjMjMyMzIzO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuICAgICAgICAuY2F0ZWdvcnktbWVudSAuY2F0ZWdvcnktZHJvcGRvd24gdWwgbGkgYTpob3ZlciwgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHVsIGxpIGE6Zm9jdXMsIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaSBhOmFjdGl2ZSwgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHVsIGxpIGEuYWN0aXZlIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG5cbi5jbG9zZS1idG4ge1xuICBwYWRkaW5nOiAyMHB4O1xuICBmb250LXNpemU6IDE4cHg7XG4gIGNvbG9yOiAjMjMyMzIzO1xuICBmb250LXdlaWdodDogNTAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NlZDRkYTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLmNsb3NlLWJ0biBpIHtcbiAgICBmb250LXNpemU6IDE0cHg7IH1cblxuLm1vYmlsZS1tZW51IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB6LWluZGV4OiAzO1xuICBib3gtc2hhZG93OiAwIDJweCA3cHggM3B4IHJnYmEoMTY4LCAxNjgsIDE2OCwgMC4yKTsgfVxuICBbZGlyPVwicnRsXCJdIC5tb2JpbGUtbWVudSB7XG4gICAgbGVmdDogMDsgfVxuICAubW9iaWxlLW1lbnUgdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5tb2JpbGUtbWVudSB1bCB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgLm1vYmlsZS1tZW51IHVsIGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAubW9iaWxlLW1lbnUgdWwgbGkgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogcmdiYSgzNSwgMzUsIDM1LCAwLjQpOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgICAgICAgIC5tb2JpbGUtbWVudSB1bCBsaSBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG4gICAgICAgIC5tb2JpbGUtbWVudSB1bCBsaSBhLmFjdGl2ZSwgLm1vYmlsZS1tZW51IHVsIGxpIGE6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgICAgLm1vYmlsZS1tZW51IHVsIGxpIGEgc3ZnIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICBzdHJva2Utd2lkdGg6IDEuNXB4OyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgICAgICAubW9iaWxlLW1lbnUgdWwgbGkgYSBzdmcge1xuICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7IH0gfVxuICAgICAgICAubW9iaWxlLW1lbnUgdWwgbGkgYSBzcGFuIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuY2F0ZWdvcnktbWVudSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHtcbiAgICAgIHRvcDogNzBweDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiA4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC4zcztcbiAgICAgIG1pbi13aWR0aDogMjUwcHg7XG4gICAgICBib3gtc2hhZG93OiAzLjM0NnB4IDMuNzE2cHggMjIuNXB4IHJnYmEoMCwgMCwgMCwgMC4wNyk7IH1cbiAgICAgIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51ID4gYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHVsIGxpLnN1Ym1lbnUgPiBhOjphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHVsIGxpLnN1Ym1lbnUgPiBhOjphZnRlciB7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpOyB9XG4gICAgICAuY2F0ZWdvcnktbWVudSAuY2F0ZWdvcnktZHJvcGRvd24gdWwgbGkuc3VibWVudSAuY2F0ZWdvcnktbWVnYS1tZW51IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICBsZWZ0OiA5NSU7XG4gICAgICAgIGJveC1zaGFkb3c6IDMuMzQ2cHggMy43MTZweCAyMi41cHggcmdiYSgwLCAwLCAwLCAwLjA3KTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAgICAgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHVsIGxpLnN1Ym1lbnUgLmNhdGVnb3J5LW1lZ2EtbWVudSAuY2F0ZWdvcnktY2hpbGRtZW51IC50aXRsZS1jYXRlZ29yeSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAgICAgICAuY2F0ZWdvcnktbWVudSAuY2F0ZWdvcnktZHJvcGRvd24gdWwgbGkuc3VibWVudSAuY2F0ZWdvcnktbWVnYS1tZW51IC5jYXRlZ29yeS1jaGlsZG1lbnUgdWwgbGkge1xuICAgICAgICAgIHBhZGRpbmc6IDVweCAwOyB9XG4gICAgICAuY2F0ZWdvcnktbWVudSAuY2F0ZWdvcnktZHJvcGRvd24gdWwgbGkuc3VibWVudTpob3ZlciAuY2F0ZWdvcnktbWVnYS1tZW51IHtcbiAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgdHJhbnNpdGlvbjogMC41czsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51OmhvdmVyIC5jYXRlZ29yeS1tZWdhLW1lbnUge1xuICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICBsZWZ0OiAxMDAlOyB9XG4gICAgLmNhdGVnb3J5LW1lbnU6aG92ZXIgLmNhdGVnb3J5LWRyb3Bkb3duIHtcbiAgICAgIHRvcDogNTBweDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51IC5jYXRlZ29yeS1tZWdhLW1lbnUge1xuICAgIG1pbi13aWR0aDogNzIwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTM2NnB4KSB7XG4gIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51IC5jYXRlZ29yeS1tZWdhLW1lbnUge1xuICAgIG1pbi13aWR0aDogODUwcHg7IH0gfVxuXG4uY2F0ZWdvcnktbWVudSAuY2F0ZWdvcnktZHJvcGRvd24gLnRpdGxlLWNhdGVnb3J5IGg2IHtcbiAgZm9udC1zaXplOiAxNHB4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgaGVhZGVyIC5jYXRlZ29yeS1kcm9wZG93biB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgd2lkdGg6IDMwMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBsZWZ0OiAtMzAwcHg7XG4gICAgei1pbmRleDogOTk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuICAgIGhlYWRlciAuY2F0ZWdvcnktZHJvcGRvd24ub3BlbiB7XG4gICAgICBsZWZ0OiAwOyB9XG4gIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjhweDtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51IGEgLmFjY29yZGluZy1tZW51IHtcbiAgICAgIHJpZ2h0OiAwOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51IGEgLmFjY29yZGluZy1tZW51IHtcbiAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICBsZWZ0OiAwOyB9XG4gICAgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHVsIGxpLnN1Ym1lbnUgLmNhdGVnb3J5LW1lZ2EtbWVudSB7XG4gICAgICBwYWRkaW5nOiAwIDE1cHg7IH1cbiAgICAgIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51IC5jYXRlZ29yeS1tZWdhLW1lbnUgPiBsaSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICAgICAuY2F0ZWdvcnktbWVudSAuY2F0ZWdvcnktZHJvcGRvd24gdWwgbGkuc3VibWVudSAuY2F0ZWdvcnktbWVnYS1tZW51IC5jYXRlZ29yeS1jaGlsZG1lbnUgLnRpdGxlLWNhdGVnb3J5IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiA2cHggMDsgfVxuICAgICAgICAuY2F0ZWdvcnktbWVudSAuY2F0ZWdvcnktZHJvcGRvd24gdWwgbGkuc3VibWVudSAuY2F0ZWdvcnktbWVnYS1tZW51IC5jYXRlZ29yeS1jaGlsZG1lbnUgLnRpdGxlLWNhdGVnb3J5IGg2IHtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgICAgIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51IC5jYXRlZ29yeS1tZWdhLW1lbnUgLmNhdGVnb3J5LWNoaWxkbWVudSAudGl0bGUtY2F0ZWdvcnkgLmFjY29yZGluZy1tZW51IHtcbiAgICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgICByaWdodDogMDsgfVxuICAgICAgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duIHVsIGxpLnN1Ym1lbnUgLmNhdGVnb3J5LW1lZ2EtbWVudSAuY2F0ZWdvcnktY2hpbGRtZW51IHVsIHtcbiAgICAgICAgcGFkZGluZzogMCAxNXB4OyB9XG4gICAgICAgIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biB1bCBsaS5zdWJtZW51IC5jYXRlZ29yeS1tZWdhLW1lbnUgLmNhdGVnb3J5LWNoaWxkbWVudSB1bCBsaSB7XG4gICAgICAgICAgcGFkZGluZzogNnB4IDA7IH1cbiAgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LWRyb3Bkb3duID4gdWwge1xuICAgIHBhZGRpbmc6IDIwcHggMTVweDsgfVxuICAgIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1kcm9wZG93biA+IHVsID4gbGkgPiBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5jYXRlZ29yeS1tZW51IC5jYXRlZ29yeS1iYW5uZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5oZWFkZXIgLnRvcC1oZWFkZXIge1xuICBwYWRkaW5nOiAxNnB4IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGYzZjg7IH1cbiAgaGVhZGVyIC50b3AtaGVhZGVyLWJsYWNrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTsgfVxuICBoZWFkZXIgLnRvcC1oZWFkZXItd2hpdGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgaGVhZGVyIC50b3AtaGVhZGVyIHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMDsgfSB9XG4gIGhlYWRlciAudG9wLWhlYWRlciAucm93IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIGhlYWRlciAudG9wLWhlYWRlciAucm93IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfSB9XG4gIGhlYWRlciAudG9wLWhlYWRlciAuYm9yZGVyLWxpc3Qge1xuICAgIHBhZGRpbmctcmlnaHQ6IDZweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gaGVhZGVyIC50b3AtaGVhZGVyIC5ib3JkZXItbGlzdCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICAgIHBhZGRpbmctbGVmdDogNnB4OyB9XG4gICAgaGVhZGVyIC50b3AtaGVhZGVyIC5ib3JkZXItbGlzdCA+IGxpIHtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTVweDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSBoZWFkZXIgLnRvcC1oZWFkZXIgLmJvcmRlci1saXN0ID4gbGkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHVuc2V0O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTVweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgICAgICBoZWFkZXIgLnRvcC1oZWFkZXIgLmJvcmRlci1saXN0ID4gbGkge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDsgfSB9XG4gICAgICBoZWFkZXIgLnRvcC1oZWFkZXIgLmJvcmRlci1saXN0ID4gbGkgYSB7XG4gICAgICAgIGNvbG9yOiAjMjMyMzIzOyB9XG4gICAgICAgIGhlYWRlciAudG9wLWhlYWRlciAuYm9yZGVyLWxpc3QgPiBsaSBhIGkge1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4OyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSBoZWFkZXIgLnRvcC1oZWFkZXIgLmJvcmRlci1saXN0ID4gbGkgYSBpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7IH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgICAgIGhlYWRlciAudG9wLWhlYWRlciAuYm9yZGVyLWxpc3QgPiBsaSBhIGkge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDlweDsgfSB9XG4gICAgICBoZWFkZXIgLnRvcC1oZWFkZXIgLmJvcmRlci1saXN0ID4gbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSBoZWFkZXIgLnRvcC1oZWFkZXIgLmJvcmRlci1saXN0ID4gbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICAgIGhlYWRlciAudG9wLWhlYWRlciAuYm9yZGVyLWxpc3QgPiBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAgIGhlYWRlciAudG9wLWhlYWRlciAuYm9yZGVyLWxpc3QgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIGhlYWRlciAudG9wLWhlYWRlciAuYm9yZGVyLWxpc3QgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgaGVhZGVyIC50b3AtaGVhZGVyIC5ib3JkZXItbGlzdCA+IGxpICsgbGkge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMzUsIDM1LCAzNSwgMC4xNSk7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSBoZWFkZXIgLnRvcC1oZWFkZXIgLmJvcmRlci1saXN0ID4gbGkgKyBsaSB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMzUsIDM1LCAzNSwgMC4xNSk7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICBoZWFkZXIgLnRvcC1oZWFkZXIgLmJvcmRlci1saXN0ID4gbGk6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIGhlYWRlciAudG9wLWhlYWRlciAuZHJvcGRvd24ge1xuICAgICAgZm9udC1zaXplOiAxM3B4OyB9IH1cbiAgaGVhZGVyIC50b3AtaGVhZGVyIC5kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBoZWFkZXIgLnRvcC1oZWFkZXIgLmRyb3Bkb3duLnRvcC1oZWFkZXItZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgbGkgLmRyb3Bkb3duLWl0ZW06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG5oZWFkZXIgLm1haW4tbWVudSB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICBoZWFkZXIgLm1haW4tbWVudSAubWVudS1sZWZ0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgaGVhZGVyIC5tYWluLW1lbnUgLm1lbnUtcmlnaHQge1xuICAgICAgcGFkZGluZy1yaWdodDogOHB4OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIGhlYWRlciAubWFpbi1tZW51IC5tZW51LXJpZ2h0IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogOHB4OyB9IH1cbiAgaGVhZGVyIC5tYWluLW1lbnUgLm1lbnUtcmlnaHQgLnNlYXJjaC1ib3gge1xuICAgIHBhZGRpbmc6IDEwcHggMTJweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICBoZWFkZXIgLm1haW4tbWVudSAubWVudS1yaWdodCAuc2VhcmNoLWJveC5ibGFjay1zZWFyY2gtaWNvbiB7XG4gICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMzY2cHgpIHtcbiAgICAgIGhlYWRlciAubWFpbi1tZW51IC5tZW51LXJpZ2h0IC5zZWFyY2gtYm94IHtcbiAgICAgICAgcGFkZGluZzogNnB4IDhweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICBoZWFkZXIgLm1haW4tbWVudSAubWVudS1yaWdodCAuc2VhcmNoLWJveCB7XG4gICAgICAgIHBhZGRpbmc6IDRweCA2cHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgaGVhZGVyIC5tYWluLW1lbnUgLm1lbnUtcmlnaHQgLnNlYXJjaC1ib3ggc3ZnIHtcbiAgICAgICAgd2lkdGg6IDE2cHg7IH0gfVxuICBoZWFkZXIgLm1haW4tbWVudSAubWVudS1yaWdodCA+IHVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICBoZWFkZXIgLm1haW4tbWVudSAubWVudS1yaWdodCA+IHVsID4gbGkgc3ZnIHtcbiAgICAgIHdpZHRoOiAyMHB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgICAgIGhlYWRlciAubWFpbi1tZW51IC5tZW51LXJpZ2h0ID4gdWwgPiBsaSBzdmcge1xuICAgICAgICAgIHdpZHRoOiAxOHB4OyB9IH1cbiAgICBoZWFkZXIgLm1haW4tbWVudSAubWVudS1yaWdodCA+IHVsID4gbGkgKyBsaSB7XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSBoZWFkZXIgLm1haW4tbWVudSAubWVudS1yaWdodCA+IHVsID4gbGkgKyBsaSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICBoZWFkZXIgLm1haW4tbWVudSAubWVudS1yaWdodCA+IHVsID4gbGkgKyBsaSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIGhlYWRlciAubWFpbi1tZW51IC5tZW51LXJpZ2h0ID4gdWwgPiBsaSArIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfSB9XG4gIGhlYWRlciAubWFpbi1tZW51IC5tZW51LXJpZ2h0IC5jYXJ0LW1lZGlhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgaGVhZGVyIC5tYWluLW1lbnUgLm1lbnUtcmlnaHQgLmNhcnQtbWVkaWEgLmNhcnQtaWNvbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIGhlYWRlciAubWFpbi1tZW51IC5tZW51LXJpZ2h0IC5jYXJ0LW1lZGlhIC5jYXJ0LWljb24gLmxhYmVsIHtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTZweDtcbiAgICAgICAgcmlnaHQ6IC04cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIGhlYWRlciAubWFpbi1tZW51IC5tZW51LXJpZ2h0IC5jYXJ0LW1lZGlhIC5jYXJ0LWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBoZWFkZXIgLm1haW4tbWVudSAubWVudS1yaWdodCAuY2FydC1tZWRpYSAuY2FydC1jb250ZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAgIGhlYWRlciAubWFpbi1tZW51IC5tZW51LXJpZ2h0IC5jYXJ0LW1lZGlhIC5jYXJ0LWNvbnRlbnQgaDYge1xuICAgICAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgICAgaGVhZGVyIC5tYWluLW1lbnUgLm1lbnUtcmlnaHQgLmNhcnQtbWVkaWEgLmNhcnQtY29udGVudCBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIGhlYWRlciAubWFpbi1tZW51IC5tZW51LXJpZ2h0IC5jYXJ0LW1lZGlhIC5jYXJ0LWNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgaGVhZGVyIC5tYWluLW1lbnUgbmF2IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIGhlYWRlciAubWFpbi1tZW51IG5hdiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIGhlYWRlciAubWFpbi1tZW51IG5hdiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gaGVhZGVyIC5tYWluLW1lbnUgbmF2IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH0gfVxuXG5oZWFkZXIgLmNhdGVnb3J5LW1lbnUge1xuICBtYXJnaW4tbGVmdDogMzBweDsgfVxuICBbZGlyPVwicnRsXCJdIGhlYWRlciAuY2F0ZWdvcnktbWVudSB7XG4gICAgbWFyZ2luLWxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMzY2cHgpIHtcbiAgICBoZWFkZXIgLmNhdGVnb3J5LW1lbnUge1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gaGVhZGVyIC5jYXRlZ29yeS1tZW51IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgaGVhZGVyIC5jYXRlZ29yeS1tZW51IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIGhlYWRlciAuY2F0ZWdvcnktbWVudSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfSB9XG4gIGhlYWRlciAuY2F0ZWdvcnktbWVudSAuYnRuIHtcbiAgICBwYWRkaW5nOiA5cHggMThweDtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBoZWFkZXIgLmNhdGVnb3J5LW1lbnUgLmJ0biB7XG4gICAgICAgIHBhZGRpbmc6IDZweCAxMnB4OyB9IH1cbiAgICBoZWFkZXIgLmNhdGVnb3J5LW1lbnUgLmJ0biBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDVweDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSBoZWFkZXIgLmNhdGVnb3J5LW1lbnUgLmJ0biBpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNXB4OyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBuYXYgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuaGVhZGVyIC5tYWluLW5hdmJhciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBkaXJlY3Rpb246IGx0cjtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICBbZGlyPVwicnRsXCJdIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51IHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgKyBsaSArIGxpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpICsgbGkgKyBsaSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSArIGxpICsgbGkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSArIGxpICsgbGkge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpID4gYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogIzIzMjMyMztcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuOHB4OyB9XG4gICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpLmFjdGl2ZSA+IGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM1LCAzNSwgMzUsIDAuMSk7IH1cbiAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBib3gtc2hhZG93OiAwIDFweCA1cHggMCByZ2JhKDkwLCA5MCwgOTAsIDAuMik7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgd2lkdGg6IDMwMHB4ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSB7XG4gICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgcmlnaHQ6IDA7IH1cbiAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiA1cHggMDsgfVxuICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIGEge1xuICAgICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcHggMjVweCAzcHggNDBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDdlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIGEge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAzcHggNDBweCAzcHggMjVweDsgfVxuICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgYSBzcGFuIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMHB4IDEwcHg7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA4cHggMTVweCAtOHB4IHZhcigtLWJhZGdlLWNvbG9yKTtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIGEgc3Bhbjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMDc7IH1cbiAgICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgYSBzcGFuLnRyZW4tYnVkZ2Uge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlZmYyZjc7IH1cbiAgICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgYSBzcGFuLnRvcC1idWRnZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNlZmYyZjc7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzdlN2U3ZTsgfVxuICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgYSAubGFiZWwge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmYwMDAwO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDNweDsgfVxuICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgYS5tZW51LXRpdGxlLWxldmVsMTphZnRlciwgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgYS5zdWJtZW51LXRpdGxlOmFmdGVyIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTsgfVxuICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgYS5hcnJvdy1jbHM6YWZ0ZXIge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7IH1cbiAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIGE6aG92ZXIge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogM3B4O1xuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSBsaSAubmF2LXN1Yi1jaGlsZG1lbnUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgcmlnaHQ6IC0yMDBweDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMTVweCAwO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDFweCAwICNlYmViZWI7IH1cbiAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDQ7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDVweCAwIHJnYmEoOTAsIDkwLCA5MCwgMC4yKTtcbiAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyLnBvc3Rlci1iZy1pbWFnZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy92b3hvLnBuZyk7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lci5wb3N0ZXItYmctaW1hZ2Uge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1bnNldDsgfSB9XG4gICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lci5wb3N0ZXItYmctaW1hZ2UgLmZsb2F0aW5nLWltZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDYwdmg7XG4gICAgICAgICAgICBhbmltYXRpb246IGZsb2F0aW5nIDExMHMgbGluZWFyIGluZmluaXRlIHJldmVyc2U7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXggIWltcG9ydGFudDsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCB7XG4gICAgICAgICAgd2lkdGg6IDE2JTsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IGEgLmxhYmVsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmYwMDAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgM3B4OyB9XG4gICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS10aXRsZSBoNSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNHB4OyB9XG4gICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS1jb250ZW50IHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS1jb250ZW50IHVsIGxpIHtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMDsgfVxuICAgICAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5zdWJtZW51LWNvbnRlbnQgdWwgbGkgYSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcHggMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wN2VtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjk7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS1jb250ZW50IHVsIGxpIGEge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wM2VtOyB9IH1cbiAgICAgICAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5zdWJtZW51LWNvbnRlbnQgdWwgbGkgYSBzcGFuIHtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweCAxMHB4O1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjI2LCAzNiwgODQsIDAuMDcpO1xuICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA4cHggMTVweCAtOHB4IHZhcigtLWJhZGdlLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cbiAgICAgICAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IC5saW5rLXNlY3Rpb24gLnN1Ym1lbnUtY29udGVudCB1bCBsaSBhIHNwYW4udHJlbi1idWRnZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWZmMmY3OyB9XG4gICAgICAgICAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5zdWJtZW51LWNvbnRlbnQgdWwgbGkgYSBzcGFuLnRvcC1idWRnZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZWZmMmY3O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2U3ZTdlOyB9XG4gICAgICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS1jb250ZW50IHVsIGxpIGEgaW1nIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS1jb250ZW50IHVsIGxpIGE6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcikgIWltcG9ydGFudDsgfVxuICAgICAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IC5saW5rLXNlY3Rpb24gLnN1Ym1lbnUtY29udGVudCB1bCBsaSBhLm1lZ2FtZW51LWltYWdlIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDtcbiAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgICAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IC5saW5rLXNlY3Rpb24gLnN1Ym1lbnUtY29udGVudCB1bCBsaSBhLm1lZ2FtZW51LWltYWdlIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7IH1cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAgICAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IC5saW5rLXNlY3Rpb24gLnN1Ym1lbnUtY29udGVudCB1bCBsaSBhLm1lZ2FtZW51LWltYWdlIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IGJsdXIoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE4MHB4OyB9IH1cbiAgICAgICAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IC5saW5rLXNlY3Rpb24gLnN1Ym1lbnUtY29udGVudCB1bCBsaSBhLm1lZ2FtZW51LWltYWdlOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS1jb250ZW50IHVsIGxpIGEubWVnYW1lbnUtaW1hZ2U6aG92ZXIgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IGJsdXIoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS1jb250ZW50IHVsIGxpLmhpZ2hsaWdodC1saW5rIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5zdWJtZW51LWNvbnRlbnQgdWwgbGkuaGlnaGxpZ2h0LWxpbmsgaSB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiArIC5saW5rLXNlY3Rpb24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDsgfVxuICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaS5tZWdhLW1lbnUge1xuICAgICAgICBwb3NpdGlvbjogdW5zZXQ7IH1cbiAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaS5tZWdhLW1lbnUuaG9tZS1tZW51IC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIHVsIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaS5tZWdhLW1lbnUuaG9tZS1tZW51IHVsIGxpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkubWVnYS1tZW51LmhvbWUtbWVudSB1bCBsaSAubWVnYW1lbnUtaW1hZ2Uge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkubWVnYS1tZW51LmhvbWUtbWVudSB1bCBsaSAubWVnYW1lbnUtaW1hZ2Uge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTgwcHg7IH0gfVxuICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaS5tZWdhLW1lbnUuaG9tZS1tZW51IHVsIGxpIC5tZWdhbWVudS1pbWFnZSBpbWcge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTsgfVxuICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaS5tZWdhLW1lbnUuaG9tZS1tZW51IHVsIGxpIC5tZWdhbWVudS1pbWFnZSBpbWcge1xuICAgICAgICAgICAgICAgICAgZmlsdGVyOiBibHVyKDApOyB9IH1cbiAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkubWVnYS1tZW51LmhvbWUtbWVudSB1bCBsaSAubWVnYW1lbnUtaW1hZ2U6aG92ZXIge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpLm1lZ2EtbWVudS5ob21lLW1lbnUgdWwgbGkgLm1lZ2FtZW51LWltYWdlOmhvdmVyIGltZyB7XG4gICAgICAgICAgICAgICAgZmlsdGVyOiBibHVyKDApO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkubWVnYS1tZW51LmhvbWUtbWVudSAubWVnYW1lbnUtaW1hZ2UtdGl0bGUge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkubWVnYS1tZW51LmhvbWUtbWVudSAubWVnYW1lbnUtaW1hZ2UtdGl0bGUge1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5yZXNwb25zaXZlLWJ0biB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSB7XG4gICAgd2lkdGg6IDI1MHB4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOyB9XG4gICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgYSAuc3ViLWFycm93IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgdG9wOiA3cHg7XG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSBsaSAubGV2ZWwxIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7IH1cbiAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIC5sZXZlbDEgbGkgLmxldmVsMiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSBsaSAubGV2ZWwxIGxpIC5sZXZlbDIgbGkgLmxldmVsMyB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSBsaSAubGV2ZWwxIGxpIC5sZXZlbDIgbGk6aG92ZXIgLmxldmVsMyB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIC5sZXZlbDEgbGk6aG92ZXIgLmxldmVsMiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGk6aG92ZXIgLmxldmVsMSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIGE6aG92ZXIgLnN1Yi1hcnJvdyB7XG4gICAgICByaWdodDogMTZweDtcbiAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpLmRyb3Bkb3duIC5tZW51LXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMThweDsgfVxuICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkuZHJvcGRvd24gLm1lbnUtdGl0bGU6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG4gICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDsgfVxuICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOyB9XG4gIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGk6aG92ZXIgLm5hdi1zdWJtZW51IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHotaW5kZXg6IDQ7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBtYXJnaW4tdG9wOiAyOHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaTpob3ZlciAubWVnYS1tZW51LWNvbnRhaW5lciB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG1hcmdpbi10b3A6IDI4cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuICAudG9nZ2xlLW5hdiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubW9iaWxlLWJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHdpZHRoOiAzMDBweDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAxNTVweDtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICByaWdodDogLTMwMHB4O1xuICAgIHotaW5kZXg6IDk5O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjsgfVxuICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51Lm9wZW5uYXYge1xuICAgICAgcmlnaHQ6IDA7IH1cbiAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSAuYmFjay1idG4ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgLmJhY2stYnRuIC5tb2JpbGUtYmFjayB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSAuYmFjay1idG4gLm1vYmlsZS1iYWNrIGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpOm50aC1jaGlsZChuICsgMikge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyMjEsIDIyMSwgMjIxLCAwLjUpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDsgfVxuICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSBhIHtcbiAgICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSBhIC5zdWItYXJyb3cge1xuICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgYSAuc3ViLWFycm93OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIitcIjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpID4gdWwgbGkgYSAuYWNjb3JkaW5nLW1lbnUge1xuICAgICAgICB0b3A6IDJweDsgfVxuICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSA+IHVsIGxpIHVsIGxpIGEgLmFjY29yZGluZy1tZW51IHtcbiAgICAgICAgdG9wOiAxcHg7IH1cbiAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSBsaSBhIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSBsaSBhOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogM3B4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5OyB9XG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIGE6YWZ0ZXIge1xuICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7IH1cbiAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSBsaSBhOmhvdmVyOjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUub3BlbnN1Ym1lbnUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIC5uYXYtc3ViLWNoaWxkbWVudSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgLm5hdi1zdWItY2hpbGRtZW51LnN1Ym1lbnUtY29udGVudC5sZXZlbDIgbGkgYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDYwcHg7IH1cbiAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5uYXYtc3VibWVudSBsaSAubmF2LXN1Yi1jaGlsZG1lbnUuc3VibWVudS1jb250ZW50LmxldmVsMiAubGV2ZWwzIGxpIGEge1xuICAgICAgICAgICAgcGFkZGluZzogMCA3MHB4OyB9XG4gICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LXN1Ym1lbnUgbGkgLm5hdi1zdWItY2hpbGRtZW51Lm9wZW5zdWJjaGlsZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1zdWJtZW51IGxpIC5uYXYtc3ViLWNoaWxkbWVudSBsaSBhIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNDVweDsgfVxuICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyLm9wZW5zdWJtZW51IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IC5saW5rLXNlY3Rpb24gLnN1Ym1lbnUtdGl0bGUge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5zdWJtZW51LXRpdGxlIGg1IHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOTtcbiAgICAgICAgICAgICAgcGFkZGluZzogMnB4IDI1cHg7IH1cbiAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IC5saW5rLXNlY3Rpb24gLnN1Ym1lbnUtdGl0bGUgLmFjY29yZGluZy1tZW51IHtcbiAgICAgICAgICAgICAgdG9wOiA3cHg7IH1cbiAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5zdWJtZW51LWNvbnRlbnQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiAuc3VibWVudS1jb250ZW50Lm9wZW5zdWJtZWdhbWVudSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDQ1cHg7IH1cbiAgICAgICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm1lZ2EtbWVudS1jb250YWluZXIgLm1lZ2EtYm94IC5saW5rLXNlY3Rpb24gLnN1Ym1lbnUtY29udGVudCB1bCBsaSBhIHtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOTsgfVxuICAgICAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5zdWJtZW51LWNvbnRlbnQgdWwgbGkgYTpob3ZlciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSA+IGxpIC5tZWdhLW1lbnUtY29udGFpbmVyIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5zdWJtZW51LWNvbnRlbnQgdWwgbGkgYTpob3ZlcjphZnRlciB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubWVnYS1tZW51LWNvbnRhaW5lciAubWVnYS1ib3ggLmxpbmstc2VjdGlvbiArIC5saW5rLXNlY3Rpb24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgPiBsaSAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOyB9XG4gICAgICAgIGhlYWRlciAubWFpbi1uYXZiYXIgLm5hdi1tZW51ID4gbGkgLm5hdi1saW5rLmFjdGl2ZTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOyB9XG4gICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgLm1vYmlsZS1wb3N0ZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogLTQxMHB4O1xuICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgcGFkZGluZzogMjBweCAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOyB9XG4gICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSAubW9iaWxlLXBvc3RlciBpbWcge1xuICAgICAgICB3aWR0aDogNTBweDsgfVxuICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgLm1vYmlsZS1wb3N0ZXIgLm1vYmlsZS1jb250YWluIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cbiAgICAgICAgaGVhZGVyIC5tYWluLW5hdmJhciAubmF2LW1lbnUgLm1vYmlsZS1wb3N0ZXIgLm1vYmlsZS1jb250YWluIGg1IHtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfVxuICAgICAgICBoZWFkZXIgLm1haW4tbmF2YmFyIC5uYXYtbWVudSAubW9iaWxlLXBvc3RlciAubW9iaWxlLWNvbnRhaW4gcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgIG1hcmdpbjogN3B4IDA7IH1cbiAgaGVhZGVyIC5tZW51IG5hdiB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4OyB9XG4gIC5tZWdhLWJveCAubGluay1zZWN0aW9uIC5kZW1vIHVsIGxpIGEgc3BhbiBpbWcge1xuICAgIHRvcDogMzBweDtcbiAgICByaWdodDogLTYwcHg7IH1cbiAgLm1lZ2EtYm94LmNvbCB7XG4gICAgZmxleC1iYXNpczogdW5zZXQ7IH1cbiAgLmFjY29yZGluZy1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDIwcHg7XG4gICAgdG9wOiAxMHB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuYWNjb3JkaW5nLW1lbnUge1xuICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgbGVmdDogMjBweDsgfSB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBob21lIHNlY3Rpb24gY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmhvbWUtc2VjdGlvbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmhvbWUtc2VjdGlvbiAuaG9tZS1zbGlkZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNzM2cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuaG9tZS1zZWN0aW9uIC5ob21lLXNsaWRlciB7XG4gICAgICBkaXJlY3Rpb246IHJ0bDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5ob21lLXNlY3Rpb24gLmhvbWUtc2xpZGVyIHtcbiAgICAgICAgaGVpZ2h0OiA2MDBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAuaG9tZS1zZWN0aW9uIC5ob21lLXNsaWRlciB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgIWltcG9ydGFudDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5ob21lLXNlY3Rpb24gLmhvbWUtc2xpZGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5ob21lLXNlY3Rpb24gLmhvbWUtc2xpZGVyIHtcbiAgICAgICAgaGVpZ2h0OiAzNzBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAuaG9tZS1zZWN0aW9uIC5ob21lLXNsaWRlciB7XG4gICAgICAgIGhlaWdodDogMzAwcHg7IH0gfVxuICAuaG9tZS1zZWN0aW9uIC5ob21lLXdyYXAge1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5ob21lLXNlY3Rpb24gLmhvbWUtd3JhcCBoNCB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMjBweCArICgyNCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIG1hcmdpbi10b3A6IC00cHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgLmhvbWUtc2VjdGlvbiAuaG9tZS13cmFwIGg0IHtcbiAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgxOCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTE5OSAtIDMyMCkpKTsgfSB9XG4gICAgLmhvbWUtc2VjdGlvbiAuaG9tZS13cmFwIGg2IHtcbiAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gICAgLmhvbWUtc2VjdGlvbiAuaG9tZS13cmFwIHAge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTYgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNjYwcHgpIHtcbiAgICAgICAgLmhvbWUtc2VjdGlvbiAuaG9tZS13cmFwIHAge1xuICAgICAgICAgIG1heC13aWR0aDogOTAlOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMzY2cHgpIHtcbiAgICAgICAgLmhvbWUtc2VjdGlvbiAuaG9tZS13cmFwIHAge1xuICAgICAgICAgIG1heC13aWR0aDogODAlOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuaG9tZS1zZWN0aW9uIC5ob21lLXdyYXAgcCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA4OSU7IH0gfVxuICAgIC5ob21lLXNlY3Rpb24gLmhvbWUtd3JhcCAuZGlzY292ZXItYmxvY2sge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygyMHB4ICsgKDQwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5ob21lLXNlY3Rpb24gLmhvbWUtd3JhcCAuZGlzY292ZXItYmxvY2sge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC5ob21lLXNlY3Rpb24gLmhvbWUtd3JhcCAuZGlzY292ZXItYmxvY2sge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH0gfVxuICAgICAgLmhvbWUtc2VjdGlvbiAuaG9tZS13cmFwIC5kaXNjb3Zlci1ibG9jayAuZC1mbGV4IHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLmhvbWUtc2VjdGlvbiAuaG9tZS13cmFwIC5kaXNjb3Zlci1ibG9jayAucGxheS1pY29uIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzBweCArICg1MCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDMwcHggKyAoNTAgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTYgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTsgfVxuICAgICAgICAuaG9tZS1zZWN0aW9uIC5ob21lLXdyYXAgLmRpc2NvdmVyLWJsb2NrIC5wbGF5LWljb246OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDEwcHgpO1xuICAgICAgICAgIGhlaWdodDogY2FsYygxMDAlICsgMTBweCk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgb3BhY2l0eTogMC4xO1xuICAgICAgICAgIGxlZnQ6IC01cHg7XG4gICAgICAgICAgdG9wOiAtNXB4O1xuICAgICAgICAgIHotaW5kZXg6IC0xOyB9XG4gICAgICAgIC5ob21lLXNlY3Rpb24gLmhvbWUtd3JhcCAuZGlzY292ZXItYmxvY2sgLnBsYXktaWNvbiBpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogM3B4OyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAuaG9tZS1zZWN0aW9uIC5ob21lLXdyYXAgLmRpc2NvdmVyLWJsb2NrIC5wbGF5LWljb24gaSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7IH1cbiAgICAgIC5ob21lLXNlY3Rpb24gLmhvbWUtd3JhcCAuZGlzY292ZXItYmxvY2sgLmRpc2NvdmVyLWNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgICAgICAuaG9tZS1zZWN0aW9uIC5ob21lLXdyYXAgLmRpc2NvdmVyLWJsb2NrIC5kaXNjb3Zlci1jb250ZW50IHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxOHB4OyB9IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuaG9tZS1zZWN0aW9uIC5ob21lLXdyYXAgLmRpc2NvdmVyLWJsb2NrIC5kaXNjb3Zlci1jb250ZW50IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdIC5ob21lLXNlY3Rpb24gLmhvbWUtd3JhcCAuZGlzY292ZXItYmxvY2sgLmRpc2NvdmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE4cHg7IH0gfVxuICAuaG9tZS1zZWN0aW9uIC5ob21lLXNvY2lhbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgLmhvbWUtc2VjdGlvbiAuaG9tZS1zb2NpYWwgdWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgIC5ob21lLXNlY3Rpb24gLmhvbWUtc29jaWFsIHVsIGxpIGEge1xuICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNiAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgICAgLmhvbWUtc2VjdGlvbiAuaG9tZS1zb2NpYWwgdWwgbGkgaW1nIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgICAgICAgLmhvbWUtc2VjdGlvbiAuaG9tZS1zb2NpYWwgdWwgbGkgaW1nIFtkaXI9XCJydGxcIl0ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuICAgICAgLmhvbWUtc2VjdGlvbiAuaG9tZS1zb2NpYWwgdWwgbGkgc3BhbiB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAtMnB4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBjb2xvcjogIzIxMjUyOTsgfVxuXG4ucG9zdGVyLXNlY3Rpb24tNiB7XG4gIGhlaWdodDogODUwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvdmVnZXRhYmxlL3BlcmNlbnRhZ2UuanBnKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNjYwcHgpIHtcbiAgICAucG9zdGVyLXNlY3Rpb24tNiB7XG4gICAgICBoZWlnaHQ6IDc1MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5wb3N0ZXItc2VjdGlvbi02IHtcbiAgICAgIGhlaWdodDogNjAwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAtNDFweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5wb3N0ZXItc2VjdGlvbi02IHtcbiAgICAgIGhlaWdodDogNDUwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAucG9zdGVyLXNlY3Rpb24tNiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMjFweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgIC5wb3N0ZXItc2VjdGlvbi02IHtcbiAgICAgIGhlaWdodDogMzUwcHg7IH0gfVxuICAucG9zdGVyLXNlY3Rpb24tNiAucHJldiB7XG4gICAgcmlnaHQ6IDExJSAhaW1wb3J0YW50O1xuICAgIGJvdHRvbTogMzMlO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5wb3N0ZXItc2VjdGlvbi02IC5wcmV2IHtcbiAgICAgIHJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgbGVmdDogNiUgIWltcG9ydGFudDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAucG9zdGVyLXNlY3Rpb24tNiAucHJldiBpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldCAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDE2NjBweCkge1xuICAgICAgLnBvc3Rlci1zZWN0aW9uLTYgLnByZXYge1xuICAgICAgICBib3R0b206IDM4JTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgICAgLnBvc3Rlci1zZWN0aW9uLTYgLnByZXYge1xuICAgICAgICBib3R0b206IDMwJTtcbiAgICAgICAgcmlnaHQ6IDEyJSAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAucG9zdGVyLXNlY3Rpb24tNiAucHJldiB7XG4gICAgICAgIGJvdHRvbTogMjQlO1xuICAgICAgICBsZWZ0OiA4MSUgIWltcG9ydGFudDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5wb3N0ZXItc2VjdGlvbi02IC5wcmV2IHtcbiAgICAgICAgICBsZWZ0OiA4JSAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC5wb3N0ZXItc2VjdGlvbi02IC5wcmV2IHtcbiAgICAgICAgYm90dG9tOiAxNyU7XG4gICAgICAgIGxlZnQ6IDc1JSAhaW1wb3J0YW50OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLnBvc3Rlci1zZWN0aW9uLTYgLnByZXYge1xuICAgICAgICAgIHJpZ2h0OiAxNiUgIWltcG9ydGFudDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAucG9zdGVyLXNlY3Rpb24tNiAucHJldiB7XG4gICAgICAgIGxlZnQ6IDclICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvdHRvbTogMzklOyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLnBvc3Rlci1zZWN0aW9uLTYgLnByZXYge1xuICAgICAgICAgIHJpZ2h0OiAyMSUgIWltcG9ydGFudDtcbiAgICAgICAgICBsZWZ0OiB1bnNldCAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5wb3N0ZXItc2VjdGlvbi02IC5wcmV2IHtcbiAgICAgICAgYm90dG9tOiAxOCU7XG4gICAgICAgIGxlZnQ6IDQwJSAhaW1wb3J0YW50OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLnBvc3Rlci1zZWN0aW9uLTYgLnByZXYge1xuICAgICAgICAgIGJvdHRvbTogMTUlO1xuICAgICAgICAgIGxlZnQ6IDQwJSAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgIC5wb3N0ZXItc2VjdGlvbi02IC5wcmV2IHtcbiAgICAgICAgYm90dG9tOiAyNSU7XG4gICAgICAgIGxlZnQ6IDQwJSAhaW1wb3J0YW50OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLnBvc3Rlci1zZWN0aW9uLTYgLnByZXYge1xuICAgICAgICAgIGJvdHRvbTogMjUlOyB9IH1cbiAgLnBvc3Rlci1zZWN0aW9uLTYgLm5leHQge1xuICAgIHJpZ2h0OiA1JSAhaW1wb3J0YW50O1xuICAgIGJvdHRvbTogMzMlO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5wb3N0ZXItc2VjdGlvbi02IC5uZXh0IHtcbiAgICAgIHJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgbGVmdDogMTIlICFpbXBvcnRhbnQ7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLnBvc3Rlci1zZWN0aW9uLTYgLm5leHQgaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE2cHggIWltcG9ydGFudDsgfVxuICAgIC5wb3N0ZXItc2VjdGlvbi02IC5uZXh0OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAtMjNweCAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDE2NjBweCkge1xuICAgICAgLnBvc3Rlci1zZWN0aW9uLTYgLm5leHQge1xuICAgICAgICBib3R0b206IDM4JTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgICAgLnBvc3Rlci1zZWN0aW9uLTYgLm5leHQge1xuICAgICAgICBib3R0b206IDMwJTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgLnBvc3Rlci1zZWN0aW9uLTYgLm5leHQge1xuICAgICAgICBib3R0b206IDI0JTtcbiAgICAgICAgcmlnaHQ6IDUlICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAucG9zdGVyLXNlY3Rpb24tNiAubmV4dCB7XG4gICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgIGxlZnQ6IDE2JSAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC5wb3N0ZXItc2VjdGlvbi02IC5uZXh0IHtcbiAgICAgICAgYm90dG9tOiAxNyU7XG4gICAgICAgIHJpZ2h0OiA2JSAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5wb3N0ZXItc2VjdGlvbi02IC5uZXh0IHtcbiAgICAgICAgbGVmdDogMTglICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvdHRvbTogMzklOyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLnBvc3Rlci1zZWN0aW9uLTYgLm5leHQge1xuICAgICAgICAgIHJpZ2h0OiA4JSAhaW1wb3J0YW50O1xuICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLnBvc3Rlci1zZWN0aW9uLTYgLm5leHQge1xuICAgICAgICBib3R0b206IDE4JTtcbiAgICAgICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAucG9zdGVyLXNlY3Rpb24tNiAubmV4dCB7XG4gICAgICAgICAgYm90dG9tOiAxNSU7XG4gICAgICAgICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgICAgLnBvc3Rlci1zZWN0aW9uLTYgLm5leHQge1xuICAgICAgICBib3R0b206IDI1JTtcbiAgICAgICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAucG9zdGVyLXNlY3Rpb24tNiAubmV4dCB7XG4gICAgICAgICAgYm90dG9tOiAyNSU7XG4gICAgICAgICAgbGVmdDogNDYlICFpbXBvcnRhbnQ7IH0gfVxuICAucG9zdGVyLXNlY3Rpb24tNiAuYmFja2dyb3VuZC1jaXJjbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBtYXJnaW4tdG9wOiAtNSU7XG4gICAgd2lkdGg6IDYwJTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNDYwcHgpIHtcbiAgICAgIC5wb3N0ZXItc2VjdGlvbi02IC5iYWNrZ3JvdW5kLWNpcmNsZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xJTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAucG9zdGVyLXNlY3Rpb24tNiAuYmFja2dyb3VuZC1jaXJjbGUge1xuICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTclOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5wb3N0ZXItc2VjdGlvbi02IC5iYWNrZ3JvdW5kLWNpcmNsZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yJTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAucG9zdGVyLXNlY3Rpb24tNiAuYmFja2dyb3VuZC1jaXJjbGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNSU7XG4gICAgICAgIHdpZHRoOiA4MCU7IH0gfVxuICAgIC5wb3N0ZXItc2VjdGlvbi02IC5iYWNrZ3JvdW5kLWNpcmNsZSBpbWcge1xuICAgICAgei1pbmRleDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgIGFuaW1hdGlvbjogcm91bmRlZCAyMHMgaW5maW5pdGUgbGluZWFyOyB9XG4gIC5wb3N0ZXItc2VjdGlvbi02IC5wb3N0ZXItaW1hZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgei1pbmRleDogMTsgfVxuICAgIC5wb3N0ZXItc2VjdGlvbi02IC5wb3N0ZXItaW1hZ2UgaW1nIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogNCU7XG4gICAgICBoZWlnaHQ6IDg1MHB4O1xuICAgICAgYW5pbWF0aW9uOiByb3RhdGUtZmxvd2VyIDQ1cyBpbmZpbml0ZSBsaW5lYXI7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNjYwcHgpIHtcbiAgICAgICAgLnBvc3Rlci1zZWN0aW9uLTYgLnBvc3Rlci1pbWFnZSBpbWcge1xuICAgICAgICAgIGhlaWdodDogODUwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgICAgICAucG9zdGVyLXNlY3Rpb24tNiAucG9zdGVyLWltYWdlIGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiA3NzVweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgIC5wb3N0ZXItc2VjdGlvbi02IC5wb3N0ZXItaW1hZ2UgaW1nIHtcbiAgICAgICAgICBoZWlnaHQ6IDYwMHB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAucG9zdGVyLXNlY3Rpb24tNiAucG9zdGVyLWltYWdlIGltZyB7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgaGVpZ2h0OiA0MzBweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA3JTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMjYlOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAucG9zdGVyLXNlY3Rpb24tNiAucG9zdGVyLWltYWdlIGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiA1NDBweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDUlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5wb3N0ZXItc2VjdGlvbi02IC5wb3N0ZXItaW1hZ2UgaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1JTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLnBvc3Rlci1zZWN0aW9uLTYgLnBvc3Rlci1pbWFnZSBpbWcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICAgIGhlaWdodDogNDAwcHg7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87IH0gfVxuICAucG9zdGVyLXNlY3Rpb24tNiAuc2xpZGVyLW5hdiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICByaWdodDogMTAwcHg7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5wb3N0ZXItc2VjdGlvbi02IC5zbGlkZXItbmF2IHtcbiAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgIGxlZnQ6IDEwMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDE2NjBweCkge1xuICAgICAgLnBvc3Rlci1zZWN0aW9uLTYgLnNsaWRlci1uYXYge1xuICAgICAgICByaWdodDogOTBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDE0NjBweCkge1xuICAgICAgLnBvc3Rlci1zZWN0aW9uLTYgLnNsaWRlci1uYXYge1xuICAgICAgICByaWdodDogNzVweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgLnBvc3Rlci1zZWN0aW9uLTYgLnNsaWRlci1uYXYge1xuICAgICAgICByaWdodDogNTBweDsgfSB9XG4gICAgLnBvc3Rlci1zZWN0aW9uLTYgLnNsaWRlci1uYXYgLnBvc3Rlci1pbWcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAucG9zdGVyLXNlY3Rpb24tNiAuc2xpZGVyLW5hdiAucG9zdGVyLWltZyB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLnBvc3Rlci1zZWN0aW9uLTYgLnNsaWRlci1uYXYgLnBvc3Rlci1pbWcge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgICAgLnBvc3Rlci1zZWN0aW9uLTYgLnNsaWRlci1uYXYgLnBvc3Rlci1pbWcgaW1nIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHotaW5kZXg6IDE7IH1cbiAgICAgIC5wb3N0ZXItc2VjdGlvbi02IC5zbGlkZXItbmF2IC5wb3N0ZXItaW1nIC5vdmVybGF5LWNvbG9yIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgxLCAxNTIsIDYwLCAwLjcpO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgb3BhY2l0eTogMDsgfVxuICAgICAgICAucG9zdGVyLXNlY3Rpb24tNiAuc2xpZGVyLW5hdiAucG9zdGVyLWltZyAub3ZlcmxheS1jb2xvciAuZmEtcGx1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICBwYWRkaW5nOiBjYWxjKDhweCArICgxMiAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuICAgIC5wb3N0ZXItc2VjdGlvbi02IC5zbGlkZXItbmF2IC5zbGljay1jdXJyZW50IC5vdmVybGF5LWNvbG9yIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMTAwJSk7XG4gICAgICBvcGFjaXR5OiAxOyB9XG5cbi5iYW5uZXItcGx1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMiU7XG4gIGxlZnQ6IDM4JTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTY2MHB4KSB7XG4gICAgLmJhbm5lci1wbHVzIHtcbiAgICAgIHRvcDogMTElO1xuICAgICAgbGVmdDogMzclOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDE0NjBweCkge1xuICAgIC5iYW5uZXItcGx1cyB7XG4gICAgICBsZWZ0OiAzNSU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgLmJhbm5lci1wbHVzIHtcbiAgICAgIHRvcDogMTAlO1xuICAgICAgbGVmdDogMzYlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5iYW5uZXItcGx1cyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLmJhbm5lci1wbHVzIGE6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgLmJhbm5lci1wbHVzIGEgLmZhLXBsdXMge1xuICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxOCAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBhbmltYXRpb246IHJpcHBsZS0yIDAuN3MgbGluZWFyIGluZmluaXRlOyB9XG5cbi5sZWZ0LXNpZGUtY29udGFpbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDIwJTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIFtkaXI9XCJydGxcIl0gLmxlZnQtc2lkZS1jb250YWluIHtcbiAgICBsZWZ0OiB1bnNldDtcbiAgICByaWdodDogMTAwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDE2NjBweCkge1xuICAgIC5sZWZ0LXNpZGUtY29udGFpbiB7XG4gICAgICBsZWZ0OiA5MHB4O1xuICAgICAgd2lkdGg6IDIzJTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNDYwcHgpIHtcbiAgICAubGVmdC1zaWRlLWNvbnRhaW4ge1xuICAgICAgd2lkdGg6IDI1JTtcbiAgICAgIGxlZnQ6IDc1cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgLmxlZnQtc2lkZS1jb250YWluIHtcbiAgICAgIGxlZnQ6IDQ1cHg7XG4gICAgICB3aWR0aDogMjclOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5sZWZ0LXNpZGUtY29udGFpbiB7XG4gICAgICB3aWR0aDogMjclO1xuICAgICAgbGVmdDogNTBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5sZWZ0LXNpZGUtY29udGFpbiB7XG4gICAgICBsZWZ0OiA1MHB4O1xuICAgICAgd2lkdGg6IDMwJTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5sZWZ0LXNpZGUtY29udGFpbiB7XG4gICAgICBsZWZ0OiA1MHB4O1xuICAgICAgd2lkdGg6IDM1JTsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAubGVmdC1zaWRlLWNvbnRhaW4ge1xuICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgcmlnaHQ6IDUwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAubGVmdC1zaWRlLWNvbnRhaW4ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgei1pbmRleDogMTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5sZWZ0LXNpZGUtY29udGFpbiAuYmFubmVyLWxlZnQge1xuICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgxLCAxNTIsIDYwLCAwLjcpO1xuICAgICAgcGFkZGluZzogY2FsYygyMHB4ICsgKDI4IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDVweCk7IH0gfVxuICAubGVmdC1zaWRlLWNvbnRhaW4gLmJhbm5lci1sZWZ0IGg0IHtcbiAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAubGVmdC1zaWRlLWNvbnRhaW4gLmJhbm5lci1sZWZ0IGg0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgY29sb3I6ICNmZmY7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLmxlZnQtc2lkZS1jb250YWluIC5iYW5uZXItbGVmdCBoNCBzcGFuIHtcbiAgICAgICAgY29sb3I6ICNkZGQgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfSB9XG4gIC5sZWZ0LXNpZGUtY29udGFpbiAuYmFubmVyLWxlZnQgaDEge1xuICAgIG1hcmdpbjogY2FsYyg1cHggKyAoMjAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgZm9udC1zaXplOiBjYWxjKDIzcHggKyAoNzAgLSAyMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5sZWZ0LXNpZGUtY29udGFpbiAuYmFubmVyLWxlZnQgaDEge1xuICAgICAgICBjb2xvcjogI2ZmZjsgfSB9XG4gICAgLmxlZnQtc2lkZS1jb250YWluIC5iYW5uZXItbGVmdCBoMSBzcGFuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cbiAgLmxlZnQtc2lkZS1jb250YWluIC5iYW5uZXItbGVmdCBwIHtcbiAgICBjb2xvcjogIzIxMjUyOTtcbiAgICBsZXR0ZXItc3BhY2luZzogMTBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5sZWZ0LXNpZGUtY29udGFpbiAuYmFubmVyLWxlZnQgcCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAubGVmdC1zaWRlLWNvbnRhaW4gLmJhbm5lci1sZWZ0IGgyIHtcbiAgICBjb2xvcjogIzIxMjUyOTtcbiAgICBmb250LXNpemU6IGNhbGMoMjBweCArICg0NSAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5sZWZ0LXNpZGUtY29udGFpbiAuYmFubmVyLWxlZnQgaDIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5sZWZ0LXNpZGUtY29udGFpbiAuYmFubmVyLWxlZnQgaDIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBjb2xvcjogI2ZmZjsgfSB9XG4gICAgLmxlZnQtc2lkZS1jb250YWluIC5iYW5uZXItbGVmdCBoMiBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxN3B4ICsgKDMyIC0gMTcpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLmxlZnQtc2lkZS1jb250YWluIC5iYW5uZXItbGVmdCBoMiBzcGFuIHtcbiAgICAgICAgICBjb2xvcjogI2RkZCAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH0gfVxuICAubGVmdC1zaWRlLWNvbnRhaW4gLmJhbm5lci1sZWZ0IC5iYW5uZXItYnRuLWdydXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLmxlZnQtc2lkZS1jb250YWluIC5iYW5uZXItbGVmdCAuYmFubmVyLWJ0bi1ncnVwIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5sZWZ0LXNpZGUtY29udGFpbiAuYmFubmVyLWxlZnQgLnBvc3Rlci1kZXRhaWxzIHtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICBtYXJnaW46IGNhbGMoNXB4ICsgKDIwIC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMDsgfVxuICAubGVmdC1zaWRlLWNvbnRhaW4gLmJhbm5lci1sZWZ0IC5jb2xvci1jaGFuZ2Uge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgLmxlZnQtc2lkZS1jb250YWluIC5iYW5uZXItbGVmdCAuY29sb3ItY2hhbmdlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgLmxlZnQtc2lkZS1jb250YWluIC5iYW5uZXItbGVmdCAuY29sb3ItY2hhbmdlIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDI1IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgICBmb250LXdlaWdodDogYm9sZGVyOyB9XG4gICAgLmxlZnQtc2lkZS1jb250YWluIC5iYW5uZXItbGVmdCAuY29sb3ItY2hhbmdlIGxpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjN2M3YzU7XG4gICAgICB3aWR0aDogY2FsYygxOHB4ICsgKDMwIC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgaGVpZ2h0OiBjYWxjKDE4cHggKyAoMzAgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICAgIC5sZWZ0LXNpZGUtY29udGFpbiAuYmFubmVyLWxlZnQgLmNvbG9yLWNoYW5nZSBsaTo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIHdpZHRoOiBjYWxjKDZweCArICgxMCAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoNnB4ICsgKDEwIC0gNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IH1cbiAgICAgIC5sZWZ0LXNpZGUtY29udGFpbiAuYmFubmVyLWxlZnQgLmNvbG9yLWNoYW5nZSBsaTpudGgtY2hpbGQoMikge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgICAgLmxlZnQtc2lkZS1jb250YWluIC5iYW5uZXItbGVmdCAuY29sb3ItY2hhbmdlIGxpOm50aC1jaGlsZCgyKTo6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuLnJpZ2h0LXNpZGUtY29udGFpbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDBweDtcbiAgcmlnaHQ6IDEwMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgei1pbmRleDogMTsgfVxuICBbZGlyPVwicnRsXCJdIC5yaWdodC1zaWRlLWNvbnRhaW4ge1xuICAgIHJpZ2h0OiB1bnNldDtcbiAgICBsZWZ0OiAxMDBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTY2MHB4KSB7XG4gICAgLnJpZ2h0LXNpZGUtY29udGFpbiB7XG4gICAgICByaWdodDogOTBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNDYwcHgpIHtcbiAgICAucmlnaHQtc2lkZS1jb250YWluIHtcbiAgICAgIHJpZ2h0OiA3NXB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5yaWdodC1zaWRlLWNvbnRhaW4ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5yaWdodC1zaWRlLWNvbnRhaW4gLnNvY2lhbC1pbWFnZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLnJpZ2h0LXNpZGUtY29udGFpbiAuc29jaWFsLWltYWdlICsgLnNvY2lhbC1pbWFnZSB7XG4gICAgICBtYXJnaW4tbGVmdDogMzBweDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAucmlnaHQtc2lkZS1jb250YWluIC5zb2NpYWwtaW1hZ2UgKyAuc29jaWFsLWltYWdlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMzBweDsgfVxuICAgIC5yaWdodC1zaWRlLWNvbnRhaW4gLnNvY2lhbC1pbWFnZSBhIHtcbiAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PVxuICAgIFNsaWNrIFNMaWRlciBDU1MgU3RhcnQgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5ib3gtYXJyb3cgLnNsaWNrLXByZXYge1xuICBsZWZ0OiBjYWxjKDVweCArICgyNSAtIDUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICB6LWluZGV4OiAxOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5ib3gtYXJyb3cgLnNsaWNrLXByZXYge1xuICAgICAgbGVmdDogMTBweDsgfSB9XG4gIC5ib3gtYXJyb3cgLnNsaWNrLXByZXY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYzMGFcIjtcbiAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBsZWZ0OiAwO1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIGZvbnQtc2l6ZTogNDBweDsgfVxuXG4uYm94LWFycm93IC5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgei1pbmRleDogMTsgfVxuICAuYm94LWFycm93IC5zbGljay1uZXh0OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMzBiXCI7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgZm9udC1zaXplOiA0MHB4OyB9XG5cbi5zbGljay1kb3RzIGxpIHtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDsgfVxuICAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4OyB9XG4gICAgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuc2xpY2stZG90cyBsaSBidXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWRlZGU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHdpZHRoOiAxMHB4O1xuICAgIGhlaWdodDogMTBweDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuc2xpY2stZG90cyBsaSBidXR0b246OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiOyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIFBvc3RlciBTZWN0aW9uIFNDU1MgU3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4ucG9zdGVyLXNlY3Rpb24gLnBvc3Rlci1pbWFnZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjNmODtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5wb3N0ZXItc2VjdGlvbiAucG9zdGVyLWltYWdlIC5wb3N0ZXItaW1hZ2UtZGV0YWlscyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiA0MiU7XG4gICAgbWFyZ2luLXJpZ2h0OiAzNXB4O1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgIC5wb3N0ZXItc2VjdGlvbiAucG9zdGVyLWltYWdlIC5wb3N0ZXItaW1hZ2UtZGV0YWlscyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNnB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgIC5wb3N0ZXItc2VjdGlvbiAucG9zdGVyLWltYWdlIC5wb3N0ZXItaW1hZ2UtZGV0YWlscyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfSB9XG4gICAgLnBvc3Rlci1zZWN0aW9uIC5wb3N0ZXItaW1hZ2UgLnBvc3Rlci1pbWFnZS1kZXRhaWxzIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDM1IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgbWFyZ2luLXRvcDogY2FsYyg1cHggKyAoMTAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5wb3N0ZXItc2VjdGlvbiAucG9zdGVyLWltYWdlIC5wb3N0ZXItaW1hZ2UtZGV0YWlscyBoNSB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxNSAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIG1hcmdpbi10b3A6IC0ycHg7IH1cbiAgICAucG9zdGVyLXNlY3Rpb24gLnBvc3Rlci1pbWFnZSAucG9zdGVyLWltYWdlLWRldGFpbHMgcCB7XG4gICAgICBjb2xvcjogIzM4MzgzODk5O1xuICAgICAgZm9udC1zaXplOiBjYWxjKDEwcHggKyAoMTMgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTsgfVxuICAgIC5wb3N0ZXItc2VjdGlvbiAucG9zdGVyLWltYWdlIC5wb3N0ZXItaW1hZ2UtZGV0YWlscyBoMyB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgzMCAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICBtYXJnaW46IGNhbGMoNXB4ICsgKDEwIC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMDsgfVxuICAgICAgLnBvc3Rlci1zZWN0aW9uIC5wb3N0ZXItaW1hZ2UgLnBvc3Rlci1pbWFnZS1kZXRhaWxzIGgzIHNwYW4ge1xuICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgyMCAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgQXJyaXZhbHMgU2NzcyBTdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5hcnJpdmFsLWltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAuYXJyaXZhbC1pbWFnZSAuYXJyaXZhbC1jb250YWluIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwMDAwOyB9XG4gICAgLmFycml2YWwtaW1hZ2UgLmFycml2YWwtY29udGFpbiAuYXJyaXZhbC1wcmljZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgICAgICAuYXJyaXZhbC1pbWFnZSAuYXJyaXZhbC1jb250YWluIC5hcnJpdmFsLXByaWNlIHtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICAuYXJyaXZhbC1pbWFnZSAuYXJyaXZhbC1jb250YWluIC5hcnJpdmFsLXByaWNlIHtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4OyB9IH1cbiAgICAuYXJyaXZhbC1pbWFnZSAuYXJyaXZhbC1jb250YWluIC5hcnJpdmFsLWZ1bGwge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgIGJvdHRvbTogMDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgICAgICAuYXJyaXZhbC1pbWFnZSAuYXJyaXZhbC1jb250YWluIC5hcnJpdmFsLWZ1bGwge1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgIC5hcnJpdmFsLWltYWdlIC5hcnJpdmFsLWNvbnRhaW4gLmFycml2YWwtZnVsbCB7XG4gICAgICAgICAgcGFkZGluZzogMTVweDsgfSB9XG4gICAgICAuYXJyaXZhbC1pbWFnZSAuYXJyaXZhbC1jb250YWluIC5hcnJpdmFsLWZ1bGwgaDMge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgIC5hcnJpdmFsLWltYWdlIC5hcnJpdmFsLWNvbnRhaW4gLnJhdGluZy1zdGFyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogMDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgICAgICAuYXJyaXZhbC1pbWFnZSAuYXJyaXZhbC1jb250YWluIC5yYXRpbmctc3RhciB7XG4gICAgICAgICAgcGFkZGluZzogMjBweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLmFycml2YWwtaW1hZ2UgLmFycml2YWwtY29udGFpbiAucmF0aW5nLXN0YXIge1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHg7IH0gfVxuICAgICAgLmFycml2YWwtaW1hZ2UgLmFycml2YWwtY29udGFpbiAucmF0aW5nLXN0YXIgbGkgLmZlYXRoZXIge1xuICAgICAgICBzdHJva2U6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgZmlsbDogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICB3aWR0aDogMThweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgICAgICAuYXJyaXZhbC1pbWFnZSAuYXJyaXZhbC1jb250YWluIC5yYXRpbmctc3RhciBsaSAuZmVhdGhlciB7XG4gICAgICAgICAgICB3aWR0aDogMTNweDsgfSB9XG4gICAgICAuYXJyaXZhbC1pbWFnZSAuYXJyaXZhbC1jb250YWluIC5yYXRpbmctc3RhciBsaTpudGgtY2hpbGQoNSkgLmZlYXRoZXIge1xuICAgICAgICBzdHJva2U6ICMwMDA7XG4gICAgICAgIGZpbGw6ICMwMDA7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgU3Vic3JpYmUgY3NzIFN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnN1YnNjcmliZS1zZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjNmNzsgfVxuICAuc3Vic2NyaWJlLXNlY3Rpb24tbGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGY4ZjA7IH1cbiAgLnN1YnNjcmliZS1zZWN0aW9uIC5zdWJzY3JpYmUtZGV0YWlscyB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLnN1YnNjcmliZS1zZWN0aW9uIC5zdWJzY3JpYmUtZGV0YWlscyBoMiB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMThweCArICgzMCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIG1hcmdpbi10b3A6IC0ycHg7IH1cbiAgICAuc3Vic2NyaWJlLXNlY3Rpb24gLnN1YnNjcmliZS1kZXRhaWxzIGg2IHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IC0zcHg7XG4gICAgICBsaW5lLWhlaWdodDogMS42OyB9XG4gIC5zdWJzY3JpYmUtc2VjdGlvbiAuc3Vic3JpYmUtaW5wdXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAuc3Vic2NyaWJlLXNlY3Rpb24gLnN1YnNyaWJlLWlucHV0IC5mb3JtLWNvbnRyb2wge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBzZXJ2aWNlIHNlY3Rpb24gY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDE0NjBweCkge1xuICAuc2VydmljZS1zZWN0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtM3B4OyB9IH1cblxuLnNlcnZpY2Utc2VjdGlvbiAuc2VydmljZS13cmFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuc2VydmljZS1zZWN0aW9uIC5zZXJ2aWNlLXdyYXAgLnNlcnZpY2UtaWNvbiBzdmcge1xuICAgIHdpZHRoOiA1NXB4O1xuICAgIGhlaWdodDogNTVweDtcbiAgICBmaWxsOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgc3Ryb2tlOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuc2VydmljZS1zZWN0aW9uIC5zZXJ2aWNlLXdyYXAgLnNlcnZpY2UtaWNvbiBzdmcge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTQ2MHB4KSB7XG4gICAgICAuc2VydmljZS1zZWN0aW9uIC5zZXJ2aWNlLXdyYXAgLnNlcnZpY2UtaWNvbiBzdmcge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5zZXJ2aWNlLXNlY3Rpb24gLnNlcnZpY2Utd3JhcCAuc2VydmljZS1pY29uIHN2ZyB7XG4gICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICBoZWlnaHQ6IDM1cHg7IH0gfVxuICAuc2VydmljZS1zZWN0aW9uIC5zZXJ2aWNlLXdyYXAgLnNlcnZpY2UtY29udGVudCBoMyB7XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5zZXJ2aWNlLXNlY3Rpb24gLnNlcnZpY2Utd3JhcCAuc2VydmljZS1jb250ZW50IGgzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4ICFpbXBvcnRhbnQ7IH0gfVxuICAuc2VydmljZS1zZWN0aW9uIC5zZXJ2aWNlLXdyYXAgLnNlcnZpY2UtY29udGVudCBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAtM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTsgfVxuXG4uc2VydmljZS1zZWN0aW9uLmFib3V0LXBhZ2UgLnNlcnZpY2Utd3JhcCAuc2VydmljZS1pY29uIHN2ZyB7XG4gIHdpZHRoOiA0NXB4O1xuICBoZWlnaHQ6IDQ1cHg7IH1cblxuLnNlcnZpY2Utc3R5bGUtMiAuc2VydmljZS13cmFwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogLTJweDsgfVxuICAuc2VydmljZS1zdHlsZS0yIC5zZXJ2aWNlLXdyYXAgLnNlcnZpY2UtaWNvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4uc2VydmljZS1zdHlsZS0yIC5yb3cgPiBkaXYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNlcnZpY2Utc3R5bGUtMiAucm93ID4gZGl2ICsgZGl2OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB3aWR0aDogMnB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmM2Y4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAuc2VydmljZS1zdHlsZS0yIC5yb3cgPiBkaXYgKyBkaXY6bnRoLWNoaWxkKDMpOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5zZXJ2aWNlLXN0eWxlLTIgLnJvdyA+IGRpdiArIGRpdjpudGgtY2hpbGQoZXZlbik6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIHByb2R1Y3QgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnRhYi1zZWN0aW9uIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgaDUge1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICBbZGlyPVwicnRsXCJdIC50YWItc2VjdGlvbiAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIGg1IHtcbiAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC50YWItc2VjdGlvbiAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIGg1Lm1haW4tdGl0bGUge1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAudGFiLXNlY3Rpb24gLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyBoNS5tYWluLXRpdGxlIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5yYXRpbmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogLTRweDsgfVxuICBbZGlyPVwicnRsXCJdIC5yYXRpbmcge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLnJhdGluZyBsaSBpIHtcbiAgICBjb2xvcjogI2MzYzNjMyAhaW1wb3J0YW50OyB9XG4gICAgLnJhdGluZyBsaSBpLnRoZW1lLWNvbG9yIHtcbiAgICAgIGNvbG9yOiAjZmZhMjAyICFpbXBvcnRhbnQ7IH1cblxuLmhlYXJ0LXdpc2hsaXN0IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTsgfVxuICAuaGVhcnQtd2lzaGxpc3QgLmZhciB7XG4gICAgbWFyZ2luLXRvcDogMXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuaGVhcnQtd2lzaGxpc3QgLmZhciB7XG4gICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7IH1cbiAgLmhlYXJ0LXdpc2hsaXN0OjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICBvcGFjaXR5OiAwLjE7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICB6LWluZGV4OiAtMTsgfVxuICAuaGVhcnQtd2lzaGxpc3QuaGVhcnQtY29sb3I6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4ucHJvZHVjdC1ib3gge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIFtkaXI9XCJydGxcIl0gLnByb2R1Y3QtYm94IHtcbiAgICBkaXJlY3Rpb246IHJ0bDsgfVxuICAucHJvZHVjdC1ib3g6aG92ZXIgLmltZy13cmFwcGVyIC5zaGFyZSB7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLnByb2R1Y3QtYm94OmhvdmVyIC5pbWctd3JhcHBlciAuc2hhcmUtb3BhY2l0eSB7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gIC5wcm9kdWN0LWJveDpob3ZlciAuaW1nLXdyYXBwZXIgLnNoYXJlLXBsdXMge1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAucHJvZHVjdC1ib3g6aG92ZXIgLmltZy13cmFwcGVyLmhvdmVyLWltYWdlOjphZnRlciB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAucHJvZHVjdC1ib3g6aG92ZXIgLmltZy13cmFwcGVyLnNxdXJlLWltYWdlOjphZnRlciB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAucHJvZHVjdC1ib3g6aG92ZXIgLmltZy13cmFwcGVyIC5jaXJjbGUtc2hhcGUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMTAwJSk7IH1cbiAgLnByb2R1Y3QtYm94OmhvdmVyIC5pbWctd3JhcHBlciAuYmFja2dyb3VuZC10ZXh0IHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlci5ob3Zlci1pbWFnZTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy92ZWdldGFibGUvZWZmZWN0MS5wbmcpO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTsgfVxuICAgIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIuc3F1cmUtaW1hZ2U6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvdmVnZXRhYmxlL2VmZmVjdC5wbmcpO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyLnNxdXJlLWltYWdlOjphZnRlciB7XG4gICAgICAgICAgb3BhY2l0eTogMTsgfSB9XG4gICAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAuY2lyY2xlLXNoYXBlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjMyLCAxMTUsIDIyLCAwLjA0KTtcbiAgICAgIHRvcDogLTgwcHg7XG4gICAgICBsZWZ0OiAtODBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA4NyU7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgIHRyYW5zaXRpb246IDAuNnMgZWFzZTtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0OyB9XG4gICAgICAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5jaXJjbGUtc2hhcGUtMSB7XG4gICAgICAgIHdpZHRoOiAzOTBweDtcbiAgICAgICAgaGVpZ2h0OiAzOTBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIzMiwgMTE1LCAyMiwgMC4wNCk7XG4gICAgICAgIHRvcDogLTEzMHB4O1xuICAgICAgICBsZWZ0OiAtMTMwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgdHJhbnNpdGlvbjogMC42cyBlYXNlOyB9XG4gICAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAuYmFja2dyb3VuZC10ZXh0IHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDkwcHg7XG4gICAgICByaWdodDogLTMwcHg7XG4gICAgICB3cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsO1xuICAgICAgdGV4dC1vcmllbnRhdGlvbjogbWl4ZWQ7XG4gICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgZm9udC1zaXplOiA2OHB4O1xuICAgICAgY29sb3I6IHJnYmEoMjMyLCAxMTUsIDIyLCAwLjEpO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogMC42cyBlYXNlOyB9XG4gIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAzMHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICB6LWluZGV4OiAyOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAge1xuICAgICAgICBib3R0b206IDIwcHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAge1xuICAgICAgICBib3R0b206IDE1cHg7IH0gfVxuICAgIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIC5jYXRlZ29yeS1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIGEsXG4gICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYnV0dG9uIHtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgICAgICAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCBhLFxuICAgICAgICAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCBidXR0b24ge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIGEsXG4gICAgICAgIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIGJ1dHRvbiB7XG4gICAgICAgICAgcGFkZGluZzogNXB4OyB9IH1cbiAgICAgIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIGE6OmFmdGVyLFxuICAgICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYnV0dG9uOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHotaW5kZXg6IC0xOyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYTo6YWZ0ZXIsIFtkaXI9XCJydGxcIl1cbiAgICAgICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYnV0dG9uOjphZnRlciB7XG4gICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgcmlnaHQ6IDA7IH1cbiAgICAgIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIGEgc3ZnLFxuICAgICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYnV0dG9uIHN2ZyB7XG4gICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICBoZWlnaHQ6IDE2cHg7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYSBzdmcsXG4gICAgICAgICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYnV0dG9uIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogMTRweDtcbiAgICAgICAgICAgIGhlaWdodDogMTRweDsgfSB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAgIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIGEgc3ZnLFxuICAgICAgICAgIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIGJ1dHRvbiBzdmcge1xuICAgICAgICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEzcHg7IH0gfVxuICAgICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYTpob3ZlcixcbiAgICAgIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIGJ1dHRvbjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgICAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCBhOmhvdmVyOjphZnRlcixcbiAgICAgICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYnV0dG9uOmhvdmVyOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzOyB9XG4gICAgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYSB7XG4gICAgICBjb2xvcjogIzIzMjMyMzsgfVxuICAgIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIGJ1dHRvbiB7XG4gICAgICBsaW5lLWhlaWdodDogMC44OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCB1bCBsaSArIGxpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0OyB9XG4gIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gICAgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgaDMgc3BhbiB7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgaDMgc3BhbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxuICAgIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIGg1IHtcbiAgICAgIG1hcmdpbjogNXB4IGF1dG8gNnB4IGF1dG87XG4gICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDE7XG4gICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAuc2l6ZS1ib3gge1xuICAgICAgbWFyZ2luLXRvcDogNXB4ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IC0xcHg7IH1cbiAgICAgIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5zaXplLWJveCBsaSB7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICBtYXJnaW46IDFweDtcbiAgICAgICAgcGFkZGluZzogMnB4IDZweDtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGY3ZWY7IH1cbiAgICAgIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5zaXplLWJveC0yIGxpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNzsgfVxuICAgIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtNHB4OyB9XG4gICAgICAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAucmF0aW5nLnJhdGluZy0yIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4OyB9XG4gICAgICAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAucmF0aW5nIGxpIGkge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGNvbG9yOiAjYzNjM2MzOyB9XG4gICAgICAgIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmcgbGkgaS50aGVtZS1jb2xvciB7XG4gICAgICAgICAgY29sb3I6ICNmZmEyMDI7IH1cbiAgLnByb2R1Y3QtYm94IC5sYWJlbC1kYXJrIHtcbiAgICBsZWZ0OiAwOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAucHJvZHVjdC1ib3ggLmxhYmVsLWRhcmsge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICByaWdodDogMDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LWJveCAubGFiZWwtZGFyayB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5wcm9kdWN0LWJveCAubGFiZWwtdGhlbWUge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICByaWdodDogMDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnByb2R1Y3QtYm94IC5sYWJlbC10aGVtZSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgIGxlZnQ6IDA7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gW2Rpcj1cInJ0bFwiXSAucHJvZHVjdC1ib3ggLmxhYmVsLXRoZW1lIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5wcm9kdWN0LWJveDpob3ZlciAuY2FydC13cmFwIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgICAucHJvZHVjdC1ib3g6aG92ZXIgLmNhcnQtd3JhcCB1bCBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICBhbmltYXRpb246IGZhZGVJblVwIDQwMG1zIGVhc2UtaW4tb3V0OyB9XG4gICAgLnByb2R1Y3QtYm94OmhvdmVyIC5jYXJ0LXdyYXAgdWwgbGk6bnRoLWNoaWxkKDIpIHtcbiAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgNjAwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAucHJvZHVjdC1ib3g6aG92ZXIgLmNhcnQtd3JhcCB1bCBsaTpudGgtY2hpbGQoMykge1xuICAgICAgYW5pbWF0aW9uOiBmYWRlSW5VcCA4MDBtcyBlYXNlLWluLW91dDsgfVxuICAgIC5wcm9kdWN0LWJveDpob3ZlciAuY2FydC13cmFwIHVsIGxpOm50aC1jaGlsZCg0KSB7XG4gICAgICBhbmltYXRpb246IGZhZGVJblVwIDEwMDBtcyBlYXNlLWluLW91dDsgfVxuXG4ucHJvZHVjdC13cmFwcGVyLTEgLnNsaWNrLWRvdHMge1xuICBtYXJnaW4tdG9wOiAtMjVweCAhaW1wb3J0YW50OyB9XG5cbi5wcm9kdWN0LXdyYXBwZXIgLnNsaWNrLWRvdHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogY2FsYyg1cHggKyAoMjAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAucHJvZHVjdC13cmFwcGVyIC5zbGljay1kb3RzIGxpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAucHJvZHVjdC13cmFwcGVyIC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gICAgICB3aWR0aDogOHB4O1xuICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNSwgMzUsIDM1LCAwLjIpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuICAgICAgLnByb2R1Y3Qtd3JhcHBlciAuc2xpY2stZG90cyBsaSBidXR0b246OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucHJvZHVjdC13cmFwcGVyIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOyB9XG5cbi5wcm9kdWN0LXdyYXBwZXIgLnRpbWVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDE1cHg7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnByb2R1Y3Qtd3JhcHBlci5zbGljay1zbGlkZXIuc2xpY2stZG90dGVkIHtcbiAgbWFyZ2luLWJvdHRvbTogLTJweDsgfVxuXG4ucHJvZHVjdC1iYW5uZXItY2lyY2xlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAucHJvZHVjdC1iYW5uZXIge1xuICAgIG9yZGVyOiAtMTsgfSB9XG5cbi5wcm9kdWN0LWJhbm5lciAucHJvZHVjdC1ib3gge1xuICBwYWRkaW5nOiBjYWxjKDIwcHggKyAoNDAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAucHJvZHVjdC1iYW5uZXIgLnByb2R1Y3QtYm94IHtcbiAgICAgIHBhZGRpbmc6IDIwcHggIWltcG9ydGFudDsgfSB9XG4gIC5wcm9kdWN0LWJhbm5lciAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4ucHJvZHVjdC1iYW5uZXIgLmxhYmVsLWJsb2NrIHtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5wcm9kdWN0LWJhbm5lciAubGFiZWwtYmxvY2sgfiBhIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4ucHJvZHVjdC1iYW5uZXIgLm9mZmVyLWVuZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiA1MHB4O1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgcGFkZGluZzogMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNSwgMzUsIDM1LCAwLjgpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gIGNvbG9yOiAjZmZmO1xuICB3aWR0aDogNzAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHotaW5kZXg6IDE7IH1cbiAgLnByb2R1Y3QtYmFubmVyIC5vZmZlci1lbmQtZGVtbzQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjMyLCAxMTUsIDIyLCAwLjgpOyB9XG4gICAgLnByb2R1Y3QtYmFubmVyIC5vZmZlci1lbmQtZGVtbzQgaDMge1xuICAgICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAgIC5wcm9kdWN0LWJhbm5lciAub2ZmZXItZW5kLWRlbW80IGg2IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgIC5wcm9kdWN0LWJhbm5lciAub2ZmZXItZW5kIHtcbiAgICAgIHBhZGRpbmc6IDIwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAucHJvZHVjdC1iYW5uZXIgLm9mZmVyLWVuZCB7XG4gICAgICB3aWR0aDogdW5zZXQ7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAucHJvZHVjdC1iYW5uZXIgLm9mZmVyLWVuZCB7XG4gICAgICB3aWR0aDogNjAlO1xuICAgICAgcGFkZGluZzogMTVweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgIC5wcm9kdWN0LWJhbm5lciAub2ZmZXItZW5kIHtcbiAgICAgIHdpZHRoOiA5MCU7IH0gfVxuICAucHJvZHVjdC1iYW5uZXIgLm9mZmVyLWVuZCBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAucHJvZHVjdC1iYW5uZXIgLm9mZmVyLWVuZCBoNiB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4uaW5zdGFncmFtLXdyYXAgLnByb2R1Y3QtYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3g6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzOyB9XG4gIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIGltZyB7XG4gICAgbWF4LWhlaWdodDogdW5zZXQgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAyMjVweDtcbiAgICB3aWR0aDogMjI1cHg7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMzY2cHgpIHtcbiAgICAgIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIGltZyB7XG4gICAgICAgIGhlaWdodDogMTk1cHg7XG4gICAgICAgIHdpZHRoOiAxOTVweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuaW5zdGFncmFtLXdyYXAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciBpbWcge1xuICAgICAgICBoZWlnaHQ6IDE3NXB4O1xuICAgICAgICB3aWR0aDogMTc1cHg7IH0gfVxuICAuaW5zdGFncmFtLXdyYXAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAuc2hhcmUge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIHdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7XG4gICAgdGV4dC1vcmllbnRhdGlvbjogaW5pdGlhbDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwOyB9XG4gICAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLnNoYXJlLW9wYWNpdHkge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IDAuMnMgZWFzZTsgfVxuICAgIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5zaGFyZS1ib3gge1xuICAgICAgei1pbmRleDogMjsgfVxuICAgIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5zaGFyZSAuc2hhcmUtcGx1cyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMjVweDtcbiAgICAgIGhlaWdodDogMjVweDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5zaGFyZSAuc2hhcmUtcGx1czo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgb3BhY2l0eTogMC4xO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMDsgfVxuICAgICAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLnNoYXJlIC5zaGFyZS1wbHVzLWNvbG9yIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBhbmltYXRpb246IHJpcHBsZS0yIDAuN3MgbGluZWFyIGluZmluaXRlOyB9XG4gICAgICAgIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5zaGFyZSAuc2hhcmUtcGx1cy1jb2xvcjo6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgICAuaW5zdGFncmFtLXdyYXAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAuc2hhcmUgc3Bhbjpub3QoLnNoYXJlLXBsdXMpIHtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5zaGFyZSBzcGFuOm5vdCguc2hhcmUtcGx1cykge1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiA2cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4OyB9IH1cbiAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW5zdGEtaG92ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG4gICAgcGFkZGluZzogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW5zdGEtaG92ZXItZ3JhZGllbnQge1xuICAgICAgYmFja2dyb3VuZDogI2VjN2ExZjtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzhkZWcsICNlYzdhMWYgMCUsICNlMzYyN2IgNTAlLCAjYTA3NjhlIDEwMCUpO1xuICAgICAgb3BhY2l0eTogMDsgfVxuICAgIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3ggLmluc3RhLWhvdmVyIGgyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMjVweDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYyg2NXB4ICsgKDgwIC0gNjUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIG9wYWNpdHk6IDAuMDg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuaW5zdGFncmFtLXdyYXAgLnByb2R1Y3QtYm94IC5pbnN0YS1ob3ZlciBoMiB7XG4gICAgICAgICAgdG9wOiAzMHB4OyB9IH1cbiAgICAuaW5zdGFncmFtLXdyYXAgLnByb2R1Y3QtYm94IC5pbnN0YS1ob3ZlciBoMyB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMjBweCArICgyNCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAgICAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW5zdGEtaG92ZXIgaDMudGV4dC1oaWRlIHtcbiAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW5zdGEtaG92ZXIgaDMuYnJhbmQtbmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygyMHB4ICsgKDM1IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW5zdGEtaG92ZXIgaDMge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuICAgIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3ggLmluc3RhLWhvdmVyIGg1IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW5zdGEtaG92ZXIgaDUge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDsgfSB9XG4gICAgLmluc3RhZ3JhbS13cmFwIC5wcm9kdWN0LWJveCAuaW5zdGEtaG92ZXIgLmJ0biB7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3g6aG92ZXIgLmluc3RhLWhvdmVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig1cHgpO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7IH1cbiAgICAuaW5zdGFncmFtLXdyYXAgLnByb2R1Y3QtYm94OmhvdmVyIC5pbnN0YS1ob3Zlci1ncmFkaWVudCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZWM3YTFmO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzOGRlZywgI2VjN2ExZiAwJSwgI2UzNjI3YiA1MCUsICNhMDc2OGUgMTAwJSk7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gIC5pbnN0YWdyYW0td3JhcCAucHJvZHVjdC1ib3g6aG92ZXI6OmFmdGVyIHtcbiAgICBvcGFjaXR5OiAwLjg7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41czsgfVxuXG4uY29sb3ItdmFyaWFudCBsaSB7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuY29sb3ItdmFyaWFudCBsaSArIGxpIHtcbiAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAuY29sb3ItdmFyaWFudCBsaS5zZWxlY3RlZCB7XG4gICAgYm94LXNoYWRvdzogMCA0cHggOHB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTYpLCAwIDVweCAxNXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMDUpOyB9XG5cbi5jb2xvci12YXJpYW50IC5iZy1oYWxmLWxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjNmODtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5jb2xvci12YXJpYW50IC5iZy1oYWxmLWxpZ2h0IC5oYWxmLWJsYWNrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjMyMzIzO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNTAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5jb2xvci12YXJpYW50IC5iZy1ibHVlMSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4OGQxZjQ7IH1cblxuLmNvbG9yLXZhcmlhbnQgLmJnLWxpZ2h0MSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGYzZjg7IH1cblxuLmNvbG9yLXZhcmlhbnQgLmJnLWJsYWNrMSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IH1cblxuLmxhYmVsLXByaWNlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgcGFkZGluZzogMzBweDtcbiAgdG9wOiAwO1xuICByaWdodDogMDsgfVxuXG4ucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWJveCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGYzZjg7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWJveC5wcm9kdWN0LWJveDEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlOWU5ZTk7IH1cbiAgLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1ib3guYmctaW1hZ2Uge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvdmVnZXRhYmxlL3BlcmNlbnRhZ2UuanBnKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG4gIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtYm94LTQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGY3ZjA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1ib3gge1xuICAgICAgcGFkZGluZzogMTVweDsgfSB9XG4gIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciBpbWcge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDExNXB4O1xuICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgei1pbmRleDogMTsgfVxuICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLnJvdW5kLWNpcmNsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGFuaW1hdGlvbjogcm91bmRlZCAxMHMgaW5maW5pdGUgbGluZWFyO1xuICAgIHotaW5kZXg6IDA7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5iZy1pbWFnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgYS50ZXh0LWNlbnRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgbWluLWhlaWdodDogMTE2cHg7IH1cbiAgLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1ib3ggLnRvcC13aXNobGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWJveCAudG9wLXdpc2hsaXN0LnByb2R1Y3QtY29sb3Ige1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7IH1cbiAgICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWJveCAudG9wLXdpc2hsaXN0IHNwYW4ge1xuICAgICAgZm9udC1zaXplOiAxM3B4OyB9XG4gIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgaDUge1xuICAgIC13ZWJraXQtbGluZS1jbGFtcDogMTtcbiAgICBjb2xvcjogIzIxMjUyOTtcbiAgICBtYXJnaW46IDVweCBhdXRvOyB9XG5cbi5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtbGlzdCAucHJvZHVjdC1ib3gge1xuICBwYWRkaW5nOiAyMHB4IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1saXN0IC5wcm9kdWN0LWJveCB7XG4gICAgICBwYWRkaW5nOiAyMHB4OyB9IH1cbiAgLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1saXN0IC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIge1xuICAgIG1pbi13aWR0aDogOTBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtbGlzdCAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIHtcbiAgICAgICAgbWluLXdpZHRoOiA3MHB4OyB9IH1cbiAgICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWxpc3QgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciBhLnRleHQtY2VudGVyIHtcbiAgICAgIG1pbi1oZWlnaHQ6IHVuc2V0OyB9XG4gICAgLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1saXN0IC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgaW1nIHtcbiAgICAgIGhlaWdodDogMTE4cHg7XG4gICAgICBtYXgtd2lkdGg6IDkwcHg7XG4gICAgICBtYXgtaGVpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgb2JqZWN0LWZpdDogY29udGFpbjsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWxpc3QgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciBpbWcge1xuICAgICAgICAgIGhlaWdodDogNzhweDtcbiAgICAgICAgICBtYXgtd2lkdGg6IDcwcHg7IH0gfVxuICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWxpc3QgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1saXN0IC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWxpc3QgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTVweDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtbGlzdCAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9IH1cbiAgICAucHJvZHVjdC1zdHlsZS0xIC5wcm9kdWN0LWxpc3QgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgaDMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnByb2R1Y3Qtc3R5bGUtMSAucHJvZHVjdC1saXN0IC5wcm9kdWN0LWJveCArIC5wcm9kdWN0LWJveCB7XG4gICAgbWFyZ2luLXRvcDogMzBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5wcm9kdWN0LXN0eWxlLTEgLnByb2R1Y3QtbGlzdCAucHJvZHVjdC1ib3ggKyAucHJvZHVjdC1ib3gge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNnB4OyB9IH1cblxuLnByb2R1Y3Qtc3R5bGUtMS5vZmZlci13cmFwIC5wcm9kdWN0LWJhbm5lciAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIGltZyB7XG4gIG1heC1oZWlnaHQ6IHVuc2V0O1xuICBtYXgtd2lkdGg6IHVuc2V0O1xuICBoZWlnaHQ6IDMxMHB4O1xuICBvYmplY3QtZml0OiBjb250YWluOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAucHJvZHVjdC1zdHlsZS0xLm9mZmVyLXdyYXAgLnByb2R1Y3QtYmFubmVyIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgaW1nIHtcbiAgICAgIGhlaWdodDogMTk4cHg7IH0gfVxuXG4ucHJvZHVjdC1zdHlsZS0xLmluc3RhZ3JhbS0yIC5wcm9kdWN0LWJveCB7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnByb2R1Y3Qtc3R5bGUtMS5pbnN0YWdyYW0tMiAucHJvZHVjdC1ib3ggLnRvcC13aXNobGlzdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgdG9wOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LXN0eWxlLTEuaW5zdGFncmFtLTIgLnByb2R1Y3QtYm94IC50b3Atd2lzaGxpc3Qge1xuICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgbGVmdDogMzBweDsgfVxuICAucHJvZHVjdC1zdHlsZS0xLmluc3RhZ3JhbS0yIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLnNoYXJlIHtcbiAgICB0b3A6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBsZWZ0OiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LXN0eWxlLTEuaW5zdGFncmFtLTIgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAuc2hhcmUge1xuICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICByaWdodDogMzBweDsgfVxuICAucHJvZHVjdC1zdHlsZS0xLmluc3RhZ3JhbS0yIC5wcm9kdWN0LWJveCAuaW5zdGEtaG92ZXIge1xuICAgIHBhZGRpbmc6IGNhbGMoMzBweCArICg3MCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5wcm9kdWN0LXN0eWxlLTEuaW5zdGFncmFtLTIgLnByb2R1Y3QtYm94IC5pbnN0YS1ob3Zlci5pbnN0YS1zcGFjaW5nIHtcbiAgICAgIHBhZGRpbmc6IGNhbGMoMzVweCArICg3MCAtIDM1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuXG4ucHJvZHVjdC1zdHlsZS0yIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLmJhY2sge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICB3aWR0aDogMTAwJTsgfVxuXG4ucHJvZHVjdC1zdHlsZS0yIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIGg1IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5wcm9kdWN0LXN0eWxlLTIgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgLnJhdGluZy1kZXRhaWxzLFxuLnByb2R1Y3Qtc3R5bGUtMiAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAubWFpbi1wcmljZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAucHJvZHVjdC1zdHlsZS0yIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmctZGV0YWlscy5tYWluLXNob3AsXG4gIC5wcm9kdWN0LXN0eWxlLTIgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgLm1haW4tcHJpY2UubWFpbi1zaG9wIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnByb2R1Y3Qtc3R5bGUtMiAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAucmF0aW5nLWRldGFpbHMubWFpbi1zaG9wLCBbZGlyPVwicnRsXCJdXG4gICAgLnByb2R1Y3Qtc3R5bGUtMiAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAubWFpbi1wcmljZS5tYWluLXNob3Age1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLnByb2R1Y3Qtc3R5bGUtMiAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAucmF0aW5nLWRldGFpbHMsXG4gICAgLnByb2R1Y3Qtc3R5bGUtMiAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAubWFpbi1wcmljZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLnByb2R1Y3Qtc3R5bGUtMiAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAucmF0aW5nLWRldGFpbHMsIFtkaXI9XCJydGxcIl1cbiAgICAgIC5wcm9kdWN0LXN0eWxlLTIgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgLm1haW4tcHJpY2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG5cbi5wcm9kdWN0LXN0eWxlLTIgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgLm1haW4tcHJpY2Uge1xuICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5wcm9kdWN0LXN0eWxlLTIgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgLm1haW4tcHJpY2Uge1xuICAgICAgbWFyZ2luLXRvcDogNXB4OyB9XG4gICAgICAucHJvZHVjdC1zdHlsZS0yIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlIGgzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4OyB9IH1cblxuLnByb2R1Y3Qtc3R5bGUtMiAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCB1bCBsaSArIGxpIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgW2Rpcj1cInJ0bFwiXSAucHJvZHVjdC1zdHlsZS0yIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIHVsIGxpICsgbGkge1xuICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLnByb2R1Y3Qtc3R5bGUtMiAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCBhIHN2Zyxcbi5wcm9kdWN0LXN0eWxlLTIgLnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYnV0dG9uIHN2ZyB7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLnByb2R1Y3Qtc3R5bGUtMiAucHJvZHVjdC1ib3ggLmNhcnQtd3JhcCBhIHN2ZyxcbiAgICAucHJvZHVjdC1zdHlsZS0yIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIGJ1dHRvbiBzdmcge1xuICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICBoZWlnaHQ6IDEzcHg7IH0gfVxuXG4ucHJvZHVjdC1zdHlsZS0yIC5wcm9kdWN0LWJveDpob3ZlciAuaW1nLXdyYXBwZXIgLmJhY2sge1xuICBvcGFjaXR5OiAxO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxNjYwcHgpIHtcbiAgLnByb2R1Y3Qtc3R5bGUtMi5zbGlkZS00IHtcbiAgICBwYWRkaW5nOiAwIDMwcHg7IH0gfVxuXG4ucHJvZHVjdC1zdHlsZS0yLnNsaWRlLTQgLnNsaWNrLXByZXYge1xuICBsZWZ0OiAtNzBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTY2MHB4KSB7XG4gICAgLnByb2R1Y3Qtc3R5bGUtMi5zbGlkZS00IC5zbGljay1wcmV2IHtcbiAgICAgIGxlZnQ6IC0yMHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLnByb2R1Y3Qtc3R5bGUtMi5zbGlkZS00IC5zbGljay1wcmV2IHtcbiAgICAgIGxlZnQ6IC01cHg7IH0gfVxuXG4ucHJvZHVjdC1zdHlsZS0yLnNsaWRlLTQgLnNsaWNrLW5leHQge1xuICByaWdodDogLTcwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDE2NjBweCkge1xuICAgIC5wcm9kdWN0LXN0eWxlLTIuc2xpZGUtNCAuc2xpY2stbmV4dCB7XG4gICAgICByaWdodDogLTIwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAucHJvZHVjdC1zdHlsZS0yLnNsaWRlLTQgLnNsaWNrLW5leHQge1xuICAgICAgcmlnaHQ6IC01cHg7IH0gfVxuXG4ucHJvZHVjdC1zdHlsZS0zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5wcm9kdWN0LXN0eWxlLTMucHJvZHVjdC1zdHlsZS1jaGFpciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5wcm9kdWN0LXN0eWxlLTMucHJvZHVjdC1zdHlsZS1jaGFpciAucHJvZHVjdC10aXRsZSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnByb2R1Y3Qtc3R5bGUtMy5wcm9kdWN0LXN0eWxlLWNoYWlyIC5wcm9kdWN0LXRpdGxlIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAucHJvZHVjdC1zdHlsZS0zLnByb2R1Y3Qtc3R5bGUtY2hhaXIgLnByb2R1Y3QtdGl0bGUge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAucHJvZHVjdC1zdHlsZS0zLnByb2R1Y3Qtc3R5bGUtY2hhaXIgLnByb2R1Y3QtdGl0bGUge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAucHJvZHVjdC1zdHlsZS0zLnByb2R1Y3Qtc3R5bGUtY2hhaXIgLnByb2R1Y3QtdGl0bGUgYSBoNSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDsgfSB9XG4gIC5wcm9kdWN0LXN0eWxlLTMucHJvZHVjdC1zdHlsZS1jaGFpciAubWFpbi1wcmljZSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LXN0eWxlLTMucHJvZHVjdC1zdHlsZS1jaGFpciAubWFpbi1wcmljZSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAucHJvZHVjdC1zdHlsZS0zLnByb2R1Y3Qtc3R5bGUtY2hhaXIgLm1haW4tcHJpY2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAucHJvZHVjdC1zdHlsZS0zLnByb2R1Y3Qtc3R5bGUtY2hhaXIgLm1haW4tcHJpY2Uge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5wcm9kdWN0LXN0eWxlLTMgLnByb2R1Y3QtdGl0bGUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cbiAgICAucHJvZHVjdC1zdHlsZS0zIC5wcm9kdWN0LXRpdGxlIGg1IHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE4IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgIC5wcm9kdWN0LXN0eWxlLTMgLnByb2R1Y3QtdGl0bGUgcCB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNCAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLnByb2R1Y3Qtc3R5bGUtMyAubWFpbi1wcmljZSBoMyB7XG4gICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTQgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cblxuLnRpdGxlLTMge1xuICBtYXJnaW4tdG9wOiBjYWxjKDEzcHggKyAoMTggLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgW2Rpcj1cInJ0bFwiXSAudGl0bGUtMyB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnRpdGxlLTMgaDIge1xuICAgIGZvbnQtc2l6ZTogY2FsYygxOHB4ICsgKDI4IC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG5cbi5wcm9kdWN0LWltYWdlIHtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIFtkaXI9XCJydGxcIl0gLnByb2R1Y3QtaW1hZ2Uge1xuICAgIGRpcmVjdGlvbjogcnRsOyB9XG4gIC5wcm9kdWN0LWltYWdlICsgLnByb2R1Y3QtaW1hZ2Uge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7IH1cbiAgLnByb2R1Y3QtaW1hZ2UgaW1nIHtcbiAgICB3aWR0aDogOTBweDtcbiAgICBoZWlnaHQ6IDkwcHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgLnByb2R1Y3QtaW1hZ2UgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnByb2R1Y3QtaW1hZ2UgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTVweDsgfVxuICAgIC5wcm9kdWN0LWltYWdlIC5wcm9kdWN0LWRldGFpbHMgYSB7XG4gICAgICBjb2xvcjogIzIzMjMyMzsgfVxuICAgIC5wcm9kdWN0LWltYWdlIC5wcm9kdWN0LWRldGFpbHMgaDMge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTggLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgICAucHJvZHVjdC1pbWFnZSAucHJvZHVjdC1kZXRhaWxzIGg0IHNwYW4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cblxuLnByb2R1Y3Qtc3R5bGUtNDpob3ZlciAuYmxvZy1oZWFkZXIgLmJsb2ctaW1hZ2UgLmJsb2ctZGF0ZSB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnByb2R1Y3Qtc3R5bGUtNCAuYmxvZy1oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiAjZWM3YTFmO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM4ZGVnLCAjZWM3YTFmIDAlLCAjZTM2MjdiIDUwJSwgI2EwNzY4ZSAxMDAlKTsgfVxuICAucHJvZHVjdC1zdHlsZS00IC5ibG9nLWhlYWRlciAuYmxvZy1pbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnByb2R1Y3Qtc3R5bGUtNCAuYmxvZy1oZWFkZXIgLmJsb2ctaW1hZ2UgLmJsb2ctZGF0ZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTsgfVxuICAgICAgLnByb2R1Y3Qtc3R5bGUtNCAuYmxvZy1oZWFkZXIgLmJsb2ctaW1hZ2UgLmJsb2ctZGF0ZS5ncmFkaWVudC1jb2xvcjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjYTFmNWExO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTI5ZGVnLCAjYTFmNWExIDAlLCAjMjY2YTBiIDEwMCUpOyB9XG4gICAgICAucHJvZHVjdC1zdHlsZS00IC5ibG9nLWhlYWRlciAuYmxvZy1pbWFnZSAuYmxvZy1kYXRlOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYmFja2dyb3VuZDogI2VjN2ExZjtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzOGRlZywgI2VjN2ExZiAwJSwgI2UzNjI3YiA1MCUsICNhMDc2OGUgMTAwJSk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgb3BhY2l0eTogMC44OyB9XG4gICAgICAucHJvZHVjdC1zdHlsZS00IC5ibG9nLWhlYWRlciAuYmxvZy1pbWFnZSAuYmxvZy1kYXRlIC5kYXRlLWhvdmVyIHtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDVweCk7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAgIC5wcm9kdWN0LXN0eWxlLTQgLmJsb2ctaGVhZGVyIC5ibG9nLWltYWdlIC5ibG9nLWRhdGUgLmRhdGUtaG92ZXIgaDIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxOHB4ICsgKDQ1IC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cbiAgICAgICAgLnByb2R1Y3Qtc3R5bGUtNCAuYmxvZy1oZWFkZXIgLmJsb2ctaW1hZ2UgLmJsb2ctZGF0ZSAuZGF0ZS1ob3ZlciBoMyB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgyMyAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuXG4ucHJvZHVjdC1zdHlsZS00IC5ibG9nLWZvb3RlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5wcm9kdWN0LXN0eWxlLTQgLmJsb2ctZm9vdGVyIGgyIHtcbiAgICBmb250LXNpemU6IDcwcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICBvcGFjaXR5OiAwLjA3O1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMTNweCArICgyMCAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAucHJvZHVjdC1zdHlsZS00IC5ibG9nLWZvb3RlciBoNSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1NHB4ICsgKDU4IC0gNTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnByb2R1Y3Qtc3R5bGUtNCAuYmxvZy1mb290ZXIgaDQge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMjAgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgW2Rpcj1cInJ0bFwiXSAucHJvZHVjdC1zdHlsZS00IC5ibG9nLWZvb3RlciBidXR0b24ge1xuICAgIGRpcmVjdGlvbjogcnRsOyB9XG5cbi5wcm9kdWN0LWJveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjNmODsgfVxuICAgIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIuYmctdHJhbnMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5mcm9udC1pbWcge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLmNhcnQtaW5mbyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5jYXJ0LWluZm8gLmNhcnQtY29udGFpbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMwcHggKyAoNDAgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIGhlaWdodDogY2FsYygzMHB4ICsgKDQwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgICAgIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLmNhcnQtaW5mbyAuY2FydC1jb250YWluIGEgLmZlYXRoZXIge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDE1cHggKyAoMjAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgICAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5jYXJ0LWluZm8gLmNhcnQtY29udGFpbiBhOmhvdmVyIGkge1xuICAgICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAgIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLmNhcnQtaW5mbyAuY2FydC1jb250YWluIGE6bGFzdC1jaGlsZCBpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgICAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAuY2FydC1pbmZvIC5jYXJ0LWNvbnRhaW4gYnV0dG9uIHtcbiAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAgICAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAuY2FydC1pbmZvIC5jYXJ0LWNvbnRhaW4gYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgICAgICAgICAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5jYXJ0LWluZm8gLmNhcnQtY29udGFpbiBidXR0b246aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5jYXJ0X3F0eSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5jYXJ0X3F0eSAuY2FydC1ib3gge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogLTQ1cHg7XG4gICAgICAgIHdpZHRoOiAyMDZweDtcbiAgICAgICAgbGVmdDogNDVweDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogMC40cyBlYXNlOyB9XG4gICAgICAgIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLmNhcnRfcXR5IC5jYXJ0LWJveCAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAgIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLmNhcnRfcXR5IC5jYXJ0LWJveCAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgICAgICAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAuY2FydF9xdHkgLmNhcnQtYm94IC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZWZlZmVmO1xuICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgICAgICAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAuY2FydF9xdHkgLmNhcnQtYm94IC5pbnB1dC1ncm91cCBidXR0b24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzUxOTgzYztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDk7XG4gICAgICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICAgICAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAuY2FydF9xdHkgLmNhcnQtYm94IC5pbnB1dC1ncm91cCBidXR0b24ucXVhbnRpdHktbGVmdC1taW51cyB7XG4gICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgbGVmdDogMDsgfVxuICAgICAgICAgICAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAuY2FydF9xdHkgLmNhcnQtYm94IC5pbnB1dC1ncm91cCBidXR0b24ucXVhbnRpdHktcmlnaHQtcGx1cyB7XG4gICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgcmlnaHQ6IDA7IH1cbiAgICAgICAgICAgIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLmNhcnRfcXR5IC5jYXJ0LWJveCAuaW5wdXQtZ3JvdXAgYnV0dG9uIGkge1xuICAgICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50OyB9XG4gICAgICAgICAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAuY2FydF9xdHkgLmNhcnQtYm94IC5pbnB1dC1ncm91cCBidXR0b24ge1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAgICAgICAgIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIgLmNhcnRfcXR5IC5jYXJ0LWJveCAuaW5wdXQtZ3JvdXAgYnV0dG9uIGkge1xuICAgICAgICAgICAgICBjb2xvcjogIzAwMDsgfVxuICAgICAgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciAuY2FydF9xdHkub3BlbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWwge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbCAuZGV0YWlsLXByaWNlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAgIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWwgLmRldGFpbC1wcmljZSBzcGFuIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgIGNvbG9yOiAjN2U3ZTdlO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlsIGg1IHtcbiAgICAgIG1hcmdpbjogMTVweCAwO1xuICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAucHJvZHVjdC1ib3g6aG92ZXIgLmltZy13cmFwcGVyIC5sYWJlbHMgLmxhYmVsLTMge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogMC43cyBlYXNlOyB9XG4gIC5wcm9kdWN0LWJveDpob3ZlciAuaW1nLXdyYXBwZXIgLmNhcnQtaW5mbyAuY2FydC1jb250YWluIGE6Zmlyc3QtY2hpbGQgaSB7XG4gICAgYW5pbWF0aW9uOiBmYWRlSW5VcCA1MDBtcyBlYXNlLWluLW91dDsgfVxuICAucHJvZHVjdC1ib3g6aG92ZXIgLmltZy13cmFwcGVyIC5jYXJ0LWluZm8gLmNhcnQtY29udGFpbiBhOm50aC1jaGlsZCgyKSBpIHtcbiAgICBhbmltYXRpb246IGZhZGVJblVwIDcwMG1zIGVhc2UtaW4tb3V0OyB9XG4gIC5wcm9kdWN0LWJveDpob3ZlciAuaW1nLXdyYXBwZXIgLmNhcnQtaW5mbyAuY2FydC1jb250YWluIGE6bnRoLWNoaWxkKDMpIGkge1xuICAgIGFuaW1hdGlvbjogZmFkZUluVXAgOTAwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgLnByb2R1Y3QtYm94OmhvdmVyIC5pbWctd3JhcHBlciAuY2FydC1pbmZvIC5jYXJ0LWNvbnRhaW4gYTpsYXN0LWNoaWxkIGkge1xuICAgIGFuaW1hdGlvbjogZmFkZUluVXAgMTAwMG1zIGVhc2UtaW4tb3V0OyB9XG4gIC5wcm9kdWN0LWJveDpob3ZlciAuaW1nLXdyYXBwZXIgLmNhcnRfcXR5IC5jYXJ0LWJveCB7XG4gICAgYm90dG9tOiAzMHB4O1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLnByb2R1Y3QtYm94LnByb2R1Y3QtYm94NiAuaW1nLXdyYXBwZXIge1xuICAgIG92ZXJmbG93OiB1bnNldDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmOGYwOyB9XG4gICAgLnByb2R1Y3QtYm94LnByb2R1Y3QtYm94NiAuaW1nLXdyYXBwZXIgLmxhYmVscyAubGFiZWwtNyB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogMC43cyBlYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAucHJvZHVjdC1ib3gucHJvZHVjdC1ib3g2IC5pbWctd3JhcHBlciAubGFiZWxzIC5sYWJlbC03IHtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAucHJvZHVjdC1ib3gucHJvZHVjdC1ib3g2IC5pbWctd3JhcHBlciAuY2FydC1pbmZvIC5jYXJ0LWNvbnRhaW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEwMCUpICFpbXBvcnRhbnQ7IH0gfVxuICAgIC5wcm9kdWN0LWJveC5wcm9kdWN0LWJveDYgLmltZy13cmFwcGVyIC5jYXJ0LWluZm8gLmNhcnQtY29udGFpbiBhIGkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB0cmFuc2l0aW9uOiAwLjZzIGVhc2U7IH1cbiAgLnByb2R1Y3QtYm94LnByb2R1Y3QtYm94NiAucHJvZHVjdC1kZXRhaWwge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnByb2R1Y3QtYm94LnByb2R1Y3QtYm94NiAucHJvZHVjdC1kZXRhaWwgLmRldGFpbC1wcmljZSB7XG4gICAgICBjb2xvcjogIzc1MjBkZDsgfVxuICAucHJvZHVjdC1ib3gucHJvZHVjdC1ib3g2OmhvdmVyIC5pbWctd3JhcHBlciAubGFiZWxzIC5sYWJlbC03IHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5wcm9kdWN0LWJveC5wcm9kdWN0LWJveDY6aG92ZXIgLmltZy13cmFwcGVyIC5jYXJ0LWluZm8gLmNhcnQtY29udGFpbiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxMDAlKTsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgY2F0ZWdvcnkgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgY2F0ZWdvcnkgbWl4aW5zIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5jYXRlZ29yeS1zZWN0aW9uLnJhdGlvXzQwIC5iZy1zaXplOjpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogMjAlOyB9XG5cbi5jYXRlZ29yeS13cmFwIHtcbiAgcGFkZGluZzogY2FsYygxNXB4ICsgKDI1IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTMwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgLmNhdGVnb3J5LXdyYXAge1xuICAgICAgaGVpZ2h0OiB1bnNldDsgfSB9XG4gIC5jYXRlZ29yeS13cmFwLmNhdGVnb3J5LWNvbG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNDYwcHgpIHtcbiAgICAuY2F0ZWdvcnktd3JhcC5jYXRlZ29yeS1wYWRkaW5nIHtcbiAgICAgIHBhZGRpbmc6IDIzcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLmNhdGVnb3J5LXdyYXAuY2F0ZWdvcnktcGFkZGluZyB7XG4gICAgICBwYWRkaW5nOiAxOXB4OyB9IH1cbiAgLmNhdGVnb3J5LXdyYXAudGhlbWUtYmctY29sb3Ige1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgIC5jYXRlZ29yeS13cmFwLnRoZW1lLWJnLWNvbG9yIC5saWdodC10ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogNzJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA5NnB4O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIG9wYWNpdHk6IDAuMDg7XG4gICAgICB0b3A6IC0xMHB4O1xuICAgICAgbGVmdDogMDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuY2F0ZWdvcnktd3JhcC50aGVtZS1iZy1jb2xvciAubGlnaHQtdGV4dCB7XG4gICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICByaWdodDogMDsgfVxuICAgIC5jYXRlZ29yeS13cmFwLnRoZW1lLWJnLWNvbG9yIGgyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICAgIC5jYXRlZ29yeS13cmFwLnRoZW1lLWJnLWNvbG9yIGgyLnRvcC1zcGFjaW5nIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAgIC5jYXRlZ29yeS13cmFwLnRoZW1lLWJnLWNvbG9yIHNwYW4ge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IGNhbGMoMnB4ICsgKDggLSAyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IC01cHg7IH1cbiAgLmNhdGVnb3J5LXdyYXAgLmNhdGVnb3J5LWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMzBweDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgICAuY2F0ZWdvcnktd3JhcCAuY2F0ZWdvcnktY29udGVudCBzcGFuIHtcbiAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmNhdGVnb3J5LXdyYXAgLmNhdGVnb3J5LWNvbnRlbnQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAuY2F0ZWdvcnktd3JhcCAuY2F0ZWdvcnktY29udGVudC5jYXRlZ29yeS10ZXh0IHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgICAuY2F0ZWdvcnktd3JhcCAuY2F0ZWdvcnktY29udGVudC5jYXRlZ29yeS10ZXh0IGgzIHtcbiAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMjQgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xcHg7IH1cbiAgICAgIC5jYXRlZ29yeS13cmFwIC5jYXRlZ29yeS1jb250ZW50LmNhdGVnb3J5LXRleHQgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygxMnB4ICsgKDE4IC0gMTIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDsgfVxuICAgICAgLmNhdGVnb3J5LXdyYXAgLmNhdGVnb3J5LWNvbnRlbnQuY2F0ZWdvcnktdGV4dC0xIGgzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTRweDsgfVxuICAgICAgLmNhdGVnb3J5LXdyYXAgLmNhdGVnb3J5LWNvbnRlbnQuY2F0ZWdvcnktdGV4dC0xIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTZweDsgfVxuICAgICAgLmNhdGVnb3J5LXdyYXAgLmNhdGVnb3J5LWNvbnRlbnQuY2F0ZWdvcnktdGV4dC5jYXRlZ29yeS1zcGFjaW5nIGgzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAgICAgLmNhdGVnb3J5LXdyYXAgLmNhdGVnb3J5LWNvbnRlbnQuY2F0ZWdvcnktdGV4dC5jYXRlZ29yeS1zcGFjaW5nIHNwYW4ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtM3B4OyB9XG4gICAgICAuY2F0ZWdvcnktd3JhcCAuY2F0ZWdvcnktY29udGVudC5jYXRlZ29yeS10ZXh0LnQtdGV4dCBoMyB7XG4gICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gICAgICAuY2F0ZWdvcnktd3JhcCAuY2F0ZWdvcnktY29udGVudC5jYXRlZ29yeS10ZXh0LnQtdGV4dCBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC01cHg7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gICAgLmNhdGVnb3J5LXdyYXAgLmNhdGVnb3J5LWNvbnRlbnQgaDMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDI0IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG5cbi5jYXRlZ29yeS1zdHlsZS0zIC5jYXRlZ29yeS1pbWFnZS1mcnVpdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIHdpZHRoOiA5MCU7IH1cbiAgLmNhdGVnb3J5LXN0eWxlLTMgLmNhdGVnb3J5LWltYWdlLWZydWl0IGltZyB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgLmNhdGVnb3J5LXN0eWxlLTMgLmNhdGVnb3J5LWltYWdlLWZydWl0IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4OyB9IH1cbiAgLmNhdGVnb3J5LXN0eWxlLTMgLmNhdGVnb3J5LWltYWdlLWZydWl0IC5jYXRlZ29yeS1jb250YWluIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwOyB9XG4gICAgLmNhdGVnb3J5LXN0eWxlLTMgLmNhdGVnb3J5LWltYWdlLWZydWl0IC5jYXRlZ29yeS1jb250YWluIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuY2F0ZWdvcnktc3R5bGUtMyAuY2F0ZWdvcnktaW1hZ2UtZnJ1aXQgLmNhdGVnb3J5LWNvbnRhaW4gaW1nIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmNhdGVnb3J5LXN0eWxlLTMgLmNhdGVnb3J5LWltYWdlLWZydWl0IC5jYXRlZ29yeS1jb250YWluIGltZyB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH0gfVxuICAuY2F0ZWdvcnktc3R5bGUtMyAuY2F0ZWdvcnktaW1hZ2UtZnJ1aXQgLmNhdGVnb3J5LXRleHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAlO1xuICAgIGxlZnQ6IDAlO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB0b3A6IDIwcHg7XG4gICAgbGVmdDogMzBweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmNhdGVnb3J5LXN0eWxlLTMgLmNhdGVnb3J5LWltYWdlLWZydWl0IC5jYXRlZ29yeS10ZXh0IHtcbiAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgcmlnaHQ6IDMwcHg7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIC5jYXRlZ29yeS1zdHlsZS0zIC5jYXRlZ29yeS1pbWFnZS1mcnVpdCAuY2F0ZWdvcnktdGV4dCBoMiB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgyNSAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7IH1cbiAgICAuY2F0ZWdvcnktc3R5bGUtMyAuY2F0ZWdvcnktaW1hZ2UtZnJ1aXQgLmNhdGVnb3J5LXRleHQgaDUge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTYgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgb2ZmZXIgc2VjdGlvbiBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uZGlzY291bnQtaW1hZ2UtZGV0YWlscyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmYzZjc7XG4gIHBhZGRpbmc6IGNhbGMoMjJweCArICg1MCAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDMwcHggKyAoMTAwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMuZGlzY291bnQtc3BhY2luZyB7XG4gICAgcGFkZGluZzogY2FsYyg1MHB4ICsgKDE4MCAtIDUwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjb3VudC1pbWFnZXMge1xuICAgIG1hcmdpbi1yaWdodDogODBweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmRpc2NvdW50LWltYWdlLWRldGFpbHMgLmRpc2NvdW50LWltYWdlcyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogODBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMgLmRpc2NvdW50LWltYWdlcyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLmRpc2NvdW50LWltYWdlLWRldGFpbHMgLmRpc2NvdW50LWltYWdlcyB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7IH0gfVxuICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjb3VudC1pbWFnZXMgLnRoZW1lLWNpcmNsZSB7XG4gICAgICB3aWR0aDogNDUwcHg7XG4gICAgICBoZWlnaHQ6IDQ1MHB4O1xuICAgICAgYmFja2dyb3VuZDogIzc1MmFkZDtcbiAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICM3NTJhZGQgMCUsICM1NzJlOTMgMTAwJSk7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMzY2cHgpIHtcbiAgICAgICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMgLmRpc2NvdW50LWltYWdlcyAudGhlbWUtY2lyY2xlIHtcbiAgICAgICAgICB3aWR0aDogNDIwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA0MjBweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjb3VudC1pbWFnZXMgLnRoZW1lLWNpcmNsZSB7XG4gICAgICAgICAgd2lkdGg6IDM0MHB4O1xuICAgICAgICAgIGhlaWdodDogMzQwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjb3VudC1pbWFnZXMgLnRoZW1lLWNpcmNsZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMgLmRpc2NvdW50LWltYWdlcyAuc2hvZXMtaW1hZ2VzLTEge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxOCU7XG4gICAgICBsZWZ0OiA1OXB4O1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzRkZWcpO1xuICAgICAgd2lkdGg6IDQwJTsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyAuZGlzY291bnQtaW1hZ2VzIC5zaG9lcy1pbWFnZXMtMSB7XG4gICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICByaWdodDogMTMwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMzY2cHgpIHtcbiAgICAgICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMgLmRpc2NvdW50LWltYWdlcyAuc2hvZXMtaW1hZ2VzLTEge1xuICAgICAgICAgIHRvcDogMjQlO1xuICAgICAgICAgIGxlZnQ6IDUwcHg7XG4gICAgICAgICAgd2lkdGg6IDQzJTsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjb3VudC1pbWFnZXMgLnNob2VzLWltYWdlcy0xIHtcbiAgICAgICAgICB0b3A6IDMzJTtcbiAgICAgICAgICBsZWZ0OiA1NXB4O1xuICAgICAgICAgIHdpZHRoOiA0MCU7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjb3VudC1pbWFnZXMgLnNob2VzLWltYWdlcy0xIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBhbmltYXRpb246IHJ1bi1zaG9lcyAxNXMgaW5maW5pdGUgbGluZWFyOyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyAuZGlzY291bnQtaW1hZ2VzIC5zaG9lcy1pbWFnZXMtMSB7XG4gICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjb3VudC1pbWFnZXMgLnNob2VzLWltYWdlcy0xIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMgLmRpc2NvdW50LWltYWdlcyAuc2hvZXMtaW1hZ2VzLTIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MHB4O1xuICAgICAgbGVmdDogNDMwcHg7XG4gICAgICB3aWR0aDogMjAlO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZykgcm90YXRlKDQ1ZGVnKTsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyAuZGlzY291bnQtaW1hZ2VzIC5zaG9lcy1pbWFnZXMtMiB7XG4gICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICByaWdodDogMzBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgICAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyAuZGlzY291bnQtaW1hZ2VzIC5zaG9lcy1pbWFnZXMtMiB7XG4gICAgICAgICAgdG9wOiA5MHB4O1xuICAgICAgICAgIGxlZnQ6IDM3NXB4O1xuICAgICAgICAgIHdpZHRoOiAxOCU7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyAuZGlzY291bnQtaW1hZ2VzIC5zaG9lcy1pbWFnZXMtMiB7XG4gICAgICAgICAgdG9wOiA5NXB4O1xuICAgICAgICAgIGxlZnQ6IDMyNXB4O1xuICAgICAgICAgIHdpZHRoOiAxNiU7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjb3VudC1pbWFnZXMgLnNob2VzLWltYWdlcy0yIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMgLmRpc2N1bnQtZGV0YWlscyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjdW50LWRldGFpbHMge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMgLmRpc2N1bnQtZGV0YWlscyAuaGVhcnQtYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlM2RkZjQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMgLmRpc2N1bnQtZGV0YWlscyAuaGVhcnQtYnV0dG9uLTIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZkZWU3ICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjdW50LWRldGFpbHMgLmhlYXJ0LWJ1dHRvbi1saWdodCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWUxZTY7IH1cbiAgICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzIC5kaXNjdW50LWRldGFpbHMgLmhlYXJ0LWJ1dHRvbiAuZmEtaGVhcnQge1xuICAgICAgICBtYXJnaW4tdG9wOiAycHg7IH1cbiAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscyAuZGlzY3VudC1kZXRhaWxzIGg1IHtcbiAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMgLmRpc2N1bnQtZGV0YWlscyAuZGVhbC10ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygyMnB4ICsgKDQ1IC0gMjIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICBjb2xvcjogIzIxMjUyOTsgfVxuXG4uZGlzY291bnQtaW1hZ2UtZGV0YWlscy0yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjNmNztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDYwMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMzY2cHgpIHtcbiAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscy0yIHtcbiAgICAgIGhlaWdodDogNTAwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMtMiB7XG4gICAgICBoZWlnaHQ6IDQxMHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMtMiB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBwYWRkaW5nOiBjYWxjKDIwcHggKyAoNjAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH0gfVxuICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscy0yIC5kaXNjb3VudC1pbWFnZXMge1xuICAgIG1hcmdpbi1yaWdodDogODBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMtMiAuZGlzY291bnQtaW1hZ2VzIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfVxuICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzLTIgLmRpc2NvdW50LWltYWdlcyAuZmxvd2VyLWltYWdlcy0xIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTc1cHg7XG4gICAgICBsZWZ0OiAtMjE1cHg7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNzBkZWcpO1xuICAgICAgd2lkdGg6IDUzJTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgICAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscy0yIC5kaXNjb3VudC1pbWFnZXMgLmZsb3dlci1pbWFnZXMtMSB7XG4gICAgICAgICAgdG9wOiAtMnB4O1xuICAgICAgICAgIGxlZnQ6IC0xNTBweDtcbiAgICAgICAgICB3aWR0aDogNDklOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMtMiAuZGlzY291bnQtaW1hZ2VzIC5mbG93ZXItaW1hZ2VzLTEge1xuICAgICAgICAgIHRvcDogLTJweDtcbiAgICAgICAgICBsZWZ0OiAtMTUwcHg7XG4gICAgICAgICAgd2lkdGg6IDQ5JTsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMtMiAuZGlzY291bnQtaW1hZ2VzIC5mbG93ZXItaW1hZ2VzLTEge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzLTIgLmRpc2NvdW50LWltYWdlcyAuZmxvd2VyLWltYWdlcy0yIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTI1MHB4O1xuICAgICAgcmlnaHQ6IC0zMzBweDtcbiAgICAgIHdpZHRoOiA2NyU7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNzVkZWcpOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzLTIgLmRpc2NvdW50LWltYWdlcyAuZmxvd2VyLWltYWdlcy0yIHtcbiAgICAgICAgICB0b3A6IC0xNjBweDtcbiAgICAgICAgICByaWdodDogLTIzNXB4O1xuICAgICAgICAgIHdpZHRoOiA2MiU7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscy0yIC5kaXNjb3VudC1pbWFnZXMgLmZsb3dlci1pbWFnZXMtMiB7XG4gICAgICAgICAgdG9wOiAtMTYwcHg7XG4gICAgICAgICAgcmlnaHQ6IC0yMzVweDtcbiAgICAgICAgICB3aWR0aDogNjIlOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscy0yIC5kaXNjb3VudC1pbWFnZXMgLmZsb3dlci1pbWFnZXMtMiB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIGFuaW1hdGlvbjogcnVuLXNob2VzIDE1cyBpbmZpbml0ZSBsaW5lYXI7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzLTIgLmRpc2NvdW50LWltYWdlcyAuZmxvd2VyLWltYWdlcy0yIHtcbiAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgcmlnaHQ6IDA7IH0gfVxuICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscy0yIC5kaXNjb3VudC1zaG9wIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IGNhbGMoMTNweCArICgyNSAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMtMiAuZGlzY291bnQtc2hvcCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzLTIgLmRpc2NvdW50LXNob3AgaDIge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMjUgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscy0yIC5kaXNjb3VudC1zaG9wIGg2IHtcbiAgICAgIGxldHRlci1zcGFjaW5nOiBjYWxjKDBweCArICg1IC0gMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKDhweCArICgxNSAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzLTIgLmRpc2N1bnQtZGV0YWlscyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzLTIgLmRpc2N1bnQtZGV0YWlscyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscy0yIC5kaXNjdW50LWRldGFpbHMgLmhlYXJ0LWJ1dHRvbiB7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAuZGlzY291bnQtaW1hZ2UtZGV0YWlscy0yIC5kaXNjdW50LWRldGFpbHMgLmhlYXJ0LWJ1dHRvbi1saWdodCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWUxZTY7IH1cbiAgICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzLTIgLmRpc2N1bnQtZGV0YWlscyAuaGVhcnQtYnV0dG9uIC5mZWF0aGVyIHtcbiAgICAgICAgZmlsbDogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICBzdHJva2U6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDsgfVxuICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzLTIgLmRpc2N1bnQtZGV0YWlscyAuZGVhbC10ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygyMnB4ICsgKDQ1IC0gMjIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGJhbm5lciBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4udGltZXItYmFubmVyIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5jb2xsZWN0aW9uLWJhbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29sbGVjdGlvbi1jb250YWluIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgICAgIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigzcHgpOyB9XG4gICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbGxlY3Rpb24tY29udGFpbiBoNixcbiAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29sbGVjdGlvbi1jb250YWluIGgyLFxuICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5jb2xsZWN0aW9uLWNvbnRhaW4gcCB7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7IH0gfVxuICAuY29sbGVjdGlvbi1iYW5uZXIgLnRoZW1lLWNvbG9yIHtcbiAgICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIuY29udGFpbi1jZW50ZXIge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudCB7XG4gICAgICBwYWRkaW5nOiA0NXB4IDgwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNDYwcHgpIHtcbiAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHggNjBweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAzMHB4IDQwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMjBweCAxNXB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogNDBweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4OyB9IH1cbiAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50LnNwYWNpbmctYmFubmVyIHtcbiAgICAgICAgcGFkZGluZzogNDBweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTQ2MHB4KSB7XG4gICAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQuc3BhY2luZy1iYW5uZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweDsgfSB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMzY2cHgpIHtcbiAgICAgICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudC5zcGFjaW5nLWJhbm5lciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4OyB9IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50LnNwYWNpbmctYmFubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7IH0gfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudC5zcGFjaW5nLWJhbm5lciB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4OyB9IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQuc3BhY2luZy1iYW5uZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweDsgfSB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50LnNwYWNpbmctYmFubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7IH0gfVxuICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQud2l0aC1iZyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzUsIDM1LCAzNSwgMC45Myk7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50LndpdGgtYmcgaDIge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0ycHg7IH1cbiAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQud2l0aC1iZyBoMyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAgICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudC53aXRoLWJnIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC01cHg7IH1cbiAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50LndpdGgtYmlnIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNSwgMzUsIDM1LCAwLjg1KTtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQud2l0aC1iaWcgaDIge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50IHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiA1cHg7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50IHNwYW4ge1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDsgfSB9XG4gICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudC50LXRvcCBoMyB7XG4gICAgICAgIG1hcmdpbi10b3A6IC00cHg7IH1cbiAgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItaW1nIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmNvbGxlY3Rpb24tYmFubmVyLnAtY2VudGVyIC5jb250YWluLWJhbm5lcixcbiAgLmNvbGxlY3Rpb24tYmFubmVyLnAtY2VudGVyIC5iYW5uZXItdGV4dCB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLmNvbGxlY3Rpb24tYmFubmVyLnAtcmlnaHQgLmNvbnRhaW4tYmFubmVyLFxuICAuY29sbGVjdGlvbi1iYW5uZXIucC1yaWdodCAuYmFubmVyLXRleHQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5jb2xsZWN0aW9uLWJhbm5lci5wLXJpZ2h0IC5jb250YWluLWJhbm5lciwgW2Rpcj1cInJ0bFwiXVxuICAgIC5jb2xsZWN0aW9uLWJhbm5lci5wLXJpZ2h0IC5iYW5uZXItdGV4dCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgICAuY29sbGVjdGlvbi1iYW5uZXIucC1yaWdodCAuY29udGFpbi1iYW5uZXIgaDMsXG4gICAgLmNvbGxlY3Rpb24tYmFubmVyLnAtcmlnaHQgLmJhbm5lci10ZXh0IGgzIHtcbiAgICAgIG1hcmdpbi10b3A6IC05cHg7IH1cbiAgICAuY29sbGVjdGlvbi1iYW5uZXIucC1yaWdodCAuY29udGFpbi1iYW5uZXIgLnNwYW4tdG9wLFxuICAgIC5jb2xsZWN0aW9uLWJhbm5lci5wLXJpZ2h0IC5iYW5uZXItdGV4dCAuc3Bhbi10b3Age1xuICAgICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5jb2xsZWN0aW9uLWJhbm5lci5wLXJpZ2h0IC5iYW5uZXItY29udGVudCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmNvbGxlY3Rpb24tYmFubmVyLnAtbGVmdCAuY29udGFpbi1iYW5uZXIsXG4gIC5jb2xsZWN0aW9uLWJhbm5lci5wLWxlZnQgLmJhbm5lci10ZXh0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5jb2xsZWN0aW9uLWJhbm5lci5wLWxlZnQgLmNvbnRhaW4tYmFubmVyLCBbZGlyPVwicnRsXCJdXG4gICAgLmNvbGxlY3Rpb24tYmFubmVyLnAtbGVmdCAuYmFubmVyLXRleHQge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAuY29sbGVjdGlvbi1iYW5uZXIucC1ib3R0b20gLmNvbnRhaW4tYmFubmVyIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItdGV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItdGV4dCAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgcGFkZGluZzogNTBweDtcbiAgICAgIHdpZHRoOiA2MCU7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItdGV4dCAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItdGV4dCAuYmFubmVyLWNvbnRlbnQudC10b3AgaDMge1xuICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTRweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci10ZXh0IC5iYW5uZXItY29udGVudC50LXRvcCBoMyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDE0NjBweCkge1xuICAgICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci10ZXh0IC5iYW5uZXItY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMzBweCA2MHB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMzY2cHgpIHtcbiAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItdGV4dCAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHggNDBweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuYmFubmVyLXRleHQgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDE1cHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuYmFubmVyLXRleHQgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDQwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuYmFubmVyLXRleHQgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDMwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuYmFubmVyLXRleHQgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gICAgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItdGV4dCBoNiB7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAgIC5jb2xsZWN0aW9uLWJhbm5lciAuYmFubmVyLXRleHQgaDIge1xuICAgICAgbWFyZ2luOiBjYWxjKDJweCArICgyMCAtIDIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIDA7XG4gICAgICBmb250LXNpemU6IGNhbGMoMThweCArICg0NiAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjMyO1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci10ZXh0IGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygyMHB4ICsgKDMyIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci10ZXh0IGgzLmgtYm90dG9tIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygycHggKyAoMjAgLSAyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci10ZXh0IC5idG4ge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTQgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cblxuLmJhbm5lci10aXRsZSAuYmFubmVyLXRleHQgLmJhbm5lci1jb250ZW50IHtcbiAgd2lkdGg6IDU2JTsgfVxuICBbZGlyPVwicnRsXCJdIC5iYW5uZXItdGl0bGUgLmJhbm5lci10ZXh0IC5iYW5uZXItY29udGVudCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAuYmFubmVyLXRpdGxlIC5iYW5uZXItdGV4dCAuYmFubmVyLWNvbnRlbnQgLnNwYWNpbmctdGV4dCB7XG4gICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICBjb2xvcjogIzIxMjUyOTsgfVxuXG4uY29sbGVjdGlvbi1jZW50ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDUwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGYzZjg7XG4gIGNvbG9yOiAjMjEyNTI5OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNDYwcHgpIHtcbiAgICAuY29sbGVjdGlvbi1jZW50ZXIge1xuICAgICAgcGFkZGluZzogNDBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5jb2xsZWN0aW9uLWNlbnRlciB7XG4gICAgICBwYWRkaW5nOiAzMHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgLmNvbGxlY3Rpb24tY2VudGVyIHtcbiAgICAgIHBhZGRpbmc6IDIwcHg7IH0gfVxuICAuY29sbGVjdGlvbi1jZW50ZXIgaDIge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7IH1cblxuLmJhbm5lci1pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYmFubmVyLWltYWdlIC5iYW5uZXItY29udGVudCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IGNhbGMoMjBweCArICg2MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgd2lkdGg6IDQwJTsgfVxuICAgIC5iYW5uZXItaW1hZ2UgLmJhbm5lci1jb250ZW50IGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDMyIC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDU7XG4gICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDJweCArICgxNSAtIDIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygwcHggKyAoLTYgLSAwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuYmFubmVyLWltYWdlIC5iYW5uZXItY29udGVudCBoMyB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgLmJhbm5lci1pbWFnZSAuYmFubmVyLWNvbnRlbnQgcCB7XG4gICAgICBjb2xvcjogIzdlN2U3ZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBsaW5lLWhlaWdodDogMS42OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmJhbm5lci1pbWFnZSAuYmFubmVyLWNvbnRlbnQgcCB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi50aW1lci1iYW5uZXIge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC50aW1lci1iYW5uZXIgLnJvdW5kLWNpcmNsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGFuaW1hdGlvbjogcm91bmRlZCAxMHMgaW5maW5pdGUgbGluZWFyO1xuICAgIHotaW5kZXg6IDA7XG4gICAgd2lkdGg6IDkwJTsgfVxuICAudGltZXItYmFubmVyIC52ZWctaW1hZ2Uge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTsgfVxuICAudGltZXItYmFubmVyIC5zb2NpYWwtbWVkaWEge1xuICAgIHotaW5kZXg6IDE7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICByaWdodDogMTVweDtcbiAgICB3cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsO1xuICAgIHRleHQtb3JpZW50YXRpb246IG1peGVkO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnRpbWVyLWJhbm5lciAuc29jaWFsLW1lZGlhIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMTgwZGVnKTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnRpbWVyLWJhbm5lciAuc29jaWFsLW1lZGlhIHtcbiAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICByaWdodDogdW5zZXQ7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgIC50aW1lci1iYW5uZXIgLnNvY2lhbC1tZWRpYSB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3cml0aW5nLW1vZGU6IGhvcml6b250YWwtdGI7XG4gICAgICAgIHRvcDogdW5zZXQ7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAudGltZXItYmFubmVyIC5zb2NpYWwtbWVkaWEge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMGRlZyk7IH0gfVxuICAgIC50aW1lci1iYW5uZXIgLnNvY2lhbC1tZWRpYSAuc29jaWFsLWljb24ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgICAgLnRpbWVyLWJhbm5lciAuc29jaWFsLW1lZGlhIC5zb2NpYWwtaWNvbiArIC5zb2NpYWwtaWNvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAudGltZXItYmFubmVyIC5zb2NpYWwtbWVkaWEgLnNvY2lhbC1pY29uICsgLnNvY2lhbC1pY29uIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgICAgLnRpbWVyLWJhbm5lciAuc29jaWFsLW1lZGlhIC5zb2NpYWwtaWNvbiArIC5zb2NpYWwtaWNvbiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAudGltZXItYmFubmVyIC5zb2NpYWwtbWVkaWEgLnNvY2lhbC1pY29uICsgLnNvY2lhbC1pY29uIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7IH0gfVxuICAgICAgLnRpbWVyLWJhbm5lciAuc29jaWFsLW1lZGlhIC5zb2NpYWwtaWNvbiBpbWcge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAudGltZXItYmFubmVyIC5zb2NpYWwtbWVkaWEgLnNvY2lhbC1pY29uIGltZyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgICAgICAudGltZXItYmFubmVyIC5zb2NpYWwtbWVkaWEgLnNvY2lhbC1pY29uIGltZyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAgICAgLnRpbWVyLWJhbm5lciAuc29jaWFsLW1lZGlhIC5zb2NpYWwtaWNvbiBoNiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYyg4cHggKyAoMTQgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAgIC50aW1lci1iYW5uZXIgLnNvY2lhbC1tZWRpYSAuc29jaWFsLWljb24gaDYge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC50aW1lci1iYW5uZXIuYmctc2l6ZTo6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1OCU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAudGltZXItYmFubmVyLmJnLXNpemU6OmJlZm9yZSB7XG4gICAgICBwYWRkaW5nLXRvcDogNjQlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgLnRpbWVyLWJhbm5lci5iZy1zaXplOjpiZWZvcmUge1xuICAgICAgcGFkZGluZy10b3A6IDk0JTsgfSB9XG4gIC50aW1lci1iYW5uZXIgLmNvdXBvbi1jb2RlIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBwYWRkaW5nOiA2cHggMjBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAzMHB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cbiAgICAudGltZXItYmFubmVyIC5jb3Vwb24tY29kZTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyOiAxcHggZGFzaGVkIHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICBvcGFjaXR5OiAwLjI7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLnRpbWVyLWJhbm5lciAuY291cG9uLWNvZGU6OmFmdGVyIHtcbiAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgIHJpZ2h0OiAwOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgLnRpbWVyLWJhbm5lciAuY291cG9uLWNvZGUge1xuICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICB0cmFuc2Zvcm06IHVuc2V0O1xuICAgICAgICByaWdodDogMjBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAudGltZXItYmFubmVyIC5jb3Vwb24tY29kZSB7XG4gICAgICAgIHBhZGRpbmc6IDRweCAxMHB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgIC50aW1lci1iYW5uZXIgLmNvdXBvbi1jb2RlIHtcbiAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICByaWdodDogMTVweDsgfSB9XG4gIC50aW1lci1iYW5uZXIgLnRpbWVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICB6LWluZGV4OiAxO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTsgfVxuICAgIC50aW1lci1iYW5uZXIgLnRpbWVyIHVsIHtcbiAgICAgIHBhZGRpbmc6IDMwcHggNTBweDsgfVxuICAgICAgLnRpbWVyLWJhbm5lciAudGltZXIgdWwubGlnaHQtY29sb3Ige1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgxLCAxNTIsIDYwLCAwLjcpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoOHB4KTtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgLnRpbWVyLWJhbm5lciAudGltZXIgdWwge1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC50aW1lci1iYW5uZXIgLnRpbWVyIHVsIHtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAudGltZXItYmFubmVyIC50aW1lciB1bCB7XG4gICAgICAgICAgcGFkZGluZzogMTVweDsgfSB9XG4gICAgICAudGltZXItYmFubmVyIC50aW1lciB1bCBsaSBoMiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDZweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgICAudGltZXItYmFubmVyIC50aW1lciB1bCBsaSBoMiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICAgICAgLnRpbWVyLWJhbm5lciAudGltZXIgdWwgbGkgKyBsaSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA4MHB4OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLnRpbWVyLWJhbm5lciAudGltZXIgdWwgbGkgKyBsaSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4MHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIC50aW1lci1iYW5uZXIgLnRpbWVyIHVsIGxpICsgbGkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDUwcHg7IH1cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gLnRpbWVyLWJhbm5lciAudGltZXIgdWwgbGkgKyBsaSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNTBweDsgfSB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAgIC50aW1lci1iYW5uZXIgLnRpbWVyIHVsIGxpICsgbGkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gLnRpbWVyLWJhbm5lciAudGltZXIgdWwgbGkgKyBsaSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDsgfSB9XG4gICAgICAgIC50aW1lci1iYW5uZXIgLnRpbWVyIHVsIGxpICsgbGk6OmJlZm9yZSB7XG4gICAgICAgICAgbGVmdDogLTQycHg7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC50aW1lci1iYW5uZXIgLnRpbWVyIHVsIGxpICsgbGk6OmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcmlnaHQ6IC00MnB4O1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IHVuc2V0OyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAudGltZXItYmFubmVyIC50aW1lciB1bCBsaSArIGxpOjpiZWZvcmUge1xuICAgICAgICAgICAgICBsZWZ0OiAtMjhweDsgfVxuICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdIC50aW1lci1iYW5uZXIgLnRpbWVyIHVsIGxpICsgbGk6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0yOHB4OyB9IH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgICAgIC50aW1lci1iYW5uZXIgLnRpbWVyIHVsIGxpICsgbGk6OmJlZm9yZSB7XG4gICAgICAgICAgICAgIGxlZnQ6IC0xOHB4OyB9XG4gICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gLnRpbWVyLWJhbm5lciAudGltZXIgdWwgbGkgKyBsaTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICByaWdodDogLTE4cHg7IH0gfVxuICAudGltZXItYmFubmVyIC5kaXNjb3VudC1vZmZlciB7XG4gICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDtcbiAgICB0ZXh0LW9yaWVudGF0aW9uOiBtaXhlZDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMzBweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDE4MGRlZyk7XG4gICAgei1pbmRleDogMTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICBbZGlyPVwicnRsXCJdIC50aW1lci1iYW5uZXIgLmRpc2NvdW50LW9mZmVyIHtcbiAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICByaWdodDogMzBweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC50aW1lci1iYW5uZXIgLmRpc2NvdW50LW9mZmVyIHtcbiAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICB3cml0aW5nLW1vZGU6IHVuc2V0O1xuICAgICAgICB0ZXh0LW9yaWVudGF0aW9uOiBpbml0aWFsO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKSAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2Zvcm06IHVuc2V0OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLnRpbWVyLWJhbm5lciAuZGlzY291bnQtb2ZmZXIge1xuICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICBsZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLnRpbWVyLWJhbm5lciAuZGlzY291bnQtb2ZmZXIge1xuICAgICAgICBsZWZ0OiAxNXB4O1xuICAgICAgICB0b3A6IDE1cHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAudGltZXItYmFubmVyIC5kaXNjb3VudC1vZmZlciB7XG4gICAgICAgICAgbGVmdDogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIHJpZ2h0OiB1bnNldDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDE0NjBweCkge1xuICAgICAgLnRpbWVyLWJhbm5lciAuZGlzY291bnQtb2ZmZXIgaDUge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLnRpbWVyLWJhbm5lciAuZGlzY291bnQtb2ZmZXIgaDUge1xuICAgICAgICBmb250LXNpemU6IDEwcHg7IH0gfVxuICAgIC50aW1lci1iYW5uZXIgLmRpc2NvdW50LW9mZmVyIC53aXNobGlzdC1pY29uIHtcbiAgICAgIHBhZGRpbmc6IDdweCA3cHggOHB4IDRweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAudGltZXItYmFubmVyIC5kaXNjb3VudC1vZmZlciAud2lzaGxpc3QtaWNvbiB7XG4gICAgICAgIHBhZGRpbmc6IDdweCA0cHggOHB4IDdweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNDYwcHgpIHtcbiAgICAgICAgLnRpbWVyLWJhbm5lciAuZGlzY291bnQtb2ZmZXIgLndpc2hsaXN0LWljb24ge1xuICAgICAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAudGltZXItYmFubmVyIC5kaXNjb3VudC1vZmZlciAud2lzaGxpc3QtaWNvbiB7XG4gICAgICAgICAgcGFkZGluZzogNHB4IDRweCAycHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC50aW1lci1iYW5uZXIgLmRpc2NvdW50LW9mZmVyIC53aXNobGlzdC1pY29uIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAgIC50aW1lci1iYW5uZXIgLmRpc2NvdW50LW9mZmVyIC53aXNobGlzdC1pY29uOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgb3BhY2l0eTogMC4xO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNDYwcHgpIHtcbiAgICAgICAgICAudGltZXItYmFubmVyIC5kaXNjb3VudC1vZmZlciAud2lzaGxpc3QtaWNvbjo6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAudGltZXItYmFubmVyIC5kaXNjb3VudC1vZmZlciAud2lzaGxpc3QtaWNvbjo6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgICAgLnRpbWVyLWJhbm5lciAuZGlzY291bnQtb2ZmZXIgLndpc2hsaXN0LWljb24gaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAudGltZXItYmFubmVyIC5kaXNjb3VudC1vZmZlciAud2lzaGxpc3QtaWNvbiBpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdW5zZXQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuXG4uc21hbGwtYmFubmVyIC5jb2xsZWN0aW9uLWJhbm5lciB7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5zbWFsbC1iYW5uZXIgLmNvbGxlY3Rpb24tYmFubmVyIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLnNtYWxsLWJhbm5lciAuY29sbGVjdGlvbi1iYW5uZXIge1xuICAgICAgcGFkZGluZzogMjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5zbWFsbC1iYW5uZXIgLmNvbGxlY3Rpb24tYmFubmVyLmJnLXNpemU6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmctdG9wOiA3NCU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAuc21hbGwtYmFubmVyIC5jb2xsZWN0aW9uLWJhbm5lci5iZy1zaXplOmJlZm9yZSB7XG4gICAgICBwYWRkaW5nLXRvcDogODYlOyB9IH1cblxuLmJhbm5lci1idG4tZ3J1cCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIFtkaXI9XCJydGxcIl0gLmJhbm5lci1idG4tZ3J1cCB7XG4gICAgbGVmdDogdW5zZXQ7XG4gICAgcmlnaHQ6IDA7IH1cbiAgLmJhbm5lci1idG4tZ3J1cCBidXR0b24gKyBidXR0b24ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuYmFubmVyLWJ0bi1ncnVwIGJ1dHRvbiArIGJ1dHRvbiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGZvb3RlciBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5AbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgZm9vdGVyIGgzIHtcbiAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuXG5mb290ZXIgLm1haW4tZm9vdGVyIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNmMGYzZjg7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZjBmM2Y4O1xuICBwYWRkaW5nOiA4MHB4IDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDE0NjBweCkge1xuICAgIGZvb3RlciAubWFpbi1mb290ZXIge1xuICAgICAgcGFkZGluZzogNzBweCAwOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIGZvb3RlciAubWFpbi1mb290ZXIge1xuICAgICAgcGFkZGluZzogNjBweCAwOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgZm9vdGVyIC5tYWluLWZvb3RlciB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDA7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBmb290ZXIgLm1haW4tZm9vdGVyIHtcbiAgICAgIHBhZGRpbmc6IDQwcHggMDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIGZvb3RlciAubWFpbi1mb290ZXIge1xuICAgICAgcGFkZGluZzogMzBweCAwOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgZm9vdGVyIC5tYWluLWZvb3RlciAucm93ID4gZGl2OmZpcnN0LWNoaWxkLCBmb290ZXIgLm1haW4tZm9vdGVyIC5yb3cgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgICBvcmRlcjogLTE7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBmb290ZXIgLm1haW4tZm9vdGVyIC5yb3cgPiBkaXY6Zmlyc3QtY2hpbGQsIGZvb3RlciAubWFpbi1mb290ZXIgLnJvdyA+IGRpdjpsYXN0LWNoaWxkIHtcbiAgICAgIG9yZGVyOiB1bnNldDsgfSB9XG5cbmZvb3RlciAuZm9vdGVyLWNvbnRhY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gZm9vdGVyIC5mb290ZXItY29udGFjdCB7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7IH1cbiAgZm9vdGVyIC5mb290ZXItY29udGFjdCAuYnJhbmQtbG9nbyAuc3ZnLWljb24ge1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDsgfVxuICAgIFtkaXI9XCJydGxcIl0gZm9vdGVyIC5mb290ZXItY29udGFjdCAuYnJhbmQtbG9nbyAuc3ZnLWljb24ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuICAgIGZvb3RlciAuZm9vdGVyLWNvbnRhY3QgLmJyYW5kLWxvZ28gLnN2Zy1pY29uIC5maWxsLWNvbG9yIHtcbiAgICAgIGZpbGw6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTM2NnB4KSB7XG4gICAgZm9vdGVyIC5mb290ZXItY29udGFjdCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIGZvb3RlciAuZm9vdGVyLWNvbnRhY3Qge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICBmb290ZXIgLmZvb3Rlci1jb250YWN0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gZm9vdGVyIC5mb290ZXItY29udGFjdCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG4gIGZvb3RlciAuZm9vdGVyLWNvbnRhY3QgLmZvb3Rlci1sb2dvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgW2Rpcj1cInJ0bFwiXSBmb290ZXIgLmZvb3Rlci1jb250YWN0IC5jb250YWN0LWxpc3RzIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIGZvb3RlciAuZm9vdGVyLWNvbnRhY3QgLmNvbnRhY3QtbGlzdHMgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cbiAgICBmb290ZXIgLmZvb3Rlci1jb250YWN0IC5jb250YWN0LWxpc3RzIGxpOm50aC1jaGlsZCgxKSBzcGFuIHtcbiAgICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgICBmb290ZXIgLmZvb3Rlci1jb250YWN0IC5jb250YWN0LWxpc3RzIGxpOm50aC1jaGlsZCgzKSBzcGFuIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0zcHg7IH1cbiAgICBmb290ZXIgLmZvb3Rlci1jb250YWN0IC5jb250YWN0LWxpc3RzIGxpIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lOyB9XG4gICAgICBmb290ZXIgLmZvb3Rlci1jb250YWN0IC5jb250YWN0LWxpc3RzIGxpIHNwYW4gYiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIGZvb3RlciAuZm9vdGVyLWNvbnRhY3QgLmNvbnRhY3QtbGlzdHMgbGkgc3BhbiBiIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBmb290ZXIgLmZvb3Rlci1jb250YWN0IC5jb250YWN0LWxpc3RzIGxpICsgbGkge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgZm9vdGVyIC5mb290ZXItY29udGFjdCAuY29udGFjdC1saXN0cyBsaSArIGxpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICBmb290ZXIgLmZvb3Rlci1jb250YWN0IC5jb250YWN0LWxpc3RzIGxpICsgbGkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH0gfVxuXG5mb290ZXIgLmZvb3Rlci1saW5rcyAuZm9vdGVyLXRpdGxlIGgzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIGZvb3RlciAuZm9vdGVyLWxpbmtzIC5mb290ZXItdGl0bGUgaDM6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG4gICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICBmb250LXNpemU6IDlweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgY29sb3I6ICM3ZTdlN2U7XG4gICAgICB0cmFuc2l0aW9uOiAwLjVzOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIGZvb3RlciAuZm9vdGVyLWxpbmtzIC5mb290ZXItdGl0bGUgaDM6OmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICBsZWZ0OiAwOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gIGZvb3RlciAuZm9vdGVyLWxpbmtzIC5mb290ZXItdGl0bGUuYWN0aXZlIGgzOjphZnRlciB7XG4gICAgY29udGVudDogXCJcXGYwNzdcIjtcbiAgICB0cmFuc2l0aW9uOiAwLjVzOyB9IH1cblxuZm9vdGVyIC5mb290ZXItbGlua3MgLmZvb3Rlci1jb250ZW50IHtcbiAgcGFkZGluZy10b3A6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuXG5bZGlyPVwicnRsXCJdIGZvb3RlciAuZm9vdGVyLWxpbmtzIHVsIHtcbiAgcGFkZGluZzogMDsgfVxuXG5mb290ZXIgLmZvb3Rlci1saW5rcyB1bCBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIGZvb3RlciAuZm9vdGVyLWxpbmtzIHVsIGxpIC5mb250LWRhcms6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcikgIWltcG9ydGFudDsgfVxuICBmb290ZXIgLmZvb3Rlci1saW5rcyB1bCBsaSArIGxpIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICBmb290ZXIgLmZvb3Rlci1saW5rcyB1bCBsaSArIGxpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICBmb290ZXIgLmZvb3Rlci1saW5rcyB1bCBsaSArIGxpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNnB4OyB9IH1cblxuZm9vdGVyIC5mb290ZXItbmV3c2xldHRlciBoMyB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuXG5mb290ZXIgLmZvb3Rlci1uZXdzbGV0dGVyIHAge1xuICBsaW5lLWhlaWdodDogMS42O1xuICBsZXR0ZXItc3BhY2luZzogLjAzZW07IH1cblxuZm9vdGVyIC5mb290ZXItbmV3c2xldHRlciAuaW5wdXQtZ3JvdXAgaW5wdXQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjNmODtcbiAgY29sb3I6IHJnYmEoMzUsIDM1LCAzNSwgMC42NSk7IH1cbiAgZm9vdGVyIC5mb290ZXItbmV3c2xldHRlciAuaW5wdXQtZ3JvdXAgaW5wdXQuY29sb3ItNCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZTllOTsgfVxuXG5mb290ZXIgLmZvb3Rlci1uZXdzbGV0dGVyIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIHBhZGRpbmc6IDZweCAxNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5mb290ZXIgLmZvb3Rlci1udW1iZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIGZvb3RlciAuZm9vdGVyLW51bWJlciAuZm9vdGVyLW51bWJlci1pbWFnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjNmNztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIGZvb3RlciAuZm9vdGVyLW51bWJlciAuZm9vdGVyLW51bWJlci1pbWFnZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDsgfVxuICAgIGZvb3RlciAuZm9vdGVyLW51bWJlciAuZm9vdGVyLW51bWJlci1pbWFnZSBpbWcge1xuICAgICAgd2lkdGg6IDIwcHg7IH1cbiAgZm9vdGVyIC5mb290ZXItbnVtYmVyIC5mb290ZXItbnVtYmVyLWNvbnRhaW5lciBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5mb290ZXIgLmZvb3Rlci1kZXRhaWxzIHtcbiAgbWFyZ2luLXRvcDogY2FsYygxNXB4ICsgKDI1IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIGZvb3RlciAuZm9vdGVyLWRldGFpbHMgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmZvb3RlciAuc3ViLWZvb3RlciB7XG4gIHBhZGRpbmc6IGNhbGMoMTVweCArICgyNSAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGZvb3RlciAuc3ViLWZvb3RlciB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICBmb290ZXIgLnN1Yi1mb290ZXIgLnJvdyB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBbZGlyPVwicnRsXCJdIGZvb3RlciAuc3ViLWZvb3RlciB1bCB7XG4gICAgcGFkZGluZzogMDsgfVxuICBmb290ZXIgLnN1Yi1mb290ZXIgdWwgbGkgKyBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIFtkaXI9XCJydGxcIl0gZm9vdGVyIC5zdWItZm9vdGVyIHVsIGxpICsgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgZm9vdGVyIC5zdWItZm9vdGVyIHVsIGxpICsgbGkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIGZvb3RlciAuc3ViLWZvb3RlciB1bCBsaSArIGxpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH0gfVxuICBmb290ZXIgLnN1Yi1mb290ZXIgcCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICBbZGlyPVwicnRsXCJdIGZvb3RlciAuc3ViLWZvb3RlciBwIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIGZvb3RlciAuc3ViLWZvb3RlciBwIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gZm9vdGVyIC5zdWItZm9vdGVyIHAge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAuZm9vdGVyLXNtLXNwYWNlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA4MHB4OyB9IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgQ29va2llIHNlY3Rpb24gY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmNvb2tpZS1iYXItc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYmFja2dyb3VuZDogI2U5ZTllOTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDIwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgei1pbmRleDogOTk7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDdweCByZ2JhKDMzLCAzNywgNDEsIDAuMTUpO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiAuNXMgZWFzZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuY29va2llLWJhci1zZWN0aW9uIHtcbiAgICAgIGJvdHRvbTogOHB4O1xuICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICByaWdodDogMjBweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgei1pbmRleDogOTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5jb29raWUtYmFyLXNlY3Rpb24ge1xuICAgICAgd2lkdGg6IDMxMHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgLmNvb2tpZS1iYXItc2VjdGlvbiB7XG4gICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICBtYXJnaW46IDAgMTJweDsgfSB9XG4gIC5jb29raWUtYmFyLXNlY3Rpb24uZmxvd2VyLWNvb2tpcmJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNzsgfVxuICAuY29va2llLWJhci1zZWN0aW9uLnZlZy1jb29raWViYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGY3ZjA7IH1cbiAgLmNvb2tpZS1iYXItc2VjdGlvbi5oaWRlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGJvdHRvbTogLTM1MHB4OyB9XG4gIC5jb29raWUtYmFyLXNlY3Rpb24gaW1nIHtcbiAgICB3aWR0aDogMzBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmNvb2tpZS1iYXItc2VjdGlvbiBpbWcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgIC5jb29raWUtYmFyLXNlY3Rpb24gaW1nIHtcbiAgICAgICAgd2lkdGg6IDQwcHg7IH0gfVxuICAuY29va2llLWJhci1zZWN0aW9uIC5jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuY29va2llLWJhci1zZWN0aW9uIC5jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gICAgLmNvb2tpZS1iYXItc2VjdGlvbiAuY29udGVudCBwIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMCAxOHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuY29va2llLWJhci1zZWN0aW9uIC5jb250ZW50IHAge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDE2cHg7IH0gfVxuICAgIC5jb29raWUtYmFyLXNlY3Rpb24gLmNvbnRlbnQgLmNvb2tpZS1idXR0b25zIGJ1dHRvbiB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDI1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cbiAgICAgIC5jb29raWUtYmFyLXNlY3Rpb24gLmNvbnRlbnQgLmNvb2tpZS1idXR0b25zIGJ1dHRvbjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmNvb2tpZS1iYXItc2VjdGlvbiAuY29udGVudCAuY29va2llLWJ1dHRvbnMgYnV0dG9uIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgIC5jb29raWUtYmFyLXNlY3Rpb24gLmNvbnRlbnQgLmNvb2tpZS1idXR0b25zIGJ1dHRvbiB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBDb2RlIHNlY3Rpb24gY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmNvZGUtc2VjdGlvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvdmVnZXRhYmxlLzg1Mi5wbmcpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5jb2RlLXNlY3Rpb24gLm92ZXJsYXktY29sb3Ige1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAyMHB4IDA7IH1cbiAgICAuY29kZS1zZWN0aW9uIC5vdmVybGF5LWNvbG9yIC5jb2RlLWNvbnRhaW4ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgICAgLmNvZGUtc2VjdGlvbiAub3ZlcmxheS1jb2xvciAuY29kZS1jb250YWluIC5jb2RlLWltYWdlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY29kZS1zZWN0aW9uIC5vdmVybGF5LWNvbG9yIC5jb2RlLWNvbnRhaW4gLmNvZGUtaW1hZ2Uge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7IH1cbiAgICAgICAgLmNvZGUtc2VjdGlvbiAub3ZlcmxheS1jb2xvciAuY29kZS1jb250YWluIC5jb2RlLWltYWdlIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgYW5pbWF0aW9uOiByb3VuZCAxMnMgaW5maW5pdGUgbGluZWFyOyB9XG4gICAgICAgIC5jb2RlLXNlY3Rpb24gLm92ZXJsYXktY29sb3IgLmNvZGUtY29udGFpbiAuY29kZS1pbWFnZSBpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjFweDsgfVxuICAgICAgLmNvZGUtc2VjdGlvbiAub3ZlcmxheS1jb2xvciAuY29kZS1jb250YWluIGg2IHtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgICAgLmNvZGUtc2VjdGlvbiAub3ZlcmxheS1jb2xvciAuY29kZS1jb250YWluIGg2IHNwYW4ge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGJyYW5kIHNlY3Rpb24gY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmJyYW5kLXNsaWRlciB7XG4gIG1hcmdpbi1ib3R0b206IC03cHg7IH1cblxuLnppLTEge1xuICB6LWluZGV4OiAxOyB9XG5cbi5ibG9nLXByb2ZpbGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5ibG9nLXByb2ZpbGUgLmltYWdlLXByb2ZpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogNTVweDtcbiAgICBoZWlnaHQ6IDU1cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7IH1cbiAgICAuYmxvZy1wcm9maWxlIC5pbWFnZS1wcm9maWxlIGltZyB7XG4gICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gIC5ibG9nLXByb2ZpbGUgLmltYWdlLW5hbWUge1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuYmxvZy1wcm9maWxlIC5pbWFnZS1uYW1lIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTVweDsgfVxuICAgIC5ibG9nLXByb2ZpbGUgLmltYWdlLW5hbWUgLnRleHQtd2VpZ2h0IGg2IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgICAuYmxvZy1wcm9maWxlIC5pbWFnZS1uYW1lIGgzIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDE4IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDRweDsgfVxuICAgIC5ibG9nLXByb2ZpbGUgLmltYWdlLW5hbWUgaDYge1xuICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNCAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuXG4uc2VhcmNoLXNlY3Rpb24gLnNlYXJjaC1iYXIgLmlucHV0LWdyb3VwIHtcbiAgd2lkdGg6IDUwJTtcbiAgbWFyZ2luOiAyNnB4IGF1dG8gMTEwcHg7IH1cblxuLnNlYXJjaC1zZWN0aW9uIC5zZWFyY2gtYmFyIGJ1dHRvbiB7XG4gIHBhZGRpbmc6IDE1cHggMzVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3JzKTsgfVxuICAuc2VhcmNoLXNlY3Rpb24gLnNlYXJjaC1iYXIgYnV0dG9uIGkge1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5zZWFyY2gtc2VjdGlvbiAuc2VhcmNoLWJhciBidXR0b24uc2VhcmNoLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogMTVweDsgfVxuXG4uc2VhcmNoLXNlY3Rpb24gLnNlYXJjaC1iYXIgaW5wdXQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNjZWQ0ZGE7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgU29jaWFsIG1lZGlhIGNzcyBzdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnNvY2lhbC1tZWRpYSB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cbiAgLnNvY2lhbC1tZWRpYS5tZWRpYS1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5zb2NpYWwtbWVkaWEgYSArIGEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDhweCArICgxNSAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuc29jaWFsLW1lZGlhIGEgKyBhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgIG1hcmdpbi1yaWdodDogY2FsYyg4cHggKyAoMTUgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAuc29jaWFsLW1lZGlhIC5zb2NpYWwtaWNvbi1ib3gge1xuICAgIHdpZHRoOiBjYWxjKDIwcHggKyAoMzAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgaGVpZ2h0OiBjYWxjKDIwcHggKyAoMzAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gICAgLnNvY2lhbC1tZWRpYSAuc29jaWFsLWljb24tYm94ICsgLnNvY2lhbC1tZWlkYSB7XG4gICAgICBtYXJnaW4tbGVmdDogY2FsYyg2cHggKyAoMTUgLSA2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5zb2NpYWwtbWVkaWEgLnNvY2lhbC1pY29uLWJveC5zb2NpYWwtY29sb3Ige1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNzsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgIC5zb2NpYWwtbWVkaWEgLnNvY2lhbC1pY29uLWJveC5zb2NpYWwtY29sb3Ige1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfSB9XG4gICAgICAuc29jaWFsLW1lZGlhIC5zb2NpYWwtaWNvbi1ib3guc29jaWFsLWNvbG9yIGkge1xuICAgICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgICAuc29jaWFsLW1lZGlhIC5zb2NpYWwtaWNvbi1ib3guc29jaWFsLWNvbG9yIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAgICAgLnNvY2lhbC1tZWRpYSAuc29jaWFsLWljb24tYm94LnNvY2lhbC1jb2xvciBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmOyB9IH1cbiAgICAuc29jaWFsLW1lZGlhIC5zb2NpYWwtaWNvbi1ib3ggaSB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgTG9hZCBtb3JlIGNzcyBzdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmxvYWQtbW9yZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiA0MHB4IGF1dG8gMDtcbiAgd2lkdGg6IDI4MHB4OyB9XG4gIC5sb2FkLW1vcmUgYSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGRkO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cblxuLnByb2R1Y3QtbG9hZC1tb3JlIC5jb2wtZ3JpZC1ib3gge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIExvZyBJbiBwYWdlIENzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmxvZ2luLXNlY3Rpb24ge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAjZjBmM2Y4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogY2FsYygzMHB4ICsgKDUwIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiA0NjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmJveCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDA7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nOiBjYWxjKDMwcHggKyAoNjAgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxMHB4ICsgKDMwIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICB6LWluZGV4OiA1OyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmJveC5iYWNrIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICAgICAgdG9wOiAtMjBweDtcbiAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICB6LWluZGV4OiAtMTsgfVxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5ib3g6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmxvZ2luLXRpdGxlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGluZS1oZWlnaHQ6IDQ2cHg7XG4gICAgICBmb250LXNpemU6IDM0cHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IGNhbGMoMHB4ICsgKDIgLSAwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAubG9naW4tdGl0bGU6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogY2FsYygtMTBweCArICgtMTAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAubG9naW4tdGl0bGU6YmVmb3JlIHtcbiAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICByaWdodDogY2FsYygtMTBweCArICgtMTAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAubG9naW4tdGl0bGUgaDIge1xuICAgICAgICBmb250LXNpemU6IGNhbGMoMjdweCArICgyOCAtIDI3KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTBweCArICgwIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5zb2NpYWwtbWVkaWEge1xuICAgICAgcGFkZGluZzogMTVweCBjYWxjKDEwcHggKyAoMjUgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDE5OSwgMTk5LCAxOTcsIDAuNik7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLnNvY2lhbC1tZWRpYSBoNiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuc29jaWFsLW1lZGlhIGg2IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuc29jaWFsLW1lZGlhIGltZyB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDglICsgKDE4IC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuc29jaWFsLW1lZGlhLmZiLW1lZGlhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQzNjA5YzsgfVxuICAgICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLnNvY2lhbC1tZWRpYS5mYi1tZWRpYSBoNiB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgZm9udC1zaXplOiAxOHB4OyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLnNvY2lhbC1tZWRpYS5nb29nbGUtbWVkaWEge1xuICAgICAgICBjb2xvcjogIzAwMDsgfVxuICAgICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLnNvY2lhbC1tZWRpYS5nb29nbGUtbWVkaWEgaDYge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBjb2xvcjogIzAwMDsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciBwIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogcmdiYSgzMywgMzcsIDQxLCAwLjQpO1xuICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTUgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKDE3cHggKyAoMjMgLSAxNykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgcC5wYXNzLW9yIHtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYyg0cHggKyAoMTIgLSA0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQge1xuICAgICAgdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsgfVxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBsYWJlbCxcbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgaW5wdXQsXG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IC5zcGluIHtcbiAgICAgICAgdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uIHtcbiAgICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uIGJ1dHRvbiAuYnV0dG9uLmxvZ2luIGJ1dHRvbiBpLmZhIHtcbiAgICAgICAgdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZTpiZWZvcmUsIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZTphZnRlciB7XG4gICAgICB0cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ubG9naW4gYnV0dG9uIHtcbiAgICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm1hdGVyaWFsLWJ1dHRvbixcbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmFsdC0yLFxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZSxcbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmFsdC0yIC5zaGFwZSxcbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmJveCB7XG4gICAgICB0cmFuc2l0aW9uOiA0MDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGxhYmVsLFxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBpbnB1dCxcbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgLnNwaW4ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbiBidXR0b24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IHtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGMoMjBweCArICgzMCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGhlaWdodDogNzBweDsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGlucHV0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbiBidXR0b24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGlucHV0IHtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGxhYmVsIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTggLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBjb2xvcjogcmdiYSgzMywgMzcsIDQxLCAwLjgpO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBsYWJlbC5lbWFpbC1sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNXB4ICsgKDI0IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24gYnV0dG9uIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgY29sb3I6IHJnYmEoMzMsIDM3LCA0MSwgMC44KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0OmJlZm9yZSxcbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IC5zcGluIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQ6YmVmb3JlLCBbZGlyPVwicnRsXCJdXG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IC5zcGluIHtcbiAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgIHJpZ2h0OiAwOyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMzMsIDM3LCA0MSwgMC4xNSk7XG4gICAgICB6LWluZGV4OiAzOyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCAuc3BpbiB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICB6LWluZGV4OiA0O1xuICAgICAgd2lkdGg6IDA7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmlucHV0IC5zcGluIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmlucHV0OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGxhYmVsIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gICAgICBjb2xvcjogIzc3Nzc3NzsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICBtYXJnaW46IGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHotaW5kZXg6IDI7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uLmJ1dHRvbi0xIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ubG9naW4gYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgcGFkZGluZzogY2FsYygxM3B4ICsgKDE4IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7IH1cbiAgICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ubG9naW4gYnV0dG9uIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uIGJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBsZWZ0OiAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMzMsIDM3LCA0MSwgMC4xKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBjb2xvcjogcmdiYSgzMywgMzcsIDQxLCAwLjIpO1xuICAgICAgICBwYWRkaW5nOiBjYWxjKDEzcHggKyAoMTggLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uIGJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIGJvcmRlcjogbm9uZTsgfVxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ubG9naW4gYnV0dG9uLmFjdGl2ZSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ubG9naW4gYnV0dG9uLmFjdGl2ZSBzcGFuIHtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbi5sb2dpbiBidXR0b24uYWN0aXZlIGkuZmEge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uLmxvZ2luIGJ1dHRvbiBpLmZhIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24gYnV0dG9uIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLnBhc3MtZm9yZ290IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBjb2xvcjogcmdiYSgzMywgMzcsIDQxLCAwLjQpO1xuICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTUgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBtYXJnaW46IDEwcHggYXV0byAwOyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLnBhc3MtZm9yZ290OmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuc2lnbi1jYXRlZ29yeSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiByZ2JhKDMzLCAzNywgNDEsIDAuNCk7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxOCAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIG1hcmdpbjogMTBweCBhdXRvO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLnNpZ24tY2F0ZWdvcnkgc3BhbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHBhZGRpbmc6IDAgMTJweDsgfVxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5zaWduLWNhdGVnb3J5OjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBjb2xvcjogcmdiYSgzMywgMzcsIDQxLCAwLjIpO1xuICAgICAgICB6LWluZGV4OiAtMTsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAub3ZlcmJveCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBvdmVyZmxvdzogaW5oZXJpdDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICBwYWRkaW5nOiA2MHB4IDUwcHggNDBweCA1MHB4OyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmxvZ2luLXRpdGxlLFxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5vdmVyYm94IC5idXR0b24sXG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmlucHV0IHtcbiAgICAgICAgei1pbmRleDogMTExO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAub3ZlcmJveCAubG9naW4tdGl0bGUge1xuICAgICAgICB3aWR0aDogODAlOyB9XG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmlucHV0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAgICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmlucHV0IGlucHV0LFxuICAgICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmlucHV0IGxhYmVsIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5vdmVyYm94IC5tYXRlcmlhbC1idXR0b24sXG4gICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmFsdC0yIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5vdmVyYm94IC5tYXRlcmlhbC1idXR0b24gLnNoYXBlLFxuICAgICAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm92ZXJib3ggLmFsdC0yIC5zaGFwZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm1hdGVyaWFsLWJ1dHRvbixcbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmFsdC0yIHtcbiAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgIGhlaWdodDogMTQwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDQwcHg7XG4gICAgICByaWdodDogLTcwcHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB6LWluZGV4OiAxMDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgMCUpOyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5tYXRlcmlhbC1idXR0b24gLnNoYXBlLFxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYWx0LTIgLnNoYXBlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm1hdGVyaWFsLWJ1dHRvbiAuc2hhcGU6YmVmb3JlLFxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYWx0LTIgLnNoYXBlOmJlZm9yZSxcbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLm1hdGVyaWFsLWJ1dHRvbiAuc2hhcGU6YWZ0ZXIsXG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5hbHQtMiAuc2hhcGU6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5tYXRlcmlhbC1idXR0b24gLnNoYXBlOmJlZm9yZSxcbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmFsdC0yIC5zaGFwZTpiZWZvcmUge1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICBoZWlnaHQ6IDRweDsgfVxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZTphZnRlcixcbiAgICAubG9naW4tc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmFsdC0yIC5zaGFwZTphZnRlciB7XG4gICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICB3aWR0aDogNHB4OyB9XG4gICAgLmxvZ2luLXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5tYXRlcmlhbC1idXR0b24uYWN0aXZlLFxuICAgIC5sb2dpbi1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYWx0LTIuYWN0aXZlIHtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTUwJSkgcm90YXRlKDBkZWcpOyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIDQwNCBQYWdlIENzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnBhZ2Utbm90LWZvdW5kIC5wYWdlLWltYWdlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5wYWdlLW5vdC1mb3VuZCAucGFnZS1pbWFnZSBpbWcge1xuICAgIHdpZHRoOiA2MCU7IH1cblxuLnBhZ2Utbm90LWZvdW5kIC5wYWdlLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgY2FsYygwcHggKyAoNTAgLSAwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgbWFyZ2luLXRvcDogY2FsYygxMHB4ICsgKDIwIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5wYWdlLW5vdC1mb3VuZCAucGFnZS1jb250YWluZXIgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBjb2xvcjogIzIxMjUyOTtcbiAgICBmb250LXNpemU6IGNhbGMoMjVweCArICgzNSAtIDI1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5wYWdlLW5vdC1mb3VuZCAucGFnZS1jb250YWluZXIgcCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6ICM3ZTdlN2U7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgQ29udGFjdCBQYWdlIENzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmNvbnRhY3Qtc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApOyB9XG4gIC5jb250YWN0LXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5tYXRlcmlhbC1kZXRhaWxzIGgyIHtcbiAgICBtYXJnaW4tdG9wOiAtNXB4OyB9XG4gIC5jb250YWN0LXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5tYXRlcmlhbC1kZXRhaWxzIGg0IHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgY29sb3I6ICM3ODkwOWM7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgxOCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAuY29udGFjdC1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuYm94IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgei1pbmRleDogNTsgfVxuICAuY29udGFjdC1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQge1xuICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7IH1cbiAgICAuY29udGFjdC1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgbGFiZWwsXG4gICAgLmNvbnRhY3Qtc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGlucHV0LFxuICAgIC5jb250YWN0LXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCB0ZXh0YXJlYSxcbiAgICAuY29udGFjdC1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgLnNwaW4ge1xuICAgICAgdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsgfVxuICAuY29udGFjdC1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMjBweCArICgzMCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBoZWlnaHQ6IDcwcHg7IH1cbiAgLmNvbnRhY3Qtc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuY29udGFjdC1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgaW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmNvbnRhY3Qtc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IHRleHRhcmVhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5jb250YWN0LXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBpbnB1dCxcbiAgLmNvbnRhY3Qtc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgdG9wOiAxMHB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgY29sb3I6IHJnYmEoMzMsIDM3LCA0MSwgMC44KTtcbiAgICBmb250LXdlaWdodDogMzAwOyB9XG4gIC5jb250YWN0LXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBsYWJlbCB7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTggLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgY29sb3I6IHJnYmEoMzMsIDM3LCA0MSwgMC44KTtcbiAgICBmb250LXdlaWdodDogMzAwOyB9XG4gICAgLmNvbnRhY3Qtc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGxhYmVsLmVtYWlsLWxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxNXB4ICsgKDI0IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5jb250YWN0LXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dDpiZWZvcmUsXG4gIC5jb250YWN0LXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCAuc3BpbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwOyB9XG4gIC5jb250YWN0LXNlY3Rpb24gLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZDogcmdiYSgzMywgMzcsIDQxLCAwLjEpO1xuICAgIHotaW5kZXg6IDM7IH1cbiAgLmNvbnRhY3Qtc2VjdGlvbiAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IC5zcGluIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgei1pbmRleDogNDtcbiAgICB3aWR0aDogMDsgfVxuICAuY29udGFjdC1zZWN0aW9uIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwcHg7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICBjb2xvcjogIzc4OTA5YzsgfVxuXG4uY29udGFjdC1zZWN0aW9uIC5sb2NhdGlvbi1tYXAgaWZyYW1lIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygyMDBweCArICgzNDAgLSAyMDApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBtYXJnaW4tYm90dG9tOiAtNnB4OyB9XG5cbi5jb250YWN0LXNlY3Rpb24gLmNvbnRhY3QtZGV0YWlscyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogY2FsYygyMXB4ICsgKDMwIC0gMjEpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5jb250YWN0LXNlY3Rpb24gLmNvbnRhY3QtZGV0YWlscyBoMiB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgZm9udC1zaXplOiBjYWxjKDE4cHggKyAoMjQgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgLmNvbnRhY3Qtc2VjdGlvbiAuY29udGFjdC1kZXRhaWxzIGg1IHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgLmNvbnRhY3Qtc2VjdGlvbiAuY29udGFjdC1kZXRhaWxzIC5jb250YWN0LWJveCB7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gICAgLmNvbnRhY3Qtc2VjdGlvbiAuY29udGFjdC1kZXRhaWxzIC5jb250YWN0LWJveCAuY29udGFjdC10aXRsZSB7XG4gICAgICB3aWR0aDogY2FsYyg4MCUgLSA4MHB4KTtcbiAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwcHggKyAoMjAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmNvbnRhY3Qtc2VjdGlvbiAuY29udGFjdC1kZXRhaWxzIC5jb250YWN0LWJveCAuY29udGFjdC10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDEwcHggKyAoMjAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuY29udGFjdC1zZWN0aW9uIC5jb250YWN0LWRldGFpbHMgLmNvbnRhY3QtYm94IC5jb250YWN0LXRpdGxlIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gODBweCk7IH0gfVxuICAgICAgLmNvbnRhY3Qtc2VjdGlvbiAuY29udGFjdC1kZXRhaWxzIC5jb250YWN0LWJveCAuY29udGFjdC10aXRsZSBoNCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAgIC5jb250YWN0LXNlY3Rpb24gLmNvbnRhY3QtZGV0YWlscyAuY29udGFjdC1ib3ggLmNvbnRhY3QtdGl0bGUgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7IH1cbiAgICAgICAgLmNvbnRhY3Qtc2VjdGlvbiAuY29udGFjdC1kZXRhaWxzIC5jb250YWN0LWJveCAuY29udGFjdC10aXRsZSBwICsgcCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMnB4OyB9XG4gICAgLmNvbnRhY3Qtc2VjdGlvbiAuY29udGFjdC1kZXRhaWxzIC5jb250YWN0LWJveCAuY29udGFjdC1pY29uIHtcbiAgICAgIHdpZHRoOiBjYWxjKDM1cHggKyAoNDUgLSAzNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzVweCArICg0NSAtIDM1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICAgLmNvbnRhY3Qtc2VjdGlvbiAuY29udGFjdC1kZXRhaWxzIC5jb250YWN0LWJveCAuY29udGFjdC1pY29uIC5mZWF0aGVyIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTZweCArICgxOCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgc3Ryb2tlOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgIC5jb250YWN0LXNlY3Rpb24gLmNvbnRhY3QtZGV0YWlscyAuY29udGFjdC1ib3ggLmNvbnRhY3QtaWNvbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIG9wYWNpdHk6IDAuMTI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgRkFRIFBhZ2UgQ3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uc2VhcmNoLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygzMHB4ICsgKDUwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnNlYXJjaC10aXRsZSBoMSB7XG4gICAgZm9udC1zaXplOiBjYWxjKDMwcHggKyAoNTAgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4uZmFxLXNlY3Rpb24ge1xuICBtYXJnaW4tdG9wOiAtMTYwcHg7IH1cbiAgLmZhcS1zZWN0aW9uIC5mYXEtY29udGFpbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IGNhbGMoMjJweCArICg0MCAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgei1pbmRleDogMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgOHB4IDQwcHggMCByZ2JhKDMzLCAzNywgNDEsIDAuMSk7IH1cbiAgICAuZmFxLXNlY3Rpb24gLmZhcS1jb250YWluIC5mYXEtaW1hZ2Uge1xuICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICAgIC5mYXEtc2VjdGlvbiAuZmFxLWNvbnRhaW4gLmZhcS1pbWFnZSBpbWcge1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluOyB9XG4gICAgLmZhcS1zZWN0aW9uIC5mYXEtY29udGFpbiBoMiB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKDE4cHggKyAoMjAgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBmb250LXNpemU6IGNhbGMoMjBweCArICgyMiAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgIC5mYXEtc2VjdGlvbiAuZmFxLWNvbnRhaW4gaDUge1xuICAgICAgY29sb3I6ICM3ZTdlN2U7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG8gLTJweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07IH1cblxuLmZhcS1kZXRhaWxzIC5mYXEtbGluay1ib3gge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAzMHB4OyB9XG4gIC5mYXEtZGV0YWlscyAuZmFxLWxpbmstYm94IHVsIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuZmFxLWRldGFpbHMgLmZhcS1saW5rLWJveCBhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgIC5mYXEtZGV0YWlscyAuZmFxLWxpbmstYm94IGE6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjAsIDE0NCwgMTc0LCAwLjIzKTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgIC5mYXEtZGV0YWlscyAuZmFxLWxpbmstYm94IGE6YWZ0ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDA7IH0gfVxuICAgIC5mYXEtZGV0YWlscyAuZmFxLWxpbmstYm94IGEgaDQge1xuICAgICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxNXB4ICsgKDE4IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgLmZhcS1kZXRhaWxzIC5mYXEtbGluay1ib3ggYSBoNSB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxNiAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuZmFxLWRldGFpbHMgLmZhcS1saW5rLWJveCBhIGg1IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgIC5mYXEtZGV0YWlscyAuZmFxLWxpbmstYm94IGEgKyBhIHtcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH1cblxuLmZhcS1oZWFkaW5nIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgLmZhcS1oZWFkaW5nICsgLmZhcS1oZWFkaW5nIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDMwcHggKyAoNDUgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgLmZhcS1oZWFkaW5nIC5mZWF0aGVyIHtcbiAgICB3aWR0aDogY2FsYygyMHB4ICsgKDIyIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5mYXEtaGVhZGluZyAuZmFxLW9wdGlvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDBweCk7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5mYXEtaGVhZGluZyAuZmFxLW9wdGlvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgIC5mYXEtaGVhZGluZyAuZmFxLW9wdGlvbiBoMyB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgyMCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cbiAgICAuZmFxLWhlYWRpbmcgLmZhcS1vcHRpb24gaDYge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTYgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC00cHg7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIFJldmlldyBQYWdlIENzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnJldmlldy1zZWN0aW9uIC5yZXZpZXctYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiBjYWxjKDIwcHggKyAoMzUgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgzMywgMzcsIDQxLCAwLjA4KTtcbiAgYm9yZGVyLXJhZGl1czogN3B4O1xuICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLnJldmlldy1zZWN0aW9uIC5yZXZpZXctYm94OmhvdmVyIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMTJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpOyB9XG4gICAgLnJldmlldy1zZWN0aW9uIC5yZXZpZXctYm94OmhvdmVyIC5yZXZpZXctaW1hZ2UgLmZhLXF1b3RlLWxlZnQge1xuICAgICAgb3BhY2l0eTogMC4wNDsgfVxuICAgIC5yZXZpZXctc2VjdGlvbiAucmV2aWV3LWJveDpob3ZlciAucmV2aWV3LWltYWdlIC5mYS1xdW90ZS1yaWdodCB7XG4gICAgICBvcGFjaXR5OiAwLjA0OyB9XG4gIC5yZXZpZXctc2VjdGlvbiAucmV2aWV3LWJveCAucmV2aWV3LWltYWdlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAucmV2aWV3LXNlY3Rpb24gLnJldmlldy1ib3ggLnJldmlldy1pbWFnZSAuZmEtcXVvdGUtbGVmdCB7XG4gICAgICBmb250LXNpemU6IDE3MHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtMjdweDtcbiAgICAgIGxlZnQ6IC0xMnB4O1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTlkZWcpO1xuICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIG9wYWNpdHk6IDAuMDM7XG4gICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7IH1cbiAgICAucmV2aWV3LXNlY3Rpb24gLnJldmlldy1ib3ggLnJldmlldy1pbWFnZSAuZmEtcXVvdGUtcmlnaHQge1xuICAgICAgZm9udC1zaXplOiAxNzBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogLTI3cHg7XG4gICAgICByaWdodDogLTEycHg7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOWRlZyk7XG4gICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgb3BhY2l0eTogMC4wMztcbiAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTsgfVxuICAgIC5yZXZpZXctc2VjdGlvbiAucmV2aWV3LWJveCAucmV2aWV3LWltYWdlIC5yZXZpZXctcHJvZmlsZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogY2FsYyg0MHB4ICsgKDUwIC0gNDApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgaGVpZ2h0OiBjYWxjKDQwcHggKyAoNTAgLSA0MCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgICAucmV2aWV3LXNlY3Rpb24gLnJldmlldy1ib3ggLnJldmlldy1pbWFnZSAucmV2aWV3LXByb2ZpbGUgaW1nIHtcbiAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAucmV2aWV3LXNlY3Rpb24gLnJldmlldy1ib3ggLnJldmlldy1pbWFnZSAucmF0aW5nIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgIC5yZXZpZXctc2VjdGlvbiAucmV2aWV3LWJveCAucmV2aWV3LWltYWdlIC5yYXRpbmcgLmZhLXN0YXIge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgICAucmV2aWV3LXNlY3Rpb24gLnJldmlldy1ib3ggLnJldmlldy1pbWFnZSAuaW1hZ2UtbmFtZSB7XG4gICAgICBtYXJnaW4tbGVmdDogY2FsYyg1cHggKyAoMTAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAucmV2aWV3LXNlY3Rpb24gLnJldmlldy1ib3ggLnJldmlldy1pbWFnZSAuaW1hZ2UtbmFtZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoNXB4ICsgKDEwIC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAgIC5yZXZpZXctc2VjdGlvbiAucmV2aWV3LWJveCAucmV2aWV3LWltYWdlIC5pbWFnZS1uYW1lIGgzIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNiAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbWFyZ2luOiAwIDAgNHB4OyB9XG4gICAgICAucmV2aWV3LXNlY3Rpb24gLnJldmlldy1ib3ggLnJldmlldy1pbWFnZSAuaW1hZ2UtbmFtZSBwIHtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0zcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE1IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5yZXZpZXctc2VjdGlvbiAucmV2aWV3LWJveCAucmV2aWV3LW5hbWUgcCB7XG4gICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBoeXBoZW5zOiBhdXRvO1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7IH1cbiAgICAucmV2aWV3LXNlY3Rpb24gLnJldmlldy1ib3ggLnJldmlldy1uYW1lIHAgKyBwIHtcbiAgICAgIG1hcmdpbjogMjBweCAwOyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIFBvcnRmb2xpbyBQYWdlIENzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnBvcnRmb2xpbyAucGVyZWdyYXBoIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogdmFyKC0tZGFya2dyZXkpO1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDkwJTtcbiAgcGFkZGluZzogMTVweCAwOyB9XG4gIC5wb3J0Zm9saW8gLnBlcmVncmFwaCBwIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuXG4ucG9ydGZvbGlvIC5idXR0b24gdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAucG9ydGZvbGlvIC5idXR0b24gdWwgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgyMCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiAjN2U3ZTdlO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBwYWRkaW5nOiBjYWxjKDhweCArICgxMCAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5wb3J0Zm9saW8gLmJ1dHRvbiB1bCBsaSBoNCB7XG4gICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTRweDsgfVxuICAgIC5wb3J0Zm9saW8gLmJ1dHRvbiB1bCBsaS5idG4tc3VibWl0OmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAucG9ydGZvbGlvIC5idXR0b24gdWwgbGkuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gICAgICAucG9ydGZvbGlvIC5idXR0b24gdWwgbGkuYWN0aXZlOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cblxuLnBvcnRmb2xpbyAucGFyZW50LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAucG9ydGZvbGlvIC5wYXJlbnQtY29udGFpbmVyLXNpemUgLmltYWdlcyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA1MDBweDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuICAucG9ydGZvbGlvIC5wYXJlbnQtY29udGFpbmVyIC5pbWFnZXMge1xuICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAucG9ydGZvbGlvIC5wYXJlbnQtY29udGFpbmVyOmhvdmVyIC5vdmVybGF5LWNvbG9yIHtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMTsgfVxuICAgIC5wb3J0Zm9saW8gLnBhcmVudC1jb250YWluZXI6aG92ZXIgLm92ZXJsYXktY29sb3IgLm92ZXJsYXktaWNvbiB7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gIC5wb3J0Zm9saW8gLnBhcmVudC1jb250YWluZXIgLm92ZXJsYXktY29sb3Ige1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwYWRkaW5nOiAyMHB4OyB9XG4gICAgLnBvcnRmb2xpbyAucGFyZW50LWNvbnRhaW5lciAub3ZlcmxheS1jb2xvciAub3ZlcmxheS1pY29uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgdHJhbnNpdGlvbjogMC44cyBlYXNlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG9wYWNpdHk6IDA7IH1cbiAgICAgIC5wb3J0Zm9saW8gLnBhcmVudC1jb250YWluZXIgLm92ZXJsYXktY29sb3IgLm92ZXJsYXktaWNvbiBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygyMHB4ICsgKDI1IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLnBvcnRmb2xpbyAucGFyZW50LWNvbnRhaW5lciAub3ZlcmxheS1jb2xvciAub3ZlcmxheS1pY29uIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnBvcnRmb2xpbyAuY2FyZCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICBCbG9nIFBhZ2UgQ3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uYmxvZy1zZWN0aW9uIC5ibG9nLWltYWdlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDAsIDI0MywgMjQ4LCAwLjUpO1xuICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5ibG9nLXNlY3Rpb24gLmJsb2ctaW1hZ2UgaW1nIHtcbiAgICB3aWR0aDogNDAwcHg7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cbiAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSAuYmxvZy1kZXRhaWxzIHtcbiAgICBtYXJnaW4tbGVmdDogNTBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSAuYmxvZy1kZXRhaWxzIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMjBweCArICgzNiAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDEwcHggKyAoMjAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH0gfVxuICAgIC5ibG9nLXNlY3Rpb24gLmJsb2ctaW1hZ2UgLmJsb2ctZGV0YWlscyBoNSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDZweCArICgxMiAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE5IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSAuYmxvZy1kZXRhaWxzIGg1IHNwYW4ge1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBmb250LXNpemU6IDEzcHg7IH1cbiAgICAuYmxvZy1zZWN0aW9uIC5ibG9nLWltYWdlIC5ibG9nLWRldGFpbHMgaDIge1xuICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgZm9udC1zaXplOiBjYWxjKDIycHggKyAoMzYgLSAyMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDZweCArICgxMiAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgICAgICAuYmxvZy1zZWN0aW9uIC5ibG9nLWltYWdlIC5ibG9nLWRldGFpbHMgaDIge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9IH1cbiAgICAuYmxvZy1zZWN0aW9uIC5ibG9nLWltYWdlIC5ibG9nLWRldGFpbHMgcCB7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTYgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogY2FsYygwcHggKyAoMSAtIDApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygxMHB4ICsgKDEyIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSAuYmxvZy1kZXRhaWxzIC5ibG9nLXByb2ZpbGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tbGVmdDogMTVweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5ibG9nLXNlY3Rpb24gLmJsb2ctaW1hZ2UgLmJsb2ctZGV0YWlscyAuYmxvZy1wcm9maWxlIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG4gICAgICAuYmxvZy1zZWN0aW9uIC5ibG9nLWltYWdlIC5ibG9nLWRldGFpbHMgLmJsb2ctcHJvZmlsZSAuZmEtcXVvdGUtbGVmdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTcwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtMjdweDtcbiAgICAgICAgbGVmdDogLTEycHg7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05ZGVnKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgb3BhY2l0eTogMC4wMztcbiAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlOyB9XG4gICAgICAuYmxvZy1zZWN0aW9uIC5ibG9nLWltYWdlIC5ibG9nLWRldGFpbHMgLmJsb2ctcHJvZmlsZSAuZmEtcXVvdGUtcmlnaHQge1xuICAgICAgICBmb250LXNpemU6IDE3MHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogLTI3cHg7XG4gICAgICAgIHJpZ2h0OiAtMTJweDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTlkZWcpO1xuICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICBvcGFjaXR5OiAwLjAzO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7IH1cbiAgICAgIC5ibG9nLXNlY3Rpb24gLmJsb2ctaW1hZ2UgLmJsb2ctZGV0YWlscyAuYmxvZy1wcm9maWxlIC5pbWFnZS1wcm9maWxlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogNTVweDtcbiAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7IH1cbiAgICAgICAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSAuYmxvZy1kZXRhaWxzIC5ibG9nLXByb2ZpbGUgLmltYWdlLXByb2ZpbGUgaW1nIHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gICAgICAuYmxvZy1zZWN0aW9uIC5ibG9nLWltYWdlIC5ibG9nLWRldGFpbHMgLmJsb2ctcHJvZmlsZSAuaW1hZ2UtbmFtZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gICAgICAgIC5ibG9nLXNlY3Rpb24gLmJsb2ctaW1hZ2UgLmJsb2ctZGV0YWlscyAuYmxvZy1wcm9maWxlIC5pbWFnZS1uYW1lIGgzIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IC02cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cbiAgICAgICAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSAuYmxvZy1kZXRhaWxzIC5ibG9nLXByb2ZpbGUgLmltYWdlLW5hbWUgc3BhbiB7XG4gICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcbiAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxOCAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5ibG9nLXNlY3Rpb24gLmJsb2ctaW1hZ2UgLmJsb2ctZGV0YWlscyAucmV2aWV3LW5hbWUgcCB7XG4gICAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuN3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxMnB4ICsgKDE0IC0gMTIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgLmJsb2ctc2VjdGlvbiAuYmxvZy1pbWFnZSAuYmxvZy1kZXRhaWxzIC5yZXZpZXctbmFtZSBwICsgcCB7XG4gICAgICAgIG1hcmdpbjogMjBweCAwOyB9XG5cbi5ibG9nLWNhdGVnb3JpdHkge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgLmJsb2ctY2F0ZWdvcml0eS5ib3gtYm90dG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNHB4OyB9XG4gIC5ibG9nLWNhdGVnb3JpdHkgLmJsb2ctaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAuYmxvZy1jYXRlZ29yaXR5IC5ibG9nLWltZzphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgLmJsb2ctY2F0ZWdvcml0eSAuY2FyZC1ib2R5IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmJsb2ctY2F0ZWdvcml0eSAuY2FyZC1ib2R5IHtcbiAgICAgIGRpcmVjdGlvbjogcnRsOyB9XG4gICAgLmJsb2ctY2F0ZWdvcml0eSAuY2FyZC1ib2R5IGg1IHtcbiAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2cHg7IH1cbiAgICAuYmxvZy1jYXRlZ29yaXR5IC5jYXJkLWJvZHkgaDIge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAuYmxvZy1jYXRlZ29yaXR5IC5jYXJkLWJvZHkgLmJsb2ctcHJvZmlsZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLmJsb2ctY2F0ZWdvcml0eSAuY2FyZC1ib2R5IC5ibG9nLXByb2ZpbGUgLmltYWdlLXByb2ZpbGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAgICAgICAuYmxvZy1jYXRlZ29yaXR5IC5jYXJkLWJvZHkgLmJsb2ctcHJvZmlsZSAuaW1hZ2UtcHJvZmlsZSBpbWcge1xuICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAgIC5ibG9nLWNhdGVnb3JpdHkgLmNhcmQtYm9keSAuYmxvZy1wcm9maWxlIC5pbWFnZS1uYW1lIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuYmxvZy1jYXRlZ29yaXR5IC5jYXJkLWJvZHkgLmJsb2ctcHJvZmlsZSAuaW1hZ2UtbmFtZSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAgIC5ibG9nLWNhdGVnb3JpdHkgLmNhcmQtYm9keSAuYmxvZy1wcm9maWxlIC5pbWFnZS1uYW1lIGgzIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBjb2xvcjogIzdlN2U3ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2RkZDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5ibG9nLWNhdGVnb3JpdHkgLmNhcmQtYm9keSAuYmxvZy1wcm9maWxlIC5pbWFnZS1uYW1lIGgzIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkZGQ7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgICAgICAuYmxvZy1jYXRlZ29yaXR5IC5jYXJkLWJvZHkgLmJsb2ctcHJvZmlsZSAuaW1hZ2UtbmFtZSBoNiB7XG4gICAgICAgICAgY29sb3I6ICM3ZTdlN2U7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgIC5ibG9nLWNhdGVnb3JpdHkgLmNhcmQtYm9keSAucmV2aWV3LW5hbWUgcCB7XG4gICAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuN3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygxMnB4ICsgKDE0IC0gMTIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgLmJsb2ctY2F0ZWdvcml0eSAuY2FyZC1ib2R5IC5yZXZpZXctbmFtZSBwICsgcCB7XG4gICAgICAgIG1hcmdpbjogMjBweCAwOyB9XG4gIC5ibG9nLWNhdGVnb3JpdHk6aG92ZXIgLmJsb2ctaW1nOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlOyB9XG5cbi5tYXNvbmFyeS1ibG9nLXNlY3Rpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAucGVyZWdyYXBoIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLWRhcmtncmV5KTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogOTAlO1xuICAgIHBhZGRpbmc6IDE1cHggMDsgfVxuICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLnBlcmVncmFwaCBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAuYnV0dG9uIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAuYnV0dG9uIHVsIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMTggLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogIzdlN2U3ZTsgfVxuICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAuYnV0dG9uIHVsIGxpOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjRzIGVhc2U7IH1cbiAgICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLmJ1dHRvbiB1bCBsaSBoNCB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC00cHg7IH1cbiAgICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLmJ1dHRvbiB1bCBsaS5idG4tc3VibWl0OmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAuYnV0dG9uIHVsIGxpLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAuYnV0dG9uIHVsIGxpLmFjdGl2ZTphZnRlciB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyB7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJveC1zaGFkb3c6IDAgNXB4IDE1cHggcmdiYSgzMywgMzcsIDQxLCAwLjA4KTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAubWFzb25hcnktYmxvZy1zZWN0aW9uIC5tYXNvbmFyeS1ibG9nLmJveC1zaGFkb3cge1xuICAgICAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDM1LCAzNSwgMzUsIDAuMDgpOyB9XG4gICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuYmctc2l6ZSB7XG4gICAgICB3aWR0aDogMzAlOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuYmctc2l6ZSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLm1hc29uYXJ5LWJsb2cgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAubWFzb25hcnktYmxvZy1zZWN0aW9uIC5tYXNvbmFyeS1ibG9nIGltZy5pbWFnZS1maXQge1xuICAgICAgICBoZWlnaHQ6IDM1MHB4O1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDM1LCAzNSwgMzUsIDAuMDUpOyB9XG4gICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5IHtcbiAgICAgIHBhZGRpbmc6IGNhbGMoMjBweCArICgyNSAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5LXdpZHRoIHtcbiAgICAgICAgd2lkdGg6IDcwJTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLm1hc29uYXJ5LWJsb2cgLmNhcmQtYm9keSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5LnF1b3RlLWJvZHkge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLm1hc29uYXJ5LWJsb2cgLmNhcmQtYm9keSAucXVvdGUtaW1hZ2Uge1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygyNXB4ICsgKDQwIC0gMjUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgICAubWFzb25hcnktYmxvZy1zZWN0aW9uIC5tYXNvbmFyeS1ibG9nIC5jYXJkLWJvZHkgc3BhbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAubWFzb25hcnktYmxvZy1zZWN0aW9uIC5tYXNvbmFyeS1ibG9nIC5jYXJkLWJvZHkgLm1hc29uYXJ5LW5hbWUge1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMS4ycHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5IGgyIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMjQgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5IGgyLnF1b3RlLWhlYWQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDE4IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxLjFweDsgfVxuICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5IHAge1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjA2ZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLm1hc29uYXJ5LWJsb2cgLmNhcmQtYm9keSAuYmxvZy1wcm9maWxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlYWVhZWE7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gICAgICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLm1hc29uYXJ5LWJsb2cgLmNhcmQtYm9keSAuYmxvZy1wcm9maWxlLmJveC1jZW50ZXIge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLm1hc29uYXJ5LWJsb2cgLmNhcmQtYm9keSAuYmxvZy1wcm9maWxlIC5pbWFnZS1wcm9maWxlIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5IC5ibG9nLXByb2ZpbGUgLmltYWdlLXByb2ZpbGUgaW1nIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5IC5ibG9nLXByb2ZpbGUgLmltYWdlLW5hbWUge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gICAgICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5IC5ibG9nLXByb2ZpbGUgLmltYWdlLW5hbWUgaDMge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgNXB4IDA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAgICAgICAgIC5tYXNvbmFyeS1ibG9nLXNlY3Rpb24gLm1hc29uYXJ5LWJsb2cgLmNhcmQtYm9keSAuYmxvZy1wcm9maWxlIC5pbWFnZS1uYW1lIGgzIHNwYW4ge1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICBkaXNwbGF5OiByZXZlcnQ7XG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgICAgICAubWFzb25hcnktYmxvZy1zZWN0aW9uIC5tYXNvbmFyeS1ibG9nIC5jYXJkLWJvZHkgLmJsb2ctcHJvZmlsZSAuaW1hZ2UtbmFtZSBoNiB7XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAgICAgLm1hc29uYXJ5LWJsb2ctc2VjdGlvbiAubWFzb25hcnktYmxvZyAuY2FyZC1ib2R5IC5yZXZpZXctbmFtZSBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuN3B4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxNCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgICAubWFzb25hcnktYmxvZy1zZWN0aW9uIC5tYXNvbmFyeS1ibG9nIC5jYXJkLWJvZHkgLnJldmlldy1uYW1lIHAgKyBwIHtcbiAgICAgICAgICBtYXJnaW46IDIwcHggMDsgfVxuXG4ucG9wdWxhci1wb3N0IC5wb3B1bGFyLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygxNXB4ICsgKDI0IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5wb3B1bGFyLXBvc3QgLnBvcHVsYXItdGl0bGUgaDIge1xuICAgIGZvbnQtc2l6ZTogY2FsYygyMnB4ICsgKDM1IC0gMjIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG5cbi5wb3B1bGFyLXBvc3QgLnBvcHVsYXItaW1hZ2Uge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSB7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7IH1cbiAgLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSBpbWcge1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gIC5wb3B1bGFyLXBvc3QgLnBvcHVsYXItaW1hZ2UgLnBvcHVsYXItY29udGFpbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cbiAgICAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWltYWdlIC5wb3B1bGFyLWNvbnRhaW4gaDUge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMTkgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgICAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWltYWdlIC5wb3B1bGFyLWNvbnRhaW4gcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgICAgLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSAucG9wdWxhci1jb250YWluIHAgc3BhbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLnBvcHVsYXItcG9zdCAucG9wdWxhci1kZXRhaWxzIHAge1xuICBsaW5lLWhlaWdodDogMS44OyB9XG5cbi5wb3B1bGFyLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNztcbiAgcGFkZGluZzogMTZweCAyMHB4OyB9XG4gIC5wb3B1bGFyLXRpdGxlLm1pbnVzLXNwYWNpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnBvcHVsYXItdGl0bGUgaDMge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9XG5cbi5sZWZ0LXNpZGUge1xuICBwb3NpdGlvbjogc3RpY2t5OyB9XG4gIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCB7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucmV2aWV3LWJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIG1hcmdpbjogMnB4IC0ycHggLTJweCAtMnB4OyB9XG4gICAgICAubGVmdC1zaWRlIC5wb3B1bGFyLXBvc3QgLnJldmlldy1ib3ggc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgbWFyZ2luOiAycHg7IH1cbiAgICAgICAgLmxlZnQtc2lkZSAucG9wdWxhci1wb3N0IC5yZXZpZXctYm94IHNwYW4gLmZlYXRoZXIge1xuICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAubGVmdC1zaWRlIC5wb3B1bGFyLXBvc3QgLnJldmlldy1ib3ggc3BhbiAuZmVhdGhlciB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSArIC5wb3B1bGFyLWltYWdlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDsgfVxuICAgICAgLmxlZnQtc2lkZSAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWltYWdlIC5wb3B1bGFyLW51bWJlciB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgICAgICAgd2lkdGg6IDU1cHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAubGVmdC1zaWRlIC5wb3B1bGFyLXBvc3QgLnBvcHVsYXItaW1hZ2UgLnBvcHVsYXItbnVtYmVyIHtcbiAgICAgICAgICB3aWR0aDogdW5zZXQ7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cbiAgICAgICAgLmxlZnQtc2lkZSAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWltYWdlIC5wb3B1bGFyLW51bWJlciBoNCB7XG4gICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTRweDsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSAucG9wdWxhci1udW1iZXIgaDQge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICAgICAgLmxlZnQtc2lkZSAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWltYWdlIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSAucG9wdWxhci1jb250YWluIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cbiAgICAgICAgLmxlZnQtc2lkZSAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWltYWdlIC5wb3B1bGFyLWNvbnRhaW4gaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE1IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjNweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gICAgICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSAucG9wdWxhci1jb250YWluIHAge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgICAgICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucG9wdWxhci1pbWFnZSAucG9wdWxhci1jb250YWluIHAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgLmxlZnQtc2lkZSAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWRldGFpbHMgcCB7XG4gICAgICBsaW5lLWhlaWdodDogMS44OyB9XG4gICAgLmxlZnQtc2lkZSAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWRldGFpbHMgLnNvY2lhbC1tZWRpYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmxlZnQtc2lkZSAucG9wdWxhci1wb3N0IC5wb3B1bGFyLWRldGFpbHMgLnNvY2lhbC1tZWRpYSB7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG4gICAgICAubGVmdC1zaWRlIC5wb3B1bGFyLXBvc3QgLnBvcHVsYXItZGV0YWlscyAuc29jaWFsLW1lZGlhIC5zb2NpYWwtaWNvbi1ib3gge1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gICAgICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucG9wdWxhci1kZXRhaWxzIC5zb2NpYWwtbWVkaWEgLnNvY2lhbC1pY29uLWJveCArIC5zb2NpYWwtaWNvbi1ib3gge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gICAgICAgIC5sZWZ0LXNpZGUgLnBvcHVsYXItcG9zdCAucG9wdWxhci1kZXRhaWxzIC5zb2NpYWwtbWVkaWEgLnNvY2lhbC1pY29uLWJveCBpIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAubGVmdC1zaWRlIC5jYXRlZ29yeS1zZWN0aW9uIC5jYXRlZ29yeS1ib3gge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLmxlZnQtc2lkZSAuY2F0ZWdvcnktc2VjdGlvbiAuY2F0ZWdvcnktYm94ICsgLmNhdGVnb3J5LWJveCB7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7IH1cbiAgICAubGVmdC1zaWRlIC5jYXRlZ29yeS1zZWN0aW9uIC5jYXRlZ29yeS1ib3g6aG92ZXIge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAgIC5sZWZ0LXNpZGUgLmNhdGVnb3J5LXNlY3Rpb24gLmNhdGVnb3J5LWJveDpob3ZlciAuY2F0ZWdvcnktcHJvZHVjdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYzZjg7IH1cbiAgICAgICAgLmxlZnQtc2lkZSAuY2F0ZWdvcnktc2VjdGlvbiAuY2F0ZWdvcnktYm94OmhvdmVyIC5jYXRlZ29yeS1wcm9kdWN0IC5jYXRlLXNoYXBlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgICAgICAubGVmdC1zaWRlIC5jYXRlZ29yeS1zZWN0aW9uIC5jYXRlZ29yeS1ib3g6aG92ZXIgLmNhdGVnb3J5LXByb2R1Y3QgLmNhdGUtc2hhcGUgaSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5sZWZ0LXNpZGUgLmNhdGVnb3J5LXNlY3Rpb24gLmNhdGVnb3J5LWJveDpob3ZlciAuY2F0ZWdvcnktcHJvZHVjdCAuY2F0ZS1jb250YWluIGg1IHtcbiAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgLmxlZnQtc2lkZSAuY2F0ZWdvcnktc2VjdGlvbiAuY2F0ZWdvcnktYm94IC5jYXRlZ29yeS1wcm9kdWN0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlOyB9XG4gICAgICAubGVmdC1zaWRlIC5jYXRlZ29yeS1zZWN0aW9uIC5jYXRlZ29yeS1ib3ggLmNhdGVnb3J5LXByb2R1Y3QgLmNhdGUtc2hhcGUge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDsgfVxuICAgICAgICAubGVmdC1zaWRlIC5jYXRlZ29yeS1zZWN0aW9uIC5jYXRlZ29yeS1ib3ggLmNhdGVnb3J5LXByb2R1Y3QgLmNhdGUtc2hhcGUgaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0OyB9XG4gICAgICAubGVmdC1zaWRlIC5jYXRlZ29yeS1zZWN0aW9uIC5jYXRlZ29yeS1ib3ggLmNhdGVnb3J5LXByb2R1Y3QgLmNhdGUtY29udGFpbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5sZWZ0LXNpZGUgLmNhdGVnb3J5LXNlY3Rpb24gLmNhdGVnb3J5LWJveCAuY2F0ZWdvcnktcHJvZHVjdCAuY2F0ZS1jb250YWluIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9XG4gICAgICAgIC5sZWZ0LXNpZGUgLmNhdGVnb3J5LXNlY3Rpb24gLmNhdGVnb3J5LWJveCAuY2F0ZWdvcnktcHJvZHVjdCAuY2F0ZS1jb250YWluIGg1IHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwOyB9XG4gICAgLmxlZnQtc2lkZSAuY2F0ZWdvcnktc2VjdGlvbiAuY2F0ZWdvcnktYm94OmhvdmVyIC5jYXRlZ29yeS1wcm9kdWN0IC5jYXRlLXNoYXBlIGkge1xuICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgIC5sZWZ0LXNpZGUgLmNhdGVnb3J5LXNlY3Rpb24gLmNhdGVnb3J5LWJveDpob3ZlciAuY2F0ZWdvcnktcHJvZHVjdCAuY2F0ZS1jb250YWluIGg1IHtcbiAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgLmxlZnQtc2lkZSAudGFnLXNlY3Rpb24gLmJ1dHRvbi10YWdzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAycHggMDsgfVxuXG4uYmxvZy1kZXRhaWxzIHtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBib3JkZXI6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmJsb2ctZGV0YWlscyB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9IH1cbiAgLmJsb2ctZGV0YWlscyAuYmxvZy1pbWFnZS1ib3gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctaW1hZ2UtYm94IGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctaW1hZ2UtYm94IC5ibG9nLXRpdGxlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLmJsb2ctZGV0YWlscyAuYmxvZy1pbWFnZS1ib3ggLmJsb2ctdGl0bGUge1xuICAgICAgICAgIHBhZGRpbmc6IDZweDtcbiAgICAgICAgICBib3R0b206IDEwcHg7XG4gICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH0gfVxuICAgICAgLmJsb2ctZGV0YWlscyAuYmxvZy1pbWFnZS1ib3ggLmJsb2ctdGl0bGUgLmJsb2ctY29udGFpbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMTVweCArICgyNSAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgICAgICAuYmxvZy1kZXRhaWxzIC5ibG9nLWltYWdlLWJveCAuYmxvZy10aXRsZSAuYmxvZy1jb250YWluIGg0IHtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgICAgICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctaW1hZ2UtYm94IC5ibG9nLXRpdGxlIC5ibG9nLWNvbnRhaW4gaDQge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAgICAgLmJsb2ctZGV0YWlscyAuYmxvZy1pbWFnZS1ib3ggLmJsb2ctdGl0bGUgLmJsb2ctY29udGFpbiBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMjggLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgLmJsb2ctZGV0YWlscyAuYmxvZy1kZXRhaWwtY29udGFpbiB7XG4gICAgcGFkZGluZzogMCAwIGNhbGMoMjBweCArICgyNSAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuICAgIG1hcmdpbi10b3A6IDQwcHg7IH1cbiAgICAuYmxvZy1kZXRhaWxzIC5ibG9nLWRldGFpbC1jb250YWluIHNwYW4ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctZGV0YWlsLWNvbnRhaW4gaDIge1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBmb250LXNpemU6IGNhbGMoMThweCArICgyNyAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICBtYXJnaW4tdG9wOiAtOHB4OyB9XG4gICAgLmJsb2ctZGV0YWlscyAuYmxvZy1kZXRhaWwtY29udGFpbiBwIHtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG4gICAgICAuYmxvZy1kZXRhaWxzIC5ibG9nLWRldGFpbC1jb250YWluIHAgKyBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYygxNXB4ICsgKDI1IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgICAuYmxvZy1kZXRhaWxzIC5ibG9nLWRldGFpbC1jb250YWluIHAuZmlydC1sYXR0ZXI6OmZpcnN0LWxldHRlciB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBmb250LXNpemU6IDc1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogNHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDNweDtcbiAgICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAuYmxvZy1kZXRhaWxzIC5ibG9nLWRldGFpbC1jb250YWluIC5ibG9nLXByb2ZpbGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctZGV0YWlsLWNvbnRhaW4gLmJsb2ctcHJvZmlsZSAuaW1hZ2UtcHJvZmlsZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDU1cHg7XG4gICAgICAgIGhlaWdodDogNTVweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctZGV0YWlsLWNvbnRhaW4gLmJsb2ctcHJvZmlsZSAuaW1hZ2UtcHJvZmlsZSBpbWcge1xuICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctZGV0YWlsLWNvbnRhaW4gLmJsb2ctcHJvZmlsZSAuaW1hZ2UtbmFtZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gICAgICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctZGV0YWlsLWNvbnRhaW4gLmJsb2ctcHJvZmlsZSAuaW1hZ2UtbmFtZSBoMyB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxN3B4ICsgKDIwIC0gMTcpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XG4gICAgICAgIC5ibG9nLWRldGFpbHMgLmJsb2ctZGV0YWlsLWNvbnRhaW4gLmJsb2ctcHJvZmlsZSAuaW1hZ2UtbmFtZSBoNiB7XG4gICAgICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTUgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAuYmxvZy1kZXRhaWxzIC5ibG9nLWRldGFpbC1jb250YWluIC5yZXZpZXctbmFtZSBwIHtcbiAgICAgIG1hcmdpbi10b3A6IC00cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgY29sb3I6ICM2Yzc1N2Q7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC43cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgZm9udC1zaXplOiBjYWxjKDEycHggKyAoMTQgLSAxMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAuYmxvZy1kZXRhaWxzIC5ibG9nLWRldGFpbC1jb250YWluIC5yZXZpZXctbmFtZSBwICsgcCB7XG4gICAgICAgIG1hcmdpbjogMjBweCAwOyB9XG5cbi5sZWF2ZS1jb21tZW50cyAuZm9ybS1jb250cm9sIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjNmODtcbiAgYm9yZGVyOiBub25lOyB9XG4gIC5sZWF2ZS1jb21tZW50cyAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5ibG9jay1zaGFkb3ctc3BhY2Uge1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYyg4MHB4IC0gMTRweCk7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgUGFnaW5hdGlvbiBDc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5wYWdlLXNlY3Rpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiA1MHB4OyB9XG4gIC5wYWdlLXNlY3Rpb24gLnBhZ2luYXRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5wYWdlLXNlY3Rpb24gLnBhZ2luYXRpb24gLnBhZ2UtaXRlbSAucGFnZS1saW5rIHNwYW4gaSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTsgfVxuICAgIC5wYWdlLXNlY3Rpb24gLnBhZ2luYXRpb24gLnBhZ2UtaXRlbSArIC5wYWdlLWl0ZW0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLnBhZ2Utc2VjdGlvbiAucGFnaW5hdGlvbiAucGFnZS1pdGVtICsgLnBhZ2UtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgLnBhZ2Utc2VjdGlvbiAucGFnaW5hdGlvbiAucGFnZS1pdGVtLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHotaW5kZXg6IDA7IH1cbiAgICAucGFnZS1zZWN0aW9uIC5wYWdpbmF0aW9uIC5wYWdlLWl0ZW0gLnBhZ2UtbGluayB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gICAgICAucGFnZS1zZWN0aW9uIC5wYWdpbmF0aW9uIC5wYWdlLWl0ZW0gLnBhZ2UtbGluazpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgIC5wYWdlLXNlY3Rpb24gLnBhZ2luYXRpb24gLnBhZ2UtaXRlbSAucGFnZS1saW5rOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgQ2FydCBQYWdlIFNjc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi53aXNoLWxpc3Qtc2VjdGlvbi50YWJsZS1kYXNoYm9hcmQgdGhlYWQgdHIgdGgge1xuICBwYWRkaW5nOiAxNnB4IDEycHg7IH1cblxuLndpc2gtbGlzdC1zZWN0aW9uLnRhYmxlLWRhc2hib2FyZCB0Ym9keSB0ciB0ZCB7XG4gIHBhZGRpbmc6IDE2cHg7IH1cblxuLndpc2gtbGlzdC1zZWN0aW9uIC5jb3VudC1kb3duIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYmFja2dyb3VuZDogI2YwZjNmODtcbiAgcGFkZGluZzogMTBweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDEuMXB4O1xuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLndpc2gtbGlzdC1zZWN0aW9uIC5jb3VudC1kb3duIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgLndpc2gtbGlzdC1zZWN0aW9uIC5jb3VudC1kb3duIGg1IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC53aXNoLWxpc3Qtc2VjdGlvbiAuY291bnQtZG93biBoNSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi53aXNoLWxpc3Qtc2VjdGlvbi5zaG9wcGluZy1idXR0b24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAud2lzaC1saXN0LXNlY3Rpb24uc2hvcHBpbmctYnV0dG9uIC5mYXMge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuXG4udGFibGUgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci10b3A6IG5vbmU7IH1cblxuLmNhcnQtYnV0dG9ucyB7XG4gIHBhZGRpbmctdG9wOiAzNXB4OyB9XG4gIC5jYXJ0LWJ1dHRvbnMgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgcGFkZGluZy1yaWdodDogNTlweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzOHB4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAud2lzaGxpc3QtdGFibGUgdGhlYWQgdHIgdGg6bnRoLWNoaWxkKG4gKyAzKSB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAud2lzaGxpc3QtdGFibGUgdGJvZHkgdHIgdGQ6bnRoLWNoaWxkKG4gKyAzKSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAud2lzaGxpc3QtdGFibGUgdGJvZHkgdHIgdGQgLm1vYmlsZS1jYXJ0LWNvbnRlbnQgLmNvbCB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuXG4uY2FydC10YWJsZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmNhcnQtdGFibGUgdGhlYWQgdGgge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDEycHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZmYyZjcgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3OyB9XG4gIC5jYXJ0LXRhYmxlIHRib2R5IGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jYXJ0LXRhYmxlIHRib2R5IHRyIHRkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGNvbG9yOiAjNzc3Nzc3O1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZmYyZjcgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMTRweCA4cHg7IH1cbiAgICAuY2FydC10YWJsZSB0Ym9keSB0ciB0ZCBhIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAuY2FydC10YWJsZSB0Ym9keSB0ciB0ZCBhLmljb24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWZmMmY3O1xuICAgICAgICBtYXJnaW46IDAgNXB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIC5jYXJ0LXRhYmxlIHRib2R5IHRyIHRkIGEuaWNvbiB7XG4gICAgICAgICAgICBtYXJnaW46IDA7IH0gfVxuICAgICAgICAuY2FydC10YWJsZSB0Ym9keSB0ciB0ZCBhLmljb246aG92ZXIgLmZhcyB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgICAgICAuY2FydC10YWJsZSB0Ym9keSB0ciB0ZCBhLmljb24gLmZhcyB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMjVweCArICgzNSAtIDI1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICBoZWlnaHQ6IGNhbGMoMjVweCArICgzNSAtIDI1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxNCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG4gICAgICAuY2FydC10YWJsZSB0Ym9keSB0ciB0ZCBhIGltZyB7XG4gICAgICAgIGhlaWdodDogNzBweDsgfVxuICAgIC5jYXJ0LXRhYmxlIHRib2R5IHRyIHRkIHAge1xuICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLmNhcnQtdGFibGUgdGJvZHkgdHIgdGQgcCBpbWcge1xuICAgICAgICBoZWlnaHQ6IDkwcHg7IH1cbiAgICAuY2FydC10YWJsZSB0Ym9keSB0ciB0ZCAudGQtY29sb3Ige1xuICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWRlYWZ1bHQpOyB9XG4gICAgLmNhcnQtdGFibGUgdGJvZHkgdHIgdGQgaDIge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgLmNhcnQtdGFibGUgdGJvZHkgdHIgdGQgLm1vYmlsZS1jYXJ0LWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5jYXJ0LXRhYmxlIHRib2R5IHRyIHRkIC5tb2JpbGUtY2FydC1jb250ZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7IH0gfVxuICAgICAgLmNhcnQtdGFibGUgdGJvZHkgdHIgdGQgLm1vYmlsZS1jYXJ0LWNvbnRlbnQgLnF0eS1ib3gge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cbiAgICAgICAgLmNhcnQtdGFibGUgdGJvZHkgdHIgdGQgLm1vYmlsZS1jYXJ0LWNvbnRlbnQgLnF0eS1ib3ggLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgIHdpZHRoOiA0OHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDZweDsgfVxuICAgICAgLmNhcnQtdGFibGUgdGJvZHkgdHIgdGQgLm1vYmlsZS1jYXJ0LWNvbnRlbnQgLmNvbCB7XG4gICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgLmNhcnQtdGFibGUgdGJvZHkgdHIgdGQgLm1vYmlsZS1jYXJ0LWNvbnRlbnQgLmNvbCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfSB9XG4gICAgICAuY2FydC10YWJsZSB0Ym9keSB0ciB0ZCAubW9iaWxlLWNhcnQtY29udGVudCBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICAuY2FydC10YWJsZSB0Ym9keSB0ciB0ZCAucXR5LWJveCAuaW5wdXQtZ3JvdXAge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5jYXJ0LXRhYmxlIHRib2R5IHRyIHRkIC5xdHktYm94IC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgd2lkdGg6IDc1cHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxudGZvb3QgdHIgdGgge1xuICBwYWRkaW5nLXRvcDogMzVweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxudGZvb3QgdHIgdGQge1xuICBwYWRkaW5nLXRvcDogMzVweDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmctcmlnaHQ6IDYzcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDQxcHg7IH1cbiAgdGZvb3QgdHIgdGQgaDIge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIHRmb290IHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgICB3aWR0aDogODUlO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLmxlZnQtc2lkZS1idXR0b24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5sZWZ0LXNpZGUtYnV0dG9uIGEge1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuICAgIC5sZWZ0LXNpZGUtYnV0dG9uIGEgaSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDZweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubGVmdC1zaWRlLWJ1dHRvbiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubGVmdC1zaWRlLWJ1dHRvbiAuc2hvcHBpbmctYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuLmNhcnQtc2VjdGlvbiAuY291bnQtZG93biB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgcGFkZGluZzogMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDEuMXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmNhcnQtc2VjdGlvbiAuY291bnQtZG93biB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5jYXJ0LXNlY3Rpb24gLmNvdW50LWRvd24gaDUge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmNhcnQtc2VjdGlvbiAuY291bnQtZG93biBoNSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHVuc2V0O1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5jYXJ0LXNlY3Rpb24gLmNvdW50LWRvd24gaDUge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEzcHg7IH0gfVxuXG4uY2FydC1zZWN0aW9uIC50YWJsZSB0Ym9keSArIHRib2R5IHtcbiAgYm9yZGVyLXRvcDogbm9uZTsgfVxuXG4uY2FydC1zZWN0aW9uIC5jYXJ0LWJ1dHRvbnMge1xuICBwYWRkaW5nLXRvcDogMzVweDsgfVxuICAuY2FydC1zZWN0aW9uIC5jYXJ0LWJ1dHRvbnMgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgcGFkZGluZy1yaWdodDogNTlweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzOHB4OyB9XG5cbi5jYXJ0LXNlY3Rpb24gLmNhcnQtdGFibGUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jYXJ0LXNlY3Rpb24gLmNhcnQtdGFibGUgdGhlYWQgdGgge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWZmMmY3ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMTJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuY2FydC1zZWN0aW9uIC5jYXJ0LXRhYmxlIHRoZWFkIHRoOm50aC1sYXN0LWNoaWxkKC1uICsgNCkge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmNhcnQtc2VjdGlvbiB0Ym9keSBoMiB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNhcnQtc2VjdGlvbiB0Ym9keSB0ci50YWJsZS1vcmRlciB0ZCB7XG4gIG1pbi13aWR0aDogMTUwcHg7IH1cblxuLmNhcnQtc2VjdGlvbiB0Ym9keSB0ciB0ZCB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2M3YzdjNSAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1pbi13aWR0aDogMTc1cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmNhcnQtc2VjdGlvbiB0Ym9keSB0ciB0ZDpudGgtbGFzdC1jaGlsZCgtbiArIDQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIGEge1xuICAgIGNvbG9yOiAjN2U3ZTdlO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIGEuaWNvbiB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE2OSwgMTY5LCAxNjksIDAuNSk7XG4gICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7IH1cbiAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIGEgaW1nIHtcbiAgICAgIGhlaWdodDogODBweDsgfVxuICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIHAge1xuICAgIGNvbG9yOiAjNzc3Nzc3O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIHAgaW1nIHtcbiAgICAgIGhlaWdodDogOTBweDsgfVxuICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIC50ZC1jb2xvciB7XG4gICAgY29sb3I6IHZhcigtLXRoZW1lLWRlYWZ1bHQpOyB9XG4gIC5jYXJ0LXNlY3Rpb24gdGJvZHkgdHIgdGQgaDIge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLmNhcnQtc2VjdGlvbiB0Ym9keSB0ciB0ZCAubW9iaWxlLWNhcnQtY29udGVudCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIC5tb2JpbGUtY2FydC1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9IH1cbiAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIC5tb2JpbGUtY2FydC1jb250ZW50IC5xdHktYm94IHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuICAgICAgLmNhcnQtc2VjdGlvbiB0Ym9keSB0ciB0ZCAubW9iaWxlLWNhcnQtY29udGVudCAucXR5LWJveCAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIHdpZHRoOiA0OHB4O1xuICAgICAgICBwYWRkaW5nOiA2cHg7IH1cbiAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIC5tb2JpbGUtY2FydC1jb250ZW50IC5jb2wge1xuICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIC5tb2JpbGUtY2FydC1jb250ZW50IC5jb2wge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4OyB9IH1cbiAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIC5tb2JpbGUtY2FydC1jb250ZW50IGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIC5xdHktYm94IC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuY2FydC1zZWN0aW9uIHRib2R5IHRyIHRkIC5xdHktYm94IC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgICAgIHdpZHRoOiA3NXB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICBoZWlnaHQ6IDUwcHg7IH1cblxuLmNhcnQtc2VjdGlvbiB0Zm9vdCB0ciB0aCB7XG4gIHBhZGRpbmctdG9wOiAzNXB4O1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4uY2FydC1zZWN0aW9uIHRmb290IHRyIHRkIHtcbiAgcGFkZGluZy10b3A6IDM1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nLXJpZ2h0OiA2M3B4O1xuICBwYWRkaW5nLXJpZ2h0OiA0MXB4OyB9XG4gIC5jYXJ0LXNlY3Rpb24gdGZvb3QgdHIgdGQgaDIge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5jYXJ0LXNlY3Rpb24gdGZvb3QgdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiA4NSU7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4uY2FydC1zZWN0aW9uIC5sZWZ0LXNpZGUtYnV0dG9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBbZGlyPVwicnRsXCJdIC5jYXJ0LXNlY3Rpb24gLmxlZnQtc2lkZS1idXR0b24gYSBpIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5jYXJ0LXNlY3Rpb24gLmxlZnQtc2lkZS1idXR0b24ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmNhcnQtc2VjdGlvbiAubGVmdC1zaWRlLWJ1dHRvbiAuc2hvcHBpbmctYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuLmNhcnQtc2VjdGlvbiAuY2FydC1jaGVja291dC1zZWN0aW9uIHtcbiAgbWFyZ2luLXRvcDogMzBweDsgfVxuICAuY2FydC1zZWN0aW9uIC5jYXJ0LWNoZWNrb3V0LXNlY3Rpb24gLnByb21vLXNlY3Rpb24gLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAuY2FydC1zZWN0aW9uIC5jYXJ0LWNoZWNrb3V0LXNlY3Rpb24gLnByb21vLXNlY3Rpb24gLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICAgICAgcGFkZGluZzogMTJweCAyMHB4OyB9XG4gIC5jYXJ0LXNlY3Rpb24gLmNhcnQtY2hlY2tvdXQtc2VjdGlvbiAuY2hlY2tvdXQtYnV0dG9uIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmNhcnQtc2VjdGlvbiAuY2FydC1jaGVja291dC1zZWN0aW9uIC5jaGVja291dC1idXR0b24ge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIC5jYXJ0LXNlY3Rpb24gLmNhcnQtY2hlY2tvdXQtc2VjdGlvbiAuY2hlY2tvdXQtYnV0dG9uIGEge1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XG4gIC5jYXJ0LXNlY3Rpb24gLmNhcnQtY2hlY2tvdXQtc2VjdGlvbiAuY2FydC1ib3gge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuY2FydC1zZWN0aW9uIC5jYXJ0LWNoZWNrb3V0LXNlY3Rpb24gLmNhcnQtYm94IGxhYmVsIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuICAgIC5jYXJ0LXNlY3Rpb24gLmNhcnQtY2hlY2tvdXQtc2VjdGlvbiAuY2FydC1ib3ggLmNhcnQtYm94LWRldGFpbHMgLnRvdGFsLWRldGFpbHMgc3BhbiB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmNhcnQtc2VjdGlvbiAuY2FydC1jaGVja291dC1zZWN0aW9uIC5jYXJ0LWJveCAuY2FydC1ib3gtZGV0YWlscyAudG90YWwtZGV0YWlscyBzcGFuIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAuY2FydC1zZWN0aW9uIC5jYXJ0LWNoZWNrb3V0LXNlY3Rpb24gLmNhcnQtYm94IC5jYXJ0LWJveC1kZXRhaWxzIC50b3RhbC1kZXRhaWxzIC50b3AtZGV0YWlscyB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2M3YzdjNTtcbiAgICAgIHBhZGRpbmc6IDIycHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAuY2FydC1zZWN0aW9uIC5jYXJ0LWNoZWNrb3V0LXNlY3Rpb24gLmNhcnQtYm94IC5jYXJ0LWJveC1kZXRhaWxzIC50b3RhbC1kZXRhaWxzIC50b3AtZGV0YWlscyBoMyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gICAgICAuY2FydC1zZWN0aW9uIC5jYXJ0LWNoZWNrb3V0LXNlY3Rpb24gLmNhcnQtYm94IC5jYXJ0LWJveC1kZXRhaWxzIC50b3RhbC1kZXRhaWxzIC50b3AtZGV0YWlscyBoNiB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjk7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gICAgLmNhcnQtc2VjdGlvbiAuY2FydC1jaGVja291dC1zZWN0aW9uIC5jYXJ0LWJveCAuY2FydC1ib3gtZGV0YWlscyAudG90YWwtZGV0YWlscyAuYm90dG9tLWRldGFpbHMgYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMTJweCAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuMnB4OyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIENoZWNrb3V0IFBhZ2UgU2NzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnlvdXItY2FydC1ib3gge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDEwcHg7IH1cbiAgLnlvdXItY2FydC1ib3ggLmxpc3QtZ3JvdXAgLmxoLWNvbmRlbnNlZCB7XG4gICAgcGFkZGluZzogMTVweCAyNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgICAueW91ci1jYXJ0LWJveCAubGlzdC1ncm91cCAubGgtY29uZGVuc2VkLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZWZmMmY3O1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDMzLCAzNywgNDEsIDAuMTI1KTsgfVxuICAgIC55b3VyLWNhcnQtYm94IC5saXN0LWdyb3VwIC5saC1jb25kZW5zZWQgaDYge1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAueW91ci1jYXJ0LWJveCAubGlzdC1ncm91cCAubGgtY29uZGVuc2VkIHNtYWxsLFxuICAgIC55b3VyLWNhcnQtYm94IC5saXN0LWdyb3VwIC5saC1jb25kZW5zZWQgc3BhbixcbiAgICAueW91ci1jYXJ0LWJveCAubGlzdC1ncm91cCAubGgtY29uZGVuc2VkIHN0cm9uZyB7XG4gICAgICBjb2xvcjogIzdlN2U3ZTsgfVxuICAueW91ci1jYXJ0LWJveCAubGlzdC1ncm91cCAuY2FyZCB7XG4gICAgYm9yZGVyOiBub25lOyB9XG4gIC55b3VyLWNhcnQtYm94IC5uZXctYmFkZ2Uge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDsgfVxuICAueW91ci1jYXJ0LWJveCAuY3VzdG9tZS1pbXB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgICBwYWRkaW5nOiA2cHggMTJweDsgfVxuXG4uY3VzdG9tZS1mb3JtLXNlbGVjdCB7XG4gIHBhZGRpbmc6IDEycHggMjBweDsgfVxuXG4uY2hlY2tvdXQtbGFiZWwge1xuICBwYWRkaW5nLXRvcDogMnB4OyB9XG5cbi5jdXN0b21lLXJhZGlvLWJveCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLmN1c3RvbWUtcmFkaW8tYm94IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgLmN1c3RvbWUtcmFkaW8tYm94IC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAgIC5jdXN0b21lLXJhZGlvLWJveCAuZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gICAgLmN1c3RvbWUtcmFkaW8tYm94IC5mb3JtLWNoZWNrLWlucHV0OmFjdGl2ZSB7XG4gICAgICBmaWx0ZXI6IG5vbmU7IH1cbiAgICAuY3VzdG9tZS1yYWRpby1ib3ggLmZvcm0tY2hlY2staW5wdXQ6Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG5ociB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2Q7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgT3JkZXIgU3VjY2VzcyBjc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5zdWNjZXNzLWljb24ge1xuICBwYWRkaW5nOiA3MHB4IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGYzZjg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLnN1Y2Nlc3MtaWNvbiB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDIwcHg7IH0gfVxuICAuc3VjY2Vzcy1pY29uIC5tYWluLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLnN1Y2Nlc3MtaWNvbiAubWFpbi1jb250YWluZXIgLmNoZWNrLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgIGFuaW1hdGlvbjogbW92ZXIgMXMgaW5maW5pdGUgYWx0ZXJuYXRlOyB9XG4gICAgICAuc3VjY2Vzcy1pY29uIC5tYWluLWNvbnRhaW5lciAuY2hlY2stY29udGFpbmVyIC5jaGVjay1iYWNrZ3JvdW5kIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20gcmlnaHQsICMwMDgwMDAsICMwMDgwMDApO1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCA2NXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSkgaW5zZXQsIDBweCAwcHggMHB4IDY1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjg0KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBhbmltYXRpb246IGFuaW1hdGVDb250YWluZXIgMC43NXMgZWFzZS1vdXQgZm9yd2FyZHMgMC43NXM7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBvcGFjaXR5OiAwOyB9XG4gICAgICAgIC5zdWNjZXNzLWljb24gLm1haW4tY29udGFpbmVyIC5jaGVjay1jb250YWluZXIgLmNoZWNrLWJhY2tncm91bmQgc3ZnIHtcbiAgICAgICAgICB3aWR0aDogNjUlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpO1xuICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDgwO1xuICAgICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiA4MDtcbiAgICAgICAgICBhbmltYXRpb246IGFuaW1hdGVDaGVjayAwLjM1cyBmb3J3YXJkcyAxLjI1cyBlYXNlLW91dDsgfVxuICAgICAgLnN1Y2Nlc3MtaWNvbiAubWFpbi1jb250YWluZXIgLmNoZWNrLWNvbnRhaW5lciAuY2hlY2stc2hhZG93IHtcbiAgICAgICAgYm90dG9tOiBjYWxjKC0xNSUgLSA1cHgpO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjbG9zZXN0LXNpZGUsICM0OWRhODMsIHRyYW5zcGFyZW50KTtcbiAgICAgICAgYW5pbWF0aW9uOiBhbmltYXRlU2hhZG93IDAuNzVzIGVhc2Utb3V0IGZvcndhcmRzIDAuNzVzOyB9XG4gIC5zdWNjZXNzLWljb24gLnN1Y2Nlc3MtY29udGFpbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnN1Y2Nlc3MtaWNvbiAuc3VjY2Vzcy1jb250YWluIGg0IHtcbiAgICAgIGNvbG9yOiBncmVlbjtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAuc3VjY2Vzcy1pY29uIC5zdWNjZXNzLWNvbnRhaW4gaDUge1xuICAgICAgbWFyZ2luOiA1cHggMCAxMHB4O1xuICAgICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTggLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAuc3VjY2Vzcy1pY29uIC5zdWNjZXNzLWNvbnRhaW4gaDYge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuMXB4OyB9XG5cbi5vcmRlci1sZWZ0LWJveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5vcmRlci1sZWZ0LWJveDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7IH1cbiAgLm9yZGVyLWxlZnQtYm94Om50aC1jaGlsZCg0KTo6YWZ0ZXIge1xuICAgIHdpZHRoOiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5vcmRlci1sZWZ0LWJveDpudGgtY2hpbGQoMik6OmFmdGVyIHtcbiAgICAgIHdpZHRoOiAwOyB9IH1cblxuLm9yZGVyLWRldGFpbHMtdGFibGUgLnRhYmxlIHRib2R5IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7IH1cbiAgLm9yZGVyLWRldGFpbHMtdGFibGUgLnRhYmxlIHRib2R5IHRyIHRkIHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICM3ZTdlN2U7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5vcmRlci1kZXRhaWxzLXRhYmxlIC50YWJsZSB0Ym9keSB0ciB0ZCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLm9yZGVyLWRldGFpbHMtdGFibGUgLnRhYmxlIHRib2R5IHRyIHRkOm50aC1sYXN0LWNoaWxkKC1uICsgNCkge1xuICAgICAgICBkaXNwbGF5OiByZXZlcnQgIWltcG9ydGFudDsgfSB9XG4gICAgLm9yZGVyLWRldGFpbHMtdGFibGUgLnRhYmxlIHRib2R5IHRyIHRkOm50aC1jaGlsZCgxKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5vcmRlci1kZXRhaWxzLXRhYmxlIC50YWJsZSB0Ym9keSB0ciB0ZCBoNSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cblxuLm9yZGVyLWRldGFpbHMtdGFibGUgLnRhYmxlIHRmb290IHRyIHRkIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHBhZGRpbmc6IDEwcHggMTVweDsgfVxuICBbZGlyPVwicnRsXCJdIC5vcmRlci1kZXRhaWxzLXRhYmxlIC50YWJsZSB0Zm9vdCB0ciB0ZCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAub3JkZXItZGV0YWlscy10YWJsZSAudGFibGUgdGZvb3QgdHIgdGQ6bnRoLWNoaWxkKDEpIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAub3JkZXItZGV0YWlscy10YWJsZSAudGFibGUgdGZvb3QgdHIgdGQ6bnRoLWNoaWxkKDEpIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5vcmRlci1kZXRhaWxzLXRhYmxlIC50YWJsZSB0Zm9vdCB0ciB0ZCBoNCB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBjb2xvcjogIzIxMjUyOTsgfVxuXG4ub3JkZXItZGV0YWlscy10YWJsZSAudGFibGUgdGZvb3QgdHIudGFibGUtb3JkZXI6bnRoLWNoaWxkKDMpIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7IH1cblxuLm9yZGVyLWRldGFpbHMtdGFibGUgLm9yZGVyLXN1Y2Nlc3Mge1xuICBwYWRkaW5nOiAzMHB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgLm9yZGVyLWRldGFpbHMtdGFibGUgLm9yZGVyLXN1Y2Nlc3Mge1xuICAgICAgcGFkZGluZzogMjBweDsgfSB9XG4gIC5vcmRlci1kZXRhaWxzLXRhYmxlIC5vcmRlci1zdWNjZXNzIGg0IHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7IH1cbiAgLm9yZGVyLWRldGFpbHMtdGFibGUgLm9yZGVyLXN1Y2Nlc3MgLm9yZGVyLWRldGFpbHMgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgIGNvbG9yOiAjN2U3ZTdlOyB9XG4gIC5vcmRlci1kZXRhaWxzLXRhYmxlIC5vcmRlci1zdWNjZXNzIC5wYXltZW50LW1vZGUgcCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBjb2xvcjogIzdlN2U3ZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4OyB9XG4gIC5vcmRlci1kZXRhaWxzLXRhYmxlIC5vcmRlci1zdWNjZXNzIC5kZWxpdmVyeS1zZWMge1xuICAgIG1hcmdpbi1ib3R0b206IC01cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLm9yZGVyLWRldGFpbHMtdGFibGUgLm9yZGVyLXN1Y2Nlc3MgLmRlbGl2ZXJ5LXNlYyBoMyB7XG4gICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICAgIC5vcmRlci1kZXRhaWxzLXRhYmxlIC5vcmRlci1zdWNjZXNzIC5kZWxpdmVyeS1zZWMgaDMgc3BhbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAub3JkZXItZGV0YWlscy10YWJsZSAub3JkZXItc3VjY2VzcyAuZGVsaXZlcnktc2VjIGgzIHNwYW4ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG4gICAgLm9yZGVyLWRldGFpbHMtdGFibGUgLm9yZGVyLXN1Y2Nlc3MgLmRlbGl2ZXJ5LXNlYyBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PT09XG4gICBEYXNoYm9hcmQgU2NzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uZGFzaC1maWx0ZXIge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG5cbi5jdXN0b21lLW5hdi10YWJzIHtcbiAgcGFkZGluZzogMjBweDtcbiAgY29sb3I6IGJsYWNrO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAjZWZmMmY3OyB9XG4gIFtkaXI9XCJydGxcIl0gLmN1c3RvbWUtbmF2LXRhYnMge1xuICAgIHBhZGRpbmc6IDIwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmN1c3RvbWUtbmF2LXRhYnMge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgei1pbmRleDogOTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IC0zMDBweDtcbiAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgICAgIC5jdXN0b21lLW5hdi10YWJzLnNob3cge1xuICAgICAgICBsZWZ0OiAwOyB9IH1cbiAgLmN1c3RvbWUtbmF2LXRhYnMgLm5hdi1pdGVtIC5uYXYtbGluayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICBjb2xvcjogIzIxMjUyOSAhaW1wb3J0YW50OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuY3VzdG9tZS1uYXYtdGFicyAubmF2LWl0ZW0gLm5hdi1saW5rIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgLmN1c3RvbWUtbmF2LXRhYnMgLm5hdi1pdGVtIC5uYXYtbGluayBpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5jdXN0b21lLW5hdi10YWJzIC5uYXYtaXRlbSAubmF2LWxpbmsgaSB7XG4gICAgICAgIHRvcDogM3B4O1xuICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgIC5jdXN0b21lLW5hdi10YWJzIC5uYXYtaXRlbSAubmF2LWxpbms6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMTAxXCI7XG4gICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICBvcGFjaXR5OiAwOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5jdXN0b21lLW5hdi10YWJzIC5uYXYtaXRlbSAubmF2LWxpbms6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgIC5jdXN0b21lLW5hdi10YWJzIC5uYXYtaXRlbSAubmF2LWxpbms6aG92ZXIge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKSAhaW1wb3J0YW50OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5jdXN0b21lLW5hdi10YWJzIC5uYXYtaXRlbSAubmF2LWxpbms6aG92ZXIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgICAgIC5jdXN0b21lLW5hdi10YWJzIC5uYXYtaXRlbSAubmF2LWxpbms6aG92ZXI6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgbGVmdDogMHB4OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLmN1c3RvbWUtbmF2LXRhYnMgLm5hdi1pdGVtIC5uYXYtbGluazpob3ZlcjpiZWZvcmUge1xuICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgIHJpZ2h0OiAwOyB9XG4gICAgLmN1c3RvbWUtbmF2LXRhYnMgLm5hdi1pdGVtIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuY3VzdG9tZS1uYXYtdGFicyAubmF2LWl0ZW0gLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuICAgICAgLmN1c3RvbWUtbmF2LXRhYnMgLm5hdi1pdGVtIC5uYXYtbGluay5hY3RpdmU6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgbGVmdDogMHB4OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLmN1c3RvbWUtbmF2LXRhYnMgLm5hdi1pdGVtIC5uYXYtbGluay5hY3RpdmU6YmVmb3JlIHtcbiAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKSB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi5wYWdlLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAucGFnZS10aXRsZSBoMiB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgLnBhZ2UtdGl0bGUgYSB7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cblxuLmJveC1oZWFkIHtcbiAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuYm94LWhlYWQgaDIge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMS4xcHg7IH1cbiAgLmJveC1oZWFkIGEge1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuYm94LWhlYWQgYSB7XG4gICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cblxuLmRhc2hib2FyZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwIDE1cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNnB4OyB9XG4gIC5kYXNoYm9hcmQgLnBhZ2UtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMjJweCArICgzMiAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5kYXNoYm9hcmQgLnBhZ2UtdGl0bGUgaDIge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDIycHggKyAoMzggLSAyMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgLmRhc2hib2FyZCBhZGRyZXNzIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IC01cHg7XG4gICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAuZGFzaGJvYXJkIC53ZWxjb21lLW1zZyBwIHtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4zcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cbiAgLmRhc2hib2FyZCAud2VsY29tZS1tc2cgaDYge1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjVweDsgfVxuICAgIC5kYXNoYm9hcmQgLndlbGNvbWUtbXNnIGg2IHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gIC5kYXNoYm9hcmQgLmJveC1hY2NvdW50IHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDI1cHggKyAoNDUgLSAyNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgICAuZGFzaGJvYXJkIC5ib3gtYWNjb3VudCAuYm94LWNvbnRlbnQge1xuICAgICAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgICAgIC5kYXNoYm9hcmQgLmJveC1hY2NvdW50IC5ib3gtY29udGVudCBoNCB7XG4gICAgICAgIG1hcmdpbjogMTVweCAwOyB9XG4gIC5kYXNoYm9hcmQgLmFkZHJlc3MtYm94IHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDVweCArICgyMCAtIDUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5kYXNoYm9hcmQgLmJveC10aXRsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDtcbiAgICBwYWRkaW5nOiBjYWxjKDRweCArICg4IC0gNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMDsgfVxuICAgIC5kYXNoYm9hcmQgLmJveC10aXRsZSBoMyB7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gIC5kYXNoYm9hcmQgaDYsXG4gIC5kYXNoYm9hcmQgcCB7XG4gICAgbWFyZ2luOiA2cHggMDtcbiAgICBsaW5lLWhlaWdodDogMS40OyB9XG5cbi5vcmRlci1ib3gtY29udGFpbiAub3JkZXItYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNztcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAub3JkZXItYm94LWNvbnRhaW4gLm9yZGVyLWJveCAub3JkZXItYm94LWltYWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IC0yMHB4O1xuICAgIHdpZHRoOiAyNSU7XG4gICAgb3BhY2l0eTogMC4wNDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAub3JkZXItYm94LWNvbnRhaW4gLm9yZGVyLWJveCAub3JkZXItYm94LWltYWdlIHtcbiAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgcmlnaHQ6IHVuc2V0OyB9XG4gIC5vcmRlci1ib3gtY29udGFpbiAub3JkZXItYm94OmhvdmVyIC5vcmRlci1ib3gtaW1hZ2Uge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC03ZGVnKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgIG9wYWNpdHk6IDAuMjU7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5vcmRlci1ib3gtY29udGFpbiAub3JkZXItYm94OmhvdmVyIC5vcmRlci1ib3gtaW1hZ2Uge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoN2RlZykgdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAub3JkZXItYm94LWNvbnRhaW4gLm9yZGVyLWJveCAub3JkZXItYm94LWNvbnRhaW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5vcmRlci1ib3gtY29udGFpbiAub3JkZXItYm94IC5vcmRlci1ib3gtY29udGFpbiBpbWcge1xuICAgICAgd2lkdGg6IGNhbGMoNDBweCArICg1MCAtIDQwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgIC5vcmRlci1ib3gtY29udGFpbiAub3JkZXItYm94IC5vcmRlci1ib3gtY29udGFpbiA+IGRpdiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5vcmRlci1ib3gtY29udGFpbiAub3JkZXItYm94IC5vcmRlci1ib3gtY29udGFpbiA+IGRpdiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9XG4gICAgICAub3JkZXItYm94LWNvbnRhaW4gLm9yZGVyLWJveCAub3JkZXItYm94LWNvbnRhaW4gPiBkaXYgaDMge1xuICAgICAgICBtYXJnaW4tdG9wOiA2cHg7IH1cblxuLmRhc2hib2FyZC1wcm9maWxlIC5kYXNoLXByb2ZpbGUgbGkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAycHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLmRhc2hib2FyZC1wcm9maWxlIC5kYXNoLXByb2ZpbGUgbGkge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9IH1cbiAgLmRhc2hib2FyZC1wcm9maWxlIC5kYXNoLXByb2ZpbGUgbGkgLmxlZnQge1xuICAgIHdpZHRoOiAyMjBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLmRhc2hib2FyZC1wcm9maWxlIC5kYXNoLXByb2ZpbGUgbGkgLmxlZnQge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLmRhc2hib2FyZC1wcm9maWxlIC5kYXNoLXByb2ZpbGUgbGkgLmxlZnQge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfSB9XG4gICAgLmRhc2hib2FyZC1wcm9maWxlIC5kYXNoLXByb2ZpbGUgbGkgLmxlZnQgaDYge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gIC5kYXNoYm9hcmQtcHJvZmlsZSAuZGFzaC1wcm9maWxlIGxpIGEge1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuZGFzaGJvYXJkLXByb2ZpbGUgLmRhc2gtcHJvZmlsZSBsaSBhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuXG4uZGFzaGJvYXJkLXNlY3VyaXR5IC5wYWdlLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4uZGFzaGJvYXJkLXNlY3VyaXR5IHAge1xuICBsaW5lLWhlaWdodDogMS42O1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtOyB9XG5cbi5kYXNoYm9hcmQtc2VjdXJpdHkgLnNlY3VyaXR5LWRldGFpbHMge1xuICBtYXJnaW4tYm90dG9tOiAxOHB4OyB9XG4gIC5kYXNoYm9hcmQtc2VjdXJpdHkgLnNlY3VyaXR5LWRldGFpbHMgaDUgc3BhbiB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogIzIxMjUyOTsgfVxuXG4uZGFzaGJvYXJkLXNlY3VyaXR5IC5zZWN1cml0eS1kZXRhaWxzLTEge1xuICBib3JkZXI6IDFweCBkYXNoZWQgcmdiYSgwLCAwLCAwLCAwLjI4KTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBwYWRkaW5nOiAxNXB4OyB9XG5cbi5zdWNjZXNzLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IGdyZWVuO1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogNHB4IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7IH1cblxuLmRhbmdlci1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiA0cHggMTBweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDsgfVxuICAuZGFuZ2VyLWJ1dHRvbi5kYW5nZXItY2VudGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZGFuZ2VyLWJ1dHRvbi5kYW5nZXItY2VudGVyIC5mZWF0aGVyIHtcbiAgICAgIHN0cm9rZTogI2ZmZjsgfVxuXG4uc2F2ZS1kZXRhaWxzLWJveCAuc2F2ZS1kZXRhaWxzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VmZjJmNztcbiAgcGFkZGluZzogY2FsYygxNXB4ICsgKDIwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNhdmUtZGV0YWlscy1ib3ggLnNhdmUtZGV0YWlscy5zaG93IHtcbiAgICBib3gtc2hhZG93OiAwIDBweCAxMHB4IHJnYmEoMzMsIDM3LCA0MSwgMC4yKTsgfVxuICAuc2F2ZS1kZXRhaWxzLWJveCAuc2F2ZS1kZXRhaWxzIC5zYXZlLW5hbWUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgLnNhdmUtZGV0YWlscy1ib3ggLnNhdmUtZGV0YWlscyAuc2F2ZS1uYW1lIGg1IHtcbiAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gIC5zYXZlLWRldGFpbHMtYm94IC5zYXZlLWRldGFpbHMgLnNhdmUtcG9zaXRpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDhweCAxNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnNhdmUtZGV0YWlscy1ib3ggLnNhdmUtZGV0YWlscyAuc2F2ZS1wb3NpdGlvbiB7XG4gICAgICByaWdodDogdW5zZXQ7XG4gICAgICBsZWZ0OiAwOyB9XG4gICAgLnNhdmUtZGV0YWlscy1ib3ggLnNhdmUtZGV0YWlscyAuc2F2ZS1wb3NpdGlvbiBoNiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAuc2F2ZS1kZXRhaWxzLWJveCAuc2F2ZS1kZXRhaWxzIC5zYXZlLWFkZHJlc3MgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIG1hcmdpbjogMCAwIGNhbGMoMnB4ICsgKDUgLSAyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAuc2F2ZS1kZXRhaWxzLWJveCAuc2F2ZS1kZXRhaWxzIC5tb2JpbGUgcC5tb2JpbGUge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDZweDsgfVxuICAuc2F2ZS1kZXRhaWxzLWJveCAuc2F2ZS1kZXRhaWxzIC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW46IC01cHg7IH1cbiAgICAuc2F2ZS1kZXRhaWxzLWJveCAuc2F2ZS1kZXRhaWxzIC5idXR0b24gYSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogNXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG5cbi5wYXltZW50LWNhcmQtZGV0YWlsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5wYXltZW50LWNhcmQtZGV0YWlsOmhvdmVyIC5lZGl0LWNhcmQge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgLnBheW1lbnQtY2FyZC1kZXRhaWwuYWRkLWNhcmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAucGF5bWVudC1jYXJkLWRldGFpbC5hZGQtY2FyZCAuY2FyZC1kZXRhaWxzIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDEzMHB4O1xuICAgICAgYmFja2dyb3VuZDogI2QyZDJkMjtcbiAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgLnBheW1lbnQtY2FyZC1kZXRhaWwuYWRkLWNhcmQgLmNhcmQtZGV0YWlscyBoNSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG4gIC5wYXltZW50LWNhcmQtZGV0YWlsIC5jYXJkLWRldGFpbHMge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRiNzdhMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDFweCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKSAycHgsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNCkgM3B4LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIDRweCksIC13ZWJraXQtbGluZWFyLWdyYWRpZW50KC0yNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgNDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMikgNzAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDkwJSk7IH1cbiAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzLmNhcmQtdmlzYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3ODc2OyB9XG4gICAgLnBheW1lbnQtY2FyZC1kZXRhaWwgLmNhcmQtZGV0YWlscy5kYWJpdC1jYXJkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4NmI4Y2Y7IH1cbiAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzIC5jYXJkLW51bWJlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzIC5jYXJkLW51bWJlciBoNCB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLnBheW1lbnQtY2FyZC1kZXRhaWwgLmNhcmQtZGV0YWlscyAudmFsaWQtZGV0YWlsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygxMHB4ICsgKDIwIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gICAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzIC52YWxpZC1kZXRhaWwgLnRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzIC52YWxpZC1kZXRhaWwgLnRpdGxlIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzsgfVxuICAgICAgLnBheW1lbnQtY2FyZC1kZXRhaWwgLmNhcmQtZGV0YWlscyAudmFsaWQtZGV0YWlsIC5kYXRlIGgzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgxOCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5wYXltZW50LWNhcmQtZGV0YWlsIC5jYXJkLWRldGFpbHMgLnZhbGlkLWRldGFpbCAuZGF0ZSBoMyB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9XG4gICAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzIC52YWxpZC1kZXRhaWwgLnByaW1hcnkge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5wYXltZW50LWNhcmQtZGV0YWlsIC5jYXJkLWRldGFpbHMgLnZhbGlkLWRldGFpbCAucHJpbWFyeSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAgIC5wYXltZW50LWNhcmQtZGV0YWlsIC5jYXJkLWRldGFpbHMgLnZhbGlkLWRldGFpbCAucHJpbWFyeSBzcGFuIHtcbiAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxNCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cbiAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzIC5uYW1lLWRldGFpbCB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKDEwcHggKyAoMjUgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLnBheW1lbnQtY2FyZC1kZXRhaWwgLmNhcmQtZGV0YWlscyAubmFtZS1kZXRhaWwgLm5hbWUge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzIC5uYW1lLWRldGFpbCAubmFtZSBoNSB7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNiAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuY2FyZC1kZXRhaWxzIC5uYW1lLWRldGFpbCAuY2FyZC1pbWcge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5wYXltZW50LWNhcmQtZGV0YWlsIC5jYXJkLWRldGFpbHMgLm5hbWUtZGV0YWlsIC5jYXJkLWltZyB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAucGF5bWVudC1jYXJkLWRldGFpbCAuZWRpdC1jYXJkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzMywgMzcsIDQxLCAwLjgpO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5wYXltZW50LWNhcmQtZGV0YWlsIC5lZGl0LWNhcmQge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAucGF5bWVudC1jYXJkLWRldGFpbCAuZWRpdC1jYXJkIGEge1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuXG4uZWRpdC1jYXJkLW1vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmVkaXQtY2FyZC1tb2JpbGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgICAgIC5lZGl0LWNhcmQtbW9iaWxlIGEge1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBjb2xvcjogIzIxMjUyOTsgfSB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBPcmRlciBUcmFja2luZyBjc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4udHJhY2tlci10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDEuMnB4O1xuICBtYXJnaW46IDA7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgLnRyYWNrZXItdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTsgfSB9XG5cbi50cmFja2VyLW51bWJlciBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDEuMnB4OyB9XG4gIC50cmFja2VyLW51bWJlciBwIHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgY29sb3I6ICMyMTI1Mjk7IH1cblxuLnByb2d0cmNrciB7XG4gIG1hcmdpbjogNDBweCAwIDE1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5wcm9ndHJja3Ige1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDMwcHggMDsgfSB9XG4gIC5wcm9ndHJja3IgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5wcm9ndHJja3IgbGkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDsgfSB9XG4gICAgLnByb2d0cmNrciBsaSBoNSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLnByb2d0cmNrciBsaSBoNSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAucHJvZ3RyY2tyIGxpIGg1IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cbiAgICAucHJvZ3RyY2tyIGxpOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IC0ycHg7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSAhaW1wb3J0YW50OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLnByb2d0cmNrciBsaTpiZWZvcmUge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgbGVmdDogLTJweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5wcm9ndHJja3IgbGk6YmVmb3JlIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIHJpZ2h0OiAtMzJweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGVmdDogdW5zZXQgIWltcG9ydGFudDsgfSB9XG4gICAgLnByb2d0cmNrciBsaS5wcm9ndHJja3ItdG9kbyB7XG4gICAgICBjb2xvcjogI2MwYzBjMDtcbiAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAjYzBjMGMwO1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgIC5wcm9ndHJja3IgbGkucHJvZ3RyY2tyLXRvZG8ge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDIwcHggKyAoNDAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICAgIGJvcmRlci10b3A6IHVuc2V0O1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2MwYzBjMDsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLnByb2d0cmNrciBsaS5wcm9ndHJja3ItdG9kbyB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogNHB4IHNvbGlkICNjMGMwYzA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG4gICAgICAucHJvZ3RyY2tyIGxpLnByb2d0cmNrci10b2RvOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMTExXCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgY29sb3I6ICNjMGMwYzA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4yZW07IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgICAgLnByb2d0cmNrciBsaS5wcm9ndHJja3ItdG9kbzpiZWZvcmUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgbGVmdDogLTE3cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAucHJvZ3RyY2tyIGxpLnByb2d0cmNrci10b2RvOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICByaWdodDogLTE3cHg7IH0gfVxuICAgICAgLnByb2d0cmNrciBsaS5wcm9ndHJja3ItdG9kbyBoNiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgbWFyZ2luLXRvcDogOHB4OyB9XG4gICAgLnByb2d0cmNrciBsaS5wcm9ndHJja3ItZG9uZSB7XG4gICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgICAgLnByb2d0cmNrciBsaS5wcm9ndHJja3ItZG9uZSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IHNlbGYtc3RhcnQ7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLnByb2d0cmNrciBsaS5wcm9ndHJja3ItZG9uZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH0gfVxuICAgICAgLnByb2d0cmNrciBsaS5wcm9ndHJja3ItZG9uZTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjAwY1wiO1xuICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjJlbTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyLjJlbTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgIC5wcm9ndHJja3IgbGkucHJvZ3RyY2tyLWRvbmUgaDYge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgY29sb3I6ICM3ZTdlN2U7IH1cblxuLm9yZGVyLWxlZnQtaW1hZ2Uge1xuICBtYXJnaW4tdG9wOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5vcmRlci1sZWZ0LWltYWdlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLm9yZGVyLWxlZnQtaW1hZ2UgLnRyYWNraW5nLXByb2R1Y3QtaW1hZ2Uge1xuICAgIG1hcmdpbi1yaWdodDogNDBweDtcbiAgICB3aWR0aDogMzAlOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAub3JkZXItbGVmdC1pbWFnZSAudHJhY2tpbmctcHJvZHVjdC1pbWFnZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogNDBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLm9yZGVyLWxlZnQtaW1hZ2UgLnRyYWNraW5nLXByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLm9yZGVyLWxlZnQtaW1hZ2UgLnRyYWNraW5nLXByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAub3JkZXItbGVmdC1pbWFnZSAudHJhY2tpbmctcHJvZHVjdC1pbWFnZSB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDIwcHggKyAoNDAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH0gfVxuICAub3JkZXItbGVmdC1pbWFnZSAub3JkZXItaW1hZ2UtY29udGFpbiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAub3JkZXItbGVmdC1pbWFnZSAub3JkZXItaW1hZ2UtY29udGFpbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgICAub3JkZXItbGVmdC1pbWFnZSAub3JkZXItaW1hZ2UtY29udGFpbiBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoNXB4ICsgKDEwIC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtOyB9XG4gICAgICAub3JkZXItbGVmdC1pbWFnZSAub3JkZXItaW1hZ2UtY29udGFpbiBwIHNwYW4ge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAub3JkZXItbGVmdC1pbWFnZSAub3JkZXItaW1hZ2UtY29udGFpbiBwIHNwYW4ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgIC5vcmRlci1sZWZ0LWltYWdlIC5vcmRlci1pbWFnZS1jb250YWluIGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDEycHggKyAoMjMgLSAxMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLm9yZGVyLWxlZnQtaW1hZ2UgLm9yZGVyLWltYWdlLWNvbnRhaW4gaDQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDI0IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9IH1cblxuLm9yZGVyLWFkZHJlc3Mge1xuICBtYXJnaW4tdG9wOiA1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgIC5vcmRlci1hZGRyZXNzIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuICAub3JkZXItYWRkcmVzcyBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgICAgLm9yZGVyLWFkZHJlc3MgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgLm9yZGVyLWFkZHJlc3MgbGkgLmxlZnQtYm94IHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgbWluLXdpZHRoOiAyMTBweDtcbiAgICAgIHBhZGRpbmc6IDEwcHggMDsgfVxuICAgICAgLm9yZGVyLWFkZHJlc3MgbGkgLmxlZnQtYm94IGg2IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMzYwcHgpIHtcbiAgICAgICAgICAub3JkZXItYWRkcmVzcyBsaSAubGVmdC1ib3ggaDYge1xuICAgICAgICAgICAgY29sb3I6ICM3ZTdlN2UgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xM3B4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2FjYWNhO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfSB9XG4gICAgLm9yZGVyLWFkZHJlc3MgbGkgLnJpZ2h0LWJveCB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICB3aWR0aDogMTgwcHg7IH1cbiAgICAgIC5vcmRlci1hZGRyZXNzIGxpIC5yaWdodC1ib3ggcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLnRyYWNrZXItdGFibGUge1xuICBwYWRkaW5nLXRvcDogY2FsYygzMHB4ICsgKDYwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC50cmFja2VyLXRhYmxlIC50YWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC50cmFja2VyLXRhYmxlIC50YWJsZSB0aGVhZCB0aCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICMyMTI1MjkgIWltcG9ydGFudDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VmZjJmNyAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNzsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAudHJhY2tlci10YWJsZSAudGFibGUgdGhlYWQgdGgge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIC50cmFja2VyLXRhYmxlIC50YWJsZSB0Ym9keSBoMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLnRyYWNrZXItdGFibGUgLnRhYmxlIHRib2R5IHRyIHRkIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBjb2xvcjogIzc3Nzc3NztcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VmZjJmNyAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHBhZGRpbmc6IGNhbGMoMHB4ICsgKDE2IC0gMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYyg2cHggKyAoMTYgLSA2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIG1pbi13aWR0aDogMTc1cHg7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLnRyYWNrZXItdGFibGUgLnRhYmxlIHRib2R5IHRyIHRkIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAgIC50cmFja2VyLXRhYmxlIC50YWJsZSB0Ym9keSB0ciB0ZCBwIHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgIWltcG9ydGFudDsgfVxuICAgICAgLnRyYWNrZXItdGFibGUgLnRhYmxlIHRib2R5IHRyIHRkOm50aC1jaGlsZChvZGQpIHAge1xuICAgICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgICAgLnRyYWNrZXItdGFibGUgLnRhYmxlIHRib2R5IHRyIHRkIGEge1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgRWxlbWVudCBQYWdlIGNzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmhlYWRlci1pbWFnZS1jb250YWluIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygyMHB4ICsgKDUwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5oZWFkZXItaW1hZ2UtY29udGFpbiAuYmFja2dyb3VuZC1jb250YWluIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGhlaWdodDogMTAwJTsgfVxuXG4uY3VzdG9tZS1jYXJkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTsgfVxuICAuY3VzdG9tZS1jYXJkIC5jYXJkLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNzsgfVxuICAuY3VzdG9tZS1jYXJkIC5jYXJkLWJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgQWJvdXQgUGFnZSBjc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuYWJvdXQtaW1hZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uYWJvdXQtZGV0YWlscyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmFib3V0LWRldGFpbHMgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gIC5hYm91dC1kZXRhaWxzIGgzIHtcbiAgICBmb250LXNpemU6IGNhbGMoMThweCArICgyNSAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBsZXR0ZXItc3BhY2luZzogMS41cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC5hYm91dC1kZXRhaWxzIGgzIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cbiAgLmFib3V0LWRldGFpbHMgcCB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGNvbG9yOiAjN2U3ZTdlOyB9XG5cbi5jdXN0b21lLWFjY29yZGlvbiB7XG4gIHBhZGRpbmc6IDI1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuICAuY3VzdG9tZS1hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyMjEsIDIyMSwgMjIxLCAwLjUpO1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAgIC5jdXN0b21lLWFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1oZWFkZXIge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjIxLCAyMjEsIDIyMSwgMC41KTsgfVxuICAgICAgLmN1c3RvbWUtYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWhlYWRlciAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuICAgICAgICAuY3VzdG9tZS1hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24taGVhZGVyIC5hY2NvcmRpb24tYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICNjN2M3YzU7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgICAgICAuY3VzdG9tZS1hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24taGVhZGVyIC5hY2NvcmRpb24tYnV0dG9uLmNvbGxhcHNlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgICAgIC5jdXN0b21lLWFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1oZWFkZXIgLmFjY29yZGlvbi1idXR0b246YWZ0ZXIge1xuICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICBjb2xvcjogIzdlN2U3ZTtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAgIC5jdXN0b21lLWFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1oZWFkZXIgLmFjY29yZGlvbi1idXR0b246bm90KC5jb2xsYXBzZWQpIHtcbiAgICAgICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgICAgICAgIC5jdXN0b21lLWFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1oZWFkZXIgLmFjY29yZGlvbi1idXR0b246bm90KC5jb2xsYXBzZWQpOjphZnRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7IH1cbiAgICAuY3VzdG9tZS1hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IHAge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuM3B4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgICAgY29sb3I6ICM3ZTdlN2U7IH1cblxuLnRlYW0tY29udGFpbi50ZWFtLWNlbnRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDIycHg7IH1cbiAgLnRlYW0tY29udGFpbi50ZWFtLWNlbnRlciBpbWcge1xuICAgIHdpZHRoOiA0MCU7IH1cbiAgLnRlYW0tY29udGFpbi50ZWFtLWNlbnRlciAudGVhbS1kZXRhaWxzIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG4gICAgLnRlYW0tY29udGFpbi50ZWFtLWNlbnRlciAudGVhbS1kZXRhaWxzIHAgc3BhbiB7XG4gICAgICBjb2xvcjogIzdlN2U3ZTtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAudGVhbS1jb250YWluLnRlYW0tY2VudGVyIC50ZWFtLWRldGFpbHMgLm1vcmVsZXNzLWJ1dHRvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG5cbi50ZWFtLWRldGFpbHMge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnRlYW0tZGV0YWlscyBoMyB7XG4gICAgZm9udC1zaXplOiAyM3B4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgLnRlYW0tZGV0YWlscyBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjZweDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGNvbG9yOiAjN2U3ZTdlOyB9XG4gICAgLnRlYW0tZGV0YWlscyBwIHNwYW4ge1xuICAgICAgY29sb3I6ICM3ZTdlN2U7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC50ZWFtLWRldGFpbHMgLm1vcmVsZXNzLWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG5cbi50ZWFtLWltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjIwcHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbi50ZWFtLWxlYWRlci1zZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNzsgfVxuXG4ubGVhZGVyLWNvbnRhaW46aG92ZXIgLmxlYWRlci1pbWFnZSAuc29jaWFsLW1lZGlhIHtcbiAgYm90dG9tOiAwO1xuICBvcGFjaXR5OiAxOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5sZWFkZXItY29udGFpbjpob3ZlciAubGVhZGVyLWltYWdlIC5zb2NpYWwtbWVkaWEge1xuICAgICAgdG9wOiAwO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9IH1cblxuLmxlYWRlci1jb250YWluIC5sZWFkZXItaW1hZ2Uge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAubGVhZGVyLWNvbnRhaW4gLmxlYWRlci1pbWFnZSAuc29jaWFsLW1lZGlhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTYwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiBjYWxjKDhweCArICgxMiAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjI2LCA0NiwgODMsIDAuOCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4O1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA1cHg7XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDVweCk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5sZWFkZXItY29udGFpbiAubGVhZGVyLWltYWdlIC5zb2NpYWwtbWVkaWEge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogdW5zZXQ7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjYsIDQ2LCA4MywgMC42KTsgfSB9XG4gICAgLmxlYWRlci1jb250YWluIC5sZWFkZXItaW1hZ2UgLnNvY2lhbC1tZWRpYSBsaSB7XG4gICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgd2lkdGg6IGNhbGMoMjBweCArICgzMCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGhlaWdodDogY2FsYygyMHB4ICsgKDMwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7IH1cbiAgICAgIC5sZWFkZXItY29udGFpbiAubGVhZGVyLWltYWdlIC5zb2NpYWwtbWVkaWEgbGk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDMzLCAzNywgNDEsIDAuNyk7IH1cbiAgICAgICAgLmxlYWRlci1jb250YWluIC5sZWFkZXItaW1hZ2UgLnNvY2lhbC1tZWRpYSBsaTpob3ZlciBhIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgLmxlYWRlci1jb250YWluIC5sZWFkZXItaW1hZ2UgLnNvY2lhbC1tZWRpYSBsaSBhIHtcbiAgICAgICAgY29sb3I6ICNkZGQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMjAgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cblxuLmxlYWRlci1jb250YWluIC5sZWFkZXItY29udGFpbiB7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBwYWRkaW5nOiBjYWxjKDhweCArICgxNSAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5sZWFkZXItY29udGFpbiAubGVhZGVyLWNvbnRhaW4gaDMge1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7IH1cbiAgLmxlYWRlci1jb250YWluIC5sZWFkZXItY29udGFpbiBoNiB7XG4gICAgbWFyZ2luOiBjYWxjKDZweCArICgxMCAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIDAgMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMS42cHg7XG4gICAgY29sb3I6ICM3ZTdlN2U7IH1cblxuLnRlc3RpbW9uaWFsLXNlY3Rpb24gLnRlc3RpbW9uaWFsLWNvbnRhaW4ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJveC1zaGFkb3c6IDAgMCA4cHggI2RkZDtcbiAgcGFkZGluZzogY2FsYygyMHB4ICsgKDMwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICBib3JkZXItcmFkaXVzOiAxMHB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLnRlc3RpbW9uaWFsLXNlY3Rpb24gLnRlc3RpbW9uaWFsLWNvbnRhaW4ge1xuICAgIGRpcmVjdGlvbjogcnRsOyB9XG4gIC50ZXN0aW1vbmlhbC1zZWN0aW9uIC50ZXN0aW1vbmlhbC1jb250YWluIC50ZXh0aW1vbmlhbC1pbWFnZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnRlc3RpbW9uaWFsLXNlY3Rpb24gLnRlc3RpbW9uaWFsLWNvbnRhaW4gLnRleHRpbW9uaWFsLWltYWdlIGltZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2M3YzdjNTtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbi50ZXN0aW1vbmlhbC1zZWN0aW9uIC50ZXN0aW1vbmlhbC1kZXRhaWxzIHtcbiAgbWFyZ2luOiAxNXB4IGF1dG8gMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAudGVzdGltb25pYWwtc2VjdGlvbiAudGVzdGltb25pYWwtZGV0YWlscyB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC50ZXN0aW1vbmlhbC1zZWN0aW9uIC50ZXN0aW1vbmlhbC1kZXRhaWxzIC5kZXRhaWxzLWltYWdlcyB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gICAgY29sb3I6ICM3ZTdlN2U7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAudGVzdGltb25pYWwtc2VjdGlvbiAudGVzdGltb25pYWwtZGV0YWlscyAuZGV0YWlscy1pbWFnZXMgaSB7XG4gICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgdmVydGljYWwtYWxpZ246IHN1cGVyOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC50ZXN0aW1vbmlhbC1zZWN0aW9uIC50ZXN0aW1vbmlhbC1kZXRhaWxzIC5kZXRhaWxzLWltYWdlcyBpIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuICAgICAgLnRlc3RpbW9uaWFsLXNlY3Rpb24gLnRlc3RpbW9uaWFsLWRldGFpbHMgLmRldGFpbHMtaW1hZ2VzIGkuZmEtcXVvdGUtbGVmdCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogOHB4OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLnRlc3RpbW9uaWFsLXNlY3Rpb24gLnRlc3RpbW9uaWFsLWRldGFpbHMgLmRldGFpbHMtaW1hZ2VzIGkuZmEtcXVvdGUtbGVmdCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cbiAgICAgIC50ZXN0aW1vbmlhbC1zZWN0aW9uIC50ZXN0aW1vbmlhbC1kZXRhaWxzIC5kZXRhaWxzLWltYWdlcyBpLmZhLXF1b3RlLXJpZ2h0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC50ZXN0aW1vbmlhbC1zZWN0aW9uIC50ZXN0aW1vbmlhbC1kZXRhaWxzIC5kZXRhaWxzLWltYWdlcyBpLmZhLXF1b3RlLXJpZ2h0IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxuICAgIC50ZXN0aW1vbmlhbC1zZWN0aW9uIC50ZXN0aW1vbmlhbC1kZXRhaWxzIC5kZXRhaWxzLWltYWdlczo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgLnRlc3RpbW9uaWFsLXNlY3Rpb24gLnRlc3RpbW9uaWFsLWRldGFpbHMgaDUge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuNHB4OyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIERhcmsgYW5kIFJUTCBjc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi50aGVtZS1zZXR0aW5nIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgei1pbmRleDogMzsgfVxuICBbZGlyPVwicnRsXCJdIC50aGVtZS1zZXR0aW5nIHVsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC50aGVtZS1zZXR0aW5nIHVsIGxpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XG4gICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiAzOHB4O1xuICAgIHotaW5kZXg6IDE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAudGhlbWUtc2V0dGluZyB1bCBsaSBidXR0b24ge1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAgIC50aGVtZS1zZXR0aW5nIHVsIGxpIGJ1dHRvbjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gICAgLnRoZW1lLXNldHRpbmcgdWwgbGkuY29sb3ItcGlja2VyIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGJvcmRlcjogbm9uZTsgfVxuICAgICAgLnRoZW1lLXNldHRpbmcgdWwgbGkuY29sb3ItcGlja2VyIGlucHV0IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogeC1sYXJnZTsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBEYXJrIGFuZCBSVEwgY3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uZGVtby1jb250YWluIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMzMsIDM3LCA0MSwgMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRlbW8tY29udGFpbiAuZGVtby1pbWFnZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5kZW1vLWNvbnRhaW4gLmRlbW8taW1hZ2U6aG92ZXIgaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC0xMDAlICsgNTAwcHgpKTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1cyBlYXNlLWluLW91dDsgfVxuICAgIC5kZW1vLWNvbnRhaW4gLmRlbW8taW1hZ2UgaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDVzIGVhc2UtaW4tb3V0O1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuZGVtby1jb250YWluIC5kZW1vLWltYWdlIGEge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjAwMDA7XG4gICAgICBjb2xvcjogIzIxMjUyOTsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgU2hvcCBwYWdlIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5jdXN0b21lLW5hdi10YWJzIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAxMHB4OyB9XG5cbi5jYXRlZ29yeS1zY3JvbGwge1xuICBtYXgtaGVpZ2h0OiAyNTBweDtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC8qIHdpZHRoICovXG4gIC8qIFRyYWNrICovXG4gIC8qIEhhbmRsZSAqL1xuICAvKiBIYW5kbGUgb24gaG92ZXIgKi8gfVxuICAuY2F0ZWdvcnktc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6IDVweDsgfVxuICAuY2F0ZWdvcnktc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDsgfVxuICAuY2F0ZWdvcnktc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogI2I1YmVjNztcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7IH1cbiAgLmNhdGVnb3J5LXNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuODsgfVxuXG4uY3VzdG9tZS1mb3JtLWNoZWNrIHtcbiAgbWluLWhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBbZGlyPVwicnRsXCJdIC5jdXN0b21lLWZvcm0tY2hlY2sge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLmN1c3RvbWUtZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIHdpZHRoOiAxN3B4O1xuICAgIGhlaWdodDogMTdweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjN2M3YzUgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAzcHggIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmN1c3RvbWUtZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgLmN1c3RvbWUtZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2NoZWNrLnN2Zyk7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEzcHg7IH1cbiAgICAuY3VzdG9tZS1mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0OmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIC5jdXN0b21lLWZvcm0tY2hlY2sgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uc2lkZWJhci1pbWFnZSB7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgLnNpZGViYXItaW1hZ2UgaW1nIHtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuXG4uY2F0ZWdvcnktb3B0aW9uIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiA0MHB4O1xuICB6LWluZGV4OiAxOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5jYXRlZ29yeS1vcHRpb24ge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogLTMyMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIHotaW5kZXg6IDc7XG4gICAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICB3aWR0aDogMzAwcHg7XG4gICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICAgIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmNhdGVnb3J5LW9wdGlvbiB7XG4gICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICByaWdodDogLTMyMHB4OyB9IH1cbiAgLmNhdGVnb3J5LW9wdGlvbi5zaG93IHtcbiAgICBsZWZ0OiAwOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuY2F0ZWdvcnktb3B0aW9uLnNob3cge1xuICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICByaWdodDogMDsgfVxuICAuY2F0ZWdvcnktb3B0aW9uIC5idXR0b24tY2xvc2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmJ1dHRvbi1jbG9zZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9IH1cbiAgICAuY2F0ZWdvcnktb3B0aW9uIC5idXR0b24tY2xvc2UgYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuYnV0dG9uLWNsb3NlIGJ1dHRvbiAuZmVhdGhlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY2F0ZWdvcnktb3B0aW9uIC5idXR0b24tY2xvc2UgYnV0dG9uIC5mZWF0aGVyIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cbiAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1yYXRpbmcgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgLmZvcm0tY2hlY2sge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LXJhdGluZyAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1sYWJlbCBzcGFuIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uY2F0ZWdvcnktcmF0aW5nIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWxhYmVsIHNwYW4ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uY2F0ZWdvcnktcmF0aW5nIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIC5mb3JtLWNoZWNrIHAge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxM3B4OyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1yYXRpbmcgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgLmZvcm0tY2hlY2sgcCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTJweDsgfVxuICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1yYXRpbmcgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgLmZvcm0tY2hlY2sgLnJhdGluZyB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LXJhdGluZyAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAuZm9ybS1jaGVjayAucmF0aW5nIC5yYXRpbmctbGlzdCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7IH1cbiAgICAgICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LXJhdGluZyAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAuZm9ybS1jaGVjayAucmF0aW5nIC5yYXRpbmctbGlzdCArIC5yYXRpbmctbGlzdCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzcHg7IH1cbiAgICAgICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LXJhdGluZyAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAuZm9ybS1jaGVjayAucmF0aW5nIC5yYXRpbmctbGlzdCAuZmEtc3RhciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjYzNjM2MzOyB9XG4gICAgICAgICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LXJhdGluZyAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAuZm9ybS1jaGVjayAucmF0aW5nIC5yYXRpbmctbGlzdCAuZmEtc3Rhci50aGVtZS1jb2xvciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmEyMDI7IH1cbiAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LXByaWNlIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICAgICAgIG1hcmdpbjogM3B4IDFweDsgfVxuICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1wcmljZSAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSBhIHtcbiAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5maWx0ZXItYWNjb3JkaW9uIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAycHggNnB4OyB9XG4gICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmZpbHRlci1hY2NvcmRpb24gLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGk6bnRoLWNoaWxkKDMpIGEgLmxhYmVsLXRhZyB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5maWx0ZXItYWNjb3JkaW9uIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIC5sYWJlbC10YWcge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XG4gICAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uZmlsdGVyLWFjY29yZGlvbiAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAubGFiZWwtdGFnIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICM3ZjdmN2Y7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNSAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmZpbHRlci1hY2NvcmRpb24gLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgLmxhYmVsLXRhZyAuYnRuLWNsb3NlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYyg4cHggKyAoMTAgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogM3B4OyB9XG4gICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1jb2xvciAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjJweDsgfVxuICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1jb2xvciAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgIG1hcmdpbjogLTVweDsgfVxuICAgICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LWNvbG9yIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDVweDsgfVxuICAgICAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uY2F0ZWdvcnktY29sb3IgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgYSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjAwMDA7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgICAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uY2F0ZWdvcnktY29sb3IgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgYSBpIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgICAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uY2F0ZWdvcnktY29sb3IgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgYSBpLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uY2F0ZWdvcnktY29sb3IgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGk6bnRoLWNoaWxkKDIpIGEge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFiMWEwOyB9XG4gICAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1jb2xvciAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaTpudGgtY2hpbGQoMykgYSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxMGFjODQ7IH1cbiAgICAgICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LWNvbG9yIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpOm50aC1jaGlsZCg0KSBhIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmOWY0MzsgfVxuICAgICAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uY2F0ZWdvcnktY29sb3IgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGk6bnRoLWNoaWxkKDUpIGEge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODM5NWE3OyB9XG4gICAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1jb2xvciAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaTpudGgtY2hpbGQoNikgYSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWIxYTA7IH1cbiAgICAgICAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LWNvbG9yIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpOm50aC1jaGlsZCg3KSBhIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzEwYWM4NDsgfVxuICAgICAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0uY2F0ZWdvcnktY29sb3IgLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGk6bnRoLWNoaWxkKDgpIGEge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY5ZjQzOyB9XG4gICAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbS5jYXRlZ29yeS1jb2xvciAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaTpudGgtY2hpbGQoOSkgYSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4Mzk1YTc7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7IH0gfVxuICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0gKyAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWhlYWRlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7IH1cbiAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci13aWR0aDogMCAxcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkge1xuICAgICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBtYXJnaW46IDEwcHggNXB4O1xuICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgICAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaTo6bnRoLWNoaWxkKDkpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7IH1cbiAgICAgIC5jYXRlZ29yeS1vcHRpb24gLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1idXR0b246Zm9jdXMge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBvdXRsaW5lOiBub25lOyB9XG4gICAgICAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24tYnV0dG9uOm5vdCguY29sbGFwc2VkKTo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL21pbnVzLnN2Zyk7XG4gICAgICAgIGZpbHRlcjogaW52ZXJ0KDEpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfVxuICAgICAgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWJ1dHRvbjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvcGx1cy5zdmcpO1xuICAgICAgICBmaWx0ZXI6IGludmVydCgxKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7IH1cbiAgLmNhdGVnb3J5LW9wdGlvbi0xIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmM2Y4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAuY2F0ZWdvcnktb3B0aW9uLTEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9IH1cbiAgICAuY2F0ZWdvcnktb3B0aW9uLTEgLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweCAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuY2F0ZWdvcnktb3B0aW9uLTEgLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgICAgIC5jYXRlZ29yeS1vcHRpb24tMSAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0gKyAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgICAuY2F0ZWdvcnktb3B0aW9uLTEgLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24taGVhZGVyIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgICAgcGFkZGluZzogMTRweCA4cHg7IH1cbiAgICAgIC5jYXRlZ29yeS1vcHRpb24tMSAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb2xsYXBzZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgICAgLmNhdGVnb3J5LW9wdGlvbi0xIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSB7XG4gICAgICAgICAgcGFkZGluZzogMTBweCAzcHg7IH1cbiAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uLTEgLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xMnB4OyB9XG4gICAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uLTEgLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweDsgfVxuICAgICAgICAgICAgICAuY2F0ZWdvcnktb3B0aW9uLTEgLmNhdGVnb3J5LW5hbWUgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIC5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbi5maWx0ZXItYnV0dG9uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAuZmlsdGVyLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5maWx0ZXItYnV0dG9uIGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuZmlsdGVyLWJ1dHRvbiAuZmVhdGhlciB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuZmlsdGVyLWJ1dHRvbiAuZmVhdGhlciB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHVuc2V0O1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgLmZpbHRlci1idXR0b24gc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogLTNweDsgfVxuXG4uaGlkZS1idXR0b24gYnV0dG9uIHtcbiAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgcGFkZGluZzogNHB4IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuaGlkZS1idXR0b24gYnV0dG9uIC5mZWF0aGVyIHtcbiAgICB3aWR0aDogMjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5oaWRlLWJ1dHRvbiBidXR0b24gLmZlYXRoZXIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7IH1cblxuLmhpZGUtYnV0dG9uIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogLTNweDsgfVxuXG4uc2hvcnQtbmFtZSB7XG4gIG1hcmdpbjogLTVweDsgfVxuICAuc2hvcnQtbmFtZSAubGFiZWwtdGFnIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDNweCAxMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG1hcmdpbjogNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4OyB9XG4gICAgLnNob3J0LW5hbWUgLmxhYmVsLXRhZyBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAgIC5zaG9ydC1uYW1lIC5sYWJlbC10YWcgLmJ0bi1jbG9zZSB7XG4gICAgICBmb250LXNpemU6IGNhbGMoOHB4ICsgKDEwIC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBtYXJnaW4tbGVmdDogNXB4OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5zaG9ydC1uYW1lIC5sYWJlbC10YWcgLmJ0bi1jbG9zZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxuXG4uc2VsZWN0LWZlYXR1cmVkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VmZjJmNztcbiAgY29sb3I6ICM4ZjgzOTc7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIC5zZWxlY3QtZmVhdHVyZWQ6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogI2VmZjJmNztcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHRyYW5zcGFyZW50OyB9XG4gIC5zZWxlY3QtZmVhdHVyZWQgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VmZjJmNztcbiAgICBjb2xvcjogIzhmODM5NztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgcGFkZGluZzogMC4zNzVyZW0gMi4yNXJlbSAwLjM3NXJlbSAwLjc1cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5zZWxlY3QtZmVhdHVyZWQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5zZWxlY3QtZmVhdHVyZWQgLmRyb3Bkb3duLXRvZ2dsZTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICByaWdodDogMTRweDsgfVxuICAuc2VsZWN0LWZlYXR1cmVkIC5kcm9wZG93bi1tZW51IHtcbiAgICBtaW4td2lkdGg6IDEwMCU7IH1cbiAgICAuc2VsZWN0LWZlYXR1cmVkIC5kcm9wZG93bi1tZW51IGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5jdXN0b21lLW9mZmNhbnZhcyAub2ZmY2FudmFzLWJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuY3VzdG9tZS1vZmZjYW52YXMge1xuICAgIHdpZHRoOiAzMDBweDsgfSB9XG5cbi5jdXN0b21lLW9mZmNhbnZhcyAub2ZmY2FudmFzLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5jdXN0b21lLW9mZmNhbnZhcyAub2ZmY2FudmFzLWhlYWRlciBoNSB7XG4gICAgbWFyZ2luLXRvcDogLTVweDsgfVxuXG4uY3VzdG9tZS1vZmZjYW52YXMgLm9mZmNhbnZhcy1ib2R5IC5jYXRlZ29yeS1zcGFjaW5nIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSB7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLmN1c3RvbWUtb2ZmY2FudmFzIC5vZmZjYW52YXMtYm9keSAuY2F0ZWdvcnktc3BhY2luZyAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0gKyAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5jdXN0b21lLW9mZmNhbnZhcyAuY2F0ZWdvcnktb3B0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICB6LWluZGV4OiB1bnNldDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiB1bnNldDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICBvdmVyZmxvdy15OiBhdXRvOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuY3VzdG9tZS1vZmZjYW52YXMgLmNhdGVnb3J5LW9wdGlvbiB7XG4gICAgICBsZWZ0OiB1bnNldDtcbiAgICAgIHJpZ2h0OiAwOyB9IH1cblxuLmltYWdlLXNsaWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5pbWFnZS1zbGlkZXIgLmltYWdlLXByb2R1Y3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDsgfVxuICAgIC5pbWFnZS1zbGlkZXIgLmltYWdlLXByb2R1Y3QgaW1nIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuICAuaW1hZ2Utc2xpZGVyIC5pbWFnZS1jb250YWluIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMjBweCAwIDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgICAuaW1hZ2Utc2xpZGVyIC5pbWFnZS1jb250YWluIGgzIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuLmZpbHRlci1uYW1lIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5maWx0ZXItbmFtZSBoNCB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IGxhcmdlOyB9XG5cbi5maWx0ZXItaWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmZpbHRlci1pY29uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLmNhdGVnb3J5LWZpbHRlciB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5jYXRlZ29yeS1saXN0IHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmNhdGVnb3J5LWxpc3QgLmRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjMzLCAyMzMsIDIzMywgMC41KTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgcGFkZGluZzogY2FsYyg4cHggKyAoMTAgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDE1cHggKyAoMjAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cbiAgLmNhdGVnb3J5LWxpc3QgLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmNhdGVnb3J5LWxpc3QgLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1saXN0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuY2F0ZWdvcnktbGlzdCAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWxpc3QgKyAuZHJvcGRvd24tbGlzdCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5maWx0ZXItc2hvdy1idXR0b24ge1xuICBwYWRkaW5nOiAxNXB4O1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5maWx0ZXItc2hvdy1idXR0b24gYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLmZpbHRlci1zaG93LWJ1dHRvbiBhIC5mZWF0aGVyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIHdpZHRoOiAyMHB4OyB9XG4gICAgLmZpbHRlci1zaG93LWJ1dHRvbiBhIGg1IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmZpbHRlci1zaG93LWJ1dHRvbiB7XG4gICAgICBwYWRkaW5nOiAwIDAgMTBweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG4udG9wLWZpbHRlci1zZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLnRvcC1maWx0ZXItc2VjdGlvbiB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICBsZWZ0OiAtMzAwcHg7XG4gICAgICB3aWR0aDogMzAwcHg7XG4gICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgdG9wOiAwO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICB6LWluZGV4OiA1O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMTVweCA1cHggMCByZ2JhKDc3LCA3NywgNzcsIDAuMjgpO1xuICAgICAgb3ZlcmZsb3cteTogYXV0bzsgfSB9XG4gIC50b3AtZmlsdGVyLXNlY3Rpb24uc2hvdyB7XG4gICAgbGVmdDogMDsgfVxuICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgLnRvcC1maWx0ZXItc2VjdGlvbiB1bCAuYmFjay1idG4ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLmJhY2stYnRuIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDtcbiAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxOCAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgLnRvcC1maWx0ZXItc2VjdGlvbiB1bCAub25jbGljay10aXRsZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgcGFkZGluZzogY2FsYyg4cHggKyAoMTAgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDE1cHggKyAoMjAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICBtYXJnaW46IDAgMTVweDsgfVxuICAgICAgLnRvcC1maWx0ZXItc2VjdGlvbiB1bCAub25jbGljay10aXRsZTpudGgtY2hpbGQoNykge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlIHtcbiAgICAgICAgICBtYXJnaW46IDMwcHggMCAwO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLm9uY2xpY2stdGl0bGU6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgICAgICAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlICsgLm9uY2xpY2stdGl0bGUge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0OyB9IH1cbiAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLm9uY2xpY2stdGl0bGUgaDYge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlIGg2IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAyMHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLm9uY2xpY2stdGl0bGUgaDYge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH0gfVxuICAgICAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlIGg2OmJlZm9yZSB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgY29udGVudDogXCJcXGYxMDdcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMC4yOyB9XG4gICAgICAgICAgW2Rpcj1cInJ0bFwiXSAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlIGg2OmJlZm9yZSB7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBsZWZ0OiAwOyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlIGg2OmJlZm9yZSB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7IH0gfVxuICAgICAgLnRvcC1maWx0ZXItc2VjdGlvbiB1bCAub25jbGljay10aXRsZTpudGgtY2hpbGQoLW4gKyAzKSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiBub25lOyB9XG4gICAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlIC5vbmNsaWNrLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDQwcHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCA1cHggOXB4IDNweCByZ2JhKDMzLCAzNywgNDEsIDAuMTMpO1xuICAgICAgICB6LWluZGV4OiAyOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLm9uY2xpY2stdGl0bGUgLm9uY2xpY2stY29udGVudCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDsgfSB9XG4gICAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLm9uY2xpY2stdGl0bGUgLm9uY2xpY2stY29udGVudCBsaSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAgICAgLnRvcC1maWx0ZXItc2VjdGlvbiB1bCAub25jbGljay10aXRsZSAub25jbGljay1jb250ZW50IGxpICsgbGkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAgICAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlIC5vbmNsaWNrLWNvbnRlbnQgLmN1c3RvbS1jb250cm9sIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLmZpbHRlci10aXRsZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2UwZTBlMDtcbiAgICAgIG1pbi13aWR0aDogNjBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLmZpbHRlci10aXRsZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfSB9XG4gICAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5maWx0ZXItdGl0bGUgaDYge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAgICAgLnRvcC1maWx0ZXItc2VjdGlvbiB1bCAuZmlsdGVyLXRpdGxlIGg2OmJlZm9yZSB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgY29udGVudDogXCJcXGYxMDdcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLmZpbHRlci10aXRsZTpudGgtY2hpbGQoLW4gKyAzKSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiBub25lOyB9XG4gICAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5maWx0ZXItdGl0bGUgLm9uY2xpY2stY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICBsZWZ0OiAzMHB4O1xuICAgICAgICB0b3A6IDM0cHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAxcHggOXB4IDNweCByZ2JhKDIyOCwgMjI4LCAyMjgsIDAuODEpOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLmZpbHRlci10aXRsZSAub25jbGljay1jb250ZW50IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTsgfSB9XG4gICAgICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLmZpbHRlci10aXRsZSAub25jbGljay1jb250ZW50IC5jdXN0b20tY29udHJvbCAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cbiAgICAudG9wLWZpbHRlci1zZWN0aW9uIHVsIC5vbmNsaWNrLXRpdGxlLnNob3cgLm9uY2xpY2stY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gdWwgLmZpbHRlci10aXRsZS5zaG93IC5vbmNsaWNrLWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnRvcC1maWx0ZXItc2VjdGlvbiAuZm9ybS1jaGVjayB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgIC50b3AtZmlsdGVyLXNlY3Rpb24gLmZvcm0tY2hlY2sgKyAuZm9ybS1jaGVjayB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gICAgLnRvcC1maWx0ZXItc2VjdGlvbiAuZm9ybS1jaGVjayAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmNhdGVnb3J5LWltYWdlIHtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmNhdGVnb3J5LWltYWdlIC5lbGVjLWltYWdlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTIwcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5jYXRlZ29yeS1pbWFnZSAuZWxlYy1pbWFnZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4OyB9XG4gICAgLmNhdGVnb3J5LWltYWdlIC5lbGVjLWltYWdlIGltZyB7XG4gICAgICB3aWR0aDogOTAlOyB9XG4gIC5jYXRlZ29yeS1pbWFnZSAuY2F0ZWdvcnktY29udGFpbiB7XG4gICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE1MHB4KTsgfVxuICAgIC5jYXRlZ29yeS1pbWFnZSAuY2F0ZWdvcnktY29udGFpbiBoMyB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuMXB4OyB9XG4gICAgLmNhdGVnb3J5LWltYWdlIC5jYXRlZ29yeS1jb250YWluIC5wcm9kdWN0LWxpc3Qge1xuICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAxNXB4O1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7IH1cbiAgICAgIC5jYXRlZ29yeS1pbWFnZSAuY2F0ZWdvcnktY29udGFpbiAucHJvZHVjdC1saXN0IGxpIHtcbiAgICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuICAgICAgICAuY2F0ZWdvcnktaW1hZ2UgLmNhdGVnb3J5LWNvbnRhaW4gLnByb2R1Y3QtbGlzdCBsaSBhIHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAxO1xuICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uZmxpdGVyLW1lbnUgYnV0dG9uIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDVweCBjYWxjKDEycHggKyAoMjAgLSAxMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIG1hcmdpbjogNXB4OyB9XG4gIC5mbGl0ZXItbWVudSBidXR0b24gLmZlYXRoZXIge1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIHN0cm9rZS13aWR0aDogMXB4OyB9XG5cbi5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlIHAge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlIC5saXN0aW5nLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5saXN0LXZpZXcucHJvZHVjdC1ib3gge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5saXN0LXZpZXcucHJvZHVjdC1ib3ggLmltZy13cmFwcGVyIC5iYWNrIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubGlzdC12aWV3LnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgLnJhdGluZy1kZXRhaWxzLFxuICAubGlzdC12aWV3LnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgLm1haW4tcHJpY2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5saXN0LXZpZXcucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAucmF0aW5nLWRldGFpbHMsXG4gICAgICAubGlzdC12aWV3LnByb2R1Y3QtYm94IC5wcm9kdWN0LWRldGFpbHMgLm1haW4tcHJpY2Uge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5saXN0LXZpZXcucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAucmF0aW5nLWRldGFpbHMsIFtkaXI9XCJydGxcIl1cbiAgICAgICAgLmxpc3Qtdmlldy5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG4gIC5saXN0LXZpZXcucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAubWFpbi1wcmljZSB7XG4gICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLmxpc3Qtdmlldy5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4OyB9XG4gICAgICAgIC5saXN0LXZpZXcucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAubWFpbi1wcmljZSBoMyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNXB4OyB9IH1cbiAgLmxpc3Qtdmlldy5wcm9kdWN0LWJveCAuY2FydC13cmFwIHVsIGxpICsgbGkge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubGlzdC12aWV3LnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgdWwgbGkgKyBsaSB7XG4gICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmxpc3Qtdmlldy5wcm9kdWN0LWJveCAuY2FydC13cmFwIGEgc3ZnLFxuICAubGlzdC12aWV3LnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYnV0dG9uIHN2ZyB7XG4gICAgd2lkdGg6IDE0cHg7XG4gICAgaGVpZ2h0OiAxNHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAubGlzdC12aWV3LnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYSBzdmcsXG4gICAgICAubGlzdC12aWV3LnByb2R1Y3QtYm94IC5jYXJ0LXdyYXAgYnV0dG9uIHN2ZyB7XG4gICAgICAgIHdpZHRoOiAxM3B4O1xuICAgICAgICBoZWlnaHQ6IDEzcHg7IH0gfVxuICAubGlzdC12aWV3LnByb2R1Y3QtYm94OmhvdmVyIC5pbWctd3JhcHBlciAuYmFjayB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDE2NjBweCkge1xuICAubGlzdC12aWV3LnNsaWRlLTQge1xuICAgIHBhZGRpbmc6IDAgMzBweDsgfSB9XG5cbi5saXN0LXZpZXcuc2xpZGUtNCAuc2xpY2stcHJldiB7XG4gIGxlZnQ6IC03MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNjYwcHgpIHtcbiAgICAubGlzdC12aWV3LnNsaWRlLTQgLnNsaWNrLXByZXYge1xuICAgICAgbGVmdDogLTIwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAubGlzdC12aWV3LnNsaWRlLTQgLnNsaWNrLXByZXYge1xuICAgICAgbGVmdDogLTVweDsgfSB9XG5cbi5saXN0LXZpZXcuc2xpZGUtNCAuc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAtNzBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTY2MHB4KSB7XG4gICAgLmxpc3Qtdmlldy5zbGlkZS00IC5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0OiAtMjBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5saXN0LXZpZXcuc2xpZGUtNCAuc2xpY2stbmV4dCB7XG4gICAgICByaWdodDogLTVweDsgfSB9XG5cbi5jb2xsZWN0aW9uLWdyaWQtdmlldyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmNvbGxlY3Rpb24tZ3JpZC12aWV3IHVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmNvbGxlY3Rpb24tZ3JpZC12aWV3IHVsIGxpIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgIzIxMjUyOTsgfVxuICAgICAgLmNvbGxlY3Rpb24tZ3JpZC12aWV3IHVsIGxpIGJ1dHRvbiB7XG4gICAgICAgIHBhZGRpbmc6IDVweDsgfVxuICAgICAgICAuY29sbGVjdGlvbi1ncmlkLXZpZXcgdWwgbGkgYnV0dG9uIGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiA1MCU7IH1cblxuLnJhbmdlLXNsaWRlciB7XG4gIG1hcmdpbi10b3A6IDA7IH1cbiAgLnJhbmdlLXNsaWRlciAuaXJzLS1mbGF0IC5pcnMtbGluZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNzsgfVxuICAucmFuZ2Utc2xpZGVyIC5pcnMtLWZsYXQgLmlycy1tYXgge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjN2M3YzU7XG4gICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgLnJhbmdlLXNsaWRlciAuaXJzLS1mbGF0IC5pcnMtYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgLnJhbmdlLXNsaWRlciAuaXJzLS1mbGF0IC5pcnMtaGFuZGxlIGkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAycHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAucmFuZ2Utc2xpZGVyIC5pcnMtLWZsYXQgLmlycy10byB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gICAgLnJhbmdlLXNsaWRlciAuaXJzLS1mbGF0IC5pcnMtdG86YmVmb3JlIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAucmFuZ2Utc2xpZGVyIC5pcnMtLWZsYXQgLmlycy1mcm9tIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAucmFuZ2Utc2xpZGVyIC5pcnMtLWZsYXQgLmlycy1mcm9tOmJlZm9yZSB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cblxuLmJhbm5lci1kZWF0aWxzIC5iYW5uZXItY29udGFpbiBwIHtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTUgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7IH1cblxuLm1vc3QtcG9wdWxhciB7XG4gIG1hcmdpbjogY2FsYygzNXB4ICsgKDUwIC0gMzUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIDAgMDsgfVxuICAubW9zdC1wb3B1bGFyIC50aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLm1vc3QtcG9wdWxhciAudGl0bGUge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gIC5tb3N0LXBvcHVsYXIgLnByb2R1Y3Qtc2xpZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VmZjJmNzsgfVxuICAgIC5tb3N0LXBvcHVsYXIgLnByb2R1Y3Qtc2xpZGVyIC5zbGljay1wcmV2LFxuICAgIC5tb3N0LXBvcHVsYXIgLnByb2R1Y3Qtc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC0zNXB4O1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5tb3N0LXBvcHVsYXIgLnByb2R1Y3Qtc2xpZGVyIC5zbGljay1wcmV2IHtcbiAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgcmlnaHQ6IDUwcHg7IH1cbiAgICAgIC5tb3N0LXBvcHVsYXIgLnByb2R1Y3Qtc2xpZGVyIC5zbGljay1wcmV2OjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjA1M1wiO1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgICAubW9zdC1wb3B1bGFyIC5wcm9kdWN0LXNsaWRlciAuc2xpY2stbmV4dCB7XG4gICAgICByaWdodDogMDsgfVxuICAgICAgLm1vc3QtcG9wdWxhciAucHJvZHVjdC1zbGlkZXIgLnNsaWNrLW5leHQ6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuXG4ubGlzdC1zdHlsZSA+IGRpdiB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmxpc3Qtc3R5bGUgLnByb2R1Y3QtYm94IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgICAgIHBhZGRpbmc6IDE1cHggY2FsYygxNXB4ICsgKDIwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4OyB9IH1cbiAgLmxpc3Qtc3R5bGUgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmxpc3Qtc3R5bGUgLnByb2R1Y3QtYm94IC5pbWctd3JhcHBlciB7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAuaW1nLXdyYXBwZXIge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAuY2FydC13cmFwIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMTAwcHgpOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAubGlzdC1zdHlsZSAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAubGlzdC1zdHlsZSAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgICAubGlzdC1zdHlsZSAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAucmF0aW5nIHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIGg1IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBtYXJnaW46IGNhbGMoOHB4ICsgKDE1IC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMCAwIDA7IH1cbiAgICAubGlzdC1zdHlsZSAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyBzcGFuIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDsgfVxuICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmctZGV0YWlscyB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmctZGV0YWlscy5yYXRpbmctc2hvcCB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAubGlzdC1zdHlsZSAucHJvZHVjdC1ib3ggLnByb2R1Y3QtZGV0YWlscyAucmF0aW5nLWRldGFpbHMucmF0aW5nLXNob3Age1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmctZGV0YWlscy5yYXRpbmctc2hvcCBoNSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNXB4OyB9XG4gICAgICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmctZGV0YWlscy5yYXRpbmctc2hvcCAuc2l6ZS1ib3gge1xuICAgICAgICAgIG1hcmdpbjogNXB4IDA7IH1cbiAgICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5yYXRpbmctZGV0YWlscyAuZ3JpZC1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlIC5saXN0aW5nLWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlIC5saXN0aW5nLWNvbnRlbnQubGlzdGluZy1zaG9wIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5saXN0LXN0eWxlIC5wcm9kdWN0LWJveCAucHJvZHVjdC1kZXRhaWxzIC5tYWluLXByaWNlIC5saXN0aW5nLWNvbnRlbnQubGlzdGluZy1zaG9wIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubGlzdC1zdHlsZSAucHJvZHVjdC1ib3ggLm1haW4tcHJpY2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gICAgLmxpc3Qtc3R5bGUgLnByb2R1Y3QtYm94IC5tYWluLXByaWNlIGgzIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDAgMCA4cHg7IH1cbiAgICAubGlzdC1zdHlsZSAucHJvZHVjdC1ib3ggLm1haW4tcHJpY2UgcCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiA4cHggMDtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94ICFpbXBvcnRhbnQ7XG4gICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XG4gICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtOyB9XG4gICAgLmxpc3Qtc3R5bGUgLnByb2R1Y3QtYm94IC5tYWluLXByaWNlIGJ1dHRvbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiBjYWxjKDZweCArICgxMCAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTNweCArICgyMCAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxNSAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgICAgLmxpc3Qtc3R5bGUgLnByb2R1Y3QtYm94IC5tYWluLXByaWNlIGJ1dHRvbjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cblxuLmZpbHRlci1vcHRpb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuZmlsdGVyLW9wdGlvbnMgLnNlbGVjdC1vcHRpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAuZmlsdGVyLW9wdGlvbnMgLnNlbGVjdC1vcHRpb25zID4gZGl2ICsgZGl2IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5maWx0ZXItb3B0aW9ucyAuc2VsZWN0LW9wdGlvbnMgPiBkaXYgKyBkaXYge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4OyB9XG4gIC5maWx0ZXItb3B0aW9ucyAuZ3JpZC1vcHRpb25zIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmZpbHRlci1vcHRpb25zIC5ncmlkLW9wdGlvbnMge1xuICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgLmZpbHRlci1vcHRpb25zIC5ncmlkLW9wdGlvbnMuYXZ0aXZlIGxpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAgICAgLmZpbHRlci1vcHRpb25zIC5ncmlkLW9wdGlvbnMuYXZ0aXZlIGxpIGEgaW1nIHtcbiAgICAgICAgZmlsdGVyOiBpbnZlcnQoMSk7IH1cbiAgICAuZmlsdGVyLW9wdGlvbnMgLmdyaWQtb3B0aW9ucyBsaSB7XG4gICAgICB3aWR0aDogMzZweDtcbiAgICAgIGhlaWdodDogMzZweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gICAgICBvcGFjaXR5OiAwLjU7IH1cbiAgICAgIC5maWx0ZXItb3B0aW9ucyAuZ3JpZC1vcHRpb25zIGxpLmFjdGl2ZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgIC5maWx0ZXItb3B0aW9ucyAuZ3JpZC1vcHRpb25zIGxpIGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgICAuZmlsdGVyLW9wdGlvbnMgLmdyaWQtb3B0aW9ucyBsaSArIGxpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5maWx0ZXItb3B0aW9ucyAuZ3JpZC1vcHRpb25zIGxpICsgbGkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4OyB9XG5cbi5jYXRlZ29yeS1zaWRlIHtcbiAgdHJhbnNpdGlvbjogLjNzIGVhc2U7IH1cbiAgLmNhdGVnb3J5LXNpZGUuc2hvdyB7XG4gICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XG4gICAgd2lkdGg6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAuY2F0ZWdvcnktc2lkZSAuY2F0ZWdvcnktb3B0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAuY2F0ZWdvcnktc2lkZSAuY2F0ZWdvcnktb3B0aW9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNzsgfSB9XG4gICAgLmNhdGVnb3J5LXNpZGUgLmNhdGVnb3J5LW9wdGlvbiAuY3VzdG9tZS1mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgICAuY2F0ZWdvcnktc2lkZSAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAuY2F0ZWdvcnktc2lkZSAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3O1xuICAgICAgYm9yZGVyOiBub25lOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgLmNhdGVnb3J5LXNpZGUgLmNhdGVnb3J5LW9wdGlvbiAuY2F0ZWdvcnktbmFtZSAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMDsgfSB9XG4gICAgICAuY2F0ZWdvcnktc2lkZSAuY2F0ZWdvcnktb3B0aW9uIC5jYXRlZ29yeS1uYW1lIC5hY2NvcmRpb24taXRlbSArIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDBweDsgfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgUHJvZHVjdCBQYWdlIENTUyBTdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5wcm8tcG9wdWxhciAucHJvZHVjdC1zbGlkZXIgLnNsaWNrLXByZXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkICFpbXBvcnRhbnQ7IH1cblxuLnByby1wb3B1bGFyIC5wcm9kdWN0LXNsaWRlciAuc2xpY2stbmV4dCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGQgIWltcG9ydGFudDsgfVxuXG4ucmF0aW5nIC5mYS1zdGFyIHtcbiAgcGFkZGluZy1yaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2MzYzNjMyAhaW1wb3J0YW50OyB9XG4gIC5yYXRpbmcgLmZhLXN0YXIudGhlbWUtY29sb3Ige1xuICAgIGNvbG9yOiAjZmZhMjAyICFpbXBvcnRhbnQ7IH1cblxuLnByb2R1Y3QtdGl0bGUge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW4tYm90dG9tOiAxNHB4OyB9XG4gIC5wcm9kdWN0LXRpdGxlLTIge1xuICAgIG1hcmdpbi10b3A6IDE4cHg7IH1cbiAgLnByb2R1Y3QtdGl0bGUuaHVycnktdGl0bGUge1xuICAgIGp1c3RpZnktY29udGVudDogdW5zZXQ7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgIC5wcm9kdWN0LXRpdGxlLmh1cnJ5LXRpdGxlIHNwYW4ge1xuICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cblxuLnNoaXBwaW5nLWluZm8ge1xuICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gIC5zaGlwcGluZy1pbmZvIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgY29sb3I6ICM3Nzc3Nzc7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4OyB9XG5cbi5wcm9kdWN0LWljb24ge1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5wcm9kdWN0LWljb24ge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuICAucHJvZHVjdC1pY29uIC5wcm9kdWN0LXNvY2lhbCB7XG4gICAgbWFyZ2luLXRvcDogNXB4OyB9XG4gICAgLnByb2R1Y3QtaWNvbiAucHJvZHVjdC1zb2NpYWwgbGkge1xuICAgICAgcGFkZGluZy1yaWdodDogMzBweDsgfVxuICAgICAgLnByb2R1Y3QtaWNvbiAucHJvZHVjdC1zb2NpYWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLnByb2R1Y3QtaWNvbiAucHJvZHVjdC1zb2NpYWwgbGkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7IH1cbiAgICAgIC5wcm9kdWN0LWljb24gLnByb2R1Y3Qtc29jaWFsIGxpIGEge1xuICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9XG5cbi5hZGRlZC1ub3RpZmljYXRpb24ge1xuICB3aWR0aDogMTgwcHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAtMTAwcHg7XG4gIHJpZ2h0OiAzMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBwYWRkaW5nOiA2cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMXB4ICNjZWQ0ZGE7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gIHotaW5kZXg6IDk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLmFkZGVkLW5vdGlmaWNhdGlvbiB7XG4gICAgICByaWdodDogMTJweDsgfSB9XG4gIC5hZGRlZC1ub3RpZmljYXRpb24uc2hvdyB7XG4gICAgdG9wOiAzMHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgLmFkZGVkLW5vdGlmaWNhdGlvbiBpbWcge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmFkZGVkLW5vdGlmaWNhdGlvbiBoMyB7XG4gICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIG1hcmdpbjogMCAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uYWRkZWZmZWN0LXNlY3Rpb24ge1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGJvcmRlci10b3A6IDFweCBkYXNoZWQgI2RkZDsgfVxuICAuYWRkZWZmZWN0LXNlY3Rpb24uY2FydE1vdmUgLmVycm9yLW1lc3NhZ2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5hZGRlZmZlY3Qtc2VjdGlvbi5jYXJ0TW92ZSAuc2l6ZS1ib3gge1xuICAgIGFuaW1hdGlvbjogYnV0dG9ucy1zaGFrZSAwLjgycyBjdWJpYy1iZXppZXIoMC4zNiwgMC4wNywgMC4xOSwgMC45NykgYm90aDsgfVxuICAuYWRkZWZmZWN0LXNlY3Rpb24gLnNpemUtYm94IHtcbiAgICBtYXJnaW46IDEwcHggMDsgfVxuICAgIC5hZGRlZmZlY3Qtc2VjdGlvbiAuc2l6ZS1ib3ggdWwgbGkge1xuICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2VmZjJmNztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5hZGRlZmZlY3Qtc2VjdGlvbiAuc2l6ZS1ib3ggdWwgbGkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG4gICAgICAuYWRkZWZmZWN0LXNlY3Rpb24gLnNpemUtYm94IHVsIGxpLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyMTI1Mjk7IH1cbiAgICAgICAgLmFkZGVmZmVjdC1zZWN0aW9uIC5zaXplLWJveCB1bCBsaS5hY3RpdmUgYSB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgIC5hZGRlZmZlY3Qtc2VjdGlvbiAuc2l6ZS1ib3ggdWwgbGkgYSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gIC5hZGRlZmZlY3Qtc2VjdGlvbiAuZXJyb3ItbWVzc2FnZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmFkZGVmZmVjdC1zZWN0aW9uIC5xdHktYm94IC5pbnB1dC1ncm91cCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG4gIC5hZGRlZmZlY3Qtc2VjdGlvbiAucXR5LWJveCAuaW5wdXQtZ3JvdXAgc3BhbiBidXR0b24ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5hZGRlZmZlY3Qtc2VjdGlvbiAucXR5LWJveCAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiA4MHB4O1xuICAgIGZsZXg6IHVuc2V0OyB9XG4gIC5hZGRlZmZlY3Qtc2VjdGlvbiAucXR5LWJveCAuaW5wdXQtZ3JvdXAgaW5wdXQge1xuICAgIHBhZGRpbmc6IDEycHggMTBweDsgfVxuICAuYWRkZWZmZWN0LXNlY3Rpb24gLnF0eS1ib3ggLmlucHV0LWdyb3VwIGJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBwYWRkaW5nOiAxNXB4IDIwcHg7IH1cbiAgICAuYWRkZWZmZWN0LXNlY3Rpb24gLnF0eS1ib3ggLmlucHV0LWdyb3VwIGJ1dHRvbiBpIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAuYWRkZWZmZWN0LXNlY3Rpb24gLnF0eS1ib3ggLmlucHV0LWdyb3VwIC5pY29uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi5wcm9kdWN0LWJ1dHRvbnMge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnByb2R1Y3QtYnV0dG9ucyB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5wcm9kdWN0LWJ1dHRvbnMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG4gIC5wcm9kdWN0LWJ1dHRvbnMgLmJ0bi1zb2xpZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDEycHggNDVweDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLnByb2R1Y3QtYnV0dG9ucyAuYnRuLXNvbGlkICsgLmJ0bi1zb2xpZCB7XG4gICAgICBtYXJnaW4tbGVmdDogOHB4OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LWJ1dHRvbnMgLmJ0bi1zb2xpZCArIC5idG4tc29saWQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAucHJvZHVjdC1idXR0b25zIC5idG4tc29saWQge1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDMwcHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLnByb2R1Y3QtYnV0dG9ucyAuYnRuLXNvbGlkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLnByb2R1Y3QtYnV0dG9ucyAuYnRuLXNvbGlkIHtcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAgIC5wcm9kdWN0LWJ1dHRvbnMgLmJ0bi1zb2xpZCBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LWJ1dHRvbnMgLmJ0bi1zb2xpZCBpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuICAgIC5wcm9kdWN0LWJ1dHRvbnMgLmJ0bi1zb2xpZCBzcGFuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAucHJvZHVjdC1idXR0b25zIC5idG4tc29saWQuYnRuLWFuaW1hdGlvbiBpIHtcbiAgICAgIGFuaW1hdGlvbjogcmluZyA0cyAwLjdzIGVhc2UtaW4tb3V0IGluZmluaXRlOyB9XG5cbi5zaGlwcGluZy1vcmRlciBsaSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnNoaXBwaW5nLW9yZGVyIGxpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9IH1cbiAgLnNoaXBwaW5nLW9yZGVyIGxpIGltZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxOHB4OyB9XG5cbi5wcm9kdWN0LWNvdW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNztcbiAgcGFkZGluZzogMTBweCAxMnB4ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLnByb2R1Y3QtY291bnQgaW1nIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDZweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnByb2R1Y3QtY291bnQgaW1nIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7IH1cbiAgLnByb2R1Y3QtY291bnQgdWwge1xuICAgIG1hcmdpbi1ib3R0b206IC00cHg7IH1cbiAgICAucHJvZHVjdC1jb3VudCB1bCBsaSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cbiAgICAgIC5wcm9kdWN0LWNvdW50IHVsIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNHB4OyB9XG4gICAgICAgIFtkaXI9XCJydGxcIl0gLnByb2R1Y3QtY291bnQgdWwgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTRweDsgfVxuXG4ucmF0aW5nLXNlY3Rpb24ge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5yYXRpbmctc2VjdGlvbiB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG4gIC5yYXRpbmctc2VjdGlvbiBoNiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMTVweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnJhdGluZy1zZWN0aW9uIGg2IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG5cbi5jb2xvci12YXJpYW50IHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAuY29sb3ItdmFyaWFudCBsaSB7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsgfVxuICAgIC5jb2xvci12YXJpYW50IGxpICsgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAuY29sb3ItdmFyaWFudCBsaTpudGgtY2hpbGQoMSkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZTdlNjsgfVxuICAgIC5jb2xvci12YXJpYW50IGxpOm50aC1jaGlsZCgzKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmZiZmJmOyB9XG4gICAgLmNvbG9yLXZhcmlhbnQgbGkuYWN0aXZlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLmNvbG9yLXZhcmlhbnQgbGkuYWN0aXZlOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGYwMGNcIjtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDRweDtcbiAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA3MCU7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgb3BhY2l0eTogMC44OyB9XG5cbi5wcmljZS1kZXRhaWwge1xuICBmb250LXNpemU6IDI2cHg7XG4gIGNvbG9yOiAjMjEyNTI5O1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW46IDE1cHggMDsgfVxuICAucHJpY2UtZGV0YWlsIGRlbCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGNvbG9yOiAjYWFhYWFhO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLnByaWNlLWRldGFpbCBzcGFuIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5wcmljZS1kZXRhaWwgc3BhbiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG5cbi5sYWJlbC1zZWN0aW9uIHtcbiAgbWFyZ2luOiAxMHB4IDA7IH1cbiAgLmxhYmVsLXNlY3Rpb24gLmJhZGdlLWdyZXktY29sb3Ige1xuICAgIHBhZGRpbmc6IDZweCAxMXB4O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBiYWNrZ3JvdW5kOiAjOTI5MjkyOyB9XG4gIC5sYWJlbC1zZWN0aW9uIC5sYWJlbC10ZXh0IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmxhYmVsLXNlY3Rpb24gLmxhYmVsLXRleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogNXB4OyB9XG5cbi5zZXJ2aWNlLWFjY29yaW9uIHtcbiAgcGFkZGluZzogMjhweDsgfVxuICAuc2VydmljZS1hY2NvcmlvbiAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuc2VydmljZS1hY2NvcmlvbiAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSB7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuICAgICAgLnNlcnZpY2UtYWNjb3Jpb24gLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgKyBsaSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDsgfVxuICAgICAgLnNlcnZpY2UtYWNjb3Jpb24gLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgLnNlcnZpY2Utd3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgICAgLnNlcnZpY2UtYWNjb3Jpb24gLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgLnNlcnZpY2Utd3JhcCAuc2VydmljZS1pY29uIHN2ZyB7XG4gICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgICAgICAgICBmaWxsOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgc3Ryb2tlOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLnNlcnZpY2UtYWNjb3Jpb24gLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgLnNlcnZpY2Utd3JhcCAuc2VydmljZS1pY29uIHN2ZyB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTZweDsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgLnNlcnZpY2UtYWNjb3Jpb24gLmFjY29yZGlvbi1jb2xsYXBzZSAuYWNjb3JkaW9uLWJvZHkgLmNhdGVnb3J5LWxpc3QgbGkgLnNlcnZpY2Utd3JhcCAuc2VydmljZS1pY29uIHN2ZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7IH0gfVxuICAgICAgICAuc2VydmljZS1hY2NvcmlvbiAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAuc2VydmljZS13cmFwIC5zZXJ2aWNlLWNvbnRlbnQgaDMge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgICAgICAuc2VydmljZS1hY2NvcmlvbiAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAuc2VydmljZS13cmFwIC5zZXJ2aWNlLWNvbnRlbnQgaDMge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHggIWltcG9ydGFudDsgfSB9XG4gICAgICAgIC5zZXJ2aWNlLWFjY29yaW9uIC5hY2NvcmRpb24tY29sbGFwc2UgLmFjY29yZGlvbi1ib2R5IC5jYXRlZ29yeS1saXN0IGxpIC5zZXJ2aWNlLXdyYXAgLnNlcnZpY2UtY29udGVudCBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtM3B4OyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgICAuc2VydmljZS1hY2NvcmlvbiAuYWNjb3JkaW9uLWNvbGxhcHNlIC5hY2NvcmRpb24tYm9keSAuY2F0ZWdvcnktbGlzdCBsaSAuc2VydmljZS13cmFwIC5zZXJ2aWNlLWNvbnRlbnQgc3BhbiB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG5cbi5kZXRhaWxzLWl0ZW1zIC5jb2xvci1pbWFnZSB7XG4gIG1hcmdpbjogMjBweCAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5kZXRhaWxzLWl0ZW1zIC5jb2xvci1pbWFnZSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5jb2xvci1pbWFnZSAuaW1hZ2Utc2VsZWN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY29sb3ItaW1hZ2UgLmltYWdlLXNlbGVjdCBoNSB7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gICAgLmRldGFpbHMtaXRlbXMgLmNvbG9yLWltYWdlIC5pbWFnZS1zZWxlY3QgLmltYWdlLXNlY3Rpb24ge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5kZXRhaWxzLWl0ZW1zIC5jb2xvci1pbWFnZSAuaW1hZ2Utc2VsZWN0IC5pbWFnZS1zZWN0aW9uIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgICAgLmRldGFpbHMtaXRlbXMgLmNvbG9yLWltYWdlIC5pbWFnZS1zZWxlY3QgLmltYWdlLXNlY3Rpb24gbGkge1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAgICAgLmRldGFpbHMtaXRlbXMgLmNvbG9yLWltYWdlIC5pbWFnZS1zZWxlY3QgLmltYWdlLXNlY3Rpb24gbGkuYWN0aXZlIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCA2cHggcmdiYSgwLCAwLCAwLCAwLjQpOyB9XG5cbi5kZXRhaWxzLWl0ZW1zIC5kZXRhaWxzLWltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5kZXRhaWxzLWltYWdlIC5wcm9kdWN0LWltYWdlLXRhZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmRldGFpbHMtaXRlbXMgLmRldGFpbHMtaW1hZ2UgLnByb2R1Y3QtaW1hZ2UtdGFnIGltZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuZGV0YWlscy1pbWFnZSAucHJvZHVjdC1pbWFnZS10YWcgLmxhYmVsLXRhZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDEwcHg7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHggMCAwIDUwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAgIC5kZXRhaWxzLWl0ZW1zIC5kZXRhaWxzLWltYWdlIC5wcm9kdWN0LWltYWdlLXRhZyAubGFiZWwtdGFnIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgICAuZGV0YWlscy1pdGVtcyAuZGV0YWlscy1pbWFnZSAucHJvZHVjdC1pbWFnZS10YWcgLmxhYmVsLXRhZyBoNiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9XG4gICAgICAgIC5kZXRhaWxzLWl0ZW1zIC5kZXRhaWxzLWltYWdlIC5wcm9kdWN0LWltYWdlLXRhZyAubGFiZWwtdGFnIGg2IGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICBtYXJnaW46IC0xcHggMnB4IDAgMDtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gICAgICAgIC5kZXRhaWxzLWl0ZW1zIC5kZXRhaWxzLWltYWdlIC5wcm9kdWN0LWltYWdlLXRhZyAubGFiZWwtdGFnIGg2IHNwYW4ge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZGRkO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogNnB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7IH1cblxuLmRldGFpbHMtaXRlbXMgLmRlZ3JlZS1zZWN0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5kZWdyZWUtc2VjdGlvbiAuaW1hZ2UtMzYwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyMHB4O1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjUpO1xuICAgIHotaW5kZXg6IDE7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLmRldGFpbHMtaXRlbXMgLmRlZ3JlZS1zZWN0aW9uIC5pbWFnZS0zNjAudmlkZW9wbGF5LWJveCB7XG4gICAgICBmaWx0ZXI6IGNvbnRyYXN0KDAuNSk7IH1cblxuLmRldGFpbHMtaXRlbXMgLmRldGFpbHMtaW1hZ2Utb3B0aW9uIC5wbGF5LWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRldGFpbHMtaXRlbXMgLmRldGFpbHMtaW1hZ2Utb3B0aW9uIC5wbGF5LWljb24gLmZhLXBsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzIxMjUyOTtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBmb250LXNpemU6IDE4cHg7IH1cblxuLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmRldGFpbHMtaW1hZ2UtY29uY2VwdCB7XG4gICAgbWFyZ2luOiAxNXB4IDA7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5kZXRhaWxzLWltYWdlLWNvbmNlcHQgaDIge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygyMHB4ICsgKDI1IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAucmF0aW5nLW51bWJlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDEwcHggMCAwIDA7XG4gICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5yYXRpbmctbnVtYmVyIGg1IHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnJhdGluZy1udW1iZXIgaDUgLmZlYXRoZXIge1xuICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgbWFyZ2luOiAwIDJweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgZmlsbDogI2ZmYTIwMjtcbiAgICAgICAgY29sb3I6ICNmZmEyMDI7IH1cbiAgICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnJhdGluZy1udW1iZXIgaDUgc3BhbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnByaWNlLXJhdGluZyB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAucHJpY2UtcmF0aW5nIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAgICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAucHJpY2UtcmF0aW5nIGxpOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIGNvbG9yOiAjNjk2OTY5O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4OyB9XG4gICAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5wcmljZS1yYXRpbmcgbGk6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgY29sb3I6ICMwMDljMDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuYm9yZGVyLXByb2R1Y3Qge1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkICNkZGQ7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5ib3JkZXItcHJvZHVjdCBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmJvcmRlci1wcm9kdWN0IGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cbiAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAudGltZXItNSB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDEwcHggLTVweCAwOyB9XG4gICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAudGltZXItNSBoNSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDVweDsgfVxuICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnRpbWVyLTUgLnRpbWVyMSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnRpbWVyLTUgLnRpbWVyMSAuY291bnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC50aW1lci01IC50aW1lcjEgLmNvdW50ZXIgaDUge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5wcm9ncmVzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbiAgICBoZWlnaHQ6IDVweDtcbiAgICB3aWR0aDogNzAlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAucHJvZ3Jlc3Mge1xuICAgICAgICB3aWR0aDogNzUlOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnByb2dyZXNzIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnByb2dyZXNzIC5wcm9ncmVzcy1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpOyB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmltYWdlLWJ1bmRsZSAuYnVuZGxlLWltZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuaW1hZ2UtYnVuZGxlIC5idW5kbGUtaW1nIC5pbWFnZS1jb250YWluIGEgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTE1cHg7XG4gICAgICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMzMsIDM3LCA0MSwgMC4xNSk7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5pbWFnZS1idW5kbGUgLmJ1bmRsZS1pbWcgc3BhbiB7XG4gICAgICBtYXJnaW46IDAgMTVweDsgfVxuICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5pbWFnZS1idW5kbGUgLmNoZWNrYm94LWRldGFpbHMge1xuICAgIG1hcmdpbi10b3A6IDE4cHg7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5pbWFnZS1idW5kbGUgLmNoZWNrYm94LWRldGFpbHMgLmNoZWNrYm94LWxpc3Qge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmNsb3RoLXNpemUgaDUge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDRweDsgfVxuICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC1zaXplIC5jaG9vc2Utc2l6ZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbjogLTEwcHg7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC1zaXplIC5jaG9vc2Utc2l6ZSBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzMywgMzcsIDQxLCAwLjIpO1xuICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC1zaXplIC5jaG9vc2Utc2l6ZSBsaSBhIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDsgfVxuICAgICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuY2xvdGgtc2l6ZSAuY2hvb3NlLXNpemUgbGk6aG92ZXIgYSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmNsb3RoLXRpbWVyIHtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYWVhZWE7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC10aW1lciBoNCB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNSAtIDEzKSAqICgoMTAwdncgLSAzMDBweCkgLyAoMTYwMCAtIDMwMCkpKTsgfVxuICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmNsb3RoLXRpbWVyICN0aW1lLWRhdGUge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNSAtIDEzKSAqICgoMTAwdncgLSAzMDBweCkgLyAoMTYwMCAtIDMwMCkpKTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuY2xvdGgtY29sb3IgLmRyb3Bkb3duLWNvbG9yIHtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgcGFkZGluZzogOXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfVxuICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmNsb3RoLWNvbG9yIC5kcm9wZG93bi1jb2xvcjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC1jb2xvciAuZHJvcGRvd24tY29sb3Igb3B0aW9uIHtcbiAgICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmNsb3RoLWNvbG9yIC5jb3VudGVyLTEge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC1jb2xvciAuY291bnRlci0xIGlucHV0IHtcbiAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIG1hcmdpbjogMHB4IDVweDtcbiAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC1jb2xvciAuY291bnRlci0xIHNwYW4ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjk2OTY5O1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XG4gICAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC1jb2xvciAuY291bnRlci0xIHNwYW4gLmZlYXRoZXIge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIHN0cm9rZS13aWR0aDogMi41cHg7IH1cbiAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuY2xvdGgtY29sb3IgLndpc2UtbGlzdCB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0OyB9XG4gICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuY2xvdGgtY29sb3IgLndpc2UtbGlzdDpob3ZlciB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7IH1cbiAgICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmNsb3RoLWNvbG9yIC53aXNlLWxpc3Q6aG92ZXIgLmZlYXRoZXIge1xuICAgICAgICBmaWxsOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiAzcHg7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jbG90aC1jb2xvciAud2lzZS1saXN0IC5mZWF0aGVyIHtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7IH1cbiAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuY2FydC1idXR0b24gLmJ1eS1jYXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNiAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTYwMCAtIDMyMCkpKTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmNhcnQtYnV0dG9uIC5idXktY2FydCAuZmEtc2hvcHBpbmctY2FydCB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXB4OyB9XG4gIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLmNhcnQtYnV0dG9uIC5hZGQtY2FydCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGNhbGMoNDBweCArICg1MCAtIDQwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTYwMCAtIDMyMCkpKTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE2IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxNjAwIC0gMzIwKSkpO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5jYXJ0LWJ1dHRvbiAuYWRkLWNhcnQgaDYge1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5wYXktb3B0aW9uIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAucGF5LW9wdGlvbiBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5wYXktb3B0aW9uIGxpIGEge1xuICAgICAgICBjb2xvcjogZ3JheTtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuc2hhcmUtaXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7IH1cbiAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5zaGFyZS1pdCBidXR0b24ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgY29sb3I6ICNjNmM5Y2M7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgcGFkZGluZzogNnB4IDEycHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7IH1cbiAgICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnNoYXJlLWl0IGJ1dHRvbiAuZmVhdGhlciB7XG4gICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnNoYXJlLWl0IC5zaGFyZS1vcHRpb24ge1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLmRldGFpbHMtaXRlbXMgLmNsb3RoLWRldGFpbHMtc2l6ZSAuc2hhcmUtaXQgLnNoYXJlLW9wdGlvbiBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuICAgICAgICAuZGV0YWlscy1pdGVtcyAuY2xvdGgtZGV0YWlscy1zaXplIC5zaGFyZS1pdCAuc2hhcmUtb3B0aW9uIGxpIGEge1xuICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAgICAgICAgIC5kZXRhaWxzLWl0ZW1zIC5jbG90aC1kZXRhaWxzLXNpemUgLnNoYXJlLWl0IC5zaGFyZS1vcHRpb24gbGkgYTpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogIzY5Njk2OTsgfVxuXG4uY2xvdGgtcmV2aWV3IC5uYXYtdGFicyB7XG4gIGZsZXgtd3JhcDogaW5pdGlhbDtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NlZDRkYTsgfVxuICAuY2xvdGgtcmV2aWV3IC5uYXYtdGFicyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgZm9udC1zaXplOiAxOXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5jbG90aC1yZXZpZXcgLm5hdi10YWJzIC5uYXYtbGluayB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLmNsb3RoLXJldmlldyAubmF2LXRhYnMgLm5hdi1saW5rIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICAuY2xvdGgtcmV2aWV3IC5uYXYtdGFicyAubmF2LWxpbms6aG92ZXIge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgICAuY2xvdGgtcmV2aWV3IC5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbi5jbG90aC1yZXZpZXcgLnNoaXBwaW5nLWNoYXJ0IHtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgcGFkZGluZzogMDsgfVxuICAuY2xvdGgtcmV2aWV3IC5zaGlwcGluZy1jaGFydCBsaSB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgY29sb3I6ICM2OTY5Njk7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uY2xvdGgtcmV2aWV3IC50YWItcGFuZSB7XG4gIHBhZGRpbmctdG9wOiAzMHB4OyB9XG4gIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5jdXN0b21lci1yZXZpZXctYm94IGg0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7IH1cbiAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgLmN1c3RvbWVyLXJldmlldy1ib3ggLmN1c3RvbWVyLXNlY3Rpb24ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDIwNiwgMjEyLCAyMTgsIDAuNyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBwYWRkaW5nOiAzMHB4IDA7IH1cbiAgICAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAuY3VzdG9tZXItcmV2aWV3LWJveCAuY3VzdG9tZXItc2VjdGlvbiAuY3VzdG9tZXItcHJvZmlsZSB7XG4gICAgICB3aWR0aDogNjBweDtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI4cHg7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmNsb3RoLXJldmlldyAudGFiLXBhbmUgLmN1c3RvbWVyLXJldmlldy1ib3ggLmN1c3RvbWVyLXNlY3Rpb24gLmN1c3RvbWVyLXByb2ZpbGUge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyOHB4OyB9XG4gICAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgLmN1c3RvbWVyLXJldmlldy1ib3ggLmN1c3RvbWVyLXNlY3Rpb24gLmN1c3RvbWVyLWRldGFpbHMge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpOyB9XG4gICAgICAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAuY3VzdG9tZXItcmV2aWV3LWJveCAuY3VzdG9tZXItc2VjdGlvbiAuY3VzdG9tZXItZGV0YWlscyBoNSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAgIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5jdXN0b21lci1yZXZpZXctYm94IC5jdXN0b21lci1zZWN0aW9uIC5jdXN0b21lci1kZXRhaWxzIHAge1xuICAgICAgICBsaW5lLWhlaWdodDogMS40OyB9XG4gICAgICAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAuY3VzdG9tZXItcmV2aWV3LWJveCAuY3VzdG9tZXItc2VjdGlvbiAuY3VzdG9tZXItZGV0YWlscyAuZGF0ZS1jdXN0byB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAuY3VzdG9tZXItcmF0aW5nIC5yYXRpbmctcHJvZ2VzcyB7XG4gICAgbWFyZ2luLXRvcDogMjFweDsgfVxuICAgIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5jdXN0b21lci1yYXRpbmcgLnJhdGluZy1wcm9nZXNzIGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAuY3VzdG9tZXItcmF0aW5nIC5yYXRpbmctcHJvZ2VzcyBsaSAucHJvZ3Jlc3Mge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBoZWlnaHQ6IDEycHg7IH1cbiAgICAgICAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgLmN1c3RvbWVyLXJhdGluZyAucmF0aW5nLXByb2dlc3MgbGkgLnByb2dyZXNzIC5wcm9ncmVzcy1iYXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmEyMDI7IH1cbiAgICAgIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5jdXN0b21lci1yYXRpbmcgLnJhdGluZy1wcm9nZXNzIGxpIGg1IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9XG4gIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC50YWJsZS1wYW5lIHRyLmJnLWNvbG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3OyB9XG4gIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5wcm8gLnRhYmxlLXBhcnQge1xuICAgIG1hcmdpbi10b3A6IDI1cHg7IH1cbiAgICAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAucHJvIC50YWJsZS1wYXJ0IHRyIHtcbiAgICAgIGNvbG9yOiAjN2U3ZTdlOyB9XG4gICAgICAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAucHJvIC50YWJsZS1wYXJ0IHRyIHRoIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmNztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICAgIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5wcm8gLnRhYmxlLXBhcnQgdHIgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgICAgICBbZGlyPVwicnRsXCJdIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5wcm8gLnRhYmxlLXBhcnQgdHIgdGQge1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5xdWVzdGlvbi1hbnN3ZXIgdWwgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDI2cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDI2cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjZWQ0ZGE7IH1cbiAgICAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAucXVlc3Rpb24tYW5zd2VyIHVsIGxpIC5xdWUge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5xdWVzdGlvbi1hbnN3ZXIgdWwgbGkgLnF1ZSAuZmEtcXVlc3Rpb24ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgd2lkdGg6IDM4cHg7XG4gICAgICAgIGhlaWdodDogMzhweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAuY2xvdGgtcmV2aWV3IC50YWItcGFuZSAucXVlc3Rpb24tYW5zd2VyIHVsIGxpIC5xdWUgLmZhLXF1ZXN0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cbiAgICAgIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5xdWVzdGlvbi1hbnN3ZXIgdWwgbGkgLnF1ZSAucXVlLWRldGFpbHMge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7IH1cbiAgICAgICAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgLnF1ZXN0aW9uLWFuc3dlciB1bCBsaSAucXVlIC5xdWUtZGV0YWlscyBoNiB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC45cHg7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cbiAgICAgICAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgLnF1ZXN0aW9uLWFuc3dlciB1bCBsaSAucXVlIC5xdWUtZGV0YWlscyBwIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIGNvbG9yOiAjN2U3ZTdlOyB9XG4gIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5zcGVjaS1saXN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAyOHB4OyB9XG4gICAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgLnNwZWNpLWxpc3QgaDYge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgICAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgLnNwZWNpLWxpc3QgaDYgc3BhbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBsaW5lLWhlaWdodDogMS44O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG4gIC5jbG90aC1yZXZpZXcgLnRhYi1wYW5lIC5zdWJtaXQtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgdGFibGUgdGJvZHkgdHIgdGgge1xuICAgIHBhZGRpbmc6IDEuMnJlbSAwLjVyZW0gIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgLmNsb3RoLXJldmlldyAudGFiLXBhbmUgdGFibGUgdGJvZHkgdHIgdGQge1xuICAgIHBhZGRpbmc6IDEuMnJlbSAwLjVyZW07XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmNsb3RoLXJldmlldyAucmV2aWV3LWJveCAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjZWZmM2Y3ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLnBhcnQge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKDBweCArICgyMCAtIDApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpOyB9XG4gIC5wYXJ0IC5pbm5lci10aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICBmb250LXNpemU6IDE4cHg7IH1cblxuLmN1c3RvbWUtbW9kYWwgLm1vZGFsLWNvbnRlbnQge1xuICBib3JkZXItcmFkaXVzOiAxMHB4OyB9XG4gIC5jdXN0b21lLW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuY3VzdG9tZS1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIGJ1dHRvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICByaWdodDogMTBweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5jdXN0b21lLW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5jdXN0b21lLW1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1ib2R5IC5zaGFyZS1pdCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAuY3VzdG9tZS1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAuc2hhcmUtaXQgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICAuY3VzdG9tZS1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAuc2hhcmUtaXQgbGkgKyBsaSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzBweDsgfVxuICAgICAgICAuY3VzdG9tZS1tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtYm9keSAuc2hhcmUtaXQgbGkgYSB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyOyB9XG4gICAgICAgICAgLmN1c3RvbWUtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLnNoYXJlLWl0IGxpIGEgcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgICAgLmN1c3RvbWUtbW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgLnNoYXJlLWl0IGxpIGEgaSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IDFweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyOyB9XG5cbi5yZWNlbnRseS1wdXJjaGFzZSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIG1heC13aWR0aDogNDAwcHg7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm90dG9tOiAtMjAwcHg7XG4gIGxlZnQ6IDEwcHg7XG4gIHBhZGRpbmc6IDEycHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IGF1dG87XG4gIHotaW5kZXg6IDc7XG4gIGJveC1zaGFkb3c6IDAgMCA0cHggMCByZ2JhKDMzLCAzNywgNDEsIDAuMik7XG4gIHBhZGRpbmc6IDVweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNnMgZWFzZTsgfVxuICBbZGlyPVwicnRsXCJdIC5yZWNlbnRseS1wdXJjaGFzZSB7XG4gICAgbGVmdDogdW5zZXQ7XG4gICAgcmlnaHQ6IDEwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgLnJlY2VudGx5LXB1cmNoYXNlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXJnaW46IDAgMTNweDsgfSB9XG4gIC5yZWNlbnRseS1wdXJjaGFzZS5zaG93IHtcbiAgICBib3R0b206IDEwcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNnMgZWFzZTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLnJlY2VudGx5LXB1cmNoYXNlLnNob3cge1xuICAgICAgICBib3R0b206IDgwcHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLnJlY2VudGx5LXB1cmNoYXNlLnNob3cge1xuICAgICAgICBib3R0b206IDY0cHg7IH0gfVxuICAucmVjZW50bHktcHVyY2hhc2UgaW1nIHtcbiAgICB3aWR0aDogMjIlOyB9XG4gIC5yZWNlbnRseS1wdXJjaGFzZSAuY2xvc2UtcG9wdXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogN3B4O1xuICAgIHRvcDogN3B4O1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICBjb2xvcjogIzIxMjUyOTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnJlY2VudGx5LXB1cmNoYXNlIC5jbG9zZS1wb3B1cCB7XG4gICAgICByaWdodDogdW5zZXQ7XG4gICAgICBsZWZ0OiA3cHg7IH1cbiAgLnJlY2VudGx5LXB1cmNoYXNlIC5tZWRpYS1ib2R5IHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5yZWNlbnRseS1wdXJjaGFzZSAubWVkaWEtYm9keSB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIC5yZWNlbnRseS1wdXJjaGFzZSAubWVkaWEtYm9keSBoNCB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxNiAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAucmVjZW50bHktcHVyY2hhc2UgLm1lZGlhLWJvZHkgLnRpdGxlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAucmVjZW50bHktcHVyY2hhc2UgLm1lZGlhLWJvZHkgLnByb2R1Y3QtbmFtZSB7XG4gICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDJweCAwOyB9XG4gICAgLnJlY2VudGx5LXB1cmNoYXNlIC5tZWRpYS1ib2R5IC50aW1lQWdvIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5zdGlja3lDYXJ0IHtcbiAgcGFkZGluZy1ib3R0b206IDk0cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgLnN0aWNreUNhcnQge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuICAuc3RpY2t5Q2FydCAuc3RpY2t5LWJvdHRvbS1jYXJ0IHtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuICAuc3RpY2t5Q2FydCAucmVjZW50bHktcHVyY2hhc2Uuc2hvdyB7XG4gICAgYm90dG9tOiAxMTBweDsgfVxuICAuc3RpY2t5Q2FydCAudGFwLXRvcCB7XG4gICAgYm90dG9tOiAxMTBweDsgfVxuXG4ub3V0bGluZS1idXR0b24ge1xuICBwYWRkaW5nOiAxMnB4IDQ1cHg7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLm91dGxpbmUtYnV0dG9uIHtcbiAgICAgIHBhZGRpbmc6IDEycHg7IH0gfVxuXG4uc3RpY2t5LWJvdHRvbS1jYXJ0IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IC0xNjBweDtcbiAgd2lkdGg6IDEwMHZ3O1xuICB6LWluZGV4OiA5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAxMnB4IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAzcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNik7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgLnN0aWNreS1ib3R0b20tY2FydCAuY2FydC1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5jYXJ0LWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5zdGlja3ktYm90dG9tLWNhcnQgLnByb2R1Y3QtaW1hZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLnN0aWNreS1ib3R0b20tY2FydCAucHJvZHVjdC1pbWFnZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIC5zdGlja3ktYm90dG9tLWNhcnQgLnByb2R1Y3QtaW1hZ2UgaW1nIHtcbiAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBvYmplY3QtcG9zaXRpb246IHRvcDsgfVxuICAgIC5zdGlja3ktYm90dG9tLWNhcnQgLnByb2R1Y3QtaW1hZ2UgLmNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XG4gICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLnN0aWNreS1ib3R0b20tY2FydCAucHJvZHVjdC1pbWFnZSAuY29udGVudCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5wcm9kdWN0LWltYWdlIC5jb250ZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5wcm9kdWN0LWltYWdlIC5jb250ZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5wcm9kdWN0LWltYWdlIC5jb250ZW50IGg1LFxuICAgICAgLnN0aWNreS1ib3R0b20tY2FydCAucHJvZHVjdC1pbWFnZSAuY29udGVudCBoNiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5zdGlja3ktYm90dG9tLWNhcnQgLnByb2R1Y3QtaW1hZ2UgLmNvbnRlbnQgaDUge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG4gICAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5wcm9kdWN0LWltYWdlIC5jb250ZW50IGg2IHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAzcHg7IH1cbiAgICAgICAgLnN0aWNreS1ib3R0b20tY2FydCAucHJvZHVjdC1pbWFnZSAuY29udGVudCBoNiBkZWwge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA3cHg7IH1cbiAgICAgICAgLnN0aWNreS1ib3R0b20tY2FydCAucHJvZHVjdC1pbWFnZSAuY29udGVudCBoNiBzcGFuIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtZGVhZnVsdCk7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuICAgICAgICAgIFtkaXI9XCJydGxcIl0gLnN0aWNreS1ib3R0b20tY2FydCAucHJvZHVjdC1pbWFnZSAuY29udGVudCBoNiBzcGFuIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgLnN0aWNreS1ib3R0b20tY2FydCAuc2VsZWN0aW9uLXNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgMTBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLnN0aWNreS1ib3R0b20tY2FydCAuc2VsZWN0aW9uLXNlY3Rpb24ge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5zZWxlY3Rpb24tc2VjdGlvbiAuZm9ybS1jb250cm9sIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmYyZjc7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWZmMmY3O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cbiAgICAgIC5zdGlja3ktYm90dG9tLWNhcnQgLnNlbGVjdGlvbi1zZWN0aW9uIC5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuICAgICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgLnN0aWNreS1ib3R0b20tY2FydCAuc2VsZWN0aW9uLXNlY3Rpb24gLmZvcm0tZ3JvdXAge1xuICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgLnN0aWNreS1ib3R0b20tY2FydCAuc2VsZWN0aW9uLXNlY3Rpb24gLmZvcm0tZ3JvdXAge1xuICAgICAgICAgIHdpZHRoOiAxOTBweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLnN0aWNreS1ib3R0b20tY2FydCAuc2VsZWN0aW9uLXNlY3Rpb24gLmZvcm0tZ3JvdXAge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICB3aWR0aDogdW5zZXQ7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5hZGQtYnRuIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5hZGQtYnRuIGEge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9IH1cbiAgLnN0aWNreS1ib3R0b20tY2FydCAuYWRkLWJ0biBhLndpc2hsaXN0LWJ0biB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZmMmY3O1xuICAgIGNvbG9yOiAjMjEyNTI5OyB9XG4gICAgLnN0aWNreS1ib3R0b20tY2FydCAuYWRkLWJ0biBhLndpc2hsaXN0LWJ0bjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5hZGQtYnRuIGEud2lzaGxpc3QtYnRuIHtcbiAgICAgICAgZGlzcGxheTogZmxleDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgIC5zdGlja3ktYm90dG9tLWNhcnQgLmFkZC1idG4gYSArIGEge1xuICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuc3RpY2t5LWJvdHRvbS1jYXJ0IC5hZGQtYnRuIGEgKyBhIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDsgfSB9XG4gIC5zdGlja3ktYm90dG9tLWNhcnQgLmFkZC1idG4gYSBpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDdweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnN0aWNreS1ib3R0b20tY2FydCAuYWRkLWJ0biBhIGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA3cHg7IH1cblxuLnByb2R1Y3QtaW1hZ2Uge1xuICBib3JkZXItcmFkaXVzOiA3cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnByb2R1Y3QtaW1hZ2U6aG92ZXIgLnByb2R1Y3QtZGV0YWlscyAuY2FydC13cmFwIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gICAgLnByb2R1Y3QtaW1hZ2U6aG92ZXIgLnByb2R1Y3QtZGV0YWlscyAuY2FydC13cmFwIHVsIGxpIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cbiAgICAgIC5wcm9kdWN0LWltYWdlOmhvdmVyIC5wcm9kdWN0LWRldGFpbHMgLmNhcnQtd3JhcCB1bCBsaTpudGgtY2hpbGQoMikge1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjFzOyB9XG4gICAgICAucHJvZHVjdC1pbWFnZTpob3ZlciAucHJvZHVjdC1kZXRhaWxzIC5jYXJ0LXdyYXAgdWwgbGk6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4yczsgfVxuICAgICAgLnByb2R1Y3QtaW1hZ2U6aG92ZXIgLnByb2R1Y3QtZGV0YWlscyAuY2FydC13cmFwIHVsIGxpOm50aC1jaGlsZCg0KSB7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuM3M7IH1cbiAgICAgIC5wcm9kdWN0LWltYWdlOmhvdmVyIC5wcm9kdWN0LWRldGFpbHMgLmNhcnQtd3JhcCB1bCBsaTpudGgtY2hpbGQoNSkge1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjRzOyB9XG4gIFtkaXI9XCJydGxcIl0gLnByb2R1Y3QtaW1hZ2Uge1xuICAgIGRpcmVjdGlvbjogcnRsOyB9XG4gIC5wcm9kdWN0LWltYWdlIGltZyB7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgaGVpZ2h0OiA5MHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gIC5wcm9kdWN0LWltYWdlIC5wcm9kdWN0LWRldGFpbHMge1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnByb2R1Y3QtaW1hZ2UgLnByb2R1Y3QtZGV0YWlscyAuY2FydC13cmFwIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IC40cyBlYXNlOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LWltYWdlIC5wcm9kdWN0LWRldGFpbHMgLmNhcnQtd3JhcCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuICAgICAgLnByb2R1Y3QtaW1hZ2UgLnByb2R1Y3QtZGV0YWlscyAuY2FydC13cmFwIHVsIGxpIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwcHgpO1xuICAgICAgICB0cmFuc2l0aW9uOiAuNHMgZWFzZTsgfVxuICAgICAgICAucHJvZHVjdC1pbWFnZSAucHJvZHVjdC1kZXRhaWxzIC5jYXJ0LXdyYXAgdWwgbGkgKyBsaSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICAgICAgICBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LWltYWdlIC5wcm9kdWN0LWRldGFpbHMgLmNhcnQtd3JhcCB1bCBsaSArIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgICAgICAucHJvZHVjdC1pbWFnZSAucHJvZHVjdC1kZXRhaWxzIC5jYXJ0LXdyYXAgdWwgbGkgYSAuZmVhdGhlciB7XG4gICAgICAgICAgd2lkdGg6IDIwcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5wcm9kdWN0LWltYWdlIC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IH1cbiAgICAucHJvZHVjdC1pbWFnZSAucHJvZHVjdC1kZXRhaWxzIGEge1xuICAgICAgY29sb3I6ICMyMTI1Mjk7IH1cbiAgICAgIC5wcm9kdWN0LWltYWdlIC5wcm9kdWN0LWRldGFpbHMgYSBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE2IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgbWFyZ2luOiA0cHggMCAwOyB9XG4gICAgLnByb2R1Y3QtaW1hZ2UgLnByb2R1Y3QtZGV0YWlscyBoNCB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxNiAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTsgfVxuICAgICAgLnByb2R1Y3QtaW1hZ2UgLnByb2R1Y3QtZGV0YWlscyBoNCBzcGFuIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAucHJvZHVjdC1pbWFnZSAucHJvZHVjdC1kZXRhaWxzIGg0IHNwYW4ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgLnByb2R1Y3QtaW1hZ2UgKyAucHJvZHVjdC1pbWFnZSB7XG4gICAgbWFyZ2luLXRvcDogMzBweDsgfVxuXG4ud3JhcHBlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICM2OTY5Njk7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLndyYXBwZXIgI3RocmVlc2l4dHkge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHVzZXItc2VsZWN0OiBub25lOyB9XG4gIC53cmFwcGVyIC5idXR0b25zLXdyYXBwZXIge1xuICAgIG1heC13aWR0aDogMTIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAud3JhcHBlciAuYnV0dG9ucy13cmFwcGVyIC5idXR0b24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDsgfVxuICAgICAgLndyYXBwZXIgLmJ1dHRvbnMtd3JhcHBlciAuYnV0dG9uOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOTtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cblxuLmNvbXBhcmUtdGFibGUgdGJvZHkgdHIgdGgsXG4uY29tcGFyZS10YWJsZSB0Ym9keSB0ciB0ZCB7XG4gIHBhZGRpbmc6IDEycHggMjBweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4uY29tcGFyZS10YWJsZSB0Ym9keSB0ciB0ZCBwIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS44O1xuICBsZXR0ZXItc3BhY2luZzogMC45cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNvbXBhcmUtdGFibGUgdGJvZHkgdHIgdGQudGFibGUtaW1hZ2Utc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmNvbXBhcmUtdGFibGUgdGJvZHkgdHIgdGQudGFibGUtaW1hZ2Utc2VjdGlvbiBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMjUwcHg7IH1cbiAgLmNvbXBhcmUtdGFibGUgdGJvZHkgdHIgdGQudGFibGUtaW1hZ2Utc2VjdGlvbiAuaW1hZ2UtZGV0YWlscyB7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuY29tcGFyZS10YWJsZSB0Ym9keSB0ciB0ZC50YWJsZS1pbWFnZS1zZWN0aW9uIC5pbWFnZS1kZXRhaWxzIGg1IHtcbiAgICAgIG1hcmdpbjogOHB4IDA7IH1cbiAgICAuY29tcGFyZS10YWJsZSB0Ym9keSB0ciB0ZC50YWJsZS1pbWFnZS1zZWN0aW9uIC5pbWFnZS1kZXRhaWxzIHAge1xuICAgICAgbGluZS1oZWlnaHQ6IDEwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmNvbXBhcmUtdGFibGUgdGJvZHkgdHIgdGQudGFibGUtaW1hZ2Utc2VjdGlvbiAuaW1hZ2UtZGV0YWlscyAuYnRuLXNvbGlkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgcGFkZGluZzogN3B4IDI1cHg7IH1cblxuLmNvbXBhcmUtdGFibGUgdGJvZHkgdHIgdGQucHJvZHVjdC1kZXNjcmlwdGlvbiB7XG4gIHdpZHRoOiA1MDBweDsgfVxuXG5Aa2V5ZnJhbWVzIHJvdW5kZWQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHJ1bi1zaG9lcyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0OyB9XG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0OyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpIHRyYW5zbGF0ZSgwLCAwKTsgfSB9XG5cbkBrZXlmcmFtZXMgcmlwcGxlIHtcbiAgMCUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgyMzksIDI0MywgMjQ3LCAwLjMpLCAwIDAgMCAxZW0gcmdiYSgyMzksIDI0MywgMjQ3LCAwLjMpOyB9XG4gIDEwMCUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFlbSByZ2JhKDIzOSwgMjQzLCAyNDcsIDAuMyksIDAgMCAwIDNlbSByZ2JhKDIzOSwgMjQzLCAyNDcsIDAuMyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHJpcHBsZS0xIHtcbiAgMCUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgyMzIsIDExNSwgMjIsIDAuMyksIDAgMCAwIDFlbSByZ2JhKDIzMiwgMTE1LCAyMiwgMC4zKTsgfVxuICAxMDAlIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxZW0gcmdiYSgyMzIsIDExNSwgMjIsIDAuMyksIDAgMCAwIDEuNWVtIHJnYmEoMjMyLCAxMTUsIDIyLCAwKTsgfSB9XG5cbkBrZXlmcmFtZXMgcmlwcGxlLTIge1xuICAwJSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyksIDAgMCAwIDFlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7IH1cbiAgMTAwJSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMWVtIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSwgMCAwIDAgMS41ZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTsgfSB9XG5cbkBrZXlmcmFtZXMgcm90YXRlLWZsb3dlciB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207IH1cbiAgMjUlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg4ZGVnKTsgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLThkZWcpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9IH1cblxuQGtleWZyYW1lcyBiYWNrIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpOyB9XG4gIDcwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xM3B4KTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTsgfSB9XG5cbkBrZXlmcmFtZXMgcmVnTWFzayB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDBweCkgc2NhbGUoMCk7IH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDBweCwgMTAwcHgpIHNjYWxlKDAuNSk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAwcHgpIHNjYWxlKDEpOyB9IH1cblxuQGtleWZyYW1lcyByZWdNYXNrUiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDBweCkgc2NhbGUoMSk7IH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxNTBweCwgLTE1MHB4KSBzY2FsZSgwLjUpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KSBzY2FsZSgwKTsgfSB9XG5cbkBrZXlmcmFtZXMgcmVnVGFnIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KSByb3RhdGUoMGRlZyk7IH1cbiAgMjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0cHgsIDI1cHgpIHJvdGF0ZSgxMS4yNWRlZyk7IH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtODhweCwgNDBweCkgcm90YXRlKDIyLjVkZWcpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC05NnB4LCA4cHgpIHJvdGF0ZSg0NWRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHJlZ1RhZzIge1xuICAwJSB7XG4gICAgd2lkdGg6IDE0MHB4O1xuICAgIGhlaWdodDogMTQwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE0MHB4O1xuICAgIGJveC1zaGFkb3c6IDBweCAycHggNXB4IC0xcHggcmdiYSgzMywgMzcsIDQxLCAwLjQ1KTsgfVxuICAxMDAlIHtcbiAgICB3aWR0aDogNzBweDtcbiAgICBoZWlnaHQ6IDcwcHg7XG4gICAgYm94LXNoYWRvdzogMHB4IDJweCA1cHggLTFweCByZ2JhKDMzLCAzNywgNDEsIDApO1xuICAgIGxpbmUtaGVpZ2h0OiA2OHB4OyB9IH1cblxuQGtleWZyYW1lcyByZWdUYWdSIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC05NnB4LCA4cHgpIHJvdGF0ZSg0NWRlZyk7IH1cbiAgMjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtODhweCwgNDBweCkgcm90YXRlKDIyLjVkZWcpOyB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LCAyNXB4KSByb3RhdGUoMTEuMjVkZWcpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KSByb3RhdGUoMGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHJlZ1RhZzJSIHtcbiAgMCUge1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGhlaWdodDogNzBweDtcbiAgICBib3gtc2hhZG93OiAwcHggMnB4IDVweCAtMXB4IHJnYmEoMzMsIDM3LCA0MSwgMCk7XG4gICAgbGluZS1oZWlnaHQ6IDY4cHg7IH1cbiAgMTAwJSB7XG4gICAgd2lkdGg6IDE0MHB4O1xuICAgIGhlaWdodDogMTQwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE0MHB4O1xuICAgIGJveC1zaGFkb3c6IDBweCAycHggNXB4IC0xcHggcmdiYSgzMywgMzcsIDQxLCAwLjQ1KTsgfSB9XG5cbkBrZXlmcmFtZXMgc2hha2Uge1xuICBmcm9tLFxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuICAxMCUsXG4gIDMwJSxcbiAgNTAlLFxuICA3MCUsXG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7IH1cbiAgMjAlLFxuICA0MCUsXG4gIDYwJSxcbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOyB9IH1cblxuQGtleWZyYW1lcyBmYWRlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGJ1dHRvbnMtc2hha2Uge1xuICAxMCUsXG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMXB4LCAwLCAwKTsgfVxuICAyMCUsXG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgycHgsIDAsIDApOyB9XG4gIDMwJSxcbiAgNTAlLFxuICA3MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTJweCwgMCwgMCk7IH1cbiAgNDAlLFxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMnB4LCAwLCAwKTsgfSB9XG5cbkBrZXlmcmFtZXMgcmluZyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMCk7IH1cbiAgMSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigxNWRlZyk7IH1cbiAgMyUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigtMTRkZWcpOyB9XG4gIDUlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMTdkZWcpOyB9XG4gIDclIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooLTE2ZGVnKTsgfVxuICA5JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDE1ZGVnKTsgfVxuICAxMSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigtMTRkZWcpOyB9XG4gIDEzJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDEzZGVnKTsgfVxuICAxNSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigtMTJkZWcpOyB9XG4gIDE3JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDEyZGVnKTsgfVxuICAxOSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigtMTBkZWcpOyB9XG4gIDIxJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDlkZWcpOyB9XG4gIDIzJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKC04ZGVnKTsgfVxuICAyNSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWig3ZGVnKTsgfVxuICAyNyUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigtNWRlZyk7IH1cbiAgMjklIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooNWRlZyk7IH1cbiAgMzElIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooLTRkZWcpOyB9XG4gIDMzJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDNkZWcpOyB9XG4gIDM1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKC0yZGVnKTsgfVxuICAzNyUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigxZGVnKTsgfVxuICAzOSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigtMWRlZyk7IH1cbiAgNDElIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMWRlZyk7IH1cbiAgNDMlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMCk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDApOyB9IH1cblxuQGtleWZyYW1lcyBhbmltYXRlQ29udGFpbmVyIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCA2NXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSkgaW5zZXQsIDBweCAwcHggMHB4IDY1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldDsgfVxuICAyNSUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDY1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldCwgMHB4IDBweCAwcHggNjVweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpIGluc2V0OyB9XG4gIDQzLjc1JSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjE1KTtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCA0My4zMzRweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpIGluc2V0LCAwcHggMHB4IDBweCA2NXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSkgaW5zZXQ7IH1cbiAgNjIuNSUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSkgaW5zZXQsIDBweCAwcHggMHB4IDIxLjY2N3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSkgaW5zZXQ7IH1cbiAgODEuMjUlIHtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldCwgMHB4IDBweCAwcHggMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSkgaW5zZXQ7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldCwgMHB4IDBweCAwcHggMHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSkgaW5zZXQ7IH0gfVxuXG5Aa2V5ZnJhbWVzIGFuaW1hdGVDaGVjayB7XG4gIGZyb20ge1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiA4MDsgfVxuICB0byB7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7IH0gfVxuXG5Aa2V5ZnJhbWVzIGFuaW1hdGVTaGFkb3cge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDE1JTsgfVxuICAyNSUge1xuICAgIG9wYWNpdHk6IDAuMjU7IH1cbiAgNDMuNzUlIHtcbiAgICB3aWR0aDogNDAlO1xuICAgIGhlaWdodDogNyU7XG4gICAgb3BhY2l0eTogMC4zNTsgfVxuICAxMDAlIHtcbiAgICB3aWR0aDogODUlO1xuICAgIGhlaWdodDogMTUlO1xuICAgIG9wYWNpdHk6IDAuMjU7IH0gfVxuXG5Aa2V5ZnJhbWVzIG1vdmVyIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTdweCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGZsb2F0aW5nIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE4NyUpOyB9IH1cblxuQGtleWZyYW1lcyBmYWRlSW4ge1xuICB0byB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkBrZXlmcmFtZXMgbW92ZURvd24ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTAwJSk7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9IH1cblxuQGtleWZyYW1lcyBwZW5kdWx1bSB7XG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNjBkZWcpOyB9XG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQwZGVnKTsgfVxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDIwZGVnKTsgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC01ZGVnKTsgfSB9XG5cbkBrZXlmcmFtZXMgY2F0SGkge1xuICAwJSxcbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7IH1cbiAgMTAlLFxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkBrZXlmcmFtZXMgY2F0U2hhZG93IHtcbiAgMCUsXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDQwcHgsIC0zNXB4KSBzY2FsZSgwLjMpOyB9XG4gIDEwJSxcbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01cHgsIDEwcHgpIHNjYWxlKDAuNSk7IH1cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuQGtleWZyYW1lcyBtb3ZlQm94IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTE1MHB4KSByb3RhdGUoMjBkZWcpOyB9XG4gIDE1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMDBweCkgcm90YXRlKC0xNWRlZyk7IH1cbiAgMjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAyNTBweCkgcm90YXRlKDEwZGVnKTsgfVxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDM1MHB4KSByb3RhdGUoLTVkZWcpOyB9XG4gIDM1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA1NzBweCkgcm90YXRlKDBkZWcpOyB9XG4gIDQ1JSxcbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA1NzBweCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHBhcmFjaHV0ZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTUwcHgpIHJvdGF0ZSgyMGRlZykgc2NhbGUoMC44KTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIDE1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTAwcHgpIHJvdGF0ZSgtMTVkZWcpIHNjYWxlKDEpO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAyNTBweCkgcm90YXRlKDEwZGVnKTsgfVxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDM1MHB4KSByb3RhdGUoLTVkZWcpOyB9XG4gIDMzJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgNDYwcHgpIHJvdGF0ZSgwZGVnKSBzY2FsZSgwLjkpO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgNDUlLFxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA0ODBweCk7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbkBrZXlmcmFtZXMgZmFkZUluT3V0IHtcbiAgNSUsXG4gIDEyJSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAyMCUge1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG5Aa2V5ZnJhbWVzIGNsb3VkcyB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xNTAlLCAwKTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTUwJSwgMCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHJvdW5kIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGJhbm5lciBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmJhbm5lci1zdHlsZS0yIC5jb2xsZWN0aW9uLWJhbm5lciAuYmFubmVyLWltZyB7XG4gICAgbWluLWhlaWdodDogMzkwcHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTQ2MHB4KSB7XG4gICAgICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItaW1nIHtcbiAgICAgICAgbWluLWhlaWdodDogMzMwcHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci1pbWcge1xuICAgICAgICBtaW4taGVpZ2h0OiAzMDBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDM2MHB4KSB7XG4gICAgICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItaW1nIHtcbiAgICAgICAgbWluLWhlaWdodDogMjQwcHg7IH0gfVxuICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItZGV0YWlsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMzBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLmJhbm5lci1zdHlsZS0yIC5jb2xsZWN0aW9uLWJhbm5lciAuYmFubmVyLWRldGFpbCB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7IH0gfVxuICAgIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci1kZXRhaWwgLmZvbnQtZGFyay0zMCB7XG4gICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgIGNvbG9yOiAjMjEyNTI5ICFpbXBvcnRhbnQ7IH1cbiAgICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItZGV0YWlsIC5oZWFydC13aXNobGlzdCAuZmFyIHtcbiAgICAgIGNvbG9yOiByZ2JhKDM1LCAzNSwgMzUsIDAuNik7IH1cbiAgICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyIC5iYW5uZXItZGV0YWlsIC5oZWFydC13aXNobGlzdDo6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IDAuNTsgfVxuICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciB7XG4gICAgdG9wOiB1bnNldDtcbiAgICBib3R0b206IDYwcHg7IH1cbiAgICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lci5jb250YWluLWNlbnRlciB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciB7XG4gICAgICAgIGJvdHRvbTogMzBweDsgfSB9XG4gICAgLmJhbm5lci1zdHlsZS0yIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTIwcHgpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG4gICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNHB4KTsgfVxuICAgICAgLmJhbm5lci1zdHlsZS0yIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50LmJhbm5lci1jZW50ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNXB4KTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDE0NjBweCkge1xuICAgICAgICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgICAgd2lkdGg6IHVuc2V0OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDE0NjBweCkge1xuICAgICAgICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQgc3BhbiB7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDsgfSB9XG4gIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXIucmF0aW8yXzEgLmJnLXNpemU6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5iYW5uZXItc3R5bGUtMiAuY29sbGVjdGlvbi1iYW5uZXI6aG92ZXIgLmNvbnRhaW4tYmFubmVyIC5iYW5uZXItY29udGVudC5iYW5uZXItY2VudGVyIHtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNXB4KTsgfVxuICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyOmhvdmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQud2l0aC1iZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyOmhvdmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQud2l0aC1iaWcge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNXB4KTtcbiAgICBvcGFjaXR5OiAwLjk7IH1cbiAgLmJhbm5lci1zdHlsZS0yIC5jb2xsZWN0aW9uLWJhbm5lcjpob3ZlciAuYmFubmVyLWRldGFpbCAuaGVhcnQtd2lzaGxpc3QgLmZhciB7XG4gICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTsgfVxuICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyOmhvdmVyIC5iYW5uZXItZGV0YWlsIC5oZWFydC13aXNobGlzdDo6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDAuMTtcbiAgICB0cmFuc2l0aW9uOiAwLjU7IH1cbiAgLmJhbm5lci1zdHlsZS0yIC5jb2xsZWN0aW9uLWJhbm5lcjpob3ZlciAuYmFubmVyLWRldGFpbCAuZm9udC1kYXJrLTMwIHtcbiAgICBjb2xvcjogIzIzMjMyMyAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgICAuYmFubmVyLXN0eWxlLTIgLmNvbGxlY3Rpb24tYmFubmVyOmhvdmVyIC5iYW5uZXItZGV0YWlsIC5mb250LWRhcmstMzAgc3BhbiB7XG4gICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpICFpbXBvcnRhbnQ7IH1cblxuLmJhbm5lci1zdHlsZS0yLm9mZmVyLWJhbm5lciAuY29sbGVjdGlvbi1iYW5uZXIgLmJhbm5lci1pbWcge1xuICBtaW4taGVpZ2h0OiB1bnNldDsgfVxuXG4uYmFubmVyLXN0eWxlLTIub2ZmZXItYmFubmVyIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIge1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBib3R0b206IHVuc2V0OyB9XG4gIC5iYW5uZXItc3R5bGUtMi5vZmZlci1iYW5uZXIgLmNvbGxlY3Rpb24tYmFubmVyIC5jb250YWluLWJhbm5lciAuYmFubmVyLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDQwcHg7IH1cbiAgICAuYmFubmVyLXN0eWxlLTIub2ZmZXItYmFubmVyIC5jb2xsZWN0aW9uLWJhbm5lciAuY29udGFpbi1iYW5uZXIgLmJhbm5lci1jb250ZW50IHNwYW4ge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IHVuc2V0OyB9XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICByZXNwb25zaXZlIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxNDMwcHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxNDAwcHg7IH0gfVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBSVEwgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuW2Rpcj1cInJ0bFwiXSBvbCxcbltkaXI9XCJydGxcIl0gdWwge1xuICBwYWRkaW5nOiAwOyB9XG5cbltkaXI9XCJydGxcIl0gLnNsaWNrLXNsaWRlciB7XG4gIGRpcmVjdGlvbjogbHRyOyB9XG5cbltkaXI9XCJydGxcIl0gLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIGJyZWFrcG9pbnQgbWl4aW5zIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi8vIG1pbiB3aWR0aFxuQG1peGluIG1xLW1pbigkYnJlYWtwb2ludCkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkbWluLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkge1xuICAgICAgICAkYnJlYWtwb2ludC12YWx1ZTogbWFwLWdldCgkbWluLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCk7XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXZhbHVlKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgICAgQHdhcm4gJ0ludmFsaWQgYnJlYWtwb2ludDogI3skYnJlYWtwb2ludH0uJztcbiAgICB9XG59XG5cbi8vIG1heCB3aWR0aFxuQG1peGluIG1xLW1heCgkYnJlYWtwb2ludCkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkbWF4LWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkge1xuICAgICAgICAkYnJlYWtwb2ludC12YWx1ZTogbWFwLWdldCgkbWF4LWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCk7XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICgkYnJlYWtwb2ludC12YWx1ZSkpIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGVsc2Uge1xuICAgICAgICBAd2FybiAnSW52YWxpZCBicmVha3BvaW50OiAjeyRicmVha3BvaW50fS4nO1xuICAgIH1cbn1cblxuLy8gbWluIGFuZCBtYXhcbkBtaXhpbiBtcS1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyKSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRtYXgtYnJlYWtwb2ludHMsICRsb3dlcikgYW5kIG1hcC1oYXMta2V5KCRtaW4tYnJlYWtwb2ludHMsICR1cHBlcikge1xuICAgICAgICAkbG93ZXItYnJlYWtwb2ludDogbWFwLWdldCgkbWF4LWJyZWFrcG9pbnRzLCAkbG93ZXIpO1xuICAgICAgICAkdXBwZXItYnJlYWtwb2ludDogbWFwLWdldCgkbWluLWJyZWFrcG9pbnRzLCAkdXBwZXIpO1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbG93ZXItYnJlYWtwb2ludCkgYW5kIChtYXgtd2lkdGg6ICgkdXBwZXItYnJlYWtwb2ludCAtIDEpKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgICAgQGlmIChtYXAtaGFzLWtleSgkbWF4LWJyZWFrcG9pbnRzLCAkbG93ZXIpPT1mYWxzZSkge1xuICAgICAgICAgICAgQHdhcm4gJ1lvdXIgbG93ZXIgYnJlYWtwb2ludCB3YXMgaW52YWxpZDogI3skbG93ZXJ9Lic7XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKG1hcC1oYXMta2V5KCRtaW4tYnJlYWtwb2ludHMsICR1cHBlcik9PWZhbHNlKSB7XG4gICAgICAgICAgICBAd2FybiAnWW91ciB1cHBlciBicmVha3BvaW50IHdhcyBpbnZhbGlkOiAjeyR1cHBlcn0uJztcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgcmVzZXQgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuXG5zZWN0aW9uLFxuLnNlY3Rpb24tdC1zcGFjZSB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICB9XG59XG5cbi5zZWN0aW9uLWItc3BhY2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuXG4gICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDYwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgfVxufVxuXG4ubWVkaWEge1xuICAgIC5tZWRpYS1ib2R5IHtcbiAgICAgICAgZmxleDogMTtcbiAgICB9XG59XG5cbi5yYXRpbmcge1xuICAgIGxpIHtcbiAgICAgICAgaS5vcmFuZ2Uge1xuICAgICAgICAgICAgY29sb3I6ICRyYXRpbmctY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5nLTE4IHtcbiAgICBtYXJnaW46IC0xOHB4O1xuXG4gICAgPmRpdiB7XG4gICAgICAgIHBhZGRpbmc6IDE4cHg7XG4gICAgfVxufVxuXG4uY3VzdG9tLWd5LTUge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoLTE2cHggKyAoLTIwIC0gLTE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC0xNnB4ICsgKC0yMCAtIC0xNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICA+ZGl2IHtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYygxNnB4ICsgKDIwIC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDE2cHggKyAoMjAgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgfVxufVxuXG4ubGlnaHQtZ3JheS1iZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG59XG5cbkBpbmNsdWRlIG1xLW1pbih4bCkge1xuICAgIC5jdXN0b20tY29sIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlICsgNC4xNiUpO1xuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgdHlwb2dyYXBoeSBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5cbmJvZHkge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udF8wLCAkZm9udF8xO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6ICR0aGVtZS1mb250LWNvbG9yO1xuICAgIG1hcmdpbjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAuYmctb3ZlcmxheSB7XG4gICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMik7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG5cbiAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuXG51bCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAxNHB4O1xufVxuXG5wIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG59XG5cbmEge1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG59XG5cbmJ1dHRvbiB7XG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxufVxuXG4uYnRuLWNsb3NlIHtcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG59XG5cbjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbn1cblxuLmZvcm0tY29udHJvbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxufVxuXG5oMSB7XG4gICAgZm9udC1zaXplOiBjYWxjKDQwcHggKyAoNzAgLSA0MCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIG1hcmdpbjogMDtcbn1cblxuaDIge1xuICAgIGZvbnQtc2l6ZTogY2FsYygyMnB4ICsgKDI4IC0gMjIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgbWFyZ2luOiAwO1xufVxuXG5oMyB7XG4gICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMjAgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1hcmdpbjogMDtcbn1cblxuaDQge1xuICAgIGZvbnQtc2l6ZTogY2FsYygxN3B4ICsgKDE4IC0gMTcpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbmg1IHtcbiAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxNiAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXdlaWdodDogNDAwO1xufVxuXG5oNiB7XG4gICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTQgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4udGhlbWUtY29sb3Ige1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcikgIWltcG9ydGFudDtcbn1cblxuLnRoZW1lLWJnLWNvbG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGJ1dHRvbnMgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IGNhbGMoOHB4ICsgKDE0IC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgei1pbmRleDogMTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogY2FsYygxMnB4ICsgKDEzIC0gMTIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAmLXN1Ym1pdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE2IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1zaXplIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cblxuICAgICYtc3BhY2luZyB7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoNXB4ICsgKDE0IC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYyg4cHggKyAoMzAgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICB9XG59XG5cbi5idG4tc20ge1xuICAgIHBhZGRpbmc6IDhweCAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5kZWZhdWx0IHtcbiAgICAmLXdoaXRlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgICYtbGlnaHQge1xuICAgICAgICBjb2xvcjogJGxpZ2h0c2lsdmVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBwYWRkaW5nOiBjYWxjKDZweCArICgxNCAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgb3BhY2l0eTogMC4xNTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtbGlnaHQxIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjExO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihib3RoKTtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUsIDAuNSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjExO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1saWdodC10aGVtZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoNnB4ICsgKDE0IC0gNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtdGhlbWUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi10aGVtZS0yIHtcbiAgICAgICAgcGFkZGluZzogMTJweCAyNXB4O1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgICYtdGhlbWUtMSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGxpZ2h0LWRlbW8tNywgMC42KTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxMDAlKTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMTAwJSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICBvcGFjaXR5OiAwLjExO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgIEBpbmNsdWRlIGNlbnRlcihib3RoKTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSwgMC41KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMTE7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5idG4tbGlnaHQtd2hpdGUge1xuICAgIHBhZGRpbmc6IDZweCAyMHB4O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgkd2hpdGUsIDAuMSk7XG5cbiAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjEpO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41LCAwLjUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYnRuLXdoaXRlIHtcbiAgICBwYWRkaW5nOiA2cHggMjBweDtcbiAgICBjb2xvcjogJHRoZW1lLWZvbnQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xuXG4gICAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUsIDAuNSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5idG4tZnVsbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBhbGVydCBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uYWxlcnQtaW5mbyB7XG4gICAgLmJ0bi1jbG9zZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICB9XG59XG5cbi5wcm9ncmVzcy1iYXItaW5mbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JlZW47XG59XG5cbltkYXRhLW5vdGlmeT1cInByb2dyZXNzYmFyXCJdIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDVweDtcbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBsYWJlbCBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4ubGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBwYWRkaW5nOiA2cHggMTBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgcGFkZGluZzogNHB4IDZweDtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgIH1cblxuICAgICYtYmxvY2sge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAmLWRhcmsge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgfVxuXG4gICAgJi1ibGFjayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi10aGVtZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIHRhYiBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4udGFiLXdyYXAge1xuICAgIC5uYXYtdGFicyB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGRlbW8xLWJnO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogaW5oZXJpdDtcbiAgICAgICAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTYgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHggMjBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHggMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6YWN0aXZlLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmFjdGl2ZSxcbiAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRhYi1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGRyb3Bkb3duIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbiVmb3ItYW5pbWF0ZWQtaG92ZXIge1xuICAgIGJveC1zaGFkb3c6IDMuMzQ2cHggMy43MTZweCAyMi41cHggcmdiYSgkYmxhY2ssIDAuMDcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICByaWdodDogMDtcbn1cblxuLm9uaG92ZXItZGl2IHtcbiAgICB0b3A6IDcwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIHRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC4zcztcbiAgICBtaW4td2lkdGg6IDI4MHB4O1xuICAgIGJveC1zaGFkb3c6IDMuMzQ2cHggMy43MTZweCAyMi41cHggcmdiYSgkYmxhY2ssIDAuMDcpO1xuXG4gICAgbGkge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZm9udC1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDdweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIHRvcDogLTdweDtcbiAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vbmhvdmVyLWRyb3Bkb3duIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIC5vbmhvdmVyLWRpdiB7XG4gICAgICAgICAgICB0b3A6IDUwcHg7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNhcnQtZHJvcGRvd24ge1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgICAgIC5mZWF0aGVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjNweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIycHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNiAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgdGltZXIgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnRpbWVyIHtcbiAgICB1bCB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHRoZW1lLWZvbnQtY29sb3IsIDAuOCk7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTE3cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgkZm9udC1saWdodCwgMC40KTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MCU7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTdweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKCRmb250LWxpZ2h0LCAwLjQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTEycHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0xMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDZweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50aW1lci1zdHlsZS0yIHtcbiAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogY2FsYygtNXB4ICsgKC0xNSAtIC01KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW46IGNhbGMoNXB4ICsgKDE1IC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDhweCArICgxMCAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTJweCArICgyMCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE4cHggKyAoMjggLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50aW1lci1zdHlsZS0zIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgQGluY2x1ZGUgY2VudGVyKGJvdGgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGRlbW8tNCwgLjgpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigycHgpO1xuICAgIHdpZHRoOiA4MCU7XG5cbiAgICB1bCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbjogY2FsYyg1cHggKyAoNSAtIDUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoNXB4ICsgKDUgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDVweCArICg1IC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoOHB4ICsgKDEwIC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxMnB4ICsgKDIwIC0gMTIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgd2lkdGg6IDI1JTtcblxuICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAkYWxwaGE6IDAuNSk7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxOHB4ICsgKDI4IC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICB0aXRsZSBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5cbi50aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygyMHB4ICsgKDUwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgJi50aXRsZTEge1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMjJweCArICgzNSAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihob3Jpem9udGFsKTtcbiAgICAgICAgICAgICAgICBib3R0b206IDEuNXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWxpZ2h0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKGhvcml6b250YWwpO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggYXV0byAwO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnRpdGxlLWVmZmVjdCB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYudGl0bGUtMSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICB9XG5cbiAgICBoNSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICB9XG59XG5cbi50aXRsZS0yIHtcbiAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgIGgyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgfVxuXG4gICAgaDUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICBjb2xvcjogJGZvbnQtbGlnaHQ7XG4gICAgfVxufVxuXG4udGl0bGUtMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygyMHB4ICsgKDUwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgJi50aXRsZS1ib3JkZXIge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRlbW8xLWJnO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICB9XG5cbiAgICBoNSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxufVxuXG4uZ3JhZGllbnQtdGl0bGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMDBkZWcsIHJnYmEoNjEsIDYxLCA2MSwgMSksIHZhcigtLXRoZW1lLWNvbG9yKSk7XG4gICAgYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJi0xIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDEwMGRlZywgcmdiYSgkd2hpdGUsIDEpLCB2YXIoLS10aGVtZS1jb2xvcikpO1xuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgVGFwIHRvIHRvcCBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4udGFwLXRvLXRvcCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDE1cHg7XG4gICAgcmlnaHQ6IC02MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiBjYWxjKDM1cHggKyAoNDUgLSAzNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgaGVpZ2h0OiBjYWxjKDM1cHggKyAoNDUgLSAzNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTggLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgYm94LXNoYWRvdzogMCAzcHggOHB4IHJnYmEoJGJsYWNrMSwgJGFscGhhOiAwLjM1KTtcbiAgICB6LWluZGV4OiAzO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgIGxlZnQ6IC02MHB4O1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrMTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgIGJvdHRvbTogNzVweDtcbiAgICB9XG5cbiAgICAmLnNob3cge1xuICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgbGVmdDogMTVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB3aWR0aDogY2FsYygzNXB4ICsgKDQwIC0gMzUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMzVweCArICg0MCAtIDM1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNXB4ICsgKDE4IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICB6LWluZGV4OiAzO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgYm90dG9tOiA3NXB4O1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIE1vZGFsIGNzcyBTdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi8vIE5ld2xldHRlciBNZG9hbCBTdGFydFxuLm5ld2xldHRlci1tb2RhbCB7XG4gICAgLm1vZGFsLWRpYWxvZyB7XG4gICAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgIC5tb2RhbC1oZWFkZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgICAgIC5idG4tY2xvc2Uge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTRweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1NHB4O1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC01MHB4O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogLTUwcHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1NHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAwIDA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLTE0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0xNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC01MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwMGRcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDIwcHggKyAoNDAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtMTVweDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0yNXB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTQwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDIwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMSk7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA3cHggMTFweCByZ2JhKCRibGFjazEsICRhbHBoYTogMC41KTtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogLTE7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0yNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTIwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5tb2RhbC10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMTVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGZvbnQtbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Om1hcmtlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gVmlkZW8gUGxheSBNb2RhbCBTdGFydFxuLnZpZGVvLXBsYXktbW9kYWwge1xuICAgIC5tb2RhbC1kaWFsb2cge1xuICAgICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAgICAgLm1vZGFsLWJvZHkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICBpZnJhbWUge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1NTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIENvbXBhcmUgVGFibGUgU2VjdGlvbiBTdGFydFxuLmNvbXBhcmVtb2RhbC1ib2R5IHtcbiAgICAudGFibGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICAgICYudGFibGUtc3RyaXBlZC0xIHtcbiAgICAgICAgICAgIHRib2R5IHtcbiAgICAgICAgICAgICAgICB0ciB7XG4gICAgICAgICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoZXZlbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICB9XG5cbiAgICAgICAgdHIge1xuICAgICAgICAgICAgJi50YWJsZS1wcm9kdWN0LWRldGFpbHMge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi50YWJsZS1jYXJ0LWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICYuYnRuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNHB4O1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMjMwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAyNzBweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICAmLmxpc3QtZGV0YWlsIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIycHg7XG5cbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRzaGFkZS1ncmF5O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogc3F1YXJlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0LWJveCB7XG4gICAgICAgIC5idG4tY2xvc2Uge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBTaGlwcGluZyBNZG9hbCBTdGFydFxuLm1vZGFsLWhlYWRlciB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAuYnRuLWNsb3NlIHtcbiAgICAgICAgd2lkdGg6IDU0cHg7XG4gICAgICAgIGhlaWdodDogNTRweDtcbiAgICAgICAgdG9wOiAtNTBweDtcbiAgICAgICAgcmlnaHQ6IC01MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNTRweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZDogMCAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xuICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgcmlnaHQ6IC0xNHB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMTRweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBsZWZ0OiAtNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2hpcHBpbmctbW9kYWwge1xuICAgIC5tb2RhbC1kaWFsb2cge1xuICAgICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogY2FsYygxNXB4ICsgKDQwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgLm1vZGFsLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRuZXJvO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS43O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6bWFya2VyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBDYXJ0IE1vZGFsIFN0YXJ0XG4uY2FydC1tb2RhbCB7XG4gICAgLm1vZGFsLWRpYWxvZyB7XG4gICAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgICAgIC5tb2RhbC1oZWFkZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgLmJ0bi1jbG9zZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1NHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDU0cHg7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTUwcHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNTBweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IDAgMDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTRweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1vZGFsLWJvZHkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICg0MCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgICAgIC5tb2RhbC1tZXNzYWdlcyB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmVlbi1kYXJrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JlZW47XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5mYS1jaGVjayB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRncmVlbi1kYXJrO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm1vZGFsLXByb2R1Y3Qge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5tb2RhbC1jb250YWluLWltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygxMHB4ICsgKDE4IC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLm1vZGFsLWNvbnRhaW4tZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5tb2RhbC1jb250YWluLWltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNjAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDc1JTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJvZHVjdC10b3RhbCB7XG4gICAgICAgICAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc2hvcC1jYXJ0LWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogLThweDtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jb250aS1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogY2FsYygzcHggKyAoOCAtIDMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogY2FsYyg2cHggKyAoMTIgLSA2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDEwcHggKyAoMjUgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNSAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIHNpemUgbW9kYWwgc3RhcnRcbi5tb2RhbC1zaXplIHtcbiAgICAubW9kYWwtZGlhbG9nIHtcbiAgICAgICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICAgICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1NHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDU0cHg7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTUwcHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNTBweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IDAgMDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgICAgICAgICAuZmEtdGltZXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBzaXplIG1vZGFsIGVuZFxuLnF1aWNrLXZpZXctbW9kYWwge1xuICAgIC5idG4tY2xvc2Uge1xuICAgICAgICB3aWR0aDogNTRweDtcbiAgICAgICAgaGVpZ2h0OiA1NHB4O1xuICAgICAgICB0b3A6IC01MHB4O1xuICAgICAgICByaWdodDogLTUwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1NHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAwIDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4gICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICByaWdodDogLTE0cHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0xNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYwMGRcIjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubW9kYWwtYm9keSB7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICB9XG5cbiAgICAucXVpY2stdmlldy1pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDQwMHB4O1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnF1aWNrLW5hdiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgICAgICBsZWZ0OiAyMHB4O1xuXG4gICAgICAgICAgICAuc2xpY2stc2xpZGUge1xuICAgICAgICAgICAgICAgID5kaXYge1xuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLnNsaWNrLWN1cnJlbnQge1xuICAgICAgICAgICAgICAgICAgICA+ZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtcmlnaHQge1xuICAgICAgICAmLnZlZy1wcm9kdWN0LXJpZ2h0IHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LWJ0bnMge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJpY2Uge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgICAgICAuY3VzdG9tZS1mb3JtLWNoZWNrIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCA4cHggMTVweCAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGFtZXJpY2FuLWdyYXk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDEwcHggcmdiYSgkYmxhY2sxLCAkYWxwaGE6IDAuMSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnZlZy1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkICRib3JkZXItY29sb3I7XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cblxuICAgICAgICBoNiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICB9XG5cbiAgICAgICAgLnByaWNlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbG9yLXR5cGVzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkICRib3JkZXItY29sb3I7XG5cbiAgICAgICAgICAgICYudmVnLWRldGFpbHMge1xuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2l6ZS1kZXRhaWwge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgICAgICAgICAgICAgJi5zZWxlY3RlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA3cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICRib3JkZXItY29sb3I7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0LWJ0bnMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gUmVzZXJ0IFBhc3N3b3JkIE1vZGFsIFN0YXJ0XG4ucmVzZXQtZW1haWwtbW9kYWwge1xuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgIC5tb2RhbC1oZWFkZXIge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAuYnRuLWNsb3NlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTRweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDU0cHg7XG4gICAgICAgICAgICAgICAgdG9wOiAtNTBweDtcbiAgICAgICAgICAgICAgICByaWdodDogLTUwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAwIDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogLTE0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0xNHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtZm9vdGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgICAgJi5tb2RhbC1jbG9zZS1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBEZWxldGUgQWNjb3VudCBNb2RhbCBTdGFydFxuLmRlbGV0ZS1hY2NvdW50LW1vZGFsIHtcbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAubW9kYWwtaGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgIC5idG4tY2xvc2Uge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1NHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTRweDtcbiAgICAgICAgICAgICAgICB0b3A6IC01MHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtNTBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTRweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IDAgMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTRweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTE0cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtZm9vdGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAmLm1vZGFsLWNsb3NlLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEFkZCBQYXltZW50IE1vZGFsIFN0YXJ0XG4ucGF5bWVudC1tb2RhbCB7XG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgICAgICAuYnRuLWNsb3NlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTRweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDU0cHg7XG4gICAgICAgICAgICAgICAgdG9wOiAtNTBweDtcbiAgICAgICAgICAgICAgICByaWdodDogLTUwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAwIDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogLTE0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0xNHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1vZGFsLWZvb3RlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgICAgJi5tb2RhbC1jbG9zZS1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBBZGQgUGF5bWVudCBNb2RhbCBTdGFydFxuLmFkZC1hZGRyZXNzLW1vZGFsIHtcbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAubW9kYWwtaGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgIC5idG4tY2xvc2Uge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1NHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTRweDtcbiAgICAgICAgICAgICAgICB0b3A6IC01MHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtNTBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTRweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IDAgMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTRweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTE0cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtZm9vdGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAmLm1vZGFsLWNsb3NlLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIHJhdGlvIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5yYXRpb18zMCB7XG4gICAgLmJnLXNpemUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMzAlO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmF0aW9fMzUge1xuICAgIC5iZy1zaXplIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDM1JTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJhdGlvXzQwIHtcbiAgICAuYmctc2l6ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0MCU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYXRpb180NSB7XG4gICAgLmJnLXNpemUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDUlO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmF0aW8yXzEge1xuICAgIC5iZy1zaXplIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDUwJTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJhdGlvXzU1IHtcbiAgICAuYmctc2l6ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1NSU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYXRpb181OSB7XG4gICAgLmJnLXNpemUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNTklO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmF0aW8yXzMge1xuICAgIC5iZy1zaXplIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDYwJTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJhdGlvM18yIHtcbiAgICAuYmctc2l6ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA2Ni42NiU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYXRpb185MCB7XG4gICAgLmJnLXNpemUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogOTMlO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmF0aW9fbGFuZHNjYXBlIHtcbiAgICAuYmctc2l6ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA3NSU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYXRpb192ZWcge1xuICAgIC5iZy1zaXplIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDExMyU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYXRpb19zcXVhcmUge1xuICAgIC5iZy1zaXplIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwMCU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYXRpb19hc29zIHtcbiAgICAuYmctc2l6ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMjcuNzc3Nzc3OCU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYXRpb19zbWFsbCB7XG4gICAgLmJnLXNpemUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTE4JTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJhdGlvX21lZGl1bSB7XG4gICAgLmJnLXNpemUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTM4JTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJhdGlvX3BvcnRyYWl0IHtcbiAgICAuYmctc2l6ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNTAlO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmF0aW8yXzIge1xuICAgIC5iZy1zaXplIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1NC43Nzc3NzglO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmF0aW9fMiB7XG4gICAgLmJnLXNpemUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTYzJTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJhdGlvMV8yIHtcbiAgICAuYmctc2l6ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyMDAlO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBmb3JtIGNzcyBzdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmZvcm0tY29udHJvbCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHBhZGRpbmc6IGNhbGMoOHB4ICsgKDE0IC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgJi5zdWJzY3JpYmUtaW5wdXQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgIH1cbn1cblxuLmZvcm0tc2VsZWN0IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgfVxufVxuXG4uaW5wdXQtZ3JvdXAge1xuICAgIC5idG4ge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cbn1cblxuLmNoZWNrYm94X2FuaW1hdGVkIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1yaWdodDogMTZweDtcblxuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cyBjdWJpYy1iZXppZXIoMC40NSwgMS44LCAwLjUsIDAuNzUpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAsIDApO1xuICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgIGxlZnQ6IDRweDtcbiAgICAgICAgdG9wOiA0cHg7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICBib3JkZXItdG9wLXN0eWxlOiBub25lO1xuICAgICAgICBib3JkZXItcmlnaHQtc3R5bGU6IG5vbmU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgdG9wOiAtMnB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMjFweDtcbiAgICAgICAgaGVpZ2h0OiAyMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRncmF5LWxpZ2h0O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgJjpjaGVja2VkIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgxLCAxKTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgc2xpZGVyIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cblxuLnNsaWNrLWluaXRpYWxpemVkIHtcbiAgICAuc2xpY2stYXJyb3cge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uc3BhY2luZy1zbGlkZXIge1xuICAgICYuc2xpY2stc2xpZGVyIHtcbiAgICAgICAgbWFyZ2luOiAwIC0xMnB4O1xuXG4gICAgICAgIC5zbGljay1saXN0IHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAtMTJweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIC02cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zbGljay1zbGlkZSB7XG4gICAgICAgICAgICAgICAgPmRpdiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxMnB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuc2xpY2stZG90dGVkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zbGljay1zbGlkZXIge1xuICAgIC5zbGljay1saXN0IHtcbiAgICAgICAgbWFyZ2luOiAwIC0xMnB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIC02cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpY2stc2xpZGUge1xuICAgICAgICAgICAgPmRpdiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDEycHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNsaWNrLWRvdHRlZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4uc2xpZGUtNiB7XG4gICAgLnNsaWNrLWxpc3Qge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG4uY2xhc3NpYy1hcnJvdyB7XG4gICAgLmN1c3RvbS1hcnJvdyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiA1MHB4O1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBib3R0b206IDkwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiAxcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucHJldiB7XG4gICAgICAgICAgICByaWdodDogMjAlO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDclO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgbGVmdDogNSU7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDUlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDUzJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMTAlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEyJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDEyJTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubmV4dCB7XG4gICAgICAgICAgICByaWdodDogMTMlO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDEzJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDExJTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMTUlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE2JTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMTYlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgbGVmdDogMjAlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAyMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICByaWdodDogMyU7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAzJTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCByZ2JhKCRibGFjaywgMC4xKTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMjhweDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNsYXNzaWMtYXJyb3ctMSB7XG4gICAgLmN1c3RvbS1hcnJvdyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiA1MHB4O1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgfVxuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IDFweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogOHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5wcmV2IHtcbiAgICAgICAgICAgIHJpZ2h0OiAyMCU7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGVmdDogNiUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDUxJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDUyJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubmV4dCB7XG4gICAgICAgICAgICByaWdodDogMTMlO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDEyJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjEpO1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0yOHB4O1xuICAgICAgICAgICAgICAgIHRvcDogMDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMjhweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4JTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxNiUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxMyUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiA0NCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5saWdodC1hcnJvdyxcbi53aGl0ZS1hcnJvdyB7XG4gICAgLnNsaWNrLWFycm93IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZjA1M1wiO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLW5leHQge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGlnaHQtYXJyb3cge1xuICAgIC5zbGljay1hcnJvdyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZW1vMS1iZztcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWZvbnQtY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ib3R0b20tc3BhY2Uge1xuICAgIG1hcmdpbi1ib3R0b206IC00cHg7XG59XG5cbi53aGl0ZS1hcnJvdyB7XG4gICAgLnNsaWNrLWFycm93IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuMik7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jYXRlZ29yeS1zbGlkZXIge1xuICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgbGVmdDogLTEyMHB4O1xuICAgIH1cblxuICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICBsZWZ0OiAtODBweDtcbiAgICB9XG59XG5cbi5icmFuZC1pbWFnZSB7XG4gICAgaW1nIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxufVxuXG4uZG90LWRhcmsge1xuICAgIC5zbGljay1kb3RzIHtcbiAgICAgICAgYm90dG9tOiB1bnNldDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiB1bnNldDtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDVweDtcblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRoZW1lLWZvbnQtY29sb3I7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmltYWdlLXNob3cge1xuICAgIC5zbGljay1saXN0IHtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zbGljay1zbGlkZSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbn1cblxuLnBvc3Rlci1zZWN0aW9uLTYsXG4ucG9zdGVyLXNlY3Rpb24ge1xuICAgIC5pbWFnZS1zaG93IHtcbiAgICAgICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zbGljay1sZy1zcGFjZSB7XG4gICAgLnNsaWNrLWxpc3Qge1xuICAgICAgICBtYXJnaW46IC01cHggLTE4cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICBtYXJnaW46IC01cHggLTEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpY2stc2xpZGUge1xuICAgICAgICAgICAgPmRpdiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMThweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDVweCAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJsYWNrLXNsaWRlIHtcbiAgICAuc2xpY2stbGlzdCB7XG4gICAgICAgIC5zbGljay10cmFjayB7XG4gICAgICAgICAgICAuc2xpY2stc2xpZGUge1xuICAgICAgICAgICAgICAgID5kaXYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgLnBsYXktaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuZmEtcGxheSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMTAwJSkgYmx1cigxcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZhLXBsYXkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDIwJSkgYmx1cigxcHgpO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5zbGljay1jZW50ZXIge1xuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnBsYXktaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuZmEtcGxheSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBMYXp5IExvYWQgY3NzIFN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmJsdXItdXAge1xuICAgIGZpbHRlcjogYmx1cig1cHgpO1xuICAgIHRyYW5zaXRpb246IGZpbHRlciA0MDBtcywgLXdlYmtpdC1maWx0ZXIgNDAwbXM7XG5cbiAgICAmLmxhenlsb2FkZWQge1xuICAgICAgICBmaWx0ZXI6IGJsdXIoMCk7XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIFRvdWNoc3BpbiAgQ1NTIFN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmJvb3RzdHJhcC10b3VjaHNwaW4ge1xuICAgIGlucHV0IHtcbiAgICAgICAgJi50b3VjaHNwaW4ge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwIC5idG4ge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMS43NXJlbTtcbiAgICB9XG5cbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfMCwgJGZvbnRfMTtcblxuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRvdWNoc3Bpbi12ZXJ0aWNhbC10YWIge1xuICAgIG1heC13aWR0aDogNjBweDtcbiAgICB3aWR0aDogdW5zZXQ7XG5cbiAgICAudG91Y2hzcGluLXZlcnRpY2FsIHtcbiAgICAgICAgcGFkZGluZzogNnB4IDEycHg7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgLmlucHV0LWdyb3VwLWJ0bi12ZXJ0aWNhbCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuXG4gICAgICAgICAgICAuYm9vdHN0cmFwLXRvdWNoc3Bpbi1kb3duIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA0cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogN3B4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+LmJ0biB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDlweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgQnJlYWRjcnVtYiBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uYnJlYWRjcnVtYi1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMDtcblxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoMjYgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgfVxuXG4gICAgJi0xIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXJlZC1zaGFkZTtcbiAgICB9XG5cbiAgICAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJyZWFkY3J1bWIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG5cbiAgICAuY2lyY2xlcyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgei1pbmRleDogLTE7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICBhbmltYXRpb246IGFuaW1hdGUgMjVzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogLTE1MHB4O1xuICAgICAgICAgICAgb3BhY2l0eTogMC4yICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAyNSU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMnM7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxMnM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA3MCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogNHM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA0MCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxOHM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA2NSU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDYpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA3NSU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogM3M7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDcpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxOSU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDExMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTEwcHg7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiA3cztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoOCkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAxNXM7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiA0NXM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDkpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAyMCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMnM7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzNXM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEwKSB7XG4gICAgICAgICAgICAgICAgbGVmdDogODUlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMTBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDExMHB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxMXM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIGFuaW1hdGUge1xuICAgICAgICAwJSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKDBkZWcpO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwMHB4KSByb3RhdGUoNzIwZGVnKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGhlYWRlciBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5cbkBtaXhpbiBoZWFkZXJfY29tbW9uIHtcbiAgICAuY29udGFpbmVyLWZsdWlkLWxnIHtcbiAgICAgICAgcGFkZGluZzogMCAxMTJweDtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDYwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGhlYWRlciB7XG4gICAgICAgIC5zZWFyY2gtaGVhZGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheS05MDtcbiAgICAgICAgfVxuXG4gICAgICAgICYubmF2LWRvd24ge1xuICAgICAgICAgICAgJi5uYXYtdXAge1xuICAgICAgICAgICAgICAgIC5uYXZiYXItc2VhcmNoYmFyIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5tYWluLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubmF2YmFyLXNlYXJjaGJhciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgICAgIHRvcDogLTEwMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDRweCAxMHB4IHJnYmEoMjMsIDMyLCA5MCwgMC4xNSk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA2O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNlYXJjaC1zdWdnZXN0aW9uIHtcbiAgICAgICAgICAgIGhlaWdodDogMHB4O1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgdG9wOiA2OHB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDEwMDBtcyBjdWJpYy1iZXppZXIoMC4yNywgMC43LCAwLCAwLjk5KTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIHRvcDogNTZweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPnVsIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IC0xMHB4O1xuXG4gICAgICAgICAgICAgICAgPmxpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LWNhcnQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm1lZGlhLWJvZHkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWZvbnQtY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAucmF0aW5nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0LWdyYXk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1haW4tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm9uaG92ZXItZGl2IHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLndpc2xpc3QtZHJvcGRvd24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJ0LWRyb3Bkb3duIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIC5vbmhvdmVyLWRpdiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5vbmhvdmVyLWRpdiB7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogN3B4IHNvbGlkICRkZW1vMS1iZztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI5MHB4O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogLTI5MHB4O1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgICAgICAgLm9uaG92ZXItZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FydC1tZW51IHtcbiAgICAgICAgICAgIC5jYXJ0LXRpdGxlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVtbzEtYmc7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogLTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtOXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMnB4IDZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1lZGlhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgLmJ0bi1jbG9zZSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5tZWRpYS1ib2R5IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcHggOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5xdHktd2l0aC1wcmljZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxODBweCk7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FydC1idG4ge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jYXJ0LXRvdGFsIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMTJweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAud2lzbGlzdC1lbXB0eSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNlYXJjaC1mdWxsIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGVtbzEtYmc7XG5cbiAgICAgICAgICAgICAgICAuaW5wdXQtZ3JvdXAtdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgJi5jbG9zZS1zZWFyY2gge1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICBhbmltYXRpb246IHpvb21JbiAwLjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgICAgICAuc2VhcmNoLXN1Z2dlc3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGVtbzEtYmc7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogLXdlYmtpdC1tYXgtY29udGVudDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAtbW96LW1heC1jb250ZW50O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IG1heC1jb250ZW50O1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAxMDAwbXMgY3ViaWMtYmV6aWVyKDAuMjcsIDAuNywgMCwgMC45OSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNlYXJjaC1ib3gxIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiA1NSU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudHdpdHRlci10eXBlYWhlYWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA1MHB4KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnR0LW1lbnUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMzUwcHg7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgICAgICAgICAgdG9wOiA1NXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAwO1xuXG4gICAgICAgICAgICAgICAgLnR0LWRhdGFzZXQtc3RhdGVzIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIC50dC1zZWxlY3RhYmxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmltYWdlLXNlY3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAuZGVzY3JpcHRpb24tc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiB6b29tSW4gMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgICAgICAgLnNlYXJjaC1zdWdnZXN0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGVtbzEtYmc7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogbWF4LWNvbnRlbnQ7XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDEwMDBtcyBjdWJpYy1iZXppZXIoMC4yNywgMC43LCAwLCAwLjk5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICAgICAgICAgICAuZmVhdGhlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2ZpbGUtZHJvcGRvd24ge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxNjBweDtcblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5icmFuZC1sb2dvIHtcbiAgICAgICAgLnN2Zy1pY29uIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICBhbmltYXRpb24tbmFtZTogc3Bpbm5lcjtcbiAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzcztcbiAgICAgICAgICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5maWxsLWNvbG9yIHtcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIHNwaW5uZXIge1xuICAgICAgICBmcm9tIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgwZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRvIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgtMzYwZGVnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXRlZ29yeS1tZW51IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5jYXRlZ29yeS1kcm9wZG93biB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1mb250LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgICAgICAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jbG9zZS1idG4ge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtZm9udC1jb2xvcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gbW9iaWxlIG1lbnVcbiAgICAubW9iaWxlLW1lbnUge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggN3B4IDNweCByZ2JhKDE2OCwgMTY4LCAxNjgsIDAuMik7XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRmb250LWRhcmssIDAuNCk7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAxLjVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAuY2F0ZWdvcnktbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIC5jYXRlZ29yeS1kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgdG9wOiA3MHB4O1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgbGluZWFyIDAuM3M7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAyNTBweDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAzLjM0NnB4IDMuNzE2cHggMjIuNXB4IHJnYmEoJGJsYWNrLCAwLjA3KTtcblxuICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJi5zdWJtZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+YSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNTRcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGVnb3J5LW1lZ2EtbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA5NSU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDMuMzQ2cHggMy43MTZweCAyMi41cHggcmdiYSgkYmxhY2ssIDAuMDcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY2F0ZWdvcnktY2hpbGRtZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50aXRsZS1jYXRlZ29yeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1tZWdhLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLmNhdGVnb3J5LWRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2F0ZWdvcnktbWVudSB7XG4gICAgICAgIC5jYXRlZ29yeS1kcm9wZG93biB7XG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAmLnN1Ym1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGVnb3J5LW1lZ2EtbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWluKHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogNzIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWluKDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDg1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRpdGxlLWNhdGVnb3J5IHtcbiAgICAgICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgaGVhZGVyIHtcbiAgICAgICAgICAgIC5jYXRlZ29yeS1kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0zMDBweDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2F0ZWdvcnktbWVudSB7XG4gICAgICAgICAgICAuY2F0ZWdvcnktZHJvcGRvd24ge1xuICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYuc3VibWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5hY2NvcmRpbmctbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1tZWdhLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPmxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGVnb3J5LWNoaWxkbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGl0bGUtY2F0ZWdvcnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYWNjb3JkaW5nLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+dWwge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgPmxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgID5hIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2F0ZWdvcnktYmFubmVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gaGVhZGVyXzEge1xuICAgIGhlYWRlciB7XG4gICAgICAgIC50b3AtaGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZW1vMS1iZztcblxuICAgICAgICAgICAgJi1ibGFjayB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5LTkwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLXdoaXRlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYm9yZGVyLWxpc3Qge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDZweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDZweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+bGkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTVweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWZvbnQtY29sb3I7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDlweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgkdGhlbWUtZm9udC1jb2xvciwgMC4xNSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoJHRoZW1lLWZvbnQtY29sb3IsIDAuMTUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYudG9wLWhlYWRlci1kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24taXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWFpbi1tZW51IHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAgICAgLm1lbnUtbGVmdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWVudS1yaWdodCB7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNlYXJjaC1ib3gge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICAmLmJsYWNrLXNlYXJjaC1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDhweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNHB4IDZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID51bCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgPmxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY2FydC1tZWRpYSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICAuY2FydC1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogLTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jYXJ0LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIG5hdiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXRlZ29yeS1tZW51IHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA5cHggMThweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxMnB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gaGVhZGVyXzIge1xuICAgIC5oZWFkZXItc3R5bGUtMiB7XG4gICAgICAgICYuYmxhY2stYmFja2dyb3VuZCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1haW4tbWVudSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgICAgICBuYXYge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tZW51LWxlZnQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygzMHB4ICsgKDYwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygzMHB4ICsgKDYwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWVudS1yaWdodCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+dWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgID5saSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZm9udC1jb2xvcjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPnVsIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICA+bGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1mb250LWNvbG9yO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICtsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC53aXNsaXN0LWRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2FydC1kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5wZS0yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jYXJ0LW1lZGlhIHtcbiAgICAgICAgICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC05cHg7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gaGVhZGVyXzMge1xuICAgIGhlYWRlciB7XG4gICAgICAgIC5oZWFkZXItc3R5bGUtMyB7XG4gICAgICAgICAgICAudG9wLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTZweCAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAmLnRvcC1jb21tYW4taGVhZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5yb3cge1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYm9yZGVyLWxpc3Qge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA2cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+bGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZm9udC1jb2xvcjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDlweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICtsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKCR0aGVtZS1mb250LWNvbG9yLCAwLjE1KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgkdGhlbWUtZm9udC1jb2xvciwgMC4xNSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1haW4tbWVudSB7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICAgICAgJi5jb21tb24tbWVudSB7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogdW5zZXQgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgICAgICAubmF2aWdhdGlvbmJhciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm1lbnUtbGVmdCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm1lbnUtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5zZWFyY2gtYm94IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA0cHggNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+dWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgID5saSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jYXJ0LW1lZGlhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2FydC1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAtNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhcnQtY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbmF2IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWVudS1yaWdodCB7XG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPnVsIHtcbiAgICAgICAgICAgICAgICAgICAgPmxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICYucHJpY2UtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1mb250LWNvbG9yO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICtsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC53aXNsaXN0LWRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2FydC1kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5wZS0yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jYXJ0LW1lZGlhIHtcbiAgICAgICAgICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtOXB4O1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgbmF2IGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cblxuaGVhZGVyIHtcbiAgICAubWFpbi1uYXZiYXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgLm5hdi1tZW51IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGRpcmVjdGlvbjogbHRyO1xuICAgICAgICAgICAgQGluY2x1ZGUgcnRsKHRleHQtYWxpZ24sIGxlZnQsIHJpZ2h0KTtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICAgID5saSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bChmbG9hdCwgbGVmdCwgcmlnaHQpO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPmEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1mb250LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC44cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICA+YSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR0aGVtZS1mb250LWNvbG9yLCAwLjEpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm5hdi1zdWJtZW51IHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCA1cHggMCByZ2JhKDkwLCA5MCwgOTAsIDAuMik7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzAwcHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDVweCAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNweCAyNXB4IDNweCA0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA3ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNweCA0MHB4IDNweCAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDhweCAxNXB4IC04cHggdmFyKC0tYmFkZ2UtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMDc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnRyZW4tYnVkZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYudG9wLWJ1ZGdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5tZW51LXRpdGxlLWxldmVsMSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnN1Ym1lbnUtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmFycm93LWNscyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcikgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5uYXYtc3ViLWNoaWxkbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLTIwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMCAxNXB4IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDFweCAwICRncmF5LTUwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm1lZ2EtbWVudS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDQ7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDVweCAwIHJnYmEoOTAsIDkwLCA5MCwgMC4yKTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICYucG9zdGVyLWJnLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvdm94by5wbmcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmZsb2F0aW5nLWltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjB2aDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IGZsb2F0aW5nIDExMHMgbGluZWFyIGluZmluaXRlIHJldmVyc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAubWVnYS1ib3gge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE2JTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRyZWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmxpbmstc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnN1Ym1lbnUtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnN1Ym1lbnUtY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogNXB4IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcHggMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA3ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wM2VtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIyNiwgMzYsIDg0LCAwLjA3KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDE1cHggLThweCB2YXIoLS1iYWRnZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnRyZW4tYnVkZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnRvcC1idWRnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5tZWdhbWVudS1pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBibHVyKDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE4MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IGJsdXIoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuaGlnaGxpZ2h0LWxpbmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKy5saW5rLXNlY3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYubWVnYS1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHVuc2V0O1xuXG4gICAgICAgICAgICAgICAgICAgICYuaG9tZS1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5tZWdhLW1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVnYS1ib3gge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGluay1zZWN0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZWdhbWVudS1pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTgwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXI6IGJsdXIoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcjogYmx1cigwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAubWVnYW1lbnUtaW1hZ2UtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLnJlc3BvbnNpdmUtYnRuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBoZWFkZXIge1xuICAgICAgICAubWFpbi1uYXZiYXIge1xuICAgICAgICAgICAgLm5hdi1tZW51IHtcbiAgICAgICAgICAgICAgICA+bGkge1xuICAgICAgICAgICAgICAgICAgICAubmF2LXN1Ym1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zdWItYXJyb3cge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGV2ZWwxIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sZXZlbDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGV2ZWwzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sZXZlbDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGV2ZWwyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sZXZlbDEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc3ViLWFycm93IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgICAgICAgICAubWVudS10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE4cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNzhcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5tZWdhLW1lbnUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAubmF2LXN1Ym1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLm1lZ2EtbWVudS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudG9nZ2xlLW5hdiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm1vYmlsZS1iYWNrIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgaGVhZGVyIHtcbiAgICAgICAgLm1haW4tbmF2YmFyIHtcbiAgICAgICAgICAgIC5uYXYtbWVudSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTU1cHg7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0zMDBweDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG5cbiAgICAgICAgICAgICAgICAmLm9wZW5uYXYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYmFjay1idG4ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIC5tb2JpbGUtYmFjayB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPmxpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZChuICsgMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJGdyYXktbGlnaHQsICRhbHBoYTogLjUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdWItYXJyb3cge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCIrXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPnVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmFjY29yZGluZy1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYWNjb3JkaW5nLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAubmF2LXN1Ym1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLm9wZW5zdWJtZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5uYXYtc3ViLWNoaWxkbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuc3VibWVudS1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYubGV2ZWwyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCA2MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxldmVsMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYub3BlbnN1YmNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCA0NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLm1lZ2EtbWVudS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLm9wZW5zdWJtZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLm1lZ2EtYm94IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxpbmstc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zdWJtZW51LXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS45O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDJweCAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYWNjb3JkaW5nLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogN3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnN1Ym1lbnUtY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLm9wZW5zdWJtZWdhbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCA0NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy5saW5rLXNlY3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm1vYmlsZS1wb3N0ZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC00MTBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5tb2JpbGUtY29udGFpbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA3cHggMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tZW51IHtcbiAgICAgICAgICAgIG5hdiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1lZ2EtYm94IHtcbiAgICAgICAgLmxpbmstc2VjdGlvbiB7XG4gICAgICAgICAgICAuZGVtbyB7XG4gICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tZWdhLWJveCB7XG4gICAgICAgICYuY29sIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IHVuc2V0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFjY29yZGluZy1tZW51IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgdG9wOiAxMHB4O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBob21lIHNlY3Rpb24gY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuQG1peGluIGhvbWVfY29tbW9uIHtcbiAgICAuaG9tZS1zZWN0aW9uIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAuaG9tZS1zbGlkZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDczNnB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGRpcmVjdGlvbjogcnRsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzNzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaG9tZS13cmFwIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygyMHB4ICsgKDI0IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC00cHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMTggLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDExOTkgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNXB4ICsgKDE2IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogOTAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogODklO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRpc2NvdmVyLWJsb2NrIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKDIwcHggKyAoNDAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZC1mbGV4IHtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucGxheS1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMzBweCArICg1MCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDMwcHggKyAoNTAgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNiAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMTBweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDEwcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC01cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC01cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmRpc2NvdmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ob21lLXNvY2lhbCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTYgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IC0ycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBob21lXzEge1xuICAgIC5ob21lLXNlY3Rpb24ge1xuICAgICAgICBwYWRkaW5nOiAwIDEwMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ob21lLXdyYXAge1xuICAgICAgICAgICAgcGFkZGluZzogNTBweCAxMDBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDUwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDQwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxlZnQtY29udGVudCB7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIycHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm9mZmVyLXdyYXAge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDMwcHggKyAoOTAgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaG9tZS1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygzMnB4ICsgKDQwIC0gMzIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDMycHggKyAoNDAgLSAzMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMjhweCArICgzMCAtIDI4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTE5OSAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnRleHQtZGVjb3JhdGlvbi1saW5lLXRocm91Z2gge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoMjQgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDE4IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxMTk5IC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yaWdodC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAucHJvZHVjdC1pbWcge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTBweCArICgyMCAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDEwcHggKyAoMjAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaG9tZS1zb2NpYWwge1xuICAgICAgICAgICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDtcbiAgICAgICAgICAgIHRleHQtb3JpZW50YXRpb246IG1peGVkO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDcwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIodmVydGljYWwpO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDcwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICByaWdodDogNTBweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDQwcHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA0MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDEwcHggKyAoMjAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMTBweCArICgyMCAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmdyb3VwLWJ0biB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDA7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE2IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTBweCArICgyMCAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDE1cHggKyAoNDAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstY29sb3I7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZGFyay1jb2xvcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gaG9tZV8yIHtcbiAgICAuaG9tZS1zdHlsZS0yIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5zZWxlY3Rpb24td3JhcCB7XG4gICAgICAgICAgICBtYXJnaW46IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgLmRhcmstc2VsZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgIC5mb3JtLXNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZGFyay1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDc1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxMHB4ICsgKDE1IC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygxMHB4ICsgKDE1IC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmFkZC1idG4ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA4cHg7XG5cbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idG4tc29saWQtZGVmYXVsdCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNoYXJlLWljb25zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWNvbG9yO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaG9tZS1sZWZ0LXdyYXBwZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWZvbnQtY29sb3I7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIGNhbGMoMjBweCArICg4MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBkaXJlY3Rpb246IHJ0bDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgY2FsYygyMHB4ICsgKDYwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxNjYwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCBjYWxjKDE1cHggKyAoNDAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE0NjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMjRweCArICg0MiAtIDI0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJhdGluZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5yYXRpbmctc3RhciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygyMHB4ICsgKDM2IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDI4IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ob21lLXNsaWRlciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDg3MHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDQwMHB4ICsgKDc1MCAtIDQwMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE2NjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYyg0NDBweCArICg2ODAgLSA0NDApICogKCgxMDB2dyAtIDMyMHB4KSAvICg5OTEgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygzNjBweCArICg0NzAgLSAzNjApICogKCgxMDB2dyAtIDMyMHB4KSAvICg0ODAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGVmdC1jb250ZW50IHtcbiAgICAgICAgICAgIC5ob21lLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgY2FsYygyMHB4ICsgKDgwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIGNhbGMoMjBweCArICg2MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTY2MCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgY2FsYygxNXB4ICsgKDQwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxNDYwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDIwcHggKyAoNDAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDMwcHggKyAoNDAgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDU3NSAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID5kaXYge1xuICAgICAgICAgICAgICAgICAgICA+aDYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay0yIHtcbiAgICAgICAgICAgIC5zbGljay1saXN0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAuc2xpY2stc2xpZGUge1xuICAgICAgICAgICAgICAgICAgICA+ZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ob21lLXdyYXAge1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gaG9tZV8zIHtcbiAgICAuc2xpZGVyLWFycm93IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTg1cHg7XG4gICAgICAgIGJvdHRvbTogNTBweDtcbiAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgLmxlZnQtYXJyb3csXG4gICAgICAgIC5yaWdodC1hcnJvdyB7XG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGVmdC1hcnJvdyB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCByZ2JhKCRibGFjazEsIDAuMSk7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuXG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnJpZ2h0LWFycm93IHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcblxuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGlkZXItYXJyb3ctMiB7XG5cbiAgICAgICAgLmxlZnQtYXJyb3csXG4gICAgICAgIC5yaWdodC1hcnJvdyB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygyMnB4ICsgKDUwIC0gMjIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHB4ICsgKDE2MCAtIDEwMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5sZWZ0LWFycm93IHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDUwJTtcblxuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTUwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnJpZ2h0LWFycm93IHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTUwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWRlci1hcnJvdy0zIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTAwcHg7XG4gICAgICAgIGJvdHRvbTogNjBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAubGVmdC1hcnJvdyxcbiAgICAgICAgLnJpZ2h0LWFycm93IHtcbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGVmdC1hcnJvdyB7XG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyOHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yaWdodC1hcnJvdyB7XG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWRlci1kb3Qge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgICAgIHJpZ2h0OiA3MHB4O1xuXG4gICAgICAgIC5kb3Qge1xuICAgICAgICAgICAgd2lkdGg6IDZweDtcbiAgICAgICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jaGFuZ2UtY29sb3Ige1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIGg1IHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMTggLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cblxuICAgICAgICAuZG90LTEsXG4gICAgICAgIC5kb3QtMixcbiAgICAgICAgLmRvdC0zIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgICAgIC5pbi1kb3QtMSxcbiAgICAgICAgICAgIC5pbi1kb3QtMixcbiAgICAgICAgICAgIC5pbi1kb3QtMyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kb3QtMSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRvcmFuZ2UxO1xuXG4gICAgICAgICAgICAuaW4tZG90LTEge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kb3QtMiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrMSwgMC4xNSk7XG5cbiAgICAgICAgICAgIC5pbi1kb3QtMiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kb3QtMyB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJHRoZW1lLWNvbG9yMSwgMC4yKTtcblxuICAgICAgICAgICAgLmluLWRvdC0zIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmFubmVyLXBvc3RlciB7XG4gICAgICAgIGhlaWdodDogODUwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWRlci1iZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmctdGV4dCB7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYyg0MnB4ICsgKDI0MCAtIDQyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCAkZm9udF8xO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5iZy1jaXJjbGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMHB4ICsgKDYwMCAtIDEwMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHB4ICsgKDYwMCAtIDEwMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZS1jb2xvci1ncmFkaWVudDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiByb3VuZGVkIDE1cyBpbmZpbml0ZSBsaW5lYXI7XG5cbiAgICAgICAgICAgICAgICAmLmdyYWRpZW50LXB1cnBsZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwdXJwbGUtZ3JhZGllbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5ncmFkaWVudC1ibHVlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsdWUtZ3JhZGllbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5yZWQtZ3JhZGllbnQge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcmVkLWdyYWRpZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNob2VzLTEge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDE1MHB4ICsgKDgwMCAtIDE1MCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogcnVuLXNob2VzIDE1cyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3VnZXN0aW9uLXByb2R1Y3Qge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgICAgIHRvcDogNjBweDtcbiAgICAgICAgICAgIGxlZnQ6IDEwMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAxNXB4IDAgMTVweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBkaXJlY3Rpb246IHJ0bDtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICByaWdodDogMTAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC02cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zbGlkZXItc2hvZXMtaW1hZ2Uge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgLnJlbGF0aXZlLXNob2VzIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnNob2VzLXByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxOCAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByaWNlLW51bWJlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDYwcHg7XG4gICAgICAgICAgICBsZWZ0OiAxMDBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyNSU7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgZGlyZWN0aW9uOiBydGw7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiA4MHB4IDAgMzBweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA2NXB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygyMnB4ICsgKDQ1IC0gMjIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygyMnB4ICsgKDMwIC0gMjIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGZvbnQtbGlnaHQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb2xvci1jaGFuZ2Uge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgyNSAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkLTQwO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMThweCArICgzMCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygxOHB4ICsgKDMwIC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKGJvdGgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg2cHggKyAoMTAgLSA2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoNnB4ICsgKDEwIC0gNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWRlci1yaWdodC1kZXRhaWwge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA2MHB4O1xuICAgICAgICAgICAgcmlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgbGVmdDogMTAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDE1cHggNTBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxhYmVscyB7XG4gICAgICAgICAgICAgICAgLmxhYmVsLTE1IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAub2ZmZXItYm94IHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGhvbWVfNCB7XG4gICAgLnBvc3Rlci1zZWN0aW9uIHtcbiAgICAgICAgaGVpZ2h0OiA4NTBweDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9mdXJuaXR1cmUtaW1hZ2VzL3Bvc3Rlci9iYWNrLmpwZyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDc1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDYwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgaGVpZ2h0OiAzNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcmV2IHtcbiAgICAgICAgICAgIHJpZ2h0OiAxMSUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxMiUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGVmdDogOS41JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMjIlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDEzJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgbGVmdDogMzBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMjYlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNzYlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMjYlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAyMSUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogNDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmV4dCB7XG4gICAgICAgICAgICByaWdodDogNSUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0yM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICByaWdodDogNiUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDUlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE5JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMjIlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDQlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxNyUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3R0b206IDI2JTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDg2JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDI2JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMjElO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDQ1JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDIxJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucG9zdGVyLWltYWdlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAwcHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogODUwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjAwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogNSUgMTMwcHggMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ3MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDUlIGF1dG8gMCAxMzBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ0MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA1JSBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWRlci1uYXYge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgIHJpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDEwMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICByaWdodDogOTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA3NXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICByaWdodDogNTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZGl2IHtcbiAgICAgICAgICAgICAgICArZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBvc3Rlci1pbWcge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm92ZXJsYXktY29sb3Ige1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRkZW1vLTQsICRhbHBoYTogMC43KTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgLmZhLXBsdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNsaWNrLWN1cnJlbnQge1xuICAgICAgICAgICAgICAgIC5vdmVybGF5LWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxMDAlKTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmFubmVyLXBsdXMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTIlO1xuICAgICAgICBsZWZ0OiAzOCU7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgdG9wOiAxMSU7XG4gICAgICAgICAgICBsZWZ0OiAzNyU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICBsZWZ0OiAzNSU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICB0b3A6IDEwJTtcbiAgICAgICAgICAgIGxlZnQ6IDM2JTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mYS1wbHVzIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMjAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxOCAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBhbmltYXRpb246IHJpcHBsZS0yIDAuN3MgbGluZWFyIGluZmluaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxlZnQtc2lkZS1jb250YWluIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDEwMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgcmlnaHQ6IDEwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgbGVmdDogOTBweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICByaWdodDogOTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgIGxlZnQ6IDc1cHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDc1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICBsZWZ0OiA2NXB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA2NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICB3aWR0aDogMjMlO1xuICAgICAgICAgICAgbGVmdDogNTBweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICByaWdodDogNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgbGVmdDogOTBweDtcbiAgICAgICAgICAgIHdpZHRoOiA0MCU7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJhbm5lci1sZWZ0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGRlbW8tNCwgMC43KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDQwcHggKyAoMjggLSA0MCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDVweCk7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogY2FsYyg1cHggKyAoMjAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIzcHggKyAoNzAgLSAyMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoNDUgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTdweCArICgzMiAtIDE3KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucG9zdGVyLWRldGFpbHMge1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogY2FsYyg1cHggKyAoMjAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29sb3ItY2hhbmdlIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMjUgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMThweCArICgzMCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygxOHB4ICsgKDMwIC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihib3RoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNnB4ICsgKDEwIC0gNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDZweCArICgxMCAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnJpZ2h0LXNpZGUtY29udGFpbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDBweDtcbiAgICAgICAgcmlnaHQ6IDEwMHB4O1xuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgbGVmdDogMTAwcHg7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICByaWdodDogOTBweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA5MHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgIHJpZ2h0OiA3NXB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDc1cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbC1pbWFnZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICArLnNvY2lhbC1pbWFnZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGhvbWVfNSB7XG4gICAgLnBvc3Rlci1zZWN0aW9uLTUge1xuICAgICAgICBoZWlnaHQ6IDc1MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2Zsb3dlci9iYWNrLmpwZyk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDcwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgaGVpZ2h0OiA2MjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgaGVpZ2h0OiA1NTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgaGVpZ2h0OiAzNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAucHJldiB7XG4gICAgICAgICAgICByaWdodDogMTElICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3R0b206IDUwJTtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiA0MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgICAgICByaWdodDogMTIlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICByaWdodDogMTIlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxMyUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3R0b206IDMwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGVmdDogOSUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3R0b206IDMwJTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA3MSUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUycHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3R0b206IDI0JTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGVmdDogMTElICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzOCU7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMjYlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMzglO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGVmdDogNDIlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogNTElICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzNiU7XG4gICAgICAgICAgICAgICAgbGVmdDogNDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmV4dCB7XG4gICAgICAgICAgICByaWdodDogNSUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvdHRvbTogNTAlO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDQwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0yM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICByaWdodDogNiUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDUlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE4JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMzAlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDgxJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgbGVmdDogMTQwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3R0b206IDI0JTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzOCU7XG4gICAgICAgICAgICAgICAgbGVmdDogMTglICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMzIlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMzglO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDQ3JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogNDElICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICByaWdodDogNDIlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMzYlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJhY2tncm91bmQtY2lyY2xlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihob3Jpem9udGFsKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC00JTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIoaG9yaXpvbnRhbCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTclO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMiU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01JTtcbiAgICAgICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiByb3VuZGVkIDIwcyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZmxvd2VyLWltYWdlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mbG93ZXItMSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogLTcwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogLTcwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mbG93ZXItMiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogLTcwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC03MHB4O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBvc3Rlci1pbWFnZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0JTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDExMDBweDtcbiAgICAgICAgICAgICAgICBhbmltYXRpb246IHJvdGF0ZS1mbG93ZXIgNDVzIGluZmluaXRlIGxpbmVhcjtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA4NTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNzc1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjAwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ3MHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA3JTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDM1JTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0NDBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNjVweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2NXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpZGVyLW5hdiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIodmVydGljYWwpO1xuICAgICAgICAgICAgcmlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDEwMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDkwcHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDkwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDc1cHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDc1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICByaWdodDogNTBweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGRpdiB7XG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgK2RpdiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wb3N0ZXItaW1nIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5vdmVybGF5LWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcblxuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNsaWNrLWN1cnJlbnQge1xuICAgICAgICAgICAgICAgIC5vdmVybGF5LWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxMDAlKTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmFubmVyLXBsdXMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTIlO1xuICAgICAgICBsZWZ0OiAzOCU7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgdG9wOiAxMSU7XG4gICAgICAgICAgICBsZWZ0OiAzNyU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICBsZWZ0OiAzNSU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICB0b3A6IDEwJTtcbiAgICAgICAgICAgIGxlZnQ6IDM2JTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZhLXBsdXMge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE4IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogcmlwcGxlLTIgMC43cyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGVmdC1zaWRlLWNvbnRhaW4ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgICAgIGxlZnQ6IDEwMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgIHJpZ2h0OiAxMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgIGxlZnQ6IDkwcHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDkwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICBsZWZ0OiA3NXB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA3NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgbGVmdDogNjVweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICByaWdodDogNjVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICAgIGxlZnQ6IDUwcHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgIGxlZnQ6IDkwcHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDkwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgIGxlZnQ6IDUwcHg7XG4gICAgICAgICAgICB3aWR0aDogMzAlO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgICAgbGVmdDogNTRweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICByaWdodDogNTRweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIodmVydGljYWwpO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmFubmVyLWxlZnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE3MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIyMywgNjYsIDcwLCAwLjcpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMjBweCArICgyOCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNXB4KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGNhbGMoNXB4ICsgKDIwIC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygyM3B4ICsgKDcwIC0gMjMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoNDUgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE3cHggKyAoMzIgLSAxNykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wb3N0ZXItZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBjYWxjKDVweCArICgyMCAtIDUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbG9yLWNoYW5nZSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDI1IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXk7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDE4cHggKyAoMzAgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygxOHB4ICsgKDMwIC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihib3RoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDZweCArICgxMCAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDZweCArICgxMCAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnJpZ2h0LXNpZGUtY29udGFpbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDBweDtcbiAgICAgICAgcmlnaHQ6IDEwMHB4O1xuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICByaWdodDogOTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgIHJpZ2h0OiA3NXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbC1pbWFnZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcblxuICAgICAgICAgICAgKy5zb2NpYWwtaW1hZ2Uge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gaG9tZV82IHtcbiAgICAucG9zdGVyLXNlY3Rpb24tNiB7XG4gICAgICAgIGhlaWdodDogODUwcHg7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvdmVnZXRhYmxlL3BlcmNlbnRhZ2UuanBnKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgIGhlaWdodDogNzUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgIGhlaWdodDogNjAwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNDFweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgaGVpZ2h0OiA0NTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTIxcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDM1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnByZXYge1xuICAgICAgICAgICAgcmlnaHQ6IDExJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm90dG9tOiAzMyU7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDYlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMzglO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzMCU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEyJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDI0JTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA4MSUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDglICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDE3JTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA3NSUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxNiUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDclICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzOSU7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMjElICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDE4JTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA0MCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMTUlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA0MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDI1JTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA0MCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMjUlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiA1JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm90dG9tOiAzMyU7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDEyJSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMjNweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzOCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDMwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAyNCU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDUlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDE2JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAxNyU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDYlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE4JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMzklO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDglICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDE4JTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMTUlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDI1JTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMjUlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA0NiUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmFja2dyb3VuZC1jaXJjbGUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKGhvcml6b250YWwpO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTUlO1xuICAgICAgICAgICAgd2lkdGg6IDYwJTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIoaG9yaXpvbnRhbCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTclO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMiU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01JTtcbiAgICAgICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiByb3VuZGVkIDIwcyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucG9zdGVyLWltYWdlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDQlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogODUwcHg7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiByb3RhdGUtZmxvd2VyIDQ1cyBpbmZpbml0ZSBsaW5lYXI7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogODUwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDc3NXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MzBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNyU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyNiU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTQwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNSU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNSU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWRlci1uYXYge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgIHJpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMDBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDc1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucG9zdGVyLWltZyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAub3ZlcmxheS1jb2xvciB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHZlZzEsICRhbHBoYTogMC43KTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgLmZhLXBsdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogY2FsYyg4cHggKyAoMTIgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNsaWNrLWN1cnJlbnQge1xuICAgICAgICAgICAgICAgIC5vdmVybGF5LWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxMDAlKTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmFubmVyLXBsdXMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTIlO1xuICAgICAgICBsZWZ0OiAzOCU7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgdG9wOiAxMSU7XG4gICAgICAgICAgICBsZWZ0OiAzNyU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICBsZWZ0OiAzNSU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICB0b3A6IDEwJTtcbiAgICAgICAgICAgIGxlZnQ6IDM2JTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZhLXBsdXMge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE4IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogcmlwcGxlLTIgMC43cyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGVmdC1zaWRlLWNvbnRhaW4ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMTAwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICByaWdodDogMTAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICBsZWZ0OiA5MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIzJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgICBsZWZ0OiA3NXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgbGVmdDogNDVweDtcbiAgICAgICAgICAgIHdpZHRoOiAyNyU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNyU7XG4gICAgICAgICAgICBsZWZ0OiA1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBsZWZ0OiA1MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgbGVmdDogNTBweDtcbiAgICAgICAgICAgIHdpZHRoOiAzNSU7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJhbm5lci1sZWZ0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHZlZzEsIDAuNyk7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogY2FsYygyMHB4ICsgKDI4IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig1cHgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheS1saWdodCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogY2FsYyg1cHggKyAoMjAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIzcHggKyAoNzAgLSAyMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoNDUgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE3cHggKyAoMzIgLSAxNykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5iYW5uZXItYnRuLWdydXAge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBvc3Rlci1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGNhbGMoNXB4ICsgKDIwIC0gNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbG9yLWNoYW5nZSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDI1IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMThweCArICgzMCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDE4cHggKyAoMzAgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKGJvdGgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNnB4ICsgKDEwIC0gNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoNnB4ICsgKDEwIC0gNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucmlnaHQtc2lkZS1jb250YWluIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEwMHB4O1xuICAgICAgICByaWdodDogMTAwcHg7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBsZWZ0OiAxMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgIHJpZ2h0OiA5MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgcmlnaHQ6IDc1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuc29jaWFsLWltYWdlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuXG4gICAgICAgICAgICArLnNvY2lhbC1pbWFnZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09XG4gICAgU2xpY2sgU0xpZGVyIENTUyBTdGFydCBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQG1peGluIHNsaWRlcl9jb21tb24ge1xuICAgIC5ib3gtYXJyb3cge1xuICAgICAgICAuc2xpY2stcHJldiB7XG4gICAgICAgICAgICBsZWZ0OiBjYWxjKDVweCArICgyNSAtIDUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjMwYVwiO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgcmlnaHQ6IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYzMGJcIjtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stZG90cyB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG5cbiAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdhaW5zYm9ybztcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gc2xpZGVyXzEge1xuICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWRlbW8tNDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0xMDBweDtcbiAgICAgICAgbGVmdDogODAlO1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgdG9wOiAtODhweDtcbiAgICAgICAgICAgIGxlZnQ6IDgwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgIHRvcDogLTg4cHg7XG4gICAgICAgICAgICBsZWZ0OiA3NSU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgIHRvcDogLTg4cHg7XG4gICAgICAgICAgICBsZWZ0OiA2OCU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgIHRvcDogLTc1cHg7XG4gICAgICAgICAgICBsZWZ0OiA4MCU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgIHRvcDogLTc1cHg7XG4gICAgICAgICAgICBsZWZ0OiA3MyU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgIHRvcDogLTY3cHg7XG4gICAgICAgICAgICBsZWZ0OiA2MyU7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDUzXCI7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLW5leHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZGVtby00O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTEwMHB4O1xuICAgICAgICByaWdodDogMCU7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICB0b3A6IC04OHB4O1xuICAgICAgICAgICAgcmlnaHQ6IDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICB0b3A6IC03NXB4O1xuICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgIHRvcDogLTY3cHg7XG4gICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYwNTRcIjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stcHJldjpob3ZlcixcbiAgICAuc2xpY2stcHJldjpmb2N1cyxcbiAgICAuc2xpY2stbmV4dDpob3ZlcixcbiAgICAuc2xpY2stbmV4dDpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRxdWljay1zaWx2ZXI7XG4gICAgfVxufVxuXG5AbWl4aW4gc2xpZGVyXzIge1xuICAgIC5yb3VuZC1hcnJvdyB7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgLnNsaWNrLXByZXYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWRlbW8tNDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTEwMHB4O1xuICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICByaWdodDogODVweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAyNXB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgIHRvcDogLTkwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDg1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgIHRvcDogLTgwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDcwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIHRvcDogLTY4cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDcwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNTNcIjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWRlbW8tNDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTEwMHB4O1xuICAgICAgICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDg1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICB0b3A6IC05MHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICB0b3A6IC04MHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICB0b3A6IC02OHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5yb3VuZC1hcnJvdzEge1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAtNzdweDtcbiAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgcmlnaHQ6IDg1cHg7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDI1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICB0b3A6IC03NHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA4NXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtNjhweDtcbiAgICAgICAgICAgICAgICByaWdodDogODVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtNThweDtcbiAgICAgICAgICAgICAgICByaWdodDogNzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtNTBweDtcbiAgICAgICAgICAgICAgICByaWdodDogNzBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICB0b3A6IC00NXB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA2MXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDUzXCI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAtNzdweDtcbiAgICAgICAgICAgIHJpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICBsZWZ0OiA4NXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoNHhsKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtNzRweDtcbiAgICAgICAgICAgICAgICByaWdodDogMjVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgIHRvcDogLTY4cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgIHRvcDogLTY1cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIHRvcDogLTU4cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIHRvcDogLTUwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtNDVweDtcbiAgICAgICAgICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBzbGlkZXJfMyB7XG4gICAgLndoaXRlLWFycm93IHtcbiAgICAgICAgLnNsaWNrLXByZXYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICBsZWZ0OiAtNzBweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yNXB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtODBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgICAgIHRvcDogLTgwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtNThweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA1M1wiO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgIGxlZnQ6IC03MHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICByaWdodDogLTgwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICB0b3A6IC04MHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA5MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgIHRvcDogLTU4cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNTRcIjtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIFBvc3RlciBTZWN0aW9uIFNDU1MgU3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4ucG9zdGVyLXNlY3Rpb24ge1xuICAgIC5wb3N0ZXItaW1hZ2Uge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZW1vMS1iZztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5wb3N0ZXItaW1hZ2UtZGV0YWlscyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDQyJTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzVweDtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMzUgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKDVweCArICgxMCAtIDUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEycHggKyAoMTUgLSAxMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodC10ZXh0O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxMHB4ICsgKDEzIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDMwIC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogY2FsYyg1cHggKyAoMTAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDIwIC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgQXJyaXZhbHMgU2NzcyBTdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbkBtaXhpbiBhcnJpdmFsXzEge1xuICAgIC5hcnJpdmFscy1pbWFnZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5hcnJpdmFscy1pbWFnZS1oZWFkZXIge1xuICAgICAgICAgICAgICAgIC53aXNlbGlzdC1vcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNvbG9yLW9wdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmFycml2YWxzLWltYWdlLWhlYWRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDE1cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbG9yLW9wdGlvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIoaG9yaXpvbnRhbCk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZC01MDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMHB4IDNweDtcblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIoYm90aCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC53aXNlbGlzdC1vcHRpb24ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihob3Jpem9udGFsKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgM3B4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mZWF0aGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuZmVhdGhlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5hcnJpdmFscy1pbWFnZS1mb290ZXIge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMTVweDtcblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtdGV4dDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDIwIC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwIDVweCAwO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LXJhdGluZy1zdGFyIHtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mZWF0aGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuZmVhdGhlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gYXJyaXZhbF8yIHtcbiAgICAuYXJyaXZhbC1pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgLmFycml2YWwtY29udGFpbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuXG4gICAgICAgICAgICAuYXJyaXZhbC1wcmljZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmFycml2YWwtZnVsbCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucmF0aW5nLXN0YXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIC5mZWF0aGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5mZWF0aGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgU3Vic3JpYmUgY3NzIFN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuXG4uc3Vic2NyaWJlLXNlY3Rpb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC10aGVtZS1jb2xvcjtcblxuICAgICYtbGlnaHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZGVtby02O1xuICAgIH1cblxuICAgIC5zdWJzY3JpYmUtZGV0YWlscyB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMThweCArICgzMCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICAgIH1cblxuICAgICAgICBoNiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtM3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zdWJzcmliZS1pbnB1dCB7XG4gICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIHNlcnZpY2Ugc2VjdGlvbiBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5cbkBtaXhpbiBzZXJ2aWNlX2NvbW1vbiB7XG4gICAgLnNlcnZpY2Utc2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0zcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuc2VydmljZS13cmFwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAuc2VydmljZS1pY29uIHtcbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTVweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2VydmljZS1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmFib3V0LXBhZ2Uge1xuICAgICAgICAgICAgLnNlcnZpY2Utd3JhcCB7XG4gICAgICAgICAgICAgICAgLnNlcnZpY2UtaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIHNlcnZpY2Vfc3R5bGVfMSB7XG4gICAgLnNlcnZpY2Utc2VjdGlvbiB7XG4gICAgICAgIC5zZXJ2aWNlLXdyYXAge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgICAgLnNlcnZpY2UtaWNvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBzZXJ2aWNlX3N0eWxlXzIge1xuICAgIC5zZXJ2aWNlLXN0eWxlLTIge1xuICAgICAgICAuc2VydmljZS13cmFwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTJweDtcblxuICAgICAgICAgICAgLnNlcnZpY2UtaWNvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yb3cge1xuICAgICAgICAgICAgPmRpdiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgK2RpdiB7XG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIodmVydGljYWwpO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZW1vMS1iZztcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gc2VydmljZV9zdHlsZV8zIHtcbiAgICAuc2VydmljZXMtc2VjdGlvbiB7XG4gICAgICAgIC5zZXJ2aWNlLWRldGFpbHMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg1NXB4ICsgKDYwIC0gNTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMThweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmN1c3RvbWUtZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMjIgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE0IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0LXRleHQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIHByb2R1Y3QgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuXG5AbWl4aW4gcHJvZHVjdF9jb21tb24ge1xuICAgIC5yYXRpbmcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTRweDtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgJi50aGVtZS1jb2xvciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkeWVsbG93ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhlYXJ0LXdpc2hsaXN0IHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuXG4gICAgICAgIC5mYXIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTFweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJhY2stbGlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLmhlYXJ0LWNvbG9yIHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0LWJveCB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIGRpcmVjdGlvbjogcnRsO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIC5zaGFyZSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgICAgICAgICAmLW9wYWNpdHkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5zaGFyZS1wbHVzIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuaG92ZXItaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5zcXVyZS1pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY2lyY2xlLXNoYXBlIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxMDAlKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYmFja2dyb3VuZC10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgJi5ob3Zlci1pbWFnZSB7XG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3ZlZ2V0YWJsZS9lZmZlY3QxLnBuZyk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zcXVyZS1pbWFnZSB7XG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3ZlZ2V0YWJsZS9lZmZlY3QucG5nKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2lyY2xlLXNoYXBlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkZGVtby00LCAkYWxwaGE6IDAuMDQpO1xuICAgICAgICAgICAgICAgIHRvcDogLTgwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogLTgwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4NyU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjZzIGVhc2U7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG5cbiAgICAgICAgICAgICAgICAmLTEge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzkwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzkwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMzIsIDExNSwgMjIsIDAuMDQpO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC0xMzBweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTEzMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNnMgZWFzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5iYWNrZ3JvdW5kLXRleHQge1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogOTBweDtcbiAgICAgICAgICAgICAgICByaWdodDogLTMwcHg7XG4gICAgICAgICAgICAgICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDtcbiAgICAgICAgICAgICAgICB0ZXh0LW9yaWVudGF0aW9uOiBtaXhlZDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNjhweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgyMzIsIDExNSwgMjIsIDAuMSk7XG4gICAgICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjZzIGVhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FydC13cmFwIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgICAgICAgICAgei1pbmRleDogMjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2F0ZWdvcnktaXRlbSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEsXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogLTE7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWZvbnQtY29sb3I7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuODtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDVweCBhdXRvIDZweCBhdXRvO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2l6ZS1ib3gge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLTFweDtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAycHggNnB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjdlZjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLTIge1xuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJhdGluZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTRweDtcblxuICAgICAgICAgICAgICAgICYucmF0aW5nLTIge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJi50aGVtZS1jb2xvciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR5ZWxsb3c7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgJi1kYXJrIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsKGZsb2F0LCByaWdodCwgbGVmdCk7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtdGhlbWUge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJ0bChmbG9hdCwgbGVmdCwgcmlnaHQpO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAuY2FydC13cmFwIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG5cbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgNDAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IGZhZGVJblVwIDYwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW5VcCA4MDBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgMTAwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAucHJvZHVjdC13cmFwcGVyIHtcbiAgICAgICAgJi0xIHtcbiAgICAgICAgICAgIC5zbGljay1kb3RzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLWRvdHMge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYyg1cHggKyAoMjAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkdGhlbWUtZm9udC1jb2xvciwgMC4yKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcblxuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50aW1lciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNsaWNrLXNsaWRlciB7XG4gICAgICAgICAgICAmLnNsaWNrLWRvdHRlZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0LWJhbm5lciB7XG4gICAgICAgICYtY2lyY2xlIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgIG9yZGVyOiAtMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0LWJveCB7XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDIwcHggKyAoNDAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5sYWJlbC1ibG9jayB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICB+YSB7XG4gICAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAub2ZmZXItZW5kIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogNTBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihob3Jpem9udGFsKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR0aGVtZS1mb250LWNvbG9yLCAwLjgpO1xuICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICAmLWRlbW80IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRkZW1vLTQsICRhbHBoYTogMC44KTtcblxuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHVuc2V0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaW5zdGFncmFtLXdyYXAge1xuICAgICAgICAucHJvZHVjdC1ib3gge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmltZy13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjI1cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMjVweDtcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE5NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE5NXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE3NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE3NXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNoYXJlIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICAgICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1vcmllbnRhdGlvbjogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgJi1vcGFjaXR5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLWJveCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnNoYXJlLXBsdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYmFjay1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogcmlwcGxlLTIgMC43cyBsaW5lYXIgaW5maW5pdGU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6bm90KC5zaGFyZS1wbHVzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmluc3RhLWhvdmVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgICAgICYtZ3JhZGllbnQge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMjM2LCAxMjIsIDMxKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzOGRlZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZ2JhKDIzNiwgMTIyLCAzMSwgMSkgMCUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgyMjcsIDk4LCAxMjMsIDEpIDUwJSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZ2JhKDE2MCwgMTE4LCAxNDIsIDEpIDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihob3Jpem9udGFsKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDY1cHggKyAoODAgLSA2NSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMDg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygyMHB4ICsgKDI0IC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuXG4gICAgICAgICAgICAgICAgICAgICYudGV4dC1oaWRlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmJyYW5kLW5hbWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoMzUgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLmluc3RhLWhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDVweCk7XG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuXG4gICAgICAgICAgICAgICAgICAgICYtZ3JhZGllbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiKDIzNiwgMTIyLCAzMSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM4ZGVnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZ2JhKDIzNiwgMTIyLCAzMSwgMSkgMCUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEoMjI3LCA5OCwgMTIzLCAxKSA1MCUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEoMTYwLCAxMTgsIDE0MiwgMSkgMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIHF1aWNrIHZpZXcgbW9kYWwgY3NzXG4gICAgLmNvbG9yLXZhcmlhbnQge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zZWxlY3RlZCB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggOHB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTYpLFxuICAgICAgICAgICAgICAgICAgICAwIDVweCAxNXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJnLWhhbGYtbGlnaHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlbW8xLWJnO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAuaGFsZi1ibGFjayB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWZvbnQtY29sb3I7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmctYmx1ZTEge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRvZGdlci1ibHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJnLWxpZ2h0MSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVtbzEtYmc7XG4gICAgICAgIH1cblxuICAgICAgICAuYmctYmxhY2sxIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sYWJlbC1wcmljZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgfVxufVxuXG5AbWl4aW4gcHJvZHVjdF9zdHlsZV8xIHtcbiAgICAucHJvZHVjdC1zdHlsZS0xIHtcbiAgICAgICAgLnByb2R1Y3QtYm94IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZW1vMS1iZztcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICYucHJvZHVjdC1ib3gxIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcmVkLXNoYWRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmJnLWltYWdlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3ZlZ2V0YWJsZS9wZXJjZW50YWdlLmpwZyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi00IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZGVtby03O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMTVweDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucm91bmQtY2lyY2xlIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IHJvdW5kZWQgMTBzIGluZmluaXRlIGxpbmVhcjtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmJnLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGEudGV4dC1jZW50ZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDExNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRvcC13aXNobGlzdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICAgICAgICAgICAmLnByb2R1Y3QtY29sb3Ige1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDE7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDVweCBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0LWxpc3Qge1xuICAgICAgICAgICAgLnByb2R1Y3QtYm94IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDkwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDcwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICYudGV4dC1jZW50ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDkwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA3OHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICsucHJvZHVjdC1ib3gge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYub2ZmZXItd3JhcCB7XG4gICAgICAgICAgICAucHJvZHVjdC1iYW5uZXIge1xuICAgICAgICAgICAgICAgIC5wcm9kdWN0LWJveCB7XG4gICAgICAgICAgICAgICAgICAgIC5pbWctd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTk4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5pbnN0YWdyYW0tMiB7XG4gICAgICAgICAgICAucHJvZHVjdC1ib3gge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAudG9wLXdpc2hsaXN0IHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5pbWctd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgIC5zaGFyZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5pbnN0YS1ob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMzBweCArICg3MCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgICAgICAgICAmLmluc3RhLXNwYWNpbmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogY2FsYygzNXB4ICsgKDcwIC0gMzUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gcHJvZHVjdF9zdHlsZV8yIHtcbiAgICAucHJvZHVjdC1zdHlsZS0yIHtcbiAgICAgICAgLnByb2R1Y3QtYm94IHtcbiAgICAgICAgICAgIC5pbWctd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgLmJhY2sge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LWRldGFpbHMge1xuXG4gICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnJhdGluZy1kZXRhaWxzLFxuICAgICAgICAgICAgICAgIC5tYWluLXByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICAgICAgICAgICYubWFpbi1zaG9wIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsKHRleHQtYWxpZ24sIGxlZnQsIHJpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5tYWluLXByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNhcnQtd3JhcCB7XG4gICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYSxcbiAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLmltZy13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgLmJhY2sge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5zbGlkZS00IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtNzBweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTIwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IC01cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC03MHB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogLTIwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIHByb2R1Y3Rfc3R5bGVfMyB7XG4gICAgLnByb2R1Y3Qtc3R5bGUtMyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcblxuICAgICAgICAmLnByb2R1Y3Qtc3R5bGUtY2hhaXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdC10aXRsZSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tYWluLXByaWNlIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtdGl0bGUge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTggLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE0IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWFpbi1wcmljZSB7XG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTQgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGl0bGUtMyB7XG4gICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMTNweCArICgxOCAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMThweCArICgyOCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0LWltYWdlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBkaXJlY3Rpb246IHJ0bDtcbiAgICAgICAgfVxuXG4gICAgICAgICsucHJvZHVjdC1pbWFnZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZm9udC1jb2xvcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE4IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBwcm9kdWN0X3N0eWxlXzQge1xuICAgIC5wcm9kdWN0LXN0eWxlLTQge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5ibG9nLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgLmJsb2ctaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICAuYmxvZy1kYXRlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmxvZy1oZWFkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJG9yYW5nZTE7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM4ZGVnLFxuICAgICAgICAgICAgICAgICAgICAkb3JhbmdlMSAwJSxcbiAgICAgICAgICAgICAgICAgICAgJGxpZ2h0LXJlZCA1MCUsXG4gICAgICAgICAgICAgICAgICAgICRsaWdodC1wdXJwbGUgMTAwJSk7XG5cbiAgICAgICAgICAgIC5ibG9nLWltYWdlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAuYmxvZy1kYXRlIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgICYuZ3JhZGllbnQtY29sb3Ige1xuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYigxNjEsIDI0NSwgMTYxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTI5ZGVnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgxNjEsIDI0NSwgMTYxLCAxKSAwJSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEoMzgsIDEwNiwgMTEsIDEpIDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJG9yYW5nZTE7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM4ZGVnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkb3JhbmdlMSAwJSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGxpZ2h0LXJlZCA1MCUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRsaWdodC1wdXJwbGUgMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuZGF0ZS1ob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3I6ICR3aGl0ZSwgJGFscGhhOiAwLjMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDVweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE4cHggKyAoNDUgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMjMgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmxvZy1mb290ZXIge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNzBweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMDc7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYygxM3B4ICsgKDIwIC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogY2FsYyg1NHB4ICsgKDU4IC0gNTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihob3Jpem9udGFsKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMjAgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uOiBydGw7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gcHJvZHVjdF9zdHlsZV81IHtcbiAgICAucHJvZHVjdC1ib3gge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLmltZy13cmFwcGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZW1vMS1iZztcblxuICAgICAgICAgICAgJi5iZy10cmFucyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mcm9udC1pbWcge1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jYXJ0LWluZm8ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuXG4gICAgICAgICAgICAgICAgLmNhcnQtY29udGFpbiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDMwcHggKyAoNDAgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygzMHB4ICsgKDQwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmZlYXRoZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDE1cHggKyAoMjAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2FydF9xdHkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAuY2FydC1ib3gge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTQ1cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMDZweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC40cyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJyaWdodC1ncmF5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmVnMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnF1YW50aXR5LWxlZnQtbWludXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5xdWFudGl0eS1yaWdodC1wbHVzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtZGV0YWlsIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIC5kZXRhaWwtcHJpY2Uge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTVweCAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIC5sYWJlbHMge1xuICAgICAgICAgICAgICAgICAgICAubGFiZWwtMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC43cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNhcnQtaW5mbyB7XG4gICAgICAgICAgICAgICAgICAgIC5jYXJ0LWNvbnRhaW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW5VcCA1MDBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IGZhZGVJblVwIDcwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgOTAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgMTAwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNhcnRfcXR5IHtcbiAgICAgICAgICAgICAgICAgICAgLmNhcnQtYm94IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnByb2R1Y3QtYm94NiB7XG4gICAgICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiB1bnNldDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZGVtby02O1xuXG4gICAgICAgICAgICAgICAgLmxhYmVscyB7XG4gICAgICAgICAgICAgICAgICAgIC5sYWJlbC03IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjdzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNhcnQtaW5mbyB7XG4gICAgICAgICAgICAgICAgICAgIC5jYXJ0LWNvbnRhaW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxMDAlKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjZzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdC1kZXRhaWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgLmRldGFpbC1wcmljZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICAubGFiZWxzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5sYWJlbC03IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNhcnQtaW5mbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuY2FydC1jb250YWluIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udGFiLXNlY3Rpb24ge1xuICAgIC5wcm9kdWN0LXN0eWxlLTEge1xuICAgICAgICAucHJvZHVjdC1ib3gge1xuICAgICAgICAgICAgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5tYWluLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBjYXRlZ29yeSBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5cbkBpbXBvcnQgXCIuLi91dGlscy9taXhpbi9jYXRlZ29yeVwiO1xuXG5AbWl4aW4gY2F0ZWdvcnlfY29tbW9uIHtcbiAgICAuY2F0ZWdvcnktc2VjdGlvbiB7XG4gICAgICAgICYucmF0aW9fNDAge1xuICAgICAgICAgICAgLmJnLXNpemUge1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhdGVnb3J5LXdyYXAge1xuICAgICAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMjUgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiAxMzBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHVuc2V0O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jYXRlZ29yeS1jb2xvciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuY2F0ZWdvcnktcGFkZGluZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjNweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTlweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYudGhlbWUtYmctY29sb3Ige1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcblxuICAgICAgICAgICAgLmxpZ2h0LXRleHQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNzJweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogOTZweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4wODtcbiAgICAgICAgICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgICAgICAgICAgICYudG9wLXNwYWNpbmcge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGNhbGMoMnB4ICsgKDggLSAyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC01cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2F0ZWdvcnktY29udGVudCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmNhdGVnb3J5LXRleHQge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgyNCAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEycHggKyAoMTggLSAxMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtM3B4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtMSB7XG4gICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC00cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuY2F0ZWdvcnktc3BhY2luZyB7XG4gICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0zcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLnQtdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgyNCAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGNhdGVnb3J5XzEge1xuICAgIC5jYXRlZ29yeS1zdHlsZS0xIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi50aGVtZS1iZy1jb2xvciB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAubGlnaHQtdGV4dCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA3MnB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA5NnB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjA4O1xuICAgICAgICAgICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiA4cHg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXRlZ29yeS1jb250ZW50IHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE4cHggKyAoMjQgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuY2F0ZWdvcnktc3BhY2luZyB7XG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtM3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGNhdGVnb3J5XzIge1xuICAgIC5jYXRlZ29yeS1zdHlsZS0yIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi50aGVtZS1iZy1jb2xvciB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAubGlnaHQtdGV4dCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA3MnB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA5NnB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjA4O1xuICAgICAgICAgICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiA4cHg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXRlZ29yeS1jb250ZW50IHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICAmLmNhdGVnb3J5LXNwYWNpbmcge1xuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMThweCArICgyNCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGNhdGVnb3J5XzMge1xuICAgIC5jYXRlZ29yeS1zdHlsZS0zIHtcbiAgICAgICAgLmNhdGVnb3J5LWltYWdlLWZydWl0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2F0ZWdvcnktY29udGFpbiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2F0ZWdvcnktdGV4dCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMCU7XG4gICAgICAgICAgICAgICAgbGVmdDogMCU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDMwcHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMjUgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE2IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBjYXRlZ29yeSBtaXhpbnMgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuQG1peGluIGNhdGVnb3J5XzEge1xuICAgIC5jYXRlZ29yeS1zdHlsZS0xIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi50aGVtZS1iZy1jb2xvciB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAubGlnaHQtdGV4dCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA3MnB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA5NnB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjA4O1xuICAgICAgICAgICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiA4cHg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXRlZ29yeS1jb250ZW50IHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE4cHggKyAoMjQgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuY2F0ZWdvcnktc3BhY2luZyB7XG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtM3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBvZmZlciBzZWN0aW9uIGNzcyBzdGFydFxuPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cblxuQG1peGluIG9mZmVyX2NvbW1vbiB7XG4gICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtdGhlbWUtY29sb3I7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMjJweCArICg1MCAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDMwcHggKyAoMTAwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJi5kaXNjb3VudC1zcGFjaW5nIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoNTBweCArICgxODAgLSA1MCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRpc2NvdW50LWltYWdlcyB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDgwcHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRoZW1lLWNpcmNsZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ1MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDUwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiKDExNywgNDIsIDIyMSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEoMTE3LCA0MiwgMjIxLCAxKSAwJSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEoODcsIDQ2LCAxNDcsIDEpIDEwMCUpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQyMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzQwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2hvZXMtaW1hZ2VzLTEge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDE4JTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1OXB4O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM0ZGVnKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDAlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxMzBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMjQlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDMlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDMzJTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTVweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IHJ1bi1zaG9lcyAxNXMgaW5maW5pdGUgbGluZWFyO1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNob2VzLWltYWdlcy0yIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDQzMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZykgcm90YXRlKDQ1ZGVnKTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogOTBweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMzc1cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxOCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogOTVweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMzI1cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNiU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRpc2N1bnQtZGV0YWlscyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5oZWFydC1idXR0b24ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1saWdodC1jb2xvcjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuXG4gICAgICAgICAgICAgICAgJi0yIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlbW8tbGlnaHQtMiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtbGlnaHQge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVtby1saWdodC01O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5mYS1oZWFydCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRlYWwtdGV4dCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIycHggKyAoNDUgLSAyMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gb2ZmZXJfMSB7XG4gICAgLmRpc2NvdW50LWltYWdlLWRldGFpbHMtMSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1kZW1vLTQ7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMjJweCArICg1MCAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDMwcHggKyAoMTAwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5kaXNjb3VudC1pbWFnZXMge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4MHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGhlbWUtY2lyY2xlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjAwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2MDBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVtby1saWdodC00O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAtMTcwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogLTkwcHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MjBweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MjBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDM0MHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDM0MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNob2VzLWltYWdlcyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAyMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzclO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNSUpO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDI1JTtcbiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBydW4tc2hvZXMgMTVzIGluZmluaXRlIGxpbmVhcjtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRpc2NvdW50LXNob3Age1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxNyU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDtcbiAgICAgICAgICAgIHRleHQtb3JpZW50YXRpb246IG1peGVkO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMTNweCArICgyNSAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTNweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiA0cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRpc2N1bnQtZGV0YWlscyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaGVhcnQtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVtby1saWdodC00O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgICAgIC5mZWF0aGVyIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBzdHJva2U6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kZWFsLXRleHQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygyMnB4ICsgKDQ1IC0gMjIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIG9mZmVyXzIge1xuICAgIC5kaXNjb3VudC1pbWFnZS1kZXRhaWxzLTIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtdGhlbWUtY29sb3I7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiA2MDBweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDQxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDIwcHggKyAoNjAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cblxuICAgICAgICAuZGlzY291bnQtaW1hZ2VzIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogODBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZsb3dlci1pbWFnZXMtMSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogLTc1cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogLTIxNXB4O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC03MGRlZyk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUzJTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtMnB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMTUwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTJweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTE1MHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDklO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZsb3dlci1pbWFnZXMtMiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogLTI1MHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMzMwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDY3JTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNzVkZWcpO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4bCkge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC0xNjBweDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0yMzVweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYyJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtMTYwcHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMjM1cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MiU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IHJ1bi1zaG9lcyAxNXMgaW5maW5pdGUgbGluZWFyO1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRpc2NvdW50LXNob3Age1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDEzcHggKyAoMjUgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgyNSAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBjYWxjKDBweCArICg1IC0gMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYyg4cHggKyAoMTUgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kaXNjdW50LWRldGFpbHMge1xuICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaGVhcnQtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAmLWxpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlbW8tbGlnaHQtNTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZmVhdGhlciB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZGVhbC10ZXh0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMjJweCArICg0NSAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGJhbm5lciBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5cbkBtaXhpbiBiYW5uZXJfY29tbW9uIHtcbiAgICAudGltZXItYmFubmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIC5jb2xsZWN0aW9uLWJhbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgIC5jb2xsZWN0aW9uLWNvbnRhaW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3I6ICRibGFjaywgJGFscGhhOiAwLjcpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDNweCk7XG5cbiAgICAgICAgICAgICAgICBoNixcbiAgICAgICAgICAgICAgICBoMixcbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50aGVtZS1jb2xvciB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRhaW4tYmFubmVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICYuY29udGFpbi1jZW50ZXIge1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDQ1cHggODBweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCA2MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCA0MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuc3BhY2luZy1iYW5uZXIge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYud2l0aC1iZyB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHRoZW1lLWZvbnQtY29sb3IsIDAuOTMpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC01cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLndpdGgtYmlnIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkdGhlbWUtZm9udC1jb2xvciwgMC44NSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi50LXRvcCB7XG4gICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC00cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmFubmVyLWltZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmLnAtY2VudGVyIHtcblxuICAgICAgICAgICAgLmNvbnRhaW4tYmFubmVyLFxuICAgICAgICAgICAgLmJhbm5lci10ZXh0IHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucC1yaWdodCB7XG5cbiAgICAgICAgICAgIC5jb250YWluLWJhbm5lcixcbiAgICAgICAgICAgIC5iYW5uZXItdGV4dCB7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC05cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNwYW4tdG9wIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5wLWxlZnQge1xuXG4gICAgICAgICAgICAuY29udGFpbi1iYW5uZXIsXG4gICAgICAgICAgICAuYmFubmVyLXRleHQge1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5wLWJvdHRvbSB7XG4gICAgICAgICAgICAuY29udGFpbi1iYW5uZXIge1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5iYW5uZXItdGV4dCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDUwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYudC10b3Age1xuICAgICAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC00cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCA2MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCA0MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNDBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogY2FsYygycHggKyAoMjAgLSAyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxOHB4ICsgKDQ2IC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjMyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoMzIgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgICAgICYuaC1ib3R0b20ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDJweCArICgyMCAtIDIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNnB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE0IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJhbm5lci10aXRsZSB7XG4gICAgICAgIC5iYW5uZXItdGV4dCB7XG4gICAgICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1NiU7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5zcGFjaW5nLXRleHQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNnB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29sbGVjdGlvbi1jZW50ZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IDUwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZW1vMS1iZztcbiAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgcGFkZGluZzogNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJhbm5lci1pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogY2FsYygyMHB4ICsgKDYwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgIHdpZHRoOiA0MCU7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgzMiAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40NTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDJweCArICgxNSAtIDIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMHB4ICsgKC02IC0gMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIHRpbWVyX2Jhbm5lciB7XG4gICAgLnRpbWVyLWJhbm5lciB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgLnJvdW5kLWNpcmNsZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBhbmltYXRpb246IHJvdW5kZWQgMTBzIGluZmluaXRlIGxpbmVhcjtcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnZlZy1pbWFnZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIoYm90aCk7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbC1tZWRpYSB7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDtcbiAgICAgICAgICAgIHRleHQtb3JpZW50YXRpb246IG1peGVkO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB3cml0aW5nLW1vZGU6IGhvcml6b250YWwtdGI7XG4gICAgICAgICAgICAgICAgdG9wOiB1bnNldDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc29jaWFsLWljb24ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuXG4gICAgICAgICAgICAgICAgKy5zb2NpYWwtaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoOHB4ICsgKDE0IC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYmctc2l6ZSB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNTglO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNjQlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDk0JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY291cG9uLWNvZGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDZweCAyMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAzMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKGhvcml6b250YWwpO1xuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4yO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCAxMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudGltZXIge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCA1MHB4O1xuXG4gICAgICAgICAgICAgICAgJi5saWdodC1jb2xvciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODEsIDE1MiwgNjAsIDAuNyk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNnB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogODBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDUwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTQycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCByZ2JhKCR3aGl0ZSwgMC4yKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNDJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgcmdiYSgkd2hpdGUsIDAuMik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTI4cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMjhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMThweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0xOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRpc2NvdW50LW9mZmVyIHtcbiAgICAgICAgICAgIHdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7XG4gICAgICAgICAgICB0ZXh0LW9yaWVudGF0aW9uOiBtaXhlZDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgIHRvcDogMjBweDtcbiAgICAgICAgICAgICAgICB3cml0aW5nLW1vZGU6IHVuc2V0O1xuICAgICAgICAgICAgICAgIHRleHQtb3JpZW50YXRpb246IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHVuc2V0O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICAgIHRvcDogMTVweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAud2lzaGxpc3QtaWNvbiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogN3B4IDdweCA4cHggNHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDdweCA0cHggOHB4IDdweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA0cHggNHB4IDJweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKGJvdGgpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc21hbGwtYmFubmVyIHtcbiAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeGwpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmJnLXNpemUge1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNzQlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDg2JTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5iYW5uZXItYnRuLWdydXAge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICArYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTFweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTFweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIHRpbWVyX2Jhbm5lcl9zdHlsZV8yIHtcbiAgICAudGltZXItYmFubmVyLXN0eWxlLTIge1xuICAgICAgICAudGltZXItdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDI4cHggKyAoNDYgLSAyOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zMjtcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCBhdXRvIDEwcHg7XG4gICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICB9XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFydC13aXNobGlzdCB7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC50aW1lci1iZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAmLWNlbnRlciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50aW1lciB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1mb250LWNvbG9yO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIC5jb3VudGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogOTBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGJhbm5lcl8yIHtcbiAgICAuYmFubmVyLXN0eWxlLTIge1xuICAgICAgICAuY29sbGVjdGlvbi1iYW5uZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAuYmFubmVyLWltZyB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzkwcHg7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoM3hsKSB7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMzMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4bCkge1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAzMDBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDI0MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJhbm5lci1kZXRhaWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmZvbnQtZGFyay0zMCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmhlYXJ0LXdpc2hsaXN0IHtcbiAgICAgICAgICAgICAgICAgICAgLmZhciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgkdGhlbWUtZm9udC1jb2xvciwgMC42KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb250YWluLWJhbm5lciB7XG4gICAgICAgICAgICAgICAgdG9wOiB1bnNldDtcbiAgICAgICAgICAgICAgICBib3R0b206IDYwcHg7XG5cbiAgICAgICAgICAgICAgICAmLmNvbnRhaW4tY2VudGVyIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMzBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTIwcHgpO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDRweCk7XG5cbiAgICAgICAgICAgICAgICAgICAgJi5iYW5uZXItY2VudGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihib3RoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig1cHgpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYucmF0aW8yXzEge1xuICAgICAgICAgICAgICAgIC5iZy1zaXplIHtcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLmNvbnRhaW4tYmFubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICYuYmFubmVyLWNlbnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDVweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYud2l0aC1iZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuOTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLndpdGgtYmlnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDVweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmJhbm5lci1kZXRhaWwge1xuICAgICAgICAgICAgICAgICAgICAuaGVhcnQtd2lzaGxpc3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmZhciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuZm9udC1kYXJrLTMwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZm9udC1jb2xvciAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5vZmZlci1iYW5uZXIge1xuICAgICAgICAgICAgLmNvbGxlY3Rpb24tYmFubmVyIHtcbiAgICAgICAgICAgICAgICAuYmFubmVyLWltZyB7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jb250YWluLWJhbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogdW5zZXQ7XG5cbiAgICAgICAgICAgICAgICAgICAgLmJhbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDQwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGJhbm5lcl8zIHtcbiAgICAuYmFubmVyLXNlY3Rpb24ge1xuICAgICAgICAuYmFubmVyLWltYWdlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLmJhbm5lci1zaG9wIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5iYW5uZXItZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgLmhlYXJ0LWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyOHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiByaXBwbGUtMSAwLjdzIGxpbmVhciBpbmZpbml0ZTtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5mZWF0aGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICRkZW1vLWxpZ2h0LTQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICRkZW1vLWxpZ2h0LTQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDM1cHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxOCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uOiBydGw7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDI1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxOHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmJhbm5lci1wcmljZSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE4cHggKyAoMjggLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJhbm5lci1zaG9wIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1MHB4IDMwcHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcihib3RoKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRkZW1vLTQsICRhbHBoYTogMC44KTtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDAlO1xuICAgICAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgzeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1NSU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1MHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhzKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGZvb3RlciBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5mb290ZXIge1xuICAgIGgzIHtcbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWFpbi1mb290ZXIge1xuICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgJGRlbW8xLWJnO1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGRlbW8xLWJnO1xuICAgICAgICBwYWRkaW5nOiA4MHB4IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDN4bCkge1xuICAgICAgICAgICAgcGFkZGluZzogNzBweCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA2MHB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDUwcHggMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgcGFkZGluZzogNDBweCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICAucm93IHtcbiAgICAgICAgICAgID5kaXYge1xuXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCxcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiAtMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvb3Rlci1jb250YWN0IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5icmFuZC1sb2dvIHtcbiAgICAgICAgICAgIC5zdmctaWNvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5maWxsLWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeGwpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mb290ZXItbG9nbyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMTVweCArICgzMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250YWN0LWxpc3RzIHtcbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcblxuICAgICAgICAgICAgICAgICAgICBiIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb290ZXItbGlua3Mge1xuICAgICAgICAuZm9vdGVyLXRpdGxlIHtcbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNzhcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogOXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDc3XCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mb290ZXItY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAuZm9udC1kYXJrIHtcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvb3Rlci1uZXdzbGV0dGVyIHtcbiAgICAgICAgaDMge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wM2VtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlbW8xLWJnO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9udC1kYXJrO1xuXG4gICAgICAgICAgICAgICAgJi5jb2xvci00IHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXJlZC1zaGFkZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggMTZweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9vdGVyLW51bWJlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgLmZvb3Rlci1udW1iZXItaW1hZ2Uge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZm9vdGVyLW51bWJlci1jb250YWluZXIge1xuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9vdGVyLWRldGFpbHMge1xuICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKDE1cHggKyAoMjUgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zdWItZm9vdGVyIHtcbiAgICAgICAgcGFkZGluZzogY2FsYygxNXB4ICsgKDI1IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIDA7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAucm93IHtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygxNXB4ICsgKDMwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb290ZXItc20tc3BhY2Uge1xuICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBDb29raWUgc2VjdGlvbiBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5AbWl4aW4gY29va2llLWJhci0xIHtcbiAgICAuY29va2llLWJhci1zZWN0aW9uIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDM2NXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYm94LXNoYWRvdzogMXB4IDdweCAxNHB4IC01cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgYm94LXNoYWRvdzogMCA0cHggN3B4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zaXRpb246IC41cyBlYXNlO1xuXG4gICAgICAgICYuY29va2llYmFyLWxlZnQtc2VjdGlvbiB7XG4gICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBsZWZ0OiAyMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogMTBweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDE1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuY2hhaXItY29va2llYmFyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1yZWQtc2hhZGU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA3cHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDQwcHggKyAoNjAgLSA0MCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpzZWxlY3Rpb24ge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC15ZWxsb3c7XG4gICAgICAgIH1cblxuICAgICAgICAmLmhpZGUge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIGJvdHRvbTogLTM1MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMjIgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW46IGNhbGMoOHB4ICsgKDEyIC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wM2VtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbnMge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBjb29raWUtYmFyLTIge1xuICAgIC5jb29raWUtYmFyLXNlY3Rpb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1yZWQtc2hhZGU7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgYm90dG9tOiAyMHB4O0BpbmNsdWRlIGNlbnRlcihob3Jpem9udGFsKTtcbiAgICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICBib3gtc2hhZG93OiAwIDRweCA3cHggcmdiYSgkYmxhY2sxLCAwLjE1KTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNpdGlvbjogLjVzIGVhc2U7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICBib3R0b206IDhweDtcbiAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5mbG93ZXItY29va2lyYmFyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi52ZWctY29va2llYmFyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1kZW1vLTc7XG4gICAgICAgIH1cblxuICAgICAgICAmLmhpZGUge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIGJvdHRvbTogLTM1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDE4cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wM2VtO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDE2cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29va2llLWJ1dHRvbnMge1xuICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjVweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBDb2RlIHNlY3Rpb24gY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmNvZGUtc2VjdGlvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy92ZWdldGFibGUvODUyLnBuZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAub3ZlcmxheS1jb2xvciB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG5cbiAgICAgICAgLmNvZGUtY29udGFpbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgIC5jb2RlLWltYWdlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogcm91bmQgMTJzIGluZmluaXRlIGxpbmVhcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgIGJyYW5kIHNlY3Rpb24gY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmJyYW5kLXNsaWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTdweDtcbn1cblxuLnppLTEge1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi5ibG9nLXByb2ZpbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC5pbWFnZS1wcm9maWxlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogNTVweDtcbiAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaW1hZ2UtbmFtZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAudGV4dC13ZWlnaHQge1xuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgxOCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICAgIH1cblxuICAgICAgICBoNiB7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0LWdyYXlpc2gtYmx1ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE0IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2VhcmNoLXNlY3Rpb24ge1xuICAgIC5zZWFyY2gtYmFyIHtcbiAgICAgICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBtYXJnaW46IDI2cHggYXV0byAxMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDM1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3JzKTtcblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICBTb2NpYWwgbWVkaWEgY3NzIHN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uc29jaWFsLW1lZGlhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgJi5tZWRpYS1jZW50ZXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgK2Ege1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoOHB4ICsgKDE1IC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYyg4cHggKyAoMTUgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zb2NpYWwtaWNvbi1ib3gge1xuICAgICAgICB3aWR0aDogY2FsYygyMHB4ICsgKDMwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMjBweCArICgzMCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrMTtcbiAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHt9XG5cbiAgICAgICAgKy5zb2NpYWwtbWVpZGEge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoNnB4ICsgKDE1IC0gNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNvY2lhbC1jb2xvciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBMb2FkIG1vcmUgY3NzIHN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4ubG9hZC1tb3JlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiA0MHB4IGF1dG8gMDtcbiAgICB3aWR0aDogMjgwcHg7XG5cbiAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyYXktbGlnaHQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheS1saWdodDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgfVxufVxuXG4ucHJvZHVjdC1sb2FkLW1vcmUge1xuICAgIC5jb2wtZ3JpZC1ib3gge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgTG9nIEluIHBhZ2UgQ3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4ubG9naW4tc2VjdGlvbiB7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6ICRkZW1vMS1iZztcbiAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICBwYWRkaW5nOiBjYWxjKDMwcHggKyAoNTAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAubWF0ZXJpYWxDb250YWluZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA0NjBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xuXG4gICAgICAgIC5ib3gge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZzogY2FsYygzMHB4ICsgKDYwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTBweCArICgzMCAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICB6LWluZGV4OiA1O1xuXG4gICAgICAgICAgICAmLmJhY2sge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gICAgICAgICAgICAgICAgdG9wOiAtMjBweDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICAgICAgdG9wOiAtMTBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgJGFscGhhOiAwLjYpO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2dpbi10aXRsZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0NnB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAzNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBjYWxjKDBweCArICgyIC0gMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKC0xMHB4ICsgKC0xMCAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGNhbGMoLTEwcHggKyAoLTEwIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygyN3B4ICsgKDI4IC0gMjcpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwcHggKyAoMCAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbC1tZWRpYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IGNhbGMoMTBweCArICgyNSAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGdyYXksICRhbHBoYTogMC42KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuXG4gICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTJweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoOCUgKyAoMTggLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5mYi1tZWRpYSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstYmx1ZTtcblxuICAgICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5nb29nbGUtbWVkaWEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgkYmxhY2sxLCAkYWxwaGE6IDAuNCk7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNSAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMTdweCArICgyMyAtIDE3KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICYucGFzcy1vciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYyg0cHggKyAoMTIgLSA0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dCB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuXG4gICAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICAgIGlucHV0LFxuICAgICAgICAgICAgLnNwaW4ge1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG5cbiAgICAgICAgICAgIGJ1dHRvbiAuYnV0dG9uLmxvZ2luIGJ1dHRvbiBpLmZhIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1hdGVyaWFsLWJ1dHRvbiAuc2hhcGUge1xuXG4gICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9uLmxvZ2luIGJ1dHRvbiB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1hdGVyaWFsLWJ1dHRvbixcbiAgICAgICAgLmFsdC0yLFxuICAgICAgICAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZSxcbiAgICAgICAgLmFsdC0yIC5zaGFwZSxcbiAgICAgICAgLmJveCB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiA0MDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgICAgICAgIGxhYmVsLFxuICAgICAgICAgICAgaW5wdXQsXG4gICAgICAgICAgICAuc3BpbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYygyMHB4ICsgKDMwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dCB7XG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsICRmb250XzE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgJGZvbnRfMTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxOCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgkYmxhY2sxLCAwLjgpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG5cbiAgICAgICAgICAgICAgICAmLmVtYWlsLWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMjQgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCAkZm9udF8xO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgkYmxhY2sxLCAwLjgpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQge1xuXG4gICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgIC5zcGluIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRibGFjazEsICRhbHBoYTogMC4xNSk7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNwaW4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm92ZXJib3ggLmlucHV0IHtcbiAgICAgICAgICAgIC5zcGluIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC41KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dCB7XG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2hhZGUtZ3JheTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIG1hcmdpbjogY2FsYygxNXB4ICsgKDIwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIDA7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgei1pbmRleDogMjtcblxuICAgICAgICAgICAgJi5idXR0b24tMSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5sb2dpbiB7XG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDAlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDEzcHggKyAoMTggLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjazEsIDAuMSk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJGJsYWNrMSwgMC4yKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDEzcHggKyAoMTggLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmxvZ2luIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpLmZhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgtMGRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGkuZmEge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBhc3MtZm9yZ290IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgkYmxhY2sxLCAkYWxwaGE6IDAuNCk7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNSAtIDEzKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCBhdXRvIDA7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2lnbi1jYXRlZ29yeSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRibGFjazEsICRhbHBoYTogMC40KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE4IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG87XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIodmVydGljYWwpO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJGJsYWNrMSwgJGFscGhhOiAwLjIpO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm92ZXJib3gge1xuICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogNjBweCA1MHB4IDQwcHggNTBweDtcblxuICAgICAgICAgICAgLmxvZ2luLXRpdGxlLFxuICAgICAgICAgICAgLmJ1dHRvbixcbiAgICAgICAgICAgIC5pbnB1dCB7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTExO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxvZ2luLXRpdGxlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW5wdXQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICBpbnB1dCxcbiAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWF0ZXJpYWwtYnV0dG9uLFxuICAgICAgICAgICAgLmFsdC0yIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgIC5zaGFwZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tYXRlcmlhbC1idXR0b24sXG4gICAgICAgIC5hbHQtMiB7XG4gICAgICAgICAgICB3aWR0aDogMTQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE0MHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA0MHB4O1xuICAgICAgICAgICAgcmlnaHQ6IC03MHB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgei1pbmRleDogMTAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIDAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tYXRlcmlhbC1idXR0b24sXG4gICAgICAgIC5hbHQtMiB7XG4gICAgICAgICAgICAuc2hhcGUge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZTpiZWZvcmUsXG4gICAgICAgIC5hbHQtMiAuc2hhcGU6YmVmb3JlLFxuICAgICAgICAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZTphZnRlcixcbiAgICAgICAgLmFsdC0yIC5zaGFwZTphZnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIoYm90aCk7XG4gICAgICAgIH1cblxuICAgICAgICAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZTpiZWZvcmUsXG4gICAgICAgIC5hbHQtMiAuc2hhcGU6YmVmb3JlIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgIH1cblxuICAgICAgICAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZTphZnRlcixcbiAgICAgICAgLmFsdC0yIC5zaGFwZTphZnRlciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICB3aWR0aDogNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm1hdGVyaWFsLWJ1dHRvbi5hY3RpdmUsXG4gICAgICAgIC5hbHQtMi5hY3RpdmUge1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICByaWdodDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtNTAlKSByb3RhdGUoMGRlZyk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIDQwNCBQYWdlIENzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnBhZ2Utbm90LWZvdW5kIHtcbiAgICAucGFnZS1pbWFnZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wYWdlLWNvbnRhaW5lciB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDAgY2FsYygwcHggKyAoNTAgLSAwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYygxMHB4ICsgKDIwIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDI1cHggKyAoMzUgLSAyNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICBDb250YWN0IFBhZ2UgQ3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uY29udGFjdC1zZWN0aW9uIHtcbiAgICAubWF0ZXJpYWxDb250YWluZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xuXG4gICAgICAgIC5tYXRlcmlhbC1kZXRhaWxzIHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmVybXVkYS1ncmV5O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMTggLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYm94IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0IHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG5cbiAgICAgICAgICAgIGxhYmVsLFxuICAgICAgICAgICAgaW5wdXQsXG4gICAgICAgICAgICB0ZXh0YXJlYSxcbiAgICAgICAgICAgIC5zcGluIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMjBweCArICgzMCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQge1xuXG4gICAgICAgICAgICBpbnB1dCxcbiAgICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgJGZvbnRfMTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJGJsYWNrMSwgMC44KTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsICRmb250XzE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTggLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJGJsYWNrMSwgMC44KTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuXG4gICAgICAgICAgICAgICAgJi5lbWFpbC1sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNXB4ICsgKDI0IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dCB7XG5cbiAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgLnNwaW4ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2sxLCAwLjEpO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zcGluIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnB1dCBsYWJlbCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgY29sb3I6ICRiZXJtdWRhLWdyZXk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubG9jYXRpb24tbWFwIHtcbiAgICAgICAgaWZyYW1lIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDIwMHB4ICsgKDM0MCAtIDIwMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtNnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRhY3QtZGV0YWlscyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMjFweCArICgzMCAtIDIxKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMThweCArICgyNCAtIDE4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGg1IHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRhY3QtYm94IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgICAgIC5jb250YWN0LXRpdGxlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg4MCUgLSA4MHB4KTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygxMHB4ICsgKDIwIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoMTBweCArICgyMCAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDgwcHgpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNnB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcblxuICAgICAgICAgICAgICAgICAgICArcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTJweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbnRhY3QtaWNvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMzVweCArICg0NSAtIDM1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMzVweCArICg0NSAtIDM1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgLmZlYXRoZXIge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxNnB4ICsgKDE4IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBzdHJva2U6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMTI7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICBGQVEgUGFnZSBDc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5zZWFyY2gtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMzBweCArICg1MCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygzMHB4ICsgKDUwIC0gMzApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbn1cblxuLmZhcS1zZWN0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAtMTYwcHg7XG5cbiAgICAuZmFxLWNvbnRhaW4ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMjJweCArICg0MCAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCA4cHggNDBweCAwIHJnYmEoJGJsYWNrMSwgMC4xKTtcblxuICAgICAgICAuZmFxLWltYWdlIHtcbiAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYygxOHB4ICsgKDIwIC0gMTgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoMjIgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgIH1cblxuICAgICAgICBoNSB7XG4gICAgICAgICAgICBjb2xvcjogJGZvbnQtbGlnaHQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gLTJweDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mYXEtZGV0YWlscyB7XG4gICAgLmZhcS1saW5rLWJveCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICB0b3A6IDMwcHg7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMnB4O1xuICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMCwgMTQ0LCAxNzQsIDAuMjMpO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxOCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNXB4ICsgKDE2IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgK2Ege1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mYXEtaGVhZGluZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgICsuZmFxLWhlYWRpbmcge1xuICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKDMwcHggKyAoNDUgLSAzMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgfVxuXG4gICAgLmZlYXRoZXIge1xuICAgICAgICB3aWR0aDogY2FsYygyMHB4ICsgKDIyIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgfVxuXG4gICAgLmZhcS1vcHRpb24ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDBweCk7XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMjAgLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICB9XG5cbiAgICAgICAgaDYge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTYgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC00cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICBSZXZpZXcgUGFnZSBDc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5yZXZpZXctc2VjdGlvbiB7XG4gICAgLnJldmlldy1ib3gge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMjBweCArICgzNSAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoJGJsYWNrMSwgMC4wOCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDEycHggcmdiYSgkY29sb3I6ICRibGFjaywgJGFscGhhOiAwLjEpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuXG4gICAgICAgICAgICAucmV2aWV3LWltYWdlIHtcbiAgICAgICAgICAgICAgICAuZmEtcXVvdGUtbGVmdCB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMDQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmZhLXF1b3RlLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC4wNDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucmV2aWV3LWltYWdlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAuZmEtcXVvdGUtbGVmdCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNzBweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAtMjdweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMTJweDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOWRlZyk7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjAzO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZhLXF1b3RlLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3MHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IC0yN3B4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTJweDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOWRlZyk7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjAzO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJldmlldy1wcm9maWxlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNDBweCArICg1MCAtIDQwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoNDBweCArICg1MCAtIDQwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJhdGluZyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICAgICAgICAgIC5mYS1zdGFyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmltYWdlLW5hbWUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDVweCArICgxMCAtIDUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYyg1cHggKyAoMTAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTYgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDRweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5aXNoLWJsdWU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0zcHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE1IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXZpZXctbmFtZSB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5aXNoLWJsdWU7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgIGh5cGhlbnM6IGF1dG87XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgICAgICAgICAgICAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcblxuICAgICAgICAgICAgICAgICtwIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICBQb3J0Zm9saW8gUGFnZSBDc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5wb3J0Zm9saW8ge1xuICAgIC5wZXJlZ3JhcGgge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrZ3JleSk7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTZweCArICgyMCAtIDE2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogY2FsYyg4cHggKyAoMTAgLSA4KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC00cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5idG4tc3VibWl0IHtcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBhcmVudC1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgJi1zaXplIHtcbiAgICAgICAgICAgIC5pbWFnZXMge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTAwcHg7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW1hZ2VzIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAub3ZlcmxheS1jb2xvciB7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgICAgICAub3ZlcmxheS1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAub3ZlcmxheS1jb2xvciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgICAub3ZlcmxheS1pY29uIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuOHMgZWFzZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMjBweCArICgyNSAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIH1cbn1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgQmxvZyBQYWdlIENzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmJsb2ctc2VjdGlvbiB7XG4gICAgLmJsb2ctaW1hZ2Uge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRkZW1vMS1iZywgJGFscGhhOiAwLjUpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogNDAwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwMHB4O1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ibG9nLWRldGFpbHMge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDUwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMjBweCArICgzNiAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSBjYWxjKDEwcHggKyAoMjAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDZweCArICgxMiAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTkgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMjJweCArICgzNiAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDZweCArICgxMiAtIDYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE2IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBjYWxjKDBweCArICgxIC0gMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogY2FsYygxMHB4ICsgKDEyIC0gMTApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmxvZy1wcm9maWxlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmZhLXF1b3RlLWxlZnQge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3MHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTI3cHg7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0xMnB4O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOWRlZyk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMDM7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZmEtcXVvdGUtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3MHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTI3cHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTJweDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTlkZWcpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjAzO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmltYWdlLXByb2ZpbGUge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1NXB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDU1cHg7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5pbWFnZS1uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheWlzaC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE4IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucmV2aWV3LW5hbWUge1xuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0LWdyYXlpc2gtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC43cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxMnB4ICsgKDE0IC0gMTIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICtwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmxvZy1jYXRlZ29yaXR5IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAmLmJveC1ib3R0b20ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICAgIH1cblxuICAgIC5ibG9nLWltZyB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgcG9zO1xuICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC1ib2R5IHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBkaXJlY3Rpb246IHJ0bDtcbiAgICAgICAgfVxuXG4gICAgICAgIGg1IHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ibG9nLXByb2ZpbGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIC5pbWFnZS1wcm9maWxlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbWFnZS1uYW1lIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkZ3JheS1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkZ3JheS1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGZvbnQtbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucmV2aWV3LW5hbWUge1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheWlzaC1ibHVlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC43cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxNCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgK3Age1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgLmJsb2ctaW1nIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tYXNvbmFyeS1ibG9nLXNlY3Rpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLnBlcmVncmFwaCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6IHZhcigtLWRhcmtncmV5KTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMDtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDE4IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC40cyBlYXNlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTRweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmJ0bi1zdWJtaXQge1xuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tYXNvbmFyeS1ibG9nIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoJGJsYWNrMSwgJGFscGhhOiAwLjA4KTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgICYuYm94LXNoYWRvdyB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMzUsIDM1LCAzNSwgMC4wOCk7XG4gICAgICAgIH1cblxuICAgICAgICAuYmctc2l6ZSB7XG4gICAgICAgICAgICB3aWR0aDogMzAlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgJi5pbWFnZS1maXQge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDM1LCAzNSwgMzUsIDAuMDUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNhcmQtYm9keSB7XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDIwcHggKyAoMjUgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgICYtd2lkdGgge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnF1b3RlLWJvZHkge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnF1b3RlLWltYWdlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMjVweCArICg0MCAtIDI1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWFzb25hcnktbmFtZSB7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuMnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDI0IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgICYucXVvdGUtaGVhZCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDE4IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMS4xcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjA2ZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAgICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMztcbiAgICAgICAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJsb2ctcHJvZmlsZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbGlnaHQtZGVtby00O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAmLmJveC1jZW50ZXIge1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaW1hZ2UtcHJvZmlsZSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmltYWdlLW5hbWUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgICAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCA1cHggMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiByZXZlcnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheWlzaC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucmV2aWV3LW5hbWUge1xuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0LWdyYXlpc2gtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC43cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxMnB4ICsgKDE0IC0gMTIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICtwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucG9wdWxhci1wb3N0IHtcbiAgICAucG9wdWxhci10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMTVweCArICgyNCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMjJweCArICgzNSAtIDIyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wb3B1bGFyLWltYWdlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvcHVsYXItY29udGFpbiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDE5IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucG9wdWxhci1kZXRhaWxzIHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS44O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucG9wdWxhci10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICBwYWRkaW5nOiAxNnB4IDIwcHg7XG5cbiAgICAmLm1pbnVzLXNwYWNpbmcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbn1cblxuLmxlZnQtc2lkZSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcblxuICAgIC8vUG9wdWxhciBwb3N0IHNlY3Rpb24gU3RhcnRcbiAgICAucG9wdWxhci1wb3N0IHtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktbGlnaHQ7XG4gICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG5cbiAgICAgICAgLnJldmlldy1ib3gge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBtYXJnaW46IDJweCAtMnB4IC0ycHggLTJweDtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMnB4O1xuXG4gICAgICAgICAgICAgICAgLmZlYXRoZXIge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBvcHVsYXItaW1hZ2Uge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgICAgICArLnBvcHVsYXItaW1hZ2Uge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wb3B1bGFyLW51bWJlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogN3B4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1NXB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC00cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wb3B1bGFyLWNvbnRhaW4ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNSAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuM3B4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3B1bGFyLWRldGFpbHMge1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNvY2lhbC1tZWRpYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc29jaWFsLWljb24tYm94IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICAgICAgICAgICAgICAgICAgICArLnNvY2lhbC1pY29uLWJveCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFBvcHVsYXIgcG9zdCBzZWN0aW9uIGVuZFxuXG4gICAgLy8gY2F0ZWdvcnkgc2VjdGlvbiBTdGFydFxuICAgIC5jYXRlZ29yeS1zZWN0aW9uIHtcbiAgICAgICAgLmNhdGVnb3J5LWJveCB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICArLmNhdGVnb3J5LWJveCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1wcm9kdWN0IHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlbW8xLWJnO1xuXG4gICAgICAgICAgICAgICAgICAgIC5jYXRlLXNoYXBlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNhdGUtY29udGFpbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNhdGVnb3J5LXByb2R1Y3Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuXG4gICAgICAgICAgICAgICAgLmNhdGUtc2hhcGUge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNhdGUtY29udGFpbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1wcm9kdWN0IHtcbiAgICAgICAgICAgICAgICAgICAgLmNhdGUtc2hhcGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jYXRlLWNvbnRhaW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBjYXRlZ29yeSBzZWN0aW9uIGVuZFxuXG4gICAgLy8gVGFncyBzZWN0aW9uIHN0YXJ0XG4gICAgLnRhZy1zZWN0aW9uIHtcbiAgICAgICAgLmJ1dHRvbi10YWdzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMnB4IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUYWdzIHNlY3Rpb24gZW5kXG59XG5cbi5ibG9nLWRldGFpbHMge1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cblxuICAgIC5ibG9nLWltYWdlLWJveCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuYmxvZy10aXRsZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNnB4O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJsb2ctY29udGFpbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYygxNXB4ICsgKDI1IC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDI4IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9nLWRldGFpbC1jb250YWluIHtcbiAgICAgICAgcGFkZGluZzogMCAwIGNhbGMoMjBweCArICgyNSAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE4cHggKyAoMjcgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLThweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG5cbiAgICAgICAgICAgICtwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKDE1cHggKyAoMjUgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZmlydC1sYXR0ZXI6OmZpcnN0LWxldHRlciB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA3NXB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDNweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ibG9nLXByb2ZpbGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIC5pbWFnZS1wcm9maWxlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDU1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbWFnZS1uYW1lIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTdweCArICgyMCAtIDE3KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5aXNoLWJsdWU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE1IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXZpZXctbmFtZSB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5aXNoLWJsdWU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjdweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxMnB4ICsgKDE0IC0gMTIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgICAgICArcCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxlYXZlLWNvbW1lbnRzIHtcbiAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlbW8xLWJnO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmxvY2stc2hhZG93LXNwYWNlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYyg4MHB4IC0gMTRweCk7XG59XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIFBhZ2luYXRpb24gQ3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4ucGFnZS1zZWN0aW9uIHtcbiAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcblxuICAgIC5wYWdpbmF0aW9uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAucGFnZS1pdGVtIHtcbiAgICAgICAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICsucGFnZS1pdGVtIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICBDYXJ0IFBhZ2UgU2NzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLndpc2gtbGlzdC1zZWN0aW9uIHtcbiAgICAmLnRhYmxlLWRhc2hib2FyZCB7XG4gICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggMTJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0Ym9keSB7XG4gICAgICAgICAgICB0ciB7XG4gICAgICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb3VudC1kb3duIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZDogJGRlbW8xLWJnO1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMS4xcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgaDUge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNob3BwaW5nLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIC5mYXMge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udGFibGUge1xuICAgIHRib2R5IHtcbiAgICAgICAgKyB7XG4gICAgICAgICAgICB0Ym9keSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNhcnQtYnV0dG9ucyB7XG4gICAgcGFkZGluZy10b3A6IDM1cHg7XG5cbiAgICA+ZGl2IHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNTlweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDM4cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi53aXNobGlzdC10YWJsZSB7XG4gICAgdGhlYWQge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKG4gKyAzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdGJvZHkge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKG4gKyAzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLm1vYmlsZS1jYXJ0LWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmNvbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jYXJ0LXRhYmxlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICB0aGVhZCB7XG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMTJweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0Ym9keSB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICB0ciB7XG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNoYWRlLWdyYXk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWJsdWUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTRweCA4cHg7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICAgICAgICAgICYuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZmFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5mYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDI1cHggKyAoMzUgLSAyNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDI1cHggKyAoMzUgLSAyNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEycHggKyAoMTQgLSAxMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnRkLWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWRlYWZ1bHQpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubW9iaWxlLWNhcnQtY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5xdHktYm94IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQ4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuY29sIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucXR5LWJveCB7XG4gICAgICAgICAgICAgICAgICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDc1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG50Zm9vdCB7XG4gICAgdHIge1xuICAgICAgICB0aCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMzVweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG5cbiAgICAgICAgdGQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDM1cHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNjNweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDQxcHg7XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDg1JTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGVmdC1zaWRlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgYSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuc2hvcHBpbmctYnV0dG9uIHtcbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNhcnQtc2VjdGlvbiB7XG4gICAgLmNvdW50LWRvd24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxLjFweDtcbiAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBoNSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgICB0Ym9keSB7XG4gICAgICAgICAgICArIHtcbiAgICAgICAgICAgICAgICB0Ym9keSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcnQtYnV0dG9ucyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzNXB4O1xuXG4gICAgICAgID5kaXYge1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1OXB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDM4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FydC10YWJsZSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgdGhlYWQge1xuICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgtbiArIDQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0Ym9keSB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICB0ciB7XG4gICAgICAgICAgICAmLnRhYmxlLW9yZGVyIHtcblxuICAgICAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTc1cHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgtbiArIDQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICYuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE2OSwgMTY5LCAxNjksIDAuNSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2hhZGUtZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnRkLWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWRlYWZ1bHQpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5tb2JpbGUtY2FydC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnF0eS1ib3gge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jb2wge1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnF0eS1ib3gge1xuICAgICAgICAgICAgICAgICAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdGZvb3Qge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDM1cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMzVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNjNweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MXB4O1xuXG4gICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDg1JTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGVmdC1zaWRlLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNob3BwaW5nLWJ1dHRvbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FydC1jaGVja291dC1zZWN0aW9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcblxuICAgICAgICAucHJvbW8tc2VjdGlvbiB7XG4gICAgICAgICAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNoZWNrb3V0LWJ1dHRvbiB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FydC1ib3gge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNhcnQtYm94LWRldGFpbHMge1xuICAgICAgICAgICAgICAgIC50b3RhbC1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAudG9wLWRldGFpbHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5ib3R0b20tZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTJweCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICBDaGVja291dCBQYWdlIFNjc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi55b3VyLWNhcnQtYm94IHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMTBweDtcblxuICAgIC5saXN0LWdyb3VwIHtcbiAgICAgICAgLmxoLWNvbmRlbnNlZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDI1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrMSwgMC4xMjUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNtYWxsLFxuICAgICAgICAgICAgc3BhbixcbiAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNhcmQge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm5ldy1iYWRnZSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiA4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgIH1cblxuICAgIC5jdXN0b21lLWltcHV0LWdyb3VwIHtcbiAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICBwYWRkaW5nOiA2cHggMTJweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmN1c3RvbWUtZm9ybS1zZWxlY3Qge1xuICAgIHBhZGRpbmc6IDEycHggMjBweDtcbn1cblxuLmNoZWNrb3V0LWxhYmVsIHtcbiAgICBwYWRkaW5nLXRvcDogMnB4O1xufVxuXG4uY3VzdG9tZS1yYWRpby1ib3gge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIH1cblxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGZpbHRlcjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuaHIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5aXNoLWJsdWU7XG59XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIE9yZGVyIFN1Y2Nlc3MgY3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uc3VjY2Vzcy1pY29uIHtcbiAgICBwYWRkaW5nOiA3MHB4IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRlbW8xLWJnO1xuXG4gICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICB9XG5cbiAgICAubWFpbi1jb250YWluZXIge1xuICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgLmNoZWNrLWNvbnRhaW5lciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogbW92ZXIgMXMgaW5maW5pdGUgYWx0ZXJuYXRlO1xuXG4gICAgICAgICAgICAuY2hlY2stYmFja2dyb3VuZCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tIHJpZ2h0LCAkZ3JlZW4tZGFyaywgJGdyZWVuLWRhcmspO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDY1cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSBpbnNldCxcbiAgICAgICAgICAgICAgICAgICAgMHB4IDBweCAwcHggNjVweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpIGluc2V0O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44NCk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogYW5pbWF0ZUNvbnRhaW5lciAwLjc1cyBlYXNlLW91dCBmb3J3YXJkcyAwLjc1cztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDY1JTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDgwO1xuICAgICAgICAgICAgICAgICAgICBzdHJva2UtZGFzaG9mZnNldDogODA7XG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogYW5pbWF0ZUNoZWNrIDAuMzVzIGZvcndhcmRzIDEuMjVzIGVhc2Utb3V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNoZWNrLXNoYWRvdyB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiBjYWxjKC0xNSUgLSA1cHgpO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjbG9zZXN0LXNpZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICByZ2JhKDczLCAyMTgsIDEzMSwgMSksXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCk7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBhbmltYXRlU2hhZG93IDAuNzVzIGVhc2Utb3V0IGZvcndhcmRzIDAuNzVzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN1Y2Nlc3MtY29udGFpbiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBjb2xvcjogZ3JlZW47XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaDUge1xuICAgICAgICAgICAgbWFyZ2luOiA1cHggMCAxMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE1cHggKyAoMTggLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cblxuICAgICAgICBoNiB7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMS4xcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vcmRlci1sZWZ0LWJveCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBwb3M7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktbGlnaHQ7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoNCkge1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm9yZGVyLWRldGFpbHMtdGFibGUge1xuICAgIC50YWJsZSB7XG4gICAgICAgIHRib2R5IHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheS1saWdodDtcblxuICAgICAgICAgICAgdHIge1xuICAgICAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGZvbnQtbGlnaHQ7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1sYXN0LWNoaWxkKC1uICsgNCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IHJldmVydCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0Zm9vdCB7XG4gICAgICAgICAgICB0ciB7XG4gICAgICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi50YWJsZS1vcmRlciB7XG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheS1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5vcmRlci1zdWNjZXNzIHtcbiAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm9yZGVyLWRldGFpbHMge1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wYXltZW50LW1vZGUge1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGZvbnQtbGlnaHQ7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kZWxpdmVyeS1zZWMge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09PT1cbiAgIERhc2hib2FyZCBTY3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5kYXNoLWZpbHRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cblxuLmN1c3RvbWUtbmF2LXRhYnMge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDEwcHg7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0LWJsdWU7XG5cbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHotaW5kZXg6IDk7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogLTMwMHB4O1xuICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2LWl0ZW0ge1xuICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgY29sb3I6ICRibGFjazEgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyKHZlcnRpY2FsKTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogM3B4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjEwMVwiO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcikgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucGFnZS10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgIH1cbn1cblxuLmJveC1oZWFkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMS4xcHg7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5kYXNoYm9hcmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuXG4gICAgLnBhZ2UtdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDIycHggKyAoMzIgLSAyMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIycHggKyAoMzggLSAyMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhZGRyZXNzIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC01cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLndlbGNvbWUtbXNnIHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4zcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICB9XG5cbiAgICAgICAgaDYge1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuNXB4O1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJveC1hY2NvdW50IHtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYygyNXB4ICsgKDQ1IC0gMjUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgICAgIC5ib3gtY29udGVudCB7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMDtcblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTVweCAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFkZHJlc3MtYm94IHtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYyg1cHggKyAoMjAgLSA1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICB9XG5cbiAgICAuYm94LXRpdGxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktbGlnaHQ7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoNHB4ICsgKDggLSA0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwO1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoNixcbiAgICBwIHtcbiAgICAgICAgbWFyZ2luOiA2cHggMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICB9XG59XG5cbi5vcmRlci1ib3gtY29udGFpbiB7XG4gICAgLm9yZGVyLWJveCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZzogMjBweCAzMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAgIC5vcmRlci1ib3gtaW1hZ2Uge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICByaWdodDogLTIwcHg7XG4gICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgb3BhY2l0eTogMC4wNDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMjBweDtcbiAgICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5vcmRlci1ib3gtaW1hZ2Uge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC03ZGVnKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMjU7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg3ZGVnKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5vcmRlci1ib3gtY29udGFpbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg0MHB4ICsgKDUwIC0gNDApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+ZGl2IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5kYXNoYm9hcmQtcHJvZmlsZSB7XG4gICAgLmRhc2gtcHJvZmlsZSB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sZWZ0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjIwcHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZGFzaGJvYXJkLXNlY3VyaXR5IHtcbiAgICAucGFnZS10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgfVxuXG4gICAgLnNlY3VyaXR5LWRldGFpbHMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuXG4gICAgICAgIGg1IHtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VjdXJpdHktZGV0YWlscy0xIHtcbiAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkIHJnYmEoJGJsYWNrLCAwLjI4KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgIH1cbn1cblxuLnN1Y2Nlc3MtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA0cHggMTBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uZGFuZ2VyLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDRweCAxMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG5cbiAgICAmLmRhbmdlci1jZW50ZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLmZlYXRoZXIge1xuICAgICAgICAgICAgc3Ryb2tlOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zYXZlLWRldGFpbHMtYm94IHtcbiAgICAuc2F2ZS1kZXRhaWxzIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWJsdWU7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmLnNob3cge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwcHggMTBweCByZ2JhKCRibGFjazEsICRhbHBoYTogMC4yKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zYXZlLW5hbWUge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNhdmUtcG9zaXRpb24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogOHB4IDE1cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTJweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNhdmUtYWRkcmVzcyB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgY2FsYygycHggKyAoNSAtIDIpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1vYmlsZSB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAmLm1vYmlsZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbjogLTVweDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiA1cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucGF5bWVudC1jYXJkLWRldGFpbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIC5lZGl0LWNhcmQge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5hZGQtY2FyZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1zaGFkZS1ncmF5O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLmNhcmQtZGV0YWlscyB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMzBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRkYXJrLXNoYWRlLWdyYXk7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJkLWRldGFpbHMge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1vbm9jaHJvbWF0aWM7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoNDVkZWcsXG4gICAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxcHgsXG4gICAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKSAycHgsXG4gICAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KSAzcHgsXG4gICAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSA0cHgpLFxuICAgICAgICAgICAgLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoLTI0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA0MCUsIHJnYmEoMjU1LFxuICAgICAgICAgICAgICAgICAgICAyNTUsXG4gICAgICAgICAgICAgICAgICAgIDI1NSxcbiAgICAgICAgICAgICAgICAgICAgMC4yKSA3MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgOTAlKTtcblxuICAgICAgICAmLmNhcmQtdmlzYSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Ftb3VmbGFnZS1ncmVlbjtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZGFiaXQtY2FyZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGFsZi1iYWtlZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkLW51bWJlciB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC52YWxpZC1kZXRhaWwge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKDEwcHggKyAoMjAgLSAxMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG5cbiAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJHdoaXRlLCAwLjcpO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZGF0ZSB7XG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE2cHggKyAoMTggLSAxNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJpbWFyeSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxNCAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5hbWUtZGV0YWlsIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGMoMTBweCArICgyNSAtIDEwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAubmFtZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE2IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNhcmQtaW1nIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5lZGl0LWNhcmQge1xuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrMSwgJGFscGhhOiAwLjgpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5lZGl0LWNhcmQtbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIE9yZGVyIFRyYWNraW5nIGNzcyBTdGFydFxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi50cmFja2VyLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuMnB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgfVxufVxuXG4udHJhY2tlci1udW1iZXIge1xuICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMS4ycHg7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByb2d0cmNrciB7XG4gICAgbWFyZ2luOiA0MHB4IDAgMTVweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMzBweCAwO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMTBweCAwO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgaDUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAtMnB4O1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0zMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5wcm9ndHJja3ItdG9kbyB7XG4gICAgICAgICAgICBjb2xvcjogJHNpbHZlcjtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAkc2lsdmVyO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAkc2lsdmVyO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogNHB4IHNvbGlkICRzaWx2ZXI7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjExMVwiO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNpbHZlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjJlbTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTE3cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0xN3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucHJvZ3RyY2tyLWRvbmUge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICBib3JkZXItdG9wOiA0cHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IHNlbGYtc3RhcnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoMjBweCArICg0MCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhcigtLXRoZW1lLWNvbG9yKTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwMGNcIjtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuMmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyLjJlbTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ub3JkZXItbGVmdC1pbWFnZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnRyYWNraW5nLXByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XG4gICAgICAgIHdpZHRoOiAzMCU7XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDIwcHggKyAoNDAgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAub3JkZXItaW1hZ2UtY29udGFpbiB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDVweCArICgxMCAtIDUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDNlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMTJweCArICgyMyAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgKDI0IC0gMTYpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ub3JkZXItYWRkcmVzcyB7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcblxuICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heCgyeHMpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxlZnQtYm94IHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAyMTBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcblxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoMnhzKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTNweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrLXNpbHZlcjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucmlnaHQtYm94IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgICAgIHdpZHRoOiAxODBweDtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udHJhY2tlci10YWJsZSB7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMzBweCArICg2MCAtIDMwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAudGFibGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNnB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtYmx1ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGJvZHkge1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2hhZGUtZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ibHVlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMHB4ICsgKDE2IC0gMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYyg2cHggKyAoMTYgLSA2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxNzVweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgIEVsZW1lbnQgUGFnZSBjc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5oZWFkZXItaW1hZ2UtY29udGFpbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygyMHB4ICsgKDUwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgLmJhY2tncm91bmQtY29udGFpbiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG59XG5cbi5jdXN0b21lLWNhcmQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cbiAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICB9XG5cbiAgICAuY2FyZC1ib2R5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIH1cbn1cblxuLyoqPT09PT09PT09PT09PT09PT09PT09XG4gICAgQWJvdXQgUGFnZSBjc3MgU3RhcnRcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT0qKi9cbi5hYm91dC1pbWFnZSB7XG4gICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4uYWJvdXQtZGV0YWlscyB7XG4gICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgaDIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiBjYWxjKDE4cHggKyAoMjUgLSAxOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxLjVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgIH1cbn1cblxuLmN1c3RvbWUtYWNjb3JkaW9uIHtcbiAgICBwYWRkaW5nOiAyNXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWxpZ2h0O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAgIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCRncmF5LWxpZ2h0LCAkYWxwaGE6IDAuNSk7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAuYWNjb3JkaW9uLWhlYWRlciB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkZ3JheS1saWdodCwgJGFscGhhOiAwLjUpO1xuXG4gICAgICAgICAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRncmF5O1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuY29sbGFwc2VkIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNTRcIjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpub3QoLmNvbGxhcHNlZCkge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgICAgICAgIC5hY2NvcmRpb24tYm9keSB7XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxLjNweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRlYW0tY29udGFpbiB7XG4gICAgJi50ZWFtLWNlbnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIycHg7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgIH1cblxuICAgICAgICAudGVhbS1kZXRhaWxzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tb3JlbGVzcy1idXR0b24ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRlYW0tZGV0YWlscyB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tb3JlbGVzcy1idXR0b24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICB9XG59XG5cbi50ZWFtLWltYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDIyMHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4udGVhbS1sZWFkZXItc2VjdGlvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG59XG5cbi5sZWFkZXItY29udGFpbiB7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIC5sZWFkZXItaW1hZ2Uge1xuICAgICAgICAgICAgLnNvY2lhbC1tZWRpYSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sZWFkZXItaW1hZ2Uge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAuc29jaWFsLW1lZGlhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAtNjBweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIoaG9yaXpvbnRhbCk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoOHB4ICsgKDEyIC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIyNiwgNDYsIDgzLCAwLjgpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNXB4KTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogdW5zZXQ7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjYsIDQ2LCA4MywgMC42KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMjBweCArICgzMCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMjBweCArICgzMCAtIDIwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2sxLCAkYWxwaGE6IDAuNyk7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheS1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMjAgLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxlYWRlci1jb250YWluIHtcbiAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoOHB4ICsgKDE1IC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGg2IHtcbiAgICAgICAgICAgIG1hcmdpbjogY2FsYyg2cHggKyAoMTAgLSA2KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKSAwIDA7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMS42cHg7XG4gICAgICAgICAgICBjb2xvcjogJGZvbnQtbGlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50ZXN0aW1vbmlhbC1zZWN0aW9uIHtcbiAgICAudGVzdGltb25pYWwtY29udGFpbiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDhweCAkZ3JheS1saWdodDtcbiAgICAgICAgcGFkZGluZzogY2FsYygyMHB4ICsgKDMwIC0gMjApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBkaXJlY3Rpb246IHJ0bDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXh0aW1vbmlhbC1pbWFnZSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjVweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGVzdGltb25pYWwtZGV0YWlscyB7XG4gICAgICAgIG1hcmdpbjogMTVweCBhdXRvIDA7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXRhaWxzLWltYWdlcyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICAgICAgICAgIGNvbG9yOiAkZm9udC1saWdodDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmZhLXF1b3RlLWxlZnQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuZmEtcXVvdGUtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBvcztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIodmVydGljYWwpO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBoNSB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuNHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBEYXJrIGFuZCBSVEwgY3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4udGhlbWUtc2V0dGluZyB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHJpZ2h0OiAwO1xuICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgei1pbmRleDogMztcblxuICAgIHVsIHtcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzOHB4O1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuY29sb3ItcGlja2VyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHgtbGFyZ2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBEYXJrIGFuZCBSVEwgY3NzIFN0YXJ0XG4gID09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG4uZGVtby1jb250YWluIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgkYmxhY2sxLCAwLjMpO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuZGVtby1pbWFnZSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygtMTAwJSArIDUwMHB4KSk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb3doO1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBTaG9wIHBhZ2UgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLmN1c3RvbWUtbmF2LXRhYnMge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAxMHB4O1xufVxuXG4uY2F0ZWdvcnktc2Nyb2xsIHtcbiAgICBtYXgtaGVpZ2h0OiAyNTBweDtcbiAgICBvdmVyZmxvdzogYXV0bztcblxuICAgIC8qIHdpZHRoICovXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICB3aWR0aDogNXB4O1xuICAgIH1cblxuICAgIC8qIFRyYWNrICovXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1saWdodDtcbiAgICB9XG5cbiAgICAvKiBIYW5kbGUgKi9cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRzaWx2ZXItbGlnaHQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICB9XG5cbiAgICAvKiBIYW5kbGUgb24gaG92ZXIgKi9cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICB9XG59XG5cbi5jdXN0b21lLWZvcm0tY2hlY2sge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB3aWR0aDogMTdweDtcbiAgICAgICAgaGVpZ2h0OiAxN3B4O1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXkgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMS41cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpjaGVja2VkW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2NoZWNrLnN2Zyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEzcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxufVxuXG4uc2lkZWJhci1pbWFnZSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgIGltZyB7XG4gICAgICAgIGhlaWdodDogNTAwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICB9XG59XG5cbi5jYXRlZ29yeS1vcHRpb24ge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiA0MHB4O1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IC0zMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICB6LWluZGV4OiA3O1xuICAgICAgICBwYWRkaW5nOiBjYWxjKDE1cHggKyAoMzAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgIHJpZ2h0OiAtMzIwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNob3cge1xuICAgICAgICBsZWZ0OiAwO1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ1dHRvbi1jbG9zZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICAuZmVhdGhlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXRlZ29yeS1uYW1lIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAmLmNhdGVnb3J5LXJhdGluZyB7XG4gICAgICAgICAgICAgICAgLmFjY29yZGlvbi1jb2xsYXBzZSB7XG4gICAgICAgICAgICAgICAgICAgIC5hY2NvcmRpb24tYm9keSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuY2F0ZWdvcnktbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZm9ybS1jaGVjayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5yYXRpbmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAucmF0aW5nLWxpc3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy5yYXRpbmctbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZhLXN0YXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ncmF5O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnRoZW1lLWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHllbGxvdztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5jYXRlZ29yeS1wcmljZSB7XG4gICAgICAgICAgICAgICAgLmFjY29yZGlvbi1jb2xsYXBzZSB7XG4gICAgICAgICAgICAgICAgICAgIC5hY2NvcmRpb24tYm9keSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuY2F0ZWdvcnktbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogM3B4IDFweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5maWx0ZXItYWNjb3JkaW9uIHtcbiAgICAgICAgICAgICAgICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgICAgICAgICAgICAgICAgLmFjY29yZGlvbi1ib2R5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMnB4IDZweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGFiZWwtdGFnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGFiZWwtdGFnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheS1kYXJrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE1IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYnRuLWNsb3NlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoOHB4ICsgKDEwIC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmNhdGVnb3J5LWNvbG9yIHtcbiAgICAgICAgICAgICAgICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjJweDtcblxuICAgICAgICAgICAgICAgICAgICAuYWNjb3JkaW9uLWJvZHkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGVnb3J5LWxpc3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IC01cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1vcmFuZ2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JlZW4tMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3ctZGFyaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLXNoYWRlLXNpbHZlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1vcmFuZ2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg3KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JlZW4tMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3ctZGFyaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLXNoYWRlLXNpbHZlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICsuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hY2NvcmRpb24taGVhZGVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDFweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgLmFjY29yZGlvbi1ib2R5IHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgICAgICAuY2F0ZWdvcnktbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6bnRoLWNoaWxkKDkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bm90KC5jb2xsYXBzZWQpIHtcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvbWludXMuc3ZnKTtcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBpbnZlcnQoMSk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9wbHVzLnN2Zyk7XG4gICAgICAgICAgICAgICAgZmlsdGVyOiBpbnZlcnQoMSk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLTEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVtbzEtYmc7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cblxuICAgICAgICAuY2F0ZWdvcnktbmFtZSB7XG4gICAgICAgICAgICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICsuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5hY2NvcmRpb24taGVhZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTRweCA4cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICAgICAgICAgICAgICAuYWNjb3JkaW9uLWJvZHkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAzcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTJweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZm9ybS1jaGVjayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmlsdGVyLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuZmVhdGhlciB7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdW5zZXQ7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcbiAgICB9XG59XG5cbi5oaWRlLWJ1dHRvbiB7XG4gICAgYnV0dG9uIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgcGFkZGluZzogNHB4IDEwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIC5mZWF0aGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoMTgwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcbiAgICB9XG59XG5cbi5zaG9ydC1uYW1lIHtcbiAgICBtYXJnaW46IC01cHg7XG5cbiAgICAubGFiZWwtdGFnIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDNweCAxMnB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ0bi1jbG9zZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoOHB4ICsgKDEwIC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2VsZWN0LWZlYXR1cmVkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtYmx1ZTtcbiAgICBjb2xvcjogJGdyYXktZGFyay0xO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWJsdWU7XG4gICAgICAgIGNvbG9yOiAkZ3JheS1kYXJrLTE7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBwYWRkaW5nOiAwLjM3NXJlbSAyLjI1cmVtIDAuMzc1cmVtIDAuNzVyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICByaWdodDogMTRweDtcblxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jdXN0b21lLW9mZmNhbnZhcyB7XG4gICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgfVxuXG4gICAgLm9mZmNhbnZhcy1oZWFkZXIge1xuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcblxuICAgICAgICBoNSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgLmNhdGVnb3J5LXNwYWNpbmcge1xuICAgICAgICAgICAgLmNhdGVnb3J5LW5hbWUge1xuICAgICAgICAgICAgICAgIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgKy5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhdGVnb3J5LW9wdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IHVuc2V0O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uaW1hZ2Utc2xpZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLmltYWdlLXByb2R1Y3Qge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaW1hZ2UtY29udGFpbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMCAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmlsdGVyLW5hbWUge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBoNCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogbGFyZ2U7XG4gICAgfVxufVxuXG4uZmlsdGVyLWljb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG4uY2F0ZWdvcnktZmlsdGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmNhdGVnb3J5LWxpc3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgLmRyb3Bkb3duIHtcbiAgICAgICAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjMzLCAyMzMsIDIzMywgMC41KTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKDhweCArICgxMCAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIGNhbGMoMTVweCArICgyMCAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgLmRyb3Bkb3duLWxpc3Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgKy5kcm9wZG93bi1saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmlsdGVyLXNob3ctYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBhIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAuZmVhdGhlciB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGg1IHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDEwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxufVxuXG4udG9wLWZpbHRlci1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBsZWZ0OiAtMzAwcHg7XG4gICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgICAgICBib3gtc2hhZG93OiAwIDE1cHggNXB4IDAgcmdiYSg3NywgNzcsIDc3LCAwLjI4KTtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICB9XG5cbiAgICAmLnNob3cge1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KGxnKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5iYWNrLWJ0biB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktbGlnaHQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDE0cHggKyAoMTggLSAxNCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAub25jbGljay10aXRsZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoOHB4ICsgKDEwIC0gOCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxNXB4ICsgKDIwIC0gMTUpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDE1cHg7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDcpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMzBweCAwIDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgKy5vbmNsaWNrLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjEwN1wiO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjI7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKC1uICsgMykge1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAub25jbGljay1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHRvcDogNDBweDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwcHggNXB4IDlweCAzcHggcmdiYSgzMywgMzcsIDQxLCAuMTMpO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jdXN0b20tY29udHJvbCB7XG4gICAgICAgICAgICAgICAgICAgIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZpbHRlci10aXRsZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGNoaW5lc2Utc2lsdmVyLTE7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDYwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYxMDdcIjtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoLW4gKyAzKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5vbmNsaWNrLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAzMHB4O1xuICAgICAgICAgICAgICAgIHRvcDogMzRweDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwcHggMXB4IDlweCAzcHggcmdiYSgyMjgsIDIyOCwgMjI4LCAwLjgxKTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmN1c3RvbS1jb250cm9sIHtcbiAgICAgICAgICAgICAgICAgICAgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAub25jbGljay10aXRsZSB7XG4gICAgICAgICAgICAmLnNob3cge1xuICAgICAgICAgICAgICAgIC5vbmNsaWNrLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZmlsdGVyLXRpdGxlIHtcbiAgICAgICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgICAgICAgLm9uY2xpY2stY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgICsuZm9ybS1jaGVjayB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2F0ZWdvcnktaW1hZ2Uge1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLmVsZWMtaW1hZ2Uge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgd2lkdGg6IDEyMHB4O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2F0ZWdvcnktY29udGFpbiB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTUwcHgpO1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMS4xcHg7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1saXN0IHtcbiAgICAgICAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMTVweDtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogY2lyY2xlO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAxO1xuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mbGl0ZXItbWVudSB7XG4gICAgYnV0dG9uIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDVweCBjYWxjKDEycHggKyAoMjAgLSAxMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LWxpZ2h0O1xuICAgICAgICBtYXJnaW46IDVweDtcblxuICAgICAgICAuZmVhdGhlciB7XG4gICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHJvZHVjdC1ib3gge1xuICAgIC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgICAubWFpbi1wcmljZSB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGlzdGluZy1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGlzdC12aWV3IHtcbiAgICAmLnByb2R1Y3QtYm94IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgLmJhY2sge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtZGV0YWlscyB7XG5cbiAgICAgICAgICAgIC5yYXRpbmctZGV0YWlscyxcbiAgICAgICAgICAgIC5tYWluLXByaWNlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwodGV4dC1hbGlnbiwgbGVmdCwgcmlnaHQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1haW4tcHJpY2Uge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJ0LXdyYXAge1xuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEsXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLmltZy13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAuYmFjayB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zbGlkZS00IHtcbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLXByZXYge1xuICAgICAgICAgICAgbGVmdDogLTcwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCg0eGwpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgbGVmdDogLTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAtNzBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KDR4bCkge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC01cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb2xsZWN0aW9uLWdyaWQtdmlldyB7XG4gICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgdWwge1xuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJsYWNrMTtcblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYW5nZS1zbGlkZXIge1xuICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAuaXJzLS1mbGF0IHtcbiAgICAgICAgLmlycy1saW5lIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmlycy1tYXgge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXk7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pcnMtYmFyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pcnMtaGFuZGxlIHtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pcnMtdG8ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmlycy1mcm9tIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJhbm5lci1kZWF0aWxzIHtcbiAgICAuYmFubmVyLWNvbnRhaW4ge1xuICAgICAgICBwIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTRweCArICgxNSAtIDE0KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1vc3QtcG9wdWxhciB7XG4gICAgbWFyZ2luOiBjYWxjKDM1cHggKyAoNTAgLSAzNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgMCAwO1xuXG4gICAgLnRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3Qtc2xpZGVyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbGlnaHQtYmx1ZTtcblxuICAgICAgICAuc2xpY2stcHJldixcbiAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IC0zNXB4O1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpY2stcHJldiB7XG4gICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgIHJpZ2h0OiA1MHB4O1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDUzXCI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxpc3Qtc3R5bGUge1xuICAgID5kaXYge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1ib3gge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCBjYWxjKDE1cHggKyAoMjAgLSAxNSkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICAgICAgd2lkdGg6IDI1JTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FydC13cmFwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTAwcHgpO1xuXG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yYXRpbmcge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBjYWxjKDhweCArICgxNSAtIDgpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpIDAgMCAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yYXRpbmctZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgJi5yYXRpbmctc2hvcCB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnNpemUtYm94IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZ3JpZC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tYWluLXByaWNlIHtcbiAgICAgICAgICAgICAgICAubGlzdGluZy1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgJi5saXN0aW5nLXNob3Age1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tYWluLXByaWNlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDhweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDhweCAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA0ZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoNnB4ICsgKDEwIC0gNikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSkgY2FsYygxM3B4ICsgKDIwIC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTJweCArICgxNSAtIDEyKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5maWx0ZXItb3B0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLnNlbGVjdC1vcHRpb25zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICA+ZGl2IHtcbiAgICAgICAgICAgICtkaXYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZ3JpZC1vcHRpb25zIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB1bnNldDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgICYuYXZ0aXZlIHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcjogaW52ZXJ0KDEpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDM2cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgK2xpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNhdGVnb3J5LXNpZGUge1xuICAgIHRyYW5zaXRpb246IC4zcyBlYXNlO1xuXG4gICAgJi5zaG93IHtcbiAgICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2U7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLmNhdGVnb3J5LW9wdGlvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWxpZ2h0O1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgICAgIH1cblxuICAgICAgICAuY3VzdG9tZS1mb3JtLWNoZWNrIHtcbiAgICAgICAgICAgIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2F0ZWdvcnktbmFtZSB7XG4gICAgICAgICAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICsuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qKj09PT09PT09PT09PT09PT09PT09PVxuICAgICBQcm9kdWN0IFBhZ2UgQ1NTIFN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuLnByby1wb3B1bGFyIHtcbiAgICAucHJvZHVjdC1zbGlkZXIge1xuICAgICAgICAuc2xpY2stcHJldiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1saWdodCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktbGlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJhdGluZyB7XG4gICAgLmZhLXN0YXIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheSAhaW1wb3J0YW50O1xuXG4gICAgICAgICYudGhlbWUtY29sb3Ige1xuICAgICAgICAgICAgY29sb3I6ICR5ZWxsb3cgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByb2R1Y3QtdGl0bGUge1xuICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLWJvdHRvbTogMTRweDtcblxuICAgICYtMiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE4cHg7XG4gICAgfVxuXG4gICAgJi5odXJyeS10aXRsZSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogdW5zZXQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNoaXBwaW5nLWluZm8ge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGNvbG9yOiAkc2hhZGUtZ3JheTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICB9XG59XG5cbi5wcm9kdWN0LWljb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLnByb2R1Y3Qtc29jaWFsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hZGRlZC1ub3RpZmljYXRpb24ge1xuICAgIHdpZHRoOiAxODBweDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAtMTAwcHg7XG4gICAgcmlnaHQ6IDMwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBwYWRkaW5nOiA2cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3gtc2hhZG93OiAwIDAgMnB4IDFweCAkYm9yZGVyLWNvbG9yO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgei1pbmRleDogOTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgcmlnaHQ6IDEycHg7XG4gICAgfVxuXG4gICAgJi5zaG93IHtcbiAgICAgICAgdG9wOiAzMHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAyNSU7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxufVxuXG4uYWRkZWZmZWN0LXNlY3Rpb24ge1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgJGdyYXktbGlnaHQ7XG5cbiAgICAmLmNhcnRNb3ZlIHtcbiAgICAgICAgLmVycm9yLW1lc3NhZ2Uge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAuc2l6ZS1ib3gge1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBidXR0b25zLXNoYWtlIDAuODJzIGN1YmljLWJlemllcigwLjM2LCAwLjA3LCAwLjE5LCAwLjk3KSBib3RoO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNpemUtYm94IHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrMTtcblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmVycm9yLW1lc3NhZ2Uge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICB9XG5cbiAgICAucXR5LWJveCB7XG4gICAgICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICAgICAgICAgIGZsZXg6IHVuc2V0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTJweCAxMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wcm9kdWN0LWJ1dHRvbnMge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlclxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICB9XG5cbiAgICAuYnRuLXNvbGlkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDQ1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgKy5idG4tc29saWQge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5idG4tYW5pbWF0aW9uIHtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogcmluZyA0cyAwLjdzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2hpcHBpbmctb3JkZXIge1xuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMThweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByb2R1Y3QtY291bnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibHVlO1xuICAgIHBhZGRpbmc6IDEwcHggMTJweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICBpbWcge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDZweDtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDZweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHVsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTRweDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTRweDtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE0cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucmF0aW5nLXNlY3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgIGg2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb2xvci12YXJpYW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgbGkge1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcblxuICAgICAgICArbGkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpc3BlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzaWx2ZXItb3JpZ2luYWw7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBjXCI7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICByaWdodDogNHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDcwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wcmljZS1kZXRhaWwge1xuICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICBjb2xvcjogJGJsYWNrMTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1hcmdpbjogMTVweCAwO1xuXG4gICAgZGVsIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBjb2xvcjogJHNpbHZlci1zYXR1cmF0ZWQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGFiZWwtc2VjdGlvbiB7XG4gICAgbWFyZ2luOiAxMHB4IDA7XG5cbiAgICAuYmFkZ2UtZ3JleS1jb2xvciB7XG4gICAgICAgIHBhZGRpbmc6IDZweCAxMXB4O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICRncmF5LXNhdHVyYXRlZDtcbiAgICB9XG5cbiAgICAubGFiZWwtdGV4dCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2VydmljZS1hY2NvcmlvbiB7XG4gICAgcGFkZGluZzogMjhweDtcblxuICAgIC5hY2NvcmRpb24tY29sbGFwc2Uge1xuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLmFjY29yZGlvbi1ib2R5IHtcbiAgICAgICAgICAgIC5jYXRlZ29yeS1saXN0IHtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgICAgICtsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuc2VydmljZS13cmFwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuc2VydmljZS1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLnNlcnZpY2UtY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmRldGFpbHMtaXRlbXMge1xuICAgIC5jb2xvci1pbWFnZSB7XG4gICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAuaW1hZ2Utc2VsZWN0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmltYWdlLXNlY3Rpb24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDZweCByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZGV0YWlscy1pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAucHJvZHVjdC1pbWFnZS10YWcge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGFiZWwtdGFnIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHggMCAwIDUwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDYge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcblxuICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogLTFweCAycHggMCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGdyYXktbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZGVncmVlLXNlY3Rpb24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLmltYWdlLTM2MCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjUpO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgJi52aWRlb3BsYXktYm94IHtcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IGNvbnRyYXN0KDAuNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZGV0YWlscy1pbWFnZS1vcHRpb24ge1xuICAgICAgICAucGxheS1pY29uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgLmZhLXBsYXkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIoYm90aCk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJsYWNrMTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2xvdGgtZGV0YWlscy1zaXplIHtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiAxMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRldGFpbHMtaW1hZ2UtY29uY2VwdCB7XG4gICAgICAgICAgICBtYXJnaW46IDE1cHggMDtcblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDIwcHggKyAoMjUgLSAyMCkgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnJhdGluZy1udW1iZXIge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwIDAgMDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuXG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRjb2xvcjogJGJsYWNrLCAkYWxwaGE6IDAuMSk7XG5cbiAgICAgICAgICAgICAgICAuZmVhdGhlciB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMnB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgICAgICBmaWxsOiAkeWVsbG93O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHllbGxvdztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByaWNlLXJhdGluZyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrc2lsdmVyO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmVlbjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYm9yZGVyLXByb2R1Y3Qge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAkZ3JheS1saWdodDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDc1JTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50aW1lci01IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IC01cHggMDtcblxuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW46IDVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRpbWVyMSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAuY291bnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9ncmVzcyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1saWdodDtcbiAgICAgICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICAgICAgd2lkdGg6IDcwJTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9ncmVzcy1iYXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbWFnZS1idW5kbGUge1xuICAgICAgICAgICAgLmJ1bmRsZS1pbWcge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIC5pbWFnZS1jb250YWluIHtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDhweCByZ2JhKCRibGFjazEsICRhbHBoYTogMC4xNSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY2hlY2tib3gtZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMThweDtcblxuICAgICAgICAgICAgICAgIC5jaGVja2JveC1saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNsb3RoLXNpemUge1xuICAgICAgICAgICAgaDUge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNob29zZS1zaXplIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAtMTBweDtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrMSwgJGFscGhhOiAwLjIpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2xvdGgtdGltZXIge1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1kZW1vLTQ7XG5cbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNSAtIDEzKSAqICgoMTAwdncgLSAzMDBweCkgLyAoMTYwMCAtIDMwMCkpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI3RpbWUtZGF0ZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgkY29sb3I6ICRibGFjaywgJGFscGhhOiAwLjIpO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTNweCArICgxNSAtIDEzKSAqICgoMTAwdncgLSAzMDBweCkgLyAoMTYwMCAtIDMwMCkpKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2xvdGgtY29sb3Ige1xuICAgICAgICAgICAgLmRyb3Bkb3duLWNvbG9yIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogOXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGNvbG9yOiAkYmxhY2ssICRhbHBoYTogMC4yKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBvcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb3VudGVyLTEge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcblxuICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMHB4IDVweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrc2lsdmVyO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgLmZlYXRoZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAyLjVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLndpc2UtbGlzdCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgLmZlYXRoZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZmVhdGhlciB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FydC1idXR0b24ge1xuICAgICAgICAgICAgLmJ1eS1jYXJ0IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHNldWRvd2g7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEzcHggKyAoMTYgLSAxMykgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE2MDAgLSAzMjApKSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAuZmEtc2hvcHBpbmctY2FydCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYWRkLWNhcnQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoNDBweCArICg1MCAtIDQwKSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTYwMCAtIDMyMCkpKTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgkY29sb3I6ICRibGFjaywgJGFscGhhOiAwLjEpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxM3B4ICsgKDE2IC0gMTMpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxNjAwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBheS1vcHRpb24ge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNoYXJlLWl0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjaGluZXNlLXNpbHZlcjtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyaWdodC1zaWx2ZXItMTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDEycHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgICAgICAgICAgICAgLmZlYXRoZXIge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2hhcmUtb3B0aW9uIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrc2lsdmVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2xvdGgtcmV2aWV3IHtcbiAgICAubmF2LXRhYnMge1xuICAgICAgICBmbGV4LXdyYXA6IGluaXRpYWw7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cbiAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOXB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hpcHBpbmctY2hhcnQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogJGRhcmtzaWx2ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50YWItcGFuZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuXG4gICAgICAgIC5jdXN0b21lci1yZXZpZXctYm94IHtcbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jdXN0b21lci1zZWN0aW9uIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkYm9yZGVyLWNvbG9yLCAkYWxwaGE6IDAuNyk7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDA7XG5cbiAgICAgICAgICAgICAgICAuY3VzdG9tZXItcHJvZmlsZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyOHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjhweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jdXN0b21lci1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuXG4gICAgICAgICAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuZGF0ZS1jdXN0byB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmN1c3RvbWVyLXJhdGluZyB7XG4gICAgICAgICAgICAucmF0aW5nLXByb2dlc3Mge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIxcHg7XG5cbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIC5wcm9ncmVzcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTJweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLnByb2dyZXNzLWJhciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50YWJsZS1wYW5lIHtcbiAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICAmLmJnLWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBybyB7XG4gICAgICAgICAgICAudGFibGUtcGFydCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcblxuICAgICAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRmb250LWxpZ2h0O1xuXG4gICAgICAgICAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5xdWVzdGlvbi1hbnN3ZXIge1xuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjZweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDI2cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICAgICAgICAgICAgICAgIC5xdWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5mYS1xdWVzdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleF9jb21tb247XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLnF1ZS1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC45cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGZvbnQtbGlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNwZWNpLWxpc3Qge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyOHB4O1xuXG4gICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnN1Ym1pdC1idXR0b24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG5cbiAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgdGJvZHkge1xuICAgICAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMS4ycmVtIDAuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxLjJyZW0gMC41cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5yZXZpZXctYm94IHtcbiAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRsaWdodC10aGVtZS1jb2xvciAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wYXJ0IHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDBweCArICgyMCAtIDApICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuXG4gICAgLmlubmVyLXRpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICB9XG59XG5cbi5jdXN0b21lLW1vZGFsIHtcbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cbiAgICAgICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgICAuc2hhcmUtaXQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAxcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJlY2VudGx5LXB1cmNoYXNlIHtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3R0b206IC0yMDBweDtcbiAgICBsZWZ0OiAxMHB4O1xuICAgIHBhZGRpbmc6IDEycHg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgei1pbmRleDogNztcbiAgICBib3gtc2hhZG93OiAwIDAgNHB4IDAgcmdiYSgkYmxhY2sxLCAkYWxwaGE6IDAuMik7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC42cyBlYXNlO1xuXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgIH1cblxuXG4gICAgQGluY2x1ZGUgbXEtbWF4KDJ4cykge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBtYXJnaW46IDAgMTNweDtcbiAgICB9XG5cbiAgICAmLnNob3cge1xuICAgICAgICBib3R0b206IDEwcHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjZzIGVhc2U7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KG1kKSB7XG4gICAgICAgICAgICBib3R0b206IDgwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoeHMpIHtcbiAgICAgICAgICAgIGJvdHRvbTogNjRweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAyMiU7XG4gICAgfVxuXG4gICAgLmNsb3NlLXBvcHVwIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogN3B4O1xuICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgbGVmdDogN3B4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1lZGlhLWJvZHkge1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKDEycHggKyAoMTYgLSAxMikgKiAoKDEwMHZ3IC0gMzIwcHgpIC8gKDE5MjAgLSAzMjApKSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1uYW1lIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMnB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICAudGltZUFnbyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnN0aWNreUNhcnQge1xuICAgIHBhZGRpbmctYm90dG9tOiA5NHB4O1xuXG4gICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5zdGlja3ktYm90dG9tLWNhcnQge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgfVxuXG4gICAgLnJlY2VudGx5LXB1cmNoYXNlIHtcbiAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICAgIGJvdHRvbTogMTEwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGFwLXRvcCB7XG4gICAgICAgIGJvdHRvbTogMTEwcHg7XG4gICAgfVxufVxuXG4ub3V0bGluZS1idXR0b24ge1xuICAgIHBhZGRpbmc6IDEycHggNDVweDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgIEBpbmNsdWRlIG1xLW1heChtZCkge1xuICAgICAgICBwYWRkaW5nOiAxMnB4O1xuICAgIH1cbn1cblxuLnN0aWNreS1ib3R0b20tY2FydCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogLTE2MHB4O1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICB6LWluZGV4OiA5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAxMnB4IDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDNweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE2KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuXG4gICAgLmNhcnQtY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xLW1heChzbSkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiB0b3A7XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sxO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heChsZykge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xLW1heCh4cykge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNSxcbiAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogM3B4O1xuXG4gICAgICAgICAgICAgICAgZGVsIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDdweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWRlYWZ1bHQpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNlbGVjdGlvbi1zZWN0aW9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwIDEwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHNtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ibHVlO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbXEtbWF4KHhsKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE5MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgobWQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFkZC1idG4ge1xuICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhfY29tbW9uO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4X2NvbW1vbjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi53aXNobGlzdC1idG4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjazE7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXRoZW1lLWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICthIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcS1tYXgoc20pIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcblxuICAgICAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogN3B4O1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDdweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wcm9kdWN0LWltYWdlIHtcbiAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgICAgICAgLmNhcnQtd3JhcCB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4zcztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNHM7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBkaXJlY3Rpb246IHJ0bDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAuY2FydC13cmFwIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcih2ZXJ0aWNhbCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG93aDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAuNHMgZWFzZTtcblxuICAgICAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwcHgpO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAuNHMgZWFzZTtcblxuICAgICAgICAgICAgICAgICAgICArbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmZlYXRoZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrMTtcblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYygxNHB4ICsgKDE2IC0gMTQpICogKCgxMDB2dyAtIDMyMHB4KSAvICgxOTIwIC0gMzIwKSkpO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDRweCAwIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMTVweCArICgxNiAtIDE1KSAqICgoMTAwdncgLSAzMjBweCkgLyAoMTkyMCAtIDMyMCkpKTtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICArLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cbn1cblxuLy8gMzYwIERlZ3JlZSBTdGFydFxuLndyYXBwZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogJGRhcmtzaWx2ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICN0aHJlZXNpeHR5IHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIH1cblxuICAgIC5idXR0b25zLXdyYXBwZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDEyMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjazE7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQ29tcGFyZSBTZWN0aW9uIFN0YXJ0XG4uY29tcGFyZS10YWJsZSB7XG4gICAgdGJvZHkge1xuICAgICAgICB0ciB7XG5cbiAgICAgICAgICAgIHRoLFxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMjBweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuOXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYudGFibGUtaW1hZ2Utc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5pbWFnZS1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDhweCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAuYnRuLXNvbGlkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA3cHggMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYucHJvZHVjdC1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiQGtleWZyYW1lcyByb3VuZGVkIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgIDUwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJ1bi1zaG9lcyB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSB0cmFuc2xhdGUoMCwgMCk7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gICAgfVxuXG4gICAgNzUlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZykgdHJhbnNsYXRlKDAsIDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyByaXBwbGUge1xuICAgIDAlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKCRsaWdodC10aGVtZS1jb2xvciwgMC4zKSxcbiAgICAgICAgICAgIDAgMCAwIDFlbSByZ2JhKCRsaWdodC10aGVtZS1jb2xvciwgMC4zKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMWVtIHJnYmEoJGxpZ2h0LXRoZW1lLWNvbG9yLCAwLjMpLFxuICAgICAgICAgICAgMCAwIDAgM2VtIHJnYmEoJGxpZ2h0LXRoZW1lLWNvbG9yLCAwLjMpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyByaXBwbGUtMSB7XG4gICAgMCUge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEoJGRlbW8tNCwgMC4zKSwgMCAwIDAgMWVtIHJnYmEoJGRlbW8tNCwgMC4zKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMWVtIHJnYmEoJGRlbW8tNCwgMC4zKSwgMCAwIDAgMS41ZW0gcmdiYSgkZGVtby00LCAwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgcmlwcGxlLTIge1xuICAgIDAlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyksIDAgMCAwIDFlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyksIDAgMCAwIDEuNWVtIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZS1mbG93ZXIge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgICB9XG5cbiAgICAyNSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg4ZGVnKTtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICA3NSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBiYWNrIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIH1cblxuICAgIDcwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTNweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyByZWdNYXNrIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KSBzY2FsZSgwKTtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDBweCwgMTAwcHgpIHNjYWxlKDAuNSk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KSBzY2FsZSgxKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgcmVnTWFza1Ige1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAwcHgpIHNjYWxlKDEpO1xuICAgIH1cblxuICAgIDUwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDE1MHB4LCAtMTUwcHgpIHNjYWxlKDAuNSk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KSBzY2FsZSgwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgcmVnVGFnIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KSByb3RhdGUoMGRlZyk7XG4gICAgfVxuXG4gICAgMjUlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LCAyNXB4KSByb3RhdGUoMTEuMjVkZWcpO1xuICAgIH1cblxuICAgIDUwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC04OHB4LCA0MHB4KSByb3RhdGUoMjIuNWRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC05NnB4LCA4cHgpIHJvdGF0ZSg0NWRlZyk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJlZ1RhZzIge1xuICAgIDAlIHtcbiAgICAgICAgd2lkdGg6IDE0MHB4O1xuICAgICAgICBoZWlnaHQ6IDE0MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTQwcHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAycHggNXB4IC0xcHggcmdiYSgkYmxhY2sxLCAwLjQ1KTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDJweCA1cHggLTFweCByZ2JhKCRibGFjazEsIDApO1xuICAgICAgICBsaW5lLWhlaWdodDogNjhweDtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgcmVnVGFnUiB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOTZweCwgOHB4KSByb3RhdGUoNDVkZWcpO1xuICAgIH1cblxuICAgIDI1JSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC04OHB4LCA0MHB4KSByb3RhdGUoMjIuNWRlZyk7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LCAyNXB4KSByb3RhdGUoMTEuMjVkZWcpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDBweCkgcm90YXRlKDBkZWcpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyByZWdUYWcyUiB7XG4gICAgMCUge1xuICAgICAgICB3aWR0aDogNzBweDtcbiAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMnB4IDVweCAtMXB4IHJnYmEoJGJsYWNrMSwgMCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2OHB4O1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB3aWR0aDogMTQwcHg7XG4gICAgICAgIGhlaWdodDogMTQwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNDBweDtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDJweCA1cHggLTFweCByZ2JhKCRibGFjazEsIDAuNDUpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBzaGFrZSB7XG5cbiAgICBmcm9tLFxuICAgIHRvIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB9XG5cbiAgICAxMCUsXG4gICAgMzAlLFxuICAgIDUwJSxcbiAgICA3MCUsXG4gICAgOTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gICAgfVxuXG4gICAgMjAlLFxuICAgIDQwJSxcbiAgICA2MCUsXG4gICAgODAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJ1dHRvbnMtc2hha2Uge1xuXG4gICAgMTAlLFxuICAgIDkwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTFweCwgMCwgMCk7XG4gICAgfVxuXG4gICAgMjAlLFxuICAgIDgwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMnB4LCAwLCAwKTtcbiAgICB9XG5cbiAgICAzMCUsXG4gICAgNTAlLFxuICAgIDcwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTJweCwgMCwgMCk7XG4gICAgfVxuXG4gICAgNDAlLFxuICAgIDYwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMnB4LCAwLCAwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgcmluZyB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMCk7XG4gICAgfVxuXG4gICAgMSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMTVkZWcpO1xuICAgIH1cblxuICAgIDMlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC0xNGRlZyk7XG4gICAgfVxuXG4gICAgNSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMTdkZWcpO1xuICAgIH1cblxuICAgIDclIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC0xNmRlZyk7XG4gICAgfVxuXG4gICAgOSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMTVkZWcpO1xuICAgIH1cblxuICAgIDExJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWigtMTRkZWcpO1xuICAgIH1cblxuICAgIDEzJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWigxM2RlZyk7XG4gICAgfVxuXG4gICAgMTUlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC0xMmRlZyk7XG4gICAgfVxuXG4gICAgMTclIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKDEyZGVnKTtcbiAgICB9XG5cbiAgICAxOSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooLTEwZGVnKTtcbiAgICB9XG5cbiAgICAyMSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooOWRlZyk7XG4gICAgfVxuXG4gICAgMjMlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC04ZGVnKTtcbiAgICB9XG5cbiAgICAyNSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooN2RlZyk7XG4gICAgfVxuXG4gICAgMjclIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC01ZGVnKTtcbiAgICB9XG5cbiAgICAyOSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooNWRlZyk7XG4gICAgfVxuXG4gICAgMzElIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC00ZGVnKTtcbiAgICB9XG5cbiAgICAzMyUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooM2RlZyk7XG4gICAgfVxuXG4gICAgMzUlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC0yZGVnKTtcbiAgICB9XG5cbiAgICAzNyUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMWRlZyk7XG4gICAgfVxuXG4gICAgMzklIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC0xZGVnKTtcbiAgICB9XG5cbiAgICA0MSUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMWRlZyk7XG4gICAgfVxuXG4gICAgNDMlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGFuaW1hdGVDb250YWluZXIge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggNjVweCByZ2JhKCR3aGl0ZSwgMC4yNSkgaW5zZXQsXG4gICAgICAgICAgICAwcHggMHB4IDBweCA2NXB4IHJnYmEoJHdoaXRlLCAwLjI1KSBpbnNldDtcbiAgICB9XG5cbiAgICAyNSUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDY1cHggcmdiYSgkd2hpdGUsIDAuMjUpIGluc2V0LFxuICAgICAgICAgICAgMHB4IDBweCAwcHggNjVweCByZ2JhKCR3aGl0ZSwgMC4yNSkgaW5zZXQ7XG4gICAgfVxuXG4gICAgNDMuNzUlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjE1KTtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggNDMuMzM0cHggcmdiYSgkd2hpdGUsIDAuMjUpIGluc2V0LFxuICAgICAgICAgICAgMHB4IDBweCAwcHggNjVweCByZ2JhKCR3aGl0ZSwgMC4yNSkgaW5zZXQ7XG4gICAgfVxuXG4gICAgNjIuNSUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAwcHggcmdiYSgkd2hpdGUsIDAuMjUpIGluc2V0LFxuICAgICAgICAgICAgMHB4IDBweCAwcHggMjEuNjY3cHggcmdiYSgkd2hpdGUsIDAuMjUpIGluc2V0O1xuICAgIH1cblxuICAgIDgxLjI1JSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDBweCByZ2JhKCR3aGl0ZSwgMC4yNSkgaW5zZXQsXG4gICAgICAgICAgICAwcHggMHB4IDBweCAwcHggcmdiYSgkd2hpdGUsIDAuMjUpIGluc2V0O1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAwcHggcmdiYSgkd2hpdGUsIDAuMjUpIGluc2V0LFxuICAgICAgICAgICAgMHB4IDBweCAwcHggMHB4IHJnYmEoJHdoaXRlLCAwLjI1KSBpbnNldDtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgYW5pbWF0ZUNoZWNrIHtcbiAgICBmcm9tIHtcbiAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDgwO1xuICAgIH1cblxuICAgIHRvIHtcbiAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGFuaW1hdGVTaGFkb3cge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTUlO1xuICAgIH1cblxuICAgIDI1JSB7XG4gICAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgfVxuXG4gICAgNDMuNzUlIHtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgaGVpZ2h0OiA3JTtcbiAgICAgICAgb3BhY2l0eTogMC4zNTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgd2lkdGg6IDg1JTtcbiAgICAgICAgaGVpZ2h0OiAxNSU7XG4gICAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1vdmVyIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03cHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmbG9hdGluZyB7XG4gICAgZnJvbSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG5cbiAgICB0byB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTg3JSk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBtb3ZlRG93biB7XG4gICAgZnJvbSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMDAlKTtcbiAgICB9XG5cbiAgICB0byB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBwZW5kdWx1bSB7XG4gICAgMjAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNjBkZWcpO1xuICAgIH1cblxuICAgIDQwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00MGRlZyk7XG4gICAgfVxuXG4gICAgNjAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjBkZWcpO1xuICAgIH1cblxuICAgIDgwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC01ZGVnKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgY2F0SGkge1xuXG4gICAgMCUsXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTtcbiAgICB9XG5cbiAgICAxMCUsXG4gICAgNjAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgY2F0U2hhZG93IHtcblxuICAgIDAlLFxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0MHB4LCAtMzVweCkgc2NhbGUoMC4zKTtcbiAgICB9XG5cbiAgICAxMCUsXG4gICAgNjAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTVweCwgMTBweCkgc2NhbGUoMC41KTtcbiAgICB9XG5cbiAgICA2MCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBtb3ZlQm94IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xNTBweCkgcm90YXRlKDIwZGVnKTtcbiAgICB9XG5cbiAgICAxNSUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMDBweCkgcm90YXRlKC0xNWRlZyk7XG4gICAgfVxuXG4gICAgMjUlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMjUwcHgpIHJvdGF0ZSgxMGRlZyk7XG4gICAgfVxuXG4gICAgMzAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMzUwcHgpIHJvdGF0ZSgtNWRlZyk7XG4gICAgfVxuXG4gICAgMzUlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgNTcwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICA0NSUsXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDU3MHB4KTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgcGFyYWNodXRlIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xNTBweCkgcm90YXRlKDIwZGVnKSBzY2FsZSgwLjgpO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIDE1JSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwMHB4KSByb3RhdGUoLTE1ZGVnKSBzY2FsZSgxKTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAyNSUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAyNTBweCkgcm90YXRlKDEwZGVnKTtcbiAgICB9XG5cbiAgICAzMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAzNTBweCkgcm90YXRlKC01ZGVnKTtcbiAgICB9XG5cbiAgICAzMyUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA0NjBweCkgcm90YXRlKDBkZWcpIHNjYWxlKDAuOSk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgNDUlLFxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA0ODBweCk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbk91dCB7XG5cbiAgICA1JSxcbiAgICAxMiUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIDIwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGNsb3VkcyB7XG4gICAgZnJvbSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xNTAlLCAwKTtcbiAgICB9XG5cbiAgICB0byB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDE1MCUsIDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyByb3VuZCB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICAgcmVzcG9uc2l2ZSBjc3Mgc3RhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09KiovXG5AbWVkaWEgKG1pbi13aWR0aDogMTQzMHB4KSB7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogMTQwMHB4O1xuICAgIH1cbn0iLCIvKio9PT09PT09PT09PT09PT09PT09PT1cbiAgICBSVEwgY3NzIHN0YXJ0XG49PT09PT09PT09PT09PT09PT09PT09PT09PSoqL1xuW2Rpcj1cInJ0bFwiXSB7XG5cbiAgICBvbCxcbiAgICB1bCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLnNsaWNrLXNsaWRlciB7XG4gICAgICAgIGRpcmVjdGlvbjogbHRyO1xuICAgIH1cblxuICAgIC5zbGljay1zbGlkZSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbn0iXX0= */
/*# sourceMappingURL=demo6.css.map */
