@font-face {
    font-family: Volte;
    font-weight: 500;
    font-style: normal;
    src: url("../fonts/Volte-Medium.woff2") format("woff2");
    src: url("../fonts/Volte-Medium.woff") format("woff");
}

@font-face {
    font-family: Volte;
    font-weight: 700;
    font-style: normal;
    src: url("../fonts/Volte-Semibold.woff2") format("woff2");
    src: url("../fonts/Volte-Semibold.woff") format("woff");
}

@font-face {
    font-family: Volte;
    font-weight: 900;
    font-style: normal;
    src: url("../fonts/Volte-Bold.woff2") format("woff2");
    src: url("../fonts/Volte-Bold.woff") format("woff");
}

html {
    position: relative;
    min-height: 100%;
}

body {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    background: #fff;
    margin: 0;
    color: #221240;
    font-family: Volte, sans-serif;
    font-size: 18px;
    font-weight: 500;
    word-wrap: break-word;
}

* {
    font-family: Volte, sans-serif;
    z-index: 2;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
    line-height: 1.2;
    margin: 0;
    max-width: 800px;
}

p {
    max-width: 800px;
    line-height: 1.2;
}

h1 {
    position: relative;
    display: inline-block;
    letter-spacing: -1.5px;
    font-size: 1.9em;
}

@media screen and (max-width: 860px) {
    h1 {
        font-size: 23px;
        margin-bottom: 16px;
    }
}

h2 {
    font-size: 1.4em;
}

.blocker {
    z-index: 10 !important;
}

h3 {
    letter-spacing: -1px;
    font-size: 1.1em;
}

.ul::before {
    content: "";
    width: 100%;
    height: 2px;
    background: #fff;
    position: absolute;
    z-index: -1;
    left: 0;
    bottom: 0;
}

.ul {
    position: relative;
    color: #fff;
    z-index: 1;
    padding: 0px 4px;
    display: inline-block;
}

button {
    text-decoration: none;
    background: linear-gradient(to right, #ff4051, #8c3b6b);
    border: none;
    border-radius: 80px;
    padding: 8px 20px;
    min-width: 120px;
    color: #fff;
    font-size: 18px;
    cursor: pointer;
}

.blueButton {
    text-decoration: none;
    background: linear-gradient(to right, #38C1CF, #516DE8);
    border: none;
    border-radius: 80px;
    padding: 8px 20px;
    min-width: 100px;
    color: #fff;
    font-size: 18px;
    cursor: pointer;
}

button:hover {
    transform: scale(1.05);
}

.red {
    color: #ff4455;
}

.lightBlue {
    color: #38C1CF;
}

.grayBlue {
    color: #A3C2FF;
}

.small {
    font-size: 10px;
}

.small a {
    color: #fff;
}

.redInvert {
    background: #ff4455;
    color: #fff;
    padding: 5px 10px;
}

.lightBlueInvert {
    background: #38C1CF;
    color: #fff;
    padding: 5px 10px;
}

.navyInvert {
    background: #180e31;
    color: #fff;
    padding: 5px 10px;
}

.blueInvert {
    background: #2E4ABA;
    color: #fff;
    padding: 5px 10px;
}

.white {
    color: #fff;
}

.darkBlue {
    color: #25326d;
}

@media screen and (max-width: 1024px) {
    h1::after {
        content: "";
        position: absolute;
        width: 80px;
        background: #221240;
        height: 8%;
        top: calc(50% - 2%);
        right: -110px;
        right: auto;
        left: -40px;
        height: 100%;
        width: 8px;
        top: 0;
    }
}

h1.white::after {
    background: #fff;
}

h1.red::after {
    background: #ff4455;
}

.mobileOnly {
    display: none;
}

@media screen and (max-width: 1024px) {
    .mobileOnly {
        display: initial;
    }
}

.webOnly {
    display: initial;
}

@media screen and (max-width: 1024px) {
    .webOnly {
        display: none;
    }
}

.innerContent {
    padding: 80px;
    max-width: 1200px;
    margin: auto;
    position: relative;
}

@media screen and (max-width: 1024px) {
    .innerContent {
        padding: 40px;
    }
}

.marginTop20 {
    margin-top: 20px;
}

.marginTop40 {
    margin-top: 40px;
}

.marginTop60 {
    margin-top: 60px;
}

.tos {
    font-size: 10px;
}

.col-2 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.col-2 div {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    max-width: 600px;
}

@media screen and (max-width: 1024px) {
    .col-2 div {
        width: 60%;
    }
}

@media screen and (max-width: 860px) {
    .col-2 div {
        margin-bottom: 40px;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
        width: auto;
    }
}

.col-2 .colImageContainer {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    position: relative;
    z-index: 1;
}

@media screen and (max-width: 1024px) {
    .col-2 .colImageContainer {
        width: 40%;
    }
}

@media screen and (max-width: 860px) {
    .col-2 .colImageContainer {
        width: auto;
    }
}

.col-2 .title {
    min-width: 100%;
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    text-align: center;
}

.col-2 .title h1 {
    font-size: 36px;
}

.col-2 .title h1:after {
    display: none;
}

@media screen and (max-width: 860px) {
    .col-2 .title {
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    }
}

.content {
    overflow: hidden;
}

.text-center {
    text-align: center;
    position: relative;
}

* {
    transition: 0.5s ease all;
}

footer {
    background: #221240;
    color: #fff;
}

footer .innerContent {
    padding: 20px 80px;
}

@media screen and (max-width: 1024px) {
    footer .innerContent {
        padding: 20px 40px;
    }
}

footer form {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: baseline;
        align-items: baseline;
}

@media screen and (max-width: 1024px) {
    footer form {
        -ms-flex-direction: column;
            flex-direction: column;
        width: 100%;
        overflow: hidden;
    }
}

footer input[type="text"] {
    outline: none;
    margin-top: 15px;
    padding: 5px;
    background: transparent;
    border-radius: 25px;
    border-image-slice: 1;
    border: 2px solid #ff4455;
    padding-left: 10px;
    -ms-flex-positive: 1;
        flex-grow: 1;
}

footer input[name="username"] {
    margin-left: -15 px;
    margin-right: 10px;
    width: 150px;
}

footer input[name="email"] {
    width: 300px;
    margin-right: 8px;
}

footer input,
footer select,
footer textarea {
    color: #fff;
    font-size: 15px;
}

footer input[type="submit"],
footer button {
    background: linear-gradient(to right, #ff4051, #8c3b6b);
    border: none;
    border-radius: 80px;
    padding: 8px 20px;
    min-width: 120px;
    margin-top: 8px;
}

footer :-ms-input-placeholder {
    opacity: 0.3;
    color: white;
}

footer ::placeholder {
    opacity: 0.3;
    color: white;
}

footer .flex {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: justify;
        justify-content: space-between;
}

@media screen and (max-width: 1024px) {
    footer .flex {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-align: start;
            align-items: flex-start;
    }
}

@media screen and (max-width: 1024px) {
    footer .contact {
        margin-top: 20px;
        align: left;
    }
}

footer .contact h3 {
    text-align: left;
}

footer .contact p {
    margin-top: 8px;
    font-size: 14px;
}

@media screen and (max-width: 1024px) {
    footer .contact p {
        font-size: 12px;
    }
}

footer .contact table {
    font-size: 14px;
    margin: 0px;
    padding: 0px;
}

@media screen and (max-width: 1024px) {
    footer .contact table {
        font-size: 12px;
    }
}

footer .contact table a {
    color: white;
    text-decoration: none;
}

footer .contact table img {
    margin-right: 8px;
    width: 20px;
    height: auto;
    vertical-align: middle;
}

@media screen and (max-width: 1024px) {
    footer .contact table img {
        width: 15px;
        height: auto;
    }
}

footer .contact table tr {
    margin-top: 12px;
}

footer .contact table td {
    padding-right: 10px;
}

footer .footer_info {
    margin: 0px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    border-radius: 5px;
}

footer .footer_info p {
    max-width: 1200px;
    font-size: 16px;
    margin-left: 10px;
}

@media screen and (max-width: 1024px) {
    footer .footer_info p {
        font-size: 12px;
        margin-right: 0px;
    }
}

footer .footer_info img {
    width: 80px;
    height: auto;
    margin-left: -10px;
}

@media screen and (max-width: 1024px) {
    footer .footer_info img {
        width: 70px;
        height: auto;
        margin-left: 0px;
    }
}

footer .footer_info a {
    color: white;
}

footer .socialmedia::before {
    content: "";
    position: absolute;
    width: 80px;
    background: #ff4455;
    height: 8%;
    top: calc(50% - 2%);
    right: -110px;
}

@media screen and (max-width: 1024px) {
    footer .socialmedia::before {
        right: auto;
        left: -40px;
        height: 100%;
        width: 8px;
        top: 0;
    }
}

footer .footer_divider {
    background: linear-gradient(to right, #cc3650, #783c72);
    width: 100%;
    height: 4px;
    margin-top: 30px;
    margin-bottom: 20px;
}

footer .footer_divider2 {
    background: linear-gradient(to right, #38C1CF, #516DE8);
    width: 100%;
    height: 4px;
    margin-top: 30px;
    margin-bottom: 20px;
}

footer .footer-links {
    margin-top: 30px;
}

footer .footer_subFooter {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: justify;
        justify-content: space-between;
}

@media screen and (max-width: 1024px) {
    footer .footer_subFooter {
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-align: baseline;
            align-items: baseline;
    }
}

@media screen and (max-width: 1024px) {
    footer .footer_subFooter .small {
        margin-top: 20px;
    }
}

footer .links a {
    text-decoration: none;
    color: #fff;
    font-size: 12px;
    margin-right: 8px;
    white-space: nowrap;
}

.blueFooter {
    background: #25326d;
    color: #fff;
}

.blueFooter .innerContent {
    padding: 20px 80px;
}

@media screen and (max-width: 1024px) {
    .blueFooter .innerContent {
        padding: 20px 40px;
    }
}

.blueFooter form {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: baseline;
        align-items: baseline;
}

@media screen and (max-width: 1024px) {
    .blueFooter form {
        -ms-flex-direction: column;
            flex-direction: column;
        width: 100%;
        overflow: hidden;
    }
}

.blueFooter input[type="text"] {
    outline: none;
    margin-top: 15px;
    padding: 5px;
    background: transparent;
    border-radius: 25px;
    border-image-slice: 1;
    border: 2px solid #ff4455;
    padding-left: 10px;
    -ms-flex-positive: 1;
        flex-grow: 1;
}

.blueFooter input[name="username"] {
    margin-left: -15 px;
    margin-right: 10px;
    width: 150px;
}

.blueFooter input[name="email"] {
    width: 300px;
    margin-right: 8px;
}

.blueFooter input,
.blueFooter select,
.blueFooter textarea {
    color: #fff;
    font-size: 15px;
}

.blueFooter input[type="submit"],
.blueFooter button {
    background: linear-gradient(to right, #38C1CF, #516DE8);
    border: none;
    border-radius: 80px;
    padding: 8px 20px;
    min-width: 120px;
    margin-top: 8px;
}

.blueFooter :-ms-input-placeholder {
    opacity: 0.3;
    color: white;
}

.blueFooter ::placeholder {
    opacity: 0.3;
    color: white;
}

.blueFooter .flex {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: justify;
        justify-content: space-between;
}

@media screen and (max-width: 1024px) {
    .blueFooter .flex {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-align: start;
            align-items: flex-start;
    }
}

@media screen and (max-width: 1024px) {
    .blueFooter .contact {
        margin-top: 20px;
        align: left;
    }
}

.blueFooter .contact h3 {
    text-align: left;
}

.blueFooter .contact p {
    margin-top: 8px;
    font-size: 14px;
}

@media screen and (max-width: 1024px) {
    .blueFooter .contact p {
        font-size: 12px;
    }
}

.blueFooter .contact table {
    font-size: 14px;
    margin: 0px;
    padding: 0px;
}

@media screen and (max-width: 1024px) {
    .blueFooter .contact table {
        font-size: 12px;
    }
}

.blueFooter .contact table a {
    color: white;
    text-decoration: none;
}

.blueFooter .contact table img {
    margin-right: 8px;
    width: 20px;
    height: auto;
    vertical-align: middle;
}

@media screen and (max-width: 1024px) {
    .blueFooter .contact table img {
        width: 15px;
        height: auto;
    }
}

.blueFooter .contact table tr {
    margin-top: 12px;
}

.blueFooter .contact table td {
    padding-right: 10px;
}

.blueFooter .footer_info {
    margin: 0px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    border-radius: 5px;
}

.blueFooter .footer_info p {
    max-width: 1200px;
    font-size: 16px;
    margin-left: 10px;
}

@media screen and (max-width: 1024px) {
    .blueFooter .footer_info p {
        font-size: 12px;
        margin-right: 0px;
    }
}

.blueFooter .footer_info img {
    width: 80px;
    height: auto;
    margin-left: -10px;
}

@media screen and (max-width: 1024px) {
    .blueFooter .footer_info img {
        width: 70px;
        height: auto;
        margin-left: 0px;
    }
}

.blueFooter .footer_info a {
    color: white;
}

.blueFooter .socialmedia::before {
    content: "";
    position: absolute;
    width: 80px;
    background: #ff4455;
    height: 8%;
    top: calc(50% - 2%);
    right: -110px;
}

@media screen and (max-width: 1024px) {
    .blueFooter .socialmedia::before {
        right: auto;
        left: -40px;
        height: 100%;
        width: 8px;
        top: 0;
    }
}

.blueFooter .footer_divider {
    background: linear-gradient(to right, #cc3650, #783c72);
    width: 100%;
    height: 4px;
    margin-top: 30px;
    margin-bottom: 20px;
}

.blueFooter .footer_divider2 {
    background: linear-gradient(to right, #38C1CF, #516DE8);
    width: 100%;
    height: 4px;
    margin-top: 30px;
    margin-bottom: 20px;
}

.blueFooter .footer-links {
    margin-top: 30px;
}

.blueFooter .footer_subFooter {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: justify;
        justify-content: space-between;
}

@media screen and (max-width: 1024px) {
    .blueFooter .footer_subFooter {
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-align: baseline;
            align-items: baseline;
    }
}

@media screen and (max-width: 1024px) {
    .blueFooter .footer_subFooter .small {
        margin-top: 20px;
    }
}

.blueFooter .links a {
    text-decoration: none;
    color: #fff;
    font-size: 12px;
    margin-right: 8px;
    white-space: nowrap;
}


@media screen and (max-width: 860px) {
    path#SvgjsPath1015 {
        opacity: 0.2;
    }
}

.h2-center {
    margin: auto;
}

.col {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
}

.row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
        flex-direction: row;
}

.flex-center {
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
}

.align-center {
    -ms-flex-align: center;
        align-items: center;
}

.align-end {
    -ms-flex-align: end;
        align-items: flex-end;
}

.justify-center {
    -ms-flex-pack: center;
        justify-content: center;
}

.space-between {
    -ms-flex-pack: justify;
        justify-content: space-between;
}

.space-evenly {
    -ms-flex-pack: space-evenly;
        justify-content: space-evenly;
}

.space-around {
    -ms-flex-pack: distribute;
        justify-content: space-around;
}

.w100 {
    width: 100%;
}

.m0 {
    margin: 0;
}

.oh {
    overflow: hidden;
}

.announcement {
    max-width: 100%;
    height: 100%;
    background: #ff4455;
    color: #fff;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
}

.announcement p {
    padding: 10px;
    text-align: center;
    max-width: 1000px;
    font-size: 14px;
}

.announcement a {
    text-decoration: underline;
    margin-left: 10px;
}

.announcement a:hover {
    cursor: pointer;
}

.announcement a:visited {
    color: white;
}

#hour_counter,
#country_counter {
    letter-spacing: 0.5px !important;
}

.info {
    font-size: 18px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-positive: 1;
        flex-grow: 1;
}

.odometer {
    font-size: 20px !important;
    margin-right: 10px;
}

#stat-container {
    margin-top: 50px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
}

@media screen and (max-width: 860px) {
    #stat-container {
        -ms-flex-direction: column;
            flex-direction: column;
        margin-top: -30px;
    }
}

#stat {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-positive: 1.6;
        flex-grow: 1.6;
}

@media screen and (max-width: 860px) {
    #stat {
        margin-top: 15px;
    }
}

#stat2 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-positive: 1;
        flex-grow: 1;
}

@media screen and (max-width: 860px) {
    #stat2 {
        margin-top: 15px;
    }
}

.main-quantum {
    background: #3456ee;
    color: #fff;
}

@media screen and (max-width: 1024px) {
    .main-quantum .row {
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-align: center;
            align-items: center;
    }
}

.main-quantum .quantum-logo {
    width: 120px;
    height: auto;
    display: inline-block;
    vertical-align: middle;
}

.main-quantum .quantum-img {
    max-width: 500px;
    max-height: 500px;
    margin: 10px;
    float: right;
}

.main-quantum .quantum-img img {
    border-radius: 400px;
    max-width: 400px;
    max-height: 100%;
}

@media screen and (max-width: 1024px) {
    .main-quantum .quantum-img img {
        height: 150px;
        width: 230px;
    }
}

@media screen and (max-width: 1024px) {
    .main-quantum .quantum-img .text {
        font-size: 18px;
        text-align: center;
    }
}

#about {
    background: linear-gradient(90deg, rgba(0,36,36,0.5074404761904762) 0%, rgba(9,9,121,1) 35%, rgba(0,212,255,1) 100%);
    color: yellow;
}

#about .aboutText {
    max-width: 700px;
}

#about .about-programs {
    margin-top: 50px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: start;
        align-items: flex-start;
    padding-bottom: 20px;
}

@media screen and (max-width: 860px) {
    #about .about-programs {
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-align: center;
            align-items: center;
        margin-top: -30px;
    }
}

#about .about-icon {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-positive: 1.6;
        flex-grow: 1.6;
    width: 25%;
    height: 25%;
}

#about .about-icon img {
    max-width: 50%;
    max-height: 50%;
}

@media screen and (max-width: 860px) {
    #about .about-icon {
        margin-top: 40px;
    }
}

#about h3 {
    color: #fff;
}

#about .innerContent:before {
    background: url("../images/home/about.png");
    position: absolute;
    content: "";
    width: 60vw;
    height: 100%;
    left: 40vw;
    bottom: 0;
    background-size: contain;
    background-position: bottom center;
    background-repeat: no-repeat;
}

@media screen and (max-width: 860px) {
    #about .innerContent:before {
        display: none;
    }
}

#about h1::after {
    content: none;
}

@media screen and (max-width: 860px) {
    #about h1::after {
        content: "";
    }
}

#about p {
    text-align: center;
    margin-top: 10px;
}

#difference {
    padding: 0;
    overflow: hidden;
}

#difference .innerContent {
    max-width: 1024px;
}

#difference .title .subtitle {
    margin: auto;
    max-width: 600px;
}

#difference img {
    position: relative;
    width: 100%;
    max-width: 300px;
    border-radius: 50%;
    padding-right: 80px;
}

@media screen and (max-width: 1024px) {
    #difference img {
        width: 80%;
    }
}

#difference div:first-child .innerContent {
    padding: 80px 40px 20px 40px;
}

#difference .innerContent {
    padding: 20px 40px;
}

#difference h3 {
    font-size: 24px;
}

@media screen and (max-width: 1024px) {
    #difference h3 {
        font-size: auto;
    }
}

@media screen and (max-width: 1024px) {
    #difference .title {
        margin-bottom: 20px;
    }
}

#difference #difference_instructors {
    position: relative;
    z-index: 3;
}

#difference #difference_instructors .colImageContainer.showBackground::before {
    background: url("../images/home/instructors-icons.png");
    background-size: auto 100%;
    background-repeat: no-repeat;
}

@media screen and (max-width: 860px) {
    #difference #difference_instructors .colImageContainer.showBackground::before {
        background-size: 100% auto;
        background-repeat: repeat;
    }
}

#difference #difference_curriculum {
    position: relative;
}

#difference #difference_curriculum .colImageContainer.showBackground::before {
    background: url("../images/home/curriculum-icons.png");
    background-size: 100% 100%;
    background-repeat: no-repeat;
    height: 160%;
    width: 160%;
    top: -30%;
    left: -32%;
    animation: rotate-animation 300s infinite;
    opacity: 0.1;
}

#difference #difference_curriculum .colImageContainer.showBackground::after {
    background: radial-gradient(rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0.95) 70%);
    height: 160%;
    width: 160%;
    top: -30%;
    left: -32%;
    animation: rotate-animation 300s infinite;
    opacity: 0;
}

#difference #difference_curriculum .colImageContainer {
    margin-left: 80px;
    margin-right: 0;
}

@media screen and (max-width: 1024px) {
    #difference #difference_curriculum .colImageContainer {
        margin-left: 0;
        margin-right: 0;
    }
}

#difference #difference_curriculum img {
    padding: 0;
}

#difference #difference_curriculum .differenceContentContainer {
    padding-top: 40px;
    padding-bottom: 40px;
}

@media screen and (max-width: 860px) {
    #difference #difference_curriculum .differenceContentContainer {
        padding-top: 20px;
        padding-bottom: 20px;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    }
}

#difference #difference_college .colImageContainer.showBackground::before {
    background: url("../images/home/college-icons.png");
    background-size: auto 100%;
    background-repeat: no-repeat;
    opacity: 0.1;
}

#difference #difference_college .colImageContainer.showBackground::after {
    opacity: 0;
    background: linear-gradient(to left, rgba(255, 255, 255, 0.99), rgba(255, 255, 255, 0.6));
}

#difference .colImageContainer.showBackground::before {
    content: "";
    z-index: -1;
    position: absolute;
    height: 120%;
    width: 160%;
    top: -10%;
    left: -30%;
    opacity: 0.1;
}

#difference .colImageContainer.showBackground::after {
    content: "";
    background: linear-gradient(to left, rgba(255, 255, 255, 0.99), rgba(255, 255, 255, 0.8));
    z-index: -1;
    position: absolute;
    height: 120%;
    width: 160%;
    top: -10%;
    left: -30%;
    opacity: 0;
}

@media screen and (max-width: 860px) {
    #difference .colImageContainer.showBackground::after {
        background: linear-gradient(to top, rgba(255, 255, 255, 0.96) 45%, rgba(255, 255, 255, 0.8) 30%, #fff);
    }
}

#whofor {
    background: #221240;
    color: #fff;
    text-align: center;
}

#whofor h1::after {
    display: none;
}

#whofor h2,
#whofor p {
    margin: auto;
}

#whofor p {
    font-size: 18px;
}

#whofor p b {
    font-weight: 900;
}

#whofor .splits {
    display: -ms-flexbox;
    display: flex;
    margin-top: 20px;
}

@media screen and (max-width: 860px) {
    #whofor .splits {
        -ms-flex-direction: column;
            flex-direction: column;
    }
}

#whofor .split {
    background: #221240;
    border-radius: 0;
    width: 50%;
    box-sizing: border-box;
    text-align: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    transition: all 0.2s ease-in-out, border-radius 0.5s ease-in-out 0.2s;
    padding: 80px;
    border-radius: calc(1024px / 2);
}

@media screen and (max-width: 860px) {
    #whofor .split {
        width: 100%;
        padding: 20px;
    }
}

#whofor .split:hover {
    background: #ff4455;
    border-radius: calc(1024px / 2);
}

#testimonials {
    position: relative;
    overflow: hidden;
}

.innerContent {
    margin: auto;
    max-width: 1150px;
}

.testimonials_container {
    padding-top: 80px;
    margin: auto;
}

@media screen and (max-width: 860px) {
    .testimonials_container {
        width: calc(100% + 40px);
        overflow-x: scroll;
        padding-top: 20px;
    }
}

.testimonials {
    padding-top: 80px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-line-pack: distribute;
        align-content: space-around;
    overflow: visible;
}

@media screen and (max-width: 1024px) {
    .testimonials {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
        margin-top: 10px;
    }
}

@media screen and (max-width: 860px) {
    .testimonials {
        -ms-flex-direction: row;
            flex-direction: row;
        width: 300%;
    }
}

.testimonial {
    width: 40%;
    box-sizing: border-box;
    padding: 10px;
    text-align: center;
    max-height: auto;
    font-size: 14px;
    box-shadow: 0px 0px 8px #283EAE;
    border-radius: 20px;
}

@media screen and (max-width: 860px) {
    .testimonial {
        height: auto !important;
        padding: 10px !important;
        width: 50%;
    }
}

.main-testimonial {
    background: url("../images/home/bubble-right-1.png");
    background-repeat: no-repeat;
    background-size: 100% auto;
    box-sizing: border-box;
    padding-right: 10px;
    height: 260px;
    max-width: 720px;
    font-size: 16px;
    padding-left: 120px;
    padding-top: 50px;
    margin: auto;
    margin-top: -20px;
}

@media screen and (max-width: 860px) {
    .main-testimonial {
        text-align: right;
        display: none;
    }
}

@media screen and (max-width: 1024px) {
    .main-testimonial {
        margin-left: 60px;
        background-size: 95% auto;
        font-size: 14px;
        max-width: 720px;
        margin-bottom: 20px;
        height: 36vh;
    }
}

@media screen and (max-width: 1024px) {
    .main-testimonial p {
        max-width: 520px;
    }
}

.main-testimonial .testimonial_byline {
    text-align: right;
    padding-right: 20px;
}

.testimonial_byline {
    color: #283EAE;
    margin-top: 10px;
}

.testimonial_byline {
    text-align: center;
}

@media screen and (max-width: 860px) {
    .testimonial_byline {
        text-align: right;
        padding-right: 10px;
    }
}

.heading {
    width: 100%;
    text-align: center !important;
    margin: auto;
    position: relative;
}

.heading h1 {
    left: 180px;
    width: 100%;
}

@media screen and (max-width: 1200px) {
    .heading h1 {
        left: 70px;
    }
}

@media screen and (max-width: 1100px) {
    .heading h1 {
        left: 50px;
    }
}

.heading p {
    margin: auto;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.everything {
    position: relative;
}

#drawing {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    pointer-events: none;
}

#g1,
#g2,
#g3,
#g4,
#g5,
#g6,
#g3a,
#g4a,
#g5a,
#g1a {
    position: absolute;
    width: 2px;
    height: 2px;
    background: transparent;
}

#g1 {
    left: 600px;
    top: 108px;
}

#g1a {
    right: 80px;
    top: 108px;
}

#g2 {
    right: 80px;
    bottom: 80px;
}

#g3,
#g4,
#g5 {
    top: 10%;
    left: 70%;
}

#g3a,
#g4a,
#g5a {
    bottom: 15%;
    left: 40%;
}

#g6 {
    right: 80px;
    top: 50%;
}

svg {
    position: relative;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

#main {
    background: #21153f;
    overflow: hidden;
    width: 100%;
    height: 800px;
    position: relative;
    max-height: 900px;
    transition: 2s ease-in-out all;
    transition-delay: 1s;
    box-sizing: border-box;
}

#main2 {
    background: background-color: #a4508b;
    background-image: linear-gradient(326deg, #a4508b 0%, #5f0a87 74%);
    overflow: hidden;
    width: 100%;
    height: 850px;
    position: relative;
    max-height: 900px;
    transition: 2s ease-in-out all;
    transition-delay: 1s;
    box-sizing: border-box;
}

#main2a {
    background: background-color: #a4508b;
    background-image: linear-gradient(to right, #000066, #7b0067, #c00056, #ed403c, #ff8a18, #ff9c0c, #ffaf01, #ffc100, #ffa200, #ff7f00, #ff5600, #ff0000);
    overflow: hidden;
    width: 100%;
    height: 700px;
    position: relative;
    max-height: 800px;
    transition: 2s ease-in-out all;
    transition-delay: 1s;
    box-sizing: border-box;
}

#main3 {
    background-image: linear-gradient(to right top, #051937, #004d7a, #008793, #00bf72, #a8eb12);
    overflow: hidden;
    width: 100%;
    height: 1000px;
    position: relative;
    max-height: 1100px;
    transition: 2s ease-in-out all;
    transition-delay: 1s;
    box-sizing: border-box;
}

#main4 {
    background: #4B0092;
    overflow: hidden;
    width: 100%;
    height: 900px;
    position: relative;
    max-height: 1000px;
    transition: 2s ease-in-out all;
    transition-delay: 1s;
    box-sizing: border-box;
}

#main6 {
    background: lightgrey;
    overflow: hidden;
    width: 100%;
    height: 200px;
    position: relative;
    max-height: 250px;
    transition: 2s ease-in-out all;
    transition-delay: 1s;
    box-sizing: border-box;
}

#main6a {
    background: lightgrey;
    overflow: hidden;
    width: 100%;
    height: 250px;
    position: relative;
    max-height: 500px;
    transition: 2s ease-in-out all;
    transition-delay: 1s;
    box-sizing: border-box;
}

#main7 {
    background: radial-gradient(circle closest-side, yellow, green);
    overflow: hidden;
    width: 100%;
    height: 600px;
    position: relative;
    max-height: 800px;
    transition: 2s ease-in-out all;
    transition-delay: 1s;
    box-sizing: border-box;
}

#main8 {
    background: linear-gradient(to right, #009639, #5a8c00, #847f00, #a76c00, #c45300, #d45307, #e45310, #f45119, #fc7401, #ff9400, #ffb300, #ffd100);
    overflow: hidden;
    width: 100%;
    height: 900px;
    position: relative;
    max-height: 1000px;
    transition: 2s ease-in-out all;
    transition-delay: 1s;
    box-sizing: border-box;
}

#main9 {
    background: linear-gradient(to right top, #1b4d3e, #25764b, #4c9f4b, #86c63c, #cfeb12);
    overflow: hidden;
    width: 100%;
    height: 800px;
    position: relative;
    max-height: 1100px;
    transition: 2s ease-in-out all;
    transition-delay: 1s;
    box-sizing: border-box;
}

#main9a {
    background: linear-gradient(to right top, #333c87, #41275c, #371936, #22101a, #000000);
    overflow: hidden;
    width: 100%;
    height: 850px;
    position: relative;
    max-height: 1100px;
    transition: 2s ease-in-out all;
    transition-delay: 1s;
    box-sizing: border-box;
}

#main9b {
    background: #111010;
    overflow: hidden;
    width: 100%;
    height: 900px;
    position: relative;
    max-height: 1000px;
    transition: 2s ease-in-out all;
    transition-delay: 1s;
    box-sizing: border-box;
}

#main9c {
    background: #1a1a2e;
    overflow: hidden;
    width: 100%;
    height: 850px;
    position: relative;
    max-height: 1100px;
    transition: 2s ease-in-out all;
    transition-delay: 1s;
    box-sizing: border-box;
}

#main10 {
    background-image: linear-gradient(to right bottom, #333c87, #402f6e, #412556, #3c1c41, #33162e, #31152c, #301529, #2e1427, #351732, #3b1c3f, #3f214d, #41275c);
    overflow: hidden;
    width: 100%;
    height: 600px;
    position: relative;
    max-height: 800px;
    transition: 2s ease-in-out all;
    transition-delay: 1s;
    box-sizing: border-box;
}

#main11 {
    background: linear-gradient(90deg, hsla(347, 89%, 61%, 1) 0%, hsla(242, 42%, 40%, 1) 100%);
    overflow: hidden;
    width: 100%;
    height: 600px;
    position: relative;
    max-height: 800px;
    transition: 2s ease-in-out all;
    transition-delay: 1s;
    box-sizing: border-box;
}

#main12 {
    background: linear-gradient(to bottom, #0530ad, #820a9c, #b7007f, #d6005c, #e31837);
    overflow: hidden;
    width: 100%;
    height: 700px;
    position: relative;
    max-height: 800px;
    transition: 2s ease-in-out all;
    transition-delay: 1s;
    box-sizing: border-box;
}

.no-margin,
#main.no-margin {
    border-width: 0px;
}

canvas.dd {
    width: 1509px;
    height: 1080px;
    position: absolute;
    left: 25%;
    top: -20%;
    z-index: 1;
}

@media screen and (max-width: 860px) {
    canvas.dd {
        left: 0;
        top: -10%;
        opacity: 0.5;
    }
}

#particles-js {
    width: 100%;
    height: 100%;
    z-index: 3;
    position: absolute;
}

#particles-js canvas {
    z-index: 3;
}

.splash__heading {
    position: absolute;
    top: 20%;
    left: 10%;
    z-index: 4;
    color: #fff;
}

@media screen and (max-width: 860px) {
    .splash__heading {
        position: relative;
        top: 10%;
        left: 0;
        padding: 20px;
    }
}

.splash__heading h1 {
    font-size: 60px;
}

.splash__heading h2 {
    font-size: 36px;
}

.splash__heading p {
    max-width: 550px;
    font-size: 24px;
    margin-bottom: 20px;
    pointer-events: none;
}

.splash__heading p b {
    color: #ff4455;
}

@media screen and (max-width: 860px) {
    .splash__heading p b {
        color: #fff;
        font-weight: 900;
    }
}

.splash__heading .tos {
    font-size: 17px;
}

.splash__heading button,
.splash__heading .tos {
    opacity: 0;
    animation: logo-dot-animation 1s ease-in-out forwards;
    animation-delay: 2s;
}

.imageFlex {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-direction: row;
        flex-direction: row;
}

@media screen and (max-width: 860px) {
    .imageFlex {
        -ms-flex-direction: column;
            flex-direction: column;
    }
}

.imageFlex img {
    max-width: 400px;
    height: auto;
}

.how-pl-works {
    background: #fff;
}

.how-pl-works .innerContent:after {
    content: "";
    width: 50vw;
    height: 100%;
    position: absolute;
    left: 50vw;
    background-repeat: no-repeat;
    background-size: auto 120%;
    opacity: 0.2;
    background-position: top;
    top: 0;
}

.how-pl-works h1:after {
    display: none;
}

.how-pl-works p {
    margin-top: 50px;
}

.how-pl-works button {
    margin-top: 30px;
    background: #21153f;
}

.how-pl-works .pl-box {
    color: #fff;
    padding-top: 10px;
    padding-bottom: 10px;
    background: linear-gradient(#cc3650, #783c72);
}

.how-pl-works .pl-container {
    margin-top: 50px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    padding-bottom: 20px;
}

@media screen and (max-width: 860px) {
    .how-pl-works .pl-container {
        -ms-flex-direction: column;
            flex-direction: column;
        margin-top: -30px;
    }
}

.how-pl-works .pl-icon {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-positive: 1.6;
        flex-grow: 1.6;
    width: 100px;
    height: 100px;
}

.how-pl-works .pl-icon img {
    max-width: 80%;
    max-height: 80%;
}

@media screen and (max-width: 860px) {
    .how-pl-works .pl-icon {
        margin-top: 40px;
    }
}

.how-pl-works .pl-icon .info {
    margin-top: 10px;
}

.how-pl-works .pl-desc {
    margin-top: 10px;
}

.how-pl-works .pl-desc h2 {
    background: #21153f;
    border-radius: 10px;
    border: 1px solid white;
}

.how-pl-works .pl-desc p {
    text-align: justify;
}

.pl-clickable {
    cursor: pointer;
}

.pl-clickable img:hover {
    transform: scale(1.1);
}

.display_none {
    display: none;
}

#how .innerContent {
    margin: 0;
    background: url("../images/home/how-it-works-transparent.png");
    background-repeat: no-repeat;
    background-size: auto 600px;
}

@media screen and (max-width: 860px) {
    #how .innerContent {
        background: none;
    }
}

#how .innerContent p {
    margin-left: 160px;
}

@media screen and (max-width: 860px) {
    #how .innerContent p {
        margin-bottom: 20px;
        margin-left: 0px;
    }
}

@media screen and (max-width: 860px) {
    #how .imageFlex {
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    }
}

#how img {
    width: 200px;
    height: 0;
    margin-right: 60px;
    opacity: 0;
}

@media screen and (max-width: 860px) {
    #how img {
        opacity: 1;
        height: auto;
        width: 100%;
    }
}

.our-curriculum {
    background: #21153f;
    color: white;
}

@keyframes benefitsAnimation {
    0% {
        left: 0%;
    }
    20% {
        left: 0%;
    }
    25% {
        left: -50%;
    }
    50% {
        left: -50%;
    }
    55% {
        left: -100%;
    }
    70% {
        left: -100%;
    }
    75% {
        left: -150%;
    }
    95% {
        left: -150%;
    }
    99% {
        left: 0%;
    }
}

@keyframes benefitsAnimationMobile {
    from {
        left: 0%;
    }
    to {
        left: -900%;
    }
}

#benefits {
    background: #221240;
    color: #fff;
}

#benefits h1 {
    text-align: center;
}

#benefits h1::after {
    display: none;
}

@media screen and (max-width: 860px) {
    #benefits h1::after {
        display: none;
    }
}

#benefits .benefitsContainer {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 208px;
    position: relative;
    margin-top: 40px;
    overflow: hidden;
}

@media screen and (max-width: 860px) {
    #benefits .benefitsContainer {
        overflow-x: scroll;
    }
}

#benefits .benefits {
    display: -ms-flexbox;
    display: flex;
    width: 300%;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-align: baseline;
        align-items: baseline;
    position: absolute;
    animation: benefitsAnimation 20s ease-in-out infinite;
}

@media screen and (max-width: 860px) {
    #benefits .benefits {
        width: 900%;
        animation: none;
    }
}

#benefits .benefit {
    width: 8.3%;
    padding: 20px;
    box-sizing: border-box;
    text-align: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
}

@media screen and (max-width: 860px) {
    #benefits .benefit {
        width: 9.8%;
    }
}

#benefits .benefit h3 {
    font-weight: 500;
    margin-top: 20px;
}

#benefits .benefit p {
    display: none;
}

#benefits .benefitImage {
    width: 60px;
    height: 60px;
    border-radius: 60px;
    background: #ff4455;
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
}

#benefits .benefitImage img {
    height: 50%;
    width: auto;
    position: absolute;
}

@keyframes logo-dot-animation {
    to {
        opacity: 1;
    }
}

@keyframes logo-cuts-animation {
    to {
        opacity: 0;
    }
}

@keyframes logo-line-animation {
    to {
        stroke-dashoffset: 0;
    }
}

svg#logo {
    margin-top: -20px;
    width: 300px;
    margin-bottom: 60px;
    opacity: 0;
    animation: logo-dot-animation 1s ease-in-out forwards;
    animation-delay: 3s;
}

#logo_cut_o1,
#logo_cut_o2 {
    opacity: 1;
    animation: logo-cuts-animation 1s ease-in-out forwards;
    animation-delay: 4s;
}

#logo_dot1,
#logo_dot2 {
    opacity: 0;
    animation: logo-dot-animation 1s ease-in-out forwards;
    animation-delay: 5s;
}

#logo_line {
    stroke-dashoffset: 130;
    stroke-dasharray: 130;
    fill: transparent;
    animation: logo-line-animation 1s ease-in-out forwards;
    animation-delay: 6s;
}

#numbers {
    background: linear-gradient(360deg, #516DE8 2.7%, #283EAE 30.97%);
    color: #fff;
}

#numbers .innerContent:after {
    content: "";
    width: 50vw;
    height: 100%;
    position: absolute;
    left: 50vw;
    background-repeat: no-repeat;
    background-size: auto 120%;
    opacity: 0.2;
    background-position: top;
    top: 0;
}

#numbers h1:after {
    display: none;
}

.mock {
    width: 100%;
}

@keyframes dialogAnimation1 {
    0% {
        opacity: 0;
        transform: translateY(40px);
    }
    20% {
        opacity: 0;
        transform: translateY(40px);
    }
    30% {
        opacity: 1;
        transform: translateY(0);
    }
    50% {
        opacity: 1;
        transform: translateY(0);
    }
    90% {
        opacity: 1;
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        transform: translateY(-60px);
    }
}

@keyframes dialogAnimation2 {
    0% {
        opacity: 0;
        transform: translateY(40px);
    }
    50% {
        opacity: 0;
        transform: translateY(40px);
    }
    60% {
        opacity: 1;
        transform: translateY(0);
    }
    90% {
        opacity: 1;
        transform: translateY(0);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes dialogAnimation3 {
    0% {
        opacity: 0;
        transform: translateY(40px);
    }
    90% {
        opacity: 0;
        transform: translateY(40px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes clockAnimation {
    to {
        transform: rotate(360deg);
    }
}

@keyframes clockHourAnimation {
    to {
        transform: rotate(360deg);
    }
}

#programs_page {
    position: relative;
    max-width: 100%;
    overflow: hidden;
}

#programs_page h1::after {
    display: none;
}

#programs_page .innerContent {
    max-width: 1200px;
}

.programs__splash {
    background: #221240;
    color: #fff;
}

.programs__splash .innerContent {
    height: 550px;
    padding-bottom: 0;
    padding-top: 0;
}

@media screen and (max-width: 1024px) {
    .programs__splash .innerContent {
        height: auto;
    }
}

.programs__splash .flex {
    padding-top: 200px;
}

@media screen and (max-width: 1024px) {
    .programs__splash .flex {
        padding-top: 0px;
    }
}

.programs__splash .text {
    width: 40%;
}

@media screen and (max-width: 1024px) {
    .programs__splash .splashText h3,
    .programs__splash .splashText button {
        display: none;
    }
}

@media screen and (max-width: 1024px) {
    .programs__splash .splashText {
        text-align: center;
        position: absolute;
        z-index: 4;
        top: 80px;
        left: calc(50% - 150px);
    }
}

@media screen and (max-width: 860px) {
    .programs__splash .splashText {
        left: calc(50% - 75px);
        top: 50px;
    }
}

.programs__splash .img {
    position: absolute;
    top: 0;
    right: 0;
    width: 860px;
}

@media screen and (max-width: 1024px) {
    .programs__splash .img {
        left: 0;
        width: 110%;
        position: relative;
    }
}

@media screen and (max-width: 860px) {
    .programs__splash .img {
        left: -32%;
        width: 180%;
    }
}

.programs__splash .img svg {
    width: 100%;
}

@media screen and (max-width: 1024px) {
    .programs__splash .img path#Fill-59 {
        opacity: 0;
    }
}

.programs__splash .img g#left-dialogue-1 {
    animation: dialogAnimation1 10s forwards;
}

.programs__splash .img g#right-dialogue-1 {
    animation: dialogAnimation2 10s forwards;
}

.programs__splash .img g#left-dialogue-1-3 {
    animation: dialogAnimation3 10s forwards;
}

.programs__splash .img polygon#Fill-69 {
    transform: rotate(0deg);
    transform-box: fill-box;
    transform-origin: bottom;
    animation: clockAnimation 60s infinite;
}

.programs__apply {
    background: url("../images/programs/leadership.png");
    background-size: auto 300%;
    background-repeat: no-repeat;
    background-position: 110% 20%;
}

@media screen and (max-width: 1024px) {
    .programs__apply {
        background-size: auto 75%;
        background-repeat: no-repeat;
        background-position: 111% 212%;
    }
}

@media screen and (max-width: 860px) {
    .programs__apply {
        background-size: auto 40%;
        background-repeat: no-repeat;
        background-position: 109% 130%;
    }
}

.programs__about.content {
    overflow: visible;
}

.programs__about {
    background: #221240;
    color: #fff;
}

.programs__about h1 {
    line-height: 1;
    padding-right: 20px;
}

@media screen and (max-width: 1024px) {
    .programs__about h1 {
        text-align: center;
    }
}

.programs__about .flex {
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 1024px) {
    .programs__about .flex {
        -ms-flex-direction: column;
            flex-direction: column;
    }
}

.programs__about .about_container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-positive: 1;
        flex-grow: 1;
    margin-top: -110px;
    transition: 0.2s ease-in-out max-height;
}

@media screen and (max-width: 1024px) {
    .programs__about .about_container {
        margin-top: 20px;
    }
}

.programs__about .about_content {
    background: #180e31;
    border-radius: 100px;
    padding: 40px 120px 40px 80px;
    max-width: 600px;
    margin-bottom: 20px;
    cursor: pointer;
}

@media screen and (max-width: 1024px) {
    .programs__about .about_content {
        padding: 40px;
        border-radius: 29px;
    }
}

.programs__about .about_content p {
    max-height: 0px;
    overflow: hidden;
}

.programs__about .about_content:nth-child(1) {
    margin-left: auto;
    margin-right: -40px;
}

.programs__about .about_content:nth-child(2) {
    margin-left: auto;
    margin-right: auto;
}

.programs__about .about_content:nth-child(3) {
    margin-left: -40px;
}

.programs__about .about_content.active p {
    max-height: 1000px;
}

.programs__curriculum p {
    margin-top: 10px;
}

.programs__curriculum .flex {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
}

.programs__curriculum .animation {
    -ms-flex: 1 0 auto;
        flex: 1 0 auto;
}

@media screen and (max-width: 1024px) {
    .programs__curriculum .animation {
        margin-top: 20px;
    }
}

.programs__curriculum .activeCourse {
    text-align: center;
    margin-top: -60px;
}

.programs__curriculum .activeCourse .img {
    position: relative;
    width: 250px;
    overflow: hidden;
    height: 250px;
    margin: auto;
}

.programs__curriculum .activeCourse .imgContainer {
    display: -ms-flexbox;
    display: flex;
    width: calc(250px * 5);
    left: 0px;
    position: relative;
}

.programs__curriculum .activeCourse .img::before {
    content: "";
    width: 220px;
    height: 220px;
    position: absolute;
    background: #ccc;
    z-index: -1;
    border-radius: 50%;
    left: calc(50% - 110px);
    top: calc(50% - 110px);
}

.programs__curriculum .activeCourse img {
    width: 250px;
    z-index: 2;
    height: -webkit-fill-available;
}

.programs__curriculum .curriculum_details {
    position: relative;
}

.programs__curriculum .curriculum_details .flex {
    -ms-flex-align: center;
        align-items: center;
}

.programs__curriculum .curriculum_details .curriculum_details_image {
    width: 40%;
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    overflow: hidden;
}

@media screen and (max-width: 1024px) {
    .programs__curriculum .curriculum_details .curriculum_details_image {
        width: 130%;
    }
}

.programs__curriculum .curriculum_details .curriculum_details_image .curriculum_details_image_container {
    display: inline-table;
    width: 300%;
    position: relative;
    left: 0;
}

.programs__curriculum .curriculum_details .curriculum_details_image img {
    width: 33.33%;
    position: relative;
    height: auto;
    display: inline-block;
    margin: 0;
    padding: 0;
    border-radius: 8px;
}

.programs__curriculum .curriculum_details .curriculum_details_text {
    background: #221240;
    padding: 40px;
    color: #fff;
    padding-right: 60px;
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    position: relative;
    border-radius: 0px 10px 10px 0;
}

@media screen and (max-width: 1024px) {
    .programs__curriculum .curriculum_details .curriculum_details_text {
        margin-top: -60px;
    }
}

.programs__curriculum .curriculum_details .curriculum_details_text .titles {
    height: 36px;
    overflow: hidden;
}

.programs__curriculum .curriculum_details .curriculum_details_text .titles .titles_container {
    position: relative;
    top: 0;
}

.programs__curriculum .curriculum_details .curriculum_details_text .paras {
    width: 100%;
    overflow: hidden;
}

.programs__curriculum .curriculum_details .curriculum_details_text .paras .paras_container {
    position: relative;
    left: 0;
    display: -ms-flexbox;
    display: flex;
    width: 300%;
    -ms-flex-pack: start;
        justify-content: flex-start;
}

.programs__curriculum .curriculum_details .curriculum_next {
    position: absolute;
    background: #ff4455;
    height: 40px;
    width: 40px;
    border-radius: 40px;
    right: -10px;
    top: -10px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    color: #fff;
    cursor: pointer;
}

.programs__options {
    background: #000;
    color: #fff;
}

.programs__options a:visited {
    color: #fff;
}

.programs__options .innerContent {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
}

.programs__options h1 {
    font-size: 2.1em;
}

.programs__options .flex {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-align: center;
        align-items: center;
}

@media screen and (max-width: 1024px) {
    .programs__options .flex {
        -ms-flex-direction: column;
            flex-direction: column;
    }
}

.programs__options .small {
    font-size: 12px;
}

.programs__options .programs__offerings {
    display: -ms-flexbox;
    display: flex;
    margin: 20px 0 20px 0;
}

.programs__options .programs__offerings h1 {
    text-align: center;
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
    margin-bottom: 30px;
    margin-top: 50px;
}

@media screen and (max-width: 860px) {
    .programs__options .programs__offerings #programs__offerings_row {
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-align: center;
            align-items: center;
    }
}

.programs__options .personal_lesson_info {
    transition: all 0.5s ease-in-out;
    margin-right: 30px;
    background: lightgrey;
    color: #180e31;
    box-shadow: 0px 0px 20px #221240;
    border-radius: 20px;
    width: 350px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-align: center;
        align-items: center;
    padding: 20px;
    -ms-flex-pack: justify;
        justify-content: space-between;
}

.programs__options .personal_lesson_info ul {
    padding-left: 20px;
    font-size: 16px;
}

.programs__options .personal_lesson_info h3 {
    margin-bottom: 15px;
}

.programs__options .personal_lesson_info .expandClickable {
    margin-right: 10px;
}

@media screen and (max-width: 860px) {
    .programs__options .personal_lesson_info {
        width: 300px;
    }
}

.programs__options .program_info {
    transition: all 0.5s ease-in-out;
    background: white;
    box-shadow: 0px 0px 20px #221240;
    border-radius: 20px;
    width: 600px;
    height: 270px;
    background-repeat: no-repeat;
    margin-right: 20px;
    margin-left: 20px;
}

.programs__options .program_info .program_info_image {
    float: left;
    height: 100%;
}

.programs__options .program_info .program_info_image img {
    height: 100%;
    width: 250px;
    object-fit: cover;
    border-radius: 20px 0 0 20px;
}

.programs__options .program_info .program_info_text {
    padding: 30px 20px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: justify;
        justify-content: space-between;
    -ms-flex-align: center;
        align-items: center;
    height: 150px;
}

.programs__options .program_info .program_info_text ul {
    padding-left: 20px;
    color: black;
}

.programs__options .program_info .program_info_text h3 {
    margin-bottom: 15px;
}

.programs__options .program_info .program_info_text h2 {
    color: black;
}

.programs__options .program_info .expandClickable {
    margin-right: 20px;
}

@media screen and (max-width: 860px) {
    .programs__options .program_info {
        width: 300px;
        margin: 10px 0px;
    }
}

.programs__options .personalized_coding {
    margin-right: 50px;
    margin-left: 50px;
    background-image: url("../../prod/images/summercamps/personalization_card_picture.jpg");
    background-size: 300px auto;
}

@media screen and (max-width: 860px) {
    .programs__options .personalized_coding {
        margin: 10px 0px;
    }
}

.programs__options .summer_coding {
    margin-right: 50px;
    margin-left: 50px;
    background-image: url("../../prod/images/summercamps/camps_card_picture.jpg");
    background-size: 300px auto;
}

@media screen and (max-width: 860px) {
    .programs__options .summer_coding {
        margin: 10px 0px;
    }
}

.programs__options .quantum_coding {
    margin-right: 50px;
    margin-left: 50px;
    background-image: url("../../prod/images/summercamps/quantum_card_picture.jpg");
    background-size: auto 255px;
}

@media screen and (max-width: 860px) {
    .programs__options .quantum_coding {
        margin: 10px 0px;
    }
}

.programs__options .research_coding {
    margin-right: 50px;
    margin-left: 50px;
    background-image: url("../../prod/images/summercamps/research_card_picture.jpg");
    background-size: auto 255px;
}

@media screen and (max-width: 860px) {
    .programs__options .research_coding {
        margin: 10px 0px;
    }
}

.programs__options .program_info_name {
    text-align: center;
    padding-top: 260px;
    display: -ms-flexbox;
    display: flex;
}

.programs__options .old_price {
    margin-right: 10px;
    background: linear-gradient(to left top, transparent 47.75%, currentColor 49.5%, currentColor 50.5%, transparent 52.25%);
}

.programs__options .spring_programs {
    background: #fff;
    color: #180e31;
    margin: 40px 20px;
    border-radius: 20px;
    padding: 30px;
}

.programs__options .spring_programs .program_info {
    background: #180e31;
    color: #fff;
    box-shadow: none;
}

.programs__options .summer__programs {
    padding: 30px 30px 0px 30px;
}

.programs__options .general_programs {
    margin: 40px 0 40px 0;
    border-radius: 20px;
    padding: 30px;
}

.programs__options .general_programs .program_info {
    box-shadow: none;
}

.programs__options .camp-row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
        flex-direction: row;
}

@media screen and (max-width: 860px) {
    .programs__options .camp-row {
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-align: center;
            align-items: center;
    }
}

.programs__options .program_expand {
    max-height: 550px;
    transition: all 0.5s ease-in-out;
    margin: 30px 50px;
    width: 92%;
    max-height: 100%;
}

.programs__options .program_expand p {
    max-width: 1100px;
    font-size: 14px;
}

.programs__options .program_expand li {
    font-size: 14px;
}

.programs__options .program_expand h4 {
    font-size: 14px;
}

@media screen and (max-width: 860px) {
    .programs__options .program_expand {
        padding: 10px;
        margin: 0px;
    }
}

.programs__options .programOptionContainer {
    width: 60%;
    margin-left: auto;
    overflow: hidden;
    box-shadow: 0px 0px 20px #221240;
    position: relative;
}

@media screen and (max-width: 1024px) {
    .programs__options .programOptionContainer {
        width: 100%;
        margin-top: 20px;
        margin-bottom: 20px;
    }
}

.programs__options .expand_container {
    transition: all 0.5s ease-in-out;
    transition-delay: 0s;
    padding: 0px;
    background: #180e31;
    border-radius: 20px;
    max-height: 0;
    overflow: hidden;
}

.programs__options .expand_container.active {
    transition-delay: 0.5s;
    max-height: 100%;
}

.programs__options .expand_container #spring-lessons {
    background: #fff !important;
    color: #180e31 !important;
}

.programs__options .programOptionContainerFlex {
    display: -ms-flexbox;
    display: flex;
    width: 200%;
    left: 0;
    position: relative;
}

.programs__options .programOptionContainerFlex.winter {
    left: -100%;
}

@media screen and (max-width: 1024px) {
    .programs__options .programSelector {
        text-align: center;
    }
}

.programs__options .programSelectorOption {
    background: transparent;
    padding: 20px;
    text-align: center;
    margin-top: 20px;
    cursor: pointer;
}

.programs__options .programSelectorOption.active {
    background: #221240;
}

.programs__options .programOption {
    background: #221240;
    padding: 40px;
    width: 60%;
    position: relative;
    overflow: hidden;
    margin-left: auto;
}

.programs__options .programOption ul li {
    line-height: 1.2;
}

.programs__options .programOptionContainer::after {
    content: "";
    height: 100px;
    width: 100px;
    border-radius: 100px;
    position: absolute;
    top: -50px;
    right: -50px;
    background: #ff4455;
    z-index: 2;
}

.programs__options .programs__option:hover {
    border: 8px solid #fff;
}

.programOptionClickable ul {
    max-height: 0;
    overflow: hidden;
    font-size: 14px;
}

.programOptionClickable ul.active {
    max-height: 200px;
}

@media screen and (max-width: 1024px) {
    .programOptionClickable ul.active {
        max-height: 400px;
    }
}

.programOptionClickable h4 {
    border: 2px solid #fff;
    display: inline-block;
    padding: 5px 18px;
    background: rgba(255, 255, 255, 0);
}

.programOptionClickable h4.active {
    background: #fff;
    color: #221240;
}

.programOptionClickable:hover {
    cursor: pointer;
}

.programOptionClickable:hover h4 {
    background: #fff;
    color: #221240;
}

.programs__steps {
    background: #283EAE;
    color: #fff;
    position: relative;
}

.programs__steps .steps {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: center;
        justify-content: center;
}

.programs__steps .stepContainer {
    width: 33%;
    text-align: center;
    margin-top: 40px;
    margin-bottom: 40px;
    position: relative;
}

@media screen and (max-width: 1024px) {
    .programs__steps .stepContainer {
        width: 100%;
    }
}

.programs__steps .step {
    width: 160px;
    margin: auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-direction: column;
        flex-direction: column;
}

.programs__steps .stepImage {
    width: 120px;
    height: 120px;
    background: #180e31;
    border-radius: 120px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    margin-bottom: 10px;
    transform: scale(1);
}

.programs__steps .stepImage:hover {
    transform: scale(1.2);
    cursor: pointer;
}

.programs__scholarships {
    background: url("../../prod/images/impact/impact_splash-blue.png");
    margin-top: -7%;
    padding-top: 7%;
    background-size: 100% auto;
    color: #fff;
    z-index: 0;
}

.course__descriptions h1 {
    margin: 20px 0px;
}

.course__descriptions .course_content1 {
    width: 47%;
    margin-right: 30px;
}

@media screen and (max-width: 1024px) {
    .course__descriptions .course_content1 {
        width: 100%;
        margin: 0px;
    }
}

.course__descriptions .course_content2 {
    width: 47%;
}

@media screen and (max-width: 1024px) {
    .course__descriptions .course_content2 {
        width: 100%;
    }
}

.course__descriptions .course_flex {
    display: -ms-flexbox;
    display: flex;
}

@media screen and (max-width: 1024px) {
    .course__descriptions .course_flex {
        display: block;
    }
}

.course__descriptions .course {
    border-radius: 15px;
    margin: 10px 0px;
    padding: 15px 30px;
    background: white;
    color: #180e31;
    box-shadow: 0px 3px 6px 3px rgba(0, 0, 0, 0.14);
    cursor: pointer;
}

.course__descriptions .course .course_text {
    max-height: 0;
    overflow: hidden;
}

.course__descriptions .course.active {
    cursor: pointer;
}

.course__descriptions .course.active h3 {
    color: #38C1CF;
}

.course__descriptions .course.active .course_text {
    max-height: 1000px;
}

#spring_buttons {
    margin-top: 25px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
}

#spring_buttons a {
    margin-left: 15px;
}

.programs__faq {
    background: #eee;
}

.programs__faq .show_faqs {
    background: linear-gradient(to right, #38C1CF, #516DE8);
    color: #fff;
    vertical-align: super;
    margin-left: 20px;
}

.programs__faq .questionAnswer {
    margin-top: 8px;
    margin-bottom: 0;
    max-width: 800px;
}

.programs__faq .questionAnswer .question {
    cursor: pointer;
}

.programs__faq .questionAnswer .answer {
    max-height: 0;
    overflow: hidden;
}

.programs__faq .questionAnswer.active {
    margin-top: 20px;
    margin-bottom: 20px;
    background: #fff;
    padding: 20px;
    border-radius: 8px;
}

.programs__faq .questionAnswer.active .question {
    text-decoration: underline;
}

.programs__faq .questionAnswer.active .answer {
    max-height: 1000px;
}

#c0,
#c1,
#c2,
#c3,
#c3a,
#c3b,
#c4,
#c5,
#c5a,
#c5b,
#c6,
#c6a {
    position: absolute;
    width: 2px;
    height: 2px;
    background: transparent;
}

#c1 {
    left: 50%;
    top: 10%;
}

#c2 {
    left: 50%;
    top: 50%;
}

#c3 {
    left: 50%;
    top: 10%;
}

#c3a {
    right: 10%;
    top: 52%;
}

#c3b {
    left: 20%;
    top: 56%;
}

#c4 {
    left: 50%;
    top: 40%;
}

#c5 {
    left: 50%;
    top: 10%;
}

#c5a {
    right: 10%;
    bottom: 10%;
}

#c5b {
    right: 20%;
    bottom: 20%;
}

#c6 {
    left: 45%;
    top: 200%;
}

#c6a {
    left: 50%;
    top: 20%;
}

.programs__register {
    background: white;
}

#springModal {
    padding: 40px 40px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
}

#springModal button {
    margin: 10px;
}

#springModal #close {
    text-align: center !important;
    color: #9a9a9a;
}

#springModal #close:hover {
    color: #2e50ff;
}

#springModal a {
    text-decoration: none;
}

#springModal #modal-buttons {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    margin: 15px 0px;
}

@media screen and (max-width: 1024px) {
    #springModal #modal-buttons {
        -ms-flex-direction: column;
            flex-direction: column;
    }
}

.lineDivider {
    border: 0;
    height: 0;
    border-top: 1px solid white;
    border-bottom: 1px solid white;
}

.col {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
}

.row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
        flex-direction: row;
}

.flex-center {
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
}

.align-center {
    -ms-flex-align: center;
        align-items: center;
}

.justify-center {
    -ms-flex-pack: center;
        justify-content: center;
}

.space-between {
    -ms-flex-pack: justify;
        justify-content: space-between;
}

.space-evenly {
    -ms-flex-pack: space-evenly;
        justify-content: space-evenly;
}

.circle-camp {
    width: 200px;
    height: 200px;
    border-radius: 150px;
    overflow: hidden;
    vertical-align: middle;
    text-align: center;
    line-height: 200px;
    box-shadow: 0px 3px 6px 3px rgba(0, 0, 0, 0.4);
}

@media screen and (max-width: 860px) {
    .circle-camp {
        margin: 20px 0px 20px 0px;
    }
}

.circle-camp .circle-text {
    display: inline-block;
    vertical-align: middle;
    line-height: 30px;
}

.w100 {
    width: 100%;
}

.techTalkSpeakersContainer {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: baseline;
        align-items: baseline;
}

.techTalkSpeaker {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    margin: 20px;
    width: 132px;
}

.techTalkSpeakerImg {
    width: 100px;
    height: 100px;
    border-radius: 150px;
    overflow: hidden;
    display: -ms-flexbox;
    display: flex;
}

.techTalkSpeakerImg img {
    width: 100%;
    object-fit: cover;
}

.company {
    height: 45px;
}

.company img {
    width: 150px;
    object-fit: cover;
}

.programs_menu {
    margin-bottom: 15px;
}

.programs_menu a {
    margin: 0 40px 0 40px;
    color: white;
    font-weight: 100;
    text-align: center;
}

@media screen and (max-width: 550px) {
    .programs_menu a {
        margin: 0 10px 0 10px;
        font-size: 14.5px;
        -ms-flex-align: center;
            align-items: center;
        letter-spacing: -0.05em;
    }
}

#mc_embed_signup_scroll h4 {
    font-weight: 600 !important;
    font-size: 16px;
}

.bottom-right-popup.modal {
    position: fixed;
    display: none;
    background-color: white;
    bottom: 0px;
    right: 0px;
    margin: 10px;
    width: 365px;
    z-index: 10;
    animation-name: appear-left;
    animation-duration: 1s;
}

@keyframes appear-left {
    0% {
        opacity: 0.2;
        right: -50px;
    }
    100% {
        opacity: 1;
        right: 0px;
    }
}

.close {
    position: absolute;
    right: 10px;
    top: 10px;
    width: 32px;
    height: 32px;
    opacity: 0.3;
}

.close:hover {
    opacity: 1;
    cursor: pointer;
}

.close:before, .close:after {
    position: absolute;
    left: 15px;
    content: ' ';
    height: 30px;
    width: 2px;
    background-color: #ff4455;
}

.close:before {
    transform: rotate(-45deg);
}

.close:after {
    transform: rotate(45deg);
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0ksbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQixtQkFBbUI7SUFDbkIsd0RBQXdEO0lBQ3hELHNEQUFzRDtDQUN6RDs7QUFFRDtJQUNJLG1CQUFtQjtJQUNuQixpQkFBaUI7SUFDakIsbUJBQW1CO0lBQ25CLDBEQUEwRDtJQUMxRCx3REFBd0Q7Q0FDM0Q7O0FBRUQ7SUFDSSxtQkFBbUI7SUFDbkIsaUJBQWlCO0lBQ2pCLG1CQUFtQjtJQUNuQixzREFBc0Q7SUFDdEQsb0RBQW9EO0NBQ3ZEOztBQUVEO0lBQ0ksbUJBQW1CO0lBQ25CLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztJQUNkLDJCQUF1QjtRQUF2Qix1QkFBdUI7SUFDdkIsaUJBQWlCO0lBQ2pCLFVBQVU7SUFDVixlQUFlO0lBQ2YsK0JBQStCO0lBQy9CLGdCQUFnQjtJQUNoQixpQkFBaUI7SUFDakIsc0JBQXNCO0NBQ3pCOztBQUVEO0lBQ0ksK0JBQStCO0lBQy9CLFdBQVc7Q0FDZDs7QUFFRDs7Ozs7OztJQU9JLGlCQUFpQjtJQUNqQixVQUFVO0lBQ1YsaUJBQWlCO0NBQ3BCOztBQUVEO0lBQ0ksaUJBQWlCO0lBQ2pCLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLG1CQUFtQjtJQUNuQixzQkFBc0I7SUFDdEIsdUJBQXVCO0lBQ3ZCLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJO1FBQ0ksZ0JBQWdCO1FBQ2hCLG9CQUFvQjtLQUN2QjtDQUNKOztBQUVEO0lBQ0ksaUJBQWlCO0NBQ3BCOztBQUVEO0lBQ0ksdUJBQXVCO0NBQzFCOztBQUVEO0lBQ0kscUJBQXFCO0lBQ3JCLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLFlBQVk7SUFDWixZQUFZO0lBQ1osWUFBWTtJQUNaLGlCQUFpQjtJQUNqQixtQkFBbUI7SUFDbkIsWUFBWTtJQUNaLFFBQVE7SUFDUixVQUFVO0NBQ2I7O0FBRUQ7SUFDSSxtQkFBbUI7SUFDbkIsWUFBWTtJQUNaLFdBQVc7SUFDWCxpQkFBaUI7SUFDakIsc0JBQXNCO0NBQ3pCOztBQUVEO0lBQ0ksc0JBQXNCO0lBQ3RCLHdEQUF3RDtJQUN4RCxhQUFhO0lBQ2Isb0JBQW9CO0lBQ3BCLGtCQUFrQjtJQUNsQixpQkFBaUI7SUFDakIsWUFBWTtJQUNaLGdCQUFnQjtJQUNoQixnQkFBZ0I7Q0FDbkI7O0FBRUQ7SUFDSSxzQkFBc0I7SUFDdEIsd0RBQXdEO0lBQ3hELGFBQWE7SUFDYixvQkFBb0I7SUFDcEIsa0JBQWtCO0lBQ2xCLGlCQUFpQjtJQUNqQixZQUFZO0lBQ1osZ0JBQWdCO0lBQ2hCLGdCQUFnQjtDQUNuQjs7QUFFRDtJQUNJLHVCQUF1QjtDQUMxQjs7QUFFRDtJQUNJLGVBQWU7Q0FDbEI7O0FBRUQ7SUFDSSxlQUFlO0NBQ2xCOztBQUVEO0lBQ0ksZUFBZTtDQUNsQjs7QUFFRDtJQUNJLGdCQUFnQjtDQUNuQjs7QUFFRDtJQUNJLFlBQVk7Q0FDZjs7QUFFRDtJQUNJLG9CQUFvQjtJQUNwQixZQUFZO0lBQ1osa0JBQWtCO0NBQ3JCOztBQUVEO0lBQ0ksb0JBQW9CO0lBQ3BCLFlBQVk7SUFDWixrQkFBa0I7Q0FDckI7O0FBRUQ7SUFDSSxvQkFBb0I7SUFDcEIsWUFBWTtJQUNaLGtCQUFrQjtDQUNyQjs7QUFFRDtJQUNJLG9CQUFvQjtJQUNwQixZQUFZO0lBQ1osa0JBQWtCO0NBQ3JCOztBQUVEO0lBQ0ksWUFBWTtDQUNmOztBQUVEO0lBQ0ksZUFBZTtDQUNsQjs7QUFFRDtJQUNJO1FBQ0ksWUFBWTtRQUNaLG1CQUFtQjtRQUNuQixZQUFZO1FBQ1osb0JBQW9CO1FBQ3BCLFdBQVc7UUFDWCxvQkFBb0I7UUFDcEIsY0FBYztRQUNkLFlBQVk7UUFDWixZQUFZO1FBQ1osYUFBYTtRQUNiLFdBQVc7UUFDWCxPQUFPO0tBQ1Y7Q0FDSjs7QUFFRDtJQUNJLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJLGNBQWM7Q0FDakI7O0FBRUQ7SUFDSTtRQUNJLGlCQUFpQjtLQUNwQjtDQUNKOztBQUVEO0lBQ0ksaUJBQWlCO0NBQ3BCOztBQUVEO0lBQ0k7UUFDSSxjQUFjO0tBQ2pCO0NBQ0o7O0FBRUQ7SUFDSSxjQUFjO0lBQ2Qsa0JBQWtCO0lBQ2xCLGFBQWE7SUFDYixtQkFBbUI7Q0FDdEI7O0FBRUQ7SUFDSTtRQUNJLGNBQWM7S0FDakI7Q0FDSjs7QUFFRDtJQUNJLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLGdCQUFnQjtDQUNuQjs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztJQUNkLHVCQUFvQjtRQUFwQixvQkFBb0I7SUFDcEIsb0JBQWdCO1FBQWhCLGdCQUFnQjtDQUNuQjs7QUFFRDtJQUNJLG1CQUFlO1FBQWYsZUFBZTtJQUNmLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJO1FBQ0ksV0FBVztLQUNkO0NBQ0o7O0FBRUQ7SUFDSTtRQUNJLG9CQUFvQjtRQUNwQixtQkFBZTtZQUFmLGVBQWU7UUFDZixZQUFZO0tBQ2Y7Q0FDSjs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztJQUNkLHVCQUFvQjtRQUFwQixvQkFBb0I7SUFDcEIsbUJBQW1CO0lBQ25CLFdBQVc7Q0FDZDs7QUFFRDtJQUNJO1FBQ0ksV0FBVztLQUNkO0NBQ0o7O0FBRUQ7SUFDSTtRQUNJLFlBQVk7S0FDZjtDQUNKOztBQUVEO0lBQ0ksZ0JBQWdCO0lBQ2hCLG1CQUFlO1FBQWYsZUFBZTtJQUNmLG1CQUFtQjtDQUN0Qjs7QUFFRDtJQUNJLGdCQUFnQjtDQUNuQjs7QUFFRDtJQUNJLGNBQWM7Q0FDakI7O0FBRUQ7SUFDSTtRQUNJLG1CQUFlO1lBQWYsZUFBZTtLQUNsQjtDQUNKOztBQUVEO0lBQ0ksaUJBQWlCO0NBQ3BCOztBQUVEO0lBQ0ksbUJBQW1CO0lBQ25CLG1CQUFtQjtDQUN0Qjs7QUFFRDtJQUNJLDBCQUEwQjtDQUM3Qjs7QUFFRDtJQUNJLG9CQUFvQjtJQUNwQixZQUFZO0NBQ2Y7O0FBRUQ7SUFDSSxtQkFBbUI7Q0FDdEI7O0FBRUQ7SUFDSTtRQUNJLG1CQUFtQjtLQUN0QjtDQUNKOztBQUVEO0lBQ0kscUJBQWM7SUFBZCxjQUFjO0lBQ2QseUJBQXNCO1FBQXRCLHNCQUFzQjtDQUN6Qjs7QUFFRDtJQUNJO1FBQ0ksMkJBQXVCO1lBQXZCLHVCQUF1QjtRQUN2QixZQUFZO1FBQ1osaUJBQWlCO0tBQ3BCO0NBQ0o7O0FBRUQ7SUFDSSxjQUFjO0lBQ2QsaUJBQWlCO0lBQ2pCLGFBQWE7SUFDYix3QkFBd0I7SUFDeEIsb0JBQW9CO0lBQ3BCLHNCQUFzQjtJQUN0QiwwQkFBMEI7SUFDMUIsbUJBQW1CO0lBQ25CLHFCQUFhO1FBQWIsYUFBYTtDQUNoQjs7QUFFRDtJQUNJLG9CQUFvQjtJQUNwQixtQkFBbUI7SUFDbkIsYUFBYTtDQUNoQjs7QUFFRDtJQUNJLGFBQWE7SUFDYixrQkFBa0I7Q0FDckI7O0FBRUQ7OztJQUdJLFlBQVk7SUFDWixnQkFBZ0I7Q0FDbkI7O0FBRUQ7O0lBRUksd0RBQXdEO0lBQ3hELGFBQWE7SUFDYixvQkFBb0I7SUFDcEIsa0JBQWtCO0lBQ2xCLGlCQUFpQjtJQUNqQixnQkFBZ0I7Q0FDbkI7O0FBRUQ7SUFDSSxhQUFhO0lBQ2IsYUFBYTtDQUNoQjs7QUFIRDtJQUNJLGFBQWE7SUFDYixhQUFhO0NBQ2hCOztBQUVEO0lBQ0kscUJBQWM7SUFBZCxjQUFjO0lBQ2QsdUJBQW9CO1FBQXBCLG9CQUFvQjtJQUNwQix1QkFBK0I7UUFBL0IsK0JBQStCO0NBQ2xDOztBQUVEO0lBQ0k7UUFDSSxxQkFBYztRQUFkLGNBQWM7UUFDZCwyQkFBdUI7WUFBdkIsdUJBQXVCO1FBQ3ZCLHNCQUF3QjtZQUF4Qix3QkFBd0I7S0FDM0I7Q0FDSjs7QUFFRDtJQUNJO1FBQ0ksaUJBQWlCO1FBQ2pCLFlBQVk7S0FDZjtDQUNKOztBQUVEO0lBQ0ksaUJBQWlCO0NBQ3BCOztBQUVEO0lBQ0ksZ0JBQWdCO0lBQ2hCLGdCQUFnQjtDQUNuQjs7QUFFRDtJQUNJO1FBQ0ksZ0JBQWdCO0tBQ25CO0NBQ0o7O0FBRUQ7SUFDSSxnQkFBZ0I7SUFDaEIsWUFBWTtJQUNaLGFBQWE7Q0FDaEI7O0FBRUQ7SUFDSTtRQUNJLGdCQUFnQjtLQUNuQjtDQUNKOztBQUVEO0lBQ0ksYUFBYTtJQUNiLHNCQUFzQjtDQUN6Qjs7QUFFRDtJQUNJLGtCQUFrQjtJQUNsQixZQUFZO0lBQ1osYUFBYTtJQUNiLHVCQUF1QjtDQUMxQjs7QUFFRDtJQUNJO1FBQ0ksWUFBWTtRQUNaLGFBQWE7S0FDaEI7Q0FDSjs7QUFFRDtJQUNJLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJLFlBQVk7SUFDWixxQkFBYztJQUFkLGNBQWM7SUFDZCx1QkFBb0I7UUFBcEIsb0JBQW9CO0lBQ3BCLG1CQUFtQjtDQUN0Qjs7QUFFRDtJQUNJLGtCQUFrQjtJQUNsQixnQkFBZ0I7SUFDaEIsa0JBQWtCO0NBQ3JCOztBQUVEO0lBQ0k7UUFDSSxnQkFBZ0I7UUFDaEIsa0JBQWtCO0tBQ3JCO0NBQ0o7O0FBRUQ7SUFDSSxZQUFZO0lBQ1osYUFBYTtJQUNiLG1CQUFtQjtDQUN0Qjs7QUFFRDtJQUNJO1FBQ0ksWUFBWTtRQUNaLGFBQWE7UUFDYixpQkFBaUI7S0FDcEI7Q0FDSjs7QUFFRDtJQUNJLGFBQWE7Q0FDaEI7O0FBRUQ7SUFDSSxZQUFZO0lBQ1osbUJBQW1CO0lBQ25CLFlBQVk7SUFDWixvQkFBb0I7SUFDcEIsV0FBVztJQUNYLG9CQUFvQjtJQUNwQixjQUFjO0NBQ2pCOztBQUVEO0lBQ0k7UUFDSSxZQUFZO1FBQ1osWUFBWTtRQUNaLGFBQWE7UUFDYixXQUFXO1FBQ1gsT0FBTztLQUNWO0NBQ0o7O0FBRUQ7SUFDSSx3REFBd0Q7SUFDeEQsWUFBWTtJQUNaLFlBQVk7SUFDWixpQkFBaUI7SUFDakIsb0JBQW9CO0NBQ3ZCOztBQUVEO0lBQ0ksd0RBQXdEO0lBQ3hELFlBQVk7SUFDWixZQUFZO0lBQ1osaUJBQWlCO0lBQ2pCLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztJQUNkLHVCQUFvQjtRQUFwQixvQkFBb0I7SUFDcEIsdUJBQStCO1FBQS9CLCtCQUErQjtDQUNsQzs7QUFFRDtJQUNJO1FBQ0ksMkJBQXVCO1lBQXZCLHVCQUF1QjtRQUN2Qix5QkFBc0I7WUFBdEIsc0JBQXNCO0tBQ3pCO0NBQ0o7O0FBRUQ7SUFDSTtRQUNJLGlCQUFpQjtLQUNwQjtDQUNKOztBQUVEO0lBQ0ksc0JBQXNCO0lBQ3RCLFlBQVk7SUFDWixnQkFBZ0I7SUFDaEIsa0JBQWtCO0lBQ2xCLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJLG9CQUFvQjtJQUNwQixZQUFZO0NBQ2Y7O0FBRUQ7SUFDSSxtQkFBbUI7Q0FDdEI7O0FBRUQ7SUFDSTtRQUNJLG1CQUFtQjtLQUN0QjtDQUNKOztBQUVEO0lBQ0kscUJBQWM7SUFBZCxjQUFjO0lBQ2QseUJBQXNCO1FBQXRCLHNCQUFzQjtDQUN6Qjs7QUFFRDtJQUNJO1FBQ0ksMkJBQXVCO1lBQXZCLHVCQUF1QjtRQUN2QixZQUFZO1FBQ1osaUJBQWlCO0tBQ3BCO0NBQ0o7O0FBRUQ7SUFDSSxjQUFjO0lBQ2QsaUJBQWlCO0lBQ2pCLGFBQWE7SUFDYix3QkFBd0I7SUFDeEIsb0JBQW9CO0lBQ3BCLHNCQUFzQjtJQUN0QiwwQkFBMEI7SUFDMUIsbUJBQW1CO0lBQ25CLHFCQUFhO1FBQWIsYUFBYTtDQUNoQjs7QUFFRDtJQUNJLG9CQUFvQjtJQUNwQixtQkFBbUI7SUFDbkIsYUFBYTtDQUNoQjs7QUFFRDtJQUNJLGFBQWE7SUFDYixrQkFBa0I7Q0FDckI7O0FBRUQ7OztJQUdJLFlBQVk7SUFDWixnQkFBZ0I7Q0FDbkI7O0FBRUQ7O0lBRUksd0RBQXdEO0lBQ3hELGFBQWE7SUFDYixvQkFBb0I7SUFDcEIsa0JBQWtCO0lBQ2xCLGlCQUFpQjtJQUNqQixnQkFBZ0I7Q0FDbkI7O0FBRUQ7SUFDSSxhQUFhO0lBQ2IsYUFBYTtDQUNoQjs7QUFIRDtJQUNJLGFBQWE7SUFDYixhQUFhO0NBQ2hCOztBQUVEO0lBQ0kscUJBQWM7SUFBZCxjQUFjO0lBQ2QsdUJBQW9CO1FBQXBCLG9CQUFvQjtJQUNwQix1QkFBK0I7UUFBL0IsK0JBQStCO0NBQ2xDOztBQUVEO0lBQ0k7UUFDSSxxQkFBYztRQUFkLGNBQWM7UUFDZCwyQkFBdUI7WUFBdkIsdUJBQXVCO1FBQ3ZCLHNCQUF3QjtZQUF4Qix3QkFBd0I7S0FDM0I7Q0FDSjs7QUFFRDtJQUNJO1FBQ0ksaUJBQWlCO1FBQ2pCLFlBQVk7S0FDZjtDQUNKOztBQUVEO0lBQ0ksaUJBQWlCO0NBQ3BCOztBQUVEO0lBQ0ksZ0JBQWdCO0lBQ2hCLGdCQUFnQjtDQUNuQjs7QUFFRDtJQUNJO1FBQ0ksZ0JBQWdCO0tBQ25CO0NBQ0o7O0FBRUQ7SUFDSSxnQkFBZ0I7SUFDaEIsWUFBWTtJQUNaLGFBQWE7Q0FDaEI7O0FBRUQ7SUFDSTtRQUNJLGdCQUFnQjtLQUNuQjtDQUNKOztBQUVEO0lBQ0ksYUFBYTtJQUNiLHNCQUFzQjtDQUN6Qjs7QUFFRDtJQUNJLGtCQUFrQjtJQUNsQixZQUFZO0lBQ1osYUFBYTtJQUNiLHVCQUF1QjtDQUMxQjs7QUFFRDtJQUNJO1FBQ0ksWUFBWTtRQUNaLGFBQWE7S0FDaEI7Q0FDSjs7QUFFRDtJQUNJLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJLFlBQVk7SUFDWixxQkFBYztJQUFkLGNBQWM7SUFDZCx1QkFBb0I7UUFBcEIsb0JBQW9CO0lBQ3BCLG1CQUFtQjtDQUN0Qjs7QUFFRDtJQUNJLGtCQUFrQjtJQUNsQixnQkFBZ0I7SUFDaEIsa0JBQWtCO0NBQ3JCOztBQUVEO0lBQ0k7UUFDSSxnQkFBZ0I7UUFDaEIsa0JBQWtCO0tBQ3JCO0NBQ0o7O0FBRUQ7SUFDSSxZQUFZO0lBQ1osYUFBYTtJQUNiLG1CQUFtQjtDQUN0Qjs7QUFFRDtJQUNJO1FBQ0ksWUFBWTtRQUNaLGFBQWE7UUFDYixpQkFBaUI7S0FDcEI7Q0FDSjs7QUFFRDtJQUNJLGFBQWE7Q0FDaEI7O0FBRUQ7SUFDSSxZQUFZO0lBQ1osbUJBQW1CO0lBQ25CLFlBQVk7SUFDWixvQkFBb0I7SUFDcEIsV0FBVztJQUNYLG9CQUFvQjtJQUNwQixjQUFjO0NBQ2pCOztBQUVEO0lBQ0k7UUFDSSxZQUFZO1FBQ1osWUFBWTtRQUNaLGFBQWE7UUFDYixXQUFXO1FBQ1gsT0FBTztLQUNWO0NBQ0o7O0FBRUQ7SUFDSSx3REFBd0Q7SUFDeEQsWUFBWTtJQUNaLFlBQVk7SUFDWixpQkFBaUI7SUFDakIsb0JBQW9CO0NBQ3ZCOztBQUVEO0lBQ0ksd0RBQXdEO0lBQ3hELFlBQVk7SUFDWixZQUFZO0lBQ1osaUJBQWlCO0lBQ2pCLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztJQUNkLHVCQUFvQjtRQUFwQixvQkFBb0I7SUFDcEIsdUJBQStCO1FBQS9CLCtCQUErQjtDQUNsQzs7QUFFRDtJQUNJO1FBQ0ksMkJBQXVCO1lBQXZCLHVCQUF1QjtRQUN2Qix5QkFBc0I7WUFBdEIsc0JBQXNCO0tBQ3pCO0NBQ0o7O0FBRUQ7SUFDSTtRQUNJLGlCQUFpQjtLQUNwQjtDQUNKOztBQUVEO0lBQ0ksc0JBQXNCO0lBQ3RCLFlBQVk7SUFDWixnQkFBZ0I7SUFDaEIsa0JBQWtCO0lBQ2xCLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztJQUNkLHVCQUErQjtRQUEvQiwrQkFBK0I7SUFDL0Isa0JBQWtCO0lBQ2xCLGFBQWE7SUFDYixjQUFjO0lBQ2QsbUJBQW1CO0lBQ25CLE9BQU87SUFDUCxRQUFRO0lBQ1IsU0FBUztJQUNULFlBQVk7SUFDWixZQUFZO0NBQ2Y7O0FBRUQ7SUFDSTtRQUNJLDJCQUF1QjtZQUF2Qix1QkFBdUI7UUFDdkIsZ0JBQWdCO1FBQ2hCLGlCQUFpQjtRQUNqQixjQUFjO0tBQ2pCO0NBQ0o7O0FBRUQ7SUFDSSxhQUFhO0NBQ2hCOztBQUVEO0lBQ0k7UUFDSSxjQUFjO0tBQ2pCO0NBQ0o7O0FBRUQ7SUFDSSxjQUFjO0NBQ2pCOztBQUVEO0lBQ0ksYUFBYTtDQUNoQjs7QUFFRDtJQUNJO1FBQ0ksZUFBZTtRQUNmLG9CQUFvQjtLQUN2QjtDQUNKOztBQUVEO0lBQ0ksY0FBYztJQUNkLGtCQUFrQjtDQUNyQjs7QUFFRDtJQUNJLFlBQVk7SUFDWixZQUFZO0lBQ1osaUJBQWlCO0lBQ2pCLGNBQWM7Q0FDakI7O0FBRUQ7SUFDSTtRQUNJLGVBQWU7UUFDZixrQkFBa0I7S0FDckI7Q0FDSjs7QUFFRDtJQUNJLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztJQUNkLHdCQUFvQjtRQUFwQixvQkFBb0I7SUFDcEIsb0JBQWdCO1FBQWhCLGdCQUFnQjtJQUNoQixtQkFBMEI7UUFBMUIsMEJBQTBCO0lBQzFCLHVCQUFvQjtRQUFwQixvQkFBb0I7Q0FDdkI7O0FBRUQ7SUFDSTtRQUNJLGNBQWM7S0FDakI7Q0FDSjs7QUFFRDtJQUNJLGNBQWM7SUFDZCx3QkFBb0I7UUFBcEIsb0JBQW9CO0lBQ3BCLG9CQUFnQjtRQUFoQixnQkFBZ0I7SUFDaEIsbUJBQTBCO1FBQTFCLDBCQUEwQjtDQUM3Qjs7QUFFRDtJQUNJO1FBQ0kscUJBQWM7UUFBZCxjQUFjO1FBQ2QsMkJBQXVCO1lBQXZCLHVCQUF1QjtRQUN2QixzQkFBd0I7WUFBeEIsd0JBQXdCO0tBQzNCO0NBQ0o7O0FBRUQ7SUFDSSxlQUFlO0NBQ2xCOztBQUVEO0lBQ0k7UUFDSSxlQUFlO0tBQ2xCO0NBQ0o7O0FBRUQ7O0lBRUksWUFBWTtJQUNaLDhCQUE4QjtDQUNqQzs7QUFFRDtJQUNJLHNCQUFzQjtJQUN0QixZQUFZO0lBQ1osaUJBQWlCO0lBQ2pCLGNBQWM7SUFDZCxpQkFBaUI7SUFDakIsZ0RBQWdEO0lBQ2hELDRCQUFvQjtJQUFwQix5QkFBb0I7SUFBcEIsb0JBQW9CO0NBQ3ZCOztBQUVEO0lBQ0k7UUFDSSxlQUFlO1FBQ2YsaUJBQWlCO1FBQ2pCLGlCQUFpQjtRQUNqQiw4Q0FBOEM7S0FDakQ7Q0FDSjs7QUFFRDs7SUFFSSw4QkFBOEI7Q0FDakM7O0FBRUQ7SUFDSTs7UUFFSSxpQkFBaUI7UUFDakIsNEJBQTRCO0tBQy9CO0NBQ0o7O0FBRUQ7SUFDSSwrQkFBK0I7Q0FDbEM7O0FBRUQ7SUFDSSxXQUFXO0lBQ1gsVUFBVTtDQUNiOztBQUVEO0lBQ0ksZUFBZTtDQUNsQjs7QUFFRDtJQUNJO1FBQ0ksWUFBWTtLQUNmO0NBQ0o7O0FBRUQ7O0lBRUksaUNBQWlDO0NBQ3BDOztBQUVEO0lBQ0ksY0FBYztJQUNkLG9CQUFvQjtJQUNwQixtQkFBbUI7SUFDbkIsa0JBQWtCO0NBQ3JCOztBQUVEO0lBQ0ksVUFBVTtJQUNWLGdCQUFnQjtDQUNuQjs7QUFFRDtJQUNJLFVBQVU7SUFDVixlQUFlO0NBQ2xCOztBQUVEO0lBQ0kscUJBQWM7SUFBZCxjQUFjO0NBQ2pCOztBQUVEO0lBQ0kscUJBQWM7SUFBZCxjQUFjO0NBQ2pCOztBQUVEO0lBQ0ksY0FBYztJQUNkLG9CQUFvQjtJQUNwQixtQkFBbUI7SUFDbkIsa0JBQWtCO0NBQ3JCOztBQUVEO0lBQ0ksVUFBVTtJQUNWLGdCQUFnQjtDQUNuQjs7QUFFRDtJQUNJLFVBQVU7SUFDVixlQUFlO0NBQ2xCOztBQUVEO0lBQ0kscUJBQWM7SUFBZCxjQUFjO0NBQ2pCOztBQUVEO0lBQ0kscUJBQWM7SUFBZCxjQUFjO0NBQ2pCOztBQUVEO0lBQ0ksMEJBQTBCO0lBQzFCLHFCQUFjO0lBQWQsY0FBYztJQUNkLHVCQUErQjtRQUEvQiwrQkFBK0I7SUFDL0IsZ0JBQWdCO0lBQ2hCLGFBQWE7SUFDYixjQUFjO0lBQ2QsbUJBQW1CO0lBQ25CLE9BQU87SUFDUCxRQUFRO0lBQ1IsU0FBUztJQUNULFlBQVk7SUFDWixZQUFZO0NBQ2Y7O0FBRUQ7SUFDSTtRQUNJLDhCQUE4QjtRQUM5QiwyQkFBdUI7WUFBdkIsdUJBQXVCO1FBQ3ZCLGdCQUFnQjtRQUNoQixpQkFBaUI7UUFDakIsY0FBYztLQUNqQjtDQUNKOztBQUVEO0lBQ0ksYUFBYTtDQUNoQjs7QUFFRDtJQUNJO1FBQ0ksY0FBYztLQUNqQjtDQUNKOztBQUVEO0lBQ0ksY0FBYztDQUNqQjs7QUFFRDtJQUNJLGFBQWE7Q0FDaEI7O0FBRUQ7SUFDSTtRQUNJLGVBQWU7UUFDZixvQkFBb0I7S0FDdkI7Q0FDSjs7QUFFRDtJQUNJLGNBQWM7SUFDZCxrQkFBa0I7Q0FDckI7O0FBRUQ7SUFDSSxZQUFZO0lBQ1osWUFBWTtJQUNaLGlCQUFpQjtJQUNqQixjQUFjO0NBQ2pCOztBQUVEO0lBQ0k7UUFDSSxlQUFlO1FBQ2Ysa0JBQWtCO0tBQ3JCO0NBQ0o7O0FBRUQ7SUFDSSxvQkFBb0I7Q0FDdkI7O0FBRUQ7SUFDSSxxQkFBYztJQUFkLGNBQWM7SUFDZCx3QkFBb0I7UUFBcEIsb0JBQW9CO0lBQ3BCLG9CQUFnQjtRQUFoQixnQkFBZ0I7SUFDaEIsbUJBQTBCO1FBQTFCLDBCQUEwQjtJQUMxQix1QkFBb0I7UUFBcEIsb0JBQW9CO0NBQ3ZCOztBQUVEO0lBQ0k7UUFDSSxjQUFjO0tBQ2pCO0NBQ0o7O0FBRUQ7SUFDSSxjQUFjO0lBQ2Qsd0JBQW9CO1FBQXBCLG9CQUFvQjtJQUNwQixvQkFBZ0I7UUFBaEIsZ0JBQWdCO0lBQ2hCLG1CQUEwQjtRQUExQiwwQkFBMEI7Q0FDN0I7O0FBRUQ7SUFDSTtRQUNJLHFCQUFjO1FBQWQsY0FBYztRQUNkLDJCQUF1QjtZQUF2Qix1QkFBdUI7UUFDdkIsc0JBQXdCO1lBQXhCLHdCQUF3QjtLQUMzQjtDQUNKOztBQUVEO0lBQ0ksc0JBQXNCO0lBQ3RCLFlBQVk7SUFDWixpQkFBaUI7SUFDakIsY0FBYztJQUNkLGlCQUFpQjtJQUNqQixnREFBZ0Q7SUFDaEQsNEJBQW9CO0lBQXBCLHlCQUFvQjtJQUFwQixvQkFBb0I7Q0FDdkI7O0FBRUQ7SUFDSTtRQUNJLGVBQWU7UUFDZixpQkFBaUI7UUFDakIsaUJBQWlCO1FBQ2pCLDhDQUE4QztLQUNqRDtDQUNKOztBQUVEOztJQUVJLDhCQUE4QjtDQUNqQzs7QUFFRDtJQUNJOztRQUVJLGlCQUFpQjtRQUNqQiw0QkFBNEI7S0FDL0I7Q0FDSjs7QUFFRDtJQUNJLCtCQUErQjtDQUNsQzs7QUFFRDtJQUNJLFdBQVc7SUFDWCxVQUFVO0NBQ2I7O0FBRUQ7SUFDSSxlQUFlO0NBQ2xCOztBQUVEO0lBQ0k7UUFDSSxlQUFlO0tBQ2xCO0NBQ0o7O0FBRUQ7O0lBRUksWUFBWTtJQUNaLDhCQUE4QjtDQUNqQzs7QUFFRDtJQUNJLGVBQWU7Q0FDbEI7O0FBRUQ7SUFDSTtRQUNJLGVBQWU7S0FDbEI7Q0FDSjs7QUFFRDs7SUFFSSxZQUFZO0lBQ1osOEJBQThCO0NBQ2pDOztBQUVEO0lBQ0ksY0FBYztJQUNkLG9CQUFvQjtJQUNwQixtQkFBbUI7SUFDbkIsa0JBQWtCO0NBQ3JCOztBQUVEO0lBQ0ksVUFBVTtJQUNWLGdCQUFnQjtDQUNuQjs7QUFFRDtJQUNJLFVBQVU7SUFDVixlQUFlO0NBQ2xCOztBQUVEO0lBQ0kscUJBQWM7SUFBZCxjQUFjO0NBQ2pCOztBQUVEO0lBQ0kscUJBQWM7SUFBZCxjQUFjO0NBQ2pCOztBQUVEO0lBQ0k7UUFDSSxvQkFBb0I7UUFDcEIsa0JBQWtCO0tBQ3JCO0NBQ0o7O0FBRUQ7SUFDSSx5QkFBeUI7Q0FDNUI7O0FBRUQ7SUFDSSwyQ0FBMkM7Q0FDOUM7O0FBRUQ7SUFDSSxnQkFBZ0I7SUFDaEIsV0FBVztJQUNYLDBCQUEwQjtDQUM3Qjs7QUFFRDtJQUNJO1FBQ0ksYUFBYTtLQUNoQjtDQUNKOztBQUVEO0lBQ0ksYUFBYTtDQUNoQjs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztJQUNkLDJCQUF1QjtRQUF2Qix1QkFBdUI7Q0FDMUI7O0FBRUQ7SUFDSSxxQkFBYztJQUFkLGNBQWM7SUFDZCx3QkFBb0I7UUFBcEIsb0JBQW9CO0NBQ3ZCOztBQUVEO0lBQ0ksdUJBQW9CO1FBQXBCLG9CQUFvQjtJQUNwQixzQkFBd0I7UUFBeEIsd0JBQXdCO0NBQzNCOztBQUVEO0lBQ0ksdUJBQW9CO1FBQXBCLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJLG9CQUFzQjtRQUF0QixzQkFBc0I7Q0FDekI7O0FBRUQ7SUFDSSxzQkFBd0I7UUFBeEIsd0JBQXdCO0NBQzNCOztBQUVEO0lBQ0ksdUJBQStCO1FBQS9CLCtCQUErQjtDQUNsQzs7QUFFRDtJQUNJLDRCQUE4QjtRQUE5Qiw4QkFBOEI7Q0FDakM7O0FBRUQ7SUFDSSwwQkFBOEI7UUFBOUIsOEJBQThCO0NBQ2pDOztBQUVEO0lBQ0ksWUFBWTtDQUNmOztBQUVEO0lBQ0ksVUFBVTtDQUNiOztBQUVEO0lBQ0ksaUJBQWlCO0NBQ3BCOztBQUVEO0lBQ0ksZ0JBQWdCO0lBQ2hCLGFBQWE7SUFDYixvQkFBb0I7SUFDcEIsWUFBWTtJQUNaLHFCQUFjO0lBQWQsY0FBYztJQUNkLHNCQUF3QjtRQUF4Qix3QkFBd0I7Q0FDM0I7O0FBRUQ7SUFDSSxjQUFjO0lBQ2QsbUJBQW1CO0lBQ25CLGtCQUFrQjtJQUNsQixnQkFBZ0I7Q0FDbkI7O0FBRUQ7SUFDSSwyQkFBMkI7SUFDM0Isa0JBQWtCO0NBQ3JCOztBQUVEO0lBQ0ksZ0JBQWdCO0NBQ25COztBQUVEO0lBQ0ksYUFBYTtDQUNoQjs7QUFFRDs7SUFFSSxpQ0FBaUM7Q0FDcEM7O0FBRUQ7SUFDSSxnQkFBZ0I7SUFDaEIscUJBQWM7SUFBZCxjQUFjO0lBQ2QsdUJBQW9CO1FBQXBCLG9CQUFvQjtJQUNwQixzQkFBd0I7UUFBeEIsd0JBQXdCO0lBQ3hCLHFCQUFhO1FBQWIsYUFBYTtDQUNoQjs7QUFFRDtJQUNJLDJCQUEyQjtJQUMzQixtQkFBbUI7Q0FDdEI7O0FBRUQ7SUFDSSxpQkFBaUI7SUFDakIscUJBQWM7SUFBZCxjQUFjO0lBQ2Qsc0JBQXdCO1FBQXhCLHdCQUF3QjtJQUN4Qix1QkFBb0I7UUFBcEIsb0JBQW9CO0NBQ3ZCOztBQUVEO0lBQ0k7UUFDSSwyQkFBdUI7WUFBdkIsdUJBQXVCO1FBQ3ZCLGtCQUFrQjtLQUNyQjtDQUNKOztBQUVEO0lBQ0kscUJBQWM7SUFBZCxjQUFjO0lBQ2QsMkJBQXVCO1FBQXZCLHVCQUF1QjtJQUN2Qix1QkFBb0I7UUFBcEIsb0JBQW9CO0lBQ3BCLHNCQUF3QjtRQUF4Qix3QkFBd0I7SUFDeEIsdUJBQWU7UUFBZixlQUFlO0NBQ2xCOztBQUVEO0lBQ0k7UUFDSSxpQkFBaUI7S0FDcEI7Q0FDSjs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztJQUNkLDJCQUF1QjtRQUF2Qix1QkFBdUI7SUFDdkIsdUJBQW9CO1FBQXBCLG9CQUFvQjtJQUNwQixzQkFBd0I7UUFBeEIsd0JBQXdCO0lBQ3hCLHFCQUFhO1FBQWIsYUFBYTtDQUNoQjs7QUFFRDtJQUNJO1FBQ0ksaUJBQWlCO0tBQ3BCO0NBQ0o7O0FBRUQ7SUFDSSxvQkFBb0I7SUFDcEIsWUFBWTtDQUNmOztBQUVEO0lBQ0k7UUFDSSwyQkFBdUI7WUFBdkIsdUJBQXVCO1FBQ3ZCLHVCQUFvQjtZQUFwQixvQkFBb0I7S0FDdkI7Q0FDSjs7QUFFRDtJQUNJLGFBQWE7SUFDYixhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLHVCQUF1QjtDQUMxQjs7QUFFRDtJQUNJLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsYUFBYTtJQUNiLGFBQWE7Q0FDaEI7O0FBRUQ7SUFDSSxxQkFBcUI7SUFDckIsaUJBQWlCO0lBQ2pCLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJO1FBQ0ksY0FBYztRQUNkLGFBQWE7S0FDaEI7Q0FDSjs7QUFFRDtJQUNJO1FBQ0ksZ0JBQWdCO1FBQ2hCLG1CQUFtQjtLQUN0QjtDQUNKOztBQUVEO0lBQ0ksaUJBQWlCO0lBQ2pCLGVBQWU7Q0FDbEI7O0FBRUQ7SUFDSSxpQkFBaUI7Q0FDcEI7O0FBRUQ7SUFDSSxpQkFBaUI7SUFDakIscUJBQWM7SUFBZCxjQUFjO0lBQ2Qsc0JBQXdCO1FBQXhCLHdCQUF3QjtJQUN4QixzQkFBd0I7UUFBeEIsd0JBQXdCO0lBQ3hCLHFCQUFxQjtDQUN4Qjs7QUFFRDtJQUNJO1FBQ0ksMkJBQXVCO1lBQXZCLHVCQUF1QjtRQUN2Qix1QkFBb0I7WUFBcEIsb0JBQW9CO1FBQ3BCLGtCQUFrQjtLQUNyQjtDQUNKOztBQUVEO0lBQ0kscUJBQWM7SUFBZCxjQUFjO0lBQ2QsMkJBQXVCO1FBQXZCLHVCQUF1QjtJQUN2Qix1QkFBb0I7UUFBcEIsb0JBQW9CO0lBQ3BCLHNCQUF3QjtRQUF4Qix3QkFBd0I7SUFDeEIsdUJBQWU7UUFBZixlQUFlO0lBQ2YsV0FBVztJQUNYLFlBQVk7Q0FDZjs7QUFFRDtJQUNJLGVBQWU7SUFDZixnQkFBZ0I7Q0FDbkI7O0FBRUQ7SUFDSTtRQUNJLGlCQUFpQjtLQUNwQjtDQUNKOztBQUVEO0lBQ0ksZUFBZTtDQUNsQjs7QUFFRDtJQUNJLDRDQUE0QztJQUM1QyxtQkFBbUI7SUFDbkIsWUFBWTtJQUNaLFlBQVk7SUFDWixhQUFhO0lBQ2IsV0FBVztJQUNYLFVBQVU7SUFDVix5QkFBeUI7SUFDekIsbUNBQW1DO0lBQ25DLDZCQUE2QjtDQUNoQzs7QUFFRDtJQUNJO1FBQ0ksY0FBYztLQUNqQjtDQUNKOztBQUVEO0lBQ0ksY0FBYztDQUNqQjs7QUFFRDtJQUNJO1FBQ0ksWUFBWTtLQUNmO0NBQ0o7O0FBRUQ7SUFDSSxtQkFBbUI7SUFDbkIsaUJBQWlCO0NBQ3BCOztBQUVEO0lBQ0ksV0FBVztJQUNYLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLGtCQUFrQjtDQUNyQjs7QUFFRDtJQUNJLGFBQWE7SUFDYixpQkFBaUI7Q0FDcEI7O0FBRUQ7SUFDSSxtQkFBbUI7SUFDbkIsWUFBWTtJQUNaLGlCQUFpQjtJQUNqQixtQkFBbUI7SUFDbkIsb0JBQW9CO0NBQ3ZCOztBQUVEO0lBQ0k7UUFDSSxXQUFXO0tBQ2Q7Q0FDSjs7QUFFRDtJQUNJLDZCQUE2QjtDQUNoQzs7QUFFRDtJQUNJLG1CQUFtQjtDQUN0Qjs7QUFFRDtJQUNJLGdCQUFnQjtDQUNuQjs7QUFFRDtJQUNJO1FBQ0ksZ0JBQWdCO0tBQ25CO0NBQ0o7O0FBRUQ7SUFDSTtRQUNJLG9CQUFvQjtLQUN2QjtDQUNKOztBQUVEO0lBQ0ksbUJBQW1CO0lBQ25CLFdBQVc7Q0FDZDs7QUFFRDtJQUNJLHdEQUF3RDtJQUN4RCwyQkFBMkI7SUFDM0IsNkJBQTZCO0NBQ2hDOztBQUVEO0lBQ0k7UUFDSSwyQkFBMkI7UUFDM0IsMEJBQTBCO0tBQzdCO0NBQ0o7O0FBRUQ7SUFDSSxtQkFBbUI7Q0FDdEI7O0FBRUQ7SUFDSSx1REFBdUQ7SUFDdkQsMkJBQTJCO0lBQzNCLDZCQUE2QjtJQUM3QixhQUFhO0lBQ2IsWUFBWTtJQUNaLFVBQVU7SUFDVixXQUFXO0lBQ1gsMENBQTBDO0lBQzFDLGFBQWE7Q0FDaEI7O0FBRUQ7SUFDSSxxRkFBcUY7SUFDckYsYUFBYTtJQUNiLFlBQVk7SUFDWixVQUFVO0lBQ1YsV0FBVztJQUNYLDBDQUEwQztJQUMxQyxXQUFXO0NBQ2Q7O0FBRUQ7SUFDSSxrQkFBa0I7SUFDbEIsZ0JBQWdCO0NBQ25COztBQUVEO0lBQ0k7UUFDSSxlQUFlO1FBQ2YsZ0JBQWdCO0tBQ25CO0NBQ0o7O0FBRUQ7SUFDSSxXQUFXO0NBQ2Q7O0FBRUQ7SUFDSSxrQkFBa0I7SUFDbEIscUJBQXFCO0NBQ3hCOztBQUVEO0lBQ0k7UUFDSSxrQkFBa0I7UUFDbEIscUJBQXFCO1FBQ3JCLG1DQUErQjtZQUEvQiwrQkFBK0I7S0FDbEM7Q0FDSjs7QUFFRDtJQUNJLG9EQUFvRDtJQUNwRCwyQkFBMkI7SUFDM0IsNkJBQTZCO0lBQzdCLGFBQWE7Q0FDaEI7O0FBRUQ7SUFDSSxXQUFXO0lBQ1gsMEZBQTBGO0NBQzdGOztBQUVEO0lBQ0ksWUFBWTtJQUNaLFlBQVk7SUFDWixtQkFBbUI7SUFDbkIsYUFBYTtJQUNiLFlBQVk7SUFDWixVQUFVO0lBQ1YsV0FBVztJQUNYLGFBQWE7Q0FDaEI7O0FBRUQ7SUFDSSxZQUFZO0lBQ1osMEZBQTBGO0lBQzFGLFlBQVk7SUFDWixtQkFBbUI7SUFDbkIsYUFBYTtJQUNiLFlBQVk7SUFDWixVQUFVO0lBQ1YsV0FBVztJQUNYLFdBQVc7Q0FDZDs7QUFFRDtJQUNJO1FBQ0ksdUdBQXVHO0tBQzFHO0NBQ0o7O0FBRUQ7SUFDSSxvQkFBb0I7SUFDcEIsWUFBWTtJQUNaLG1CQUFtQjtDQUN0Qjs7QUFFRDtJQUNJLGNBQWM7Q0FDakI7O0FBRUQ7O0lBRUksYUFBYTtDQUNoQjs7QUFFRDtJQUNJLGdCQUFnQjtDQUNuQjs7QUFFRDtJQUNJLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztJQUNkLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJO1FBQ0ksMkJBQXVCO1lBQXZCLHVCQUF1QjtLQUMxQjtDQUNKOztBQUVEO0lBQ0ksb0JBQW9CO0lBQ3BCLGlCQUFpQjtJQUNqQixXQUFXO0lBQ1gsdUJBQXVCO0lBQ3ZCLG1CQUFtQjtJQUNuQixxQkFBYztJQUFkLGNBQWM7SUFDZCxzQkFBd0I7UUFBeEIsd0JBQXdCO0lBQ3hCLHVCQUFvQjtRQUFwQixvQkFBb0I7SUFDcEIsc0VBQXNFO0lBQ3RFLGNBQWM7SUFDZCxnQ0FBZ0M7Q0FDbkM7O0FBRUQ7SUFDSTtRQUNJLFlBQVk7UUFDWixjQUFjO0tBQ2pCO0NBQ0o7O0FBRUQ7SUFDSSxvQkFBb0I7SUFDcEIsZ0NBQWdDO0NBQ25DOztBQUVEO0lBQ0ksbUJBQW1CO0lBQ25CLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLGFBQWE7SUFDYixrQkFBa0I7Q0FDckI7O0FBRUQ7SUFDSSxrQkFBa0I7SUFDbEIsYUFBYTtDQUNoQjs7QUFFRDtJQUNJO1FBQ0kseUJBQXlCO1FBQ3pCLG1CQUFtQjtRQUNuQixrQkFBa0I7S0FDckI7Q0FDSjs7QUFFRDtJQUNJLGtCQUFrQjtJQUNsQixxQkFBYztJQUFkLGNBQWM7SUFDZCwyQkFBdUI7UUFBdkIsdUJBQXVCO0lBQ3ZCLCtCQUE0QjtRQUE1Qiw0QkFBNEI7SUFDNUIsa0JBQWtCO0NBQ3JCOztBQUVEO0lBQ0k7UUFDSSxxQkFBYztRQUFkLGNBQWM7UUFDZCxtQ0FBK0I7WUFBL0IsK0JBQStCO1FBQy9CLGlCQUFpQjtLQUNwQjtDQUNKOztBQUVEO0lBQ0k7UUFDSSx3QkFBb0I7WUFBcEIsb0JBQW9CO1FBQ3BCLFlBQVk7S0FDZjtDQUNKOztBQUVEO0lBQ0ksV0FBVztJQUNYLHVCQUF1QjtJQUN2QixjQUFjO0lBQ2QsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQixnQkFBZ0I7SUFDaEIsZ0NBQWdDO0lBQ2hDLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJO1FBQ0ksd0JBQXdCO1FBQ3hCLHlCQUF5QjtRQUN6QixXQUFXO0tBQ2Q7Q0FDSjs7QUFFRDtJQUNJLHFEQUFxRDtJQUNyRCw2QkFBNkI7SUFDN0IsMkJBQTJCO0lBQzNCLHVCQUF1QjtJQUN2QixvQkFBb0I7SUFDcEIsY0FBYztJQUNkLGlCQUFpQjtJQUNqQixnQkFBZ0I7SUFDaEIsb0JBQW9CO0lBQ3BCLGtCQUFrQjtJQUNsQixhQUFhO0lBQ2Isa0JBQWtCO0NBQ3JCOztBQUVEO0lBQ0k7UUFDSSxrQkFBa0I7UUFDbEIsY0FBYztLQUNqQjtDQUNKOztBQUVEO0lBQ0k7UUFDSSxrQkFBa0I7UUFDbEIsMEJBQTBCO1FBQzFCLGdCQUFnQjtRQUNoQixpQkFBaUI7UUFDakIsb0JBQW9CO1FBQ3BCLGFBQWE7S0FDaEI7Q0FDSjs7QUFFRDtJQUNJO1FBQ0ksaUJBQWlCO0tBQ3BCO0NBQ0o7O0FBRUQ7SUFDSSxrQkFBa0I7SUFDbEIsb0JBQW9CO0NBQ3ZCOztBQUVEO0lBQ0ksZUFBZTtJQUNmLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLG1CQUFtQjtDQUN0Qjs7QUFFRDtJQUNJO1FBQ0ksa0JBQWtCO1FBQ2xCLG9CQUFvQjtLQUN2QjtDQUNKOztBQUVEO0lBQ0ksWUFBWTtJQUNaLDhCQUE4QjtJQUM5QixhQUFhO0lBQ2IsbUJBQW1CO0NBQ3RCOztBQUVEO0lBQ0ksWUFBWTtJQUNaLFlBQVk7Q0FDZjs7QUFFRDtJQUNJO1FBQ0ksV0FBVztLQUNkO0NBQ0o7O0FBRUQ7SUFDSTtRQUNJLFdBQVc7S0FDZDtDQUNKOztBQUVEO0lBQ0ksYUFBYTtJQUNiLDJCQUFtQjtJQUFuQix3QkFBbUI7SUFBbkIsbUJBQW1CO0NBQ3RCOztBQUVEO0lBQ0ksbUJBQW1CO0NBQ3RCOztBQUVEO0lBQ0ksbUJBQW1CO0lBQ25CLFlBQVk7SUFDWixhQUFhO0lBQ2IsT0FBTztJQUNQLFFBQVE7SUFDUixxQkFBcUI7Q0FDeEI7O0FBRUQ7Ozs7Ozs7Ozs7SUFVSSxtQkFBbUI7SUFDbkIsV0FBVztJQUNYLFlBQVk7SUFDWix3QkFBd0I7Q0FDM0I7O0FBRUQ7SUFDSSxZQUFZO0lBQ1osV0FBVztDQUNkOztBQUVEO0lBQ0ksWUFBWTtJQUNaLFdBQVc7Q0FDZDs7QUFFRDtJQUNJLFlBQVk7SUFDWixhQUFhO0NBQ2hCOztBQUVEOzs7SUFHSSxTQUFTO0lBQ1QsVUFBVTtDQUNiOztBQUVEOzs7SUFHSSxZQUFZO0lBQ1osVUFBVTtDQUNiOztBQUVEO0lBQ0ksWUFBWTtJQUNaLFNBQVM7Q0FDWjs7QUFFRDtJQUNJLG1CQUFtQjtJQUNuQixZQUFZO0lBQ1osYUFBYTtJQUNiLE9BQU87SUFDUCxRQUFRO0NBQ1g7O0FBRUQ7SUFDSSxvQkFBb0I7SUFDcEIsaUJBQWlCO0lBQ2pCLFlBQVk7SUFDWixjQUFjO0lBQ2QsbUJBQW1CO0lBQ25CLGtCQUFrQjtJQUNsQiwrQkFBK0I7SUFDL0IscUJBQXFCO0lBQ3JCLHVCQUF1QjtDQUMxQjs7QUFFRDs7SUFFSSxrQkFBa0I7Q0FDckI7O0FBRUQ7SUFDSSxjQUFjO0lBQ2QsZUFBZTtJQUNmLG1CQUFtQjtJQUNuQixVQUFVO0lBQ1YsVUFBVTtJQUNWLFdBQVc7Q0FDZDs7QUFFRDtJQUNJO1FBQ0ksUUFBUTtRQUNSLFVBQVU7UUFDVixhQUFhO0tBQ2hCO0NBQ0o7O0FBRUQ7SUFDSSxZQUFZO0lBQ1osYUFBYTtJQUNiLFdBQVc7SUFDWCxtQkFBbUI7Q0FDdEI7O0FBRUQ7SUFDSSxXQUFXO0NBQ2Q7O0FBRUQ7SUFDSSxtQkFBbUI7SUFDbkIsU0FBUztJQUNULFVBQVU7SUFDVixXQUFXO0lBQ1gsWUFBWTtDQUNmOztBQUVEO0lBQ0k7UUFDSSxtQkFBbUI7UUFDbkIsU0FBUztRQUNULFFBQVE7UUFDUixjQUFjO0tBQ2pCO0NBQ0o7O0FBRUQ7SUFDSSxnQkFBZ0I7Q0FDbkI7O0FBRUQ7SUFDSSxnQkFBZ0I7Q0FDbkI7O0FBRUQ7SUFDSSxpQkFBaUI7SUFDakIsZ0JBQWdCO0lBQ2hCLG9CQUFvQjtJQUNwQixxQkFBcUI7Q0FDeEI7O0FBRUQ7SUFDSSxlQUFlO0NBQ2xCOztBQUVEO0lBQ0k7UUFDSSxZQUFZO1FBQ1osaUJBQWlCO0tBQ3BCO0NBQ0o7O0FBRUQ7SUFDSSxnQkFBZ0I7Q0FDbkI7O0FBRUQ7O0lBRUksV0FBVztJQUNYLHNEQUFzRDtJQUN0RCxvQkFBb0I7Q0FDdkI7O0FBRUQ7SUFDSSxxQkFBYztJQUFkLGNBQWM7SUFDZCxzQkFBd0I7UUFBeEIsd0JBQXdCO0lBQ3hCLHVCQUFvQjtRQUFwQixvQkFBb0I7SUFDcEIsd0JBQW9CO1FBQXBCLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJO1FBQ0ksMkJBQXVCO1lBQXZCLHVCQUF1QjtLQUMxQjtDQUNKOztBQUVEO0lBQ0ksaUJBQWlCO0lBQ2pCLGFBQWE7Q0FDaEI7O0FBRUQ7SUFDSSxpQkFBaUI7Q0FDcEI7O0FBRUQ7SUFDSSxZQUFZO0lBQ1osWUFBWTtJQUNaLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsV0FBVztJQUNYLDZCQUE2QjtJQUM3QiwyQkFBMkI7SUFDM0IsYUFBYTtJQUNiLHlCQUF5QjtJQUN6QixPQUFPO0NBQ1Y7O0FBRUQ7SUFDSSxjQUFjO0NBQ2pCOztBQUVEO0lBQ0ksaUJBQWlCO0NBQ3BCOztBQUVEO0lBQ0ksaUJBQWlCO0lBQ2pCLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJLFlBQVk7SUFDWixrQkFBa0I7SUFDbEIscUJBQXFCO0lBQ3JCLDhDQUE4QztDQUNqRDs7QUFFRDtJQUNJLGlCQUFpQjtJQUNqQixxQkFBYztJQUFkLGNBQWM7SUFDZCxzQkFBd0I7UUFBeEIsd0JBQXdCO0lBQ3hCLHVCQUFvQjtRQUFwQixvQkFBb0I7SUFDcEIscUJBQXFCO0NBQ3hCOztBQUVEO0lBQ0k7UUFDSSwyQkFBdUI7WUFBdkIsdUJBQXVCO1FBQ3ZCLGtCQUFrQjtLQUNyQjtDQUNKOztBQUVEO0lBQ0kscUJBQWM7SUFBZCxjQUFjO0lBQ2QsMkJBQXVCO1FBQXZCLHVCQUF1QjtJQUN2Qix1QkFBb0I7UUFBcEIsb0JBQW9CO0lBQ3BCLHNCQUF3QjtRQUF4Qix3QkFBd0I7SUFDeEIsdUJBQWU7UUFBZixlQUFlO0lBQ2YsYUFBYTtJQUNiLGNBQWM7Q0FDakI7O0FBRUQ7SUFDSSxlQUFlO0lBQ2YsZ0JBQWdCO0NBQ25COztBQUVEO0lBQ0k7UUFDSSxpQkFBaUI7S0FDcEI7Q0FDSjs7QUFFRDtJQUNJLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLG9CQUFvQjtJQUNwQixvQkFBb0I7SUFDcEIsd0JBQXdCO0NBQzNCOztBQUVEO0lBQ0ksb0JBQW9CO0NBQ3ZCOztBQUVEO0lBQ0ksZ0JBQWdCO0NBQ25COztBQUVEO0lBQ0ksc0JBQXNCO0NBQ3pCOztBQUVEO0lBQ0ksY0FBYztDQUNqQjs7QUFFRDtJQUNJLFVBQVU7SUFDViwrREFBK0Q7SUFDL0QsNkJBQTZCO0lBQzdCLDRCQUE0QjtDQUMvQjs7QUFFRDtJQUNJO1FBQ0ksaUJBQWlCO0tBQ3BCO0NBQ0o7O0FBRUQ7SUFDSSxtQkFBbUI7Q0FDdEI7O0FBRUQ7SUFDSTtRQUNJLG9CQUFvQjtRQUNwQixpQkFBaUI7S0FDcEI7Q0FDSjs7QUFFRDtJQUNJO1FBQ0ksbUNBQStCO1lBQS9CLCtCQUErQjtLQUNsQztDQUNKOztBQUVEO0lBQ0ksYUFBYTtJQUNiLFVBQVU7SUFDVixtQkFBbUI7SUFDbkIsV0FBVztDQUNkOztBQUVEO0lBQ0k7UUFDSSxXQUFXO1FBQ1gsYUFBYTtRQUNiLFlBQVk7S0FDZjtDQUNKOztBQUVEO0lBQ0ksb0JBQW9CO0lBQ3BCLGFBQWE7Q0FDaEI7O0FBRUQ7SUFDSTtRQUNJLFNBQVM7S0FDWjtJQUNEO1FBQ0ksU0FBUztLQUNaO0lBQ0Q7UUFDSSxXQUFXO0tBQ2Q7SUFDRDtRQUNJLFdBQVc7S0FDZDtJQUNEO1FBQ0ksWUFBWTtLQUNmO0lBQ0Q7UUFDSSxZQUFZO0tBQ2Y7SUFDRDtRQUNJLFlBQVk7S0FDZjtJQUNEO1FBQ0ksWUFBWTtLQUNmO0lBQ0Q7UUFDSSxTQUFTO0tBQ1o7Q0FDSjs7QUFFRDtJQUNJO1FBQ0ksU0FBUztLQUNaO0lBQ0Q7UUFDSSxZQUFZO0tBQ2Y7Q0FDSjs7QUFFRDtJQUNJLG9CQUFvQjtJQUNwQixZQUFZO0NBQ2Y7O0FBRUQ7SUFDSSxtQkFBbUI7Q0FDdEI7O0FBRUQ7SUFDSSxjQUFjO0NBQ2pCOztBQUVEO0lBQ0k7UUFDSSxjQUFjO0tBQ2pCO0NBQ0o7O0FBRUQ7SUFDSSxxQkFBYztJQUFkLGNBQWM7SUFDZCxZQUFZO0lBQ1osY0FBYztJQUNkLG1CQUFtQjtJQUNuQixpQkFBaUI7SUFDakIsaUJBQWlCO0NBQ3BCOztBQUVEO0lBQ0k7UUFDSSxtQkFBbUI7S0FDdEI7Q0FDSjs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztJQUNkLFlBQVk7SUFDWixvQkFBZ0I7UUFBaEIsZ0JBQWdCO0lBQ2hCLHFCQUE0QjtRQUE1Qiw0QkFBNEI7SUFDNUIseUJBQXNCO1FBQXRCLHNCQUFzQjtJQUN0QixtQkFBbUI7SUFDbkIsc0RBQXNEO0NBQ3pEOztBQUVEO0lBQ0k7UUFDSSxZQUFZO1FBQ1osZ0JBQWdCO0tBQ25CO0NBQ0o7O0FBRUQ7SUFDSSxZQUFZO0lBQ1osY0FBYztJQUNkLHVCQUF1QjtJQUN2QixtQkFBbUI7SUFDbkIscUJBQWM7SUFBZCxjQUFjO0lBQ2QsMkJBQXVCO1FBQXZCLHVCQUF1QjtJQUN2QixzQkFBd0I7UUFBeEIsd0JBQXdCO0lBQ3hCLHVCQUFvQjtRQUFwQixvQkFBb0I7Q0FDdkI7O0FBRUQ7SUFDSTtRQUNJLFlBQVk7S0FDZjtDQUNKOztBQUVEO0lBQ0ksaUJBQWlCO0lBQ2pCLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLGNBQWM7Q0FDakI7O0FBRUQ7SUFDSSxZQUFZO0lBQ1osYUFBYTtJQUNiLG9CQUFvQjtJQUNwQixvQkFBb0I7SUFDcEIsbUJBQW1CO0lBQ25CLHFCQUFjO0lBQWQsY0FBYztJQUNkLHNCQUF3QjtRQUF4Qix3QkFBd0I7SUFDeEIsdUJBQW9CO1FBQXBCLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJLFlBQVk7SUFDWixZQUFZO0lBQ1osbUJBQW1CO0NBQ3RCOztBQUVEO0lBQ0k7UUFDSSxXQUFXO0tBQ2Q7Q0FDSjs7QUFFRDtJQUNJO1FBQ0ksV0FBVztLQUNkO0NBQ0o7O0FBRUQ7SUFDSTtRQUNJLHFCQUFxQjtLQUN4QjtDQUNKOztBQUVEO0lBQ0ksa0JBQWtCO0lBQ2xCLGFBQWE7SUFDYixvQkFBb0I7SUFDcEIsV0FBVztJQUNYLHNEQUFzRDtJQUN0RCxvQkFBb0I7Q0FDdkI7O0FBRUQ7O0lBRUksV0FBVztJQUNYLHVEQUF1RDtJQUN2RCxvQkFBb0I7Q0FDdkI7O0FBRUQ7O0lBRUksV0FBVztJQUNYLHNEQUFzRDtJQUN0RCxvQkFBb0I7Q0FDdkI7O0FBRUQ7SUFDSSx1QkFBdUI7SUFDdkIsc0JBQXNCO0lBQ3RCLGtCQUFrQjtJQUNsQix1REFBdUQ7SUFDdkQsb0JBQW9CO0NBQ3ZCOztBQUVEO0lBQ0ksa0VBQWtFO0lBQ2xFLFlBQVk7Q0FDZjs7QUFFRDtJQUNJLFlBQVk7SUFDWixZQUFZO0lBQ1osYUFBYTtJQUNiLG1CQUFtQjtJQUNuQixXQUFXO0lBQ1gsNkJBQTZCO0lBQzdCLDJCQUEyQjtJQUMzQixhQUFhO0lBQ2IseUJBQXlCO0lBQ3pCLE9BQU87Q0FDVjs7QUFFRDtJQUNJLGNBQWM7Q0FDakI7O0FBRUQ7SUFDSSxZQUFZO0NBQ2Y7O0FBRUQ7SUFDSTtRQUNJLFdBQVc7UUFDWCw0QkFBNEI7S0FDL0I7SUFDRDtRQUNJLFdBQVc7UUFDWCw0QkFBNEI7S0FDL0I7SUFDRDtRQUNJLFdBQVc7UUFDWCx5QkFBeUI7S0FDNUI7SUFDRDtRQUNJLFdBQVc7UUFDWCx5QkFBeUI7S0FDNUI7SUFDRDtRQUNJLFdBQVc7UUFDWCx5QkFBeUI7S0FDNUI7SUFDRDtRQUNJLFdBQVc7UUFDWCw2QkFBNkI7S0FDaEM7Q0FDSjs7QUFFRDtJQUNJO1FBQ0ksV0FBVztRQUNYLDRCQUE0QjtLQUMvQjtJQUNEO1FBQ0ksV0FBVztRQUNYLDRCQUE0QjtLQUMvQjtJQUNEO1FBQ0ksV0FBVztRQUNYLHlCQUF5QjtLQUM1QjtJQUNEO1FBQ0ksV0FBVztRQUNYLHlCQUF5QjtLQUM1QjtJQUNEO1FBQ0ksV0FBVztRQUNYLHlCQUF5QjtLQUM1QjtDQUNKOztBQUVEO0lBQ0k7UUFDSSxXQUFXO1FBQ1gsNEJBQTRCO0tBQy9CO0lBQ0Q7UUFDSSxXQUFXO1FBQ1gsNEJBQTRCO0tBQy9CO0lBQ0Q7UUFDSSxXQUFXO1FBQ1gseUJBQXlCO0tBQzVCO0NBQ0o7O0FBRUQ7SUFDSTtRQUNJLDBCQUEwQjtLQUM3QjtDQUNKOztBQUVEO0lBQ0k7UUFDSSwwQkFBMEI7S0FDN0I7Q0FDSjs7QUFFRDtJQUNJLG1CQUFtQjtJQUNuQixnQkFBZ0I7SUFDaEIsaUJBQWlCO0NBQ3BCOztBQUVEO0lBQ0ksY0FBYztDQUNqQjs7QUFFRDtJQUNJLGtCQUFrQjtDQUNyQjs7QUFFRDtJQUNJLG9CQUFvQjtJQUNwQixZQUFZO0NBQ2Y7O0FBRUQ7SUFDSSxjQUFjO0lBQ2Qsa0JBQWtCO0lBQ2xCLGVBQWU7Q0FDbEI7O0FBRUQ7SUFDSTtRQUNJLGFBQWE7S0FDaEI7Q0FDSjs7QUFFRDtJQUNJLG1CQUFtQjtDQUN0Qjs7QUFFRDtJQUNJO1FBQ0ksaUJBQWlCO0tBQ3BCO0NBQ0o7O0FBRUQ7SUFDSSxXQUFXO0NBQ2Q7O0FBRUQ7SUFDSTs7UUFFSSxjQUFjO0tBQ2pCO0NBQ0o7O0FBRUQ7SUFDSTtRQUNJLG1CQUFtQjtRQUNuQixtQkFBbUI7UUFDbkIsV0FBVztRQUNYLFVBQVU7UUFDVix3QkFBd0I7S0FDM0I7Q0FDSjs7QUFFRDtJQUNJO1FBQ0ksdUJBQXVCO1FBQ3ZCLFVBQVU7S0FDYjtDQUNKOztBQUVEO0lBQ0ksbUJBQW1CO0lBQ25CLE9BQU87SUFDUCxTQUFTO0lBQ1QsYUFBYTtDQUNoQjs7QUFFRDtJQUNJO1FBQ0ksUUFBUTtRQUNSLFlBQVk7UUFDWixtQkFBbUI7S0FDdEI7Q0FDSjs7QUFFRDtJQUNJO1FBQ0ksV0FBVztRQUNYLFlBQVk7S0FDZjtDQUNKOztBQUVEO0lBQ0ksWUFBWTtDQUNmOztBQUVEO0lBQ0k7UUFDSSxXQUFXO0tBQ2Q7Q0FDSjs7QUFFRDtJQUNJLHlDQUF5QztDQUM1Qzs7QUFFRDtJQUNJLHlDQUF5QztDQUM1Qzs7QUFFRDtJQUNJLHlDQUF5QztDQUM1Qzs7QUFFRDtJQUNJLHdCQUF3QjtJQUN4Qix3QkFBd0I7SUFDeEIseUJBQXlCO0lBQ3pCLHVDQUF1QztDQUMxQzs7QUFFRDtJQUNJLHFEQUFxRDtJQUNyRCwyQkFBMkI7SUFDM0IsNkJBQTZCO0lBQzdCLDhCQUE4QjtDQUNqQzs7QUFFRDtJQUNJO1FBQ0ksMEJBQTBCO1FBQzFCLDZCQUE2QjtRQUM3QiwrQkFBK0I7S0FDbEM7Q0FDSjs7QUFFRDtJQUNJO1FBQ0ksMEJBQTBCO1FBQzFCLDZCQUE2QjtRQUM3QiwrQkFBK0I7S0FDbEM7Q0FDSjs7QUFFRDtJQUNJLGtCQUFrQjtDQUNyQjs7QUFFRDtJQUNJLG9CQUFvQjtJQUNwQixZQUFZO0NBQ2Y7O0FBRUQ7SUFDSSxlQUFlO0lBQ2Ysb0JBQW9CO0NBQ3ZCOztBQUVEO0lBQ0k7UUFDSSxtQkFBbUI7S0FDdEI7Q0FDSjs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztDQUNqQjs7QUFFRDtJQUNJO1FBQ0ksMkJBQXVCO1lBQXZCLHVCQUF1QjtLQUMxQjtDQUNKOztBQUVEO0lBQ0kscUJBQWM7SUFBZCxjQUFjO0lBQ2QsMkJBQXVCO1FBQXZCLHVCQUF1QjtJQUN2QixxQkFBYTtRQUFiLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsd0NBQXdDO0NBQzNDOztBQUVEO0lBQ0k7UUFDSSxpQkFBaUI7S0FDcEI7Q0FDSjs7QUFFRDtJQUNJLG9CQUFvQjtJQUNwQixxQkFBcUI7SUFDckIsOEJBQThCO0lBQzlCLGlCQUFpQjtJQUNqQixvQkFBb0I7SUFDcEIsZ0JBQWdCO0NBQ25COztBQUVEO0lBQ0k7UUFDSSxjQUFjO1FBQ2Qsb0JBQW9CO0tBQ3ZCO0NBQ0o7O0FBRUQ7SUFDSSxnQkFBZ0I7SUFDaEIsaUJBQWlCO0NBQ3BCOztBQUVEO0lBQ0ksa0JBQWtCO0lBQ2xCLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJLGtCQUFrQjtJQUNsQixtQkFBbUI7Q0FDdEI7O0FBRUQ7SUFDSSxtQkFBbUI7Q0FDdEI7O0FBRUQ7SUFDSSxtQkFBbUI7Q0FDdEI7O0FBRUQ7SUFDSSxpQkFBaUI7Q0FDcEI7O0FBRUQ7SUFDSSxxQkFBYztJQUFkLGNBQWM7SUFDZCwyQkFBdUI7UUFBdkIsdUJBQXVCO0NBQzFCOztBQUVEO0lBQ0ksbUJBQWU7UUFBZixlQUFlO0NBQ2xCOztBQUVEO0lBQ0k7UUFDSSxpQkFBaUI7S0FDcEI7Q0FDSjs7QUFFRDtJQUNJLG1CQUFtQjtJQUNuQixrQkFBa0I7Q0FDckI7O0FBRUQ7SUFDSSxtQkFBbUI7SUFDbkIsYUFBYTtJQUNiLGlCQUFpQjtJQUNqQixjQUFjO0lBQ2QsYUFBYTtDQUNoQjs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztJQUNkLHVCQUF1QjtJQUN2QixVQUFVO0lBQ1YsbUJBQW1CO0NBQ3RCOztBQUVEO0lBQ0ksWUFBWTtJQUNaLGFBQWE7SUFDYixjQUFjO0lBQ2QsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQixZQUFZO0lBQ1osbUJBQW1CO0lBQ25CLHdCQUF3QjtJQUN4Qix1QkFBdUI7Q0FDMUI7O0FBRUQ7SUFDSSxhQUFhO0lBQ2IsV0FBVztJQUNYLCtCQUErQjtDQUNsQzs7QUFFRDtJQUNJLG1CQUFtQjtDQUN0Qjs7QUFFRDtJQUNJLHVCQUFvQjtRQUFwQixvQkFBb0I7Q0FDdkI7O0FBRUQ7SUFDSSxXQUFXO0lBQ1gsbUJBQWU7UUFBZixlQUFlO0lBQ2YsaUJBQWlCO0NBQ3BCOztBQUVEO0lBQ0k7UUFDSSxZQUFZO0tBQ2Y7Q0FDSjs7QUFFRDtJQUNJLHNCQUFzQjtJQUN0QixZQUFZO0lBQ1osbUJBQW1CO0lBQ25CLFFBQVE7Q0FDWDs7QUFFRDtJQUNJLGNBQWM7SUFDZCxtQkFBbUI7SUFDbkIsYUFBYTtJQUNiLHNCQUFzQjtJQUN0QixVQUFVO0lBQ1YsV0FBVztJQUNYLG1CQUFtQjtDQUN0Qjs7QUFFRDtJQUNJLG9CQUFvQjtJQUNwQixjQUFjO0lBQ2QsWUFBWTtJQUNaLG9CQUFvQjtJQUNwQixtQkFBZTtRQUFmLGVBQWU7SUFDZixtQkFBbUI7SUFDbkIsK0JBQStCO0NBQ2xDOztBQUVEO0lBQ0k7UUFDSSxrQkFBa0I7S0FDckI7Q0FDSjs7QUFFRDtJQUNJLGFBQWE7SUFDYixpQkFBaUI7Q0FDcEI7O0FBRUQ7SUFDSSxtQkFBbUI7SUFDbkIsT0FBTztDQUNWOztBQUVEO0lBQ0ksWUFBWTtJQUNaLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLG1CQUFtQjtJQUNuQixRQUFRO0lBQ1IscUJBQWM7SUFBZCxjQUFjO0lBQ2QsWUFBWTtJQUNaLHFCQUE0QjtRQUE1Qiw0QkFBNEI7Q0FDL0I7O0FBRUQ7SUFDSSxtQkFBbUI7SUFDbkIsb0JBQW9CO0lBQ3BCLGFBQWE7SUFDYixZQUFZO0lBQ1osb0JBQW9CO0lBQ3BCLGFBQWE7SUFDYixXQUFXO0lBQ1gscUJBQWM7SUFBZCxjQUFjO0lBQ2Qsc0JBQXdCO1FBQXhCLHdCQUF3QjtJQUN4Qix1QkFBb0I7UUFBcEIsb0JBQW9CO0lBQ3BCLFlBQVk7SUFDWixnQkFBZ0I7Q0FDbkI7O0FBRUQ7SUFDSSxvQkFBb0I7SUFDcEIsWUFBWTtDQUNmOztBQUVEO0lBQ0ksWUFBWTtDQUNmOztBQUVEO0lBQ0kscUJBQWM7SUFBZCxjQUFjO0lBQ2QsMkJBQXVCO1FBQXZCLHVCQUF1QjtJQUN2QixzQkFBd0I7UUFBeEIsd0JBQXdCO0lBQ3hCLHVCQUFvQjtRQUFwQixvQkFBb0I7Q0FDdkI7O0FBRUQ7SUFDSSxpQkFBaUI7Q0FDcEI7O0FBRUQ7SUFDSSxxQkFBYztJQUFkLGNBQWM7SUFDZCxvQkFBZ0I7UUFBaEIsZ0JBQWdCO0lBQ2hCLHVCQUFvQjtRQUFwQixvQkFBb0I7Q0FDdkI7O0FBRUQ7SUFDSTtRQUNJLDJCQUF1QjtZQUF2Qix1QkFBdUI7S0FDMUI7Q0FDSjs7QUFFRDtJQUNJLGdCQUFnQjtDQUNuQjs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztJQUNkLHNCQUFzQjtDQUN6Qjs7QUFFRDtJQUNJLG1CQUFtQjtJQUNuQiw0QkFBbUI7UUFBbkIsMkJBQW1CO1FBQW5CLG1CQUFtQjtJQUNuQixvQkFBb0I7SUFDcEIsaUJBQWlCO0NBQ3BCOztBQUVEO0lBQ0k7UUFDSSwyQkFBdUI7WUFBdkIsdUJBQXVCO1FBQ3ZCLHVCQUFvQjtZQUFwQixvQkFBb0I7S0FDdkI7Q0FDSjs7QUFFRDtJQUNJLGlDQUFpQztJQUNqQyxtQkFBbUI7SUFDbkIsa0JBQWtCO0lBQ2xCLGVBQWU7SUFDZixpQ0FBaUM7SUFDakMsb0JBQW9CO0lBQ3BCLGFBQWE7SUFDYixxQkFBYztJQUFkLGNBQWM7SUFDZCwyQkFBdUI7UUFBdkIsdUJBQXVCO0lBQ3ZCLHVCQUFvQjtRQUFwQixvQkFBb0I7SUFDcEIsY0FBYztJQUNkLHVCQUErQjtRQUEvQiwrQkFBK0I7Q0FDbEM7O0FBRUQ7SUFDSSxtQkFBbUI7Q0FDdEI7O0FBRUQ7SUFDSSxvQkFBb0I7Q0FDdkI7O0FBRUQ7SUFDSSxtQkFBbUI7Q0FDdEI7O0FBRUQ7SUFDSTtRQUNJLGFBQWE7S0FDaEI7Q0FDSjs7QUFFRDtJQUNJLGlDQUFpQztJQUNqQyxrQkFBa0I7SUFDbEIsaUNBQWlDO0lBQ2pDLG9CQUFvQjtJQUNwQixhQUFhO0lBQ2IsY0FBYztJQUNkLDZCQUE2QjtJQUM3QixtQkFBbUI7SUFDbkIsa0JBQWtCO0NBQ3JCOztBQUVEO0lBQ0ksWUFBWTtJQUNaLGFBQWE7Q0FDaEI7O0FBRUQ7SUFDSSxhQUFhO0lBQ2IsYUFBYTtJQUNiLGtCQUFrQjtJQUNsQiw2QkFBNkI7Q0FDaEM7O0FBRUQ7SUFDSSxtQkFBbUI7SUFDbkIscUJBQWM7SUFBZCxjQUFjO0lBQ2QsMkJBQXVCO1FBQXZCLHVCQUF1QjtJQUN2Qix1QkFBK0I7UUFBL0IsK0JBQStCO0lBQy9CLHVCQUFvQjtRQUFwQixvQkFBb0I7SUFDcEIsY0FBYztDQUNqQjs7QUFFRDtJQUNJLG1CQUFtQjtJQUNuQixhQUFhO0NBQ2hCOztBQUVEO0lBQ0ksb0JBQW9CO0NBQ3ZCOztBQUVEO0lBQ0ksYUFBYTtDQUNoQjs7QUFFRDtJQUNJLG1CQUFtQjtDQUN0Qjs7QUFFRDtJQUNJO1FBQ0ksYUFBYTtRQUNiLGlCQUFpQjtLQUNwQjtDQUNKOztBQUVEO0lBQ0ksbUJBQW1CO0lBQ25CLGtCQUFrQjtJQUNsQix3RkFBd0Y7SUFDeEYsNEJBQTRCO0NBQy9COztBQUVEO0lBQ0k7UUFDSSxpQkFBaUI7S0FDcEI7Q0FDSjs7QUFFRDtJQUNJLG1CQUFtQjtJQUNuQixrQkFBa0I7SUFDbEIsOEVBQThFO0lBQzlFLDRCQUE0QjtDQUMvQjs7QUFFRDtJQUNJO1FBQ0ksaUJBQWlCO0tBQ3BCO0NBQ0o7O0FBRUQ7SUFDSSxtQkFBbUI7SUFDbkIsa0JBQWtCO0lBQ2xCLGdGQUFnRjtJQUNoRiw0QkFBNEI7Q0FDL0I7O0FBRUQ7SUFDSTtRQUNJLGlCQUFpQjtLQUNwQjtDQUNKOztBQUVEO0lBQ0ksbUJBQW1CO0lBQ25CLGtCQUFrQjtJQUNsQixpRkFBaUY7SUFDakYsNEJBQTRCO0NBQy9COztBQUVEO0lBQ0k7UUFDSSxpQkFBaUI7S0FDcEI7Q0FDSjs7QUFFRDtJQUNJLG1CQUFtQjtJQUNuQixtQkFBbUI7SUFDbkIscUJBQWM7SUFBZCxjQUFjO0NBQ2pCOztBQUVEO0lBQ0ksbUJBQW1CO0lBQ25CLHlIQUF5SDtDQUM1SDs7QUFFRDtJQUNJLGlCQUFpQjtJQUNqQixlQUFlO0lBQ2Ysa0JBQWtCO0lBQ2xCLG9CQUFvQjtJQUNwQixjQUFjO0NBQ2pCOztBQUVEO0lBQ0ksb0JBQW9CO0lBQ3BCLFlBQVk7SUFDWixpQkFBaUI7Q0FDcEI7O0FBRUQ7SUFDSSw0QkFBNEI7Q0FDL0I7O0FBRUQ7SUFDSSxzQkFBc0I7SUFDdEIsb0JBQW9CO0lBQ3BCLGNBQWM7Q0FDakI7O0FBRUQ7SUFDSSxpQkFBaUI7Q0FDcEI7O0FBRUQ7SUFDSSxxQkFBYztJQUFkLGNBQWM7SUFDZCx3QkFBb0I7UUFBcEIsb0JBQW9CO0NBQ3ZCOztBQUVEO0lBQ0k7UUFDSSwyQkFBdUI7WUFBdkIsdUJBQXVCO1FBQ3ZCLHVCQUFvQjtZQUFwQixvQkFBb0I7S0FDdkI7Q0FDSjs7QUFFRDtJQUNJLGtCQUFrQjtJQUNsQixpQ0FBaUM7SUFDakMsa0JBQWtCO0lBQ2xCLFdBQVc7SUFDWCxpQkFBaUI7Q0FDcEI7O0FBRUQ7SUFDSSxrQkFBa0I7SUFDbEIsZ0JBQWdCO0NBQ25COztBQUVEO0lBQ0ksZ0JBQWdCO0NBQ25COztBQUVEO0lBQ0ksZ0JBQWdCO0NBQ25COztBQUVEO0lBQ0k7UUFDSSxjQUFjO1FBQ2QsWUFBWTtLQUNmO0NBQ0o7O0FBRUQ7SUFDSSxXQUFXO0lBQ1gsa0JBQWtCO0lBQ2xCLGlCQUFpQjtJQUNqQixpQ0FBaUM7SUFDakMsbUJBQW1CO0NBQ3RCOztBQUVEO0lBQ0k7UUFDSSxZQUFZO1FBQ1osaUJBQWlCO1FBQ2pCLG9CQUFvQjtLQUN2QjtDQUNKOztBQUVEO0lBQ0ksaUNBQWlDO0lBQ2pDLHFCQUFxQjtJQUNyQixhQUFhO0lBQ2Isb0JBQW9CO0lBQ3BCLG9CQUFvQjtJQUNwQixjQUFjO0lBQ2QsaUJBQWlCO0NBQ3BCOztBQUVEO0lBQ0ksdUJBQXVCO0lBQ3ZCLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLDRCQUE0QjtJQUM1QiwwQkFBMEI7Q0FDN0I7O0FBRUQ7SUFDSSxxQkFBYztJQUFkLGNBQWM7SUFDZCxZQUFZO0lBQ1osUUFBUTtJQUNSLG1CQUFtQjtDQUN0Qjs7QUFFRDtJQUNJLFlBQVk7Q0FDZjs7QUFFRDtJQUNJO1FBQ0ksbUJBQW1CO0tBQ3RCO0NBQ0o7O0FBRUQ7SUFDSSx3QkFBd0I7SUFDeEIsY0FBYztJQUNkLG1CQUFtQjtJQUNuQixpQkFBaUI7SUFDakIsZ0JBQWdCO0NBQ25COztBQUVEO0lBQ0ksb0JBQW9CO0NBQ3ZCOztBQUVEO0lBQ0ksb0JBQW9CO0lBQ3BCLGNBQWM7SUFDZCxXQUFXO0lBQ1gsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQixrQkFBa0I7Q0FDckI7O0FBRUQ7SUFDSSxpQkFBaUI7Q0FDcEI7O0FBRUQ7SUFDSSxZQUFZO0lBQ1osY0FBYztJQUNkLGFBQWE7SUFDYixxQkFBcUI7SUFDckIsbUJBQW1CO0lBQ25CLFdBQVc7SUFDWCxhQUFhO0lBQ2Isb0JBQW9CO0lBQ3BCLFdBQVc7Q0FDZDs7QUFFRDtJQUNJLHVCQUF1QjtDQUMxQjs7QUFFRDtJQUNJLGNBQWM7SUFDZCxpQkFBaUI7SUFDakIsZ0JBQWdCO0NBQ25COztBQUVEO0lBQ0ksa0JBQWtCO0NBQ3JCOztBQUVEO0lBQ0k7UUFDSSxrQkFBa0I7S0FDckI7Q0FDSjs7QUFFRDtJQUNJLHVCQUF1QjtJQUN2QixzQkFBc0I7SUFDdEIsa0JBQWtCO0lBQ2xCLG1DQUFtQztDQUN0Qzs7QUFFRDtJQUNJLGlCQUFpQjtJQUNqQixlQUFlO0NBQ2xCOztBQUVEO0lBQ0ksZ0JBQWdCO0NBQ25COztBQUVEO0lBQ0ksaUJBQWlCO0lBQ2pCLGVBQWU7Q0FDbEI7O0FBRUQ7SUFDSSxvQkFBb0I7SUFDcEIsWUFBWTtJQUNaLG1CQUFtQjtDQUN0Qjs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztJQUNkLG9CQUFnQjtRQUFoQixnQkFBZ0I7SUFDaEIsc0JBQXdCO1FBQXhCLHdCQUF3QjtDQUMzQjs7QUFFRDtJQUNJLFdBQVc7SUFDWCxtQkFBbUI7SUFDbkIsaUJBQWlCO0lBQ2pCLG9CQUFvQjtJQUNwQixtQkFBbUI7Q0FDdEI7O0FBRUQ7SUFDSTtRQUNJLFlBQVk7S0FDZjtDQUNKOztBQUVEO0lBQ0ksYUFBYTtJQUNiLGFBQWE7SUFDYixxQkFBYztJQUFkLGNBQWM7SUFDZCxzQkFBd0I7UUFBeEIsd0JBQXdCO0lBQ3hCLHVCQUFvQjtRQUFwQixvQkFBb0I7SUFDcEIsMkJBQXVCO1FBQXZCLHVCQUF1QjtDQUMxQjs7QUFFRDtJQUNJLGFBQWE7SUFDYixjQUFjO0lBQ2Qsb0JBQW9CO0lBQ3BCLHFCQUFxQjtJQUNyQixxQkFBYztJQUFkLGNBQWM7SUFDZCxzQkFBd0I7UUFBeEIsd0JBQXdCO0lBQ3hCLHVCQUFvQjtRQUFwQixvQkFBb0I7SUFDcEIsb0JBQW9CO0lBQ3BCLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJLHNCQUFzQjtJQUN0QixnQkFBZ0I7Q0FDbkI7O0FBRUQ7SUFDSSxtRUFBbUU7SUFDbkUsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQiwyQkFBMkI7SUFDM0IsWUFBWTtJQUNaLFdBQVc7Q0FDZDs7QUFFRDtJQUNJLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLFdBQVc7SUFDWCxtQkFBbUI7Q0FDdEI7O0FBRUQ7SUFDSTtRQUNJLFlBQVk7UUFDWixZQUFZO0tBQ2Y7Q0FDSjs7QUFFRDtJQUNJLFdBQVc7Q0FDZDs7QUFFRDtJQUNJO1FBQ0ksWUFBWTtLQUNmO0NBQ0o7O0FBRUQ7SUFDSSxxQkFBYztJQUFkLGNBQWM7Q0FDakI7O0FBRUQ7SUFDSTtRQUNJLGVBQWU7S0FDbEI7Q0FDSjs7QUFFRDtJQUNJLG9CQUFvQjtJQUNwQixpQkFBaUI7SUFDakIsbUJBQW1CO0lBQ25CLGtCQUFrQjtJQUNsQixlQUFlO0lBQ2YsZ0RBQWdEO0lBQ2hELGdCQUFnQjtDQUNuQjs7QUFFRDtJQUNJLGNBQWM7SUFDZCxpQkFBaUI7Q0FDcEI7O0FBRUQ7SUFDSSxnQkFBZ0I7Q0FDbkI7O0FBRUQ7SUFDSSxlQUFlO0NBQ2xCOztBQUVEO0lBQ0ksbUJBQW1CO0NBQ3RCOztBQUVEO0lBQ0ksaUJBQWlCO0lBQ2pCLHFCQUFjO0lBQWQsY0FBYztJQUNkLHNCQUF3QjtRQUF4Qix3QkFBd0I7SUFDeEIsdUJBQW9CO1FBQXBCLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJLGtCQUFrQjtDQUNyQjs7QUFFRDtJQUNJLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLHdEQUF3RDtJQUN4RCxZQUFZO0lBQ1osc0JBQXNCO0lBQ3RCLGtCQUFrQjtDQUNyQjs7QUFFRDtJQUNJLGdCQUFnQjtJQUNoQixpQkFBaUI7SUFDakIsaUJBQWlCO0NBQ3BCOztBQUVEO0lBQ0ksZ0JBQWdCO0NBQ25COztBQUVEO0lBQ0ksY0FBYztJQUNkLGlCQUFpQjtDQUNwQjs7QUFFRDtJQUNJLGlCQUFpQjtJQUNqQixvQkFBb0I7SUFDcEIsaUJBQWlCO0lBQ2pCLGNBQWM7SUFDZCxtQkFBbUI7Q0FDdEI7O0FBRUQ7SUFDSSwyQkFBMkI7Q0FDOUI7O0FBRUQ7SUFDSSxtQkFBbUI7Q0FDdEI7O0FBRUQ7Ozs7Ozs7Ozs7OztJQVlJLG1CQUFtQjtJQUNuQixXQUFXO0lBQ1gsWUFBWTtJQUNaLHdCQUF3QjtDQUMzQjs7QUFFRDtJQUNJLFVBQVU7SUFDVixTQUFTO0NBQ1o7O0FBRUQ7SUFDSSxVQUFVO0lBQ1YsU0FBUztDQUNaOztBQUVEO0lBQ0ksVUFBVTtJQUNWLFNBQVM7Q0FDWjs7QUFFRDtJQUNJLFdBQVc7SUFDWCxTQUFTO0NBQ1o7O0FBRUQ7SUFDSSxVQUFVO0lBQ1YsU0FBUztDQUNaOztBQUVEO0lBQ0ksVUFBVTtJQUNWLFNBQVM7Q0FDWjs7QUFFRDtJQUNJLFVBQVU7SUFDVixTQUFTO0NBQ1o7O0FBRUQ7SUFDSSxXQUFXO0lBQ1gsWUFBWTtDQUNmOztBQUVEO0lBQ0ksV0FBVztJQUNYLFlBQVk7Q0FDZjs7QUFFRDtJQUNJLFVBQVU7SUFDVixVQUFVO0NBQ2I7O0FBRUQ7SUFDSSxVQUFVO0lBQ1YsU0FBUztDQUNaOztBQUVEO0lBQ0ksa0JBQWtCO0NBQ3JCOztBQUVEO0lBQ0ksbUJBQW1CO0lBQ25CLHFCQUFjO0lBQWQsY0FBYztJQUNkLDJCQUF1QjtRQUF2Qix1QkFBdUI7SUFDdkIsc0JBQXdCO1FBQXhCLHdCQUF3QjtJQUN4Qix1QkFBb0I7UUFBcEIsb0JBQW9CO0NBQ3ZCOztBQUVEO0lBQ0ksYUFBYTtDQUNoQjs7QUFFRDtJQUNJLDhCQUE4QjtJQUM5QixlQUFlO0NBQ2xCOztBQUVEO0lBQ0ksZUFBZTtDQUNsQjs7QUFFRDtJQUNJLHNCQUFzQjtDQUN6Qjs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztJQUNkLHNCQUF3QjtRQUF4Qix3QkFBd0I7SUFDeEIsdUJBQW9CO1FBQXBCLG9CQUFvQjtJQUNwQixpQkFBaUI7Q0FDcEI7O0FBRUQ7SUFDSTtRQUNJLDJCQUF1QjtZQUF2Qix1QkFBdUI7S0FDMUI7Q0FDSjs7QUFFRDtJQUNJLFVBQVU7SUFDVixVQUFVO0lBQ1YsNEJBQTRCO0lBQzVCLCtCQUErQjtDQUNsQzs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztJQUNkLDJCQUF1QjtRQUF2Qix1QkFBdUI7Q0FDMUI7O0FBRUQ7SUFDSSxxQkFBYztJQUFkLGNBQWM7SUFDZCx3QkFBb0I7UUFBcEIsb0JBQW9CO0NBQ3ZCOztBQUVEO0lBQ0ksdUJBQW9CO1FBQXBCLG9CQUFvQjtJQUNwQixzQkFBd0I7UUFBeEIsd0JBQXdCO0NBQzNCOztBQUVEO0lBQ0ksdUJBQW9CO1FBQXBCLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJLHNCQUF3QjtRQUF4Qix3QkFBd0I7Q0FDM0I7O0FBRUQ7SUFDSSx1QkFBK0I7UUFBL0IsK0JBQStCO0NBQ2xDOztBQUVEO0lBQ0ksNEJBQThCO1FBQTlCLDhCQUE4QjtDQUNqQzs7QUFFRDtJQUNJLGFBQWE7SUFDYixjQUFjO0lBQ2QscUJBQXFCO0lBQ3JCLGlCQUFpQjtJQUNqQix1QkFBdUI7SUFDdkIsbUJBQW1CO0lBQ25CLG1CQUFtQjtJQUNuQiwrQ0FBK0M7Q0FDbEQ7O0FBRUQ7SUFDSTtRQUNJLDBCQUEwQjtLQUM3QjtDQUNKOztBQUVEO0lBQ0ksc0JBQXNCO0lBQ3RCLHVCQUF1QjtJQUN2QixrQkFBa0I7Q0FDckI7O0FBRUQ7SUFDSSxZQUFZO0NBQ2Y7O0FBRUQ7SUFDSSxxQkFBYztJQUFkLGNBQWM7SUFDZCxvQkFBZ0I7UUFBaEIsZ0JBQWdCO0lBQ2hCLHNCQUF3QjtRQUF4Qix3QkFBd0I7SUFDeEIseUJBQXNCO1FBQXRCLHNCQUFzQjtDQUN6Qjs7QUFFRDtJQUNJLHFCQUFjO0lBQWQsY0FBYztJQUNkLDJCQUF1QjtRQUF2Qix1QkFBdUI7SUFDdkIsc0JBQXdCO1FBQXhCLHdCQUF3QjtJQUN4Qix1QkFBb0I7UUFBcEIsb0JBQW9CO0lBQ3BCLGFBQWE7SUFDYixhQUFhO0NBQ2hCOztBQUVEO0lBQ0ksYUFBYTtJQUNiLGNBQWM7SUFDZCxxQkFBcUI7SUFDckIsaUJBQWlCO0lBQ2pCLHFCQUFjO0lBQWQsY0FBYztDQUNqQjs7QUFFRDtJQUNJLFlBQVk7SUFDWixrQkFBa0I7Q0FDckI7O0FBRUQ7SUFDSSxhQUFhO0NBQ2hCOztBQUVEO0lBQ0ksYUFBYTtJQUNiLGtCQUFrQjtDQUNyQjs7QUFFRDtJQUNJLG9CQUFvQjtDQUN2Qjs7QUFFRDtJQUNJLHNCQUFzQjtJQUN0QixhQUFhO0lBQ2IsaUJBQWlCO0lBQ2pCLG1CQUFtQjtDQUN0Qjs7QUFFRDtJQUNJO1FBQ0ksc0JBQXNCO1FBQ3RCLGtCQUFrQjtRQUNsQix1QkFBb0I7WUFBcEIsb0JBQW9CO1FBQ3BCLHdCQUF3QjtLQUMzQjtDQUNKOztBQUVEO0lBQ0ksNEJBQTRCO0lBQzVCLGdCQUFnQjtDQUNuQjs7QUFFRDtJQUNJLGdCQUFnQjtJQUNoQixjQUFjO0lBQ2Qsd0JBQXdCO0lBQ3hCLFlBQVk7SUFDWixXQUFXO0lBQ1gsYUFBYTtJQUNiLGFBQWE7SUFDYixZQUFZO0lBQ1osNEJBQTRCO0lBQzVCLHVCQUF1QjtDQUMxQjs7QUFFRDtJQUNJO1FBQ0ksYUFBYTtRQUNiLGFBQWE7S0FDaEI7SUFDRDtRQUNJLFdBQVc7UUFDWCxXQUFXO0tBQ2Q7Q0FDSjs7QUFFRDtJQUNJLG1CQUFtQjtJQUNuQixZQUFZO0lBQ1osVUFBVTtJQUNWLFlBQVk7SUFDWixhQUFhO0lBQ2IsYUFBYTtDQUNoQjs7QUFFRDtJQUNJLFdBQVc7SUFDWCxnQkFBZ0I7Q0FDbkI7O0FBRUQ7SUFDSSxtQkFBbUI7SUFDbkIsV0FBVztJQUNYLGFBQWE7SUFDYixhQUFhO0lBQ2IsV0FBVztJQUNYLDBCQUEwQjtDQUM3Qjs7QUFFRDtJQUdJLDBCQUEwQjtDQUM3Qjs7QUFFRDtJQUdJLHlCQUF5QjtDQUM1QiIsImZpbGUiOiJtYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBWb2x0ZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL1ZvbHRlLU1lZGl1bS53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKTtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL1ZvbHRlLU1lZGl1bS53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBWb2x0ZTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL1ZvbHRlLVNlbWlib2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvVm9sdGUtU2VtaWJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogVm9sdGU7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgc3JjOiB1cmwoXCIuLi9mb250cy9Wb2x0ZS1Cb2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvVm9sdGUtQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbmh0bWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xufVxuXG5ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6ICMyMjEyNDA7XG4gICAgZm9udC1mYW1pbHk6IFZvbHRlLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cblxuKiB7XG4gICAgZm9udC1mYW1pbHk6IFZvbHRlLCBzYW5zLXNlcmlmO1xuICAgIHotaW5kZXg6IDI7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1heC13aWR0aDogODAwcHg7XG59XG5cbnAge1xuICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuaDEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0xLjVweDtcbiAgICBmb250LXNpemU6IDEuOWVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAyM3B4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgIH1cbn1cblxuaDIge1xuICAgIGZvbnQtc2l6ZTogMS40ZW07XG59XG5cbi5ibG9ja2VyIHtcbiAgICB6LWluZGV4OiAxMCAhaW1wb3J0YW50O1xufVxuXG5oMyB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG4gICAgZm9udC1zaXplOiAxLjFlbTtcbn1cblxuLnVsOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG59XG5cbi51bCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHotaW5kZXg6IDE7XG4gICAgcGFkZGluZzogMHB4IDRweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbmJ1dHRvbiB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2ZmNDA1MSwgIzhjM2I2Yik7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDgwcHg7XG4gICAgcGFkZGluZzogOHB4IDIwcHg7XG4gICAgbWluLXdpZHRoOiAxMjBweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uYmx1ZUJ1dHRvbiB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzM4QzFDRiwgIzUxNkRFOCk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDgwcHg7XG4gICAgcGFkZGluZzogOHB4IDIwcHg7XG4gICAgbWluLXdpZHRoOiAxMjBweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5idXR0b246aG92ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG59XG5cbi5yZWQge1xuICAgIGNvbG9yOiAjZmY0NDU1O1xufVxuXG4ubGlnaHRCbHVlIHtcbiAgICBjb2xvcjogIzM4QzFDRjtcbn1cblxuLmdyYXlCbHVlIHtcbiAgICBjb2xvcjogI0EzQzJGRjtcbn1cblxuLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG59XG5cbi5zbWFsbCBhIHtcbiAgICBjb2xvcjogI2ZmZjtcbn1cblxuLnJlZEludmVydCB7XG4gICAgYmFja2dyb3VuZDogI2ZmNDQ1NTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbn1cblxuLmxpZ2h0Qmx1ZUludmVydCB7XG4gICAgYmFja2dyb3VuZDogIzM4QzFDRjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbn1cblxuLm5hdnlJbnZlcnQge1xuICAgIGJhY2tncm91bmQ6ICMxODBlMzE7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG59XG5cbi5ibHVlSW52ZXJ0IHtcbiAgICBiYWNrZ3JvdW5kOiAjMkU0QUJBO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xufVxuXG4ud2hpdGUge1xuICAgIGNvbG9yOiAjZmZmO1xufVxuXG4uZGFya0JsdWUge1xuICAgIGNvbG9yOiAjMjUzMjZkO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICBoMTo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMjIxMjQwO1xuICAgICAgICBoZWlnaHQ6IDglO1xuICAgICAgICB0b3A6IGNhbGMoNTAlIC0gMiUpO1xuICAgICAgICByaWdodDogLTExMHB4O1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogLTQwcHg7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDhweDtcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cbn1cblxuaDEud2hpdGU6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG5oMS5yZWQ6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmY0NDU1O1xufVxuXG4ubW9iaWxlT25seSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLm1vYmlsZU9ubHkge1xuICAgICAgICBkaXNwbGF5OiBpbml0aWFsO1xuICAgIH1cbn1cblxuLndlYk9ubHkge1xuICAgIGRpc3BsYXk6IGluaXRpYWw7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC53ZWJPbmx5IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5pbm5lckNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDgwcHg7XG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLmlubmVyQ29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgfVxufVxuXG4ubWFyZ2luVG9wMjAge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbi5tYXJnaW5Ub3A0MCB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbn1cblxuLm1hcmdpblRvcDYwIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xufVxuXG4udG9zIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG59XG5cbi5jb2wtMiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmNvbC0yIGRpdiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgbWF4LXdpZHRoOiA2MDBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLmNvbC0yIGRpdiB7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgIC5jb2wtMiBkaXYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxufVxuXG4uY29sLTIgLmNvbEltYWdlQ29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5jb2wtMiAuY29sSW1hZ2VDb250YWluZXIge1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICAuY29sLTIgLmNvbEltYWdlQ29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxufVxuXG4uY29sLTIgLnRpdGxlIHtcbiAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY29sLTIgLnRpdGxlIGgxIHtcbiAgICBmb250LXNpemU6IDM2cHg7XG59XG5cbi5jb2wtMiAudGl0bGUgaDE6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgLmNvbC0yIC50aXRsZSB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIH1cbn1cblxuLmNvbnRlbnQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi50ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuKiB7XG4gICAgdHJhbnNpdGlvbjogMC41cyBlYXNlIGFsbDtcbn1cblxuZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMjIxMjQwO1xuICAgIGNvbG9yOiAjZmZmO1xufVxuXG5mb290ZXIgLmlubmVyQ29udGVudCB7XG4gICAgcGFkZGluZzogMjBweCA4MHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICBmb290ZXIgLmlubmVyQ29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggNDBweDtcbiAgICB9XG59XG5cbmZvb3RlciBmb3JtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgZm9vdGVyIGZvcm0ge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG59XG5cbmZvb3RlciBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xuICAgIGJvcmRlci1pbWFnZS1zbGljZTogMTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZmY0NDU1O1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBmbGV4LWdyb3c6IDE7XG59XG5cbmZvb3RlciBpbnB1dFtuYW1lPVwidXNlcm5hbWVcIl0ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMTUgcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIHdpZHRoOiAxNTBweDtcbn1cblxuZm9vdGVyIGlucHV0W25hbWU9XCJlbWFpbFwiXSB7XG4gICAgd2lkdGg6IDMwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogOHB4O1xufVxuXG5mb290ZXIgaW5wdXQsXG5mb290ZXIgc2VsZWN0LFxuZm9vdGVyIHRleHRhcmVhIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDE1cHg7XG59XG5cbmZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuZm9vdGVyIGJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjZmY0MDUxLCAjOGMzYjZiKTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogODBweDtcbiAgICBwYWRkaW5nOiA4cHggMjBweDtcbiAgICBtaW4td2lkdGg6IDEyMHB4O1xuICAgIG1hcmdpbi10b3A6IDhweDtcbn1cblxuZm9vdGVyIDo6cGxhY2Vob2xkZXIge1xuICAgIG9wYWNpdHk6IDAuMztcbiAgICBjb2xvcjogd2hpdGU7XG59XG5cbmZvb3RlciAuZmxleCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgZm9vdGVyIC5mbGV4IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICBmb290ZXIgLmNvbnRhY3Qge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICBhbGlnbjogbGVmdDtcbiAgICB9XG59XG5cbmZvb3RlciAuY29udGFjdCBoMyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuZm9vdGVyIC5jb250YWN0IHAge1xuICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIGZvb3RlciAuY29udGFjdCBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgIH1cbn1cblxuZm9vdGVyIC5jb250YWN0IHRhYmxlIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbWFyZ2luOiAwcHg7XG4gICAgcGFkZGluZzogMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICBmb290ZXIgLmNvbnRhY3QgdGFibGUge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgfVxufVxuXG5mb290ZXIgLmNvbnRhY3QgdGFibGUgYSB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuZm9vdGVyIC5jb250YWN0IHRhYmxlIGltZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIGZvb3RlciAuY29udGFjdCB0YWJsZSBpbWcge1xuICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbn1cblxuZm9vdGVyIC5jb250YWN0IHRhYmxlIHRyIHtcbiAgICBtYXJnaW4tdG9wOiAxMnB4O1xufVxuXG5mb290ZXIgLmNvbnRhY3QgdGFibGUgdGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbmZvb3RlciAuZm9vdGVyX2luZm8ge1xuICAgIG1hcmdpbjogMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbmZvb3RlciAuZm9vdGVyX2luZm8gcCB7XG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICBmb290ZXIgLmZvb3Rlcl9pbmZvIHAge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMHB4O1xuICAgIH1cbn1cblxuZm9vdGVyIC5mb290ZXJfaW5mbyBpbWcge1xuICAgIHdpZHRoOiA4MHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIGZvb3RlciAuZm9vdGVyX2luZm8gaW1nIHtcbiAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICB9XG59XG5cbmZvb3RlciAuZm9vdGVyX2luZm8gYSB7XG4gICAgY29sb3I6IHdoaXRlO1xufVxuXG5mb290ZXIgLnNvY2lhbG1lZGlhOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiA4MHB4O1xuICAgIGJhY2tncm91bmQ6ICNmZjQ0NTU7XG4gICAgaGVpZ2h0OiA4JTtcbiAgICB0b3A6IGNhbGMoNTAlIC0gMiUpO1xuICAgIHJpZ2h0OiAtMTEwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIGZvb3RlciAuc29jaWFsbWVkaWE6OmJlZm9yZSB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAtNDBweDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogOHB4O1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxufVxuXG5mb290ZXIgLmZvb3Rlcl9kaXZpZGVyIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNjYzM2NTAsICM3ODNjNzIpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNHB4O1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuZm9vdGVyIC5mb290ZXJfZGl2aWRlcjIge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzM4QzFDRiwgIzUxNkRFOCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG5mb290ZXIgLmZvb3Rlci1saW5rcyB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuZm9vdGVyIC5mb290ZXJfc3ViRm9vdGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICBmb290ZXIgLmZvb3Rlcl9zdWJGb290ZXIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICBmb290ZXIgLmZvb3Rlcl9zdWJGb290ZXIgLnNtYWxsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG59XG5cbmZvb3RlciAubGlua3MgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uYmx1ZUZvb3RlciB7XG4gICAgYmFja2dyb3VuZDogIzI1MzI2ZDtcbiAgICBjb2xvcjogI2ZmZjtcbn1cblxuLmJsdWVGb290ZXIgLmlubmVyQ29udGVudCB7XG4gICAgcGFkZGluZzogMjBweCA4MHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYmx1ZUZvb3RlciAuaW5uZXJDb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMjBweCA0MHB4O1xuICAgIH1cbn1cblxuLmJsdWVGb290ZXIgZm9ybSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5ibHVlRm9vdGVyIGZvcm0ge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG59XG5cbi5ibHVlRm9vdGVyIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gICAgYm9yZGVyLWltYWdlLXNsaWNlOiAxO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZjQ0NTU7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIGZsZXgtZ3JvdzogMTtcbn1cblxuLmJsdWVGb290ZXIgaW5wdXRbbmFtZT1cInVzZXJuYW1lXCJdIHtcbiAgICBtYXJnaW4tbGVmdDogLTE1IHB4O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB3aWR0aDogMTUwcHg7XG59XG5cbi5ibHVlRm9vdGVyIGlucHV0W25hbWU9XCJlbWFpbFwiXSB7XG4gICAgd2lkdGg6IDMwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogOHB4O1xufVxuXG4uYmx1ZUZvb3RlciBpbnB1dCxcbi5ibHVlRm9vdGVyIHNlbGVjdCxcbi5ibHVlRm9vdGVyIHRleHRhcmVhIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDE1cHg7XG59XG5cbi5ibHVlRm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4uYmx1ZUZvb3RlciBidXR0b24ge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzM4QzFDRiwgIzUxNkRFOCk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDgwcHg7XG4gICAgcGFkZGluZzogOHB4IDIwcHg7XG4gICAgbWluLXdpZHRoOiAxMjBweDtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG59XG5cbi5ibHVlRm9vdGVyIDo6cGxhY2Vob2xkZXIge1xuICAgIG9wYWNpdHk6IDAuMztcbiAgICBjb2xvcjogd2hpdGU7XG59XG5cbi5ibHVlRm9vdGVyIC5mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYmx1ZUZvb3RlciAuZmxleCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLmJsdWVGb290ZXIgLmNvbnRhY3Qge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICBhbGlnbjogbGVmdDtcbiAgICB9XG59XG5cbi5ibHVlRm9vdGVyIC5jb250YWN0IGgzIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uYmx1ZUZvb3RlciAuY29udGFjdCBwIHtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgZm9udC1zaXplOiAxNHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYmx1ZUZvb3RlciAuY29udGFjdCBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgIH1cbn1cblxuLmJsdWVGb290ZXIgLmNvbnRhY3QgdGFibGUge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBtYXJnaW46IDBweDtcbiAgICBwYWRkaW5nOiAwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5ibHVlRm9vdGVyIC5jb250YWN0IHRhYmxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgIH1cbn1cblxuLmJsdWVGb290ZXIgLmNvbnRhY3QgdGFibGUgYSB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmJsdWVGb290ZXIgLmNvbnRhY3QgdGFibGUgaW1nIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLmJsdWVGb290ZXIgLmNvbnRhY3QgdGFibGUgaW1nIHtcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG59XG5cbi5ibHVlRm9vdGVyIC5jb250YWN0IHRhYmxlIHRyIHtcbiAgICBtYXJnaW4tdG9wOiAxMnB4O1xufVxuXG4uYmx1ZUZvb3RlciAuY29udGFjdCB0YWJsZSB0ZCB7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuLmJsdWVGb290ZXIgLmZvb3Rlcl9pbmZvIHtcbiAgICBtYXJnaW46IDBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuXG4uYmx1ZUZvb3RlciAuZm9vdGVyX2luZm8gcCB7XG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYmx1ZUZvb3RlciAuZm9vdGVyX2luZm8gcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gICAgfVxufVxuXG4uYmx1ZUZvb3RlciAuZm9vdGVyX2luZm8gaW1nIHtcbiAgICB3aWR0aDogODBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYmx1ZUZvb3RlciAuZm9vdGVyX2luZm8gaW1nIHtcbiAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICB9XG59XG5cbi5ibHVlRm9vdGVyIC5mb290ZXJfaW5mbyBhIHtcbiAgICBjb2xvcjogd2hpdGU7XG59XG5cbi5ibHVlRm9vdGVyIC5zb2NpYWxtZWRpYTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogODBweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmY0NDU1O1xuICAgIGhlaWdodDogOCU7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDIlKTtcbiAgICByaWdodDogLTExMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYmx1ZUZvb3RlciAuc29jaWFsbWVkaWE6OmJlZm9yZSB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAtNDBweDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogOHB4O1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxufVxuXG4uYmx1ZUZvb3RlciAuZm9vdGVyX2RpdmlkZXIge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2NjMzY1MCwgIzc4M2M3Mik7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uYmx1ZUZvb3RlciAuZm9vdGVyX2RpdmlkZXIyIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICMzOEMxQ0YsICM1MTZERTgpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNHB4O1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLmJsdWVGb290ZXIgLmZvb3Rlci1saW5rcyB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuLmJsdWVGb290ZXIgLmZvb3Rlcl9zdWJGb290ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5ibHVlRm9vdGVyIC5mb290ZXJfc3ViRm9vdGVyIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLmJsdWVGb290ZXIgLmZvb3Rlcl9zdWJGb290ZXIgLnNtYWxsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG59XG5cbi5ibHVlRm9vdGVyIC5saW5rcyBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbm5hdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWF4LXdpZHRoOiAxMTIwcHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIGNvbG9yOiAjZmZmO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgIG5hdiB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG1heC1oZWlnaHQ6IDhweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG59XG5cbm5hdiAubG9nbyBpbWcge1xuICAgIHdpZHRoOiAxNjBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICBuYXYgLmxvZ28ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxubmF2IC5sb2dvTW9iaWxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG5uYXYgLmxvZ29Nb2JpbGUgaW1nIHtcbiAgICB3aWR0aDogMTYwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgbmF2IC5sb2dvTW9iaWxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxufVxuXG5uYXYgLmhhbWJ1cmdlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxubmF2IC5oYW1idXJnZXIgZGl2IHtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIG1hcmdpbjogNHB4IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgbmF2IC5oYW1idXJnZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxufVxuXG5uYXYgLmhhbWJ1cmdlci5waW5rIGRpdiB7XG4gICAgYmFja2dyb3VuZDogI2ZmNDQ1NTtcbn1cblxubmF2IC5oYW1idXJnZXIuYmx1ZSBkaXYge1xuICAgIGJhY2tncm91bmQ6ICMzOEMxQ0Y7XG59XG5cbm5hdiAubGlua3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgIG5hdiAubGlua3Mge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxubmF2IC5saW5rc19tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICBuYXYgLmxpbmtzX21vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cbn1cblxubmF2IC5saW5rc19tb2JpbGUuYmx1ZSBhIHtcbiAgICBjb2xvcjogI0EyQjJGRjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICBuYXYgLmxpbmtzX21vYmlsZS5ibHVlIGEge1xuICAgICAgICBjb2xvcjogI0EyQjJGRjtcbiAgICB9XG59XG5cbm5hdiAubGlua3NfbW9iaWxlLmJsdWUgYS5hY3RpdmUsXG5uYXYgLmxpbmtzX21vYmlsZS5ibHVlIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZmZmO1xufVxuXG5uYXYgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDhweCA4cHg7XG4gICAgbWFyZ2luOiAwIDNweDtcbiAgICBmb250LXdlaWdodDogMTAwO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICAgIGhlaWdodDogbWluLWNvbnRlbnQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgbmF2IGEge1xuICAgICAgICBtYXJnaW46IDEycHggMDtcbiAgICAgICAgcGFkZGluZzogNHB4IDhweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICAgIH1cbn1cblxubmF2IGEuYWN0aXZlLFxubmF2IGE6aG92ZXIge1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZmZmO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgIG5hdiBhLmFjdGl2ZSxcbiAgICBuYXYgYTpob3ZlciB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgI2ZmZjtcbiAgICB9XG59XG5cbm5hdiBhLnNwZWNpYWwge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcbn1cblxubmF2IGEubm8tc3R5bGUge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xufVxuXG5uYXYgLmxpbmtzLnBpbmsgYSB7XG4gICAgY29sb3I6ICMwOTFkMmY7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgbmF2IC5saW5rcy5waW5rIGEge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG59XG5cbm5hdiAubGlua3MucGluayBhLmFjdGl2ZSxcbm5hdiAubGlua3MucGluayBhOmhvdmVyIHtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzIyMTI0MDtcbn1cblxubmF2IC5wcm9ncmFtc19kcm9wZG93bl9jb250ZW50IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJhY2tncm91bmQ6ICMyMjEyNDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xufVxuXG5uYXYgLnByb2dyYW1zX2Ryb3Bkb3duX2NvbnRlbnQgYSB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbn1cblxubmF2IC5wcm9ncmFtc19kcm9wZG93bl9jb250ZW50IGE6aG92ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogI2ZmNDQ1NTtcbn1cblxubmF2IC5wcm9ncmFtc19kcm9wZG93bl9jb250ZW50OmhvdmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xufVxuXG5uYXYgLnByb2dyYW1zX2Ryb3Bkb3duOmhvdmVyIC5wcm9ncmFtc19kcm9wZG93bl9jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xufVxuXG5uYXYgLnByb2dyYW1zX2Ryb3Bkb3duX2JsdWVfY29udGVudCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjMjUzMjZkO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbn1cblxubmF2IC5wcm9ncmFtc19kcm9wZG93bl9ibHVlX2NvbnRlbnQgYSB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbn1cblxubmF2IC5wcm9ncmFtc19kcm9wZG93bl9ibHVlX2NvbnRlbnQgYTpob3ZlciB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiAjQTNDMkZGO1xufVxuXG5uYXYgLnByb2dyYW1zX2Ryb3Bkb3duX2JsdWVfY29udGVudDpob3ZlciB7XG4gICAgZGlzcGxheTogZmxleDtcbn1cblxubmF2IC5wcm9ncmFtc19kcm9wZG93bl9ibHVlOmhvdmVyIC5wcm9ncmFtc19kcm9wZG93bl9ibHVlX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5ibHVlTmF2IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjUzMjZkO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMTA7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgLmJsdWVOYXYge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgbWF4LWhlaWdodDogOHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbn1cblxuLmJsdWVOYXYgLmxvZ28gaW1nIHtcbiAgICB3aWR0aDogMTYwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgLmJsdWVOYXYgLmxvZ28ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLmJsdWVOYXYgLmxvZ29Nb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5ibHVlTmF2IC5sb2dvTW9iaWxlIGltZyB7XG4gICAgd2lkdGg6IDE2MHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgIC5ibHVlTmF2IC5sb2dvTW9iaWxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxufVxuXG4uYmx1ZU5hdiAuaGFtYnVyZ2VyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4uYmx1ZU5hdiAuaGFtYnVyZ2VyIGRpdiB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBtYXJnaW46IDRweCAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgIC5ibHVlTmF2IC5oYW1idXJnZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxufVxuXG4uYmx1ZU5hdiAuaGFtYnVyZ2VyLnBpbmsgZGl2IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmY0NDU1O1xufVxuXG4uYmx1ZU5hdiAubGlua3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgIC5ibHVlTmF2IC5saW5rcyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4uYmx1ZU5hdiAubGlua3NfbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgLmJsdWVOYXYgLmxpbmtzX21vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cbn1cblxuLmJsdWVOYXYgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDhweCA4cHg7XG4gICAgbWFyZ2luOiAwIDNweDtcbiAgICBmb250LXdlaWdodDogMTAwO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICAgIGhlaWdodDogbWluLWNvbnRlbnQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgLmJsdWVOYXYgYSB7XG4gICAgICAgIG1hcmdpbjogMTJweCAwO1xuICAgICAgICBwYWRkaW5nOiA0cHggOHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG4gICAgfVxufVxuXG4uYmx1ZU5hdiBhLmFjdGl2ZSxcbi5ibHVlTmF2IGE6aG92ZXIge1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZmZmO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgIC5ibHVlTmF2IGEuYWN0aXZlLFxuICAgIC5ibHVlTmF2IGE6aG92ZXIge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICNmZmY7XG4gICAgfVxufVxuXG4uYmx1ZU5hdiBhLnNwZWNpYWwge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmJsdWVOYXYgYS5uby1zdHlsZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG59XG5cbi5ibHVlTmF2IC5saW5rcy5ibHVlIGEge1xuICAgIGNvbG9yOiAjQTJCMkZGO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgIC5ibHVlTmF2IC5saW5rcy5ibHVlIGEge1xuICAgICAgICBjb2xvcjogI0EyQjJGRjtcbiAgICB9XG59XG5cbi5ibHVlTmF2IC5saW5rcy5ibHVlIGEuYWN0aXZlLFxuLmJsdWVOYXYgLmxpbmtzLmJsdWUgYTpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmZmY7XG59XG5cbi5ibHVlTmF2IC5saW5rc19tb2JpbGUuYmx1ZSBhIHtcbiAgICBjb2xvcjogI0EyQjJGRjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICAuYmx1ZU5hdiAubGlua3NfbW9iaWxlLmJsdWUgYSB7XG4gICAgICAgIGNvbG9yOiAjQTJCMkZGO1xuICAgIH1cbn1cblxuLmJsdWVOYXYgLmxpbmtzX21vYmlsZS5ibHVlIGEuYWN0aXZlLFxuLmJsdWVOYXYgLmxpbmtzX21vYmlsZS5ibHVlIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZmZmO1xufVxuXG4uYmx1ZU5hdiAucHJvZ3JhbXNfZHJvcGRvd25fY29udGVudCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjMjUzMjZkO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbn1cblxuLmJsdWVOYXYgLnByb2dyYW1zX2Ryb3Bkb3duX2NvbnRlbnQgYSB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLmJsdWVOYXYgLnByb2dyYW1zX2Ryb3Bkb3duX2NvbnRlbnQgYTpob3ZlciB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiAjZmY0NDU1O1xufVxuXG4uYmx1ZU5hdiAucHJvZ3JhbXNfZHJvcGRvd25fY29udGVudDpob3ZlciB7XG4gICAgZGlzcGxheTogZmxleDtcbn1cblxuLmJsdWVOYXYgLnByb2dyYW1zX2Ryb3Bkb3duOmhvdmVyIC5wcm9ncmFtc19kcm9wZG93bl9jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgIG5hdi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMTgwZTMxO1xuICAgICAgICBtYXgtaGVpZ2h0OiA4MDBweDtcbiAgICB9XG59XG5cbm5hdi5hY3RpdmUgLmhhbWJ1cmdlciAub25lIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbm5hdi5hY3RpdmUgLmhhbWJ1cmdlciAudHdvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCkgcm90YXRlKC00NWRlZyk7XG59XG5cbnBhdGgjU3ZnanNQYXRoMTAxNSB7XG4gICAgc3Ryb2tlLXdpZHRoOiA0O1xuICAgIHotaW5kZXg6IDQ7XG4gICAgdHJhbnNpdGlvbjogMC4xcyBlYXNlIGFsbDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICBwYXRoI1N2Z2pzUGF0aDEwMTUge1xuICAgICAgICBvcGFjaXR5OiAwLjI7XG4gICAgfVxufVxuXG4uaDItY2VudGVyIHtcbiAgICBtYXJnaW46IGF1dG87XG59XG5cbi5jb2wge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLnJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuXG4uZmxleC1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5hbGlnbi1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5hbGlnbi1lbmQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbn1cblxuLmp1c3RpZnktY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnNwYWNlLWJldHdlZW4ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLnNwYWNlLWV2ZW5seSB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG59XG5cbi5zcGFjZS1hcm91bmQge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xufVxuXG4udzEwMCB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5tMCB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4ub2gge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5hbm5vdW5jZW1lbnQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogI2ZmNDQ1NTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uYW5ub3VuY2VtZW50IHAge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1heC13aWR0aDogMTAwMHB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmFubm91bmNlbWVudCBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLmFubm91bmNlbWVudCBhOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5hbm5vdW5jZW1lbnQgYTp2aXNpdGVkIHtcbiAgICBjb2xvcjogd2hpdGU7XG59XG5cbiNob3VyX2NvdW50ZXIsXG4jY291bnRyeV9jb3VudGVyIHtcbiAgICBsZXR0ZXItc3BhY2luZzogMC41cHggIWltcG9ydGFudDtcbn1cblxuLmluZm8ge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC1ncm93OiAxO1xufVxuXG4ub2RvbWV0ZXIge1xuICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuI3N0YXQtY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICAjc3RhdC1jb250YWluZXIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMzBweDtcbiAgICB9XG59XG5cbiNzdGF0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LWdyb3c6IDEuNjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICAjc3RhdCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgfVxufVxuXG4jc3RhdDIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZsZXgtZ3JvdzogMTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICAjc3RhdDIge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIH1cbn1cblxuLm1haW4tcXVhbnR1bSB7XG4gICAgYmFja2dyb3VuZDogIzM0NTZlZTtcbiAgICBjb2xvcjogI2ZmZjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLm1haW4tcXVhbnR1bSAucm93IHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG59XG5cbi5tYWluLXF1YW50dW0gLnF1YW50dW0tbG9nbyB7XG4gICAgd2lkdGg6IDEyMHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLm1haW4tcXVhbnR1bSAucXVhbnR1bS1pbWcge1xuICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgbWF4LWhlaWdodDogNTAwcHg7XG4gICAgbWFyZ2luOiAxMHB4O1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLm1haW4tcXVhbnR1bSAucXVhbnR1bS1pbWcgaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiA0MDBweDtcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5tYWluLXF1YW50dW0gLnF1YW50dW0taW1nIGltZyB7XG4gICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgIHdpZHRoOiAyMzBweDtcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5tYWluLXF1YW50dW0gLnF1YW50dW0taW1nIC50ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufVxuXG4jYWJvdXQge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgY29sb3I6ICMyMTE1M2Y7XG59XG5cbiNhYm91dCAuYWJvdXRUZXh0IHtcbiAgICBtYXgtd2lkdGg6IDcwMHB4O1xufVxuXG4jYWJvdXQgLmFib3V0LXByb2dyYW1zIHtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgI2Fib3V0IC5hYm91dC1wcm9ncmFtcyB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IC0zMHB4O1xuICAgIH1cbn1cblxuI2Fib3V0IC5hYm91dC1pY29uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LWdyb3c6IDEuNjtcbiAgICB3aWR0aDogMjUlO1xuICAgIGhlaWdodDogMjUlO1xufVxuXG4jYWJvdXQgLmFib3V0LWljb24gaW1nIHtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICBtYXgtaGVpZ2h0OiA1MCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgI2Fib3V0IC5hYm91dC1pY29uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICB9XG59XG5cbiNhYm91dCBoMyB7XG4gICAgY29sb3I6ICMyMTE1M2Y7XG59XG5cbiNhYm91dCAuaW5uZXJDb250ZW50OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL2hvbWUvYWJvdXQucG5nXCIpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHdpZHRoOiA2MHZ3O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiA0MHZ3O1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgICNhYm91dCAuaW5uZXJDb250ZW50OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4jYWJvdXQgaDE6OmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgICNhYm91dCBoMTo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cbn1cblxuI2Fib3V0IHAge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4jZGlmZmVyZW5jZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4jZGlmZmVyZW5jZSAuaW5uZXJDb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDEwMjRweDtcbn1cblxuI2RpZmZlcmVuY2UgLnRpdGxlIC5zdWJ0aXRsZSB7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG1heC13aWR0aDogNjAwcHg7XG59XG5cbiNkaWZmZXJlbmNlIGltZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICNkaWZmZXJlbmNlIGltZyB7XG4gICAgICAgIHdpZHRoOiA4MCU7XG4gICAgfVxufVxuXG4jZGlmZmVyZW5jZSBkaXY6Zmlyc3QtY2hpbGQgLmlubmVyQ29udGVudCB7XG4gICAgcGFkZGluZzogODBweCA0MHB4IDIwcHggNDBweDtcbn1cblxuI2RpZmZlcmVuY2UgLmlubmVyQ29udGVudCB7XG4gICAgcGFkZGluZzogMjBweCA0MHB4O1xufVxuXG4jZGlmZmVyZW5jZSBoMyB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAjZGlmZmVyZW5jZSBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogYXV0bztcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICNkaWZmZXJlbmNlIC50aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxufVxuXG4jZGlmZmVyZW5jZSAjZGlmZmVyZW5jZV9pbnN0cnVjdG9ycyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDM7XG59XG5cbiNkaWZmZXJlbmNlICNkaWZmZXJlbmNlX2luc3RydWN0b3JzIC5jb2xJbWFnZUNvbnRhaW5lci5zaG93QmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaG9tZS9pbnN0cnVjdG9ycy1pY29ucy5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEwMCU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICAjZGlmZmVyZW5jZSAjZGlmZmVyZW5jZV9pbnN0cnVjdG9ycyAuY29sSW1hZ2VDb250YWluZXIuc2hvd0JhY2tncm91bmQ6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xuICAgIH1cbn1cblxuI2RpZmZlcmVuY2UgI2RpZmZlcmVuY2VfY3VycmljdWx1bSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jZGlmZmVyZW5jZSAjZGlmZmVyZW5jZV9jdXJyaWN1bHVtIC5jb2xJbWFnZUNvbnRhaW5lci5zaG93QmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaG9tZS9jdXJyaWN1bHVtLWljb25zLnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGhlaWdodDogMTYwJTtcbiAgICB3aWR0aDogMTYwJTtcbiAgICB0b3A6IC0zMCU7XG4gICAgbGVmdDogLTMyJTtcbiAgICBhbmltYXRpb246IHJvdGF0ZS1hbmltYXRpb24gMzAwcyBpbmZpbml0ZTtcbiAgICBvcGFjaXR5OiAwLjE7XG59XG5cbiNkaWZmZXJlbmNlICNkaWZmZXJlbmNlX2N1cnJpY3VsdW0gLmNvbEltYWdlQ29udGFpbmVyLnNob3dCYWNrZ3JvdW5kOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk1KSA3MCUpO1xuICAgIGhlaWdodDogMTYwJTtcbiAgICB3aWR0aDogMTYwJTtcbiAgICB0b3A6IC0zMCU7XG4gICAgbGVmdDogLTMyJTtcbiAgICBhbmltYXRpb246IHJvdGF0ZS1hbmltYXRpb24gMzAwcyBpbmZpbml0ZTtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4jZGlmZmVyZW5jZSAjZGlmZmVyZW5jZV9jdXJyaWN1bHVtIC5jb2xJbWFnZUNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWxlZnQ6IDgwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAjZGlmZmVyZW5jZSAjZGlmZmVyZW5jZV9jdXJyaWN1bHVtIC5jb2xJbWFnZUNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxufVxuXG4jZGlmZmVyZW5jZSAjZGlmZmVyZW5jZV9jdXJyaWN1bHVtIGltZyB7XG4gICAgcGFkZGluZzogMDtcbn1cblxuI2RpZmZlcmVuY2UgI2RpZmZlcmVuY2VfY3VycmljdWx1bSAuZGlmZmVyZW5jZUNvbnRlbnRDb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgICNkaWZmZXJlbmNlICNkaWZmZXJlbmNlX2N1cnJpY3VsdW0gLmRpZmZlcmVuY2VDb250ZW50Q29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgfVxufVxuXG4jZGlmZmVyZW5jZSAjZGlmZmVyZW5jZV9jb2xsZWdlIC5jb2xJbWFnZUNvbnRhaW5lci5zaG93QmFja2dyb3VuZDo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaG9tZS9jb2xsZWdlLWljb25zLnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIG9wYWNpdHk6IDAuMTtcbn1cblxuI2RpZmZlcmVuY2UgI2RpZmZlcmVuY2VfY29sbGVnZSAuY29sSW1hZ2VDb250YWluZXIuc2hvd0JhY2tncm91bmQ6OmFmdGVyIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTkpLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNikpO1xufVxuXG4jZGlmZmVyZW5jZSAuY29sSW1hZ2VDb250YWluZXIuc2hvd0JhY2tncm91bmQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAxMjAlO1xuICAgIHdpZHRoOiAxNjAlO1xuICAgIHRvcDogLTEwJTtcbiAgICBsZWZ0OiAtMzAlO1xuICAgIG9wYWNpdHk6IDAuMTtcbn1cblxuI2RpZmZlcmVuY2UgLmNvbEltYWdlQ29udGFpbmVyLnNob3dCYWNrZ3JvdW5kOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk5KSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpKTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAxMjAlO1xuICAgIHdpZHRoOiAxNjAlO1xuICAgIHRvcDogLTEwJTtcbiAgICBsZWZ0OiAtMzAlO1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgI2RpZmZlcmVuY2UgLmNvbEltYWdlQ29udGFpbmVyLnNob3dCYWNrZ3JvdW5kOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NikgNDUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCkgMzAlLCAjZmZmKTtcbiAgICB9XG59XG5cbiN3aG9mb3Ige1xuICAgIGJhY2tncm91bmQ6ICMyMjEyNDA7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jd2hvZm9yIGgxOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuI3dob2ZvciBoMixcbiN3aG9mb3IgcCB7XG4gICAgbWFyZ2luOiBhdXRvO1xufVxuXG4jd2hvZm9yIHAge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbn1cblxuI3dob2ZvciBwIGIge1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbiN3aG9mb3IgLnNwbGl0cyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgICN3aG9mb3IgLnNwbGl0cyB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxufVxuXG4jd2hvZm9yIC5zcGxpdCB7XG4gICAgYmFja2dyb3VuZDogIzIyMTI0MDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0LCBib3JkZXItcmFkaXVzIDAuNXMgZWFzZS1pbi1vdXQgMC4ycztcbiAgICBwYWRkaW5nOiA4MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IGNhbGMoMTAyNHB4IC8gMik7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgI3dob2ZvciAuc3BsaXQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICB9XG59XG5cbiN3aG9mb3IgLnNwbGl0OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmY0NDU1O1xuICAgIGJvcmRlci1yYWRpdXM6IGNhbGMoMTAyNHB4IC8gMik7XG59XG5cbiN0ZXN0aW1vbmlhbHMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaW5uZXJDb250ZW50IHtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMTUwcHg7XG59XG5cbi50ZXN0aW1vbmlhbHNfY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICBtYXJnaW46IGF1dG87XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgLnRlc3RpbW9uaWFsc19jb250YWluZXIge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNDBweCk7XG4gICAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgfVxufVxuXG4udGVzdGltb25pYWxzIHtcbiAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAudGVzdGltb25pYWxzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICAudGVzdGltb25pYWxzIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgd2lkdGg6IDMwMCU7XG4gICAgfVxufVxuXG4udGVzdGltb25pYWwge1xuICAgIHdpZHRoOiA0MCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXgtaGVpZ2h0OiBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDhweCAjMjgzRUFFO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgLnRlc3RpbW9uaWFsIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG59XG5cbi5tYWluLXRlc3RpbW9uaWFsIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaG9tZS9idWJibGUtcmlnaHQtMS5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgaGVpZ2h0OiAyNjBweDtcbiAgICBtYXgtd2lkdGg6IDcyMHB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEyMHB4O1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAtMjBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICAubWFpbi10ZXN0aW1vbmlhbCB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLm1haW4tdGVzdGltb25pYWwge1xuICAgICAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA5NSUgYXV0bztcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDcyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDM2dmg7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAubWFpbi10ZXN0aW1vbmlhbCBwIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MjBweDtcbiAgICB9XG59XG5cbi5tYWluLXRlc3RpbW9uaWFsIC50ZXN0aW1vbmlhbF9ieWxpbmUge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG59XG5cbi50ZXN0aW1vbmlhbF9ieWxpbmUge1xuICAgIGNvbG9yOiAjMjgzRUFFO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi50ZXN0aW1vbmlhbF9ieWxpbmUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICAudGVzdGltb25pYWxfYnlsaW5lIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgfVxufVxuXG4uaGVhZGluZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhlYWRpbmcgaDEge1xuICAgIGxlZnQ6IDE4MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICAuaGVhZGluZyBoMSB7XG4gICAgICAgIGxlZnQ6IDcwcHg7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTAwcHgpIHtcbiAgICAuaGVhZGluZyBoMSB7XG4gICAgICAgIGxlZnQ6IDUwcHg7XG4gICAgfVxufVxuXG4uaGVhZGluZyBwIHtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xufVxuXG4uZXZlcnl0aGluZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jZHJhd2luZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuI2cxLFxuI2cyLFxuI2czLFxuI2c0LFxuI2c1LFxuI2c2LFxuI2czYSxcbiNnNGEsXG4jZzVhLFxuI2cxYSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAycHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbiNnMSB7XG4gICAgbGVmdDogNjAwcHg7XG4gICAgdG9wOiAxMDhweDtcbn1cblxuI2cxYSB7XG4gICAgcmlnaHQ6IDgwcHg7XG4gICAgdG9wOiAxMDhweDtcbn1cblxuI2cyIHtcbiAgICByaWdodDogODBweDtcbiAgICBib3R0b206IDgwcHg7XG59XG5cbiNnMyxcbiNnNCxcbiNnNSB7XG4gICAgdG9wOiAxMCU7XG4gICAgbGVmdDogNzAlO1xufVxuXG4jZzNhLFxuI2c0YSxcbiNnNWEge1xuICAgIGJvdHRvbTogMTUlO1xuICAgIGxlZnQ6IDQwJTtcbn1cblxuI2c2IHtcbiAgICByaWdodDogODBweDtcbiAgICB0b3A6IDUwJTtcbn1cblxuc3ZnIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xufVxuXG4jbWFpbiB7XG4gICAgYmFja2dyb3VuZDogIzIxMTUzZjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNjAwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC1oZWlnaHQ6IDgwMHB4O1xuICAgIHRyYW5zaXRpb246IDJzIGVhc2UtaW4tb3V0IGFsbDtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxcztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubm8tbWFyZ2luLFxuI21haW4ubm8tbWFyZ2luIHtcbiAgICBib3JkZXItd2lkdGg6IDBweDtcbn1cblxuY2FudmFzLmRkIHtcbiAgICB3aWR0aDogMTUwOXB4O1xuICAgIGhlaWdodDogMTA4MHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAyNSU7XG4gICAgdG9wOiAtMjAlO1xuICAgIHotaW5kZXg6IDE7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgY2FudmFzLmRkIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAtMTAlO1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgfVxufVxuXG4jcGFydGljbGVzLWpzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogMztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbiNwYXJ0aWNsZXMtanMgY2FudmFzIHtcbiAgICB6LWluZGV4OiAzO1xufVxuXG4uc3BsYXNoX19oZWFkaW5nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyMCU7XG4gICAgbGVmdDogMTAlO1xuICAgIHotaW5kZXg6IDQ7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgLnNwbGFzaF9faGVhZGluZyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAxMCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgfVxufVxuXG4uc3BsYXNoX19oZWFkaW5nIGgxIHtcbiAgICBmb250LXNpemU6IDYwcHg7XG59XG5cbi5zcGxhc2hfX2hlYWRpbmcgaDIge1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbn1cblxuLnNwbGFzaF9faGVhZGluZyBwIHtcbiAgICBtYXgtd2lkdGg6IDU1MHB4O1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uc3BsYXNoX19oZWFkaW5nIHAgYiB7XG4gICAgY29sb3I6ICNmZjQ0NTU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgLnNwbGFzaF9faGVhZGluZyBwIGIge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICB9XG59XG5cbi5zcGxhc2hfX2hlYWRpbmcgLnRvcyB7XG4gICAgZm9udC1zaXplOiAxN3B4O1xufVxuXG4uc3BsYXNoX19oZWFkaW5nIGJ1dHRvbixcbi5zcGxhc2hfX2hlYWRpbmcgLnRvcyB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBhbmltYXRpb246IGxvZ28tZG90LWFuaW1hdGlvbiAxcyBlYXNlLWluLW91dCBmb3J3YXJkcztcbiAgICBhbmltYXRpb24tZGVsYXk6IDJzO1xufVxuXG4uaW1hZ2VGbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICAuaW1hZ2VGbGV4IHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG59XG5cbi5pbWFnZUZsZXggaW1nIHtcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLmhvdy1wbC13b3JrcyB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLmhvdy1wbC13b3JrcyAuaW5uZXJDb250ZW50OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHdpZHRoOiA1MHZ3O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTB2dztcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMjAlO1xuICAgIG9wYWNpdHk6IDAuMjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3A7XG4gICAgdG9wOiAwO1xufVxuXG4uaG93LXBsLXdvcmtzIGgxOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uaG93LXBsLXdvcmtzIHAge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG59XG5cbi5ob3ctcGwtd29ya3MgYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIGJhY2tncm91bmQ6ICMyMTE1M2Y7XG59XG5cbi5ob3ctcGwtd29ya3MgLnBsLWJveCB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KCNjYzM2NTAsICM3ODNjNzIpO1xufVxuXG4uaG93LXBsLXdvcmtzIC5wbC1jb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgIC5ob3ctcGwtd29ya3MgLnBsLWNvbnRhaW5lciB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG1hcmdpbi10b3A6IC0zMHB4O1xuICAgIH1cbn1cblxuLmhvdy1wbC13b3JrcyAucGwtaWNvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC1ncm93OiAxLjY7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIGhlaWdodDogMTAwcHg7XG59XG5cbi5ob3ctcGwtd29ya3MgLnBsLWljb24gaW1nIHtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICBtYXgtaGVpZ2h0OiA4MCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgLmhvdy1wbC13b3JrcyAucGwtaWNvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgfVxufVxuXG4uaG93LXBsLXdvcmtzIC5wbC1pY29uIC5pbmZvIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4uaG93LXBsLXdvcmtzIC5wbC1kZXNjIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4uaG93LXBsLXdvcmtzIC5wbC1kZXNjIGgyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMjExNTNmO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XG59XG5cbi5ob3ctcGwtd29ya3MgLnBsLWRlc2MgcCB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cblxuLnBsLWNsaWNrYWJsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ucGwtY2xpY2thYmxlIGltZzpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xufVxuXG4uZGlzcGxheV9ub25lIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4jaG93IC5pbm5lckNvbnRlbnQge1xuICAgIG1hcmdpbjogMDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvaG9tZS9ob3ctaXQtd29ya3MtdHJhbnNwYXJlbnQucG5nXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDYwMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgICNob3cgLmlubmVyQ29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxufVxuXG4jaG93IC5pbm5lckNvbnRlbnQgcCB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2MHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgICNob3cgLmlubmVyQ29udGVudCBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgI2hvdyAuaW1hZ2VGbGV4IHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIH1cbn1cblxuI2hvdyBpbWcge1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiA2MHB4O1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgI2hvdyBpbWcge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLm91ci1jdXJyaWN1bHVtIHtcbiAgICBiYWNrZ3JvdW5kOiAjMjExNTNmO1xuICAgIGNvbG9yOiB3aGl0ZTtcbn1cblxuQGtleWZyYW1lcyBiZW5lZml0c0FuaW1hdGlvbiB7XG4gICAgMCUge1xuICAgICAgICBsZWZ0OiAwJTtcbiAgICB9XG4gICAgMjAlIHtcbiAgICAgICAgbGVmdDogMCU7XG4gICAgfVxuICAgIDI1JSB7XG4gICAgICAgIGxlZnQ6IC01MCU7XG4gICAgfVxuICAgIDUwJSB7XG4gICAgICAgIGxlZnQ6IC01MCU7XG4gICAgfVxuICAgIDU1JSB7XG4gICAgICAgIGxlZnQ6IC0xMDAlO1xuICAgIH1cbiAgICA3MCUge1xuICAgICAgICBsZWZ0OiAtMTAwJTtcbiAgICB9XG4gICAgNzUlIHtcbiAgICAgICAgbGVmdDogLTE1MCU7XG4gICAgfVxuICAgIDk1JSB7XG4gICAgICAgIGxlZnQ6IC0xNTAlO1xuICAgIH1cbiAgICA5OSUge1xuICAgICAgICBsZWZ0OiAwJTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgYmVuZWZpdHNBbmltYXRpb25Nb2JpbGUge1xuICAgIGZyb20ge1xuICAgICAgICBsZWZ0OiAwJTtcbiAgICB9XG4gICAgdG8ge1xuICAgICAgICBsZWZ0OiAtOTAwJTtcbiAgICB9XG59XG5cbiNiZW5lZml0cyB7XG4gICAgYmFja2dyb3VuZDogIzIyMTI0MDtcbiAgICBjb2xvcjogI2ZmZjtcbn1cblxuI2JlbmVmaXRzIGgxIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbiNiZW5lZml0cyBoMTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgI2JlbmVmaXRzIGgxOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4jYmVuZWZpdHMgLmJlbmVmaXRzQ29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMjA4cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICAjYmVuZWZpdHMgLmJlbmVmaXRzQ29udGFpbmVyIHtcbiAgICAgICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAgIH1cbn1cblxuI2JlbmVmaXRzIC5iZW5lZml0cyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMzAwJTtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYW5pbWF0aW9uOiBiZW5lZml0c0FuaW1hdGlvbiAyMHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgI2JlbmVmaXRzIC5iZW5lZml0cyB7XG4gICAgICAgIHdpZHRoOiA5MDAlO1xuICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxufVxuXG4jYmVuZWZpdHMgLmJlbmVmaXQge1xuICAgIHdpZHRoOiA4LjMlO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgI2JlbmVmaXRzIC5iZW5lZml0IHtcbiAgICAgICAgd2lkdGg6IDkuOCU7XG4gICAgfVxufVxuXG4jYmVuZWZpdHMgLmJlbmVmaXQgaDMge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuI2JlbmVmaXRzIC5iZW5lZml0IHAge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNiZW5lZml0cyAuYmVuZWZpdEltYWdlIHtcbiAgICB3aWR0aDogNjBweDtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNjBweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmY0NDU1O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbiNiZW5lZml0cyAuYmVuZWZpdEltYWdlIGltZyB7XG4gICAgaGVpZ2h0OiA1MCU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG5Aa2V5ZnJhbWVzIGxvZ28tZG90LWFuaW1hdGlvbiB7XG4gICAgdG8ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBsb2dvLWN1dHMtYW5pbWF0aW9uIHtcbiAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGxvZ28tbGluZS1hbmltYXRpb24ge1xuICAgIHRvIHtcbiAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG4gICAgfVxufVxuXG5zdmcjbG9nbyB7XG4gICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgd2lkdGg6IDMwMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICBhbmltYXRpb246IGxvZ28tZG90LWFuaW1hdGlvbiAxcyBlYXNlLWluLW91dCBmb3J3YXJkcztcbiAgICBhbmltYXRpb24tZGVsYXk6IDNzO1xufVxuXG4jbG9nb19jdXRfbzEsXG4jbG9nb19jdXRfbzIge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgYW5pbWF0aW9uOiBsb2dvLWN1dHMtYW5pbWF0aW9uIDFzIGVhc2UtaW4tb3V0IGZvcndhcmRzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogNHM7XG59XG5cbiNsb2dvX2RvdDEsXG4jbG9nb19kb3QyIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGFuaW1hdGlvbjogbG9nby1kb3QtYW5pbWF0aW9uIDFzIGVhc2UtaW4tb3V0IGZvcndhcmRzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogNXM7XG59XG5cbiNsb2dvX2xpbmUge1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAxMzA7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogMTMwO1xuICAgIGZpbGw6IHRyYW5zcGFyZW50O1xuICAgIGFuaW1hdGlvbjogbG9nby1saW5lLWFuaW1hdGlvbiAxcyBlYXNlLWluLW91dCBmb3J3YXJkcztcbiAgICBhbmltYXRpb24tZGVsYXk6IDZzO1xufVxuXG4jbnVtYmVycyB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDM2MGRlZywgIzUxNkRFOCAyLjclLCAjMjgzRUFFIDMwLjk3JSk7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbiNudW1iZXJzIC5pbm5lckNvbnRlbnQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDUwdnc7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MHZ3O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEyMCU7XG4gICAgb3BhY2l0eTogMC4yO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcDtcbiAgICB0b3A6IDA7XG59XG5cbiNudW1iZXJzIGgxOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4ubW9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbkBrZXlmcmFtZXMgZGlhbG9nQW5pbWF0aW9uMSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDBweCk7XG4gICAgfVxuICAgIDIwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MHB4KTtcbiAgICB9XG4gICAgMzAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbiAgICA1MCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuICAgIDkwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjBweCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGRpYWxvZ0FuaW1hdGlvbjIge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwcHgpO1xuICAgIH1cbiAgICA1MCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDBweCk7XG4gICAgfVxuICAgIDYwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG4gICAgOTAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBkaWFsb2dBbmltYXRpb24zIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MHB4KTtcbiAgICB9XG4gICAgOTAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwcHgpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBjbG9ja0FuaW1hdGlvbiB7XG4gICAgdG8ge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBjbG9ja0hvdXJBbmltYXRpb24ge1xuICAgIHRvIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG59XG5cbiNwcm9ncmFtc19wYWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbiNwcm9ncmFtc19wYWdlIGgxOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuI3Byb2dyYW1zX3BhZ2UgLmlubmVyQ29udGVudCB7XG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XG59XG5cbi5wcm9ncmFtc19fc3BsYXNoIHtcbiAgICBiYWNrZ3JvdW5kOiAjMjIxMjQwO1xuICAgIGNvbG9yOiAjZmZmO1xufVxuXG4ucHJvZ3JhbXNfX3NwbGFzaCAuaW5uZXJDb250ZW50IHtcbiAgICBoZWlnaHQ6IDU1MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAucHJvZ3JhbXNfX3NwbGFzaCAuaW5uZXJDb250ZW50IHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbn1cblxuLnByb2dyYW1zX19zcGxhc2ggLmZsZXgge1xuICAgIHBhZGRpbmctdG9wOiAyMDBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLnByb2dyYW1zX19zcGxhc2ggLmZsZXgge1xuICAgICAgICBwYWRkaW5nLXRvcDogMHB4O1xuICAgIH1cbn1cblxuLnByb2dyYW1zX19zcGxhc2ggLnRleHQge1xuICAgIHdpZHRoOiA0MCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5wcm9ncmFtc19fc3BsYXNoIC5zcGxhc2hUZXh0IGgzLFxuICAgIC5wcm9ncmFtc19fc3BsYXNoIC5zcGxhc2hUZXh0IGJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAucHJvZ3JhbXNfX3NwbGFzaCAuc3BsYXNoVGV4dCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiA0O1xuICAgICAgICB0b3A6IDgwcHg7XG4gICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMTUwcHgpO1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICAucHJvZ3JhbXNfX3NwbGFzaCAuc3BsYXNoVGV4dCB7XG4gICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gNzVweCk7XG4gICAgICAgIHRvcDogNTBweDtcbiAgICB9XG59XG5cbi5wcm9ncmFtc19fc3BsYXNoIC5pbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDg2MHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAucHJvZ3JhbXNfX3NwbGFzaCAuaW1nIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDExMCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgLnByb2dyYW1zX19zcGxhc2ggLmltZyB7XG4gICAgICAgIGxlZnQ6IC0zMiU7XG4gICAgICAgIHdpZHRoOiAxODAlO1xuICAgIH1cbn1cblxuLnByb2dyYW1zX19zcGxhc2ggLmltZyBzdmcge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAucHJvZ3JhbXNfX3NwbGFzaCAuaW1nIHBhdGgjRmlsbC01OSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxufVxuXG4ucHJvZ3JhbXNfX3NwbGFzaCAuaW1nIGcjbGVmdC1kaWFsb2d1ZS0xIHtcbiAgICBhbmltYXRpb246IGRpYWxvZ0FuaW1hdGlvbjEgMTBzIGZvcndhcmRzO1xufVxuXG4ucHJvZ3JhbXNfX3NwbGFzaCAuaW1nIGcjcmlnaHQtZGlhbG9ndWUtMSB7XG4gICAgYW5pbWF0aW9uOiBkaWFsb2dBbmltYXRpb24yIDEwcyBmb3J3YXJkcztcbn1cblxuLnByb2dyYW1zX19zcGxhc2ggLmltZyBnI2xlZnQtZGlhbG9ndWUtMS0zIHtcbiAgICBhbmltYXRpb246IGRpYWxvZ0FuaW1hdGlvbjMgMTBzIGZvcndhcmRzO1xufVxuXG4ucHJvZ3JhbXNfX3NwbGFzaCAuaW1nIHBvbHlnb24jRmlsbC02OSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtLWJveDogZmlsbC1ib3g7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xuICAgIGFuaW1hdGlvbjogY2xvY2tBbmltYXRpb24gNjBzIGluZmluaXRlO1xufVxuXG4ucHJvZ3JhbXNfX2FwcGx5IHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvcHJvZ3JhbXMvbGVhZGVyc2hpcC5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDMwMCU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMTAlIDIwJTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLnByb2dyYW1zX19hcHBseSB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byA3NSU7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDExMSUgMjEyJTtcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgLnByb2dyYW1zX19hcHBseSB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byA0MCU7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwOSUgMTMwJTtcbiAgICB9XG59XG5cbi5wcm9ncmFtc19fYWJvdXQuY29udGVudCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5wcm9ncmFtc19fYWJvdXQge1xuICAgIGJhY2tncm91bmQ6ICMyMjEyNDA7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbi5wcm9ncmFtc19fYWJvdXQgaDEge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5wcm9ncmFtc19fYWJvdXQgaDEge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufVxuXG4ucHJvZ3JhbXNfX2Fib3V0IC5mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAucHJvZ3JhbXNfX2Fib3V0IC5mbGV4IHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG59XG5cbi5wcm9ncmFtc19fYWJvdXQgLmFib3V0X2NvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtYXJnaW4tdG9wOiAtMTEwcHg7XG4gICAgdHJhbnNpdGlvbjogMC4ycyBlYXNlLWluLW91dCBtYXgtaGVpZ2h0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAucHJvZ3JhbXNfX2Fib3V0IC5hYm91dF9jb250YWluZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIH1cbn1cblxuLnByb2dyYW1zX19hYm91dCAuYWJvdXRfY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogIzE4MGUzMTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICBwYWRkaW5nOiA0MHB4IDEyMHB4IDQwcHggODBweDtcbiAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAucHJvZ3JhbXNfX2Fib3V0IC5hYm91dF9jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogNDBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjlweDtcbiAgICB9XG59XG5cbi5wcm9ncmFtc19fYWJvdXQgLmFib3V0X2NvbnRlbnQgcCB7XG4gICAgbWF4LWhlaWdodDogMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wcm9ncmFtc19fYWJvdXQgLmFib3V0X2NvbnRlbnQ6bnRoLWNoaWxkKDEpIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IC00MHB4O1xufVxuXG4ucHJvZ3JhbXNfX2Fib3V0IC5hYm91dF9jb250ZW50Om50aC1jaGlsZCgyKSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4ucHJvZ3JhbXNfX2Fib3V0IC5hYm91dF9jb250ZW50Om50aC1jaGlsZCgzKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC00MHB4O1xufVxuXG4ucHJvZ3JhbXNfX2Fib3V0IC5hYm91dF9jb250ZW50LmFjdGl2ZSBwIHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAwcHg7XG59XG5cbi5wcm9ncmFtc19fY3VycmljdWx1bSBwIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4ucHJvZ3JhbXNfX2N1cnJpY3VsdW0gLmZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLnByb2dyYW1zX19jdXJyaWN1bHVtIC5hbmltYXRpb24ge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAucHJvZ3JhbXNfX2N1cnJpY3VsdW0gLmFuaW1hdGlvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxufVxuXG4ucHJvZ3JhbXNfX2N1cnJpY3VsdW0gLmFjdGl2ZUNvdXJzZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IC02MHB4O1xufVxuXG4ucHJvZ3JhbXNfX2N1cnJpY3VsdW0gLmFjdGl2ZUNvdXJzZSAuaW1nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDI1MHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaGVpZ2h0OiAyNTBweDtcbiAgICBtYXJnaW46IGF1dG87XG59XG5cbi5wcm9ncmFtc19fY3VycmljdWx1bSAuYWN0aXZlQ291cnNlIC5pbWdDb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IGNhbGMoMjUwcHggKiA1KTtcbiAgICBsZWZ0OiAwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucHJvZ3JhbXNfX2N1cnJpY3VsdW0gLmFjdGl2ZUNvdXJzZSAuaW1nOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDIyMHB4O1xuICAgIGhlaWdodDogMjIwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6ICNjY2M7XG4gICAgei1pbmRleDogLTE7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGxlZnQ6IGNhbGMoNTAlIC0gMTEwcHgpO1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMTBweCk7XG59XG5cbi5wcm9ncmFtc19fY3VycmljdWx1bSAuYWN0aXZlQ291cnNlIGltZyB7XG4gICAgd2lkdGg6IDI1MHB4O1xuICAgIHotaW5kZXg6IDI7XG4gICAgaGVpZ2h0OiAtd2Via2l0LWZpbGwtYXZhaWxhYmxlO1xufVxuXG4ucHJvZ3JhbXNfX2N1cnJpY3VsdW0gLmN1cnJpY3VsdW1fZGV0YWlscyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucHJvZ3JhbXNfX2N1cnJpY3VsdW0gLmN1cnJpY3VsdW1fZGV0YWlscyAuZmxleCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnByb2dyYW1zX19jdXJyaWN1bHVtIC5jdXJyaWN1bHVtX2RldGFpbHMgLmN1cnJpY3VsdW1fZGV0YWlsc19pbWFnZSB7XG4gICAgd2lkdGg6IDQwJTtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAucHJvZ3JhbXNfX2N1cnJpY3VsdW0gLmN1cnJpY3VsdW1fZGV0YWlscyAuY3VycmljdWx1bV9kZXRhaWxzX2ltYWdlIHtcbiAgICAgICAgd2lkdGg6IDEzMCU7XG4gICAgfVxufVxuXG4ucHJvZ3JhbXNfX2N1cnJpY3VsdW0gLmN1cnJpY3VsdW1fZGV0YWlscyAuY3VycmljdWx1bV9kZXRhaWxzX2ltYWdlIC5jdXJyaWN1bHVtX2RldGFpbHNfaW1hZ2VfY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG4gICAgd2lkdGg6IDMwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG59XG5cbi5wcm9ncmFtc19fY3VycmljdWx1bSAuY3VycmljdWx1bV9kZXRhaWxzIC5jdXJyaWN1bHVtX2RldGFpbHNfaW1hZ2UgaW1nIHtcbiAgICB3aWR0aDogMzMuMzMlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbn1cblxuLnByb2dyYW1zX19jdXJyaWN1bHVtIC5jdXJyaWN1bHVtX2RldGFpbHMgLmN1cnJpY3VsdW1fZGV0YWlsc190ZXh0IHtcbiAgICBiYWNrZ3JvdW5kOiAjMjIxMjQwO1xuICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyLXJhZGl1czogMHB4IDEwcHggMTBweCAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAucHJvZ3JhbXNfX2N1cnJpY3VsdW0gLmN1cnJpY3VsdW1fZGV0YWlscyAuY3VycmljdWx1bV9kZXRhaWxzX3RleHQge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNjBweDtcbiAgICB9XG59XG5cbi5wcm9ncmFtc19fY3VycmljdWx1bSAuY3VycmljdWx1bV9kZXRhaWxzIC5jdXJyaWN1bHVtX2RldGFpbHNfdGV4dCAudGl0bGVzIHtcbiAgICBoZWlnaHQ6IDM2cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnByb2dyYW1zX19jdXJyaWN1bHVtIC5jdXJyaWN1bHVtX2RldGFpbHMgLmN1cnJpY3VsdW1fZGV0YWlsc190ZXh0IC50aXRsZXMgLnRpdGxlc19jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG59XG5cbi5wcm9ncmFtc19fY3VycmljdWx1bSAuY3VycmljdWx1bV9kZXRhaWxzIC5jdXJyaWN1bHVtX2RldGFpbHNfdGV4dCAucGFyYXMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wcm9ncmFtc19fY3VycmljdWx1bSAuY3VycmljdWx1bV9kZXRhaWxzIC5jdXJyaWN1bHVtX2RldGFpbHNfdGV4dCAucGFyYXMgLnBhcmFzX2NvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMzAwJTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5wcm9ncmFtc19fY3VycmljdWx1bSAuY3VycmljdWx1bV9kZXRhaWxzIC5jdXJyaWN1bHVtX25leHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiAjZmY0NDU1O1xuICAgIGhlaWdodDogNDBweDtcbiAgICB3aWR0aDogNDBweDtcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgIHJpZ2h0OiAtMTBweDtcbiAgICB0b3A6IC0xMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyB7XG4gICAgYmFja2dyb3VuZDogIzI4M0VBRTtcbiAgICBjb2xvcjogI2ZmZjtcbn1cblxuLnByb2dyYW1zX19vcHRpb25zIGE6dmlzaXRlZCB7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAuaW5uZXJDb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnByb2dyYW1zX19vcHRpb25zIGgxIHtcbiAgICBmb250LXNpemU6IDIuMWVtO1xufVxuXG4ucHJvZ3JhbXNfX29wdGlvbnMgLmZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5wcm9ncmFtc19fb3B0aW9ucyAuZmxleCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxufVxuXG4ucHJvZ3JhbXNfX29wdGlvbnMgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDEycHg7XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAucHJvZ3JhbXNfX29mZmVyaW5ncyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW46IDIwcHggMCAyMHB4IDA7XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAucHJvZ3JhbXNfX29mZmVyaW5ncyBoMSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgLnByb2dyYW1zX19vcHRpb25zIC5wcm9ncmFtc19fb2ZmZXJpbmdzICNwcm9ncmFtc19fb2ZmZXJpbmdzX3JvdyB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxufVxuXG4ucHJvZ3JhbXNfX29wdGlvbnMgLnBlcnNvbmFsX2xlc3Nvbl9pbmZvIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgY29sb3I6ICMxODBlMzE7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAyMHB4ICMyMjEyNDA7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICB3aWR0aDogMzUwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAucGVyc29uYWxfbGVzc29uX2luZm8gdWwge1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbn1cblxuLnByb2dyYW1zX19vcHRpb25zIC5wZXJzb25hbF9sZXNzb25faW5mbyBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnByb2dyYW1zX19vcHRpb25zIC5wZXJzb25hbF9sZXNzb25faW5mbyAuZXhwYW5kQ2xpY2thYmxlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgLnByb2dyYW1zX19vcHRpb25zIC5wZXJzb25hbF9sZXNzb25faW5mbyB7XG4gICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICB9XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAucHJvZ3JhbV9pbmZvIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDIwcHggIzIyMTI0MDtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIHdpZHRoOiA2MDBweDtcbiAgICBoZWlnaHQ6IDI3MHB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xufVxuXG4ucHJvZ3JhbXNfX29wdGlvbnMgLnByb2dyYW1faW5mbyAucHJvZ3JhbV9pbmZvX2ltYWdlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAucHJvZ3JhbV9pbmZvIC5wcm9ncmFtX2luZm9faW1hZ2UgaW1nIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDI1MHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHggMCAwIDIwcHg7XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAucHJvZ3JhbV9pbmZvIC5wcm9ncmFtX2luZm9fdGV4dCB7XG4gICAgcGFkZGluZzogMzBweCAyMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDE1MHB4O1xufVxuXG4ucHJvZ3JhbXNfX29wdGlvbnMgLnByb2dyYW1faW5mbyAucHJvZ3JhbV9pbmZvX3RleHQgdWwge1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBjb2xvcjogYmxhY2s7XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAucHJvZ3JhbV9pbmZvIC5wcm9ncmFtX2luZm9fdGV4dCBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnByb2dyYW1zX19vcHRpb25zIC5wcm9ncmFtX2luZm8gLnByb2dyYW1faW5mb190ZXh0IGgyIHtcbiAgICBjb2xvcjogYmxhY2s7XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAucHJvZ3JhbV9pbmZvIC5leHBhbmRDbGlja2FibGUge1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICAucHJvZ3JhbXNfX29wdGlvbnMgLnByb2dyYW1faW5mbyB7XG4gICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDBweDtcbiAgICB9XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAucGVyc29uYWxpemVkX2NvZGluZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiA1MHB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL3Byb2QvaW1hZ2VzL3N1bW1lcmNhbXBzL3BlcnNvbmFsaXphdGlvbl9jYXJkX3BpY3R1cmUuanBnXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzAwcHggYXV0bztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICAucHJvZ3JhbXNfX29wdGlvbnMgLnBlcnNvbmFsaXplZF9jb2Rpbmcge1xuICAgICAgICBtYXJnaW46IDEwcHggMHB4O1xuICAgIH1cbn1cblxuLnByb2dyYW1zX19vcHRpb25zIC5zdW1tZXJfY29kaW5nIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDUwcHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vcHJvZC9pbWFnZXMvc3VtbWVyY2FtcHMvY2FtcHNfY2FyZF9waWN0dXJlLmpwZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDMwMHB4IGF1dG87XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgLnByb2dyYW1zX19vcHRpb25zIC5zdW1tZXJfY29kaW5nIHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDBweDtcbiAgICB9XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAucXVhbnR1bV9jb2Rpbmcge1xuICAgIG1hcmdpbi1yaWdodDogNTBweDtcbiAgICBtYXJnaW4tbGVmdDogNTBweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9wcm9kL2ltYWdlcy9zdW1tZXJjYW1wcy9xdWFudHVtX2NhcmRfcGljdHVyZS5qcGdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDI1NXB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgIC5wcm9ncmFtc19fb3B0aW9ucyAucXVhbnR1bV9jb2Rpbmcge1xuICAgICAgICBtYXJnaW46IDEwcHggMHB4O1xuICAgIH1cbn1cblxuLnByb2dyYW1zX19vcHRpb25zIC5yZXNlYXJjaF9jb2Rpbmcge1xuICAgIG1hcmdpbi1yaWdodDogNTBweDtcbiAgICBtYXJnaW4tbGVmdDogNTBweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9wcm9kL2ltYWdlcy9zdW1tZXJjYW1wcy9yZXNlYXJjaF9jYXJkX3BpY3R1cmUuanBnXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAyNTVweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICAucHJvZ3JhbXNfX29wdGlvbnMgLnJlc2VhcmNoX2NvZGluZyB7XG4gICAgICAgIG1hcmdpbjogMTBweCAwcHg7XG4gICAgfVxufVxuXG4ucHJvZ3JhbXNfX29wdGlvbnMgLnByb2dyYW1faW5mb19uYW1lIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy10b3A6IDI2MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAub2xkX3ByaWNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQgdG9wLCB0cmFuc3BhcmVudCA0Ny43NSUsIGN1cnJlbnRDb2xvciA0OS41JSwgY3VycmVudENvbG9yIDUwLjUlLCB0cmFuc3BhcmVudCA1Mi4yNSUpO1xufVxuXG4ucHJvZ3JhbXNfX29wdGlvbnMgLnNwcmluZ19wcm9ncmFtcyB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBjb2xvcjogIzE4MGUzMTtcbiAgICBtYXJnaW46IDQwcHggMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIHBhZGRpbmc6IDMwcHg7XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAuc3ByaW5nX3Byb2dyYW1zIC5wcm9ncmFtX2luZm8ge1xuICAgIGJhY2tncm91bmQ6ICMxODBlMzE7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnByb2dyYW1zX19vcHRpb25zIC5zdW1tZXJfX3Byb2dyYW1zIHtcbiAgICBwYWRkaW5nOiAzMHB4IDMwcHggMHB4IDMwcHg7XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAuZ2VuZXJhbF9wcm9ncmFtcyB7XG4gICAgbWFyZ2luOiA0MHB4IDAgNDBweCAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgcGFkZGluZzogMzBweDtcbn1cblxuLnByb2dyYW1zX19vcHRpb25zIC5nZW5lcmFsX3Byb2dyYW1zIC5wcm9ncmFtX2luZm8ge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAuY2FtcC1yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgICAucHJvZ3JhbXNfX29wdGlvbnMgLmNhbXAtcm93IHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAucHJvZ3JhbV9leHBhbmQge1xuICAgIG1heC1oZWlnaHQ6IDU1MHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAgIG1hcmdpbjogMzBweCA1MHB4O1xuICAgIHdpZHRoOiA5MiU7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbn1cblxuLnByb2dyYW1zX19vcHRpb25zIC5wcm9ncmFtX2V4cGFuZCBwIHtcbiAgICBtYXgtd2lkdGg6IDExMDBweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAucHJvZ3JhbV9leHBhbmQgbGkge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLnByb2dyYW1zX19vcHRpb25zIC5wcm9ncmFtX2V4cGFuZCBoNCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAgIC5wcm9ncmFtc19fb3B0aW9ucyAucHJvZ3JhbV9leHBhbmQge1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBtYXJnaW46IDBweDtcbiAgICB9XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAucHJvZ3JhbU9wdGlvbkNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDYwJTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMjBweCAjMjIxMjQwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLnByb2dyYW1zX19vcHRpb25zIC5wcm9ncmFtT3B0aW9uQ29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxufVxuXG4ucHJvZ3JhbXNfX29wdGlvbnMgLmV4cGFuZF9jb250YWluZXIge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgIHBhZGRpbmc6IDBweDtcbiAgICBiYWNrZ3JvdW5kOiAjMTgwZTMxO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucHJvZ3JhbXNfX29wdGlvbnMgLmV4cGFuZF9jb250YWluZXIuYWN0aXZlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjVzO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAuZXhwYW5kX2NvbnRhaW5lciAjc3ByaW5nLWxlc3NvbnMge1xuICAgIGJhY2tncm91bmQ6ICNmZmYgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzE4MGUzMSAhaW1wb3J0YW50O1xufVxuXG4ucHJvZ3JhbXNfX29wdGlvbnMgLnByb2dyYW1PcHRpb25Db250YWluZXJGbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAyMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucHJvZ3JhbXNfX29wdGlvbnMgLnByb2dyYW1PcHRpb25Db250YWluZXJGbGV4LndpbnRlciB7XG4gICAgbGVmdDogLTEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5wcm9ncmFtc19fb3B0aW9ucyAucHJvZ3JhbVNlbGVjdG9yIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cblxuLnByb2dyYW1zX19vcHRpb25zIC5wcm9ncmFtU2VsZWN0b3JPcHRpb24ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ucHJvZ3JhbXNfX29wdGlvbnMgLnByb2dyYW1TZWxlY3Rvck9wdGlvbi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICMyMjEyNDA7XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAucHJvZ3JhbU9wdGlvbiB7XG4gICAgYmFja2dyb3VuZDogIzIyMTI0MDtcbiAgICBwYWRkaW5nOiA0MHB4O1xuICAgIHdpZHRoOiA2MCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbi5wcm9ncmFtc19fb3B0aW9ucyAucHJvZ3JhbU9wdGlvbiB1bCBsaSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLnByb2dyYW1zX19vcHRpb25zIC5wcm9ncmFtT3B0aW9uQ29udGFpbmVyOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtNTBweDtcbiAgICByaWdodDogLTUwcHg7XG4gICAgYmFja2dyb3VuZDogI2ZmNDQ1NTtcbiAgICB6LWluZGV4OiAyO1xufVxuXG4ucHJvZ3JhbXNfX29wdGlvbnMgLnByb2dyYW1zX19vcHRpb246aG92ZXIge1xuICAgIGJvcmRlcjogOHB4IHNvbGlkICNmZmY7XG59XG5cbi5wcm9ncmFtT3B0aW9uQ2xpY2thYmxlIHVsIHtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4ucHJvZ3JhbU9wdGlvbkNsaWNrYWJsZSB1bC5hY3RpdmUge1xuICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAucHJvZ3JhbU9wdGlvbkNsaWNrYWJsZSB1bC5hY3RpdmUge1xuICAgICAgICBtYXgtaGVpZ2h0OiA0MDBweDtcbiAgICB9XG59XG5cbi5wcm9ncmFtT3B0aW9uQ2xpY2thYmxlIGg0IHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiA1cHggMThweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xufVxuXG4ucHJvZ3JhbU9wdGlvbkNsaWNrYWJsZSBoNC5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgY29sb3I6ICMyMjEyNDA7XG59XG5cbi5wcm9ncmFtT3B0aW9uQ2xpY2thYmxlOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5wcm9ncmFtT3B0aW9uQ2xpY2thYmxlOmhvdmVyIGg0IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGNvbG9yOiAjMjIxMjQwO1xufVxuXG4ucHJvZ3JhbXNfX3N0ZXBzIHtcbiAgICBiYWNrZ3JvdW5kOiAjMjgzRUFFO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnByb2dyYW1zX19zdGVwcyAuc3RlcHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ucHJvZ3JhbXNfX3N0ZXBzIC5zdGVwQ29udGFpbmVyIHtcbiAgICB3aWR0aDogMzMlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAucHJvZ3JhbXNfX3N0ZXBzIC5zdGVwQ29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4ucHJvZ3JhbXNfX3N0ZXBzIC5zdGVwIHtcbiAgICB3aWR0aDogMTYwcHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4ucHJvZ3JhbXNfX3N0ZXBzIC5zdGVwSW1hZ2Uge1xuICAgIHdpZHRoOiAxMjBweDtcbiAgICBoZWlnaHQ6IDEyMHB4O1xuICAgIGJhY2tncm91bmQ6ICMxODBlMzE7XG4gICAgYm9yZGVyLXJhZGl1czogMTIwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cblxuLnByb2dyYW1zX19zdGVwcyAuc3RlcEltYWdlOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ucHJvZ3JhbXNfX3NjaG9sYXJzaGlwcyB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vcHJvZC9pbWFnZXMvaW1wYWN0L2ltcGFjdF9zcGxhc2gtYmx1ZS5wbmdcIik7XG4gICAgbWFyZ2luLXRvcDogLTclO1xuICAgIHBhZGRpbmctdG9wOiA3JTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB6LWluZGV4OiAwO1xufVxuXG4uY291cnNlX19kZXNjcmlwdGlvbnMgaDEge1xuICAgIG1hcmdpbjogMjBweCAwcHg7XG59XG5cbi5jb3Vyc2VfX2Rlc2NyaXB0aW9ucyAuY291cnNlX2NvbnRlbnQxIHtcbiAgICB3aWR0aDogNDclO1xuICAgIG1hcmdpbi1yaWdodDogMzBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLmNvdXJzZV9fZGVzY3JpcHRpb25zIC5jb3Vyc2VfY29udGVudDEge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgfVxufVxuXG4uY291cnNlX19kZXNjcmlwdGlvbnMgLmNvdXJzZV9jb250ZW50MiB7XG4gICAgd2lkdGg6IDQ3JTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLmNvdXJzZV9fZGVzY3JpcHRpb25zIC5jb3Vyc2VfY29udGVudDIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi5jb3Vyc2VfX2Rlc2NyaXB0aW9ucyAuY291cnNlX2ZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5jb3Vyc2VfX2Rlc2NyaXB0aW9ucyAuY291cnNlX2ZsZXgge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5jb3Vyc2VfX2Rlc2NyaXB0aW9ucyAuY291cnNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgIG1hcmdpbjogMTBweCAwcHg7XG4gICAgcGFkZGluZzogMTVweCAzMHB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGNvbG9yOiAjMTgwZTMxO1xuICAgIGJveC1zaGFkb3c6IDBweCAzcHggNnB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMTQpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmNvdXJzZV9fZGVzY3JpcHRpb25zIC5jb3Vyc2UgLmNvdXJzZV90ZXh0IHtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jb3Vyc2VfX2Rlc2NyaXB0aW9ucyAuY291cnNlLmFjdGl2ZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uY291cnNlX19kZXNjcmlwdGlvbnMgLmNvdXJzZS5hY3RpdmUgaDMge1xuICAgIGNvbG9yOiAjMzhDMUNGO1xufVxuXG4uY291cnNlX19kZXNjcmlwdGlvbnMgLmNvdXJzZS5hY3RpdmUgLmNvdXJzZV90ZXh0IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAwcHg7XG59XG5cbiNzcHJpbmdfYnV0dG9ucyB7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbiNzcHJpbmdfYnV0dG9ucyBhIHtcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcbn1cblxuLnByb2dyYW1zX19mYXEge1xuICAgIGJhY2tncm91bmQ6ICNlZWU7XG59XG5cbi5wcm9ncmFtc19fZmFxIC5zaG93X2ZhcXMge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzM4QzFDRiwgIzUxNkRFOCk7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xufVxuXG4ucHJvZ3JhbXNfX2ZhcSAucXVlc3Rpb25BbnN3ZXIge1xuICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1heC13aWR0aDogODAwcHg7XG59XG5cbi5wcm9ncmFtc19fZmFxIC5xdWVzdGlvbkFuc3dlciAucXVlc3Rpb24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnByb2dyYW1zX19mYXEgLnF1ZXN0aW9uQW5zd2VyIC5hbnN3ZXIge1xuICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnByb2dyYW1zX19mYXEgLnF1ZXN0aW9uQW5zd2VyLmFjdGl2ZSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG5cbi5wcm9ncmFtc19fZmFxIC5xdWVzdGlvbkFuc3dlci5hY3RpdmUgLnF1ZXN0aW9uIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnByb2dyYW1zX19mYXEgLnF1ZXN0aW9uQW5zd2VyLmFjdGl2ZSAuYW5zd2VyIHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAwcHg7XG59XG5cbiNjMCxcbiNjMSxcbiNjMixcbiNjMyxcbiNjM2EsXG4jYzNiLFxuI2M0LFxuI2M1LFxuI2M1YSxcbiNjNWIsXG4jYzYsXG4jYzZhIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDJweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuI2MxIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiAxMCU7XG59XG5cbiNjMiB7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNTAlO1xufVxuXG4jYzMge1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDEwJTtcbn1cblxuI2MzYSB7XG4gICAgcmlnaHQ6IDEwJTtcbiAgICB0b3A6IDUyJTtcbn1cblxuI2MzYiB7XG4gICAgbGVmdDogMjAlO1xuICAgIHRvcDogNTYlO1xufVxuXG4jYzQge1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDQwJTtcbn1cblxuI2M1IHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiAxMCU7XG59XG5cbiNjNWEge1xuICAgIHJpZ2h0OiAxMCU7XG4gICAgYm90dG9tOiAxMCU7XG59XG5cbiNjNWIge1xuICAgIHJpZ2h0OiAyMCU7XG4gICAgYm90dG9tOiAyMCU7XG59XG5cbiNjNiB7XG4gICAgbGVmdDogNDUlO1xuICAgIHRvcDogMjAwJTtcbn1cblxuI2M2YSB7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogMjAlO1xufVxuXG4ucHJvZ3JhbXNfX3JlZ2lzdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbn1cblxuI3NwcmluZ01vZGFsIHtcbiAgICBwYWRkaW5nOiA0MHB4IDQwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbiNzcHJpbmdNb2RhbCBidXR0b24ge1xuICAgIG1hcmdpbjogMTBweDtcbn1cblxuI3NwcmluZ01vZGFsICNjbG9zZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICM5YTlhOWE7XG59XG5cbiNzcHJpbmdNb2RhbCAjY2xvc2U6aG92ZXIge1xuICAgIGNvbG9yOiAjMmU1MGZmO1xufVxuXG4jc3ByaW5nTW9kYWwgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4jc3ByaW5nTW9kYWwgI21vZGFsLWJ1dHRvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW46IDE1cHggMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAjc3ByaW5nTW9kYWwgI21vZGFsLWJ1dHRvbnMge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbn1cblxuLmxpbmVEaXZpZGVyIHtcbiAgICBib3JkZXI6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB3aGl0ZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgd2hpdGU7XG59XG5cbi5jb2wge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLnJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuXG4uZmxleC1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5hbGlnbi1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5qdXN0aWZ5LWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5zcGFjZS1iZXR3ZWVuIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5zcGFjZS1ldmVubHkge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xufVxuXG4uY2lyY2xlLWNhbXAge1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE1MHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDIwMHB4O1xuICAgIGJveC1zaGFkb3c6IDBweCAzcHggNnB4IDNweCByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgLmNpcmNsZS1jYW1wIHtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDBweCAyMHB4IDBweDtcbiAgICB9XG59XG5cbi5jaXJjbGUtY2FtcCAuY2lyY2xlLXRleHQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xufVxuXG4udzEwMCB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi50ZWNoVGFsa1NwZWFrZXJzQ29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG59XG5cbi50ZWNoVGFsa1NwZWFrZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbjogMjBweDtcbiAgICB3aWR0aDogMTMycHg7XG59XG5cbi50ZWNoVGFsa1NwZWFrZXJJbWcge1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE1MHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogZmxleDtcbn1cblxuLnRlY2hUYWxrU3BlYWtlckltZyBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uY29tcGFueSB7XG4gICAgaGVpZ2h0OiA0NXB4O1xufVxuXG4uY29tcGFueSBpbWcge1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLnByb2dyYW1zX21lbnUge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbi5wcm9ncmFtc19tZW51IGEge1xuICAgIG1hcmdpbjogMCA0MHB4IDAgNDBweDtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU1MHB4KSB7XG4gICAgLnByb2dyYW1zX21lbnUgYSB7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNC41cHg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNWVtO1xuICAgIH1cbn1cblxuI21jX2VtYmVkX3NpZ251cF9zY3JvbGwgaDQge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5ib3R0b20tcmlnaHQtcG9wdXAubW9kYWwge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGJvdHRvbTogMHB4O1xuICAgIHJpZ2h0OiAwcHg7XG4gICAgbWFyZ2luOiAxMHB4O1xuICAgIHdpZHRoOiAzNjVweDtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBhbmltYXRpb24tbmFtZTogYXBwZWFyLWxlZnQ7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbn1cblxuQGtleWZyYW1lcyBhcHBlYXItbGVmdCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwLjI7XG4gICAgICAgIHJpZ2h0OiAtNTBweDtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHJpZ2h0OiAwcHg7XG4gICAgfVxufVxuXG4uY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTBweDtcbiAgICB0b3A6IDEwcHg7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICAgIG9wYWNpdHk6IDAuMztcbn1cblxuLmNsb3NlOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmNsb3NlOmJlZm9yZSwgLmNsb3NlOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMTVweDtcbiAgICBjb250ZW50OiAnICc7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHdpZHRoOiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmNDQ1NTtcbn1cblxuLmNsb3NlOmJlZm9yZSB7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbi5jbG9zZTphZnRlciB7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG4iXX0= */