* {
    box-sizing: border-box
}

body, h1, h2, h3, h4, p, figure, blockquote, dl, dd {
    margin: 0
}

ul[role=list], ol[role=list] {
    list-style: none
}

html:focus-within {
    scroll-behavior: smooth
}

body {
    min-height: 100vh;
    text-rendering: optimizeSpeed;
    line-height: 1.5
}

a:not([class]) {
    -webkit-text-decoration-skip: ink;
    text-decoration-skip-ink: auto
}

img, picture {
    max-width: 100%;
    display: block
}

input, button, textarea, select {
    font: inherit;
    box-shadow: none;
    outline: none
}

@media (prefers-reduced-motion: reduce) {
    html:focus-within {
        scroll-behavior: auto
    }

    *, *::before, *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
        scroll-behavior: auto !important
    }
}

* {
    font-family: "Inter";
    color: #263238
}

a {
    transition: .3s;
    text-decoration: none
}

p {
    font-weight: 400;
    font-size: 14px;
    line-height: 150%;
    letter-spacing: .03em
}

ul li, ol li {
    font-weight: 400;
    font-size: 16px;
    line-height: 150%;
    letter-spacing: .03em
}

ul li:last-child, ol li:last-child {
    margin-bottom: 0
}

h1, .h1 {
    font-family: "Exo 2";
    font-weight: 700;
    font-size: 36px;
    line-height: 120%;
    margin-bottom: 15px;
    letter-spacing: .03em;
    width: 100%
}

h2, .h2 {
    font-family: "Exo 2";
    font-weight: 700;
    font-size: 40px;
    line-height: 150%;
    letter-spacing: .03em;
    color: #ffb300;
    width: 100%
}

.title-description {
    width: 100%;
    margin-bottom: 70px
}

.title-description p {
    font-size: 18px;
    line-height: 150%;
    text-align: center;
    width: 100%;
    max-width: 736px;
    margin: 0 auto
}

.subtitle {
    font-weight: 600;
    font-size: 24px;
    line-height: 150%;
    letter-spacing: .03em;
    text-align: center;
    width: 100%;
    margin-bottom: 70px
}

.social-link {
    transition: .3s
}

.social-link:hover {
    opacity: .7
}

table {
    max-width: 100%;
    width: 100%;
    border-spacing: 10px
}

table td, table th {
    vertical-align: top;
    border-bottom: 1px solid rgba(0, 0, 0, .2)
}

table tr td:nth-of-type(1) {
    width: 33%
}

table tr td:nth-of-type(1) div {
    width: -moz-fit-content;
    width: fit-content
}

table tr td:nth-of-type(1) div:after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #000
}

table tr td:nth-of-type(2) {
    width: 16%
}

table tr td:nth-of-type(3) {
    width: 51%
}

table tr th:nth-of-type(1) {
    width: 33%
}

table tr th:nth-of-type(2) {
    width: 16%
}

table tr th:nth-of-type(3) {
    width: 51%
}

table th {
    font-weight: 500;
    font-size: 18px;
    line-height: 100%;
    letter-spacing: 0;
    color: #000;
    text-align: start;
    padding: 10px
}

table td {
    font-weight: 400;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0;
    color: #000;
    padding: 10px
}

table td p {
    font-size: inherit;
    line-height: inherit;
    color: inherit;
    letter-spacing: inherit;
    font-family: inherit;
    font-weight: inherit;
    margin-bottom: 20px;
    max-width: 470px;
    width: 100%
}

table td p:last-child {
    margin-bottom: 0
}

@media (max-width: 600px) {
    h1, .h1 {
        font-size: 24px;
        margin-bottom: 30px
    }

    h2, .h2 {
        font-size: 28px
    }

    ul li, ol li {
        font-size: 14px
    }

    .subtitle {
        font-size: 16px
    }

    table td p br {
        display: none
    }
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0
}

body::-webkit-scrollbar {
    width: 6px;
    background-color: #263238
}

body::-webkit-scrollbar-thumb {
    border-radius: 20px;
    background-color: #ffb300
}

body.admin-bar header {
    top: 20px
}

main {
    min-height: 70vh
}

section {
    padding: 40px 0
}

.contact-socials {
    width: 100%;
    display: flex;
    justify-content: center
}

.contact-socials .social-link {
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 40px;
    height: 40px;
    display: flex
}

.contact-socials .social-link.social-link-telegram {
    background-image: url(../img/icons/telegram-ico.webp)
}

.contact-socials .social-link.social-link-max {
    background-image: url(../img/icons/max-ico.webp)
}

.contact-socials .social-link + .social-link {
    margin-left: 20px
}

@media (max-width: 600px) {
    section {
        padding: 60px 0
    }
}

.container {
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    max-width: 1450px;
    width: 100%;
    padding: 0 130px
}

.container-fluid {
    max-width: 100%;
    width: 100%
}

.d-flex {
    display: flex;
    flex-wrap: wrap
}

.justify-between {
    justify-content: space-between
}

.justify-end {
    justify-content: flex-end
}

.flex-column {
    flex-direction: column
}

@media (max-width: 1024px) {
    .container {
        padding: 0 20px
    }
}

.btn {
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 400;
    font-size: 16px;
    line-height: 150%;
    letter-spacing: .03em;
    padding: 0 35px;
    height: 59px;
    width: -moz-fit-content;
    width: fit-content;
    transition: .3s;
    cursor: pointer;
    border-radius: 15px
}

.btn-orange {
    background-color: #ffb300
}

.btn-orange:hover {
    background-color: #263238;
    color: #fff
}

.btn-bordered {
    padding: 0 10px;
    border: 1px solid #ffb300
}

.btn-bordered:hover {
    background-color: #ffb300
}

@media (max-width: 600px) {
    .btn {
        padding: 0 20px;
        font-size: 14px
    }
}

.footer-menu {
    display: flex;
    flex-direction: column;
    list-style: none;
    padding: 50px 0 0;
    margin: 0;
    width: 100%
}

.footer-menu li {
    margin-bottom: 13px;
    display: flex
}

.footer-menu li:last-child {
    margin-bottom: 0
}

.footer-menu li a {
    font-weight: 400;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0;
    color: #fff
}

.footer-menu li a:hover {
    color: #ffb300
}

@media (max-width: 600px) {
    .footer-menu {
        padding-top: 0
    }
}

.main-menu {
    padding: 0;
    display: flex;
    list-style: none;
    margin: 0
}

.main-menu li + li {
    margin-left: 40px
}

.main-menu li a {
    font-weight: 400;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0
}

.main-menu li a:hover {
    color: #ffb300
}

@media (max-width: 1024px) {
    .main-menu {
        flex-direction: column
    }

    .main-menu li {
        display: block;
        margin-bottom: 15px
    }

    .main-menu li:last-child {
        margin-bottom: 0
    }

    .main-menu li a {
        color: #fff
    }

    .main-menu li + li {
        margin-left: 0
    }
}

.accordion-block {
    width: 100%;
    max-width: 990px;
    margin: 0 auto;
    counter-reset: accordion-counter 0
}

.accordion-block .accordion-item {
    transition: all .3s;
    overflow: hidden;
    margin-bottom: 20px;
    counter-increment: accordion-counter
}

.accordion-block .accordion-item:last-of-type {
    margin-bottom: 0
}

.accordion-block .accordion-item .accordion-item-header {
    width: 100%;
    cursor: pointer;
    display: flex;
    margin-bottom: 0;
    transition: all ease .3s;
    position: relative;
    font-weight: 400;
    font-size: 18px;
    line-height: 150%;
    padding: 10px 0;
    letter-spacing: .03em;
    border-bottom: 1px solid rgba(0, 0, 0, 0);
    align-items: center
}

.accordion-block .accordion-item .accordion-item-header:before {
    content: counter(accordion-counter) ".";
    margin-right: 5px;
    align-self: flex-start
}

.accordion-block .accordion-item .accordion-item-header:after {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 12px;
    background-image: url(../img/icons/accordion-ico.svg);
    transition: .3s;
    flex: none;
    transform: rotate(45deg);
    margin-left: auto;
    padding-left: 10px
}

.accordion-block .accordion-item .accordion-item-content {
    overflow: hidden;
    width: 100%;
    transition: height .3s ease-in-out;
    height: 0
}

.accordion-block .accordion-item .accordion-item-content .accordion-content-wrapper {
    padding: 23px 0 0
}

.accordion-block .accordion-item .accordion-item-content .accordion-content-wrapper p {
    color: rgba(38, 50, 56, .6)
}

.accordion-block .accordion-item.active .accordion-item-header {
    border-color: rgba(38, 50, 56, .2);
    padding-bottom: 14px
}

.accordion-block .accordion-item.active .accordion-item-header:after {
    transform: rotate(0)
}

.accordion-block .accordion-item.active .accordion-item-content {
    transition: height .3s ease-in-out
}

@media (max-width: 600px) {
    .accordion-block .accordion-item {
        margin-bottom: 10px
    }

    .accordion-block .accordion-item .accordion-item-content .accordion-content-wrapper {
        padding: 15px 0 0
    }
}

.main-banner {
    padding: 150px 0 85px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover
}

.main-banner .banner-content {
    max-width: 626px;
    width: 100%
}

.main-banner .banner-content .subtitle {
    font-weight: 800;
    line-height: 100%;
    letter-spacing: 0;
    margin-bottom: 13px;
    color: #ffb300;
    text-align: start
}

.main-banner .banner-content .description {
    margin-bottom: 50px;
    width: 100%
}

.main-banner .banner-content .description p {
    font-size: 18px;
    line-height: 150%;
    margin-bottom: 20px
}

.main-banner .banner-content .description p:last-child {
    margin-bottom: 0
}

.main-banner .banner-content .benefits-list {
    padding: 0 0 0 30px;
    margin: 20px 0;
    list-style: none
}

.main-banner .banner-content .benefits-list li {
    position: relative;
    margin-bottom: 10px
}

.main-banner .banner-content .benefits-list li:before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url(../img/icons/checkmark.svg);
    position: absolute;
    left: -30px
}

.main-banner .banner-content .btn {
    margin-top: 50px
}

.technologies-section h2 {
    margin-bottom: 45px;
    text-align: center
}

.technologies-section .row-list {
    margin: 0 -7.5px;
    width: calc(100% + 15px);
    display: flex;
    flex-wrap: wrap;
    justify-content: center
}

.technologies-section .row-list .row-column {
    padding: 15px 7.5px 0;
    max-width: 335px;
    width: 100%
}

.technologies-section .card-wrapper {
    padding: 24px 20px 46px;
    background-color: #fff;
    width: 100%;
    box-shadow: 1px 5px 10.4px 0px rgba(31, 31, 31, .1411764706);
    height: 100%;
    border-radius: 15px;
    min-height: 185px;
    display: flex;
    flex-direction: column
}

.technologies-section .card-wrapper .card-title {
    font-weight: 700;
    font-size: 20px;
    line-height: 100%;
    letter-spacing: 0;
    margin-bottom: 30px
}

.technologies-section .card-wrapper .card-ico {
    width: 100%;
    margin-bottom: 12px
}

.technologies-section .card-wrapper .card-ico img {
    width: 40px;
    height: 40px;
    -o-object-fit: contain;
    object-fit: contain
}

.technologies-section .card-wrapper .card-description {
    width: 100%
}

.technologies-section .card-wrapper .card-description p {
    font-weight: 400;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0;
    color: rgba(38, 50, 56, .6)
}

.platform-section {
    background-color: #ebeff1;
    padding: 60px 0 88px
}

.platform-section h2 {
    margin-bottom: 30px;
    text-align: center
}

.platform-section .benefits-block {
    width: 100%;
    margin-top: 80px
}

.platform-section .benefits-block .subtitle {
    margin-bottom: 0
}

.platform-section .benefits-block .benefits-list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -22px;
    width: calc(100% + 44px);
    justify-content: center;
    counter-reset: benefit-counter
}

.platform-section .benefits-block .benefits-list .benefit-column {
    padding: 0 22px;
    max-width: 30%;
    width: 100%
}

.platform-section .benefits-block .benefits-list .benefit-column:nth-child(n+4) {
    margin-top: 110px
}

.platform-section .benefits-block .benefit-item {
    counter-increment: benefit-counter;
    position: relative
}

.platform-section .benefits-block .benefit-item:before {
    content: counter(benefit-counter, decimal-leading-zero) " ";
    font-weight: 700;
    font-size: 96px;
    line-height: 150%;
    letter-spacing: .03em;
    color: rgba(255, 179, 0, .2);
    position: absolute;
    left: -60px;
    top: -80px;
    vertical-align: top
}

.platform-section .benefits-block .benefit-item .benefit-title {
    font-weight: 500;
    font-size: 18px;
    line-height: 150%;
    letter-spacing: 0;
    margin-bottom: 10px;
    width: 100%
}

.platform-section .benefits-block .benefit-item .benefit-description {
    width: 100%
}

.platform-section .modules-block {
    width: 100%;
    margin-top: 30px
}

.platform-section .modules-block .modules-list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -40px;
    width: calc(100% + 80px);
    justify-content: center
}

.platform-section .modules-block .modules-list .modules-column {
    padding: 0 40px 32px;
    max-width: 25%;
    width: 100%
}

.platform-section .modules-block .modules-list .modules-column:nth-child(n+5) {
    max-width: 27%
}

.platform-section .modules-block .module-item {
    padding: 24px 18px;
    background-color: #fff;
    border: 1px solid;
    border-image-source: linear-gradient(119.16deg, rgba(255, 255, 255, 0.08) -7.57%, rgba(255, 255, 255, 0) 26.1%, rgba(255, 255, 255, 0.05) 43.13%, rgba(255, 255, 255, 0) 104.68%);
    border-radius: 15px;
    height: 100%;
    width: 100%
}

.platform-section .modules-block .module-item .module-ico {
    width: 100%;
    margin-bottom: 18px
}

.platform-section .modules-block .module-item .module-ico img {
    width: 40px;
    height: 40px;
    -o-object-fit: contain;
    object-fit: contain
}

.platform-section .modules-block .module-item .module-title {
    font-weight: 600;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0;
    margin-bottom: 18px
}

.platform-section .modules-block .module-item .module-description {
    width: 100%
}

.platform-section .modules-block .module-item .module-description p {
    color: rgba(38, 50, 56, .6)
}

.advantages-section h2 {
    margin-bottom: 70px;
    text-align: center
}

.solutions-section {
    background-color: #ebeff1
}

.solutions-section h2 {
    text-align: center;
    margin-bottom: 34px
}

.solutions-section .content-block {
    max-width: 600px;
    width: 100%;
    margin: 0 auto 60px
}

.solutions-section .content-block p {
    margin-bottom: 20px
}

.solutions-section .content-block p:last-child {
    margin-bottom: 0
}

.solutions-section .solution-cards {
    display: grid;
    grid-template-columns:repeat(2, 1fr);
    grid-gap: 10px;
    width: 100%
}

.solutions-section .solution-cards .card-wrapper {
    background-color: #fff;
    height: 100%;
    border-radius: 15px;
    box-shadow: 1px 5px 10.4px 0px rgba(31, 31, 31, .1411764706);
    padding: 30px 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

.solutions-section .solution-cards .card-wrapper .card-content .card-ico {
    width: 100%;
    margin-bottom: 15px
}

.solutions-section .solution-cards .card-wrapper .card-content .card-ico img {
    width: 48px;
    height: 48px;
    -o-object-fit: contain;
    object-fit: contain
}

.solutions-section .solution-cards .card-wrapper .card-content .card-title {
    font-weight: 600;
    font-size: 16px;
    line-height: 150%;
    letter-spacing: .03em;
    margin-bottom: 15px;
    width: 100%
}

.solutions-section .solution-cards .card-wrapper .card-content .card-description {
    width: 100%;
    margin-bottom: 15px
}

.solutions-section .solution-cards .card-wrapper .card-content .card-description p {
    margin-bottom: 20px;
    width: 100%
}

.solutions-section .solution-cards .card-wrapper .card-content .card-description p:last-child {
    margin-bottom: 0
}

.solutions-section .solution-cards .card-wrapper .card-content .card-description ul, .solutions-section .solution-cards .card-wrapper .card-content .card-description ol {
    padding-left: 20px;
    margin: 20px 0;
    list-style: disc
}

.solutions-section .solution-cards .card-wrapper .card-content .card-description ul li, .solutions-section .solution-cards .card-wrapper .card-content .card-description ol li {
    font-weight: 400;
    font-size: 14px;
    line-height: 150%;
    letter-spacing: .03em;
    margin-bottom: 0
}

.solutions-section .solution-cards .card-wrapper .card-content .card-description ul li:before, .solutions-section .solution-cards .card-wrapper .card-content .card-description ol li:before {
    display: none
}

.solutions-section .solution-cards .card-wrapper .card-content .card-description ul:last-child, .solutions-section .solution-cards .card-wrapper .card-content .card-description ol:last-child {
    margin-bottom: 0
}

.solutions-section .solution-cards .card-wrapper .card-link {
    font-weight: 400;
    font-size: 14px;
    line-height: 150%;
    letter-spacing: .03em;
    text-decoration: underline;
    text-decoration-style: solid
}

.solutions-section .solution-cards .card-wrapper .card-link:hover {
    color: #ffb300
}

.contacts-section {
    background-color: #ebeff1;
    padding: 40px 0
}

.contacts-section h2 {
    text-align: center;
    margin-bottom: 50px
}

.contacts-section .contact-links {
    width: 100%;
    margin-bottom: 30px;
    display: flex;
    flex-direction: column;
    align-items: center
}

.contacts-section .contact-links a {
    font-weight: 400;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: .03em;
    margin-bottom: 20px;
    display: flex;
    width: -moz-fit-content;
    width: fit-content
}

.contacts-section .contact-links a:last-child {
    margin-bottom: 0
}

.contacts-section .contact-links a:hover {
    color: #ffb300
}

@media (max-width: 1340px) {
    .platform-section .modules-block .modules-list {
        margin: 0 -20px;
        width: calc(100% + 40px)
    }

    .platform-section .modules-block .modules-list .modules-column {
        padding: 0 20px 40px
    }
}

@media (max-width: 1024px) {
    .main-banner .banner-content {
        margin: 0 auto
    }

    .main-banner .banner-content .subtitle {
        text-align: center
    }

    .main-banner .banner-content h1 {
        text-align: center
    }

    .main-banner .banner-content .description p {
        text-align: center
    }

    .main-banner .banner-content .btn {
        margin: 50px auto 0
    }

    .platform-section .benefits-block .benefits-list .benefit-column {
        max-width: 50%;
        margin-bottom: 80px
    }

    .platform-section .benefits-block .benefits-list .benefit-column:nth-child(n+4) {
        margin-top: 0
    }

    .platform-section .benefits-block .benefit-item:before {
        left: 20%
    }

    .platform-section .modules-block {
        margin-top: 60px
    }

    .platform-section .modules-block .modules-list .modules-column {
        max-width: 50%
    }

    .platform-section .modules-block .modules-list .modules-column:nth-child(n+5) {
        max-width: 50%
    }

    .solutions-section .solution-cards {
        grid-template-columns:1fr
    }
}

@media (max-width: 600px) {
    .main-banner {
        padding: 100px 0 60px
    }

    .main-banner .banner-content .description p {
        font-size: 16px
    }

    .main-banner .banner-content .btn {
        text-align: center
    }

    .technologies-section .card-wrapper {
        padding: 24px 20px
    }

    .technologies-section .card-wrapper .card-description p {
        line-height: 22px
    }

    .platform-section {
        padding: 60px 0
    }

    .platform-section .subtitle {
        font-size: 20px
    }

    .platform-section .benefits-block .benefits-list .benefit-column {
        max-width: 100%
    }

    .platform-section .benefits-block .benefit-item {
        max-width: 300px;
        margin: 0 auto
    }

    .platform-section .benefits-block .benefit-item:before {
        content: counter(benefit-counter) " "
    }

    .platform-section .benefits-block .benefit-item .benefit-description p {
        font-size: 12px
    }

    .platform-section .modules-block .modules-list .modules-column {
        max-width: 100%;
        padding: 0 20px 20px
    }

    .platform-section .modules-block .modules-list .modules-column:nth-child(n+5) {
        max-width: 100%
    }

    .solutions-section .content-block p {
        text-align: center;
        font-size: 18px
    }

    .contacts-section {
        background-color: #ebeff1;
        padding: 40px 0
    }

    .contacts-section .contact-links a:nth-of-type(1) {
        font-size: 26px;
        margin-bottom: 30px
    }
}

.footer {
    background-color: #263238;
    padding: 56px 100px
}

.footer .footer-row {
    display: flex;
    width: 100%
}

.footer .footer-row .footer-column {
    width: 33%
}

.footer .footer-row .footer-column:nth-of-type(2) {
    display: flex;
    justify-content: center
}

.footer .footer-row .footer-column:nth-of-type(3) {
    padding-top: 20px;
    padding-left: 5vw
}

.footer .logo {
    width: 100%;
    margin-bottom: 24px
}

.footer .logo img {
    max-width: 65px;
    width: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.footer .footer-description p {
    line-height: 160%;
    letter-spacing: 0;
    color: #fff
}

.footer .footer-contact-links {
    width: 100%;
    display: flex;
    flex-direction: column;
    margin-bottom: 20px
}

.footer .footer-contact-links a {
    font-weight: 400;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: .03em;
    color: #fff;
    display: flex;
    width: -moz-fit-content;
    width: fit-content;
    margin-bottom: 20px
}

.footer .footer-contact-links a:last-child {
    margin-bottom: 0
}

.footer .footer-contact-links a:hover {
    color: #ffb300
}

.footer .footer-socials {
    width: 100%;
    display: flex
}

.footer .footer-socials .social-link {
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 24px;
    height: 24px;
    display: flex
}

.footer .footer-socials .social-link.social-link-telegram {
    background-image: url(../img/icons/telegram-ico.webp)
}

.footer .footer-socials .social-link.social-link-max {
    background-image: url(../img/icons/max-ico.webp)
}

.footer .footer-socials .social-link + .social-link {
    margin-left: 20px
}

.footer .footer-copy {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-top: 80px
}

.footer .footer-copy p {
    font-weight: 400;
    font-size: 12px;
    line-height: 100%;
    letter-spacing: 0;
    color: #fff
}

.footer .footer-copy-mobile {
    display: none
}

@media (max-width: 1024px) {
    .footer {
        padding: 40px 0
    }
}

@media (max-width: 600px) {
    .footer .footer-row {
        flex-wrap: wrap
    }

    .footer .footer-row .footer-column {
        width: 100%
    }

    .footer .footer-row .footer-column:nth-of-type(2) {
        justify-content: flex-start;
        margin: 40px 0
    }

    .footer .footer-row .footer-column:nth-of-type(3) {
        padding-left: 0
    }

    .footer .footer-copy-pc {
        display: none
    }

    .footer .footer-copy-mobile {
        display: flex;
        justify-content: flex-start;
        margin-top: 30px
    }
}

.header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
    background-color: rgba(0, 0, 0, 0);
    padding: 40px 0;
    transition: .3s
}

.header .header-wrapper {
    display: flex;
    align-items: center;
    width: 100%;
    justify-content: space-between
}

.header.scrolled {
    background-color: #fff;
    padding: 10px 0;
    box-shadow: 1px 5px 10px 0px rgba(31, 31, 31, .2)
}

.header .logo img {
    max-width: 90px;
    width: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.header .mobile-menu-button {
    display: none
}

.header .close-menu-button {
    display: none
}

@media (max-width: 1024px) {
    .header .mobile-menu-button {
        display: flex;
        flex-direction: column;
        width: 22px;
        background-color: rgba(0, 0, 0, 0);
        border: none;
        padding: 0;
        transition: .3s
    }

    .header .mobile-menu-button .line {
        display: flex;
        background-color: #263238;
        height: 2px;
        width: 100%;
        transition: .3s
    }

    .header .mobile-menu-button .line:nth-of-type(2) {
        margin: 4px 0 4px auto;
        width: 80%
    }

    .header .close-menu-button {
        display: flex;
        flex-direction: column;
        background-color: rgba(0, 0, 0, 0);
        border: none;
        padding: 0;
        width: 22px;
        position: absolute;
        top: 30px;
        right: 20px
    }

    .header .close-menu-button .line {
        display: flex;
        height: 2px;
        background-color: #fff;
        width: 100%
    }

    .header .close-menu-button .line:nth-of-type(1) {
        transform: rotate(45deg) translate(7px, 6px)
    }

    .header .close-menu-button .line:nth-of-type(2) {
        transform: rotate(-45deg) translate(-5px, 5px)
    }

    .header .header-nav {
        position: fixed;
        right: 0;
        top: 0;
        padding: 48px 40px 38px;
        background-color: #263238;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition: .3s;
        transform: translateX(100%);
        min-height: 100%;
        min-width: 30%
    }

    .header .header-nav.show {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translateX(0)
    }
}

@media (max-width: 600px) {
    .header {
        padding: 20px 0
    }

    .header .logo img {
        max-width: 60px
    }
}

.banner-service .banner-content {
    max-width: 100%
}

.banner-service .banner-content h1 {
    margin-bottom: 42px
}

.banner-service .banner-content .description {
    margin-bottom: 34px
}

.banner-service .banner-content .description p {
    max-width: 800px;
    width: 100%
}

.banner-service .banner-content .banner-notice {
    width: 100%;
    margin-bottom: 30px;
    font-weight: 400;
    font-size: 18px;
    line-height: 100%;
    letter-spacing: 0
}

.banner-service .banner-content .banner-buttons {
    display: flex;
    width: 100%;
    align-items: center
}

.banner-service .banner-content .banner-buttons .btn-orange {
    padding: 0 20px;
    font-size: 18px;
    height: 60px
}

.banner-service .banner-content .banner-buttons .btn + .btn {
    margin-left: 30px
}

.table-section h2 {
    margin-bottom: 75px;
    text-align: center
}

.table-section .table-wrapper {
    width: 100%
}

.contacts-form-section {
    padding: 0 0 80px
}

.contacts-form-section .contact-row {
    display: flex;
    width: 100%;
    padding: 0 100px
}

.contacts-form-section .contact-row .contact-column {
    width: 50%
}

.contacts-form-section .contact-row .contact-column:nth-of-type(1) {
    padding-right: 100px
}

.contacts-form-section h2, .contacts-form-section .h2 {
    font-family: "Inter";
    font-size: 24px;
    line-height: 100%;
    letter-spacing: 0;
    color: #000
}

.contacts-form-section .h2 {
    margin-bottom: 20px
}

.contacts-form-section h2 {
    margin-bottom: 75px
}

.contacts-form-section .description {
    margin-bottom: 40px;
    width: 100%
}

.contacts-form-section .description p {
    font-size: 16px;
    line-height: 100%
}

.contacts-form-section .contact-items .contact-item {
    width: 100%;
    margin-bottom: 40px
}

.contacts-form-section .contact-items .contact-item:last-child {
    margin-bottom: 0
}

.contacts-form-section .contact-items .contact-item .contact-label {
    width: 100%;
    font-weight: 400;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: .03em;
    margin-bottom: 10px;
    color: #000
}

.contacts-form-section .contact-items .contact-item .contact-link {
    font-weight: 400;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: .03em;
    color: #000
}

.contacts-form-section .contact-socials-block {
    width: 100%;
    margin-top: 50px
}

.contacts-form-section .contact-socials-block .title {
    font-weight: 400;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: .03em;
    margin-bottom: 20px;
    width: 100%
}

.contacts-form-section .contact-socials-block .contact-socials {
    justify-content: flex-start
}

.contacts-form-section .form-wrapper {
    width: 100%
}

.contacts-form-section .form-wrapper form {
    width: 100%;
    max-width: 100%;
    display: flex;
    flex-direction: column
}

.contacts-form-section .form-wrapper form .input-item {
    width: 100%;
    margin-bottom: 16px
}

.contacts-form-section .form-wrapper form .input-item:last-child {
    margin-bottom: 0
}

.contacts-form-section .form-wrapper form input {
    height: 48px;
    padding: 0 10px;
    font-weight: 400;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0;
    color: #000;
    border-radius: 15px;
    border: 1px solid rgba(0, 0, 0, .168627451);
    max-width: 100%;
    width: 100%
}

.contacts-form-section .form-wrapper form input::-moz-placeholder {
    font-size: inherit;
    letter-spacing: inherit;
    font-family: inherit;
    line-height: inherit;
    color: rgba(0, 0, 0, .3215686275);
    font-weight: inherit
}

.contacts-form-section .form-wrapper form input::placeholder {
    font-size: inherit;
    letter-spacing: inherit;
    font-family: inherit;
    line-height: inherit;
    color: rgba(0, 0, 0, .3215686275);
    font-weight: inherit
}

.contacts-form-section .form-wrapper form textarea {
    color: #000;
    border-radius: 15px;
    border: 1px solid rgba(0, 0, 0, .168627451);
    resize: none;
    padding: 10px;
    height: 112px;
    max-width: 100%;
    width: 100%
}

.contacts-form-section .form-wrapper form textarea::-moz-placeholder {
    font-size: inherit;
    letter-spacing: inherit;
    font-family: inherit;
    line-height: inherit;
    color: rgba(0, 0, 0, .3215686275);
    font-weight: inherit
}

.contacts-form-section .form-wrapper form textarea::placeholder {
    font-size: inherit;
    letter-spacing: inherit;
    font-family: inherit;
    line-height: inherit;
    color: rgba(0, 0, 0, .3215686275);
    font-weight: inherit
}

.contacts-form-section .form-wrapper form input[type=submit] {
    height: 48px;
    border-radius: 15px;
    background-color: #000;
    color: #fff;
    transition: .3s;
    font-weight: 400;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0;
    cursor: pointer
}

.contacts-form-section .form-wrapper form input[type=submit]:hover {
    background-color: #ffb300
}

.contacts-form-section .form-wrapper form .form-notice {
    padding: 2px 12px 0;
    font-size: 10px;
    line-height: 100%;
    letter-spacing: 0;
    color: #000
}

@media (max-width: 1024px) {
    .banner-service .banner-content .banner-buttons {
        flex-direction: column
    }

    .banner-service .banner-content .banner-buttons .btn + .btn {
        margin-left: auto;
        margin-top: 30px
    }

    .banner-service .banner-content .btn-orange {
        margin: 0
    }

    .contacts-form-section h2, .contacts-form-section .h2 {
        text-align: center;
        font-size: 20px
    }

    .contacts-form-section h2 {
        margin-bottom: 30px
    }

    .contacts-form-section .h2 {
        margin-bottom: 30px
    }

    .contacts-form-section .description p {
        text-align: center
    }

    .contacts-form-section .contact-row {
        padding: 0;
        flex-wrap: wrap
    }

    .contacts-form-section .contact-row .contact-column {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center
    }

    .contacts-form-section .contact-row .contact-column:nth-of-type(1) {
        padding-right: 0
    }

    .contacts-form-section .contact-items .contact-item .contact-label {
        text-align: center
    }

    .contacts-form-section .contact-socials-block {
        margin-bottom: 50px
    }

    .contacts-form-section .contact-socials-block .title {
        text-align: center
    }

    .contacts-form-section .contact-socials-block .contact-socials {
        justify-content: center
    }
}

@media (max-width: 600px) {
    .table-section h2 {
        padding: 0 20px
    }

    .table-section .container {
        padding: 0
    }

    .table-section .table-wrapper {
        overflow: auto
    }

    .table-section table {
        min-width: 600px
    }

    .contacts-form-section .form-wrapper form .form-notice br {
        display: none
    }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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RSxzQkFJRywwREFDRSxpQkFDQSxnQkFPUCw0Q0FDRSxTQVNKLHFEQUNFLGtCQUNBLGVBR0YsMEJBQ0UsbUJBR0YsMkJBQ0UsbUJBS0Esc0NBQ0Usa0JBS0osb0NBQ0UsVUFDQSxlQUVBLG9EQUNFLFdBQ0EsYUFDQSxzQkFDQSxtQkFFQSxtRUFDRSxnQkFXRixtRUFDRSxrQkFPTiw4Q0FDRSxtQkFFQSxxREFDRSxrQkFHRiwrREFDQyx3QkFTUCx5QkFHSSxrQkFDRSxlQUdGLDBCQUNFLFVBR0YsOEJBQ0UsY0FHRixxQkFDRSxnQkFhSSwwREFDRSxjIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vd2VicGFjay1wcm9qZWN0Ly4vc291cmNlL3Njc3MvYmFzZS9fcmVzZXQuc2NzcyIsIndlYnBhY2s6Ly93ZWJwYWNrLXByb2plY3QvLi9zb3VyY2Uvc2Nzcy9iYXNlL190eXBvZ3JhcGh5LnNjc3MiLCJ3ZWJwYWNrOi8vd2VicGFjay1wcm9qZWN0Ly4vc291cmNlL3Njc3MvYWJzdHJhY3QvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovL3dlYnBhY2stcHJvamVjdC8uL3NvdXJjZS9zY3NzL2Jhc2UvX2Jhc2Uuc2NzcyIsIndlYnBhY2s6Ly93ZWJwYWNrLXByb2plY3QvLi9zb3VyY2Uvc2Nzcy9iYXNlL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vd2VicGFjay1wcm9qZWN0Ly4vc291cmNlL3Njc3MvY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovL3dlYnBhY2stcHJvamVjdC8uL3NvdXJjZS9zY3NzL2NvbXBvbmVudHMvX2Zvb3Rlci1tZW51LnNjc3MiLCJ3ZWJwYWNrOi8vd2VicGFjay1wcm9qZWN0Ly4vc291cmNlL3Njc3MvY29tcG9uZW50cy9fbWFpbi1tZW51LnNjc3MiLCJ3ZWJwYWNrOi8vd2VicGFjay1wcm9qZWN0Ly4vc291cmNlL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCJ3ZWJwYWNrOi8vd2VicGFjay1wcm9qZWN0Ly4vc291cmNlL3Njc3MvbGF5b3V0L19ob21lLnNjc3MiLCJ3ZWJwYWNrOi8vd2VicGFjay1wcm9qZWN0Ly4vc291cmNlL3Njc3MvbGF5b3V0L19mb290ZXIuc2NzcyIsIndlYnBhY2s6Ly93ZWJwYWNrLXByb2plY3QvLi9zb3VyY2Uvc2Nzcy9sYXlvdXQvX2hlYWRlci5zY3NzIiwid2VicGFjazovL3dlYnBhY2stcHJvamVjdC8uL3NvdXJjZS9zY3NzL2xheW91dC9fc2luZ2xlLXNlcnZpY2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBCb3ggc2l6aW5nIHJ1bGVzICovXG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gKi9cbmJvZHksXG5oMSxcbmgyLFxuaDMsXG5oNCxcbnAsXG5maWd1cmUsXG5ibG9ja3F1b3RlLFxuZGwsXG5kZCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogUmVtb3ZlIGxpc3Qgc3R5bGVzIG9uIHVsLCBvbCBlbGVtZW50cyB3aXRoIGEgbGlzdCByb2xlLCB3aGljaCBzdWdnZXN0cyBkZWZhdWx0IHN0eWxpbmcgd2lsbCBiZSByZW1vdmVkICovXG51bFtyb2xlPVwibGlzdFwiXSxcbm9sW3JvbGU9XCJsaXN0XCJdIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLyogU2V0IGNvcmUgcm9vdCBkZWZhdWx0cyAqL1xuaHRtbDpmb2N1cy13aXRoaW4ge1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbn1cblxuLyogU2V0IGNvcmUgYm9keSBkZWZhdWx0cyAqL1xuYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVTcGVlZDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLyogQSBlbGVtZW50cyB0aGF0IGRvbid0IGhhdmUgYSBjbGFzcyBnZXQgZGVmYXVsdCBzdHlsZXMgKi9cbmE6bm90KFtjbGFzc10pIHtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBhdXRvO1xufVxuXG4vKiBNYWtlIGltYWdlcyBlYXNpZXIgdG8gd29yayB3aXRoICovXG5pbWcsXG5waWN0dXJlIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogSW5oZXJpdCBmb250cyBmb3IgaW5wdXRzIGFuZCBidXR0b25zICovXG5pbnB1dCxcbmJ1dHRvbixcbnRleHRhcmVhLFxuc2VsZWN0IHtcbiAgZm9udDogaW5oZXJpdDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLyogUmVtb3ZlIGFsbCBhbmltYXRpb25zIGFuZCB0cmFuc2l0aW9ucyBmb3IgcGVvcGxlIHRoYXQgcHJlZmVyIG5vdCB0byBzZWUgdGhlbSAqL1xuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICBodG1sOmZvY3VzLXdpdGhpbiB7XG4gICBzY3JvbGwtYmVoYXZpb3I6IGF1dG87XG4gIH1cbiAgXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgIHNjcm9sbC1iZWhhdmlvcjogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIqIHtcclxuICBmb250LWZhbWlseTogJC0tZm9udC1kZWZhdWx0O1xyXG4gIGNvbG9yOiAkLS1jb2xvci1kZWZhdWx0O1xyXG59XHJcblxyXG5hIHtcclxuICB0cmFuc2l0aW9uOiAwLjNzO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuXHJcbnAge1xyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxNTAlO1xyXG4gIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XHJcbn1cclxuXHJcbnVsLCBvbCB7XHJcblxyXG4gIGxpIHtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMTUwJTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XHJcblxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxufVxyXG5cclxuaDEsIC5oMSB7XHJcbiAgZm9udC1mYW1pbHk6ICQtLWZvbnQtc2Vjb25kO1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgZm9udC1zaXplOiAzNnB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxMjAlO1xyXG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDNlbTtcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuaDIsIC5oMiB7XHJcbiAgZm9udC1mYW1pbHk6ICQtLWZvbnQtc2Vjb25kO1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgZm9udC1zaXplOiA0MHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxNTAlO1xyXG4gIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XHJcbiAgY29sb3I6ICQtLWNvbG9yLXNlY29uZDtcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnRpdGxlLWRlc2NyaXB0aW9uIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXJnaW4tYm90dG9tOiA3MHB4O1xyXG5cclxuICBwIHtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDczNnB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgfVxyXG5cclxufVxyXG5cclxuLnN1YnRpdGxlIHtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIGZvbnQtc2l6ZTogMjRweDtcclxuICBsaW5lLWhlaWdodDogMTUwJTtcclxuICBsZXR0ZXItc3BhY2luZzogMC4wM2VtO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXJnaW4tYm90dG9tOiA3MHB4O1xyXG59XHJcblxyXG4uc29jaWFsLWxpbmsge1xyXG4gIHRyYW5zaXRpb246IDAuM3M7XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgb3BhY2l0eTogMC43O1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbnRhYmxlIHtcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgYm9yZGVyLXNwYWNpbmc6IDEwcHg7XHJcblxyXG4gIHRkLCB0aCB7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMDAwMDAzMztcclxuICB9XHJcblxyXG4gIHRyIHtcclxuXHJcbiAgICB0ZCB7XHJcblxyXG4gICAgICAmOm50aC1vZi10eXBlKDEpIHtcclxuICAgICAgICB3aWR0aDogMzMlO1xyXG5cclxuICAgICAgIGRpdiB7XHJcbiAgICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuXHJcbiAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJC0tY29sb3ItYmxhY2s7XHJcbiAgICAgICAgIH1cclxuICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6bnRoLW9mLXR5cGUoMikge1xyXG4gICAgICAgIHdpZHRoOiAxNiU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6bnRoLW9mLXR5cGUoMykge1xyXG4gICAgICAgIHdpZHRoOiA1MSU7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgdGgge1xyXG5cclxuICAgICAgJjpudGgtb2YtdHlwZSgxKSB7XHJcbiAgICAgICAgd2lkdGg6IDMzJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpudGgtb2YtdHlwZSgyKSB7XHJcbiAgICAgICAgd2lkdGg6IDE2JTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpudGgtb2YtdHlwZSgzKSB7XHJcbiAgICAgICAgd2lkdGg6IDUxJTtcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICB0aCB7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEwMCU7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgIGNvbG9yOiAkLS1jb2xvci1ibGFjaztcclxuICAgIHRleHQtYWxpZ246IHN0YXJ0O1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICB9XHJcblxyXG4gIHRkIHtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMTAwJTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgY29sb3I6ICQtLWNvbG9yLWJsYWNrO1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuXHJcbiAgICBwIHtcclxuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxuICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xyXG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcclxuICAgICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgIG1heC13aWR0aDogNDcwcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcclxuICBoMSwgLmgxIHtcclxuICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgfVxyXG5cclxuICBoMiwgLmgyIHtcclxuICAgIGZvbnQtc2l6ZTogMjhweDtcclxuICB9XHJcblxyXG4gIHVsLCBvbCB7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLnN1YnRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICB9XHJcblxyXG4gIHRhYmxlIHtcclxuXHJcbiAgICB0ZCB7XHJcblxyXG4gICAgICBwIHtcclxuXHJcbiAgICAgICAgYnIge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG59XHJcbiIsIi8vXG4vLyBQcm9qZWN0IFZhcmlhYmxlc1xuLy9cblxuLyogZm9udHMgKi9cbiQtLWZvbnQtZGVmYXVsdDogXCJJbnRlclwiO1xuJC0tZm9udC1zZWNvbmQ6IFwiRXhvIDJcIjtcblxuLyogY29sb3JzICovXG4kLS1jb2xvci1kZWZhdWx0OiAjMjYzMjM4O1xuJC0tY29sb3ItZGVmYXVsdC1vcGFjaXR5OiAjMjYzMjM4OTk7XG4kLS1jb2xvci1ibGFjazogIzAwMDAwMDtcbiQtLWNvbG9yLXdoaXRlOiAjZmZmZmZmO1xuJC0tY29sb3Itc2Vjb25kOiAjRkZCMzAwO1xuJC0tY29sb3Itc2Vjb25kLW9wYWNpdHk6ICNGRkIzMDAzMztcbiQtLWNvbG9yLWdyZXktYmFjazogI0VCRUZGMTtcbiQtLWNvbG9yLWJvcmRlcjogI0Y3Q0M2RjtcbiIsIi5zci1vbmx5IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgd2lkdGg6IDFweDtcclxuICBoZWlnaHQ6IDFweDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogLTFweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICBib3JkZXI6IDA7XHJcbn1cclxuXHJcbmJvZHkge1xyXG5cclxuICAmOjotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgICB3aWR0aDogNnB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJC0tY29sb3ItZGVmYXVsdDtcclxuICB9XHJcblxyXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcclxuXHJcbiAgfVxyXG5cclxuICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJC0tY29sb3Itc2Vjb25kO1xyXG4gIH1cclxufVxyXG5cclxuYm9keS5hZG1pbi1iYXIge1xyXG4gIGhlYWRlciB7XHJcbiAgICB0b3A6IDIwcHg7XHJcbiAgfVxyXG59XHJcblxyXG5cclxubWFpbiB7XHJcbiAgbWluLWhlaWdodDogNzB2aDtcclxufVxyXG5cclxuc2VjdGlvbiB7XHJcbiAgcGFkZGluZzogMTIwcHggMDtcclxufVxyXG5cclxuLmNvbnRhY3Qtc29jaWFscyB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgLnNvY2lhbC1saW5rIHtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICB3aWR0aDogNDBweDtcclxuICAgIGhlaWdodDogNDBweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgJi5zb2NpYWwtbGluay10ZWxlZ3JhbSB7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbnMvdGVsZWdyYW0taWNvLndlYnApO1xyXG4gICAgfVxyXG5cclxuICAgICYuc29jaWFsLWxpbmstbWF4IHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29ucy9tYXgtaWNvLndlYnApO1xyXG4gICAgfVxyXG5cclxuICAgICYgKyAuc29jaWFsLWxpbmsge1xyXG4gICAgICBtYXJnaW4tbGVmdDogMjBweDtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XHJcblxyXG4gIHNlY3Rpb24ge1xyXG4gICAgcGFkZGluZzogNjBweCAwO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiLmNvbnRhaW5lciB7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgbWF4LXdpZHRoOiAxNDUwcHg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcGFkZGluZzogMCAxMzBweDtcclxufVxyXG5cclxuLmNvbnRhaW5lci1mbHVpZCB7XHJcbiAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uZC1mbGV4IHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxufVxyXG4uanVzdGlmeS1iZXR3ZWVuIHtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbn1cclxuXHJcbi5qdXN0aWZ5LWVuZCB7XHJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxufVxyXG5cclxuLmZsZXgtY29sdW1uIHtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG5cclxuXHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgLmNvbnRhaW5lciB7XHJcbiAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuIiwiLmJ0biB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxNTAlO1xyXG4gIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XHJcbiAgcGFkZGluZzogMCAzNXB4O1xyXG4gIGhlaWdodDogNTlweDtcclxuICB3aWR0aDogZml0LWNvbnRlbnQ7XHJcbiAgdHJhbnNpdGlvbjogMC4zcztcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcclxufVxyXG5cclxuLmJ0bi1vcmFuZ2Uge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICQtLWNvbG9yLXNlY29uZDtcclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkLS1jb2xvci1kZWZhdWx0O1xyXG4gICAgY29sb3I6ICQtLWNvbG9yLXdoaXRlO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbi5idG4tYm9yZGVyZWQge1xyXG4gIHBhZGRpbmc6IDAgMTBweDtcclxuICBib3JkZXI6IDFweCBzb2xpZCAkLS1jb2xvci1zZWNvbmQ7XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJC0tY29sb3Itc2Vjb25kO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xyXG4gIC5idG4ge1xyXG4gICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gIH1cclxufVxyXG4iLCIuZm9vdGVyLW1lbnUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiA1MHB4IDAgMDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcblxuICBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTNweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgIGNvbG9yOiAkLS1jb2xvci13aGl0ZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkLS1jb2xvci1zZWNvbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gIC5mb290ZXItbWVudSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cbiIsIi5tYWluLW1lbnUge1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIG1hcmdpbjogMDtcclxuXHJcbiAgbGkge1xyXG5cclxuICAgICsgbGkge1xyXG4gICAgICBtYXJnaW4tbGVmdDogNDBweDtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMTAwJTtcclxuICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJC0tY29sb3Itc2Vjb25kO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gIC5tYWluLW1lbnUge1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcbiAgICBsaSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG5cclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBhIHtcclxuICAgICAgICBjb2xvcjogJC0tY29sb3Itd2hpdGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYgKyBsaSB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gIH1cclxufVxyXG4iLCIuYWNjb3JkaW9uLWJsb2NrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogOTkwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBjb3VudGVyLXJlc2V0OiBhY2NvcmRpb24tY291bnRlciAwO1xuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGNvdW50ZXItaW5jcmVtZW50OiBhY2NvcmRpb24tY291bnRlcjtcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLmFjY29yZGlvbi1pdGVtLWhlYWRlciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIGVhc2UgMC4zcztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIoYWNjb3JkaW9uLWNvdW50ZXIpIFwiLlwiO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgIH1cblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTJweDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29ucy9hY2NvcmRpb24taWNvLnN2Zyk7XG4gICAgICAgIHRyYW5zaXRpb246IDAuM3M7XG4gICAgICAgIGZsZXg6IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5hY2NvcmRpb24taXRlbS1jb250ZW50IHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgaGVpZ2h0OiAwO1xuXG4gICAgICAuYWNjb3JkaW9uLWNvbnRlbnQtd3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmc6IDIzcHggMCAwO1xuXG4gICAgICAgIHAge1xuXG4gICAgICAgICAgY29sb3I6ICQtLWNvbG9yLWRlZmF1bHQtb3BhY2l0eTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAuYWNjb3JkaW9uLWl0ZW0uYWN0aXZlIHtcblxuICAgIC5hY2NvcmRpb24taXRlbS1oZWFkZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMjYzMjM4MzM7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTRweDtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hY2NvcmRpb24taXRlbS1jb250ZW50IHtcbiAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgfVxuXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xuICAuYWNjb3JkaW9uLWJsb2NrIHtcblxuICAgIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAuYWNjb3JkaW9uLWl0ZW0taGVhZGVyIHtcblxuICAgICAgfVxuXG4gICAgICAuYWNjb3JkaW9uLWl0ZW0tY29udGVudCB7XG5cbiAgICAgICAgLmFjY29yZGlvbi1jb250ZW50LXdyYXBwZXIge1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMCAwO1xuXG4gICAgICAgICAgcCB7XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG4iLCIubWFpbi1iYW5uZXIge1xuICBwYWRkaW5nOiAxNTBweCAwIDg1cHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuICAuYmFubmVyLWNvbnRlbnQge1xuICAgIG1heC13aWR0aDogNjI2cHg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAuc3VidGl0bGUge1xuICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxM3B4O1xuICAgICAgY29sb3I6ICQtLWNvbG9yLXNlY29uZDtcbiAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuYmVuZWZpdHMtbGlzdCB7XG4gICAgICBwYWRkaW5nOiAwIDAgMCAzMHB4O1xuICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29ucy9jaGVja21hcmsuc3ZnKTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogLTMwcHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmJ0biB7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgIH1cblxuICB9XG5cbn1cblxuLnRlY2hub2xvZ2llcy1zZWN0aW9uIHtcblxuICBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAucm93LWxpc3Qge1xuICAgIG1hcmdpbjogMCAtNy41cHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDE1cHgpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgLnJvdy1jb2x1bW4ge1xuICAgICAgcGFkZGluZzogMTVweCA3LjVweCAwO1xuICAgICAgbWF4LXdpZHRoOiAzMzVweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICB9XG5cbiAgLmNhcmQtd3JhcHBlciB7XG4gICAgcGFkZGluZzogMjRweCAyMHB4IDQ2cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJC0tY29sb3Itd2hpdGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm94LXNoYWRvdzogMXB4IDVweCAxMC40cHggMHB4ICMxRjFGMUYyNDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICBtaW4taGVpZ2h0OiAxODVweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAuY2FyZC10aXRsZSB7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuXG4gICAgLmNhcmQtaWNvIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5jYXJkLWRlc2NyaXB0aW9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBwIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgIGNvbG9yOiAkLS1jb2xvci1kZWZhdWx0LW9wYWNpdHk7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbi5wbGF0Zm9ybS1zZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VCRUZGMTtcbiAgcGFkZGluZzogMTIwcHggMCA4OHB4O1xuXG4gIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5iZW5lZml0cy1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogODBweDtcblxuICAgIC5zdWJ0aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5iZW5lZml0cy1saXN0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBtYXJnaW46IDAgLTIycHg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgNDRweCk7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGNvdW50ZXItcmVzZXQ6IGJlbmVmaXQtY291bnRlcjtcblxuICAgICAgLmJlbmVmaXQtY29sdW1uIHtcbiAgICAgICAgcGFkZGluZzogMCAyMnB4O1xuICAgICAgICBtYXgtd2lkdGg6IDMwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJjpudGgtY2hpbGQobis0KSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTEwcHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmJlbmVmaXQtaXRlbSB7XG4gICAgICBjb3VudGVyLWluY3JlbWVudDogYmVuZWZpdC1jb3VudGVyO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIoYmVuZWZpdC1jb3VudGVyLCBkZWNpbWFsLWxlYWRpbmctemVybykgXCIgXCI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogOTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XG4gICAgICAgIGNvbG9yOiAkLS1jb2xvci1zZWNvbmQtb3BhY2l0eTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAtNjBweDtcbiAgICAgICAgdG9wOiAtODBweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIH1cblxuICAgICAgLmJlbmVmaXQtdGl0bGUge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIC5iZW5lZml0LWRlc2NyaXB0aW9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC5tb2R1bGVzLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAxMjBweDtcblxuICAgIC5tb2R1bGVzLWxpc3Qge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIG1hcmdpbjogMCAtNDBweDtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA4MHB4KTtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAubW9kdWxlcy1jb2x1bW4ge1xuICAgICAgICBwYWRkaW5nOiAwIDQwcHggMzJweDtcbiAgICAgICAgbWF4LXdpZHRoOiAyNSU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICY6bnRoLWNoaWxkKG4rNSkge1xuICAgICAgICAgIG1heC13aWR0aDogMjclO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5tb2R1bGUtaXRlbSB7XG4gICAgICBwYWRkaW5nOiAyNHB4IDE4cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkLS1jb2xvci13aGl0ZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgICAgYm9yZGVyLWltYWdlLXNvdXJjZTogbGluZWFyLWdyYWRpZW50KDExOS4xNmRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KSAtNy41NyUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMjYuMSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkgNDMuMTMlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwNC42OCUpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAubW9kdWxlLWljbyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAubW9kdWxlLXRpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gICAgICB9XG5cbiAgICAgIC5tb2R1bGUtZGVzY3JpcHRpb24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBwIHtcbiAgICAgICAgICBjb2xvcjogJC0tY29sb3ItZGVmYXVsdC1vcGFjaXR5O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuLmFkdmFudGFnZXMtc2VjdGlvbiB7XG5cbiAgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cblxufVxuXG4uc29sdXRpb25zLXNlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkLS1jb2xvci1ncmV5LWJhY2s7XG5cbiAgaDIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAzNHB4O1xuICB9XG5cbiAgLmNvbnRlbnQtYmxvY2sge1xuICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG8gNjBweDtcblxuICAgIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cblxuICAgICAgc3Ryb25nIHtcblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAuc29sdXRpb24tY2FyZHMge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICBncmlkLWdhcDogMTBweDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC5jYXJkLXdyYXBwZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJC0tY29sb3Itd2hpdGU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgYm94LXNoYWRvdzogMXB4IDVweCAxMC40cHggMHB4ICMxRjFGMUYyNDtcbiAgICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAuY2FyZC1jb250ZW50IHtcblxuICAgICAgICAuY2FyZC1pY28ge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDQ4cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmNhcmQtdGl0bGUge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwsIG9sIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogZGlzYztcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wM2VtO1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLmNhcmQtbGluayB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb24tc3R5bGU6IHNvbGlkO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkLS1jb2xvci1zZWNvbmQ7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG4uY29udGFjdHMtc2VjdGlvbiB7XG5cbiAgaDIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICB9XG5cbiAgLmNvbnRhY3QtbGlua3Mge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkLS1jb2xvci1zZWNvbmQ7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMzQwcHgpIHtcbiAgLnBsYXRmb3JtLXNlY3Rpb24ge1xuXG4gICAgLm1vZHVsZXMtYmxvY2sge1xuXG4gICAgICAubW9kdWxlcy1saXN0IHtcbiAgICAgICAgbWFyZ2luOiAwIC0yMHB4O1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNDBweCk7XG5cbiAgICAgICAgLm1vZHVsZXMtY29sdW1uIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDIwcHggNDBweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5tYWluLWJhbm5lciB7XG5cbiAgICAuYmFubmVyLWNvbnRlbnQge1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgIC5zdWJ0aXRsZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaDEge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC5kZXNjcmlwdGlvbiB7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLmJ0biB7XG4gICAgICAgIG1hcmdpbjogNTBweCBhdXRvIDA7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC5wbGF0Zm9ybS1zZWN0aW9uIHtcblxuICAgIC5iZW5lZml0cy1ibG9jayB7XG5cbiAgICAgIC5iZW5lZml0cy1saXN0IHtcblxuICAgICAgICAuYmVuZWZpdC1jb2x1bW4ge1xuICAgICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG5cbiAgICAgICAgICAmOm50aC1jaGlsZChuKzQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuYmVuZWZpdC1pdGVtIHtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgbGVmdDogMjAlO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5tb2R1bGVzLWJsb2NrIHtcbiAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG5cbiAgICAgIC5tb2R1bGVzLWxpc3Qge1xuXG4gICAgICAgIC5tb2R1bGVzLWNvbHVtbiB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG5cbiAgICAgICAgICAmOm50aC1jaGlsZChuKzUpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLnNvbHV0aW9ucy1zZWN0aW9uIHtcblxuICAgIC5zb2x1dGlvbi1jYXJkcyB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICB9XG5cbiAgfVxuXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xuICAubWFpbi1iYW5uZXIge1xuICAgIHBhZGRpbmc6IDEwMHB4IDAgNjBweDtcblxuICAgIC5iYW5uZXItY29udGVudCB7XG5cbiAgICAgIC5kZXNjcmlwdGlvbiB7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLmJ0biB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLnRlY2hub2xvZ2llcy1zZWN0aW9uIHtcblxuICAgIC5jYXJkLXdyYXBwZXIge1xuICAgICAgcGFkZGluZzogMjRweCAyMHB4O1xuXG4gICAgICAuY2FyZC1kZXNjcmlwdGlvbiB7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAucGxhdGZvcm0tc2VjdGlvbiB7XG4gICAgcGFkZGluZzogNjBweCAwO1xuXG4gICAgLnN1YnRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG5cbiAgICAuYmVuZWZpdHMtYmxvY2sge1xuXG4gICAgICAuYmVuZWZpdHMtbGlzdCB7XG5cbiAgICAgICAgLmJlbmVmaXQtY29sdW1uIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuYmVuZWZpdC1pdGVtIHtcbiAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIoYmVuZWZpdC1jb3VudGVyKSBcIiBcIjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iZW5lZml0LWRlc2NyaXB0aW9uIHtcblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5tb2R1bGVzLWJsb2NrIHtcblxuICAgICAgLm1vZHVsZXMtbGlzdCB7XG5cbiAgICAgICAgLm1vZHVsZXMtY29sdW1uIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogMCAyMHB4IDIwcHg7XG5cbiAgICAgICAgICAmOm50aC1jaGlsZChuKzUpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIC5zb2x1dGlvbnMtc2VjdGlvbiB7XG5cbiAgICAuY29udGVudC1ibG9jayB7XG5cbiAgICAgIHAge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLmNvbnRhY3RzLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDgwcHggMDtcblxuICAgIC5jb250YWN0LWxpbmtzIHtcblxuICAgICAgYSB7XG5cbiAgICAgICAgJjpudGgtb2YtdHlwZSgxKSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuIiwiLmZvb3RlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJC0tY29sb3ItZGVmYXVsdDtcclxuICBwYWRkaW5nOiA1NnB4IDEwMHB4O1xyXG5cclxuICAuZm9vdGVyLXJvdyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgLmZvb3Rlci1jb2x1bW4ge1xyXG4gICAgICB3aWR0aDogMzMlO1xyXG5cclxuICAgICAgJjpudGgtb2YtdHlwZSgyKSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpudGgtb2YtdHlwZSgzKSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1dnc7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLmxvZ28ge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIG1heC13aWR0aDogNjVweDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLmZvb3Rlci1kZXNjcmlwdGlvbiB7XHJcblxyXG4gICAgcCB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNjAlO1xyXG4gICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgY29sb3I6ICQtLWNvbG9yLXdoaXRlO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIC5mb290ZXItY29udGFjdC1saW5rcyB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcbiAgICBhIHtcclxuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMTAwJTtcclxuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDNlbTtcclxuICAgICAgY29sb3I6ICQtLWNvbG9yLXdoaXRlO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkLS1jb2xvci1zZWNvbmQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLmZvb3Rlci1zb2NpYWxzIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAuc29jaWFsLWxpbmsge1xyXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAgICYuc29jaWFsLWxpbmstdGVsZWdyYW0ge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbnMvdGVsZWdyYW0taWNvLndlYnApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmLnNvY2lhbC1saW5rLW1heCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29ucy9tYXgtaWNvLndlYnApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmICsgLnNvY2lhbC1saW5rIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICAuZm9vdGVyLWNvcHkge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xyXG5cclxuICAgIHAge1xyXG4gICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgY29sb3I6ICQtLWNvbG9yLXdoaXRlO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIC5mb290ZXItY29weS1tb2JpbGUge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgLmZvb3RlciB7XHJcbiAgICBwYWRkaW5nOiA0MHB4IDA7XHJcblxyXG4gICAgLmZvb3Rlci1yb3cge1xyXG5cclxuICAgICAgLmZvb3Rlci1jb2x1bW4ge1xyXG5cclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcclxuICAuZm9vdGVyIHtcclxuXHJcbiAgICAuZm9vdGVyLXJvdyB7XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgIC5mb290ZXItY29sdW1uIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgJjpudGgtb2YtdHlwZSgyKSB7XHJcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICBtYXJnaW46IDQwcHggMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bnRoLW9mLXR5cGUoMykge1xyXG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgLmZvb3Rlci1jb3B5LXBjIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuZm9vdGVyLWNvcHktbW9iaWxlIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG59XHJcbiIsIi5oZWFkZXIge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICB6LWluZGV4OiA5OTk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgcGFkZGluZzogNDBweCAwO1xyXG4gIHRyYW5zaXRpb246IDAuM3M7XHJcblxyXG4gIC5oZWFkZXItd3JhcHBlciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gIH1cclxuXHJcbiAgJi5zY3JvbGxlZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkLS1jb2xvci13aGl0ZTtcclxuICAgIHBhZGRpbmc6IDEwcHggMDtcclxuICAgIGJveC1zaGFkb3c6IDFweCA1cHggMTBweCAwcHggcmdiYSgzMSwgMzEsIDMxLCAwLjIpO1xyXG4gIH1cclxuXHJcbiAgLmxvZ28ge1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIG1heC13aWR0aDogOTBweDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLm1vYmlsZS1tZW51LWJ1dHRvbiB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmNsb3NlLW1lbnUtYnV0dG9uIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAuaGVhZGVyIHtcclxuXHJcbiAgICAubW9iaWxlLW1lbnUtYnV0dG9uIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgd2lkdGg6IDIycHg7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIHRyYW5zaXRpb246IDAuM3M7XHJcblxyXG4gICAgICAubGluZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkLS1jb2xvci1kZWZhdWx0O1xyXG4gICAgICAgIGhlaWdodDogMnB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHRyYW5zaXRpb246IDAuM3M7XHJcblxyXG4gICAgICAgICY6bnRoLW9mLXR5cGUoMikge1xyXG4gICAgICAgICAgbWFyZ2luOiA0cHggMCA0cHggYXV0bztcclxuICAgICAgICAgIHdpZHRoOiA4MCU7XHJcbiAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgLmNsb3NlLW1lbnUtYnV0dG9uIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgd2lkdGg6IDIycHg7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAzMHB4O1xyXG4gICAgICByaWdodDogMjBweDtcclxuXHJcbiAgICAgIC5saW5lIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGhlaWdodDogMnB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICQtLWNvbG9yLXdoaXRlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAmOm50aC1vZi10eXBlKDEpIHtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoN3B4LCA2cHgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpudGgtb2YtdHlwZSgyKSB7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZSgtNXB4LCA1cHgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgLmhlYWRlci1uYXYge1xyXG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHBhZGRpbmc6IDQ4cHggNDBweCAzOHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkLS1jb2xvci1kZWZhdWx0O1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICB0cmFuc2l0aW9uOiAwLjNzO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgIG1pbi13aWR0aDogMzAlO1xyXG5cclxuICAgICAgJi5zaG93IHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xyXG4gIC5oZWFkZXIge1xyXG4gICAgcGFkZGluZzogMjBweCAwO1xyXG5cclxuICAgIC5sb2dvIHtcclxuXHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA2MHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICB9XHJcbn1cclxuIiwiLmJhbm5lci1zZXJ2aWNlIHtcblxuICAuYmFubmVyLWNvbnRlbnQge1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgIGgxIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQycHg7XG4gICAgfVxuXG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDM0cHg7XG5cbiAgICAgIHAge1xuICAgICAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5iYW5uZXItbm90aWNlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgIH1cblxuICAgIC5iYW5uZXItYnV0dG9ucyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAuYnRuLW9yYW5nZSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICB9XG5cbiAgICAgIC5idG4gKyAuYnRuIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG59XG5cbi50YWJsZS1zZWN0aW9uIHtcblxuICBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNzVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAudGFibGUtd3JhcHBlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxufVxuXG4uY29udGFjdHMtZm9ybS1zZWN0aW9uIHtcbiAgcGFkZGluZzogMCAwIDgwcHg7XG5cbiAgLmNvbnRhY3Qtcm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgMTAwcHg7XG5cbiAgICAuY29udGFjdC1jb2x1bW4ge1xuICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgJjpudGgtb2YtdHlwZSgxKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwMHB4O1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBoMiwgLmgyIHtcbiAgICBmb250LWZhbWlseTogJC0tZm9udC1kZWZhdWx0O1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICBjb2xvcjogJC0tY29sb3ItYmxhY2s7XG4gIH1cblxuICAuaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNzVweDtcbiAgfVxuXG4gIC5kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gIH1cblxuICAuY29udGFjdC1pdGVtcyB7XG5cbiAgICAuY29udGFjdC1pdGVtIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cblxuICAgICAgLmNvbnRhY3QtbGFiZWwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDNlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgY29sb3I6ICQtLWNvbG9yLWJsYWNrO1xuICAgICAgfVxuXG4gICAgICAuY29udGFjdC1saW5rIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDNlbTtcbiAgICAgICAgY29sb3I6ICQtLWNvbG9yLWJsYWNrO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAuY29udGFjdC1zb2NpYWxzLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuXG4gICAgLnRpdGxlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLmNvbnRhY3Qtc29jaWFscyB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gIH1cblxuICAuZm9ybS13cmFwcGVyIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIGZvcm0ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgLmlucHV0LWl0ZW0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBpbnB1dCB7XG4gICAgICAgIGhlaWdodDogNDhweDtcbiAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgICAgY29sb3I6ICQtLWNvbG9yLWJsYWNrO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwMkI7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICBjb2xvcjogIzAwMDAwMDUyO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgdGV4dGFyZWEge1xuICAgICAgICBjb2xvcjogJC0tY29sb3ItYmxhY2s7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDAwMDAyQjtcbiAgICAgICAgcmVzaXplOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBoZWlnaHQ6IDExMnB4O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgY29sb3I6ICMwMDAwMDA1MjtcbiAgICAgICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICQtLWNvbG9yLWJsYWNrO1xuICAgICAgICBjb2xvcjogJC0tY29sb3Itd2hpdGU7XG4gICAgICAgIHRyYW5zaXRpb246IDAuM3M7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJC0tY29sb3Itc2Vjb25kO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgLmZvcm0tbm90aWNlIHtcbiAgICAgICAgcGFkZGluZzogMnB4IDEycHggMDtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgIGNvbG9yOiAkLS1jb2xvci1ibGFjaztcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuYmFubmVyLXNlcnZpY2Uge1xuXG4gICAgLmJhbm5lci1jb250ZW50IHtcblxuICAgICAgLmJhbm5lci1idXR0b25zIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAuYnRuIHtcblxuICAgICAgICAgICAmICsgLmJ0biB7XG4gICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuYnRuLW9yYW5nZSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLmNvbnRhY3RzLWZvcm0tc2VjdGlvbiB7XG5cbiAgICBoMiwgLmgyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cblxuICAgIC5oMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbiB7XG5cbiAgICAgIHAge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuY29udGFjdC1yb3cge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgLmNvbnRhY3QtY29sdW1uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgJjpudGgtb2YtdHlwZSgxKSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuY29udGFjdC1pdGVtcyB7XG5cbiAgICAgIC5jb250YWN0LWl0ZW0ge1xuXG4gICAgICAgIC5jb250YWN0LWxhYmVsIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmNvbnRhY3Qtc29jaWFscy1ibG9jayB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuXG4gICAgICAudGl0bGUge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC5jb250YWN0LXNvY2lhbHMge1xuICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgLnRhYmxlLXNlY3Rpb24ge1xuXG4gICAgaDIge1xuICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgIH1cblxuICAgIC5jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAudGFibGUtd3JhcHBlciB7XG4gICAgICBvdmVyZmxvdzogYXV0bztcbiAgICB9XG5cbiAgICB0YWJsZSB7XG4gICAgICBtaW4td2lkdGg6IDYwMHB4O1xuICAgIH1cblxuICB9XG5cbiAgLmNvbnRhY3RzLWZvcm0tc2VjdGlvbiB7XG5cbiAgICAuZm9ybS13cmFwcGVyIHtcblxuICAgICAgZm9ybSB7XG5cbiAgICAgICAgLmZvcm0tbm90aWNlIHtcblxuICAgICAgICAgIGJyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/