/*!
 * emark-boilerplate
 * a simple but structured scss boilerplate for front-end sedi's
 * @author niels mensink
 * @version 1.0.0
 * Copyright 2022. MIT licensed.
 */

@import url("https://fonts.googleapis.com/css2?family=Alegreya+Sans:ital,wght@0,300;0,400;0,500;0,700;0,800;1,300;1,400;1,700&family=Lato:ital,wght@0,300;0,400;0,700;0,800;1,300;1,400;1,700&family=Source+Sans+Pro:ital,wght@0,300;0,400;0,600;0,700;1,300;1,400;1,600&display=swap");
* {
    box-sizing: border-box
}

body {
    font-family: Lato, sans-serif;
    background: #f8f4f3;
    font-weight: 300;
    font-size: 16px;
    line-height: 26px;
    letter-spacing: .05em
}

body,
body a {
    color: #292b29
}

body a {
    text-decoration: none
}

body h1 {
    font-size: 42px;
    line-height: 48px
}

body h1,
body h3 {
    font-family: Lato, sans-serif;
    font-weight: 500
}

body h3 {
    font-size: 6vw;
    line-height: 8vw
}

@media (min-width:481px) {
    body h3 {
        font-size: 24px;
        line-height: 32px
    }
}

body p {
    margin: 0
}

body .bold {
    font-weight: 800
}

body.tassimo {
    font-family: Source Sans Pro, sans-serif;
    letter-spacing: 0;
    font-weight: 500
}

body.tassimo h1,
body.tassimo h2,
body.tassimo h3 {
    font-family: Alegreya Sans, sans-serif
}

body.tassimo h1 {
    font-size: 24px;
    font-weight: 700
}

body {
    display: flex;
    height: 100vh;
    min-height: 100vh;
    flex-direction: column;
    justify-content: space-between
}

body main {
    background: #f8f4f3;
    padding: 40px 10px
}

@media (min-width:481px) {
    body main {
        padding: 50px 140px
    }
}

@media (min-width:1024px) {
    body main {
        margin: 40px 150px;
    }
}

body .main {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: center
}

@media (min-width:1025px) {
    body .main {
        flex-wrap: nowrap;
        flex-basis: 0
    }
}

body .content-area {
    background: #fff;
    padding: 10px;
    flex-basis: 100%;
    border: 1px solid #dedede;
    border-radius: 4px
}

@media (min-width:481px) {
    body .content-area {
        max-width: 500px;
        padding: 20px
    }
}

body .content-area .content-title {
    text-align: center
}

@media (min-width:481px) {
    body .content-area .content-title {
        text-align: left
    }
}

body .content-area .content-title h1 {
    margin: 0
}

body .content-area .content-text {
    padding: 10px 0 16px;
    text-align: center
}

@media (min-width:481px) {
    body .content-area .content-text {
        text-align: left
    }
}

body .image-area {
    width: 100%;
    background: #fff;
    padding: 20px;
    flex-basis: 100%
}

body .form {
    padding: 20px 0;
    width: 100%
}

@media (min-width:481px) {
    body .form {
        max-width: 500px
    }
}

body .form .form-row {
    text-align: center
}

@media (min-width:481px) {
    body .form .form-row {
        text-align: left
    }
}

body .form .form-row.text {
    background: #f5f5f5;
    padding: 20px
}

body.tassimo,
body.tassimo main {
    background: #fff
}

body.tassimo main .content-area {
    background: hsla(0, 0%, 85%, .1);
    border-radius: 10px
}

body .main .content-area .error-txt,
body .main .form .error-txt {
    color: #e22c43;
    display: none
}

body .main .content-area .error-txt.error-spacer,
body .main .form .error-txt.error-spacer {
    margin: 8px 0 0
}

body .main .content-area .error-chk,
body .main .content-area .error-rdo:before,
body .main .form .error-chk,
body .main .form .error-rdo:before {
    box-shadow: 0 0 0 1px #d40c11!important;
    background-color: rgba(212, 5, 15, .1)!important
}

body .main .content-area .unsub-txt,
body .main .form .unsub-txt {
    font-size: 14px;
    margin-bottom: 13px
}

body .main .content-area .show,
body .main .form .show {
    display: block
}

body .main .content-area .show:before,
body .main .form .show:before {
    box-shadow: 0 0 0 1px #d40c11!important;
    background-color: rgba(212, 5, 15, .1)!important
}

body .main .content-area .form-row,
body .main .form .form-row {
    display: grid;
    grid-template-columns: 1fr;
    margin: 0 0 17px
}

body .main .content-area .form-row>:first-child,
body .main .form .form-row>:first-child {
    margin: 0 0 16px
}

@media (max-width:480px) {
    body .main .content-area .form-row>:first-child label:first-child,
    body .main .form .form-row>:first-child label:first-child {
        margin: 0 0 16px
    }
}

body .main .content-area .form-row .group-text,
body .main .form .form-row .group-text {
    display: grid;
    grid-template-columns: 1fr
}

body .main .content-area .form-row .checkbox-row,
body .main .content-area .form-row .radio-row,
body .main .form .form-row .checkbox-row,
body .main .form .form-row .radio-row {
    margin: 0 0 16px
}

body .main .content-area .form-row.no-margin>:first-child,
body .main .form .form-row.no-margin>:first-child {
    margin: 0
}

body .main .content-area .form-row.text,
body .main .form .form-row.text {
    display: none
}

body .main .content-area .form-row.text.is-visible,
body .main .form .form-row.text.is-visible {
    display: block
}

body .main .content-area .divider,
body .main .form .divider {
    padding: 30px 0
}

body .main .content-area .divider .divider-line,
body .main .form .divider .divider-line {
    height: 1px;
    width: 100%;
    background-color: #f2f2f2;
    display: block
}

body .main .content-area .grid-checkbox-box .checkbox-row,
body .main .form .grid-checkbox-box .checkbox-row {
    display: flex;
    justify-content: flex-start;
    padding: 0 4vw 0 6vw
}

@media only screen and (min-width:481px) {
    body .main .content-area .grid-checkbox-box .checkbox-row,
    body .main .form .grid-checkbox-box .checkbox-row {
        padding: 0
    }
}

body .main .content-area .grid-checkbox-box input,
body .main .form .grid-checkbox-box input {
    position: absolute;
    left: -9999px
}

body .main .content-area .grid-checkbox-box input+label,
body .main .form .grid-checkbox-box input+label {
    position: relative;
    padding-left: 35px;
    cursor: pointer;
    line-height: 28px;
    display: inline-block;
    color: #292b29
}

body .main .content-area .grid-checkbox-box input+label:before,
body .main .form .grid-checkbox-box input+label:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 22px;
    height: 22px;
    border: 2px solid #8d9c8c;
    border-radius: 4px;
    background: #fff
}

body .main .content-area .grid-checkbox-box input+label:after,
body .main .form .grid-checkbox-box input+label:after {
    content: "";
    position: absolute;
    left: 9px;
    top: 3px;
    width: 5px;
    height: 12px;
    border: solid #fff;
    border-width: 0 3px 3px 0;
    transform: rotate(45deg)
}

body .main .content-area .grid-checkbox-box input:checked+label:before,
body .main .form .grid-checkbox-box input:checked+label:before {
    box-shadow: none;
    background: #8d9c8c
}

body .main .content-area .grid-checkbox-box input:not(:checked)+label:after,
body .main .form .grid-checkbox-box input:not(:checked)+label:after {
    opacity: 0
}

body .main .content-area .grid-checkbox-box input:checked+label:after,
body .main .form .grid-checkbox-box input:checked+label:after {
    opacity: 1
}

body .main .content-area .grid-radio-box .radio-row,
body .main .form .grid-radio-box .radio-row {
    display: flex;
    justify-content: flex-start
}

@media only screen and (min-width:481px) {
    body .main .content-area .grid-radio-box .radio-row,
    body .main .form .grid-radio-box .radio-row {
        padding: 0
    }
}

body .main .content-area .grid-radio-box .radio-row:last-child,
body .main .form .grid-radio-box .radio-row:last-child {
    margin: 0
}

body .main .content-area .grid-radio-box input,
body .main .form .grid-radio-box input {
    position: absolute;
    left: -9999px
}

body .main .content-area .grid-radio-box input+label,
body .main .form .grid-radio-box input+label {
    position: relative;
    padding-left: 35px;
    cursor: pointer;
    line-height: 28px;
    display: inline-block;
    color: #292b29
}

body .main .content-area .grid-radio-box input+label:before,
body .main .form .grid-radio-box input+label:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 22px;
    height: 22px;
    border: 2px solid #8d9c8c;
    border-radius: 100%;
    background: #fff
}

body .main .content-area .grid-radio-box input+label:after,
body .main .form .grid-radio-box input+label:after {
    content: "";
    width: 14px;
    height: 14px;
    background: #8d9c8c;
    position: absolute;
    top: 6px;
    left: 6px;
    border-radius: 100%;
    transition: all .2s ease
}

body .main .content-area .grid-radio-box input:checked+label:before,
body .main .form .grid-radio-box input:checked+label:before {
    box-shadow: none
}

body .main .content-area .grid-radio-box input:not(:checked)+label:after,
body .main .form .grid-radio-box input:not(:checked)+label:after {
    opacity: 0;
    transform: scale(0)
}

body .main .content-area .grid-radio-box input:checked+label:after,
body .main .form .grid-radio-box input:checked+label:after {
    opacity: 1;
    transform: scale(1)
}

body .main .content-area .textarea,
body .main .content-area .textfield,
body .main .form .textarea,
body .main .form .textfield {
    margin: 0
}

body .main .content-area .textarea .column,
body .main .content-area .textfield .column,
body .main .form .textarea .column,
body .main .form .textfield .column {
    max-width: 100%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column
}

@media only screen and (min-width:481px) {
    body .main .content-area .textarea .column,
    body .main .content-area .textfield .column,
    body .main .form .textarea .column,
    body .main .form .textfield .column {
        flex-wrap: nowrap
    }
}

body .main .content-area .textarea label,
body .main .content-area .textfield label,
body .main .form .textarea label,
body .main .form .textfield label {
    position: relative;
    width: 100%
}

body .main .content-area .textarea label span,
body .main .content-area .textfield label span,
body .main .form .textarea label span,
body .main .form .textfield label span {
    position: absolute;
    top: -1px;
    left: 20px;
    transform: translateY(8px);
    transition-duration: .3s;
    color: #c6c6c6
}

body .main .content-area .textarea input,
body .main .content-area .textarea textarea,
body .main .content-area .textfield input,
body .main .content-area .textfield textarea,
body .main .form .textarea input,
body .main .form .textarea textarea,
body .main .form .textfield input,
body .main .form .textfield textarea {
    width: 100%;
    padding: 18px 22px 0;
    box-sizing: border-box;
    background-color: #fff;
    box-shadow: 0 0 0 2px #dedede;
    border: none;
    border-radius: 4px
}

body .main .content-area .textarea input:focus,
body .main .content-area .textarea textarea:focus,
body .main .content-area .textfield input:focus,
body .main .content-area .textfield textarea:focus,
body .main .form .textarea input:focus,
body .main .form .textarea textarea:focus,
body .main .form .textfield input:focus,
body .main .form .textfield textarea:focus {
    outline: none;
    box-shadow: 0 0 0 3px #5a5e5a;
    border: 0
}

body .main .content-area .textarea input:focus~span,
body .main .content-area .textarea textarea:focus~span,
body .main .content-area .textfield input:focus~span,
body .main .content-area .textfield textarea:focus~span,
body .main .form .textarea input:focus~span,
body .main .form .textarea textarea:focus~span,
body .main .form .textfield input:focus~span,
body .main .form .textfield textarea:focus~span {
    font-size: 10px;
    color: #292b29;
    padding-top: 0;
    margin-top: -4px
}

body .main .content-area .textarea input::placeholder,
body .main .content-area .textarea textarea::placeholder,
body .main .content-area .textfield input::placeholder,
body .main .content-area .textfield textarea::placeholder,
body .main .form .textarea input::placeholder,
body .main .form .textarea textarea::placeholder,
body .main .form .textfield input::placeholder,
body .main .form .textfield textarea::placeholder {
    opacity: 0
}

body .main .content-area .textarea input:not(:placeholder-shown)+span,
body .main .content-area .textarea label:focus-within>span,
body .main .content-area .textfield input:not(:placeholder-shown)+span,
body .main .content-area .textfield label:focus-within>span,
body .main .form .textarea input:not(:placeholder-shown)+span,
body .main .form .textarea label:focus-within>span,
body .main .form .textfield input:not(:placeholder-shown)+span,
body .main .form .textfield label:focus-within>span {
    transform: translateY(0)
}

body .main .content-area .textarea textarea:not(:placeholder-shown)+span,
body .main .content-area .textfield textarea:not(:placeholder-shown)+span,
body .main .form .textarea textarea:not(:placeholder-shown)+span,
body .main .form .textfield textarea:not(:placeholder-shown)+span {
    display: none
}

body .main .content-area .textarea textarea,
body .main .form .textarea textarea {
    height: 100px
}

body .main .content-area .textarea span,
body .main .form .textarea span {
    font-size: 13px
}

body .main .content-area .textarea.is-hidden,
body .main .form .textarea.is-hidden {
    display: none
}

body .main .content-area input[type=submit],
body .main .form input[type=submit] {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

body .main .content-area input[type=submit]:focus,
body .main .form input[type=submit]:focus {
    display: block
}

body .main .content-area .btn,
body .main .form .btn {
    padding-top: 10px
}

body .main .content-area .btn .btn-label,
body .main .form .btn .btn-label {
    display: inline-block;
    background: #000;
    color: #fff;
    padding: 10px 40px 8px;
    text-decoration: none;
    cursor: pointer;
    font-weight: 700;
    transition: background-color .5s ease-out;
    text-transform: uppercase
}

body .main .content-area .form-row {
    margin: 0
}

body .main .content-area .form-row .column {
    margin: 17px 0 0
}

body.lor .main .content-area .grid-checkbox-box input+label,
body.lor .main .content-area .grid-radio-box input+label,
body.lor .main .form .grid-checkbox-box input+label,
body.lor .main .form .grid-radio-box input+label {
    color: #292b29
}

body.lor .main .content-area .grid-checkbox-box input+label:before,
body.lor .main .content-area .grid-radio-box input+label:before,
body.lor .main .form .grid-checkbox-box input+label:before,
body.lor .main .form .grid-radio-box input+label:before {
    border: 2px solid #ac965a
}

body.lor .main .content-area .grid-checkbox-box input+label:after,
body.lor .main .content-area .grid-radio-box input+label:after,
body.lor .main .form .grid-checkbox-box input+label:after,
body.lor .main .form .grid-radio-box input+label:after {
    background: #ac965a
}

body.lor .main .content-area .grid-checkbox-box input:checked+label:before,
body.lor .main .content-area .grid-radio-box input:checked+label:before,
body.lor .main .form .grid-checkbox-box input:checked+label:before,
body.lor .main .form .grid-radio-box input:checked+label:before {
    border: 2px solid #ac965a
}

body.lor .main .content-area .grid-radio-box,
body.lor .main .form .grid-radio-box {
    margin: 0
}

body.lor .main .content-area .grid-radio-box input+label:before,
body.lor .main .form .grid-radio-box input+label:before {
    width: 18px;
    height: 18px;
    margin-top: 3px
}

body.lor .main .content-area .grid-radio-box input+label:after,
body.lor .main .form .grid-radio-box input+label:after {
    width: 8px;
    height: 8px;
    top: 10px;
    left: 7px
}

body.lor .main .content-area .grid-checkbox-box input:checked+label:before,
body.lor .main .form .grid-checkbox-box input:checked+label:before {
    background: #ac965a
}

body.lor .main .content-area .btn .btn-btn .btn-label,
body.lor .main .form .btn .btn-btn .btn-label {
    border: none;
    background: none;
    background: #ac965a;
    color: #fff;
    border: 1px solid #ac965a;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 300
}

body.lor .main .content-area .btn .btn-btn .btn-label:hover,
body.lor .main .form .btn .btn-btn .btn-label:hover {
    background: #8d7b4b;
    border: 1px solid #8d7b4b
}

body.lor .main .content-area .btn.unsubscribe-btn .btn-btn .btn-label,
body.lor .main .form .btn.unsubscribe-btn .btn-btn .btn-label {
    background: #fff;
    border: 1px solid #000;
    color: #000;
    font-size: 10px;
    padding: 5px 20px
}

body.lor .main .content-area .btn.unsubscribe-btn .btn-btn .btn-label:hover,
body.lor .main .form .btn.unsubscribe-btn .btn-btn .btn-label:hover {
    background: #000;
    border: 1px solid #000;
    color: #fff
}

body.tassimo .main .content-area .grid-checkbox-box input+label,
body.tassimo .main .content-area .grid-radio-box input+label,
body.tassimo .main .form .grid-checkbox-box input+label,
body.tassimo .main .form .grid-radio-box input+label {
    color: #292b29
}

body.tassimo .main .content-area .grid-checkbox-box input+label:before,
body.tassimo .main .content-area .grid-radio-box input+label:before,
body.tassimo .main .form .grid-checkbox-box input+label:before,
body.tassimo .main .form .grid-radio-box input+label:before {
    border: 2px solid #6eaa27
}

body.tassimo .main .content-area .grid-checkbox-box input+label:after,
body.tassimo .main .content-area .grid-radio-box input+label:after,
body.tassimo .main .form .grid-checkbox-box input+label:after,
body.tassimo .main .form .grid-radio-box input+label:after {
    background: #6eaa27
}

body.tassimo .main .content-area .grid-checkbox-box input:checked+label:before,
body.tassimo .main .content-area .grid-radio-box input:checked+label:before,
body.tassimo .main .form .grid-checkbox-box input:checked+label:before,
body.tassimo .main .form .grid-radio-box input:checked+label:before {
    border: 2px solid #6eaa27
}

body.tassimo .main .content-area .grid-radio-box,
body.tassimo .main .form .grid-radio-box {
    margin: 0
}

body.tassimo .main .content-area .grid-radio-box input+label:before,
body.tassimo .main .form .grid-radio-box input+label:before {
    width: 18px;
    height: 18px;
    margin-top: 3px
}

body.tassimo .main .content-area .grid-radio-box input+label:after,
body.tassimo .main .form .grid-radio-box input+label:after {
    width: 8px;
    height: 8px;
    top: 10px;
    left: 7px
}

body.tassimo .main .content-area .grid-checkbox-box input:checked+label:before,
body.tassimo .main .form .grid-checkbox-box input:checked+label:before {
    background: #ac965a
}

body.tassimo .main .content-area .textfield label input,
body.tassimo .main .form .textfield label input {
    background: hsla(0, 0%, 85%, .1);
    border-radius: 10px
}

body.tassimo .main .content-area .btn .btn-btn .btn-label,
body.tassimo .main .form .btn .btn-btn .btn-label {
    background: #000;
    color: #fff;
    border-radius: 45px;
    border: 2px solid #aaa;
    font-size: 13px;
    font-weight: 500;
    padding-bottom: 10px
}

body.tassimo .main .content-area .btn .btn-btn .btn-label:hover,
body.tassimo .main .form .btn .btn-btn .btn-label:hover {
    background: #666
}

body.tassimo .main .content-area .btn.unsubscribe-btn .btn-btn .btn-label,
body.tassimo .main .form .btn.unsubscribe-btn .btn-btn .btn-label {
    background: #fff;
    border: 1px solid #000;
    color: #000;
    font-size: 10px;
    padding: 5px 20px
}

body.tassimo .main .content-area .btn.unsubscribe-btn .btn-btn .btn-label:hover,
body.tassimo .main .form .btn.unsubscribe-btn .btn-btn .btn-label:hover {
    background: #000;
    border: 1px solid #000;
    color: #fff
}

body .main .content-area .grid-chk-box .chk-box-row .error input:not(:checked)~.checkmark,
body .main .form .grid-chk-box .chk-box-row .error input:not(:checked)~.checkmark {
    border: 2px solid #e22c43
}

body .main .content-area .grid-chk-box .chk-box-row .error input:not(:checked)~label,
body .main .form .grid-chk-box .chk-box-row .error input:not(:checked)~label {
    color: #e22c43
}

body .main .content-area .grid-chk-box .chk-box-row .error input:not(:checked)~label .checkmark,
body .main .form .grid-chk-box .chk-box-row .error input:not(:checked)~label .checkmark {
    border: 2px solid #e22c43
}

body .main .content-area .grid-chk-box .chk-box-row .disabled,
body .main .form .grid-chk-box .chk-box-row .disabled {
    pointer-events: none;
    color: #d4ded3
}

body .main .content-area .grid-chk-box .chk-box-row .disabled .checkmark,
body .main .form .grid-chk-box .chk-box-row .disabled .checkmark {
    border: 2px solid #d4ded3
}

body .main .content-area .grid-checkbox-box .error input:not(:checked)+label,
body .main .content-area .grid-radio-box .error input:not(:checked)+label,
body .main .form .grid-checkbox-box .error input:not(:checked)+label,
body .main .form .grid-radio-box .error input:not(:checked)+label {
    color: #e22c43
}

body .main .content-area .grid-checkbox-box .error input:not(:checked)+label:before,
body .main .content-area .grid-radio-box .error input:not(:checked)+label:before,
body .main .form .grid-checkbox-box .error input:not(:checked)+label:before,
body .main .form .grid-radio-box .error input:not(:checked)+label:before {
    border: 2px solid #e22c43
}

body .main .content-area .grid-checkbox-box .disabled,
body .main .content-area .grid-radio-box .disabled,
body .main .form .grid-checkbox-box .disabled,
body .main .form .grid-radio-box .disabled {
    pointer-events: none
}

body .main .content-area .grid-checkbox-box .disabled input:not(:checked)+label,
body .main .content-area .grid-radio-box .disabled input:not(:checked)+label,
body .main .form .grid-checkbox-box .disabled input:not(:checked)+label,
body .main .form .grid-radio-box .disabled input:not(:checked)+label {
    color: #d4ded3
}

body .main .content-area .grid-checkbox-box .disabled input:not(:checked)+label:before,
body .main .content-area .grid-radio-box .disabled input:not(:checked)+label:before,
body .main .form .grid-checkbox-box .disabled input:not(:checked)+label:before,
body .main .form .grid-radio-box .disabled input:not(:checked)+label:before {
    border: 2px solid #d4ded3
}

body .main .content-area .submit-btn-btn.disabled,
body .main .form .submit-btn-btn.disabled {
    background: #d4ded3;
    pointer-events: none
}

body .main .content-area .textfield label.error input,
body .main .form .textfield label.error input {
    box-shadow: 0 0 0 2px #e22c43
}

body .main .content-area .textfield label.error span,
body .main .form .textfield label.error span {
    color: #e22c43
}

body .main .content-area .textfield label.disabled,
body .main .form .textfield label.disabled {
    pointer-events: none
}

body .main .content-area .textfield label.disabled label,
body .main .form .textfield label.disabled label {
    background: #292b29!important;
    color: #d4ded3!important;
    pointer-events: none
}

body .main .content-area .textfield label.disabled span,
body .main .form .textfield label.disabled span {
    display: none
}

.toggle {
    stroke: #323232
}

.toggled .title-container h4,
.toggled>h4 {
    color: #d40511
}

.toggle--icon {
    stroke: #323232;
    right: 15px
}

.toggled .toggle--icon {
    transform: rotate(90deg);
    stroke: #d40511
}

.toggle-show {
    position: absolute;
    right: 0;
    left: 0;
    bottom: -60px
}

.grid-toggle {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    margin: 0 0 16px
}

@media (max-width:480px) {
    .grid-toggle {
        flex-direction: column;
        align-items: flex-start
    }
}

.grid-toggle .toggle-txt {
    text-align: left;
    font-size: 12px;
    line-height: 1.67;
    padding-left: 20px;
    padding-top: 3px
}

@media (max-width:480px) {
    .grid-toggle .toggle-txt {
        padding-left: 0
    }
}

.grid-toggle .toggle-txt strong {
    font-size: 18px;
    line-height: 1.66667;
    font-style: normal;
    font-weight: 700;
    letter-spacing: 0;
    display: block
}

.grid-toggle .toggle-container {
    display: flex;
    justify-content: flex-start;
    align-items: center
}

@media (max-width:480px) {
    .grid-toggle .toggle-container {
        width: 100%;
        justify-content: space-between
    }
}

.grid-toggle .toggle-container .label {
    padding-right: 20px;
    width: 170px;
    display: flex;
    justify-content: flex-start;
}

.grid-toggle .toggle-container .switch {
    display: inline-block;
    height: 24px;
    position: relative;
    width: 60px
}

.grid-toggle .toggle-container .switch input {
    display: none
}

.grid-toggle .toggle-container .toggle {
    background-color: #fff;
    bottom: 0;
    cursor: pointer;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transition: .4s;
    border: 2px solid #a9a9a9;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    line-height: 1
}

.grid-toggle .toggle-container .toggle .toggle-on {
    font-size: 12px;
    color: #fff;
    justify-self: center;
    margin-left: 3px;
    text-indent: 0
}

.grid-toggle .toggle-container .toggle .toggle-off {
    font-size: 12px;
    color: #8e8e8e;
    justify-self: start;
    margin-left: 1px
}

.grid-toggle .toggle-container .toggle:before {
    background-color: #fff;
    bottom: -2px;
    content: "";
    height: 20px;
    left: -2px;
    position: absolute;
    transition: .4s;
    width: 20px;
    border: 2px solid #a9a9a9
}

.grid-toggle .toggle-container input:checked+.toggle {
    background-color: #ac965a;
    border: 2px solid #ac965a
}

.grid-toggle .toggle-container input:checked+.toggle:before {
    border: 2px solid #ac965a;
    left: -3px;
    transform: translateX(37px)
}

.grid-toggle .toggle-container .toggle.round {
    border-radius: 34px
}

.grid-toggle .toggle-container .toggle.round:before {
    border-radius: 50%
}

body.tassimo .grid-toggle .toggle-container .toggle {
    background-color: #fff;
    border: 2px solid #a9a9a9
}

body.tassimo .grid-toggle .toggle-container .toggle .toggle-on {
    color: #fff
}

body.tassimo .grid-toggle .toggle-container .toggle .toggle-off {
    color: #8e8e8e
}

body.tassimo .grid-toggle .toggle-container .toggle:before {
    background-color: #fff;
    border: 2px solid #a9a9a9
}

body.tassimo .grid-toggle .toggle-container input:checked+.toggle {
    background-color: #6eaa27;
    border: 2px solid #6eaa27
}

body.tassimo .grid-toggle .toggle-container input:checked+.toggle .toggle-off {
    color: #6eaa27
}

body.tassimo .grid-toggle .toggle-container input:checked+.toggle:before {
    border: 2px solid #6eaa27;
    left: -3px
}


/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */

html {
    font-family: sans-serif;
    line-height: 1.15;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
    display: block
}

audio,
canvas,
progress,
video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

progress {
    vertical-align: baseline
}

[hidden],
template {
    display: none
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects
}

a:active,
a:hover {
    outline-width: 0
}

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

b,
strong {
    font-weight: inherit;
    font-weight: bolder
}

dfn {
    font-style: italic
}

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

mark {
    background-color: #ff0;
    color: #000
}

small {
    font-size: 80%
}

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

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

img {
    border-style: none
}

svg:not(:root) {
    overflow: hidden
}

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

figure {
    margin: 1em 40px
}

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

button,
input,
optgroup,
select,
textarea {
    font: inherit;
    margin: 0
}

optgroup {
    font-weight: 700
}

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

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

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

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

fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: .35em .625em .75em
}

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

textarea {
    overflow: auto
}

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

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

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

[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-input-placeholder {
    color: inherit;
    opacity: .54
}

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

body.lor header {
    background: #1c1c1c;
    font-size: 13px
}

body.lor header:before {
    content: "";
    display: block;
    width: 100%;
    position: absolute;
    z-index: 1;
    height: 5px;
    background: linear-gradient(90deg, #ab8743 0, #dab667 33%, #ab8743 71%, #dab667)
}

body.lor header section {
    display: flex;
    width: 100%;
    align-items: center
}

body.lor header section.header {
    justify-content: flex-start;
    border-bottom: 1px solid hsla(0, 0%, 100%, .15)
}

body.lor header section.usp {
    justify-content: space-evenly;
    color: #ebbc55;
    padding: 10px 0;
    max-width: 1000px;
    margin: 0 auto;
    font-weight: 500
}

body.lor header section.usp .usp-item {
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 280px
}

body.lor header section.usp .usp-item img {
    max-height: 18px;
    margin-right: 10px
}

body.lor header section.usp .usp-item.dt {
    display: none
}

@media (min-width:481px) {
    body.lor header section.usp .usp-item.dt {
        display: flex
    }
}

body.lor header section .logo {
    padding: 20px 20px 0
}

@media (min-width:481px) {
    body.lor header section .logo {
        padding: 20px 20px 0 100px
    }
}

body.lor header section .logo img {
    width: 76px
}

body.lor header section .menu {
    display: flex;
    flex-direction: row;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    color: #fff
}

body.lor header section .menu a {
    color: #fff
}

@media (min-width:481px) {
    body.lor header section .menu {
        display: flex;
        padding: 0 100px 0 0
    }
}

body.lor header section .menu .left,
body.lor header section .menu .right {
    display: flex;
    flex-direction: column
}

@media (min-width:481px) {
    body.lor header section .menu .left,
    body.lor header section .menu .right {
        flex-direction: row
    }
}

body.lor header section .menu .left .menu-item,
body.lor header section .menu .right .menu-item {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 20px;
    height: 88px
}

body.lor header section .menu .right .menu-item {
    border-right: 1px solid hsla(0, 0%, 100%, .15);
    padding: 20px 30px
}

body.tassimo header {
    background: #fff;
    font-size: 13px
}

body.tassimo header:before {
    content: "";
    display: block;
    width: 100%;
    position: absolute;
    z-index: 1;
    height: 5px;
    background: #6eaa27
}

body.tassimo header section {
    display: flex;
    width: 100%;
    align-items: center
}

body.tassimo header section.header {
    justify-content: flex-start;
    border-bottom: 1px solid #d4d4d4
}

body.tassimo header section .logo {
    padding: 20px
}

@media (min-width:481px) {
    body.tassimo header section .logo {
        padding: 30px 20px 20px 100px
    }
}

body.tassimo header section .logo img {
    width: 130px
}

body.tassimo header section .menu {
    display: flex;
    flex-direction: row;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    color: #fff
}

body.tassimo header section .menu a {
    color: #fff
}

@media (min-width:481px) {
    body.tassimo header section .menu {
        display: flex;
        padding: 0 100px 0 0
    }
}

body.tassimo header section .menu .left,
body.tassimo header section .menu .right {
    display: flex;
    flex-direction: column
}

@media (min-width:481px) {
    body.tassimo header section .menu .left,
    body.tassimo header section .menu .right {
        flex-direction: row
    }
}

body.tassimo header section .menu .left .menu-item,
body.tassimo header section .menu .right .menu-item {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 20px;
    height: 88px
}

body.tassimo header section .menu .right .menu-item {
    border-right: 1px solid hsla(0, 0%, 100%, .15);
    padding: 20px 30px
}

body.lor footer {
    display: flex;
    background: #1c1c1c;
    color: #555
}

body.lor footer:before {
    content: "";
    display: block;
    width: 100%;
    position: absolute;
    z-index: 1;
    height: 5px;
    background: linear-gradient(90deg, #ab8743 0, #dab667 33%, #ab8743 71%, #dab667)
}

body.lor footer .footer {
    padding: 50px 20px
}

@media (min-width:481px) {
    body.lor footer .footer {
        padding: 50px 100px
    }
}

body.lor footer .footer .menu {
    display: flex;
    flex-direction: row;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    color: #fff
}

body.lor footer .footer .menu a {
    color: #fff
}

@media (min-width:481px) {
    body.lor footer .footer .menu {
        display: flex;
        padding: 0 100px 0 0
    }
}

body.lor footer .footer .menu .left,
body.lor footer .footer .menu .right {
    display: flex;
    flex-direction: column
}

@media (min-width:481px) {
    body.lor footer .footer .menu .left,
    body.lor footer .footer .menu .right {
        flex-direction: row
    }
}

body.lor footer .footer .menu .left .menu-item,
body.lor footer .footer .menu .right .menu-item {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 20px;
    height: 88px
}

body.lor footer .footer .menu .right .menu-item {
    border-right: 1px solid hsla(0, 0%, 100%, .15);
    padding: 20px 30px
}

body.tassimo footer {
    display: flex;
    background: #814997;
    color: #fff
}

body.tassimo footer:before {
    content: "";
    display: block;
    width: 100%;
    position: absolute;
    z-index: 1;
    height: 5px;
    background: #522d5e
}

body.tassimo footer .footer {
    padding: 50px 20px
}

@media (min-width:481px) {
    body.tassimo footer .footer {
        padding: 50px 100px
    }
}

body.tassimo footer .footer .copy {
    opacity: .5
}

body.tassimo footer .footer .menu {
    display: flex;
    flex-direction: row;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    color: #fff
}

body.tassimo footer .footer .menu a {
    color: #fff
}

@media (min-width:481px) {
    body.tassimo footer .footer .menu {
        display: flex;
        padding: 0 100px 0 0
    }
}

body.tassimo footer .footer .menu .left,
body.tassimo footer .footer .menu .right {
    display: flex;
    flex-direction: column
}

@media (min-width:481px) {
    body.tassimo footer .footer .menu .left,
    body.tassimo footer .footer .menu .right {
        flex-direction: row
    }
}

body.tassimo footer .footer .menu .left .menu-item,
body.tassimo footer .footer .menu .right .menu-item {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 20px;
    height: 88px
}

body.tassimo footer .footer .menu .right .menu-item {
    border-right: 1px solid hsla(0, 0%, 100%, .15);
    padding: 20px 30px
}


/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVpLWVsZW1lbnRzL190eXBvZ3JhcGh5LnNjc3MiLCJjb3JlL19iYXNlLnNjc3MiLCJjb3JlL19sYXlvdXQuc2NzcyIsInVpLWVsZW1lbnRzL19mb3Jtcy5zY3NzIiwicGx1Z2lucy9fbm9ybWFsaXplLnNjc3MiLCJzdHlsZS5jc3MiLCJzZWN0aW9ucy9faGVhZGVyLnNjc3MiLCJzZWN0aW9ucy9fZm9vdGVyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUdHLGdKQUFZLEFBRVosaUxBQVksQUFFWix1S0FBWSxBQ0FmLEVBQ0UscUJBQXNCLENEQ3JCLEFDQUYsS0RDSyw0QkFBK0IsQUFDL0IsbUJBQW1CLEFBRW5CLGdCQUFnQixBQUNoQixlQUFlLEFBQ2YsaUJBQWlCLEFBQ2pCLG9CQUFzQixDQVB6QixBQTBERixZQXZESyxhQUFjLENBSGpCLEFBWUksT0FERSxvQkFBcUIsQ0FYM0IsQUFZSSxRQUtFLGVBQWUsQUFDZixnQkFBaUIsQ0FsQnZCLEFBb0JJLGdCQUxFLDRCQUErQixBQUMvQixlQUFnQixDQWhCdEIsQUErQkksUUFORSxjQUFjLEFBQ2QsZUFBZ0IsQ0FDaEIsQUFJRix5QkEvQkosUUE0QlMsZUFBZSxBQUNmLGdCQUFpQixDQUV0QixDQS9CSixBQStCSSxPQUdFLFFBQVMsQ0FsQ2YsQUFtQ0ksV0FHRSxlQUFnQixDQXRDdEIsQUF1Q0ksYUFJRSx1Q0FBMEMsQUFDMUMsaUJBQWlCLEFBQ2pCLGVBQWdCLENBN0N0QixBQXdESSxnREFSSyxvQ0FBd0MsQ0FoRGpELEFBaURPLGdCQUdFLGVBQWUsQUFDZixlQUFnQixDQUNsQixBRTVEVixLQUVHLGFBQWEsQUFDYixhQUFhLEFBQ2IsaUJBQWlCLEFBQ2pCLHNCQUFzQixBQUN0Qiw2QkFBOEIsQ0FOakMsQUFpSEMsVUF4R0ssbUJBQW1CLEFBQ25CLGlCQUFrQixDQUNsQixBQUlGLHlCQWZKLFVBWVMsa0JBQWtCLEFBQ2xCLGtCQUFtQixDQUV4QixDQWZKLEFBZUksV0FHRSxhQUFh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dEIsQUFhRix5QkExSWhCLGlGQThIcUIsa0JBQW1CLENBWXhCLENBMUloQixBQTBJZ0IsdUdBUkssYUFBYSxBQUNiLDJCQUEyQixBQUMzQixtQkFBbUIsQUFDbkIsYUFBYSxBQUNiLFdBQVksQ0F0SWpDLEFBeUltQixvREFLRSwyQ0FBNkMsQUFDN0MsaUJBQWtCLENBQ3BCIiwiZmlsZSI6InN0eWxlLm1pbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBmb250c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9TGF0bzppdGFsLHdnaHRAMCwxMDA7MCwzMDA7MCw0MDA7MCw3MDA7MCw5MDA7MSwxMDA7MSwzMDA7MSw0MDA7MSw3MDA7MSw5MDAmZGlzcGxheT1zd2FwJyk7XG5cbiAgIEBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PUFsZWdyZXlhK1NhbnM6aXRhbCx3Z2h0QDAsMTAwOzAsMzAwOzAsNDAwOzAsNTAwOzAsNzAwOzAsODAwOzAsOTAwOzEsMTAwOzEsMzAwOzEsNDAwOzEsNTAwOzEsNzAwOzEsODAwOzEsOTAwJmRpc3BsYXk9c3dhcCcpO1xuXG4gICBAaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1Tb3VyY2UrU2FucytQcm86aXRhbCx3Z2h0QDAsMjAwOzAsMzAwOzAsNDAwOzAsNjAwOzAsNzAwOzAsOTAwOzEsMjAwOzEsMzAwOzEsNDAwOzEsNjAwOzEsNzAwOzEsOTAwJmRpc3BsYXk9c3dhcCcpO1xuXG4gICBib2R5e1xuICAgICAgZm9udC1mYW1pbHk6ICdMYXRvJywgc2Fucy1zZXJpZjtcbiAgICAgIGJhY2tncm91bmQ6ICNmOGY0ZjM7XG4gICAgICBjb2xvcjogIzI5MkIyOTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG5cbiAgICAgIGF7XG4gICAgICAgICBjb2xvcjogIzI5MkIyOTtcbiAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cblxuICAgICAgaDF7XG4gICAgICAgICBmb250LWZhbWlseTogJ0xhdG8nLCBzYW5zLXNlcmlmO1xuICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgIGZvbnQtc2l6ZTogNDJweDtcbiAgICAgICAgIGxpbmUtaGVpZ2h0OiA0OHB4O1xuICAgICAgICAgXG4gICAgICB9XG5cbiAgICAgIGgze1xuICAgICAgICAgZm9udC1mYW1pbHk6ICdMYXRvJywgc2Fucy1zZXJpZjtcbiAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICBmb250LXNpemU6IDZ2dztcbiAgICAgICAgIGxpbmUtaGVpZ2h0OiA4dnc7XG4gICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBwe1xuICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuXG4gICAgICAuYm9sZHtcbiAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICB9XG5cbiAgICAgICYudGFzc2ltb3tcblxuICAgICAgICAgZm9udC1mYW1pbHk6ICdTb3VyY2UgU2FucyBQcm8nLCBzYW5zLXNlcmlmO1xuICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICAgICBoMSwgaDIsIGgze1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdBbGVncmV5YSBTYW5zJywgc2Fucy1zZXJpZjtcbiAgICAgICAgIH1cblxuICAgICAgICAgaDF7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgfVxuXG4gICAgICB9XG5cbn0gICIsIi8qIGNvbXBhc3MgZGVmYXVsdHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8vICRleHBlcmltZW50YWwtc3VwcG9ydC1mb3Itc3ZnOiB0cnVlO1xuXG5AaW1wb3J0IFwiYm91cmJvblwiO1xuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyogbm9ybWFsaXplIHNldHVwXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuJGZvbnQtc2l6ZTogMTRweDtcbiRmb250LWZhbWlseTogJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XG5cbi8vIFRoZSBiYXNlIGZvbnQgc2l6ZS5cbiRiYXNlLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZSAhZGVmYXVsdDsgLy8gT3ZlcnJpZGVzIGRlZmF1bHQgc2V0IGluIFZlcnRpY2FsIFJoeXRobSBwYXJ0aWFsLiIsIi8qIE90aGVyIGxheW91dCBlbGVtZW50c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuYm9keXtcblxuICAgZGlzcGxheTogZmxleDtcbiAgIGhlaWdodDogMTAwdmg7XG4gICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgIG1haW57XG4gICAgICBiYWNrZ3JvdW5kOiAjZjhmNGYzO1xuICAgICAgcGFkZGluZzogNDBweCAxMHB4O1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICAgICBtYXJnaW46IDQwcHggMTUwcHg7XG4gICAgICAgICBwYWRkaW5nOiA1MHB4IDE0MHB4O1xuICAgICAgfVxuICAgfVxuXG4gICAubWFpbntcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIH1cbiAgIH1cbiAgICAgIFxuICAgLmNvbnRlbnQtYXJlYXtcblxuICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZGVkZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIH1cblxuICAgICAgLmNvbnRlbnQtdGl0bGV7XG5cbiAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgIFxuICAgICAgfVxuXG4gICAgICBoMXtcbiAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgIH1cblxuICAgLmNvbnRlbnQtdGV4dHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMCAxNnB4IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgfVxuICAgfVxuICAgXG5cbiAgIC5pbWFnZS1hcmVhe1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuXG4gICAgICB9XG5cbiAgIH1cblxuICAgLmZvcm17XG4gICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgIH1cbiAgICAgIC5mb3JtLXJvd3tcbiAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgIH1cblxuICAgICAgICAgJi50ZXh0e1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICB9XG4gICAgICB9XG4gICB9XG5cbiAgICYudGFzc2ltb3tcblxuICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcblxuICAgICAgbWFpbntcbiAgICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG5cbiAgICAgICAgIC5jb250ZW50LWFyZWF7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIxNiwyMTYsMjE2LC4xKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICB9XG4gICAgICB9XG5cbiAgIH1cblxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdCBmb3Jtc1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXHRib2R5e1xuXG5cdFx0Lm1haW57XG5cblxuXHRcdFx0LmZvcm0sIC5jb250ZW50LWFyZWEge1xuXG5cdFx0XHRcdC5lcnJvci10eHQge1xuXHRcdFx0XHRcdGNvbG9yOiAjRTIyQzQzO1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcblx0XHRcdFx0XHQmLmVycm9yLXNwYWNlciB7XG5cdFx0XHRcdFx0XHRtYXJnaW46IDhweCAwIDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcblx0XHRcdFx0LmVycm9yLWNoayAge1xuXHRcdFx0XHRcdGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2IoMjEyLCAxMiwgMTcpICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMTIsIDUsIDE1LCAwLjEpICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cblx0XHRcdFxuXHRcdFx0XHQuZXJyb3ItcmRvIHtcblx0XHRcdFxuXHRcdFx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiKDIxMiwgMTIsIDE3KSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMTIsIDUsIDE1LCAwLjEpICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHR9XG5cdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRcdC51bnN1Yi10eHQge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxM3B4O1xuXHRcdFx0XHR9XG5cdFx0XHRcblx0XHRcdFx0LnNob3cge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XG5cdFx0XHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0XHRcdGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2IoMjEyLCAxMiwgMTcpICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIxMiwgNSwgMTUsIDAuMSkgIWltcG9ydGFudDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFxuXHRcdFx0XG5cdFx0XHRcdC5mb3JtLXJvdyB7XG5cdFx0XHRcdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRcdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblx0XHRcdFx0XHRtYXJnaW46IDAgMCAxN3B4O1xuXHRcdFx0XG5cdFx0XHRcdFx0JiA+IDpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdFx0XHRtYXJnaW46IDAgMCAxNnB4O1xuXHRcdFxuXHRcdFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG5cdFx0XHRcdFx0XHRcdGxhYmVsOmZpcnN0LWNoaWxke1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbjogMCAwIDE2cHg7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdH1cblx0XHRcdFxuXHRcdFx0XHRcdC5ncm91cC10ZXh0IHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0XHRcdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblx0XHRcdFxuXHRcdFx0XHRcdH1cblx0XHRcdFxuXHRcdFx0XHRcdC5jaGVja2JveC1yb3csIC5yYWRpby1yb3cge1xuXHRcdFx0XHRcdFx0bWFyZ2luOiAwIDAgMTZweDtcblx0XHRcdFxuXHRcdFx0XHRcdH1cblx0XHRcblx0XHRcdFx0XHQmLm5vLW1hcmdpbntcblx0XHRcdFx0XHRcdCYgPiA6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ji50ZXh0e1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdFx0XHRcdFx0Ji5pcy12aXNpYmxle1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XG5cdFx0XHRcdH1cblxuXHRcdFx0XG5cdFx0XHRcdC5kaXZpZGVyIHtcblx0XHRcdFx0XHRwYWRkaW5nOiAzMHB4IDA7XG5cdFx0XHRcblx0XHRcdFx0XHQuZGl2aWRlci1saW5lIHtcblx0XHRcdFx0XHRcdGhlaWdodDogMXB4O1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkYyO1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdC8qKiogXG5cdFx0XHRcdFx0XHRTdHlsZWQgY2hlY2tib3ggXG5cdFx0XHRcdFx0XHQqKiovXG5cdFx0XG5cdFx0XHRcdFx0XHQuZ3JpZC1jaGVja2JveC1ib3gge1x0XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRcdC5jaGVja2JveC1yb3d7XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0XHRcdFx0XHRcdFx0cGFkZGluZzogMCA0dncgMCA2dnc7XG5cdFx0XHRcdFx0XHRcdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODFweCkge1xuXHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHRpbnB1dHtcblx0XHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRcdFx0bGVmdDogLTk5OTlweDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRcdFx0XHRcdGlucHV0ICsgbGFiZWx7XG5cdFx0XHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMzVweDtcblx0XHRcdFx0XHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDI4cHg7XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAjMjkyQjI5O1xuXHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0aW5wdXQgKyBsYWJlbDpiZWZvcmV7XG5cdFx0XHRcdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdFx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRcdFx0XHRcdHdpZHRoOiAyMnB4O1xuXHRcdFx0XHRcdFx0XHRcdGhlaWdodDogMjJweDtcblx0XHRcdFx0XHRcdFx0XHRib3JkZXI6IDJweCBzb2xpZCAjOGQ5YzhjO1xuXHRcdFx0XHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDRweDtcblx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuXHRcdFx0XHRcdFx0XHR9XHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRcdGlucHV0ICsgbGFiZWw6YWZ0ZXJ7XG5cdFx0XHRcdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0XHRcdGxlZnQ6IDlweDtcblx0XHRcdFx0XHRcdFx0XHR0b3A6IDNweDtcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogNXB4O1xuXHRcdFx0XHRcdFx0XHRcdGhlaWdodDogMTJweDtcblx0XHRcdFx0XHRcdFx0XHRib3JkZXI6IHNvbGlkICNmZmZmZmY7XG5cdFx0XHRcdFx0XHRcdFx0Ym9yZGVyLXdpZHRoOiAwIDNweCAzcHggMDtcblx0XHRcdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHRpbnB1dDpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0XHRib3gtc2hhZG93OiBub25lO1xuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICM4ZDljOGM7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRcdGlucHV0Om5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlciB7XG5cdFx0XHRcdFx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRpbnB1dDpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFxuXHRcdFx0XHRcdFx0fVxuXHRcdFxuXHRcdFx0XHRcdFx0LyoqKiBcblx0XHRcdFx0XHRcdFN0eWxlZCByYWRpbyBcblx0XHRcdFx0XHRcdCoqKi9cblx0XHRcblx0XHRcdFx0XHRcdC5ncmlkLXJhZGlvLWJveCB7XHRcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdFx0LnJhZGlvLXJvd3tcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRcdFx0XHRcdFx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MXB4KSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHRcdCY6bGFzdC1jaGlsZHtcblx0XHRcdFx0XHRcdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHRpbnB1dHtcblx0XHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRcdFx0bGVmdDogLTk5OTlweDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRcdFx0XHRcdGlucHV0ICsgbGFiZWx7XG5cdFx0XHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMzVweDtcblx0XHRcdFx0XHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDI4cHg7XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAjMjkyQjI5O1xuXHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0aW5wdXQgKyBsYWJlbDpiZWZvcmV7XG5cdFx0XHRcdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdFx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRcdFx0XHRcdHdpZHRoOiAyMnB4O1xuXHRcdFx0XHRcdFx0XHRcdGhlaWdodDogMjJweDtcblx0XHRcdFx0XHRcdFx0XHRib3JkZXI6IDJweCBzb2xpZCAjOGQ5YzhjO1xuXHRcdFx0XHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDEwMCU7XG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogI2ZmZmZmZjtcblx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdGlucHV0ICsgbGFiZWw6YWZ0ZXJ7XG5cdFx0XHRcdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6IDE0cHg7XG5cdFx0XHRcdFx0XHRcdFx0aGVpZ2h0OiAxNHB4O1xuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICM4ZDljOGM7XG5cdFx0XHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0XHRcdHRvcDogNnB4O1xuXHRcdFx0XHRcdFx0XHRcdGxlZnQ6IDZweDtcblx0XHRcdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiAxMDAlO1xuXHRcdFx0XHRcdFx0XHRcdC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcblx0XHRcdFx0XHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuXHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0aW5wdXQ6Y2hlY2tlZCsgbGFiZWw6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0XHRib3gtc2hhZG93OiBub25lO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0XHRpbnB1dDpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdFx0XHRcdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuXHRcdFx0XHRcdFx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMCk7XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHRpbnB1dDpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdFx0XHRcdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHRcdFx0XHRcdFx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFxuXHRcdFx0XHRcdFx0XHQvLyBpbnB1dDpmb2N1cyArIGxhYmVsOmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRcdC8vIFx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG5cdFx0XHRcdFx0XHRcdC8vIH1cblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRcdFx0XHRcdC8qKiogXG5cdFx0XHRcdFx0XHRcdFx0U3R5bGVkIHRleHRmaWVsZCBcblx0XHRcdFx0XHRcdFx0KioqL1xuXHRcdFxuXHRcdFx0XHRcdFx0XHQudGV4dGZpZWxkLCAudGV4dGFyZWF7XG5cdFx0XG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFxuXHRcdFx0XHRcdFx0XHRcdC5jb2x1bW57XG5cdFx0XHRcdFx0XHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0XHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdFx0XHRcdFx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdFx0XHRcdFx0XHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgxcHgpIHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0ZmxleC13cmFwOiBub3dyYXA7XG5cdFx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFxuXHRcdFx0XHRcdFx0XHRcdGxhYmVse1xuXHRcdFx0XHRcdFx0XHRcdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRcdFx0XHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgxcHgpIHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Ly8gcGFkZGluZy1yaWdodDogMTBweDsgXG5cdFx0XHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0XHRcdHNwYW57XG5cdFx0XHRcdFx0XHRcdFx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHR0b3A6IC0xcHg7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdGxlZnQ6MjBweDtcblx0XHRcdFx0XHRcdFx0XHRcdFx0dHJhbnNmb3JtOnRyYW5zbGF0ZVkoOHB4KTtcblx0XHRcdFx0XHRcdFx0XHRcdFx0dHJhbnNpdGlvbi1kdXJhdGlvbjozMDBtcztcblx0XHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICNDNkM2QzY7XG5cdFx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdGlucHV0LCB0ZXh0YXJlYXtcblx0XHRcdFx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZzogMThweCAyMnB4IDA7XG5cdFx0XHRcdFx0XHRcdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcblx0XHRcdFx0XHRcdFx0XHRcdGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZGVkZWRlO1xuXHRcdFx0XHRcdFx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0XHRcdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czo0cHg7XG5cdFx0XG5cdFx0XHRcdFx0XHRcdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0b3V0bGluZTogbm9uZTtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Ym94LXNoYWRvdzogMHB4IDBweCAwcHggM3B4ICM1YTVlNWE7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdGJvcmRlcjogMDtcblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcblx0XHRcdFx0XHRcdFx0XHRcdCY6Zm9jdXMgfiBzcGFue1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDEwcHg7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAjMjkyQjI5O1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nLXRvcDogMDtcblx0XHRcdFx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogLTRweDtcblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdFx0aW5wdXQ6OnBsYWNlaG9sZGVyLCB0ZXh0YXJlYTo6cGxhY2Vob2xkZXJ7XG5cdFx0XHRcdFx0XHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcblx0XHRcdFx0XHRcdFx0XHRcblx0XHRcblx0XHRcdFx0XHRcdFx0XHRsYWJlbDpmb2N1cy13aXRoaW4gPiBzcGFuLFxuXHRcdFx0XHRcdFx0XHRcdGlucHV0Om5vdCg6cGxhY2Vob2xkZXItc2hvd24pICsgc3Bhbntcblx0XHRcdFx0XHRcdFx0XHRcdHRyYW5zZm9ybTp0cmFuc2xhdGVZKDBweCk7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdFx0dGV4dGFyZWE6bm90KDpwbGFjZWhvbGRlci1zaG93bikgKyBzcGFue1xuXHRcdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHQudGV4dGFyZWF7XG5cdFx0XHRcdFx0XHRcdFx0dGV4dGFyZWF7XG5cdFx0XHRcdFx0XHRcdFx0XHRoZWlnaHQ6IDEwMHB4O1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRzcGFue1xuXHRcdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxM3B4O1xuXHRcdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHRcdCYuaXMtaGlkZGVue1xuXHRcdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcblx0XHRcdFx0LyoqKiBcblx0XHRcdFx0XHRTdHlsZWQgSW5wdXQgQnV0dG9uIFxuXHRcdFx0XHQqKiovXHRcdFx0XG5cdFx0XHRcblx0XHRcdFx0aW5wdXRbdHlwZT1zdWJtaXRdIHtcblx0XHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRcdFx0Y2xpcDogcmVjdCgwIDAgMCAwKTtcblx0XHRcdFx0XHRoZWlnaHQ6IDFweDtcblx0XHRcdFx0XHRtYXJnaW46IC0xcHg7XG5cdFx0XHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHR3aWR0aDogMXB4O1xuXHRcdFx0XHR9XG5cdFx0XG5cdFx0XHRcdGlucHV0W3R5cGU9c3VibWl0XTpmb2N1c3tcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0fVxuXHRcdFxuXHRcdFx0XHQuYnRue1xuXHRcdFx0XHRcdHBhZGRpbmctdG9wOiAxMHB4O1xuXHRcdFx0XHR9XG5cdFx0XG5cdFx0XHRcdC5idG57XG5cdFx0XG5cdFx0XHRcdFx0LmJ0bi1sYWJlbCB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuXHRcdFx0XHRcdFx0Y29sb3I6ICNmZmZmZmY7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAxMHB4IDQwcHggOHB4IDQwcHg7XG5cdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0XHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41cyBlYXNlLW91dDtcblx0XHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdFx0fVxuXHRcdFxuXHRcdFx0XHR9XHRcblx0XHRcdFx0ICBcblx0XHRcdH1cblxuXHRcdFx0LmNvbnRlbnQtYXJlYSB7XG5cblx0XHRcdFx0LmZvcm0tcm93e1xuXHRcdFx0XHRcdG1hcmdpbjogMDtcblxuXHRcdFx0XHRcdC5jb2x1bW57XG5cdFx0XHRcdFx0XHRtYXJnaW46IDE3cHggMCAwIDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdH1cblxuXG5cdFx0fVxuXG5cdFx0LyoqIHBhZ2Ugc3BlY2lmaWMgKiovXG5cblx0XHQmLmxvcntcblxuXG5cdFx0XHQubWFpbntcblxuXHRcdFx0XHQuZm9ybSwgLmNvbnRlbnQtYXJlYXtcblxuXHRcdFx0XHRcdC8qKiogXG5cdFx0XHRcdFx0ICAgU3R5bGVkIGJveCBcblx0XHRcdFx0ICAgKioqL1xuXHQgICBcblx0XHRcdFx0XHQgICAuZ3JpZC1jaGVja2JveC1ib3gsIC5ncmlkLXJhZGlvLWJveCB7XHRcblx0XHRcdFx0XHRcdCAgIFxuXHRcdFx0XHRcdFx0ICAgaW5wdXQgKyBsYWJlbFxuXHRcdFx0XHRcdFx0ICAge1xuXHRcdFx0XHRcdFx0XHQgICBjb2xvcjogIzI5MkIyOTtcblx0XHRcdFx0XHRcdCAgIH1cblx0XHRcdFx0XHRcdCAgIGlucHV0ICsgbGFiZWw6YmVmb3JlLFxuXHRcdFx0XHRcdFx0ICAge1xuXHRcdFx0XHRcdFx0XHQgICBib3JkZXI6IDJweCBzb2xpZCAjYWM5NjVhO1xuXHRcdFx0XHRcdFx0ICAgfVxuXG5cdFx0XHRcdFx0XHQgICBpbnB1dCArIGxhYmVsOmFmdGVyLFxuXHRcdFx0XHRcdFx0ICAge1xuXHRcdFx0XHRcdFx0XHQgICBiYWNrZ3JvdW5kOiAjYWM5NjVhO1xuXHRcdFx0XHRcdFx0ICAgfVxuXHQgICBcblx0XHRcdFx0XHRcdCAgIGlucHV0OmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuXHRcdFx0XHRcdFx0XHQgICBib3JkZXI6IDJweCBzb2xpZCAjYWM5NjVhO1xuXHRcdFx0XHRcdFx0ICAgfVxuXHRcdFx0XHQgICBcdFx0fVxuXG5cdFx0XHRcdFx0XHQuZ3JpZC1yYWRpby1ib3h7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0XHRcdFx0aW5wdXQgKyBsYWJlbDpiZWZvcmV7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6IDE4cHg7XG5cdFx0XHRcdFx0XHRcdFx0aGVpZ2h0OiAxOHB4O1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IDNweDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRpbnB1dCArIGxhYmVsOmFmdGVye1xuXHRcdFx0XHRcdFx0XHRcdHdpZHRoOiA4cHg7XG5cdFx0XHRcdFx0XHRcdFx0aGVpZ2h0OiA4cHg7XG5cdFx0XHRcdFx0XHRcdFx0dG9wOiAxMHB4O1xuXHRcdFx0XHRcdFx0XHRcdGxlZnQ6IDdweDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdCAgIC8qKiogXG5cdFx0XHRcdFx0ICAgU3R5bGVkIGNoZWNrYm94IFxuXHRcdFx0XHQgICAqKiovXG5cblx0XHRcdFx0ICAgLmdyaWQtY2hlY2tib3gtYm94e1xuXHRcblx0XHRcdFx0XHRcdGlucHV0OmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAjYWM5NjVhO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0LyoqKiBcblx0XHRcdFx0XHRcdFx0U3R5bGVkIEJ1dHRvbiBcblx0XHRcdFx0XHRcdCoqKi9cblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdC5idG57XHRcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdC5idG4tYnRue1xuXHRcdFx0XHRcblx0XHRcdFx0XHRcdFx0LmJ0bi1sYWJlbCB7XG5cdFx0XHRcdFx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogI2FjOTY1YTtcblx0XHRcdFx0XHRcdFx0XHRjb2xvcjogI2ZmZmZmZjtcblx0XHRcdFx0XHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAjYWM5NjVhO1xuXHRcdFx0XHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDRweDtcblx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDEzcHg7XG5cdFx0XHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDMwMDtcblxuXHRcdFx0XHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogIzhkN2I0Yjtcblx0XHRcdFx0XHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICM4ZDdiNGI7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Ji51bnN1YnNjcmliZS1idG57XG5cdFx0XHRcdFx0XHRcdC5idG4tYnRue1xuXHRcdFx0XHRcdFx0XHRcdC5idG4tbGFiZWx7XG5cdFx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHRcdFx0XHRcdFx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgIzAwMDtcblx0XHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAjMDAwO1xuXHRcdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxMHB4O1xuXHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZzogNXB4IDIwcHg7XG5cblx0XHRcdFx0XHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAjMDAwO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRjb2xvcjogI2ZmZjtcblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XHRcblxuXHRcdFx0XHRcblxuXHRcdFx0XHR9XG5cblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLnRhc3NpbW97XG5cblxuXHRcdFx0Lm1haW57XG5cblx0XHRcdFx0LmZvcm0sIC5jb250ZW50LWFyZWF7XG5cblx0XHRcdFx0XHQvKioqIFxuXHRcdFx0XHRcdCAgIFN0eWxlZCBib3ggXG5cdFx0XHRcdCAgICoqKi9cblx0ICAgXG5cdFx0XHRcdFx0ICAgLmdyaWQtY2hlY2tib3gtYm94LCAuZ3JpZC1yYWRpby1ib3gge1x0XG5cdFx0XHRcdFx0XHQgICBcblx0XHRcdFx0XHRcdCAgIGlucHV0ICsgbGFiZWxcblx0XHRcdFx0XHRcdCAgIHtcblx0XHRcdFx0XHRcdFx0ICAgY29sb3I6ICMyOTJCMjk7XG5cdFx0XHRcdFx0XHQgICB9XG5cdFx0XHRcdFx0XHQgICBpbnB1dCArIGxhYmVsOmJlZm9yZSxcblx0XHRcdFx0XHRcdCAgIHtcblx0XHRcdFx0XHRcdFx0ICAgYm9yZGVyOiAycHggc29saWQgIzZlYWEyNztcblx0XHRcdFx0XHRcdCAgIH1cblxuXHRcdFx0XHRcdFx0ICAgaW5wdXQgKyBsYWJlbDphZnRlcixcblx0XHRcdFx0XHRcdCAgIHtcblx0XHRcdFx0XHRcdFx0ICAgYmFja2dyb3VuZDogIzZlYWEyNztcblx0XHRcdFx0XHRcdCAgIH1cblx0ICAgXG5cdFx0XHRcdFx0XHQgICBpbnB1dDpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0ICAgYm9yZGVyOiAycHggc29saWQgIzZlYWEyNztcblx0XHRcdFx0XHRcdCAgIH1cblx0XHRcdFx0ICAgXHRcdH1cblxuXHRcdFx0XHRcdFx0LmdyaWQtcmFkaW8tYm94e1xuXHRcdFx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdFx0XHRcdGlucHV0ICsgbGFiZWw6YmVmb3Jle1xuXHRcdFx0XHRcdFx0XHRcdHdpZHRoOiAxOHB4O1xuXHRcdFx0XHRcdFx0XHRcdGhlaWdodDogMThweDtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAzcHg7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0aW5wdXQgKyBsYWJlbDphZnRlcntcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogOHB4O1xuXHRcdFx0XHRcdFx0XHRcdGhlaWdodDogOHB4O1xuXHRcdFx0XHRcdFx0XHRcdHRvcDogMTBweDtcblx0XHRcdFx0XHRcdFx0XHRsZWZ0OiA3cHg7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHQgICAvKioqIFxuXHRcdFx0XHRcdCAgIFN0eWxlZCBjaGVja2JveCBcblx0XHRcdFx0ICAgKioqL1xuXG5cdFx0XHRcdCAgIC5ncmlkLWNoZWNrYm94LWJveHtcblx0XG5cdFx0XHRcdFx0XHRpbnB1dDpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogI2FjOTY1YTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQudGV4dGZpZWxke1xuXHRcdFx0XHRcdFx0bGFiZWx7XG5cdFx0XHRcdFx0XHRcdGlucHV0e1xuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMjE2LDIxNiwyMTYsLjEpO1xuXHRcdFx0XHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdC8qKiogXG5cdFx0XHRcdFx0XHRcdFN0eWxlZCBCdXR0b24gXG5cdFx0XHRcdFx0XHQqKiovXHRcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0LmJ0bntcdFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0XHQuYnRuLWJ0bntcblx0XHRcdFx0XG5cdFx0XHRcdFx0XHRcdFx0LmJ0bi1sYWJlbCB7XG5cdFx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuXHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICNmZmZmZmY7XG5cdFx0XHRcdFx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiA0NXB4O1xuXHRcdFx0XHRcdFx0XHRcdFx0Ym9yZGVyOiAycHggc29saWQgI2FhYTtcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTNweDtcblx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMTBweDtcblx0XG5cdFx0XHRcdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogIzY2NjY2Njtcblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHRcdH1cblx0XG5cdFx0XHRcdFx0XHRcdCYudW5zdWJzY3JpYmUtYnRue1xuXHRcdFx0XHRcdFx0XHRcdC5idG4tYnRue1xuXHRcdFx0XHRcdFx0XHRcdFx0LmJ0bi1sYWJlbHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogI2ZmZjtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgIzAwMDtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICMwMDA7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTBweDtcblx0XHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZzogNXB4IDIwcHg7XG5cdFxuXHRcdFx0XHRcdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAjMDAwO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdFx0XG5cblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cdFx0fVxuXHRcblxuXHRcdC8vIC8qKiogXG5cdFx0Ly8gXHRFcnJvciAvIERpc2FibGVkXG5cdFx0Ly8gKioqL1xuXG5cdFx0Lm1haW57XG5cblx0XHRcdC5mb3JtLCAuY29udGVudC1hcmVhe1xuXG5cdFx0XHRcdC5ncmlkLWNoay1ib3gge1xuXHRcdFx0XHRcdC5jaGstYm94LXJvdyB7XG5cblx0XHRcdFx0XHRcdC5lcnJvcntcblx0XHRcdFx0XHRcdFx0aW5wdXQ6bm90KDpjaGVja2VkKSB+IC5jaGVja21hcmsge1xuXHRcdFx0XHRcdFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICNFMjJDNDM7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH0gXG5cblx0XHRcdFx0XHRcdC5lcnJvcntcblx0XHRcdFx0XHRcdFx0aW5wdXQ6bm90KDpjaGVja2VkKSB+IGxhYmVse1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAjRTIyQzQzO1xuXHRcdFx0XHRcdFx0XHRcdC5jaGVja21hcmt7XG5cdFx0XHRcdFx0XHRcdFx0XHRib3JkZXI6IDJweCBzb2xpZCAjRTIyQzQzO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFxuXHRcdFx0XHRcdFx0LmRpc2FibGVke1xuXHRcdFx0XHRcdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICNkNGRlZDM7XG5cdFx0XG5cdFx0XHRcdFx0XHRcdC5jaGVja21hcmt7XG5cdFx0XHRcdFx0XHRcdFx0Ym9yZGVyOiAycHggc29saWQgI2Q0ZGVkMztcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXG5cdFx0XHRcdC5ncmlkLWNoZWNrYm94LWJveCwgLmdyaWQtcmFkaW8tYm94IHtcdFxuXG5cdFx0XHRcdFx0LmVycm9ye1xuXHRcdFx0XHRcdFx0aW5wdXQ6bm90KDpjaGVja2VkKSArIGxhYmVse1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogI0UyMkM0Mztcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0aW5wdXQ6bm90KDpjaGVja2VkKSArIGxhYmVsOmJlZm9yZXtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyOiAycHggc29saWQgI0UyMkM0Mztcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQuZGlzYWJsZWR7XG5cdFx0XHRcdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRcdFx0XHRcdGlucHV0Om5vdCg6Y2hlY2tlZCkgKyBsYWJlbHtcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICNkNGRlZDM7XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdGlucHV0Om5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmV7XG5cdFx0XHRcdFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICNkNGRlZDM7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdH1cblxuXHRcdFx0XG5cdFx0XHRcdFx0LnN1Ym1pdC1idG4tYnRue1xuXHRcdFx0XG5cdFx0XHRcdFx0XHQmLmRpc2FibGVke1xuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAjZDRkZWQzO1xuXHRcdFx0XHRcdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdH1cblxuXG5cblx0XHRcdFx0XHQudGV4dGZpZWxke1xuXG5cdFx0XHRcdFx0XHRsYWJlbHtcblxuXHRcdFx0XHRcdFx0XHQmLmVycm9yIHtcblxuXHRcdFx0XHRcdFx0XHRcdGlucHV0e1xuXHRcdFx0XHRcdFx0XHRcdFx0Ym94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNFMjJDNDM7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0XHRcdHNwYW57XG5cdFx0XHRcdFx0XHRcdFx0XHRjb2xvcjogI0UyMkM0Mztcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFxuXHRcdFx0XHRcdFx0XHR9XG5cdFxuXHRcdFx0XHRcdFx0XHQmLmRpc2FibGVkIHtcblx0XHRcdFx0XHRcdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRcdFx0XHRcdFx0XHRsYWJlbHtcblx0XHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICMyOTJCMjkgIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAjZDRkZWQzICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRcdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRcdFx0XHRcdFx0XHR9XHRcblxuXHRcdFx0XHRcdFx0XHRcdHNwYW57XG5cdFx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFxuXG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFxuXG5cdFx0XHRcdH1cblxuXHRcdFx0fVxuXG5cdH1cblxuXHQvKiogVE9HR0xFIENPTlRBSU5FUiAqKi9cblxuXHQudG9nZ2xle1xuXHRcdHN0cm9rZTojMzIzMjMyO1xuXHR9XG5cdFxuXHQudG9nZ2xlZCAudGl0bGUtY29udGFpbmVyIGg0LCAudG9nZ2xlZD5oNHtcblx0XHRjb2xvcjojZDQwNTExO1xuXHR9XG5cdFxuXHQudG9nZ2xlLS1pY29ue1xuXHRcdHN0cm9rZTojMzIzMjMyO1xuXHRcdHJpZ2h0OjE1cHg7XG5cdH1cblx0XG5cdC50b2dnbGVkIC50b2dnbGUtLWljb257XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDkwZGVnKTtcblx0XHR0cmFuc2Zvcm06cm90YXRlKDkwZGVnKTtcblx0XHRzdHJva2U6I2Q0MDUxMVxuXHR9XG5cdFxuXHQudG9nZ2xlLXNob3d7XG5cdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0cmlnaHQ6MDtcblx0XHRsZWZ0OjA7XG5cdFx0Ym90dG9tOi02MHB4O1xuXHR9XG5cblx0LmdyaWQtdG9nZ2xle1xuXG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0bWFyZ2luOiAwIDAgMTZweDtcblxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOjQ4MHB4KXtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0XHR9XG5cblx0XHQudG9nZ2xlLXR4dHtcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRmb250LXNpemU6IDEycHg7XG5cdFx0XHRsaW5lLWhlaWdodDoxLjY3O1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAyMHB4O1xuXHRcdFx0cGFkZGluZy10b3A6IDNweDtcblxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6NDgwcHgpe1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnRvZ2dsZS10eHQgc3Ryb25ne1xuXHRcdFx0Zm9udC1zaXplOjE4cHg7XG5cdFx0XHRsaW5lLWhlaWdodDpjYWxjKDMwLzE4KTtcblx0XHRcdGZvbnQtc3R5bGU6bm9ybWFsO1xuXHRcdFx0Zm9udC13ZWlnaHQ6NzAwO1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6MDtcblx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0fVxuXG5cdFx0LnRvZ2dsZS1jb250YWluZXJ7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7XG5cdFx0XHRhbGlnbi1pdGVtczpjZW50ZXI7XG5cblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOjQ4MHB4KXtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdH1cblxuXHRcdFx0LmxhYmVse1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXHRcdFx0XHR3aWR0aDogMTcwcHg7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRcdH1cblxuXHRcdFx0LnN3aXRjaHtcblx0XHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHRcdGhlaWdodDoyNHB4O1xuXHRcdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHRcdFx0d2lkdGg6NjBweDtcblxuXHRcdFx0XHRpbnB1dHtcblx0XHRcdFx0XHRkaXNwbGF5Om5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LnRvZ2dsZXtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjojZmZmO1xuXHRcdFx0XHRib3R0b206MDtcblx0XHRcdFx0Y3Vyc29yOnBvaW50ZXI7XG5cdFx0XHRcdGxlZnQ6MDtcblx0XHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHRcdHJpZ2h0OjA7XG5cdFx0XHRcdHRvcDowO1xuXHRcdFx0XHR0cmFuc2l0aW9uOi40cztcblx0XHRcdFx0Ym9yZGVyOjJweCBzb2xpZCAjYTlhOWE5O1xuXHRcdFx0XHRkaXNwbGF5OmdyaWQ7XG5cdFx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO1xuXHRcdFx0XHRhbGlnbi1pdGVtczpjZW50ZXI7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXG5cdFx0XHRcdC50b2dnbGUtb257XG5cdFx0XHRcdFx0Zm9udC1zaXplOjEycHg7XG5cdFx0XHRcdFx0Y29sb3I6I2ZmZjtcblx0XHRcdFx0XHRqdXN0aWZ5LXNlbGY6Y2VudGVyO1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OjNweDtcblx0XHRcdFx0XHR0ZXh0LWluZGVudDowO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0LnRvZ2dsZS1vZmZ7XG5cdFx0XHRcdFx0Zm9udC1zaXplOjEycHg7XG5cdFx0XHRcdFx0Y29sb3I6IzhlOGU4ZTtcblx0XHRcdFx0XHRqdXN0aWZ5LXNlbGY6c3RhcnQ7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6MXB4XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LnRvZ2dsZTpiZWZvcmV7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6I2ZmZjtcblx0XHRcdFx0Ym90dG9tOi0ycHg7XG5cdFx0XHRcdGNvbnRlbnQ6XCJcIjtcblx0XHRcdFx0aGVpZ2h0OjIwcHg7XG5cdFx0XHRcdGxlZnQ6LTJweDtcblx0XHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHRcdHRyYW5zaXRpb246LjRzO1xuXHRcdFx0XHR3aWR0aDoyMHB4O1xuXHRcdFx0XHRib3JkZXI6MnB4IHNvbGlkICNhOWE5YTk7XG5cdFx0XHR9XG5cblx0XHRcdGlucHV0OmNoZWNrZWQrLnRvZ2dsZXtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjojYWM5NjVhO1xuXHRcdFx0XHRib3JkZXI6MnB4IHNvbGlkICNhYzk2NWE7XG5cdFx0XHR9XG5cblx0XHRcdGlucHV0OmNoZWNrZWQrLnRvZ2dsZTpiZWZvcmV7XG5cdFx0XHRcdGJvcmRlcjoycHggc29saWQgI2FjOTY1YTtcblx0XHRcdFx0bGVmdDotM3B4O1xuXHRcdFx0fVxuXG5cdFx0XHRpbnB1dDpjaGVja2VkKy50b2dnbGU6YmVmb3Jle1xuXHRcdFx0XHR0cmFuc2Zvcm06dHJhbnNsYXRlWCgzN3B4KTtcblx0XHRcdH1cblxuXHRcdFx0LnRvZ2dsZS5yb3VuZHtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czozNHB4O1xuXHRcdFx0fVxuXG5cdFx0XHQudG9nZ2xlLnJvdW5kOmJlZm9yZXtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czo1MCU7XG5cdFx0XHR9XG5cdFx0XG5cdFx0fVxuXG5cdH1cblxuXHRib2R5LnRhc3NpbW97XG5cdFx0LmdyaWQtdG9nZ2xle1xuXG5cdFx0XHQudG9nZ2xlLWNvbnRhaW5lcntcblx0XG5cdFx0XHRcdC50b2dnbGV7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjojZmZmO1xuXHRcdFx0XHRcdGJvcmRlcjoycHggc29saWQgI2E5YTlhOTtcblx0XG5cdFx0XHRcdFx0LnRvZ2dsZS1vbntcblx0XHRcdFx0XHRcdGNvbG9yOiNmZmY7XG5cdFx0XHRcdFx0fVxuXHRcblx0XHRcdFx0XHQudG9nZ2xlLW9mZntcblx0XHRcdFx0XHRcdGNvbG9yOiM4ZThlOGU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFxuXHRcdFx0XHQudG9nZ2xlOmJlZm9yZXtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7XG5cdFx0XHRcdFx0Ym9yZGVyOjJweCBzb2xpZCAjYTlhOWE5O1xuXHRcdFx0XHR9XG5cdFxuXHRcdFx0XHRpbnB1dDpjaGVja2VkKy50b2dnbGV7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjojNmVhYTI3O1xuXHRcdFx0XHRcdGJvcmRlcjoycHggc29saWQgIzZlYWEyNztcblxuXHRcdFx0XHRcdC50b2dnbGUtb2Zme1xuXHRcdFx0XHRcdFx0Y29sb3I6ICM2ZWFhMjc7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFxuXHRcdFx0XHRpbnB1dDpjaGVja2VkKy50b2dnbGU6YmVmb3Jle1xuXHRcdFx0XHRcdGJvcmRlcjoycHggc29saWQgIzZlYWEyNztcblx0XHRcdFx0XHRsZWZ0Oi0zcHg7XG5cdFx0XHRcdH1cblx0XHRcdFxuXHRcdFx0fVxuXHRcblx0XHR9XG5cdH1cblxuXHQvKiogRU5EIFRPR0dMRSBDT05UQUlORVIgKiovIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjQuMS4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgYW5kIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDIgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsIC8qIDEgKi9cbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5tYWluLCAvKiAyICovXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkgeyAvKiAxICovXG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICovXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5cbnRlbXBsYXRlLCAvKiAxICovXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIExpbmtzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZS13aWR0aDogMDtcbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICovXG5cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICovXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKipcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICovXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICovXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9udCB3ZWlnaHQgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgdGV4dCBzdHlsZSBvZiBwbGFjZWhvbGRlcnMgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBvcGFjaXR5OiAwLjU0O1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBpbXBvcnQgc2NzcyBmaWxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBWYXJpYWJsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBjb21wYXNzIGRlZmF1bHRzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PUxhdG86aXRhbCx3Z2h0QDAsMTAwOzAsMzAwOzAsNDAwOzAsNzAwOzAsOTAwOzEsMTAwOzEsMzAwOzEsNDAwOzEsNzAwOzEsOTAwJmRpc3BsYXk9c3dhcFwiKTtcbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1BbGVncmV5YStTYW5zOml0YWwsd2dodEAwLDEwMDswLDMwMDswLDQwMDswLDUwMDswLDcwMDswLDgwMDswLDkwMDsxLDEwMDsxLDMwMDsxLDQwMDsxLDUwMDsxLDcwMDsxLDgwMDsxLDkwMCZkaXNwbGF5PXN3YXBcIik7XG5AaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9U291cmNlK1NhbnMrUHJvOml0YWwsd2dodEAwLDIwMDswLDMwMDswLDQwMDswLDYwMDswLDcwMDswLDkwMDsxLDIwMDsxLDMwMDsxLDQwMDsxLDYwMDsxLDcwMDsxLDkwMCZkaXNwbGF5PXN3YXBcIik7XG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4vKiBub3JtYWxpemUgc2V0dXBcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBmb250c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbmJvZHkge1xuICBmb250LWZhbWlseTogJ0xhdG8nLCBzYW5zLXNlcmlmO1xuICBiYWNrZ3JvdW5kOiAjZjhmNGYzO1xuICBjb2xvcjogIzI5MkIyOTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMjZweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTsgfVxuICBib2R5IGEge1xuICAgIGNvbG9yOiAjMjkyQjI5O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBib2R5IGgxIHtcbiAgICBmb250LWZhbWlseTogJ0xhdG8nLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiA0MnB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0OHB4OyB9XG4gIGJvZHkgaDMge1xuICAgIGZvbnQtZmFtaWx5OiAnTGF0bycsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IDZ2dztcbiAgICBsaW5lLWhlaWdodDogOHZ3OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICBib2R5IGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzJweDsgfSB9XG4gIGJvZHkgcCB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIGJvZHkgLmJvbGQge1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7IH1cbiAgYm9keS50YXNzaW1vIHtcbiAgICBmb250LWZhbWlseTogJ1NvdXJjZSBTYW5zIFBybycsIHNhbnMtc2VyaWY7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgIGJvZHkudGFzc2ltbyBoMSwgYm9keS50YXNzaW1vIGgyLCBib2R5LnRhc3NpbW8gaDMge1xuICAgICAgZm9udC1mYW1pbHk6ICdBbGVncmV5YSBTYW5zJywgc2Fucy1zZXJpZjsgfVxuICAgIGJvZHkudGFzc2ltbyBoMSB7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICBmb250LXdlaWdodDogNzAwOyB9XG5cbi8qIE90aGVyIGxheW91dCBlbGVtZW50c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbmJvZHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIGJvZHkgbWFpbiB7XG4gICAgYmFja2dyb3VuZDogI2Y4ZjRmMztcbiAgICBwYWRkaW5nOiA0MHB4IDEwcHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgIGJvZHkgbWFpbiB7XG4gICAgICAgIG1hcmdpbjogNDBweCAxNTBweDtcbiAgICAgICAgcGFkZGluZzogNTBweCAxNDBweDsgfSB9XG4gIGJvZHkgLm1haW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICBib2R5IC5tYWluIHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7IH0gfVxuICBib2R5IC5jb250ZW50LWFyZWEge1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWRlZGU7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICBib2R5IC5jb250ZW50LWFyZWEge1xuICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgICAgICBwYWRkaW5nOiAyMHB4OyB9IH1cbiAgICBib2R5IC5jb250ZW50LWFyZWEgLmNvbnRlbnQtdGl0bGUge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgICAgYm9keSAuY29udGVudC1hcmVhIC5jb250ZW50LXRpdGxlIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgICAgIGJvZHkgLmNvbnRlbnQtYXJlYSAuY29udGVudC10aXRsZSBoMSB7XG4gICAgICAgIG1hcmdpbjogMDsgfVxuICAgIGJvZHkgLmNvbnRlbnQtYXJlYSAuY29udGVudC10ZXh0IHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMCAxNnB4IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgICBib2R5IC5jb250ZW50LWFyZWEgLmNvbnRlbnQtdGV4dCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gIGJvZHkgLmltYWdlLWFyZWEge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBmbGV4LWJhc2lzOiAxMDAlOyB9XG4gIGJvZHkgLmZvcm0ge1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgYm9keSAuZm9ybSB7XG4gICAgICAgIG1heC13aWR0aDogNTAwcHg7IH0gfVxuICAgIGJvZHkgLmZvcm0gLmZvcm0tcm93IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICAgIGJvZHkgLmZvcm0gLmZvcm0tcm93IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgICAgIGJvZHkgLmZvcm0gLmZvcm0tcm93LnRleHQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuICAgICAgICBwYWRkaW5nOiAyMHB4OyB9XG4gIGJvZHkudGFzc2ltbyB7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuICAgIGJvZHkudGFzc2ltbyBtYWluIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7IH1cbiAgICAgIGJvZHkudGFzc2ltbyBtYWluIC5jb250ZW50LWFyZWEge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIxNiwgMjE2LCAyMTYsIDAuMSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7IH1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuPSAgICAgICAgICAgIENvbnZlcnQgcHggdG8gcmVtICAgICAgICAgICAgPVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG49ICAgICAgICAgICAgTWVkaWEgcXVlcmllcyAgICAgICAgICAgID1cbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09XG49ICAgICAgICAgICAgTUlTQyAgICAgICAgICAgID1cbj09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0IGJ1dHRvbnNcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBNYWluIE1lbnVcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHQgZm9ybXNcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5ib2R5IHtcbiAgLyoqIHBhZ2Ugc3BlY2lmaWMgKiovIH1cbiAgYm9keSAubWFpbiAuZm9ybSwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIHtcbiAgICAvKioqIFxuXHRcdFx0XHRcdFx0U3R5bGVkIGNoZWNrYm94IFxuXHRcdFx0XHRcdFx0KioqL1xuICAgIC8qKiogXG5cdFx0XHRcdFx0XHRTdHlsZWQgcmFkaW8gXG5cdFx0XHRcdFx0XHQqKiovXG4gICAgLyoqKiBcblx0XHRcdFx0XHRcdFx0XHRTdHlsZWQgdGV4dGZpZWxkIFxuXHRcdFx0XHRcdFx0XHQqKiovXG4gICAgLyoqKiBcblx0XHRcdFx0XHRTdHlsZWQgSW5wdXQgQnV0dG9uIFxuXHRcdFx0XHQqKiovIH1cbiAgICBib2R5IC5tYWluIC5mb3JtIC5lcnJvci10eHQsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAuZXJyb3ItdHh0IHtcbiAgICAgIGNvbG9yOiAjRTIyQzQzO1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgYm9keSAubWFpbiAuZm9ybSAuZXJyb3ItdHh0LmVycm9yLXNwYWNlciwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5lcnJvci10eHQuZXJyb3Itc3BhY2VyIHtcbiAgICAgICAgbWFyZ2luOiA4cHggMCAwOyB9XG4gICAgYm9keSAubWFpbiAuZm9ybSAuZXJyb3ItY2hrLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLmVycm9yLWNoayB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2Q0MGMxMSAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMTIsIDUsIDE1LCAwLjEpICFpbXBvcnRhbnQ7IH1cbiAgICBib2R5IC5tYWluIC5mb3JtIC5lcnJvci1yZG86OmJlZm9yZSwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5lcnJvci1yZG86OmJlZm9yZSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2Q0MGMxMSAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMTIsIDUsIDE1LCAwLjEpICFpbXBvcnRhbnQ7IH1cbiAgICBib2R5IC5tYWluIC5mb3JtIC51bnN1Yi10eHQsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAudW5zdWItdHh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEzcHg7IH1cbiAgICBib2R5IC5tYWluIC5mb3JtIC5zaG93LCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLnNob3cge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIGJvZHkgLm1haW4gLmZvcm0gLnNob3c6OmJlZm9yZSwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5zaG93OjpiZWZvcmUge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2Q0MGMxMSAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIxMiwgNSwgMTUsIDAuMSkgIWltcG9ydGFudDsgfVxuICAgIGJvZHkgLm1haW4gLmZvcm0gLmZvcm0tcm93LCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLmZvcm0tcm93IHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgIG1hcmdpbjogMCAwIDE3cHg7IH1cbiAgICAgIGJvZHkgLm1haW4gLmZvcm0gLmZvcm0tcm93ID4gOmZpcnN0LWNoaWxkLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLmZvcm0tcm93ID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTZweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgICBib2R5IC5tYWluIC5mb3JtIC5mb3JtLXJvdyA+IDpmaXJzdC1jaGlsZCBsYWJlbDpmaXJzdC1jaGlsZCwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5mb3JtLXJvdyA+IDpmaXJzdC1jaGlsZCBsYWJlbDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxNnB4OyB9IH1cbiAgICAgIGJvZHkgLm1haW4gLmZvcm0gLmZvcm0tcm93IC5ncm91cC10ZXh0LCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLmZvcm0tcm93IC5ncm91cC10ZXh0IHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IH1cbiAgICAgIGJvZHkgLm1haW4gLmZvcm0gLmZvcm0tcm93IC5jaGVja2JveC1yb3csIGJvZHkgLm1haW4gLmZvcm0gLmZvcm0tcm93IC5yYWRpby1yb3csIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAuZm9ybS1yb3cgLmNoZWNrYm94LXJvdywgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5mb3JtLXJvdyAucmFkaW8tcm93IHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTZweDsgfVxuICAgICAgYm9keSAubWFpbiAuZm9ybSAuZm9ybS1yb3cubm8tbWFyZ2luID4gOmZpcnN0LWNoaWxkLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLmZvcm0tcm93Lm5vLW1hcmdpbiA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgYm9keSAubWFpbiAuZm9ybSAuZm9ybS1yb3cudGV4dCwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5mb3JtLXJvdy50ZXh0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICBib2R5IC5tYWluIC5mb3JtIC5mb3JtLXJvdy50ZXh0LmlzLXZpc2libGUsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAuZm9ybS1yb3cudGV4dC5pcy12aXNpYmxlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIGJvZHkgLm1haW4gLmZvcm0gLmRpdmlkZXIsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAuZGl2aWRlciB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDA7IH1cbiAgICAgIGJvZHkgLm1haW4gLmZvcm0gLmRpdmlkZXIgLmRpdmlkZXItbGluZSwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5kaXZpZGVyIC5kaXZpZGVyLWxpbmUge1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgYm9keSAubWFpbiAuZm9ybSAuZ3JpZC1jaGVja2JveC1ib3ggLmNoZWNrYm94LXJvdywgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLWNoZWNrYm94LWJveCAuY2hlY2tib3gtcm93IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBwYWRkaW5nOiAwIDR2dyAwIDZ2dzsgfVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgICBib2R5IC5tYWluIC5mb3JtIC5ncmlkLWNoZWNrYm94LWJveCAuY2hlY2tib3gtcm93LCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtY2hlY2tib3gtYm94IC5jaGVja2JveC1yb3cge1xuICAgICAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICAgIGJvZHkgLm1haW4gLmZvcm0gLmdyaWQtY2hlY2tib3gtYm94IGlucHV0LCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtY2hlY2tib3gtYm94IGlucHV0IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IC05OTk5cHg7IH1cbiAgICBib2R5IC5tYWluIC5mb3JtIC5ncmlkLWNoZWNrYm94LWJveCBpbnB1dCArIGxhYmVsLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtY2hlY2tib3gtYm94IGlucHV0ICsgbGFiZWwge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBjb2xvcjogIzI5MkIyOTsgfVxuICAgIGJvZHkgLm1haW4gLmZvcm0gLmdyaWQtY2hlY2tib3gtYm94IGlucHV0ICsgbGFiZWw6YmVmb3JlLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtY2hlY2tib3gtYm94IGlucHV0ICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAyMnB4O1xuICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgIzhkOWM4YztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7IH1cbiAgICBib2R5IC5tYWluIC5mb3JtIC5ncmlkLWNoZWNrYm94LWJveCBpbnB1dCArIGxhYmVsOmFmdGVyLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtY2hlY2tib3gtYm94IGlucHV0ICsgbGFiZWw6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiA5cHg7XG4gICAgICB0b3A6IDNweDtcbiAgICAgIHdpZHRoOiA1cHg7XG4gICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICBib3JkZXI6IHNvbGlkICNmZmZmZmY7XG4gICAgICBib3JkZXItd2lkdGg6IDAgM3B4IDNweCAwO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG4gICAgYm9keSAubWFpbiAuZm9ybSAuZ3JpZC1jaGVja2JveC1ib3ggaW5wdXQ6Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLWNoZWNrYm94LWJveCBpbnB1dDpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiAjOGQ5YzhjOyB9XG4gICAgYm9keSAubWFpbiAuZm9ybSAuZ3JpZC1jaGVja2JveC1ib3ggaW5wdXQ6bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtY2hlY2tib3gtYm94IGlucHV0Om5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlciB7XG4gICAgICBvcGFjaXR5OiAwOyB9XG4gICAgYm9keSAubWFpbiAuZm9ybSAuZ3JpZC1jaGVja2JveC1ib3ggaW5wdXQ6Y2hlY2tlZCArIGxhYmVsOmFmdGVyLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtY2hlY2tib3gtYm94IGlucHV0OmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gICAgYm9keSAubWFpbiAuZm9ybSAuZ3JpZC1yYWRpby1ib3ggLnJhZGlvLXJvdywgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLXJhZGlvLWJveCAucmFkaW8tcm93IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgICAgYm9keSAubWFpbiAuZm9ybSAuZ3JpZC1yYWRpby1ib3ggLnJhZGlvLXJvdywgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLXJhZGlvLWJveCAucmFkaW8tcm93IHtcbiAgICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgICAgIGJvZHkgLm1haW4gLmZvcm0gLmdyaWQtcmFkaW8tYm94IC5yYWRpby1yb3c6bGFzdC1jaGlsZCwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLXJhZGlvLWJveCAucmFkaW8tcm93Omxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW46IDA7IH1cbiAgICBib2R5IC5tYWluIC5mb3JtIC5ncmlkLXJhZGlvLWJveCBpbnB1dCwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLXJhZGlvLWJveCBpbnB1dCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAtOTk5OXB4OyB9XG4gICAgYm9keSAubWFpbiAuZm9ybSAuZ3JpZC1yYWRpby1ib3ggaW5wdXQgKyBsYWJlbCwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLXJhZGlvLWJveCBpbnB1dCArIGxhYmVsIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMzVweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgY29sb3I6ICMyOTJCMjk7IH1cbiAgICBib2R5IC5tYWluIC5mb3JtIC5ncmlkLXJhZGlvLWJveCBpbnB1dCArIGxhYmVsOmJlZm9yZSwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLXJhZGlvLWJveCBpbnB1dCArIGxhYmVsOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMjJweDtcbiAgICAgIGhlaWdodDogMjJweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICM4ZDljOGM7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuICAgIGJvZHkgLm1haW4gLmZvcm0gLmdyaWQtcmFkaW8tYm94IGlucHV0ICsgbGFiZWw6YWZ0ZXIsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAuZ3JpZC1yYWRpby1ib3ggaW5wdXQgKyBsYWJlbDphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgYmFja2dyb3VuZDogIzhkOWM4YztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNnB4O1xuICAgICAgbGVmdDogNnB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7IH1cbiAgICBib2R5IC5tYWluIC5mb3JtIC5ncmlkLXJhZGlvLWJveCBpbnB1dDpjaGVja2VkICsgbGFiZWw6YmVmb3JlLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtcmFkaW8tYm94IGlucHV0OmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgIGJvZHkgLm1haW4gLmZvcm0gLmdyaWQtcmFkaW8tYm94IGlucHV0Om5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlciwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLXJhZGlvLWJveCBpbnB1dDpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7IH1cbiAgICBib2R5IC5tYWluIC5mb3JtIC5ncmlkLXJhZGlvLWJveCBpbnB1dDpjaGVja2VkICsgbGFiZWw6YWZ0ZXIsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAuZ3JpZC1yYWRpby1ib3ggaW5wdXQ6Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gICAgYm9keSAubWFpbiAuZm9ybSAudGV4dGZpZWxkLCBib2R5IC5tYWluIC5mb3JtIC50ZXh0YXJlYSwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC50ZXh0ZmllbGQsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAudGV4dGFyZWEge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICBib2R5IC5tYWluIC5mb3JtIC50ZXh0ZmllbGQgLmNvbHVtbiwgYm9keSAubWFpbiAuZm9ybSAudGV4dGFyZWEgLmNvbHVtbiwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC50ZXh0ZmllbGQgLmNvbHVtbiwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC50ZXh0YXJlYSAuY29sdW1uIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgICAgIGJvZHkgLm1haW4gLmZvcm0gLnRleHRmaWVsZCAuY29sdW1uLCBib2R5IC5tYWluIC5mb3JtIC50ZXh0YXJlYSAuY29sdW1uLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLnRleHRmaWVsZCAuY29sdW1uLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLnRleHRhcmVhIC5jb2x1bW4ge1xuICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7IH0gfVxuICAgICAgYm9keSAubWFpbiAuZm9ybSAudGV4dGZpZWxkIGxhYmVsLCBib2R5IC5tYWluIC5mb3JtIC50ZXh0YXJlYSBsYWJlbCwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC50ZXh0ZmllbGQgbGFiZWwsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAudGV4dGFyZWEgbGFiZWwge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIGJvZHkgLm1haW4gLmZvcm0gLnRleHRmaWVsZCBsYWJlbCBzcGFuLCBib2R5IC5tYWluIC5mb3JtIC50ZXh0YXJlYSBsYWJlbCBzcGFuLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLnRleHRmaWVsZCBsYWJlbCBzcGFuLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLnRleHRhcmVhIGxhYmVsIHNwYW4ge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAzMDBtcztcbiAgICAgICAgICBjb2xvcjogI0M2QzZDNjsgfVxuICAgICAgYm9keSAubWFpbiAuZm9ybSAudGV4dGZpZWxkIGlucHV0LCBib2R5IC5tYWluIC5mb3JtIC50ZXh0ZmllbGQgdGV4dGFyZWEsIGJvZHkgLm1haW4gLmZvcm0gLnRleHRhcmVhIGlucHV0LCBib2R5IC5tYWluIC5mb3JtIC50ZXh0YXJlYSB0ZXh0YXJlYSwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC50ZXh0ZmllbGQgaW5wdXQsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAudGV4dGZpZWxkIHRleHRhcmVhLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLnRleHRhcmVhIGlucHV0LCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLnRleHRhcmVhIHRleHRhcmVhIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDE4cHggMjJweCAwO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggI2RlZGVkZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7IH1cbiAgICAgICAgYm9keSAubWFpbiAuZm9ybSAudGV4dGZpZWxkIGlucHV0OmZvY3VzLCBib2R5IC5tYWluIC5mb3JtIC50ZXh0ZmllbGQgdGV4dGFyZWE6Zm9jdXMsIGJvZHkgLm1haW4gLmZvcm0gLnRleHRhcmVhIGlucHV0OmZvY3VzLCBib2R5IC5tYWluIC5mb3JtIC50ZXh0YXJlYSB0ZXh0YXJlYTpmb2N1cywgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC50ZXh0ZmllbGQgaW5wdXQ6Zm9jdXMsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAudGV4dGZpZWxkIHRleHRhcmVhOmZvY3VzLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLnRleHRhcmVhIGlucHV0OmZvY3VzLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLnRleHRhcmVhIHRleHRhcmVhOmZvY3VzIHtcbiAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDNweCAjNWE1ZTVhO1xuICAgICAgICAgIGJvcmRlcjogMDsgfVxuICAgICAgICBib2R5IC5tYWluIC5mb3JtIC50ZXh0ZmllbGQgaW5wdXQ6Zm9jdXMgfiBzcGFuLCBib2R5IC5tYWluIC5mb3JtIC50ZXh0ZmllbGQgdGV4dGFyZWE6Zm9jdXMgfiBzcGFuLCBib2R5IC5tYWluIC5mb3JtIC50ZXh0YXJlYSBpbnB1dDpmb2N1cyB+IHNwYW4sIGJvZHkgLm1haW4gLmZvcm0gLnRleHRhcmVhIHRleHRhcmVhOmZvY3VzIH4gc3BhbiwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC50ZXh0ZmllbGQgaW5wdXQ6Zm9jdXMgfiBzcGFuLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLnRleHRmaWVsZCB0ZXh0YXJlYTpmb2N1cyB+IHNwYW4sIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAudGV4dGFyZWEgaW5wdXQ6Zm9jdXMgfiBzcGFuLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLnRleHRhcmVhIHRleHRhcmVhOmZvY3VzIH4gc3BhbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgIGNvbG9yOiAjMjkyQjI5O1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgIG1hcmdpbi10b3A6IC00cHg7IH1cbiAgICAgIGJvZHkgLm1haW4gLmZvcm0gLnRleHRmaWVsZCBpbnB1dDo6cGxhY2Vob2xkZXIsIGJvZHkgLm1haW4gLmZvcm0gLnRleHRmaWVsZCB0ZXh0YXJlYTo6cGxhY2Vob2xkZXIsIGJvZHkgLm1haW4gLmZvcm0gLnRleHRhcmVhIGlucHV0OjpwbGFjZWhvbGRlciwgYm9keSAubWFpbiAuZm9ybSAudGV4dGFyZWEgdGV4dGFyZWE6OnBsYWNlaG9sZGVyLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLnRleHRmaWVsZCBpbnB1dDo6cGxhY2Vob2xkZXIsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAudGV4dGZpZWxkIHRleHRhcmVhOjpwbGFjZWhvbGRlciwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC50ZXh0YXJlYSBpbnB1dDo6cGxhY2Vob2xkZXIsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAudGV4dGFyZWEgdGV4dGFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgb3BhY2l0eTogMDsgfVxuICAgICAgYm9keSAubWFpbiAuZm9ybSAudGV4dGZpZWxkIGxhYmVsOmZvY3VzLXdpdGhpbiA+IHNwYW4sXG4gICAgICBib2R5IC5tYWluIC5mb3JtIC50ZXh0ZmllbGQgaW5wdXQ6bm90KDpwbGFjZWhvbGRlci1zaG93bikgKyBzcGFuLCBib2R5IC5tYWluIC5mb3JtIC50ZXh0YXJlYSBsYWJlbDpmb2N1cy13aXRoaW4gPiBzcGFuLFxuICAgICAgYm9keSAubWFpbiAuZm9ybSAudGV4dGFyZWEgaW5wdXQ6bm90KDpwbGFjZWhvbGRlci1zaG93bikgKyBzcGFuLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLnRleHRmaWVsZCBsYWJlbDpmb2N1cy13aXRoaW4gPiBzcGFuLFxuICAgICAgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC50ZXh0ZmllbGQgaW5wdXQ6bm90KDpwbGFjZWhvbGRlci1zaG93bikgKyBzcGFuLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLnRleHRhcmVhIGxhYmVsOmZvY3VzLXdpdGhpbiA+IHNwYW4sXG4gICAgICBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLnRleHRhcmVhIGlucHV0Om5vdCg6cGxhY2Vob2xkZXItc2hvd24pICsgc3BhbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpOyB9XG4gICAgICBib2R5IC5tYWluIC5mb3JtIC50ZXh0ZmllbGQgdGV4dGFyZWE6bm90KDpwbGFjZWhvbGRlci1zaG93bikgKyBzcGFuLCBib2R5IC5tYWluIC5mb3JtIC50ZXh0YXJlYSB0ZXh0YXJlYTpub3QoOnBsYWNlaG9sZGVyLXNob3duKSArIHNwYW4sIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAudGV4dGZpZWxkIHRleHRhcmVhOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pICsgc3BhbiwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC50ZXh0YXJlYSB0ZXh0YXJlYTpub3QoOnBsYWNlaG9sZGVyLXNob3duKSArIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgYm9keSAubWFpbiAuZm9ybSAudGV4dGFyZWEgdGV4dGFyZWEsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAudGV4dGFyZWEgdGV4dGFyZWEge1xuICAgICAgaGVpZ2h0OiAxMDBweDsgfVxuICAgIGJvZHkgLm1haW4gLmZvcm0gLnRleHRhcmVhIHNwYW4sIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAudGV4dGFyZWEgc3BhbiB7XG4gICAgICBmb250LXNpemU6IDEzcHg7IH1cbiAgICBib2R5IC5tYWluIC5mb3JtIC50ZXh0YXJlYS5pcy1oaWRkZW4sIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAudGV4dGFyZWEuaXMtaGlkZGVuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBib2R5IC5tYWluIC5mb3JtIGlucHV0W3R5cGU9c3VibWl0XSwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBtYXJnaW46IC0xcHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxcHg7IH1cbiAgICBib2R5IC5tYWluIC5mb3JtIGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cywgYm9keSAubWFpbiAuY29udGVudC1hcmVhIGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cyB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIGJvZHkgLm1haW4gLmZvcm0gLmJ0biwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5idG4ge1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7IH1cbiAgICBib2R5IC5tYWluIC5mb3JtIC5idG4gLmJ0bi1sYWJlbCwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5idG4gLmJ0bi1sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBwYWRkaW5nOiAxMHB4IDQwcHggOHB4IDQwcHg7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41cyBlYXNlLW91dDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5mb3JtLXJvdyB7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5mb3JtLXJvdyAuY29sdW1uIHtcbiAgICAgIG1hcmdpbjogMTdweCAwIDAgMDsgfVxuICBib2R5LmxvciAubWFpbiAuZm9ybSwgYm9keS5sb3IgLm1haW4gLmNvbnRlbnQtYXJlYSB7XG4gICAgLyoqKiBcblx0XHRcdFx0XHQgICBTdHlsZWQgYm94IFxuXHRcdFx0XHQgICAqKiovXG4gICAgLyoqKiBcblx0XHRcdFx0XHQgICBTdHlsZWQgY2hlY2tib3ggXG5cdFx0XHRcdCAgICoqKi9cbiAgICAvKioqIFxuXHRcdFx0XHRcdFx0XHRTdHlsZWQgQnV0dG9uIFxuXHRcdFx0XHRcdFx0KioqLyB9XG4gICAgYm9keS5sb3IgLm1haW4gLmZvcm0gLmdyaWQtY2hlY2tib3gtYm94IGlucHV0ICsgbGFiZWwsIGJvZHkubG9yIC5tYWluIC5mb3JtIC5ncmlkLXJhZGlvLWJveCBpbnB1dCArIGxhYmVsLCBib2R5LmxvciAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLWNoZWNrYm94LWJveCBpbnB1dCArIGxhYmVsLCBib2R5LmxvciAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLXJhZGlvLWJveCBpbnB1dCArIGxhYmVsIHtcbiAgICAgIGNvbG9yOiAjMjkyQjI5OyB9XG4gICAgYm9keS5sb3IgLm1haW4gLmZvcm0gLmdyaWQtY2hlY2tib3gtYm94IGlucHV0ICsgbGFiZWw6YmVmb3JlLCBib2R5LmxvciAubWFpbiAuZm9ybSAuZ3JpZC1yYWRpby1ib3ggaW5wdXQgKyBsYWJlbDpiZWZvcmUsIGJvZHkubG9yIC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtY2hlY2tib3gtYm94IGlucHV0ICsgbGFiZWw6YmVmb3JlLCBib2R5LmxvciAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLXJhZGlvLWJveCBpbnB1dCArIGxhYmVsOmJlZm9yZSB7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjYWM5NjVhOyB9XG4gICAgYm9keS5sb3IgLm1haW4gLmZvcm0gLmdyaWQtY2hlY2tib3gtYm94IGlucHV0ICsgbGFiZWw6YWZ0ZXIsIGJvZHkubG9yIC5tYWluIC5mb3JtIC5ncmlkLXJhZGlvLWJveCBpbnB1dCArIGxhYmVsOmFmdGVyLCBib2R5LmxvciAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLWNoZWNrYm94LWJveCBpbnB1dCArIGxhYmVsOmFmdGVyLCBib2R5LmxvciAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLXJhZGlvLWJveCBpbnB1dCArIGxhYmVsOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNhYzk2NWE7IH1cbiAgICBib2R5LmxvciAubWFpbiAuZm9ybSAuZ3JpZC1jaGVja2JveC1ib3ggaW5wdXQ6Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSwgYm9keS5sb3IgLm1haW4gLmZvcm0gLmdyaWQtcmFkaW8tYm94IGlucHV0OmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsIGJvZHkubG9yIC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtY2hlY2tib3gtYm94IGlucHV0OmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsIGJvZHkubG9yIC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtcmFkaW8tYm94IGlucHV0OmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgYm9yZGVyOiAycHggc29saWQgI2FjOTY1YTsgfVxuICAgIGJvZHkubG9yIC5tYWluIC5mb3JtIC5ncmlkLXJhZGlvLWJveCwgYm9keS5sb3IgLm1haW4gLmNvbnRlbnQtYXJlYSAuZ3JpZC1yYWRpby1ib3gge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICBib2R5LmxvciAubWFpbiAuZm9ybSAuZ3JpZC1yYWRpby1ib3ggaW5wdXQgKyBsYWJlbDpiZWZvcmUsIGJvZHkubG9yIC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtcmFkaW8tYm94IGlucHV0ICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgbWFyZ2luLXRvcDogM3B4OyB9XG4gICAgICBib2R5LmxvciAubWFpbiAuZm9ybSAuZ3JpZC1yYWRpby1ib3ggaW5wdXQgKyBsYWJlbDphZnRlciwgYm9keS5sb3IgLm1haW4gLmNvbnRlbnQtYXJlYSAuZ3JpZC1yYWRpby1ib3ggaW5wdXQgKyBsYWJlbDphZnRlciB7XG4gICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIGxlZnQ6IDdweDsgfVxuICAgIGJvZHkubG9yIC5tYWluIC5mb3JtIC5ncmlkLWNoZWNrYm94LWJveCBpbnB1dDpjaGVja2VkICsgbGFiZWw6YmVmb3JlLCBib2R5LmxvciAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLWNoZWNrYm94LWJveCBpbnB1dDpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6ICNhYzk2NWE7IH1cbiAgICBib2R5LmxvciAubWFpbiAuZm9ybSAuYnRuIC5idG4tYnRuIC5idG4tbGFiZWwsIGJvZHkubG9yIC5tYWluIC5jb250ZW50LWFyZWEgLmJ0biAuYnRuLWJ0biAuYnRuLWxhYmVsIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiAjYWM5NjVhO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYWM5NjVhO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgICAgYm9keS5sb3IgLm1haW4gLmZvcm0gLmJ0biAuYnRuLWJ0biAuYnRuLWxhYmVsOmhvdmVyLCBib2R5LmxvciAubWFpbiAuY29udGVudC1hcmVhIC5idG4gLmJ0bi1idG4gLmJ0bi1sYWJlbDpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICM4ZDdiNGI7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM4ZDdiNGI7IH1cbiAgICBib2R5LmxvciAubWFpbiAuZm9ybSAuYnRuLnVuc3Vic2NyaWJlLWJ0biAuYnRuLWJ0biAuYnRuLWxhYmVsLCBib2R5LmxvciAubWFpbiAuY29udGVudC1hcmVhIC5idG4udW5zdWJzY3JpYmUtYnRuIC5idG4tYnRuIC5idG4tbGFiZWwge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIHBhZGRpbmc6IDVweCAyMHB4OyB9XG4gICAgICBib2R5LmxvciAubWFpbiAuZm9ybSAuYnRuLnVuc3Vic2NyaWJlLWJ0biAuYnRuLWJ0biAuYnRuLWxhYmVsOmhvdmVyLCBib2R5LmxvciAubWFpbiAuY29udGVudC1hcmVhIC5idG4udW5zdWJzY3JpYmUtYnRuIC5idG4tYnRuIC5idG4tbGFiZWw6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICBib2R5LnRhc3NpbW8gLm1haW4gLmZvcm0sIGJvZHkudGFzc2ltbyAubWFpbiAuY29udGVudC1hcmVhIHtcbiAgICAvKioqIFxuXHRcdFx0XHRcdCAgIFN0eWxlZCBib3ggXG5cdFx0XHRcdCAgICoqKi9cbiAgICAvKioqIFxuXHRcdFx0XHRcdCAgIFN0eWxlZCBjaGVja2JveCBcblx0XHRcdFx0ICAgKioqL1xuICAgIC8qKiogXG5cdFx0XHRcdFx0XHRcdFN0eWxlZCBCdXR0b24gXG5cdFx0XHRcdFx0XHQqKiovIH1cbiAgICBib2R5LnRhc3NpbW8gLm1haW4gLmZvcm0gLmdyaWQtY2hlY2tib3gtYm94IGlucHV0ICsgbGFiZWwsIGJvZHkudGFzc2ltbyAubWFpbiAuZm9ybSAuZ3JpZC1yYWRpby1ib3ggaW5wdXQgKyBsYWJlbCwgYm9keS50YXNzaW1vIC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtY2hlY2tib3gtYm94IGlucHV0ICsgbGFiZWwsIGJvZHkudGFzc2ltbyAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLXJhZGlvLWJveCBpbnB1dCArIGxhYmVsIHtcbiAgICAgIGNvbG9yOiAjMjkyQjI5OyB9XG4gICAgYm9keS50YXNzaW1vIC5tYWluIC5mb3JtIC5ncmlkLWNoZWNrYm94LWJveCBpbnB1dCArIGxhYmVsOmJlZm9yZSwgYm9keS50YXNzaW1vIC5tYWluIC5mb3JtIC5ncmlkLXJhZGlvLWJveCBpbnB1dCArIGxhYmVsOmJlZm9yZSwgYm9keS50YXNzaW1vIC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtY2hlY2tib3gtYm94IGlucHV0ICsgbGFiZWw6YmVmb3JlLCBib2R5LnRhc3NpbW8gLm1haW4gLmNvbnRlbnQtYXJlYSAuZ3JpZC1yYWRpby1ib3ggaW5wdXQgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgYm9yZGVyOiAycHggc29saWQgIzZlYWEyNzsgfVxuICAgIGJvZHkudGFzc2ltbyAubWFpbiAuZm9ybSAuZ3JpZC1jaGVja2JveC1ib3ggaW5wdXQgKyBsYWJlbDphZnRlciwgYm9keS50YXNzaW1vIC5tYWluIC5mb3JtIC5ncmlkLXJhZGlvLWJveCBpbnB1dCArIGxhYmVsOmFmdGVyLCBib2R5LnRhc3NpbW8gLm1haW4gLmNvbnRlbnQtYXJlYSAuZ3JpZC1jaGVja2JveC1ib3ggaW5wdXQgKyBsYWJlbDphZnRlciwgYm9keS50YXNzaW1vIC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtcmFkaW8tYm94IGlucHV0ICsgbGFiZWw6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogIzZlYWEyNzsgfVxuICAgIGJvZHkudGFzc2ltbyAubWFpbiAuZm9ybSAuZ3JpZC1jaGVja2JveC1ib3ggaW5wdXQ6Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSwgYm9keS50YXNzaW1vIC5tYWluIC5mb3JtIC5ncmlkLXJhZGlvLWJveCBpbnB1dDpjaGVja2VkICsgbGFiZWw6YmVmb3JlLCBib2R5LnRhc3NpbW8gLm1haW4gLmNvbnRlbnQtYXJlYSAuZ3JpZC1jaGVja2JveC1ib3ggaW5wdXQ6Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSwgYm9keS50YXNzaW1vIC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtcmFkaW8tYm94IGlucHV0OmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgYm9yZGVyOiAycHggc29saWQgIzZlYWEyNzsgfVxuICAgIGJvZHkudGFzc2ltbyAubWFpbiAuZm9ybSAuZ3JpZC1yYWRpby1ib3gsIGJvZHkudGFzc2ltbyAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLXJhZGlvLWJveCB7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIGJvZHkudGFzc2ltbyAubWFpbiAuZm9ybSAuZ3JpZC1yYWRpby1ib3ggaW5wdXQgKyBsYWJlbDpiZWZvcmUsIGJvZHkudGFzc2ltbyAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLXJhZGlvLWJveCBpbnB1dCArIGxhYmVsOmJlZm9yZSB7XG4gICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDNweDsgfVxuICAgICAgYm9keS50YXNzaW1vIC5tYWluIC5mb3JtIC5ncmlkLXJhZGlvLWJveCBpbnB1dCArIGxhYmVsOmFmdGVyLCBib2R5LnRhc3NpbW8gLm1haW4gLmNvbnRlbnQtYXJlYSAuZ3JpZC1yYWRpby1ib3ggaW5wdXQgKyBsYWJlbDphZnRlciB7XG4gICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIGxlZnQ6IDdweDsgfVxuICAgIGJvZHkudGFzc2ltbyAubWFpbiAuZm9ybSAuZ3JpZC1jaGVja2JveC1ib3ggaW5wdXQ6Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSwgYm9keS50YXNzaW1vIC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtY2hlY2tib3gtYm94IGlucHV0OmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogI2FjOTY1YTsgfVxuICAgIGJvZHkudGFzc2ltbyAubWFpbiAuZm9ybSAudGV4dGZpZWxkIGxhYmVsIGlucHV0LCBib2R5LnRhc3NpbW8gLm1haW4gLmNvbnRlbnQtYXJlYSAudGV4dGZpZWxkIGxhYmVsIGlucHV0IHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjE2LCAyMTYsIDIxNiwgMC4xKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7IH1cbiAgICBib2R5LnRhc3NpbW8gLm1haW4gLmZvcm0gLmJ0biAuYnRuLWJ0biAuYnRuLWxhYmVsLCBib2R5LnRhc3NpbW8gLm1haW4gLmNvbnRlbnQtYXJlYSAuYnRuIC5idG4tYnRuIC5idG4tbGFiZWwge1xuICAgICAgYmFja2dyb3VuZDogIzAwMDAwMDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgYm9yZGVyLXJhZGl1czogNDVweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNhYWE7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7IH1cbiAgICAgIGJvZHkudGFzc2ltbyAubWFpbiAuZm9ybSAuYnRuIC5idG4tYnRuIC5idG4tbGFiZWw6aG92ZXIsIGJvZHkudGFzc2ltbyAubWFpbiAuY29udGVudC1hcmVhIC5idG4gLmJ0bi1idG4gLmJ0bi1sYWJlbDpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICM2NjY2NjY7IH1cbiAgICBib2R5LnRhc3NpbW8gLm1haW4gLmZvcm0gLmJ0bi51bnN1YnNjcmliZS1idG4gLmJ0bi1idG4gLmJ0bi1sYWJlbCwgYm9keS50YXNzaW1vIC5tYWluIC5jb250ZW50LWFyZWEgLmJ0bi51bnN1YnNjcmliZS1idG4gLmJ0bi1idG4gLmJ0bi1sYWJlbCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgcGFkZGluZzogNXB4IDIwcHg7IH1cbiAgICAgIGJvZHkudGFzc2ltbyAubWFpbiAuZm9ybSAuYnRuLnVuc3Vic2NyaWJlLWJ0biAuYnRuLWJ0biAuYnRuLWxhYmVsOmhvdmVyLCBib2R5LnRhc3NpbW8gLm1haW4gLmNvbnRlbnQtYXJlYSAuYnRuLnVuc3Vic2NyaWJlLWJ0biAuYnRuLWJ0biAuYnRuLWxhYmVsOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgYm9keSAubWFpbiAuZm9ybSAuZ3JpZC1jaGstYm94IC5jaGstYm94LXJvdyAuZXJyb3IgaW5wdXQ6bm90KDpjaGVja2VkKSB+IC5jaGVja21hcmssIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAuZ3JpZC1jaGstYm94IC5jaGstYm94LXJvdyAuZXJyb3IgaW5wdXQ6bm90KDpjaGVja2VkKSB+IC5jaGVja21hcmsge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNFMjJDNDM7IH1cbiAgYm9keSAubWFpbiAuZm9ybSAuZ3JpZC1jaGstYm94IC5jaGstYm94LXJvdyAuZXJyb3IgaW5wdXQ6bm90KDpjaGVja2VkKSB+IGxhYmVsLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtY2hrLWJveCAuY2hrLWJveC1yb3cgLmVycm9yIGlucHV0Om5vdCg6Y2hlY2tlZCkgfiBsYWJlbCB7XG4gICAgY29sb3I6ICNFMjJDNDM7IH1cbiAgICBib2R5IC5tYWluIC5mb3JtIC5ncmlkLWNoay1ib3ggLmNoay1ib3gtcm93IC5lcnJvciBpbnB1dDpub3QoOmNoZWNrZWQpIH4gbGFiZWwgLmNoZWNrbWFyaywgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLWNoay1ib3ggLmNoay1ib3gtcm93IC5lcnJvciBpbnB1dDpub3QoOmNoZWNrZWQpIH4gbGFiZWwgLmNoZWNrbWFyayB7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjRTIyQzQzOyB9XG4gIGJvZHkgLm1haW4gLmZvcm0gLmdyaWQtY2hrLWJveCAuY2hrLWJveC1yb3cgLmRpc2FibGVkLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtY2hrLWJveCAuY2hrLWJveC1yb3cgLmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb2xvcjogI2Q0ZGVkMzsgfVxuICAgIGJvZHkgLm1haW4gLmZvcm0gLmdyaWQtY2hrLWJveCAuY2hrLWJveC1yb3cgLmRpc2FibGVkIC5jaGVja21hcmssIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAuZ3JpZC1jaGstYm94IC5jaGstYm94LXJvdyAuZGlzYWJsZWQgLmNoZWNrbWFyayB7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjZDRkZWQzOyB9XG4gIGJvZHkgLm1haW4gLmZvcm0gLmdyaWQtY2hlY2tib3gtYm94IC5lcnJvciBpbnB1dDpub3QoOmNoZWNrZWQpICsgbGFiZWwsIGJvZHkgLm1haW4gLmZvcm0gLmdyaWQtcmFkaW8tYm94IC5lcnJvciBpbnB1dDpub3QoOmNoZWNrZWQpICsgbGFiZWwsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAuZ3JpZC1jaGVja2JveC1ib3ggLmVycm9yIGlucHV0Om5vdCg6Y2hlY2tlZCkgKyBsYWJlbCwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLXJhZGlvLWJveCAuZXJyb3IgaW5wdXQ6bm90KDpjaGVja2VkKSArIGxhYmVsIHtcbiAgICBjb2xvcjogI0UyMkM0MzsgfVxuICBib2R5IC5tYWluIC5mb3JtIC5ncmlkLWNoZWNrYm94LWJveCAuZXJyb3IgaW5wdXQ6bm90KDpjaGVja2VkKSArIGxhYmVsOmJlZm9yZSwgYm9keSAubWFpbiAuZm9ybSAuZ3JpZC1yYWRpby1ib3ggLmVycm9yIGlucHV0Om5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAuZ3JpZC1jaGVja2JveC1ib3ggLmVycm9yIGlucHV0Om5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAuZ3JpZC1yYWRpby1ib3ggLmVycm9yIGlucHV0Om5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNFMjJDNDM7IH1cbiAgYm9keSAubWFpbiAuZm9ybSAuZ3JpZC1jaGVja2JveC1ib3ggLmRpc2FibGVkLCBib2R5IC5tYWluIC5mb3JtIC5ncmlkLXJhZGlvLWJveCAuZGlzYWJsZWQsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAuZ3JpZC1jaGVja2JveC1ib3ggLmRpc2FibGVkLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtcmFkaW8tYm94IC5kaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgICBib2R5IC5tYWluIC5mb3JtIC5ncmlkLWNoZWNrYm94LWJveCAuZGlzYWJsZWQgaW5wdXQ6bm90KDpjaGVja2VkKSArIGxhYmVsLCBib2R5IC5tYWluIC5mb3JtIC5ncmlkLXJhZGlvLWJveCAuZGlzYWJsZWQgaW5wdXQ6bm90KDpjaGVja2VkKSArIGxhYmVsLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLmdyaWQtY2hlY2tib3gtYm94IC5kaXNhYmxlZCBpbnB1dDpub3QoOmNoZWNrZWQpICsgbGFiZWwsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAuZ3JpZC1yYWRpby1ib3ggLmRpc2FibGVkIGlucHV0Om5vdCg6Y2hlY2tlZCkgKyBsYWJlbCB7XG4gICAgICBjb2xvcjogI2Q0ZGVkMzsgfVxuICAgIGJvZHkgLm1haW4gLmZvcm0gLmdyaWQtY2hlY2tib3gtYm94IC5kaXNhYmxlZCBpbnB1dDpub3QoOmNoZWNrZWQpICsgbGFiZWw6YmVmb3JlLCBib2R5IC5tYWluIC5mb3JtIC5ncmlkLXJhZGlvLWJveCAuZGlzYWJsZWQgaW5wdXQ6bm90KDpjaGVja2VkKSArIGxhYmVsOmJlZm9yZSwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLWNoZWNrYm94LWJveCAuZGlzYWJsZWQgaW5wdXQ6bm90KDpjaGVja2VkKSArIGxhYmVsOmJlZm9yZSwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC5ncmlkLXJhZGlvLWJveCAuZGlzYWJsZWQgaW5wdXQ6bm90KDpjaGVja2VkKSArIGxhYmVsOmJlZm9yZSB7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjZDRkZWQzOyB9XG4gIGJvZHkgLm1haW4gLmZvcm0gLnN1Ym1pdC1idG4tYnRuLmRpc2FibGVkLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLnN1Ym1pdC1idG4tYnRuLmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kOiAjZDRkZWQzO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIGJvZHkgLm1haW4gLmZvcm0gLnRleHRmaWVsZCBsYWJlbC5lcnJvciBpbnB1dCwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC50ZXh0ZmllbGQgbGFiZWwuZXJyb3IgaW5wdXQge1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjRTIyQzQzOyB9XG4gIGJvZHkgLm1haW4gLmZvcm0gLnRleHRmaWVsZCBsYWJlbC5lcnJvciBzcGFuLCBib2R5IC5tYWluIC5jb250ZW50LWFyZWEgLnRleHRmaWVsZCBsYWJlbC5lcnJvciBzcGFuIHtcbiAgICBjb2xvcjogI0UyMkM0MzsgfVxuICBib2R5IC5tYWluIC5mb3JtIC50ZXh0ZmllbGQgbGFiZWwuZGlzYWJsZWQsIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAudGV4dGZpZWxkIGxhYmVsLmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAgIGJvZHkgLm1haW4gLmZvcm0gLnRleHRmaWVsZCBsYWJlbC5kaXNhYmxlZCBsYWJlbCwgYm9keSAubWFpbiAuY29udGVudC1hcmVhIC50ZXh0ZmllbGQgbGFiZWwuZGlzYWJsZWQgbGFiZWwge1xuICAgICAgYmFja2dyb3VuZDogIzI5MkIyOSAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICNkNGRlZDMgIWltcG9ydGFudDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgYm9keSAubWFpbiAuZm9ybSAudGV4dGZpZWxkIGxhYmVsLmRpc2FibGVkIHNwYW4sIGJvZHkgLm1haW4gLmNvbnRlbnQtYXJlYSAudGV4dGZpZWxkIGxhYmVsLmRpc2FibGVkIHNwYW4ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiogVE9HR0xFIENPTlRBSU5FUiAqKi9cbi50b2dnbGUge1xuICBzdHJva2U6ICMzMjMyMzI7IH1cblxuLnRvZ2dsZWQgLnRpdGxlLWNvbnRhaW5lciBoNCwgLnRvZ2dsZWQgPiBoNCB7XG4gIGNvbG9yOiAjZDQwNTExOyB9XG5cbi50b2dnbGUtLWljb24ge1xuICBzdHJva2U6ICMzMjMyMzI7XG4gIHJpZ2h0OiAxNXB4OyB9XG5cbi50b2dnbGVkIC50b2dnbGUtLWljb24ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICBzdHJva2U6ICNkNDA1MTE7IH1cblxuLnRvZ2dsZS1zaG93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAtNjBweDsgfVxuXG4uZ3JpZC10b2dnbGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBtYXJnaW46IDAgMCAxNnB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5ncmlkLXRvZ2dsZSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH0gfVxuICAuZ3JpZC10b2dnbGUgLnRvZ2dsZS10eHQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY3O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBwYWRkaW5nLXRvcDogM3B4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAuZ3JpZC10b2dnbGUgLnRvZ2dsZS10eHQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuICAuZ3JpZC10b2dnbGUgLnRvZ2dsZS10eHQgc3Ryb25nIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbGluZS1oZWlnaHQ6IGNhbGMoMzAvMTgpO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5ncmlkLXRvZ2dsZSAudG9nZ2xlLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLmdyaWQtdG9nZ2xlIC50b2dnbGUtY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfSB9XG4gICAgLmdyaWQtdG9nZ2xlIC50b2dnbGUtY29udGFpbmVyIC5sYWJlbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgd2lkdGg6IDE3MHB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgIC5ncmlkLXRvZ2dsZSAudG9nZ2xlLWNvbnRhaW5lciAuc3dpdGNoIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiA2MHB4OyB9XG4gICAgICAuZ3JpZC10b2dnbGUgLnRvZ2dsZS1jb250YWluZXIgLnN3aXRjaCBpbnB1dCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuZ3JpZC10b2dnbGUgLnRvZ2dsZS1jb250YWluZXIgLnRvZ2dsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgdHJhbnNpdGlvbjogLjRzO1xuICAgICAgYm9yZGVyOiAycHggc29saWQgI2E5YTlhOTtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAgIC5ncmlkLXRvZ2dsZSAudG9nZ2xlLWNvbnRhaW5lciAudG9nZ2xlIC50b2dnbGUtb24ge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDA7IH1cbiAgICAgIC5ncmlkLXRvZ2dsZSAudG9nZ2xlLWNvbnRhaW5lciAudG9nZ2xlIC50b2dnbGUtb2ZmIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBjb2xvcjogIzhlOGU4ZTtcbiAgICAgICAganVzdGlmeS1zZWxmOiBzdGFydDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFweDsgfVxuICAgIC5ncmlkLXRvZ2dsZSAudG9nZ2xlLWNvbnRhaW5lciAudG9nZ2xlOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgYm90dG9tOiAtMnB4O1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGxlZnQ6IC0ycHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0cmFuc2l0aW9uOiAuNHM7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNhOWE5YTk7IH1cbiAgICAuZ3JpZC10b2dnbGUgLnRvZ2dsZS1jb250YWluZXIgaW5wdXQ6Y2hlY2tlZCArIC50b2dnbGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2FjOTY1YTtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNhYzk2NWE7IH1cbiAgICAuZ3JpZC10b2dnbGUgLnRvZ2dsZS1jb250YWluZXIgaW5wdXQ6Y2hlY2tlZCArIC50b2dnbGU6YmVmb3JlIHtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNhYzk2NWE7XG4gICAgICBsZWZ0OiAtM3B4OyB9XG4gICAgLmdyaWQtdG9nZ2xlIC50b2dnbGUtY29udGFpbmVyIGlucHV0OmNoZWNrZWQgKyAudG9nZ2xlOmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzdweCk7IH1cbiAgICAuZ3JpZC10b2dnbGUgLnRvZ2dsZS1jb250YWluZXIgLnRvZ2dsZS5yb3VuZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAzNHB4OyB9XG4gICAgLmdyaWQtdG9nZ2xlIC50b2dnbGUtY29udGFpbmVyIC50b2dnbGUucm91bmQ6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuXG5ib2R5LnRhc3NpbW8gLmdyaWQtdG9nZ2xlIC50b2dnbGUtY29udGFpbmVyIC50b2dnbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDJweCBzb2xpZCAjYTlhOWE5OyB9XG4gIGJvZHkudGFzc2ltbyAuZ3JpZC10b2dnbGUgLnRvZ2dsZS1jb250YWluZXIgLnRvZ2dsZSAudG9nZ2xlLW9uIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICBib2R5LnRhc3NpbW8gLmdyaWQtdG9nZ2xlIC50b2dnbGUtY29udGFpbmVyIC50b2dnbGUgLnRvZ2dsZS1vZmYge1xuICAgIGNvbG9yOiAjOGU4ZThlOyB9XG5cbmJvZHkudGFzc2ltbyAuZ3JpZC10b2dnbGUgLnRvZ2dsZS1jb250YWluZXIgLnRvZ2dsZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDJweCBzb2xpZCAjYTlhOWE5OyB9XG5cbmJvZHkudGFzc2ltbyAuZ3JpZC10b2dnbGUgLnRvZ2dsZS1jb250YWluZXIgaW5wdXQ6Y2hlY2tlZCArIC50b2dnbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmVhYTI3O1xuICBib3JkZXI6IDJweCBzb2xpZCAjNmVhYTI3OyB9XG4gIGJvZHkudGFzc2ltbyAuZ3JpZC10b2dnbGUgLnRvZ2dsZS1jb250YWluZXIgaW5wdXQ6Y2hlY2tlZCArIC50b2dnbGUgLnRvZ2dsZS1vZmYge1xuICAgIGNvbG9yOiAjNmVhYTI3OyB9XG5cbmJvZHkudGFzc2ltbyAuZ3JpZC10b2dnbGUgLnRvZ2dsZS1jb250YWluZXIgaW5wdXQ6Y2hlY2tlZCArIC50b2dnbGU6YmVmb3JlIHtcbiAgYm9yZGVyOiAycHggc29saWQgIzZlYWEyNztcbiAgbGVmdDogLTNweDsgfVxuXG4vKiogRU5EIFRPR0dMRSBDT05UQUlORVIgKiovXG4vKiEgbm9ybWFsaXplLmNzcyB2NC4xLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgYW5kIGlPUy5cbiAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAyICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAzICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMyAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICovXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG50ZW1wbGF0ZSxcbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBMaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0cztcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZS13aWR0aDogMDsgfVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogaW5oZXJpdDsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAqL1xuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyB9XG5cbi8qKlxuICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICovXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAxICovXG4gIGhlaWdodDogMDtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLyogMiAqLyB9XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvbnQgd2VpZ2h0IHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5idXR0b24sXG5pbnB1dCB7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uLFxuc2VsZWN0IHtcbiAgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4vKipcbiAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDsgfVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7IH1cblxuLyoqXG4gKiBDaGFuZ2UgdGhlIGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07IH1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7XG4gIC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgLyogMSAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gKi9cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4gKi9cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSB0ZXh0IHN0eWxlIG9mIHBsYWNlaG9sZGVycyBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cbjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBvcGFjaXR5OiAwLjU0OyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi8gfVxuXG4vKiBoZWFkZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5ib2R5LmxvciBoZWFkZXIge1xuICBiYWNrZ3JvdW5kOiAjMWMxYzFjO1xuICBmb250LXNpemU6IDEzcHg7IH1cbiAgYm9keS5sb3IgaGVhZGVyOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIGhlaWdodDogNXB4O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2FiODc0MyAwJSwgI2RhYjY2NyAzMyUsICNhYjg3NDMgNzElLCAjZGFiNjY3IDEwMCUpOyB9XG4gIGJvZHkubG9yIGhlYWRlciBzZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICBib2R5LmxvciBoZWFkZXIgc2VjdGlvbi5oZWFkZXIge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7IH1cbiAgICBib2R5LmxvciBoZWFkZXIgc2VjdGlvbi51c3Age1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gICAgICBjb2xvcjogI2ViYmM1NTtcbiAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgIG1heC13aWR0aDogMTAwMHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgICBib2R5LmxvciBoZWFkZXIgc2VjdGlvbi51c3AgLnVzcC1pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1pbi13aWR0aDogMjgwcHg7IH1cbiAgICAgICAgYm9keS5sb3IgaGVhZGVyIHNlY3Rpb24udXNwIC51c3AtaXRlbSBpbWcge1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgICAgIGJvZHkubG9yIGhlYWRlciBzZWN0aW9uLnVzcCAudXNwLWl0ZW0uZHQge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICAgICAgYm9keS5sb3IgaGVhZGVyIHNlY3Rpb24udXNwIC51c3AtaXRlbS5kdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4OyB9IH1cbiAgICBib2R5LmxvciBoZWFkZXIgc2VjdGlvbiAubG9nbyB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDIwcHggMCAyMHB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgICAgYm9keS5sb3IgaGVhZGVyIHNlY3Rpb24gLmxvZ28ge1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAwIDEwMHB4OyB9IH1cbiAgICAgIGJvZHkubG9yIGhlYWRlciBzZWN0aW9uIC5sb2dvIGltZyB7XG4gICAgICAgIHdpZHRoOiA3NnB4OyB9XG4gICAgYm9keS5sb3IgaGVhZGVyIHNlY3Rpb24gLm1lbnUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgYm9keS5sb3IgaGVhZGVyIHNlY3Rpb24gLm1lbnUgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgICAgYm9keS5sb3IgaGVhZGVyIHNlY3Rpb24gLm1lbnUge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgcGFkZGluZzogMCAxMDBweCAwIDA7IH0gfVxuICAgICAgYm9keS5sb3IgaGVhZGVyIHNlY3Rpb24gLm1lbnUgLmxlZnQsIGJvZHkubG9yIGhlYWRlciBzZWN0aW9uIC5tZW51IC5yaWdodCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICAgICAgYm9keS5sb3IgaGVhZGVyIHNlY3Rpb24gLm1lbnUgLmxlZnQsIGJvZHkubG9yIGhlYWRlciBzZWN0aW9uIC5tZW51IC5yaWdodCB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9IH1cbiAgICAgICAgYm9keS5sb3IgaGVhZGVyIHNlY3Rpb24gLm1lbnUgLmxlZnQgLm1lbnUtaXRlbSwgYm9keS5sb3IgaGVhZGVyIHNlY3Rpb24gLm1lbnUgLnJpZ2h0IC5tZW51LWl0ZW0ge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICBoZWlnaHQ6IDg4cHg7IH1cbiAgICAgIGJvZHkubG9yIGhlYWRlciBzZWN0aW9uIC5tZW51IC5yaWdodCAubWVudS1pdGVtIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgICAgICAgcGFkZGluZzogMjBweCAzMHB4OyB9XG5cbmJvZHkudGFzc2ltbyBoZWFkZXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBmb250LXNpemU6IDEzcHg7IH1cbiAgYm9keS50YXNzaW1vIGhlYWRlcjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBoZWlnaHQ6IDVweDtcbiAgICBiYWNrZ3JvdW5kOiAjNmVhYTI3OyB9XG4gIGJvZHkudGFzc2ltbyBoZWFkZXIgc2VjdGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgYm9keS50YXNzaW1vIGhlYWRlciBzZWN0aW9uLmhlYWRlciB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q0ZDRkNDsgfVxuICAgIGJvZHkudGFzc2ltbyBoZWFkZXIgc2VjdGlvbiAubG9nbyB7XG4gICAgICBwYWRkaW5nOiAyMHB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgICAgYm9keS50YXNzaW1vIGhlYWRlciBzZWN0aW9uIC5sb2dvIHtcbiAgICAgICAgICBwYWRkaW5nOiAzMHB4IDIwcHggMjBweCAxMDBweDsgfSB9XG4gICAgICBib2R5LnRhc3NpbW8gaGVhZGVyIHNlY3Rpb24gLmxvZ28gaW1nIHtcbiAgICAgICAgd2lkdGg6IDEzMHB4OyB9XG4gICAgYm9keS50YXNzaW1vIGhlYWRlciBzZWN0aW9uIC5tZW51IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAgIGJvZHkudGFzc2ltbyBoZWFkZXIgc2VjdGlvbiAubWVudSBhIHtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgICBib2R5LnRhc3NpbW8gaGVhZGVyIHNlY3Rpb24gLm1lbnUge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgcGFkZGluZzogMCAxMDBweCAwIDA7IH0gfVxuICAgICAgYm9keS50YXNzaW1vIGhlYWRlciBzZWN0aW9uIC5tZW51IC5sZWZ0LCBib2R5LnRhc3NpbW8gaGVhZGVyIHNlY3Rpb24gLm1lbnUgLnJpZ2h0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgICAgICBib2R5LnRhc3NpbW8gaGVhZGVyIHNlY3Rpb24gLm1lbnUgLmxlZnQsIGJvZHkudGFzc2ltbyBoZWFkZXIgc2VjdGlvbiAubWVudSAucmlnaHQge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG4gICAgICAgIGJvZHkudGFzc2ltbyBoZWFkZXIgc2VjdGlvbiAubWVudSAubGVmdCAubWVudS1pdGVtLCBib2R5LnRhc3NpbW8gaGVhZGVyIHNlY3Rpb24gLm1lbnUgLnJpZ2h0IC5tZW51LWl0ZW0ge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICBoZWlnaHQ6IDg4cHg7IH1cbiAgICAgIGJvZHkudGFzc2ltbyBoZWFkZXIgc2VjdGlvbiAubWVudSAucmlnaHQgLm1lbnUtaXRlbSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMzBweDsgfVxuXG4vKiBmb290ZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5ib2R5LmxvciBmb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBiYWNrZ3JvdW5kOiAjMWMxYzFjO1xuICBjb2xvcjogIzU1NTU1NTsgfVxuICBib2R5LmxvciBmb290ZXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTA7XG4gICAgaGVpZ2h0OiA1cHg7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYWI4NzQzIDAlLCAjZGFiNjY3IDMzJSwgI2FiODc0MyA3MSUsICNkYWI2NjcgMTAwJSk7IH1cbiAgYm9keS5sb3IgZm9vdGVyIC5mb290ZXIge1xuICAgIHBhZGRpbmc6IDUwcHggMjBweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgYm9keS5sb3IgZm9vdGVyIC5mb290ZXIge1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDEwMHB4OyB9IH1cbiAgICBib2R5LmxvciBmb290ZXIgLmZvb3RlciAubWVudSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICBib2R5LmxvciBmb290ZXIgLmZvb3RlciAubWVudSBhIHtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgICBib2R5LmxvciBmb290ZXIgLmZvb3RlciAubWVudSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwMHB4IDAgMDsgfSB9XG4gICAgICBib2R5LmxvciBmb290ZXIgLmZvb3RlciAubWVudSAubGVmdCwgYm9keS5sb3IgZm9vdGVyIC5mb290ZXIgLm1lbnUgLnJpZ2h0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgICAgICBib2R5LmxvciBmb290ZXIgLmZvb3RlciAubWVudSAubGVmdCwgYm9keS5sb3IgZm9vdGVyIC5mb290ZXIgLm1lbnUgLnJpZ2h0IHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAgICAgICBib2R5LmxvciBmb290ZXIgLmZvb3RlciAubWVudSAubGVmdCAubWVudS1pdGVtLCBib2R5LmxvciBmb290ZXIgLmZvb3RlciAubWVudSAucmlnaHQgLm1lbnUtaXRlbSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgIGhlaWdodDogODhweDsgfVxuICAgICAgYm9keS5sb3IgZm9vdGVyIC5mb290ZXIgLm1lbnUgLnJpZ2h0IC5tZW51LWl0ZW0ge1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDMwcHg7IH1cblxuYm9keS50YXNzaW1vIGZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGJhY2tncm91bmQ6ICM4MTQ5OTc7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIGJvZHkudGFzc2ltbyBmb290ZXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTA7XG4gICAgaGVpZ2h0OiA1cHg7XG4gICAgYmFja2dyb3VuZDogIzUyMmQ1ZTsgfVxuICBib2R5LnRhc3NpbW8gZm9vdGVyIC5mb290ZXIge1xuICAgIHBhZGRpbmc6IDUwcHggMjBweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgYm9keS50YXNzaW1vIGZvb3RlciAuZm9vdGVyIHtcbiAgICAgICAgcGFkZGluZzogNTBweCAxMDBweDsgfSB9XG4gICAgYm9keS50YXNzaW1vIGZvb3RlciAuZm9vdGVyIC5jb3B5IHtcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxuICAgIGJvZHkudGFzc2ltbyBmb290ZXIgLmZvb3RlciAubWVudSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICBib2R5LnRhc3NpbW8gZm9vdGVyIC5mb290ZXIgLm1lbnUgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgICAgYm9keS50YXNzaW1vIGZvb3RlciAuZm9vdGVyIC5tZW51IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIHBhZGRpbmc6IDAgMTAwcHggMCAwOyB9IH1cbiAgICAgIGJvZHkudGFzc2ltbyBmb290ZXIgLmZvb3RlciAubWVudSAubGVmdCwgYm9keS50YXNzaW1vIGZvb3RlciAuZm9vdGVyIC5tZW51IC5yaWdodCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICAgICAgYm9keS50YXNzaW1vIGZvb3RlciAuZm9vdGVyIC5tZW51IC5sZWZ0LCBib2R5LnRhc3NpbW8gZm9vdGVyIC5mb290ZXIgLm1lbnUgLnJpZ2h0IHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAgICAgICBib2R5LnRhc3NpbW8gZm9vdGVyIC5mb290ZXIgLm1lbnUgLmxlZnQgLm1lbnUtaXRlbSwgYm9keS50YXNzaW1vIGZvb3RlciAuZm9vdGVyIC5tZW51IC5yaWdodCAubWVudS1pdGVtIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA4OHB4OyB9XG4gICAgICBib2R5LnRhc3NpbW8gZm9vdGVyIC5mb290ZXIgLm1lbnUgLnJpZ2h0IC5tZW51LWl0ZW0ge1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDMwcHg7IH1cbiIsIi8qIGhlYWRlclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgYm9keXtcblxuICAgICAgJi5sb3J7XG5cbiAgICAgICAgIGhlYWRlcntcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMxYzFjMWM7XG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG5cbiAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgICAgICAgICBoZWlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwjYWI4NzQzIDAlLCNkYWI2NjcgMzMlLCNhYjg3NDMgNzElLCNkYWI2NjcgMTAwJSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNlY3Rpb257XG4gICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAmLmhlYWRlcntcbiAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4xNSk7XG4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgJi51c3B7XG4gICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZWJiYzU1O1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAwcHg7XG4gICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICBcbiAgICAgICAgICAgICAgICAgIC51c3AtaXRlbXtcbiAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDI4MHB4O1xuICAgICAgICAgICAgICAgICAgICAgaW1ne1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgJi5kdHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJi5kdHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgIC5sb2dve1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDAgMjBweDtcbiAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDAgMTAwcHg7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgICAgICB3aWR0aDogNzZweDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgIH1cbiAgIFxuICAgICAgICAgICAgICAgLm1lbnV7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmOyBcblxuICAgICAgICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmOyBcbiAgICAgICAgICAgICAgICAgIH1cbiAgIFxuICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMDBweCAwIDA7XG4gICAgICAgICAgICAgICAgICB9XG4gICBcbiAgICAgICAgICAgICAgICAgIC5sZWZ0LCAucmlnaHR7XG4gICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVte1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA4OHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgLnJpZ2h0e1xuICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbXtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjE1KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMzBweDtcbiAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgIFxuICAgICAgICAgICAgXG5cbiAgICAgICAgICAgIFxuICAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgICYudGFzc2ltb3tcblxuICAgICAgICAgaGVhZGVye1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcblxuICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzZlYWEyNztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc2VjdGlvbntcbiAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICYuaGVhZGVye1xuICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkNGQ0ZDQ7XG4gICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgLmxvZ297XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDIwcHggMjBweCAxMDBweDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIGltZ3tcbiAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMzBweDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgLm1lbnV7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmOyBcblxuICAgICAgICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmOyBcbiAgICAgICAgICAgICAgICAgIH1cbiAgIFxuICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMDBweCAwIDA7XG4gICAgICAgICAgICAgICAgICB9XG4gICBcbiAgICAgICAgICAgICAgICAgIC5sZWZ0LCAucmlnaHR7XG4gICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAubWVudS1pdGVte1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA4OHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgLnJpZ2h0e1xuICAgICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbXtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjE1KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMzBweDtcbiAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgIH1cbiAgIFxuICAgICAgICAgICAgfVxuICAgXG4gICAgICAgICAgICBcblxuICAgICAgICAgICAgXG4gICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgfVxuXG4gICBcblxuICAgIiwiLyogZm9vdGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5ib2R5e1xuXG4gICAmLmxvcntcblxuICAgICAgZm9vdGVye1xuXG4gICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgYmFja2dyb3VuZDogIzFjMWMxYztcbiAgICAgICAgIGNvbG9yOiAjNTU1NTU1O1xuXG4gICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsI2FiODc0MyAwJSwjZGFiNjY3IDMzJSwjYWI4NzQzIDcxJSwjZGFiNjY3IDEwMCUpO1xuICAgICAgICAgfVxuXG4gICAgICAgICAuZm9vdGVye1xuICAgICAgICAgICAgcGFkZGluZzogNTBweCAyMHB4O1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICAgICAgICAgICBwYWRkaW5nOiA1MHB4IDEwMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWVudXtcbiAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7IFxuXG4gICAgICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7IFxuICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDEwMHB4IDAgMDtcbiAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgLmxlZnQsIC5yaWdodHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW17XG4gICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDg4cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAucmlnaHR7XG4gICAgICAgICAgICAgICAgICAubWVudS1pdGVte1xuICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMTUpO1xuICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAzMHB4O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICB9XG5cbiAgICAgIH1cbiAgICAgIFxuICAgfVxuXG4gICAmLnRhc3NpbW97XG5cbiAgICAgIGZvb3RlcntcblxuICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgIGJhY2tncm91bmQ6ICM4MTQ5OTc7XG4gICAgICAgICBjb2xvcjogI2ZmZmZmZjtcblxuICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzUyMmQ1ZTtcbiAgICAgICAgIH1cblxuICAgICAgICAgLmZvb3RlcntcbiAgICAgICAgICAgIHBhZGRpbmc6IDUwcHggMjBweDtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgICAgICAgICAgcGFkZGluZzogNTBweCAxMDBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvcHl7XG4gICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tZW51e1xuICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjsgXG5cbiAgICAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjsgXG4gICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTAwcHggMCAwO1xuICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAubGVmdCwgLnJpZ2h0e1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgLm1lbnUtaXRlbXtcbiAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogODhweDtcblxuICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgIC5yaWdodHtcbiAgICAgICAgICAgICAgICAgIC5tZW51LWl0ZW17XG4gICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4xNSk7XG4gICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgIH1cblxuICAgICAgfVxuICAgICAgXG4gICB9XG5cbiAgIFxuXG59XG4gICAiXX0= */