/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

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

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

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

a {
    background-color: transparent
}

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

b,
strong {
    font-weight: bolder
}

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

small {
    font-size: 80%
}

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

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

img {
    border-style: none
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

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

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

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

fieldset {
    padding: .35em .75em .625em
}

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

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

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

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

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

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

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

details {
    display: block
}

summary {
    display: list-item
}

template {
    display: none
}

[hidden] {
    display: none
}

/*!
 * Milligram v1.3.0
 * https://milligram.github.io
 *
 * Copyright (c) 2017 CJ Patoilo
 * Licensed under the MIT license
 */
@font-face {
    font-family: Fira-Sans;
    src: url(../fonts/FiraSans-Regular.ttf)
}

@font-face {
    font-family: Fira-Sans-M;
    src: url(../fonts/FiraSans-Medium.ttf)
}

@font-face {
    font-family: Fira-Sans-SB;
    src: url(../fonts/FiraSans-SemiBold.ttf)
}

@font-face {
    font-family: Barlow;
    src: url(../fonts/Barlow-ExtraLight.ttf)
}

@font-face {
    font-family: BarlowSB;
    src: url(../fonts/Barlow-SemiBold.ttf)
}

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

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

body {
    color: #2b2b2b;
    font-family: Fira-Sans, 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 1.25em;
    font-weight: 400;
    letter-spacing: .075em;
    line-height: 1.875;
    height: 100%;
    position: relative;
    padding-bottom: 100px;
    overflow-x: hidden
}

@media (max-width:40rem) {
    body {
        font-size: 1rem;
        line-height: 1.625rem
    }
}

.cb {
    clear: both
}

.dp-block {
    display: block
}

.dp-ib {
    display: inline-block
}

.dp-flex {
    display: flex
}

.font-sb {
    font-weight: 600;
    font-family: Fira-Sans-SB
}

.font-med {
    font-weight: 500;
    font-family: Fira-Sans-M
}

.w100vw {
    width: 100vw
}

.h100vh {
    height: 100vh
}

.h-144 {
    height: calc(100vh - 144px)
}

.h100 {
    height: 100px;
    width: 100%
}

.h80 {
    height: 80px;
    width: 100%
}

.h120 {
    height: 120px;
    width: 100%
}

.mb-80 {
    margin-bottom: 80px
}

.mb-40 {
    margin-bottom: 40px
}

.mb-60 {
    margin-bottom: 60px
}

.mb-30 {
    margin-bottom: 30px
}

.mb-20 {
    margin-bottom: 20px
}

.mb-10 {
    margin-bottom: 10px
}

.mb-25 {
    margin-bottom: 25px
}

.mb-0 {
    margin-bottom: 0
}

.mt-20 {
    margin-top: 20px
}

.mt-40 {
    margin-top: 40px
}

.mt-60 {
    margin-top: 60px
}

.font-14 {
    font-size: .875rem
}

.font-12 {
    font-size: .75rem
}

.font-20 {
    font-size: 1.25rem
}

.font-16 {
    font-size: 1rem;
}

.font-18 {
    font-size: 1.125rem;
}

.color-blau {
    color: #033f85
}

.color-white {
    color: #fff
}

.background-blau {
    background-color: #033f85
}

.ttu {
    text-transform: uppercase
}

.lh-12 {
    line-height: 1.2
}

.lh-14 {
    line-height: 1.4
}

.h60 {
    width: 100%;
    height: 60px
}

.h20 {
    width: 100%;
    height: 20px
}

.pos-rel {
    position: relative
}

.text-right {
    text-align: right
}

.ml-20 {
    margin-left: 20px
}

.ml-50 {
    margin-left: 50px
}

.mx-20 {
    margin-left: 20px;
    margin-right: 20px;
}

.wrapper {
    margin: 0 auto;
    max-width: 90rem;
    position: relative;
    width: 100%
}

.container {
    margin: 0 auto;
    max-width: 90rem;
    padding: 0;
    position: relative;
    width: 100%
}

.container.sm-c {
    max-width: 75rem
}

@media all and (max-width:40rem) {
    .container {
        padding: 0 1rem
    }
}

.row {
    display: flex;
    flex-direction: column;
    padding: 0;
    width: 100%
}

.row.row-no-padding {
    padding: 0
}

.row.row-no-padding>.column {
    padding: 0
}

.row.row-wrap {
    flex-wrap: wrap
}

.row.row-top {
    align-items: flex-start
}

.row.row-bottom {
    align-items: flex-end
}

.row.row-center {
    align-items: center
}

.row.row-stretch {
    align-items: stretch
}

.row.row-baseline {
    align-items: baseline
}

.row .column {
    display: block;
    flex: 1 1 auto;
    margin-left: 0;
    max-width: 100%;
    width: 100%
}

.row .column.column-offset-10 {
    margin-left: 10%
}

.row .column.column-offset-15 {
    margin-left: 15%
}

.row .column.column-offset-20 {
    margin-left: 20%
}

.row .column.column-offset-25 {
    margin-left: 25%
}

.row .column.column-offset-33,
.row .column.column-offset-34 {
    margin-left: 33.3333%
}

.row .column.column-offset-50 {
    margin-left: 50%
}

.row .column.column-offset-66,
.row .column.column-offset-67 {
    margin-left: 66.6666%
}

.row .column.column-offset-75 {
    margin-left: 75%
}

.row .column.column-offset-80 {
    margin-left: 80%
}

.row .column.column-offset-90 {
    margin-left: 90%
}

.row .column.column-10 {
    flex: 0 0 10%;
    max-width: 10%
}

.row .column.column-20 {
    flex: 0 0 20%;
    max-width: 20%
}

.row .column.column-25 {
    flex: 0 0 25%;
    max-width: 25%
}

.row .column.column-30 {
    flex: 0 0 30%;
    max-width: 30%
}

.row .column.column-33,
.row .column.column-34 {
    flex: 0 0 33.3333%;
    max-width: 33.3333%
}

.row .column.column-40 {
    flex: 0 0 40%;
    max-width: 40%
}

.row .column.column-50,
.row .column.column-50-special {
    flex: 0 0 50%;
    max-width: 50%
}

.row .column.column-60 {
    flex: 0 0 60%;
    max-width: 60%
}

.row .column.column-66,
.row .column.column-67 {
    flex: 0 0 66.6666%;
    max-width: 66.6666%
}

.row .column.column-75 {
    flex: 0 0 75%;
    max-width: 75%
}

.row .column.column-80 {
    flex: 0 0 80%;
    max-width: 80%
}

.row .column.column-90 {
    flex: 0 0 90%;
    max-width: 90%
}

.row .column .column-top {
    align-self: flex-start
}

.row .column .column-bottom {
    align-self: flex-end
}

.row .column .column-center {
    -ms-grid-row-align: center;
    align-self: center
}

@media (min-width:40rem) {
    .row {
        flex-direction: row;
        width: 100%
    }

    .row .column {
        margin-bottom: inherit;
        padding: 0 1rem
    }

    .only-mob {
        display: none
    }

    .only-desk {
        display: block
    }
}

@media (max-width:40rem) {
    .only-mob {
        display: block
    }

    .only-desk {
        display: none
    }

    .hyphens {
        hyphens: auto
    }

    .row .column.column-20,
    .row .column.column-25,
    .row .column.column-30,
    .row .column.column-33,
    .row .column.column-50-special,
    .row .column.column-60,
    .row .column.column-70,
    .row .column.column-75,
    .row .column.column-offset-15 {
        flex: 0 0 100%;
        max-width: 100%
    }

    .row .column.column-offset-15 {
        margin-left: 0
    }

    .mob-full-width {
        padding: 0;
        width: 100%
    }

    .row.footer {
        display: flex;
        flex-flow: row
    }
}

a {
    color: #033f85;
    text-decoration: none
}

a:focus,
a:hover {
    color: #ff001f
}

b,
strong {
    font-weight: 700
}

p {
    margin-top: 0
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 600;
    letter-spacing: .1rem;
    margin-bottom: 2rem;
    margin-top: 0;
    font-family: Fira-Sans-SB
}

h1,
h1#standard {
    font-size: 2.125rem;
    line-height: 1.2;
    margin-bottom: 2.5rem;
    text-transform: uppercase
}

@media (max-width:40rem) {

    h1,
    h1#standard {
        font-size: 1.25rem;
        line-height: 1.475;
        letter-spacing: .13125rem
    }
}

h2 {
    font-size: 3.6rem;
    line-height: 1.25
}

h3 {
    font-size: 2rem;
    line-height: 1.3
}

@media (max-width:600px) {

    h3 {
        font-size: 1.3rem;
    }
}

h4 {
    font-size: 2.2rem;
    letter-spacing: -.08rem;
    line-height: 1.35
}

h5 {
    font-size: 1.8rem;
    letter-spacing: -.05rem;
    line-height: 1.5
}

h6 {
    font-size: 1.6rem;
    letter-spacing: 0;
    line-height: 1.4
}

.h1 {
    font-weight: 600;
	letter-spacing: .1rem;
	margin-bottom: 2rem;
	margin-top: 0;
	font-size: 2.125rem;
	line-height: 1.2;
	margin-bottom: 2.5rem;
	text-transform: uppercase;
}

img {
    max-width: 100%
}

.clearfix:after {
    clear: both;
    content: ' ';
    display: table
}

.float-left {
    float: left
}

.float-right {
    float: right
}

.js .loading::before {
    content: '';
    position: fixed;
    color: #fff;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
    text-align: center;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.js .loading::after {
    content: '';
    position: fixed;
    top: 50%;
    left: 50%;
    width: 70px;
    height: 70px;
    margin: -35px 0 0 -35px;
    pointer-events: none;
    z-index: 101;
    border: 7px solid #033f85;
    border-top-color: #fff;
    border-radius: 50%;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
    -webkit-animation: rotateLoader .8s linear infinite forwards;
    animation: rotateLoader .8s linear infinite forwards
}

@-webkit-keyframes rotateLoader {
    to {
        -webkit-transform: rotate3d(0, 0, 1, 360deg);
        transform: rotate3d(0, 0, 1, 360deg)
    }
}

@keyframes rotateLoader {
    to {
        -webkit-transform: rotate3d(0, 0, 1, 360deg);
        transform: rotate3d(0, 0, 1, 360deg)
    }
}

.hidden {
    position: absolute;
    overflow: hidden;
    width: 0;
    height: 0;
    pointer-events: none
}
@media (max-width:500px) {
    .nomobile {
display: none !important;
    }
}


header {
    padding: 2rem 0;
    width: 100%;
    -webkit-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    -ms-transition: all .4s ease-in-out;
    -o-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
    z-index: 5;
    top: 0;
    position: fixed;
    background-color: #fff;
    box-sizing: border-box;
    height: 144px
}

@media all and (max-width:40rem) {
    header {
        height: 60px;
        padding: .5rem 0
    }
}

header.shrink {
    height: 80px;
    padding: .5rem 0
}

@media all and (max-width:40rem) {
    header.shrink {
        height: 80px;
        padding: .5rem 0
    }
}

header.shrink .logo {
    width: 200px;
    margin-top: calc((80px / 2) - 20px - .5rem);
    will-change: height
}

header .logo {
    width: 326px;
    /* height: 70px; */
    /* position: absolute; */
    margin-left: auto;
    margin-right: auto;
    /* right: 0; */
    /* left: 0; */
    -webkit-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    -ms-transition: all .4s ease-in-out;
    -o-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out
}

header .logo.animation {
    position: absolute;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    top: calc(50vh - 35px);
    z-index: 30;
    opacity: 0;
    display: none
}

@media all and (max-width:40rem) {
    header .logo {
        width: 180px !important;
        top: 0
    }
}

header.dp-none {
    display: none
}

@media all and (max-width:40em) {
    header.dp-none {
        display: block
    }
}

.header-contact {
    position: absolute;
    right: 1rem;
    z-index: 3
}

.header-contact a {
    font-size: 14px;
    font-family: Fira-Sans-SB, sans-serif;
    color: #033f85
}

.burger {
    width: 60px;
    height: 18px;
    background: url(../images/common/icn-burger.svg);
    background-repeat: no-repeat;
    background-size: 18px;
    margin: 1rem;
    cursor: pointer;
    font-size: 14px;
    color: #033f85;
    font-family: Barlow;
    vertical-align: top;
    line-height: 1.2;
    padding-left: 35px
}

.burger.open {
    width: 17px;
    height: 17px;
    background: url(../images/common/icn-burger-close.svg);
    background-repeat: no-repeat;
    background-size: 17px;
    padding-left: initial;
    line-height: initial
}

@media all and (max-width:40rem) {
    .burger {
        margin-left: 0
    }
}

.logo {
    height: 70px;
    position: absolute;
    margin-left: auto;
    margin-right: auto;
    right: 0;
    left: 0;
    -webkit-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    -ms-transition: all .4s ease-in-out;
    -o-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out
}

@media all and (max-width:40rem) {
    .logo {
        height: 40px;
        top: 0
    }
}

nav {
    height: 400px;
    width: 100%;
    position: fixed;
    top: -400px;
    box-sizing: border-box;
    padding-top: 40px;
    background-color: #033f85;
    z-index: 8;
    -webkit-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    -ms-transition: all .4s ease-in-out;
    -o-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -o-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

nav.open {
    top: 0
}

@media all and (max-width:640px) {
    nav.open {
        height: 100vh;
        overflow-y: scroll;
        padding-bottom: 20px
    }
}

nav.open a {
    display: block
}

nav.active {
    -webkit-transform: translateY(400px);
    -moz-transform: translateY(400px);
    -o-transform: translateY(400px);
    -ms-transform: translateY(400px);
    transform: translateY(400px)
}

@media all and (max-width:40rem) {
    nav.active {
        -webkit-transform: translateY(100%);
        -moz-transform: translateY(100%);
        -o-transform: translateY(100%);
        -ms-transform: translateY(100%);
        transform: translateY(100%)
    }
}

nav a {
    font-size: 16px
}

nav a.nav-item:after {
    clear: both;
    content: ' ';
    display: table
}

nav .row .column.column-25.p10 {
    padding-left: 10%
}

@media all and (max-width:40rem) {
    nav {
        height: 0;
        top: -100%
    }

    nav .row .column.column-25.p10 {
        padding-left: 0
    }
}

#content {
    position: absolute;
    transition: all .4s ease-in-out;
    -webkit-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -o-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    left: 0;
    right: 0;
    background: #fff;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 100px
}

#content.active {
    -webkit-transform: translateY(400px);
    -moz-transform: translateY(400px);
    -o-transform: translateY(400px);
    -ms-transform: translateY(400px);
    transform: translateY(400px)
}

footer {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 60px

}
footer .container.sm-c {
    padding-bottom: 24px;
}
.row.footer {
    align-items: center;
}

@media (max-width:500px) {
    .row.footer {
        flex-direction:column !important;
    }
    .row.footer div {
        text-align:center !important;
        margin-bottom:24px;
    }
}
#flow {
    height: 100px
}

#top-img {
    padding-top: 144px;
    transition: all .15s ease-in-out;
    -webkit-transition: all .15s ease-in-out;
    -moz-transition: all .15s ease-in-out;
    transform: translate3d(0, 0, 0)
}

#top-img.shrink {
    padding: .5rem 0 0
}

@media all and (max-width:40rem) {
    #top-img {
        padding-top: 60px
    }
}

#gf,
#gf-old {
    margin-top: 144px;
    box-sizing: border-box;
    height: calc(100vh - 144px);
    background: url(../images/common/intro_gf_fi.jpg) no-repeat;
    background-size: cover;
    background-position: center top
}

#gf#gf-old,
#gf-old#gf-old {
    background: url(../images/common/intro_gf_fi.jpg) no-repeat;
    background-size: cover;
    background-position: center
}

@media all and (max-width:40rem) {

    #gf,
    #gf-old {
        padding-top: 0;
        margin: 60px 0 0;
        background: url(../images/common/intro_gf_fi.jpg) no-repeat;
        background-size: 130%;
        background-position: center top;
        min-height: 320px
    }

    #gf img,
    #gf-old img {
        display: none
    }
}

body.no-scroll {
    overflow: hidden
}

#animation {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #fff;
    z-index: 6
}

#animation #intro {
    text-transform: uppercase;
    color: #033f85;
    position: absolute;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    font-size: 34px;
    font-weight: 600;
    text-align: center;
    top: calc(50vh - 34px);
    display: none
}

@media all and (max-width:40rem) {
    #animation #intro {
        top: 30vh
    }
}

#animation2 {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 1rem;
    margin-right: auto;
    margin-left: auto;
    width: 75rem;
    z-index: 6
}

@media all and (max-width:40rem) {
    #animation2 {
        display: none
    }
}

@media all and (max-width:90rem) {
    #animation2 {
        max-width: 75rem;
        left: 0;
        right: 0;
        margin-left: auto;
        margin-right: auto
    }
}

#animation2 #intro-text2 {
    text-transform: uppercase;
    color: #033f85;
    max-width: 420px;
    width: 100%;
    margin-top: 24vh;
    margin-bottom: 7.5vh;
    display: block;
    font-size: 34px;
    font-weight: 600;
    line-height: 46px
}

@media all and (max-width:67.5rem) {
    #animation2 #intro-text2 {
        max-width: 35vw
    }
}

@media all and (max-width:55rem) {
    #animation2 #intro-text2 {
        font-size: 3.4vw;
        line-height: 1.3
    }
}

@media all and (max-width:40rem) {
    #animation2 #intro-text2 {
        display: none
    }
}

#animation2 #intro-text2.done {
    display: block
}

#animation2 .link {
    transition: all .4s ease-in-out;
    -webkit-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    width: 420px;
    height: 60px;
    margin-bottom: 10px;
    position: relative
}

@media all and (max-width:67.5rem) {
    #animation2 .link {
        max-width: 35vw
    }
}

@media all and (max-width:55rem) {
    #animation2 .link {
        display: none
    }
}

#animation2 .link div {
    position: absolute;
    bottom: 0;
    width: 2px;
    background: #ff001f
}

#animation2 .link .anchor {
    width: 0;
    height: 60px;
    display: block;
    color: #fff;
    background-image: linear-gradient(90deg, rgba(3, 63, 133, .32) 0, rgba(255, 255, 255, 0) 70%);
    font-size: 1rem;
    font-weight: 600;
    box-sizing: border-box
}

#animation2 .link .anchor img {
    margin-left: 15px
}

#animation2 .link2 {
    transition: all .4s ease-in-out;
    -webkit-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    width: 420px;
    height: 30px;
    margin-top: 30px;
    position: relative
}

@media all and (max-width:40rem) {
    #animation2 .link2 {
        display: none
    }
}

@media all and (max-width:67.5rem) {
    #animation2 .link2 {
        max-width: 35vw
    }
}

#animation2 .link2 div {
    position: absolute;
    bottom: 0;
    width: 2px;
    background: #ff001f
}

#animation2 .link2 .anchor {
    width: 0;
    height: 30px;
    line-height: 30px;
    display: block;
    color: #033f85;
    background-image: linear-gradient(90deg, rgba(3, 63, 133, .32) 0, rgba(255, 255, 255, 0) 70%);
    font-size: .875rem;
    font-weight: 600;
    box-sizing: border-box
}

#animation2 .mediumlink {
    display: none
}

@media all and (max-width:55rem) and (min-width:40rem) {
    #animation2 .mediumlink {
        display: block;
        transition: all .4s ease-in-out;
        -webkit-transition: all .4s ease-in-out;
        -moz-transition: all .4s ease-in-out;
        max-width: 35vw;
        width: 100%;
        height: 30px;
        position: relative
    }

    #animation2 .mediumlink .border {
        position: absolute;
        bottom: 0;
        width: 2px;
        background: #ff001f
    }

    #animation2 .mediumlink .anchor {
        width: 0;
        height: 30px;
        line-height: 30px;
        display: block;
        color: #033f85;
        background-image: linear-gradient(90deg, rgba(3, 63, 133, .32) 0, rgba(255, 255, 255, 0) 70%);
        font-size: .875rem;
        font-weight: 600;
        box-sizing: border-box
    }

    #animation2 .mediumlink .submenu {
        display: none;
        transition: all .4s ease-in-out;
        -webkit-transition: all .4s ease-in-out;
        -moz-transition: all .4s ease-in-out;
        height: 100px;
        background: #fff;
        box-sizing: border-box;
        padding: 15px;
        width: 100%
    }

    #animation2 .mediumlink .submenu a {
        font-size: 14px;
        display: block;
        line-height: 1.5;
        margin: 0
    }

    #animation2 .mediumlink .submenu.visible {
        display: block;
        position: absolute;
        bottom: -100px;
        z-index: 2;
        transition: all .4s ease-in-out
    }
}

@keyframes logoToTop {
    0% {
        top: 48%;
        height: 172px
    }

    100% {
        top: 2rem;
        height: 70px
    }
}

@keyframes divtoNull {
    0% {
        height: 100vh;
        opacity: 1
    }

    100% {
        height: 0;
        opacity: 0;
        display: none
    }
}

@keyframes slideskew {
    0% {
        opacity: 0;
        transform: skewX(-30deg) translateX(250px)
    }

    100% {
        opacity: 1;
        transform: skewX(0) translateX(0)
    }
}

@keyframes shaggin {
    10% {
        -webkit-transform: translateX(3px) rotate(2deg);
        transform: translateX(3px) rotate(2deg)
    }

    20% {
        -webkit-transform: translateX(-3px) rotate(-2deg);
        transform: translateX(-3px) rotate(-2deg)
    }

    30% {
        -webkit-transform: translateX(3px) rotate(2deg);
        transform: translateX(3px) rotate(2deg)
    }

    40% {
        -webkit-transform: translateX(-3px) rotate(-2deg);
        transform: translateX(-3px) rotate(-2deg)
    }

    50% {
        -webkit-transform: translateX(2px) rotate(1deg);
        transform: translateX(2px) rotate(1deg)
    }

    60% {
        -webkit-transform: translateX(-2px) rotate(-1deg);
        transform: translateX(-2px) rotate(-1deg)
    }

    70% {
        -webkit-transform: translateX(2px) rotate(1deg);
        transform: translateX(2px) rotate(1deg)
    }

    80% {
        -webkit-transform: translateX(-2px) rotate(-1deg);
        transform: translateX(-2px) rotate(-1deg)
    }

    90% {
        -webkit-transform: translateX(1px) rotate(0);
        transform: translateX(1px) rotate(0)
    }

    100% {
        -webkit-transform: translateX(-1px) rotate(0);
        transform: translateX(-1px) rotate(0)
    }
}

#scroll-down {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    position: absolute;
    bottom: 2rem;
    right: 2rem;
    width: 32px
}

#scroll-down.blob {
    animation-name: shaggin;
    animation-timing-function: linear;
    animation-duration: .75s;
    animation-iteration-count: 1
}

.bottom5 {
    width: 100%;
    position: absolute;
    bottom: 0
}

.bottom5 .fml {
    position: relative;
    top: 20%
}

.bottom5 .fml.tam {
    width: 35%
}

.bottom5 .fml .v2_l1,
.bottom5 .fml .v2_l2 {
    font-size: 20px;
    margin-bottom: 1rem;
    display: inline-block
}

.bottom5 .fml .v2_l2 {
    margin-left: 60px
}

.bottom5 .holder-v3 {
    position: absolute;
    bottom: 1.7rem;
    left: 1rem
}

@media all and (max-width:40em) {
    .bottom5 .holder-v3 {
        bottom: initial;
        left: initial
    }

    .bottom5 .holder-v3 h1.color-white {
        color: #033f85;
        padding: 0 .8em
    }
}

@media all and (max-width:40em) {
    .bottom5 {
        height: 50%
    }
}

@media all and (max-width:40em) {
    .blue-wrap {
        display: none
    }
}

.jk {
    position: absolute;
    bottom: 0
}

@media all and (max-width:40em) {
    .jk {
        display: none
    }
}

#v3 {
    display: flex;
    width: 100vw;
    height: 100vh;
    color: #033f85;
    transition: all .9s ease-in-out;
    overflow: hidden;
    writing-mode: horizontal-tb;
    justify-content: center;
    position: relative
}

#v3>* {
    display: flex;
    align-items: center;
    justify-content: center
}

#v3.divtoNull {
    height: 0 !important;
    opacity: 0;
    animation-name: divtoNull;
    animation-duration: .9s;
    transition: none
}

#v3 .splitText {
    opacity: 0;
    transform: skewX(-30deg) translateX(250px);
    transition: all 1.5s ease-in-out;
    font-size: 2.125rem;
    line-height: 1.2;
    margin-bottom: 2.5rem;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: .1rem;
    margin-bottom: 2rem;
    margin-top: 0;
    font-family: Fira-Sans-SB
}

@media (max-width:40rem) {
    #v3 .splitText {
        font-size: 1.25rem;
        line-height: 1.875;
        letter-spacing: .13125rem
    }
}

#v3 .splitText.animation-finished {
    opacity: 1;
    transform: skewX(0) translateX(0);
    animation-name: slideskew;
    animation-duration: 1.5s
}

#v3 .splitTextCopy {
    display: none;
    font-size: 2.125rem;
    line-height: 1.2;
    margin-bottom: 2.5rem;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: .1rem;
    margin-bottom: 2rem;
    margin-top: 0;
    font-family: Fira-Sans-SB
}

@media (max-width:40rem) {
    #v3 .splitTextCopy {
        font-size: 1.25rem;
        line-height: 1.875;
        letter-spacing: .13125rem
    }
}

#v3 #secLogo {
    opacity: 0;
    width: 800px;
    display: none
}

#v3 #secLogo.dp-inline-block {
    display: block;
    opacity: 1;
    position: absolute;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    top: 46%
}

#v3 #secLogo.ttt {
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    height: 70px;
    top: 2rem;
    animation-name: logoToTop;
    animation-duration: .9s
}

@media all and (max-width:40em) {
    #v3 {
        display: none;
        position: initial;
        bottom: initial
    }
}

.btn-links {
    font-size: 1rem;
    height: 24px;
    line-height: 24px;
    background-color: #fff;
    color: #033f85;
    padding: 0 10px;
    transition: all .2s ease-in-out;
    border-radius: 2px
}

.btn-links:hover {
    color: #ff001f
}

@media all and (max-width:40em) {
    .btn-links {
        padding: 0 1em;
        display: block
    }
}

.anikey .link {
    transition: all .4s ease-in-out;
    -webkit-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    width: 420px;
    height: 24px;
    margin-bottom: 10px;
    position: relative
}

@media all and (max-width:67.5rem) {
    .anikey .link {
        max-width: 35vw
    }
}

@media all and (max-width:55rem) {
    .anikey .link {
        display: none
    }
}

.anikey .link div {
    position: absolute;
    bottom: 0;
    width: 2px;
    background: #ff001f
}

.anikey .link .anchor {
    width: 0;
    height: 24px;
    line-height: 24px;
    display: block;
    color: #fff;
    background-image: linear-gradient(90deg, #033f85 1%, rgba(255, 255, 255, 0) 96%);
    font-size: 1rem;
    font-weight: 600;
    box-sizing: border-box
}

.anikey .link .anchor img {
    margin-left: 15px
}

.anikey .link2 {
    transition: all .4s ease-in-out;
    -webkit-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    width: 420px;
    height: 30px;
    margin-top: 30px;
    position: relative
}

@media all and (max-width:40rem) {
    .anikey .link2 {
        display: none
    }
}

@media all and (max-width:67.5rem) {
    .anikey .link2 {
        max-width: 35vw
    }
}

.anikey .link2 div {
    position: absolute;
    bottom: 0;
    width: 2px;
    background: #ff001f
}

.anikey .link2 .anchor {
    width: 0;
    height: 24px;
    line-height: 30px;
    display: block;
    color: #033f85;
    background-image: linear-gradient(90deg, rgba(3, 63, 133, .32) 0, rgba(255, 255, 255, 0) 70%);
    font-size: .875rem;
    font-weight: 600;
    box-sizing: border-box
}

.anikey .mediumlink {
    display: none
}

@media all and (max-width:55rem) and (min-width:40rem) {
    .anikey .mediumlink {
        display: block;
        transition: all .4s ease-in-out;
        -webkit-transition: all .4s ease-in-out;
        -moz-transition: all .4s ease-in-out;
        max-width: 35vw;
        width: 100%;
        height: 30px;
        position: relative
    }

    .anikey .mediumlink .border {
        position: absolute;
        bottom: 0;
        width: 2px;
        background: #ff001f
    }

    .anikey .mediumlink .anchor {
        width: 0;
        height: 30px;
        line-height: 30px;
        display: block;
        color: #033f85;
        background-image: linear-gradient(90deg, rgba(3, 63, 133, .32) 0, rgba(255, 255, 255, 0) 70%);
        font-size: .875rem;
        font-weight: 600;
        box-sizing: border-box
    }

    .anikey .mediumlink .submenu {
        display: none;
        transition: all .4s ease-in-out;
        -webkit-transition: all .4s ease-in-out;
        -moz-transition: all .4s ease-in-out;
        height: 100px;
        background: #fff;
        box-sizing: border-box;
        padding: 15px;
        width: 100%
    }

    .anikey .mediumlink .submenu a {
        font-size: 14px;
        display: block;
        line-height: 1.5;
        margin: 0
    }

    .anikey .mediumlink .submenu.visible {
        display: block;
        position: absolute;
        bottom: -100px;
        z-index: 2;
        transition: all .4s ease-in-out
    }
}

#ani {
    transition: all .9s ease-in-out;
    -webkit-transition: all .9s ease-in-out;
    -moz-transition: all .9s ease-in-out;
    height: 100%;
    width: 100%
}

#ani.top {
    position: absolute
}

.the-team {
    cursor: pointer;
    transition: all .4s ease-in-out;
    -webkit-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out
}

.the-team.not-active {
    opacity: .2
}

.the-team.active,
.the-team.clicked {
    opacity: 1
}

.taetigkeitsprofil {
    margin: 40px 0;
    box-sizing: border-box;
    border-top: 1px solid rgba(0, 0, 0, .8);
    padding-top: 80px;
    width: 100%
}

.taetigkeitsprofil.none {
    display: none
}

.taetigkeitsprofil .close {
    position: absolute;
    right: 1rem;
    margin-top: 12px;
    cursor: pointer
}

#all-out-one-hand {
    margin-top: 90px;
    padding: 80px 0;
    background: #033f85;
    width: 100%
}

#all-out-one-hand .indexes {
    position: relative;
    box-sizing: border-box;
    padding-bottom: 40px;
    margin-bottom: 60px
}

@media all and (max-width:40rem) {
    #all-out-one-hand .indexes {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%
    }
}

#all-out-one-hand .indexes .btn-more {
    position: absolute;
    bottom: 0
}

@media all and (max-width:40rem) {
    #all-out-one-hand {
        padding: 80px 1rem
    }
}

.btn-more {
    display: inline-block;
    padding-right: 30px;
    background: url(../images/common/btn-arrow-right-white.svg);
    background-repeat: no-repeat;
    background-size: 14px 16px;
    background-position: 100% 50%;
    color: #fff;
    cursor: pointer
}

.divider {
    width: 100%;
    height: 3px;
    background-color: #033f85
}

.blue-box {
    color: #fff;
    box-sizing: border-box;
    padding: 60px 0;
    background-color: #033f85
}

#top-img {
    margin-bottom: 60px
}

body.formulare #top-img,
body.links #top-img,
body.news #top-img {
    margin-bottom: 0
}

#blog {
    color: #fff;
    background: #5c5c5c;
    padding: 60px 0
}

#blog .inner {
    height: 600px;
    overflow-y: auto
}

body.startseite .ma img,
#team > div.row.ma > div > img {
    width: 100%;
    margin: 5px;
    padding: 0;
    float: left;
    line-height: 0
}

@media all and (min-width:801px) {
    body.startseite .ma img,
    #team > div.row.ma > div > img {
        max-width: calc((100% - 80px)/ 8)
    }
}

@media all and (min-width:601px) and (max-width:800px) {
    body.startseite .ma img,
    #team > div.row.ma > div > img {
        max-width: calc((100% - 12%)/ 4)
    }
}

@media all and (max-width:600px) {
    body.startseite .ma img,
    #team > div.row.ma > div > img {
        max-width: calc((100% - 12%)/ 4)
    }
}

body.startseite #team {
    margin-bottom: 100px
}

body.impressum h1 {
    font-size: 1.25rem
}

body.impressum h1#standard {
    margin-bottom: 0
}

body.impressum h1#standard p {
    margin-bottom: 0
}

body.impressum #top-img {
    padding-top: calc(149px + 60px)
}

@media (max-width:75em) {
    body.impressum #top-img {
        padding-left: 1rem;
        padding-right: 1rem
    }
}

@media (max-width:40rem) {
    body.impressum #top-img {
        padding-top: 110px
    }
}

body.datenschutz h1#standard {
    margin-bottom: 0
}

body.datenschutz #top-img {
    padding-top: calc(149px + 60px)
}

@media (max-width:75em) {
    body.datenschutz #top-img {
        padding-left: 1rem;
        padding-right: 1rem
    }
}

@media (max-width:40rem) {
    body.datenschutz #top-img {
        padding-top: 110px
    }
}

body.agb #top-img,
body.formulare #top-img,
body.links #top-img,
body.wirtschaftspruefung #top-img {
    padding-top: calc(149px + 60px)
}

@media (max-width:75em) {

    body.agb #top-img,
    body.formulare #top-img,
    body.links #top-img,
    body.wirtschaftspruefung #top-img {
        padding-left: 1rem;
        padding-right: 1rem
    }
}

@media (max-width:40rem) {

    body.agb #top-img,
    body.formulare #top-img,
    body.links #top-img,
    body.wirtschaftspruefung #top-img {
        padding-top: 110px
    }
}

body.agb #top-img h1,
body.formulare #top-img h1,
body.links #top-img h1,
body.wirtschaftspruefung #top-img h1 {
    margin-bottom: 0
}

body.karriere #top-img {
    padding-top: calc(144px + 60px)
}

@media (max-width:75em) {
    body.karriere #top-img {
        padding-left: 1rem;
        padding-right: 1rem
    }
}

@media (max-width:40rem) {
    body.karriere #top-img {
        padding-top: 110px
    }
}

body.karriere #top-img h1 {
    margin-bottom: 0
}

body.koorperationspartner #top-img {
    padding-top: calc(144px + 60px)
}

body.koorperationspartner #top-img h1 {
    margin-bottom: 0
}

@media (max-width:75em) {
    body.koorperationspartner #top-img {
        padding-left: 1rem;
        padding-right: 1rem
    }
}

@media (max-width:40rem) {
    body.koorperationspartner #top-img {
        padding-top: 110px
    }
}

body.news #top-img {
    padding-top: calc(149px + 60px)
}

body.news #top-img h1 {
    margin-bottom: 0
}

@media (max-width:75em) {
    body.news #top-img {
        padding-left: 1rem;
        padding-right: 1rem
    }
}

@media (max-width:40rem) {
    body.news #top-img {
        padding-top: 110px
    }
}

body.agb .ul_ebene1 {
    font-family: Fira-Sans-SB;
    font-weight: 600
}

body.agb .headline1 {
    font-weight: 600;
    font-family: Fira-Sans-SB
}

body.agb p,
body.agb td {
    font-weight: initial;
    font-family: Fira-Sans
}

a.linklist, div.linklistcontainer a {
    background: url(../images/common/icn-link.svg);
    background-repeat: no-repeat;
    background-position: 0 3px;
    background-size: 20px;
    cursor: pointer;
    padding-left: 40px;
    font-size: 16px;
    display: inline-block;
    margin-bottom: 20px
}

a.downloadlist {
    background: url(../images/common/icn-download.svg);
    background-repeat: no-repeat;
    background-position: 0 3px;
    background-size: 20px;
    cursor: pointer;
    padding-left: 40px;
    font-size: 16px;
    display: inline-block;
    width: 100%;
    margin-bottom: 20px
}

.leistungsportfolio ul {
    margin-left: 0 !important;
    -webkit-margin-before: 0;
    -webkit-margin-after: 0;
    -webkit-margin-start: 0;
    -webkit-margin-end: 0;
    -webkit-padding-start: 0
}

.leistungsportfolio ul li {
    font-weight: 400;
    list-style-type: none;
    margin-bottom: 1rem;
    line-height: 1.5
}

.ausschreibung {
    padding: 40px 0;
    border-top: 1px solid #033f85
}

.sh-container {
    display: table;
    width: 100%
}

.sh-container .sh-div {
    display: table-cell
}

.tab {
    overflow: hidden
}

.tab button {
    color: rgba(0, 0, 0, .5);
    float: left;
    border: none;
    outline: 0;
    cursor: pointer;
    padding: 0 20px 0 0;
    transition: .3s;
    margin-bottom: 20px;
    background: 0 0
}

@media all and (max-width:40rem) {
    .tab button {
        padding: 0 10px 0 0
    }
}

.tab button:hover {
    color: #033f85
}

.tab button.active {
    color: #033f85
}

.tabcontent {
    display: none;
    padding: 1.5rem 0;
    animation: fadeEffect .3s
}

@keyframes fadeEffect {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

.datenschutz h1,
.impressum h1 {
    margin-bottom: 0
}

body.startseite a.efvEditorlinks {
    text-decoration: none;
    font-family: Fira-Sans-SB;
    font-size: 20px;
    font-weight: 700;
    font-style: normal;
    background-color: #5c5c5c;
    color: #fff
}

body.startseite .efvEditorback span {
    text-decoration: none;
    font-family: Fira-Sans-SB;
    font-size: 20px;
    font-weight: 700;
    font-style: normal;
    background-color: #5c5c5c;
    color: #fff
}

body.startseite .efvPopupTitel {
    background-color: #5c5c5c;
    color: #fff;
    text-align: left;
    font-family: Fira-Sans;
    font-size: 20px
}

body.startseite .efvEditorback {
    background-color: #5c5c5c;
    color: #fff;
    text-align: left;
    font-family: Fira-Sans;
    font-size: 1rem;
    font-weight: 400
}

body.startseite .efvEditordiv {
    overflow: auto;
    width: 100%
}

body.startseite .efvEditorimg {
    height: 0
}

body.startseite .efvEditordiv table {
    border-collapse: separate;
    border-spacing: 0 1em
}

body.startseite .efvEditordiv table tr td:nth-of-type(1) {
    width: 180px
}

body.startseite .efvEditordiv table tr:nth-of-type(3n+0) td {
    border: 1px solid;
    border-left: 0;
    border-right: 0;
    border-top: 0;
    border-image: linear-gradient(to right, #fff 0, #fff 100%);
    border-image-slice: 1
}

body.news a.efvEditorlinks {
    text-decoration: none;
    font-family: Fira-Sans-SB;
    font-size: 20px;
    font-weight: 700;
    font-style: normal;
    color: #2b2b2b
}

body.news .efvEditorback span {
    text-decoration: none;
    font-family: Fira-Sans-SB;
    font-size: 20px;
    font-weight: 700;
    font-style: normal;
    color: #2b2b2b
}

body.news .efvPopupTitel {
    color: #2b2b2b;
    text-align: left;
    font-family: Fira-Sans;
    font-size: 20px
}

body.news .efvEditorback {
    color: #2b2b2b;
    text-align: left;
    font-family: Fira-Sans;
    font-size: 1rem;
    font-weight: 400
}

body.news .efvEditordiv {
    overflow: auto;
    width: 100%
}

body.news .efvEditorimg {
    height: 0
}

body.news .efvEditordiv table {
    border-collapse: separate;
    border-spacing: 0 1em
}

body.news .efvEditordiv table tr td:nth-of-type(1) {
    width: 180px
}

body.news .efvEditordiv table tr:nth-of-type(3n+0) td {
    border: 1px solid;
    border-left: 0;
    border-right: 0;
    border-top: 0;
    border-image: linear-gradient(to right, #2b2b2b 0, #2b2b2b 100%);
    border-image-slice: 1
}

#sticky-phantom {
    display: none
}

#sticky-phantom.abs {
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%
}

#content.stick {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 3;
    background: #fff;
    overflow-y: scroll
}

#content.stick.abs {
    position: absolute
}

.cat-entry {
    width: 100%;
    border-top: 1px solid #2b2b2b;
    box-sizing: border-box;
    padding-top: 10px;
    padding-bottom: 10px;
    margin-top: 25px
}

.cat-entry .col-1of2 {
    width: 50%;
    float: left
}

@media all and (max-width:840px) {
    .cat-entry .col-1of2 {
        width: 100%;
        float: none
    }

    .cat-entry .col-1of2 .font-14 {
        margin-top: 5px
    }

    .cat-entry .col-1of2 [data-adress] {
        padding-bottom: 20px
    }
}

.cat-entry .col-fiftyfifty {
    width: 50%;
    float: left
}

@media all and (max-width:840px) {
    .cat-entry .col-fiftyfifty {
        width: 100%;
        float: none
    }
}

.cat-entry [data-last] {
    margin-bottom: 30px
}

@media all and (max-width:800px) {

    body.koorperationspartner .row .column.column-66,
    body.koorperationspartner .row .column.column-67 {
        flex: 0 0 100%;
        max-width: 100%
    }
}

.burger {
    font-family: Fira-Sans, sans-serif !important;
    font-weight: 400;
}

@media (max-width: 767px) and (min-width: 320px) {
    .header-contact {
        right: 0rem;
        top: 60%;
        transform: translateY(-50%);
    }

    .burger {
        padding-left: 30px;
    }
}

.header-contact a.nav-item.active {
    text-decoration: underline;
}

.langpicker {
    margin: 5px;
}

  div.logo {
    display: inline-flex;
    flex-direction: column;
  }

  div.logo img {
    align-self: center;
  }

  div.logo img:last-of-type {
    padding-top: 9px;
  }

  .p-0 {
    padding:0;
  }

  .m-0 {
    margin:0 !important;
  }

/*************************************
 * formular
 ************************************/

 form .required { color: #033F85; }
 form .errormessage { display: none; padding: 10px 20px 10px 20px; margin-bottom: 30px; color: #aa0000; background-color: #f7f7f7; }
 form .errormessage p { margin: 0px; }
 .successmessage { display: none; padding: 0px 0px 30px 0px; }
 .successmessage p { margin: 0px; }
 
 input[type=text],
 input[type=password] { padding: 0px 10px 0px 10px; box-sizing : border-box; border: 1px solid #7c878d; background-color: #ffffff; color: #373E42; font-family: BarlowSemiCondensed, sans-serif; font-size: 0.95rem; line-height: 38px; }
 input[type=text]:hover, 
 input[type=text]:active, 
 input[type=text]:focus,
 input[type=password]:hover, 
 input[type=password]:active, 
 input[type=password]:focus { border: 1px solid #535d62; }
 textarea { height: 100px; padding: 5px 10px 5px 10px; border: 1px solid #7c878d; background-color: #ffffff; color: #373E42; font-family: BarlowSemiCondensed, sans-serif; font-size: 0.95rem; }
 
 input[type=text].has-error { border-color: #cc0000 !important; }
 textarea.has-error { border-color: #cc0000 !important; }
 
 label { padding-bottom: 5px; display: block; font-size: 0.9rem; }
 #requestform label { font-weight:bold; font-size:1rem;}
 #requestform label span.description { font-weight:400; margin-left:8px;}
 label.has-error,
 label.has-error a { color: #cc0000 !important; }
 
 .radiotitle { padding: 0px 20px 10px 0px; font-weight:bold;}
 .radiotitle.has-error { color: #cc0000 !important; }
 .radiogroup { display: flex; flex-wrap: nowrap; justify-content: flex-start; align-items: flex-start; }
 .radiogroup input[type=radio] { cursor: pointer; }
 .radiogroup label { padding: 0px 25px 0px 7px; cursor: pointer; }
 
 /* custom radio button */
 .radiospecial { padding: 0px 0px 0px 25px; position: relative; }
 .radiospecial input[type=radio] { position: absolute; left: 0px; top: 0px; opacity: 0; z-index: 20; cursor: pointer; }
 .radiospecial .checkmark { width: 21px; height: 21px; position: absolute; top: 1px; left: 0px; border: 1px solid #535d62; background-color: #ffffff; border-radius: 50%; cursor: pointer; }
 .radiospecial:hover input ~ .checkmark {  }
 .radiospecial input:checked ~ .checkmark {  }
 .radiospecial .checkmark::after { width: 13px; height: 13px; position: absolute; top: 3px; left: 3px; display: none; border-radius: 50%; background-color: #033F85; content: ""; }
 .radiospecial input:checked ~ .checkmark::after { display: block; }
 .radiospecial label { cursor: pointer; }
 
 .formelement { position: relative; }
 .formelement .searchbutton { width: 49px; height: 38px; position: absolute; right: 1px; top: 1px; display: block; font-size: 23px; line-height: 38px; color: #535d62; text-align: center; cursor: pointer; }
 
 form.standard .formrow { display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: stretch; }
 form.standard .formrow > * { margin-bottom: 20px; flex-basis: 100%; }
 form.standard .formrow.cols-2 > * { flex-basis: 50%; }
 form.standard .formrow.cols-2 > *:nth-child(1) { padding-right: 15px; }
 form.standard .formrow.cols-2 > *:nth-child(2) { padding-left: 15px; }
 form.standard input[type=text] { width: 100%; }
 form.standard textarea { width: 100%; }
 
 form.standard input[type=text] {background: rgba(155, 155, 155, 0.08);border: none;border-bottom: 1px solid #033F85;}
 form.standard textarea {background: rgba(155, 155, 155, 0.08);border: none;border-bottom: 1px solid #033F85;}
 
 .singlecheckbox {margin-right:12px;}

 .btn.btnsubmit,
 .btn-primary {
    background:#033F85;
    padding:8px 16px !important;
    color: #fff;
    opacity:1;
}

.btn.btnsubmit:hover,
.btn-primary:hover {
    opacity:.7;
    color: #fff;
}

.instagram-header {
    position: absolute;
    right:0;
}

.instagram-header img {
    filter: brightness(0) saturate(100%) invert(99%) sepia(0%) saturate(4888%) hue-rotate(134deg) brightness(110%) contrast(101%);
}

/* testimonials */

.testimonial-wrapper {
    margin-bottom: 6rem;
}

.row.testimonials {
    margin-top:2rem;
    display:flex;
    flex-wrap:wrap;
    justify-content: start;
    gap:2rem;
}

a.testimonial {
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    color: #2b2b2b;
}

a.testimonial:hover {
    color:#2b2b2b;
}

a.testimonial span:first-of-type {
    line-height:1.5;
    margin-top:5px;
}

a.testimonial span:nth-of-type(2) {
    font-size:12px;
}

a.testimonial .zoom-wrapper {
    overflow:hidden;
}

a.testimonial .zoom-wrapper img {
        transform:scale(1);
        transition: transform .15s linear;
}

a.testimonial:hover .zoom-wrapper img {
    transform:scale(1.1);
    transition: transform .35s linear;
}

/* benefits */

.ausschreibung.ausschreibungbreit {
    background:#033f85;
    background-image: linear-gradient(to right, #033f85 0%, #033f85 48%, #116edb 100%);
    margin-bottom: 24px;
    padding: 34px;
    justify-content:space-between;
    display: flex;
}

.ausschreibung.ausschreibungbreit .ausschreibung-inhalt {
    color:#fff !important;
}

.ausschreibung.ausschreibungbreit .ausschreibung-inhalt h6 {
    font-size: 1.4rem;
}

.ausschreibung.ausschreibungbreit .ausschreibung-icon {
    display:flex;
}


.benefits-section {
    margin-bottom:4rem;

    border-top: 1px solid #033f85;
    padding-top:4rem;
}

.benefits-container {
    display: flex;
    justify-content:space-between;

    flex-wrap: wrap;
    gap: 30px;
}

.benefit {
    flex: 0 0 auto;
    width: 20%;
    display: flex;
    flex-direction:column;
    align-items:center;
}

@media (max-width:600px) {
    .benefit {
        width: 42%;
    }
    .benefit h6 {
        font-size: 14px;
    }
}

/* .benefit img {
    filter:grayscale();
    transition: filter .3s linear;
} */

.benefit h6 {
    font-size:16px;
    margin:12px 0;
    font-weight: 400;
}

/* .benefit:hover img {
    filter: none;
    transition: filter .3s linear;
} */

.benefit:hover {
    cursor: pointer;
}

  /*  */

  .career-buttons-wrapper {
    display:flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 4rem;
  }
  
  .career-buttons-wrapper a.career-btn {
    flex: 0 0 auto;
    width: 40%;
    font-weight: bold;
    /*background-image: linear-gradient(to right, #1FA2FF 0%, #12D8FA  51%, #1FA2FF  100%);*/
    /*background-image: linear-gradient(to right, #0063a9 0%, #12D8FA  51%, #0063a9 100%);*/
    background-image: linear-gradient(to right, #033f85 0%, #033f85 13%, #116edb 54%, #116edb 100%);
    padding: 15px 45px;
    text-align: center;
    text-transform: uppercase;
    transition: 0.5s;
    background-size: 200% auto;
    color: white;
    box-shadow: 0 0 20px #eee;
    border-radius: 10px;
    box-shadow: 8px 8px 4px #00000042;
  }
  
  .career-buttons-wrapper a.career-btn:hover {
    background-position: right center; /* change the direction of the change here */
    color: #fff;
    text-decoration: none;
  }

  #team.sectionteam img {
    max-width: calc((100% - 80px)/ 8);
  }

  /*  */

#applicationformwrapper {
    background: #033f85;
    background-image: linear-gradient(to right, #033f85 0%, #033f85 28%, #116edb 100%);
}

#applicationformwrapper * {
    color: #fff;
}

#applicationformwrapper input,
#applicationformwrapper textarea{
    background:#fff;
    color:#033f85;
}

#applicationformwrapper #submitform,
a.btn-primary[data-src="#applicationformwrapper"] {
    background-image: linear-gradient(to right, #76cc8f 0%, #b1d03d  51%, #76cc8f  100%);
    padding: 15px 45px;
    text-align: center;
    text-transform: uppercase;
    transition: 0.5s;
    background-size: 200% auto;
    color: white;            
    border-radius: 10px;
    display: inline-block;
    font-weight: 700;
    padding: 10px 64px;
}

#applicationformwrapper #submitform:hover,
a.btn-primary[data-src="#applicationformwrapper"]:hover {
    background-position: right center; /* change the direction of the change here */
    color: #fff;
    text-decoration: none;
    opacity:1;
}

#applicationformwrapper a:not(.btn) {
    text-decoration:underline;
    font-weight:bold;
}

.errormessage p,
.text-danger,
.text-danger label {
    color: red !important;
}

.sidebar-career-btn {
    width: 100%;
    padding: 8px 0 !important;
}

@media (max-width:600px) {
    .sidebar-career-btn {
        margin-bottom:4rem;
    }
}

  /*  */

  .text-center {
    text-align: center !important;
  }

  /*  */

  .career-content.row {
    justify-content: space-between;
  }

  @media (max-width:1000px) {
    .career-content.row {
        display: flex !important;
        flex-direction: column !important;
        padding: 0 !important;
        width: 100% !important;
    }
    .column-30 {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
    }
    .column-60 {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
  }

  @media (max-width:1000px) {
    .career-buttons-wrapper {
     flex-direction:column;
        gap:2rem;
 } 
     .career-buttons-wrapper a {
         width:100% !important;
     }
 }

 @media (min-width:1001px) {
    .career-content .career-wide {
        margin-right:2rem;
    }
 }
 

 /* career arrow */


#carrow-container{
    z-index: 99999;
    position: absolute;
    left: -100vw;
    bottom: 18vh;
}

#carrow {

}

#carrow img {width: 100vw;}

  /*  */

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxheW91dC9ub3JtYWxpemUuc2NzcyIsInN0eWxlLmNzcyIsImxheW91dC9iYXNlLnNjc3MiLCJsYXlvdXQvdmFyaWFibGVzLnNjc3MiLCJsYXlvdXQvaGVhZGVyX25hdi5zY3NzIiwibGF5b3V0L2FuaW1hdGlvbi5zY3NzIiwibGF5b3V0L3Jlc3Quc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw0RUFVQSxLQUNFLFlBQWEsS0FDYix5QkFBMEIsS0FVNUIsS0FDRSxPQUFRLEVBUVYsR0FDRSxVQUFXLElBQ1gsT0FBUSxNQUFBLEVBV1YsR0FDRSxXQUFZLFlBQ1osT0FBUSxFQUNSLFNBQVUsUUFRWixJQUNFLFlBQWEsU0FBQSxDQUFBLFVBQ2IsVUFBVyxJQVViLEVBQ0UsaUJBQWtCLFlBUXBCLFlBQ0UsY0FBZSxLQUNmLGdCQUFpQixVQUNqQixnQkFBaUIsVUFBQSxPQU9uQixFQUNBLE9BQ0UsWUFBYSxPQVFmLEtBQ0EsSUFDQSxLQUNFLFlBQWEsU0FBQSxDQUFBLFVBQ2IsVUFBVyxJQU9iLE1BQ0UsVUFBVyxJQVFiLElBQ0EsSUFDRSxVQUFXLElBQ1gsWUFBYSxFQUNiLFNBQVUsU0FDVixlQUFnQixTQUdsQixJQUNFLE9BQVEsT0FHVixJQUNFLElBQUssTUFVUCxJQUNFLGFBQWMsS0FXaEIsT0FDQSxNQUNBLFNBQ0EsT0FDQSxTQUNFLFlBQWEsUUFDYixVQUFXLEtBQ1gsWUFBYSxLQUNiLE9BQVEsRUFRVixPQUNBLE1BQ0UsU0FBVSxRQVFaLE9BQ0EsT0FDRSxlQUFnQixLQ2RsQixjQUNBLGFBQ0EsY0RtQkEsT0FJRSxtQkFBb0IsT0NoQnRCLGdDQUNBLCtCQUNBLGdDRHFCQSx5QkFJRSxhQUFjLEtBQ2QsUUFBUyxFQ2xCWCw2QkFDQSw0QkFDQSw2QkR1QkEsc0JBSUUsUUFBUyxJQUFBLE9BQUEsV0FPWCxTQUNFLFFBQVMsTUFBQSxNQUFBLE9BVVgsT0FDRSxXQUFZLFdBQ1osTUFBTyxRQUNQLFFBQVMsTUFDVCxVQUFXLEtBQ1gsUUFBUyxFQUNULFlBQWEsT0FPZixTQUNFLGVBQWdCLFNBT2xCLFNBQ0UsU0FBVSxLQ3RCWixnQkFDQSxhRCtCRSxXQUFZLFdBQ1osUUFBUyxFQ3ZCWCx5Q0FDQSx5Q0QrQkUsT0FBUSxLQ3hCVixjRGlDRSxtQkFBb0IsVUFDcEIsZUFBZ0IsS0N6QmxCLHlDRGlDRSxtQkFBb0IsS0FRdEIsNkJBQ0UsbUJBQW9CLE9BQ3BCLEtBQU0sUUFVUixRQUNFLFFBQVMsTUFPWCxRQUNFLFFBQVMsVUFVWCxTQUNFLFFBQVMsS0NuQ1gsU0QyQ0UsUUFBUyxLRW5WWDs7Ozs7O0FBVUEsV0FDRSxZQUFhLFVBQ2IsSUFBSyxtQ0FFUCxXQUNFLFlBQWEsWUFDYixJQUFLLGtDQUVQLFdBQ0UsWUFBYSxhQUNiLElBQUssb0NBRVAsV0FDRSxZQUFhLE9BQ2IsSUFBSyxvQ0FFUCxXQUNFLFlBQWEsU0FDYixJQUFLLGtDQUdQLEVBQ0EsT0FDQSxRQUNFLFdBQVksUUFHZCxLQUNFLFdBQVksV0FDWixVQUFXLEtBQ1gsT0FBUSxLQUlWLEtBQ0UsTUN6Q1csUUQwQ1gsWUFBYSxTQUFBLENBQUEsZ0JBQUEsQ0FBQSxTQUFBLENBQUEsS0FBQSxDQUFBLFdBQ2IsVUFBVyxPQUNYLFlBQWEsSUFDYixlQUFnQixPQUNoQixZQUFhLE1BQ1osT0FBUSxLQUNSLFNBQVUsU0FDVixlQUFnQixNQUNoQixXQUFZLE9BRWIseUJBWkYsS0FhSSxVQUFXLEtBQ1gsWUFBYSxVQUlqQixJQUNFLE1BQU8sS0FFVCxVQUNFLFFBQVMsTUFFWCxPQUNFLFFBQVMsYUFFWCxTQUNFLFFBQVMsS0FFWCxTQUNFLFlBQWEsSUFDYixZQUFhLGFBRWYsVUFDRSxZQUFhLElBQ2IsWUFBYSxZQUVmLFFBQ0UsTUFBTyxNQUVULFFBQ0UsT0FBUSxNQUVWLE9BQ0UsT0FBUSxvQkFFVixNQUNFLE9BQVEsTUFDUixNQUFPLEtBRVQsS0FDRSxPQUFRLEtBQ1IsTUFBTyxLQUVULE1BQ0UsT0FBUSxNQUNSLE1BQU8sS0FFVCxPQUNFLGNBQWUsS0FFakIsT0FDRSxjQUFlLEtBRWpCLE9BQ0UsY0FBZSxLQUVqQixPQUNFLGNBQWUsS0FFakIsT0FDRSxjQUFlLEtBRWpCLE9BQ0UsY0FBZSxLQUVqQixPQUNFLGNBQWUsS0FFakIsTUFDRSxjQUFlLEVBRWpCLE9BQ0UsV0FBWSxLQUVkLE9BQ0UsV0FBWSxLQUVkLE9BQ0UsV0FBWSxLQUVkLFNBQ0UsVUFBVyxRQUViLFNBQ0UsVUFBVyxPQUViLFNBQ0UsVUFBVyxRQUViLFlBQ0UsTUNoSlcsUURrSmIsYUFDRSxNQUFPLEtBRVQsaUJBQ0UsaUJDdEpXLFFEd0piLEtBQ0UsZUFBZ0IsVUFFbEIsT0FDRSxZQUFhLElBRWYsT0FDRSxZQUFhLElBRWYsS0FDRSxNQUFPLEtBQ1AsT0FBUSxLQUVWLFNBQ0UsU0FBVSxTQUVaLFlBQ0UsV0FBWSxNQUVkLE9BQ0UsWUFBYSxLQUVmLE9BQ0UsWUFBYSxLQUVmLFNBQ0UsT0FBUSxFQUFBLEtBQ1IsVUFBVyxNQUNYLFNBQVUsU0FDVixNQUFPLEtBRVQsV0FDRSxPQUFRLEVBQUEsS0FDUixVQUFXLE1BQ1gsUUFBUyxFQUNULFNBQVUsU0FDVixNQUFPLEtBTFQsZ0JBT0ksVUFBVyxNQUViLGlDQVRGLFdBVUksUUFBVSxFQUFBLE1BSWQsS0FDRSxRQUFTLEtBQ1QsZUFBZ0IsT0FDaEIsUUFBUyxFQUNULE1BQU8sS0FHVCxvQkFDRSxRQUFTLEVBR1gsNEJBQ0UsUUFBUyxFQUdYLGNBQ0UsVUFBVyxLQUdiLGFBQ0UsWUFBYSxXQUdmLGdCQUNFLFlBQWEsU0FHZixnQkFDRSxZQUFhLE9BR2YsaUJBQ0UsWUFBYSxRQUdmLGtCQUNFLFlBQWEsU0FHZixhQUNFLFFBQVMsTUFDVCxLQUFNLEVBQUEsRUFBQSxLQUNOLFlBQWEsRUFDYixVQUFXLEtBQ1gsTUFBTyxLQUdULDhCQUNFLFlBQWEsSUFHZiw4QkFDRSxZQUFhLElBR2YsOEJBQ0UsWUFBYSxJQUdmLDhCQUNFLFlBQWEsSUFHZiw4QkFBK0IsOEJBQzdCLFlBQWEsU0FHZiw4QkFDRSxZQUFhLElBR2YsOEJBQStCLDhCQUM3QixZQUFhLFNBR2YsOEJBQ0UsWUFBYSxJQUdmLDhCQUNFLFlBQWEsSUFHZiw4QkFDRSxZQUFhLElBR2YsdUJBQ0UsS0FBTSxFQUFBLEVBQUEsSUFDTixVQUFXLElBR2IsdUJBQ0UsS0FBTSxFQUFBLEVBQUEsSUFDTixVQUFXLElBR2IsdUJBQ0UsS0FBTSxFQUFBLEVBQUEsSUFDTixVQUFXLElBR2IsdUJBQXdCLHVCQUN0QixLQUFNLEVBQUEsRUFBQSxTQUNOLFVBQVcsU0FHYix1QkFDRSxLQUFNLEVBQUEsRUFBQSxJQUNOLFVBQVcsSUFHYix1QkFDQSwrQkFDRSxLQUFNLEVBQUEsRUFBQSxJQUNOLFVBQVcsSUFHYix1QkFDRSxLQUFNLEVBQUEsRUFBQSxJQUNOLFVBQVcsSUFHYix1QkFBd0IsdUJBQ3RCLEtBQU0sRUFBQSxFQUFBLFNBQ04sVUFBVyxTQUdiLHVCQUNFLEtBQU0sRUFBQSxFQUFBLElBQ04sVUFBVyxJQUdiLHVCQUNFLEtBQU0sRUFBQSxFQUFBLElBQ04sVUFBVyxJQUdiLHVCQUNFLEtBQU0sRUFBQSxFQUFBLElBQ04sVUFBVyxJQUdiLHlCQUNFLFdBQVksV0FHZCw0QkFDRSxXQUFZLFNBR2QsNEJBQ0UsbUJBQW9CLE9BQ2hCLFdBQVksT0FHbEIseUJBQ0UsS0FDRSxlQUFnQixJQUdoQixNQUFPLEtBRVQsYUFDRSxjQUFlLFFBQ2YsUUFBUyxFQUFBLEtBRVgsVUFDRSxRQUFTLEtBRVgsV0FDRSxRQUFRLE9BSVoseUJBQ0UsVUFDRSxRQUFTLE1BRVgsV0FDRSxRQUFRLEtBRVYsU0FDTSxRQUFTLEtBS2YsdUJBQ0EsdUJBSEEsdUJBQ0EsdUJBS0EsK0JBREEsdUJBTkEsdUJBS0EsdUJBR0EsOEJBQ0UsS0FBTSxFQUFBLEVBQUEsS0FDTixVQUFXLEtBRWIsOEJBQ0UsWUFBYSxFQUVmLGdCQUdFLFFBQVMsRUFDVCxNQUFPLEtBRVQsWUFDRSxRQUFTLEtBQ1QsVUFBVyxLQUtmLEVBQ0UsTUMzWlcsUUQ0WlgsZ0JBQWlCLEtBR25CLFFBQVMsUUFDUCxNQzVaVSxRRGlhWixFQUNBLE9BQ0UsWUFBYSxJQUdmLEVBQ0UsV0FBWSxFQUdkLEdBQ0EsR0FDQSxHQUNBLEdBQ0EsR0FDQSxHQUNFLFlBQWEsSUFDYixlQUFnQixNQUNoQixjQUFlLEtBQ2YsV0FBWSxFQUNaLFlBQWEsYUFHZixHQUNBLFlBQ0UsVUFBVyxTQUNYLFlBQWEsSUFDYixjQUFlLE9BQ2YsZUFBZ0IsVUFDaEIseUJBTkYsR0FDQSxZQU1JLFVBQVcsUUFDWCxZQUFhLE1BQ2IsZUFBZ0IsV0FJcEIsR0FDRSxVQUFXLE9BQ1gsWUFBYSxLQUdmLEdBQ0UsVUFBVyxPQUNYLFlBQWEsSUFHZixHQUNFLFVBQVcsT0FDWCxlQUFnQixRQUNoQixZQUFhLEtBR2YsR0FDRSxVQUFXLE9BQ1gsZUFBZ0IsUUFDaEIsWUFBYSxJQUdmLEdBQ0UsVUFBVyxPQUNYLGVBQWdCLEVBQ2hCLFlBQWEsSUFHZixJQUNFLFVBQVcsS0FHYixnQkFDRSxNQUFPLEtBQ1AsUUFBUyxJQUNULFFBQVMsTUFHWCxZQUNFLE1BQU8sS0FHVCxhQUNFLE1BQU8sTUFHVCxxQkFDRSxRQUFTLEdBQ1QsU0FBVSxNQUNWLE1BQU8sS0FDUCxJQUFLLEVBQ0wsS0FBTSxFQUNOLE1BQU8sS0FDUCxPQUFRLEtBRVIsUUFBUyxJQUNULFdBQVksT0FDWixRQUFTLGFBQ1QsUUFBUyxZQUNULFFBQVMsS0FHWCxvQkFDRSxRQUFTLEdBQ1QsU0FBVSxNQUNWLElBQUssSUFDTCxLQUFNLElBQ04sTUFBTyxLQUNQLE9BQVEsS0FDUixPQUFRLE1BQUEsRUFBQSxFQUFBLE1BQ1IsZUFBZ0IsS0FDaEIsUUFBUyxJQUNULE9BQVEsSUFBQSxNQUFBLFFBQ1IsaUJBQWtCLEtBQ2xCLGNBQWUsSUFDZixtQkFBb0IsUUFBQSxJQUNwQixXQUFZLFFBQUEsSUFDWixrQkFBbUIsYUFBQSxJQUFBLE9BQUEsU0FBQSxTQUNuQixVQUFXLGFBQUEsSUFBQSxPQUFBLFNBQUEsU0FHYixnQ0FDRSxHQUNFLGtCQUFtQix1QkFDbkIsVUFBVyx3QkFJZix3QkFDRSxHQUNFLGtCQUFtQix1QkFDbkIsVUFBVyx3QkFRZixRQUNFLFNBQVUsU0FDVixTQUFVLE9BQ1YsTUFBTyxFQUNQLE9BQVEsRUFDUixlQUFnQixLRWhqQmxCLE9BQ0UsUUFBUyxLQUFBLEVBQ1QsTUFBTyxLQUNQLG1CQUFvQixJQUFBLElBQUEsWUFDdEIsZ0JBQWlCLElBQUEsSUFBQSxZQUNqQixlQUFnQixJQUFBLElBQUEsWUFDaEIsY0FBZSxJQUFBLElBQUEsWUFDZixXQUFZLElBQUEsSUFBQSxZQUNWLFFBQVMsRUFDVCxJQUFLLEVBQ0wsU0FBVSxNQUNWLGlCQUFrQixLQUNsQixXQUFZLFdBQ1osT0FBUSxNQUNSLGlDQWRGLE9BZUksT0FBUSxLQUNSLFFBQVMsTUFBQSxHQWhCYixjQW1CSSxPQUFRLEtBQ1IsUUFBUyxNQUFBLEVBRVQsaUNBdEJKLGNBdUJNLE9BQVEsS0FDUixRQUFTLE1BQUEsR0F4QmYsb0JBMkJNLE9BQVEsS0FDUixXQUFZLGdDQUNaLFlBQWEsT0E3Qm5CLGFBa0NJLE9BQVEsS0FDUixTQUFVLFNBQ1YsWUFBYSxLQUNiLGFBQWMsS0FDZCxNQUFPLEVBQ1AsS0FBTSxFQUNOLG1CQUFvQixJQUFBLElBQUEsWUFDeEIsZ0JBQWlCLElBQUEsSUFBQSxZQUNqQixlQUFnQixJQUFBLElBQUEsWUFDaEIsY0FBZSxJQUFBLElBQUEsWUFDZixXQUFZLElBQUEsSUFBQSxZQTVDWix1QkE4Q00sU0FBVSxTQUNWLEtBQU0sRUFDTixNQUFPLEVBQ1AsWUFBYSxLQUNiLGFBQWMsS0FDZCxJQUFLLGtCQUNMLFFBQVMsR0FFVCxRQUFTLEVBQ1QsUUFBUyxLQUdYLGlDQTFESixhQTJEUSxPQUFRLEtBQ1IsSUFBSyxHQTVEYixlQWdFSSxRQUFTLEtBQ1QsZ0NBakVKLGVBa0VNLFFBQVMsT0FNZixnQkFDRSxTQUFTLFNBQ1QsTUFBTyxLQUNQLFFBQVEsRUFIVixrQkFLSSxVQUFVLEtBQ1YsWUFBYSxZQUFBLENBQUEsV0FDYixNRC9FUyxRQ2tGYixRQUNJLE1BQU8sS0FDUCxPQUFRLEtBQ1IsV0FBWSxxQ0FDWixrQkFBbUIsVUFDbkIsZ0JBQWlCLEtBQ2pCLE9BQVEsS0FDUixPQUFRLFFBQ1IsVUFBVyxLQUNYLE1EM0ZTLFFDNEZULFlBQWEsT0FDYixlQUFnQixJQUNoQixZQUFhLElBQ2IsYUFBYyxLQWJsQixhQWVNLE1BQU8sS0FDUCxPQUFRLEtBQ1IsV0FBWSwyQ0FDWixrQkFBbUIsVUFDbkIsZ0JBQWlCLEtBQ2pCLGFBQWMsUUFDZCxZQUFhLFFBR2YsaUNBeEJKLFFBeUJNLFlBQWEsR0FHakIsTUFDRSxPQUFRLEtBQ1IsU0FBVSxTQUNWLFlBQWEsS0FDYixhQUFjLEtBQ2QsTUFBTyxFQUNQLEtBQU0sRUFDTixtQkFBb0IsSUFBQSxJQUFBLFlBQ3hCLGdCQUFpQixJQUFBLElBQUEsWUFDakIsZUFBZ0IsSUFBQSxJQUFBLFlBQ2hCLGNBQWUsSUFBQSxJQUFBLFlBQ2YsV0FBWSxJQUFBLElBQUEsWUFFUixpQ0FiRixNQWNJLE9BQVEsS0FFUixJQUFLLEdBR1gsSUFDRSxPQUFRLE1BQ1IsTUFBTyxLQUNQLFNBQVUsTUFDVixJQUFLLE9BQ0wsV0FBWSxXQUNaLFlBQWEsS0FDYixpQkR4SVcsUUN5SVgsUUFBUyxFQUNULG1CQUFvQixJQUFBLElBQUEsWUFDdEIsZ0JBQWlCLElBQUEsSUFBQSxZQUNqQixlQUFnQixJQUFBLElBQUEsWUFDaEIsY0FBZSxJQUFBLElBQUEsWUFDZixXQUFZLElBQUEsSUFBQSxZQUNWLGtCQUFtQixjQUNwQixlQUFnQixjQUNoQixhQUFjLGNBQ2QsY0FBZSxjQUNmLFVBQVcsY0FsQlosU0FvQkksSUFBSyxFQUNMLGlDQXJCSixTQXNCTSxPQUFRLE1BQ1IsV0FBWSxPQUNaLGVBQWdCLE1BeEJ0QixXQTJCTSxRQUFTLE1BM0JmLFdBK0JNLGtCQUFtQixrQkFDbEIsZUFBZ0Isa0JBQ2hCLGFBQWMsa0JBQ2QsY0FBZSxrQkFDZixVQUFXLGtCQUNYLGlDQXBDUCxXQXFDUSxrQkFBbUIsaUJBQ3BCLGVBQWdCLGlCQUNoQixhQUFjLGlCQUNkLGNBQWUsaUJBQ2YsVUFBVyxrQkF6Q2xCLE1BNkNJLFVBQVcsS0E3Q2YscUJBaURNLE1BQU8sS0FDUCxRQUFTLElBQ1QsUUFBUyxNQW5EZiwrQkF3REksYUFBYSxJQUVmLGlDQTFERixJQTJESSxPQUFRLEVBQ1IsSUFBSyxNQTVEVCwrQkE4REksYUFBYyxHQUtsQixTQUNFLFNBQVUsU0FDVixXQUFZLElBQUEsSUFBQSxZQUNaLG1CQUFvQixJQUFBLElBQUEsWUFDcEIsZ0JBQWlCLElBQUEsSUFBQSxZQUNqQixrQkFBbUIsY0FDcEIsZUFBZ0IsY0FDaEIsYUFBYyxjQUNkLGNBQWUsY0FDZixVQUFXLGNBQ1gsS0FBTSxFQUNOLE1BQU8sRUFDUCxXQUFZLEtBQ1osWUFBYSxLQUNiLGFBQWMsS0FDZCxlQUFnQixNQWZqQixnQkFpQkssa0JBQW1CLGtCQUNqQixlQUFnQixrQkFDaEIsYUFBYyxrQkFDZCxjQUFlLGtCQUNmLFVBQVcsa0JBS2xCLE9BQ0UsU0FBVSxTQUNWLE9BQVEsRUFDUixLQUFNLEVBQ04sTUFBTyxFQUNQLE9BQVEsS0NwT1YsTUFDRSxPQUFRLE1BRVYsU0FDRSxZQUFhLE1BQ2IsV0FBWSxJQUFBLEtBQUEsWUFDWixtQkFBb0IsSUFBQSxLQUFBLFlBQ3BCLGdCQUFpQixJQUFBLEtBQUEsWUFDakIsVUFBVyxtQkFMYixnQkFPSSxRQUFTLE1BQUEsRUFBQSxFQUVYLGlDQVRGLFNBVUksWUFBYSxNQUdqQixJQUNBLFFBQ0UsV0FBWSxNQUNaLFdBQVksV0FDWixPQUFRLG9CQUNSLFdBQVksc0NBQXNDLFVBQ2xELGdCQUFpQixNQUNqQixvQkFBcUIsT0FBQSxJQVB2QixXQUNBLGVBU0ksV0FBWSxzQ0FBc0MsVUFDbEQsZ0JBQWlCLE1BQ2pCLG9CQUFxQixPQUd2QixpQ0FmRixJQUNBLFFBZUksWUFBYSxFQUNiLE9BQVEsS0FBQSxFQUFBLEVBQ1IsV0FBWSxzQ0FBc0MsVUFDbEQsZ0JBQWlCLEtBQ2pCLG9CQUFxQixPQUFBLElBQ3JCLFdBQVksTUFyQmhCLFFBQ0EsWUFzQk0sUUFBUyxNQXlJZixlQUNFLFNBQVUsT0FFWixXQUNFLFNBQVUsU0FDVixJQUFLLEVBQ0wsTUFBTyxFQUNQLE9BQVEsRUFDUixLQUFNLEVBQ04sV0ZyTFksS0VzTFosUUFBUyxFQVBYLGtCQVVJLGVBQWdCLFVBQ2hCLE1GN0xTLFFFOExULFNBQVUsU0FDVixLQUFNLEVBQ04sTUFBTyxFQUNQLFlBQWEsS0FDYixhQUFjLEtBQ2QsVUFBVyxLQUNYLFlBQWEsSUFDYixXQUFZLE9BQ1osSUFBSyxrQkFFTCxRQUFTLEtBRVQsaUNBeEJKLGtCQXlCTSxJQUFLLE1BTVgsWUFDRSxRQUFTLEtBSVQsU0FBVSxTQUNWLElBQUssRUFDTCxNQUFPLEVBQ1AsT0FBUSxFQUNSLEtBQU0sS0FDTixhQUFjLEtBQ2QsWUFBYSxLQUNiLE1BQU8sTUFDUCxRQUFTLEVBWFQsaUNBRkYsWUFHTSxRQUFTLE1BWWIsaUNBZkYsWUFpQkksVUFBVyxNQUNYLEtBQU0sRUFDTixNQUFPLEVBQ1AsWUFBYSxLQUNiLGFBQWMsTUFyQmxCLHlCQXlCSSxlQUFnQixVQUNoQixNRjNPUyxRRTRPVCxVQUFXLE1BQ1gsTUFBTyxLQUNQLFdBQVksS0FDWixjQUFlLE1BQ2YsUUFBUyxNQUNULFVBQVcsS0FDWCxZQUFhLElBQ2IsWUFBYSxLQUViLG1DQXBDSix5QkFxQ00sVUFBVyxNQUViLGlDQXZDSix5QkF3Q00sVUFBVyxNQUNYLFlBQWEsS0FFZixpQ0EzQ0oseUJBNENNLFFBQVMsTUE1Q2YsOEJBK0NNLFFBQVMsTUEvQ2Ysa0JBb0RJLFdBQVksSUFBQSxJQUFBLFlBQ1osbUJBQW9CLElBQUEsSUFBQSxZQUNwQixnQkFBaUIsSUFBQSxJQUFBLFlBQ2pCLE1BQU8sTUFDUCxPQUFRLEtBQ1IsY0FBZSxLQUNmLFNBQVUsU0FDVixtQ0EzREosa0JBNERNLFVBQVcsTUFFYixpQ0E5REosa0JBK0RNLFFBQVMsTUEvRGYsc0JBbUVNLFNBQVUsU0FDVixPQUFRLEVBQ1IsTUFBTyxJQUNQLFdGblJNLFFFNk1aLDBCQTBFTSxNQUFPLEVBQ1AsT0FBUSxLQUNSLFFBQVMsTUFDVCxNQUFPLEtBQ1AsaUJBQWtCLG9FQUNsQixVQUFXLEtBQ1gsWUFBYSxJQUNiLFdBQVksV0FqRmxCLDhCQW9GUSxZQUFhLEtBcEZyQixtQkE2RkksV0FBWSxJQUFBLElBQUEsWUFDWixtQkFBb0IsSUFBQSxJQUFBLFlBQ3BCLGdCQUFpQixJQUFBLElBQUEsWUFDakIsTUFBTyxNQUNQLE9BQVEsS0FDUixXQUFZLEtBQ1osU0FBVSxTQVRWLGlDQTFGSixtQkEyRk0sUUFBUyxNQVNYLG1DQXBHSixtQkFxR00sVUFBVyxNQXJHakIsdUJBd0dNLFNBQVUsU0FDVixPQUFRLEVBQ1IsTUFBTyxJQUNQLFdGeFRNLFFFNk1aLDJCQThHTSxNQUFPLEVBQ1AsT0FBUSxLQUNSLFlBQWEsS0FDYixRQUFTLE1BQ1QsTUZuVU8sUUVvVVAsaUJBQWtCLG9FQUNsQixVQUFXLFFBQ1gsWUFBYSxJQUNiLFdBQVksV0F0SGxCLHdCQTZITSxRQUFTLEtBQ1QsdURBOUhOLHdCQStIUSxRQUFTLE1BQ1QsV0FBWSxJQUFBLElBQUEsWUFDWixtQkFBb0IsSUFBQSxJQUFBLFlBQ3BCLGdCQUFpQixJQUFBLElBQUEsWUFDakIsVUFBVyxLQUNYLE1BQU8sS0FDUCxPQUFRLEtBQ1IsU0FBVSxTQXRJbEIsZ0NBd0lZLFNBQVUsU0FDVixPQUFRLEVBQ1IsTUFBTyxJQUNQLFdGeFZBLFFFNk1aLGdDQThJWSxNQUFPLEVBQ1AsT0FBUSxLQUNSLFlBQWEsS0FDYixRQUFTLE1BQ1QsTUZuV0MsUUVvV0QsaUJBQWtCLG9FQUNsQixVQUFXLFFBQ1gsWUFBYSxJQUNiLFdBQVksV0F0SnhCLGlDQTBKVSxRQUFTLEtBQ1QsV0FBWSxJQUFBLElBQUEsWUFDWixtQkFBb0IsSUFBQSxJQUFBLFlBQ3BCLGdCQUFpQixJQUFBLElBQUEsWUFDakIsT0FBUSxNQUNSLFdBQVksS0FDWixXQUFZLFdBQ1osUUFBUyxLQUNULE1BQU8sS0FsS2pCLG1DQW9LWSxVQUFXLEtBQ1gsUUFBUyxNQUNULFlBQWEsSUFDYixPQUFRLEVBdktwQix5Q0EwS1ksUUFBUyxNQUNULFNBQVUsU0FDVixPQUFRLE9BQ1IsUUFBUyxFQUNULFdBQVksSUFBQSxJQUFBLGFBVXhCLHFCQUNJLEdBRVEsSUFBSyxJQUVMLE9BQVEsTUFHaEIsS0FDTSxJQUFLLEtBQ0wsT0FBUSxNQUdsQixxQkFDRSxHQUFJLE9BQVEsTUFBTyxRQUFTLEVBQzVCLEtBQU0sT0FBTyxFQUFHLFFBQVMsRUFBRyxRQUFTLE1BRXZDLHFCQUNFLEdBQUksUUFBUyxFQUFHLFVBQVcsY0FBYyxrQkFDekMsS0FBTSxRQUFTLEVBQUcsVUFBVyxTQUFZLGVBRTNDLG1CQUNFLElBQ0Usa0JBQW1CLGdCQUFnQixhQUNuQyxVQUFXLGdCQUFnQixhQUU3QixJQUNFLGtCQUFtQixpQkFBaUIsY0FDcEMsVUFBVyxpQkFBaUIsY0FFOUIsSUFDRSxrQkFBbUIsZ0JBQWdCLGFBQ25DLFVBQVcsZ0JBQWdCLGFBRTdCLElBQ0Usa0JBQW1CLGlCQUFpQixjQUNwQyxVQUFXLGlCQUFpQixjQUU5QixJQUNFLGtCQUFtQixnQkFBZ0IsYUFDbkMsVUFBVyxnQkFBZ0IsYUFFN0IsSUFDRSxrQkFBbUIsaUJBQWlCLGNBQ3BDLFVBQVcsaUJBQWlCLGNBRTlCLElBQ0Usa0JBQW1CLGdCQUFnQixhQUNuQyxVQUFXLGdCQUFnQixhQUU3QixJQUNFLGtCQUFtQixpQkFBaUIsY0FDcEMsVUFBVyxpQkFBaUIsY0FFOUIsSUFDRSxrQkFBbUIsZ0JBQWdCLFVBQ25DLFVBQVcsZ0JBQWdCLFVBRTdCLEtBQ0Usa0JBQW1CLGlCQUFpQixVQUNwQyxVQUFXLGlCQUFpQixXQUdoQyxhQUVFLFFBQVMsYUFDVCxlQUFnQixPQUNoQixVQUFXLGlCQUFpQixjQUM1QixTQUFVLFNBS1YsT0FBUSxLQUNSLE1BQU8sS0FDUCxNQUFPLEtBWlQsa0JBY0ksZUFBZ0IsUUFDakIsMEJBQTJCLE9BQzNCLG1CQUFvQixLQUVwQiwwQkFBMkIsRUFHOUIsU0FFRSxNQUFPLEtBQ1AsU0FBVSxTQUNWLE9BQVEsRUFKVixjQU9JLFNBQVUsU0FDVixJQUFLLElBUlQsa0JBV00sTUFBTyxJQVhiLHFCQUFBLHFCQWNNLFVBQVcsS0FDWCxjQUFlLEtBQ2YsUUFBUyxhQWhCZixxQkFtQkssWUFBYSxLQW5CbEIsb0JBdUJJLFNBQVUsU0FDVixPQUFPLE9BQ1AsS0FBTSxLQUNOLGdDQTFCSixvQkEyQk0sT0FBUSxRQUNSLEtBQU0sUUE1QlosbUNBOEJRLE1GM2ZLLFFFNGZMLFFBQVMsRUFBQSxNQUlmLGdDQW5DRixTQXFDSSxPQUFRLEtBSVosZ0NBQ0UsV0FDRSxRQUFTLE1BR2IsSUFDRSxTQUFVLFNBQ1YsT0FBUSxFQUNSLGdDQUhGLElBSUksUUFBUyxNQUdiLElBS0UsUUFBUyxLQUNULE1BQU8sTUFDUCxPQUFRLE1BQ1IsTUYxaEJXLFFFMmhCWCxXQUFZLElBQUEsSUFBQSxZQUNaLFNBQVUsT0FDVixhQUFjLGNBQ2QsZ0JBQWlCLE9BQ2pCLFNBQVUsU0FiWixNQXNCRSxRQUFTLEtBQ1AsWUFBYSxPQUNiLGdCQUFpQixPQXhCckIsY0E2QkksT0FBUSxZQUNSLFFBQVMsRUFDVCxlQUFnQixVQUNoQixtQkFBb0IsSUFDcEIsV0FBWSxLQWpDaEIsZUF1Q0ksUUFBUyxFQUNULFVBQVcsY0FBYyxrQkFDekIsV0FBWSxJQUFBLEtBQUEsWUFDWixVQUFXLFNBQ1gsWUFBYSxJQUNiLGNBQWUsT0FDZixlQUFnQixVQUNoQixZQUFhLElBQ2IsZUFBZ0IsTUFDaEIsY0FBZSxLQUNmLFdBQVksRUFDWixZQUFhLGFBQ2IseUJBbkRKLGVBb0RNLFVBQVcsUUFDWCxZQUFhLE1BQ2IsZUFBZ0IsV0F0RHRCLGtDQXlETSxRQUFTLEVBQ1QsVUFBVyxTQUFZLGNBQ3ZCLGVBQWdCLFVBQ2hCLG1CQUFvQixLQTVEMUIsbUJBZ0VJLFFBQVMsS0FDVCxVQUFXLFNBQ1gsWUFBYSxJQUNiLGNBQWUsT0FDZixlQUFnQixVQUNoQixZQUFhLElBQ2IsZUFBZ0IsTUFDaEIsY0FBZSxLQUNmLFdBQVksRUFDWixZQUFhLGFBQ2IseUJBMUVKLG1CQTJFTSxVQUFXLFFBQ1gsWUFBYSxNQUNiLGVBQWdCLFdBN0V0QixhQWtGSSxRQUFTLEVBQ1QsTUFBTyxNQUNQLFFBQVMsS0FwRmIsNkJBd0ZNLFFBQVMsTUFDVCxRQUFTLEVBRVQsU0FBVSxTQUNWLEtBQU0sRUFDTixNQUFPLEVBQ1AsWUFBYSxLQUNiLGFBQWMsS0FFZCxJQUFLLElBakdYLGlCQXNHTSxZQUFhLEtBQU0sYUFBYyxLQUFNLEtBQU0sRUFBRyxNQUFPLEVBQ3ZELE9BQVEsS0FDUixJQUFLLEtBQ0wsZUFBZ0IsVUFDaEIsbUJBQW9CLElBS3hCLGdDQS9HRixJQWdISSxRQUFTLEtBQ1QsU0FBVSxRQUNWLE9BQVEsU0FLWixXQUNFLFVBQVcsS0FDWCxPQUFRLEtBQ1IsWUFBYSxLQUNiLGlCQUFrQixLQUNsQixNRjlvQlcsUUUrb0JYLFFBQVMsRUFBQSxLQUNULFdBQVksSUFBQSxJQUFBLFlBQ1osY0FBZSxJQVJqQixpQkFVSSxNRi9vQlEsUUVpcEJWLGdDQVpGLFdBYUksUUFBUyxFQUFBLElBQ1QsUUFBUyxPQUlaLGNBT0csV0FBWSxJQUFBLElBQUEsWUFDWixtQkFBb0IsSUFBQSxJQUFBLFlBQ3BCLGdCQUFpQixJQUFBLElBQUEsWUFDakIsTUFBTyxNQUNQLE9BQVEsS0FDUixjQUFlLEtBQ2YsU0FBVSxTQUNWLG1DQWRILGNBZUssVUFBVyxNQUViLGlDQWpCSCxjQWtCSyxRQUFTLE1BbEJkLGtCQXNCSyxTQUFVLFNBQ1YsT0FBUSxFQUNSLE1BQU8sSUFDUCxXRmhyQk0sUUV1cEJYLHNCQTZCSyxNQUFPLEVBQ1AsT0FBUSxLQUNSLFlBQWEsS0FDYixRQUFTLE1BQ1QsTUFBTyxLQUdQLGlCQUFrQiwwREFDbEIsVUFBVyxLQUNYLFlBQWEsSUFDYixXQUFZLFdBdkNqQiwwQkEwQ08sWUFBYSxLQTFDcEIsZUFtREcsV0FBWSxJQUFBLElBQUEsWUFDWixtQkFBb0IsSUFBQSxJQUFBLFlBQ3BCLGdCQUFpQixJQUFBLElBQUEsWUFDakIsTUFBTyxNQUNQLE9BQVEsS0FDUixXQUFZLEtBQ1osU0FBVSxTQVRWLGlDQWhESCxlQWlESyxRQUFTLE1BU1gsbUNBMURILGVBMkRLLFVBQVcsTUEzRGhCLG1CQThESyxTQUFVLFNBQ1YsT0FBUSxFQUNSLE1BQU8sSUFDUCxXRnh0Qk0sUUV1cEJYLHVCQW9FSyxNQUFPLEVBQ1AsT0FBUSxLQUNSLFlBQWEsS0FDYixRQUFTLE1BQ1QsTUZudUJPLFFFb3VCUCxpQkFBa0Isb0VBQ2xCLFVBQVcsUUFDWCxZQUFhLElBQ2IsV0FBWSxXQTVFakIsb0JBbUZLLFFBQVMsS0FDVCx1REFwRkwsb0JBcUZPLFFBQVMsTUFDVCxXQUFZLElBQUEsSUFBQSxZQUNaLG1CQUFvQixJQUFBLElBQUEsWUFDcEIsZ0JBQWlCLElBQUEsSUFBQSxZQUNqQixVQUFXLEtBQ1gsTUFBTyxLQUNQLE9BQVEsS0FDUixTQUFVLFNBNUZqQiw0QkE4RlcsU0FBVSxTQUNWLE9BQVEsRUFDUixNQUFPLElBQ1AsV0Z4dkJBLFFFdXBCWCw0QkFvR1csTUFBTyxFQUNQLE9BQVEsS0FDUixZQUFhLEtBQ2IsUUFBUyxNQUNULE1GbndCQyxRRW93QkQsaUJBQWtCLG9FQUNsQixVQUFXLFFBQ1gsWUFBYSxJQUNiLFdBQVksV0E1R3ZCLDZCQWdIUyxRQUFTLEtBQ1QsV0FBWSxJQUFBLElBQUEsWUFDWixtQkFBb0IsSUFBQSxJQUFBLFlBQ3BCLGdCQUFpQixJQUFBLElBQUEsWUFDakIsT0FBUSxNQUNSLFdBQVksS0FDWixXQUFZLFdBQ1osUUFBUyxLQUNULE1BQU8sS0F4SGhCLCtCQTBIVyxVQUFXLEtBQ1gsUUFBUyxNQUNULFlBQWEsSUFDYixPQUFRLEVBN0huQixxQ0FnSVcsUUFBUyxNQUNULFNBQVUsU0FDVixPQUFRLE9BQ1IsUUFBUyxFQUNULFdBQVksSUFBQSxJQUFBLGFBVXhCLEtBQ0UsV0FBWSxJQUFBLElBQUEsWUFDWixtQkFBb0IsSUFBQSxJQUFBLFlBQ3BCLGdCQUFpQixJQUFBLElBQUEsWUFDakIsT0FBUSxLQUNSLE1BQU8sS0FMVCxTQVNFLFNBQVUsU0NsekJaLFVBQ0MsT0FBUSxRQUNSLFdBQVksSUFBQSxJQUFBLFlBQ1osbUJBQW9CLElBQUEsSUFBQSxZQUNwQixnQkFBaUIsSUFBQSxJQUFBLFlBSmxCLHFCQU9FLFFBQVMsR0FQWCxpQkFBQSxrQkFZRSxRQUFTLEVBR1gsbUJBQ0MsT0FBUSxLQUFBLEVBQ1IsV0FBWSxXQUNaLFdBQVksSUFBSSxNQUFNLGVBQ3RCLFlBQWEsS0FDYixNQUFPLEtBTFIsd0JBUUUsUUFBUyxLQVJYLDBCQVlFLFNBQVUsU0FDVixNQUFPLEtBQ1AsV0FBWSxLQUNaLE9BQVEsUUFJVixrQkFDQyxXQUFZLEtBQ1osUUFBUyxLQUFBLEVBQ1QsV0hyQ1ksUUdzQ1osTUFBTyxLQUpSLDJCQU9FLFNBQVMsU0FDVCxXQUFZLFdBQ1osZUFBZ0IsS0FDaEIsY0FBZSxLQUVmLGlDQVpGLDJCQWFHLE1BQU8sS0FDUCxVQUFXLEtBQ1gsS0FBTSxFQUFBLEVBQUEsTUFmVCxxQ0FtQkcsU0FBVSxTQUNWLE9BQVEsRUFHVixpQ0F2QkQsa0JBd0JFLFFBQVMsS0FBQSxNQUdYLFVBQ0MsUUFBUyxhQUNULGNBQWUsS0FDZixXQUFZLGdEQUNaLGtCQUFtQixVQUNuQixnQkFBaUIsS0FBQSxLQUNqQixvQkFBcUIsS0FBQSxJQUNyQixNQUFPLEtBQ1AsT0FBUSxRQUVULFNBQ0MsTUFBTyxLQUNQLE9BQVEsSUFDUixpQkgxRVksUUc2RWIsVUFDQyxNQUFPLEtBQ1AsV0FBWSxXQUNaLFFBQVMsS0FBQSxFQUNULGlCSGpGWSxRR29GYixTQUNDLGNBQWUsS0FNaEIsd0JBQ0Esb0JBQ0EsbUJBQ0MsY0FBZSxFQUdoQixNQUNDLE1BQU8sS0FDUCxXQUFZLFFBQ1osUUFBUyxLQUFBLEVBSFYsYUFLUyxPQUFRLE1BQU8sV0FBWSxLQXNCcEMsd0JBSUUsTUFBTyxLQUNQLE9BQVEsSUFDUixRQUFRLEVBQ1IsTUFBTyxLQUNQLFlBQWEsRUFDYixpQ0FURix3QkFVRyxVQUFXLHdCQUVaLHVEQVpGLHdCQWFHLFVBQVcsdUJBRVosaUNBZkYsd0JBZ0JHLFVBQVcsdUJBSWQsc0JBQ0MsY0FBZSxNQUVoQixrQkFHRSxVQUFXLFFBSGIsMkJBTUcsY0FBZSxFQU5sQiw2QkFRSSxjQUFlLEVBUm5CLHdCQWNFLFlBQWEsbUJBQ2Isd0JBZkYsd0JBZ0JHLGFBQWMsS0FDZCxjQUFlLE1BRWhCLHlCQW5CRix3QkFvQkcsWUFBYSxPQU1oQiw2QkFHRSxjQUFlLEVBSGpCLDBCQU9FLFlBQWEsbUJBQ2Isd0JBUkYsMEJBU0csYUFBYyxLQUNkLGNBQWUsTUFFaEIseUJBWkYsMEJBYUcsWUFBYSxPQU1oQixrQkFGQSx3QkFDQSxvQkFFQSxrQ0FFRSxZQUFhLG1CQUNiLHdCQUpGLGtCQUZBLHdCQUNBLG9CQUVBLGtDQUlHLGFBQWMsS0FDZCxjQUFlLE1BRWhCLHlCQVJGLGtCQUZBLHdCQUNBLG9CQUVBLGtDQVFHLFlBQWEsT0FUaEIscUJBRkEsMkJBQ0EsdUJBRUEscUNBV0csY0FBZSxFQUlsQix1QkFHRSxZQUFhLG1CQUNiLHdCQUpGLHVCQUtHLGFBQWMsS0FDZCxjQUFlLE1BRWhCLHlCQVJGLHVCQVNHLFlBQWEsT0FUaEIsMEJBWUcsY0FBZSxFQU1sQixtQ0FFRSxZQUFhLG1CQUZmLHNDQUlHLGNBQWUsRUFFaEIsd0JBTkYsbUNBT0csYUFBYyxLQUNkLGNBQWUsTUFFaEIseUJBVkYsbUNBV0csWUFBYSxPQUtoQixtQkFNRSxZQUFhLG1CQU5mLHNCQUlHLGNBQWUsRUFHaEIsd0JBUEYsbUJBUUcsYUFBYyxLQUNkLGNBQWUsTUFFaEIseUJBWEYsbUJBWUcsWUFBYSxPQUtoQixvQkFFRSxZQUFhLGFBQ2IsWUFBYSxJQUhmLG9CQU9FLFlBQWEsSUFDVixZQUFhLGFBUmxCLFdBQUEsWUFXRSxZQUFhLFFBQ2IsWUFBYSxVQUlmLFdBQ0MsV0FBWSxtQ0FDWixrQkFBbUIsVUFDbkIsb0JBQXFCLEVBQUEsSUFDckIsZ0JBQWlCLEtBQ2pCLE9BQVEsUUFDUixhQUFjLEtBQ2QsVUFBVyxLQUNYLFFBQVMsYUFDVCxjQUFlLEtBRWhCLGVBQ0MsV0FBWSx1Q0FDWixrQkFBbUIsVUFDbkIsb0JBQXFCLEVBQUEsSUFDckIsZ0JBQWlCLEtBQ2pCLE9BQVEsUUFDUixhQUFjLEtBQ2QsVUFBVyxLQUNYLFFBQVMsYUFDVCxNQUFPLEtBQ1AsY0FBZSxLQUdoQix1QkFHRSxZQUFhLFlBQ2Isc0JBQXVCLEVBQ3BCLHFCQUFzQixFQUN0QixxQkFBc0IsRUFDdEIsbUJBQW9CLEVBQ3BCLHNCQUF1QixFQVI1QiwwQkFXRyxZQUFhLElBQ2IsZ0JBQWlCLEtBQ2pCLGNBQWUsS0FDZixZQUFhLElBS2hCLGVBRUMsUUFBUyxLQUFBLEVBQ1QsV0FBWSxJQUFJLE1IalVKLFFHcVViLGNBQ0MsUUFBUyxNQUNULE1BQU8sS0FGUixzQkFLRSxRQUFTLFdBSVgsS0FDSSxTQUFVLE9BSWQsWUFDSSxNQUFPLGVBQ1AsTUFBTyxLQUNQLE9BQVEsS0FDUixRQUFTLEVBQ1QsT0FBUSxRQUNSLFFBQVMsRUFBQSxLQUFBLEVBQUEsRUFDVCxXQUFZLElBQ1osY0FBZSxLQUNmLFdBQVksSUFDWixpQ0FWSixZQVdLLFFBQVMsRUFBQSxLQUFBLEVBQUEsR0FLZCxrQkFDSSxNSHBXUyxRR3dXYixtQkFDSSxNSHpXUyxRRzZXYixZQUNJLFFBQVMsS0FDVCxRQUFTLE9BQUEsRUFDVCxVQUFXLFdBQUEsSUFFZixzQkFDSSxLQUFNLFFBQVMsRUFDZixHQUFJLFFBQVMsR0FHakIsZ0JBQ0EsY0FDQyxjQUFlLEVBSWhCLGlDQUdBLGdCQUFnQixLQUNoQixZQUFZLGFBQ1osVUFBVSxLQUNWLFlBQVksSUFDWixXQUFXLE9BQ1gsaUJBQWtCLFFBQ2xCLE1BQU8sS0FUUCxvQ0FhQSxnQkFBZ0IsS0FDaEIsWUFBWSxhQUNaLFVBQVUsS0FDVixZQUFZLElBQ1osV0FBVyxPQUNYLGlCQUFrQixRQUNsQixNQUFPLEtBbkJQLCtCQXVCQSxpQkFBa0IsUUFDbEIsTUFBTyxLQUNQLFdBQVcsS0FDWCxZQUFZLFVBQ1osVUFBVSxLQTNCViwrQkFnQ0EsaUJBQWtCLFFBQ2xCLE1BQU8sS0FDUCxXQUFXLEtBQ1gsWUFBWSxVQUNaLFVBQVUsS0FDVixZQUFZLElBckNaLDhCQXlDQSxTQUFTLEtBQ1QsTUFBTSxLQTFDTiw4QkErQ0EsT0FBTyxFQS9DUCxvQ0FrREksZ0JBQWlCLFNBQ2pCLGVBQWdCLEVBQUEsSUFuRHBCLHlEQXVEQyxNQUFPLE1BdkRSLDREQTZEQyxPQUFRLElBQUEsTUFDUixZQUFhLEVBQ1gsYUFBYyxFQUNkLFdBQVksRUFFWixhQUFjLDJDQUNkLG1CQUFvQixFQU12QiwyQkFHQSxnQkFBZ0IsS0FDaEIsWUFBWSxhQUNaLFVBQVUsS0FDVixZQUFZLElBQ1osV0FBVyxPQUVYLE1BQU8sUUFUUCw4QkFhQSxnQkFBZ0IsS0FDaEIsWUFBWSxhQUNaLFVBQVUsS0FDVixZQUFZLElBQ1osV0FBVyxPQUVYLE1BQU8sUUFuQlAseUJBd0JBLE1BQU8sUUFDUCxXQUFXLEtBQ1gsWUFBWSxVQUNaLFVBQVUsS0EzQlYseUJBaUNBLE1BQU8sUUFDUCxXQUFXLEtBQ1gsWUFBWSxVQUNaLFVBQVUsS0FDVixZQUFZLElBckNaLHdCQXlDQSxTQUFTLEtBQ1QsTUFBTSxLQTFDTix3QkErQ0EsT0FBTyxFQS9DUCw4QkFrREksZ0JBQWlCLFNBQ2pCLGVBQWdCLEVBQUEsSUFuRHBCLG1EQXVEQyxNQUFPLE1BdkRSLHNEQTZEQyxPQUFRLElBQUEsTUFDUixZQUFhLEVBQ1gsYUFBYyxFQUNkLFdBQVksRUFFWixhQUFjLGlEQUNkLG1CQUFvQixFQVF2QixnQkFDSSxRQUFTLEtBRWIsb0JBQ0MsUUFBUyxFQUNULFNBQVUsU0FDVixJQUFLLEVBQ0wsS0FBTSxFQUNOLE1BQU8sS0FHUixlQUNJLFNBQVUsTUFDVixJQUFLLEVBQ0wsS0FBTSxFQUNOLE1BQU8sS0FDUCxRQUFRLEVBQ1IsV0FBWSxLQUNaLFdBQVksT0FFaEIsbUJBQ0MsU0FBVSxTQUlYLFdBQ0MsTUFBTyxLQUNQLFdBQVksSUFBQSxNQUFBLFFBQ1osV0FBWSxXQUNaLFlBQWEsS0FDYixlQUFnQixLQUNoQixXQUFZLEtBTmIscUJBU0UsTUFBTyxJQUNQLE1BQU0sS0FDTixpQ0FYRixxQkFZRyxNQUFPLEtBQ1AsTUFBTyxLQWJWLDhCQWdCSSxXQUFZLElBaEJoQixtQ0FtQkksZUFBZ0IsTUFuQnBCLDJCQXdCRSxNQUFPLElBQ1AsTUFBTyxLQUNQLGlDQTFCRiwyQkEyQkcsTUFBTyxLQUNQLE1BQU8sTUE1QlYsdUJBaUNFLGNBQWUsS0FLaEIsaUNBRkQsaURBQ0EsaURBRUUsS0FBTSxFQUFBLEVBQUEsS0FDSCxVQUFXIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn0iLG51bGwsIi8qIVxuICogTWlsbGlncmFtIHYxLjMuMFxuICogaHR0cHM6Ly9taWxsaWdyYW0uZ2l0aHViLmlvXG4gKlxuICogQ29weXJpZ2h0IChjKSAyMDE3IENKIFBhdG9pbG9cbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICovXG5cbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcblxuQGZvbnQtZmFjZSB7IFxuICBmb250LWZhbWlseTogXCJGaXJhLVNhbnNcIjsgXG4gIHNyYzogdXJsKFwiLi4vZm9udHMvRmlyYVNhbnMtUmVndWxhci50dGZcIik7IFxufVxuQGZvbnQtZmFjZSB7IFxuICBmb250LWZhbWlseTogXCJGaXJhLVNhbnMtTVwiOyBcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9GaXJhU2Fucy1NZWRpdW0udHRmXCIpOyBcbn1cbkBmb250LWZhY2UgeyBcbiAgZm9udC1mYW1pbHk6IFwiRmlyYS1TYW5zLVNCXCI7IFxuICBzcmM6IHVybChcIi4uL2ZvbnRzL0ZpcmFTYW5zLVNlbWlCb2xkLnR0ZlwiKTsgXG59XG5AZm9udC1mYWNlIHsgXG4gIGZvbnQtZmFtaWx5OiBcIkJhcmxvd1wiOyBcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9CYXJsb3ctRXh0cmFMaWdodC50dGZcIik7IFxufVxuQGZvbnQtZmFjZSB7IFxuICBmb250LWZhbWlseTogXCJCYXJsb3dTQlwiOyBcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9CYXJsb3ctU2VtaUJvbGQudHRmXCIpOyBcbn1cblxuKixcbio6YWZ0ZXIsXG4qOmJlZm9yZSB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmh0bWwgIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gXG59XG5cbmJvZHkge1xuICBjb2xvcjogJGNvbG9yLW1haW47XG4gIGZvbnQtZmFtaWx5OiAnRmlyYS1TYW5zJywgJ0hlbHZldGljYSBOZXVlJywgJ0hlbHZldGljYScsICdBcmlhbCcsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogLjA3NWVtO1xuICBsaW5lLWhlaWdodDogMS44NzU7XG4gICBoZWlnaHQ6IDEwMCU7XG4gICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICBcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwcmVtKSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjYyNXJlbTtcbiAgfVxufVxuXG4uY2Ige1xuICBjbGVhcjogYm90aDtcbn1cbi5kcC1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmRwLWliIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmRwLWZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmZvbnQtc2Ige1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogXCJGaXJhLVNhbnMtU0JcIjtcbn1cbi5mb250LW1lZCB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtZmFtaWx5OiBcIkZpcmEtU2Fucy1NXCI7XG59XG4udzEwMHZ3IHtcbiAgd2lkdGg6IDEwMHZ3O1xufVxuLmgxMDB2aCB7XG4gIGhlaWdodDogMTAwdmg7XG59XG4uaC0xNDQge1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxNDRweCk7XG59XG4uaDEwMCB7XG4gIGhlaWdodDogMTAwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmg4MCB7XG4gIGhlaWdodDogODBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaDEyMCB7XG4gIGhlaWdodDogMTIwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm1iLTgwIHtcbiAgbWFyZ2luLWJvdHRvbTogODBweDtcbn1cbi5tYi00MCB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG4ubWItNjAge1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xufVxuLm1iLTMwIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbi5tYi0yMCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4ubWItMTAge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLm1iLTI1IHtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbn1cbi5tYi0wIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5tdC0yMCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG4ubXQtNDAge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuLm10LTYwIHtcbiAgbWFyZ2luLXRvcDogNjBweDtcbn1cbi5mb250LTE0IHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cbi5mb250LTEyIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuLmZvbnQtMjAge1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG4uY29sb3ItYmxhdSB7XG4gIGNvbG9yOiAkY29sb3ItYmxhdTtcbn1cbi5jb2xvci13aGl0ZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmJhY2tncm91bmQtYmxhdSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGF1O1xufVxuLnR0dSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4ubGgtMTIge1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuLmxoLTE0IHtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cbi5oNjAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA2MHB4O1xufVxuLnBvcy1yZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLm1sLTIwIHtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG59XG4ubWwtNTAge1xuICBtYXJnaW4tbGVmdDogNTBweDtcbn1cbi53cmFwcGVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogOTByZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogOTByZW07XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gICYuc20tYyB7XG4gICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgfVxuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA0MHJlbSkge1xuICAgIHBhZGRpbmc6ICAwIDFyZW07XG4gIH1cbn1cblxuLnJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucm93LnJvdy1uby1wYWRkaW5nIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLnJvdy5yb3ctbm8tcGFkZGluZyA+IC5jb2x1bW4ge1xuICBwYWRkaW5nOiAwO1xufVxuXG4ucm93LnJvdy13cmFwIHtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4ucm93LnJvdy10b3Age1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLnJvdy5yb3ctYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG4ucm93LnJvdy1jZW50ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4ucm93LnJvdy1zdHJldGNoIHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG5cbi5yb3cucm93LWJhc2VsaW5lIHtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xufVxuXG4ucm93IC5jb2x1bW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMSAxIGF1dG87XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucm93IC5jb2x1bW4uY29sdW1uLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiAxMCU7XG59XG5cbi5yb3cgLmNvbHVtbi5jb2x1bW4tb2Zmc2V0LTE1IHtcbiAgbWFyZ2luLWxlZnQ6IDE1JTtcbn1cblxuLnJvdyAuY29sdW1uLmNvbHVtbi1vZmZzZXQtMjAge1xuICBtYXJnaW4tbGVmdDogMjAlO1xufVxuXG4ucm93IC5jb2x1bW4uY29sdW1uLW9mZnNldC0yNSB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7XG59XG5cbi5yb3cgLmNvbHVtbi5jb2x1bW4tb2Zmc2V0LTMzLCAucm93IC5jb2x1bW4uY29sdW1uLW9mZnNldC0zNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzJTtcbn1cblxuLnJvdyAuY29sdW1uLmNvbHVtbi1vZmZzZXQtNTAge1xuICBtYXJnaW4tbGVmdDogNTAlO1xufVxuXG4ucm93IC5jb2x1bW4uY29sdW1uLW9mZnNldC02NiwgLnJvdyAuY29sdW1uLmNvbHVtbi1vZmZzZXQtNjcge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NiU7XG59XG5cbi5yb3cgLmNvbHVtbi5jb2x1bW4tb2Zmc2V0LTc1IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTtcbn1cblxuLnJvdyAuY29sdW1uLmNvbHVtbi1vZmZzZXQtODAge1xuICBtYXJnaW4tbGVmdDogODAlO1xufVxuXG4ucm93IC5jb2x1bW4uY29sdW1uLW9mZnNldC05MCB7XG4gIG1hcmdpbi1sZWZ0OiA5MCU7XG59XG5cbi5yb3cgLmNvbHVtbi5jb2x1bW4tMTAge1xuICBmbGV4OiAwIDAgMTAlO1xuICBtYXgtd2lkdGg6IDEwJTtcbn1cblxuLnJvdyAuY29sdW1uLmNvbHVtbi0yMCB7XG4gIGZsZXg6IDAgMCAyMCU7XG4gIG1heC13aWR0aDogMjAlO1xufVxuXG4ucm93IC5jb2x1bW4uY29sdW1uLTI1IHtcbiAgZmxleDogMCAwIDI1JTtcbiAgbWF4LXdpZHRoOiAyNSU7XG59XG5cbi5yb3cgLmNvbHVtbi5jb2x1bW4tMzMsIC5yb3cgLmNvbHVtbi5jb2x1bW4tMzQge1xuICBmbGV4OiAwIDAgMzMuMzMzMyU7XG4gIG1heC13aWR0aDogMzMuMzMzMyU7XG59XG5cbi5yb3cgLmNvbHVtbi5jb2x1bW4tNDAge1xuICBmbGV4OiAwIDAgNDAlO1xuICBtYXgtd2lkdGg6IDQwJTtcbn1cblxuLnJvdyAuY29sdW1uLmNvbHVtbi01MCxcbi5yb3cgLmNvbHVtbi5jb2x1bW4tNTAtc3BlY2lhbCB7XG4gIGZsZXg6IDAgMCA1MCU7XG4gIG1heC13aWR0aDogNTAlO1xufVxuXG4ucm93IC5jb2x1bW4uY29sdW1uLTYwIHtcbiAgZmxleDogMCAwIDYwJTtcbiAgbWF4LXdpZHRoOiA2MCU7XG59XG5cbi5yb3cgLmNvbHVtbi5jb2x1bW4tNjYsIC5yb3cgLmNvbHVtbi5jb2x1bW4tNjcge1xuICBmbGV4OiAwIDAgNjYuNjY2NiU7XG4gIG1heC13aWR0aDogNjYuNjY2NiU7XG59XG5cbi5yb3cgLmNvbHVtbi5jb2x1bW4tNzUge1xuICBmbGV4OiAwIDAgNzUlO1xuICBtYXgtd2lkdGg6IDc1JTtcbn1cblxuLnJvdyAuY29sdW1uLmNvbHVtbi04MCB7XG4gIGZsZXg6IDAgMCA4MCU7XG4gIG1heC13aWR0aDogODAlO1xufVxuXG4ucm93IC5jb2x1bW4uY29sdW1uLTkwIHtcbiAgZmxleDogMCAwIDkwJTtcbiAgbWF4LXdpZHRoOiA5MCU7XG59XG5cbi5yb3cgLmNvbHVtbiAuY29sdW1uLXRvcCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG59XG5cbi5yb3cgLmNvbHVtbiAuY29sdW1uLWJvdHRvbSB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xufVxuXG4ucm93IC5jb2x1bW4gLmNvbHVtbi1jZW50ZXIge1xuICAtbXMtZ3JpZC1yb3ctYWxpZ246IGNlbnRlcjtcbiAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQwcmVtKSB7XG4gIC5yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgLyptYXJnaW4tbGVmdDogLTEuMHJlbTsqL1xuICAgIC8qd2lkdGg6IGNhbGMoMTAwJSArIDIuMHJlbSk7Ki9cbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAucm93IC5jb2x1bW4ge1xuICAgIG1hcmdpbi1ib3R0b206IGluaGVyaXQ7XG4gICAgcGFkZGluZzogMCAxLjByZW07XG4gIH1cbiAgLm9ubHktbW9iIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vbmx5LWRlc2sge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gIH1cblxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQwcmVtKSB7XG4gIC5vbmx5LW1vYiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm9ubHktZGVzayB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gIC5oeXBoZW5zIHtcbiAgICAgICAgaHlwaGVuczogYXV0bztcbiAgfVxuICAucm93IC5jb2x1bW4uY29sdW1uLTcwLFxuICAucm93IC5jb2x1bW4uY29sdW1uLTMwLFxuICAucm93IC5jb2x1bW4uY29sdW1uLTMzLFxuICAucm93IC5jb2x1bW4uY29sdW1uLTIwLFxuICAucm93IC5jb2x1bW4uY29sdW1uLTI1LFxuICAucm93IC5jb2x1bW4uY29sdW1uLTc1LFxuICAucm93IC5jb2x1bW4uY29sdW1uLTYwLFxuICAucm93IC5jb2x1bW4uY29sdW1uLTUwLXNwZWNpYWwsXG4gIC5yb3cgLmNvbHVtbi5jb2x1bW4tb2Zmc2V0LTE1IHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnJvdyAuY29sdW1uLmNvbHVtbi1vZmZzZXQtMTUge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5tb2ItZnVsbC13aWR0aCB7XG4gICAgLyp3aWR0aDogY2FsYygxMDAlICsgMnJlbSkgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDsqL1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnJvdy5mb290ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3c7XG4gIH1cbn1cblxuXG5hIHtcbiAgY29sb3I6ICRjb2xvci1ibGF1O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmE6Zm9jdXMsIGE6aG92ZXIge1xuICBjb2xvcjogJGNvbG9yLXJvdDtcbn1cblxuXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAuMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMi4wcmVtO1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LWZhbWlseTogXCJGaXJhLVNhbnMtU0JcIjtcbn1cblxuaDEsXG5oMSNzdGFuZGFyZCB7XG4gIGZvbnQtc2l6ZTogMi4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwcmVtKSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg3NTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xMzEyNXJlbTtcbiAgfVxufVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMy42cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbn1cblxuaDMge1xuICBmb250LXNpemU6IDIuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuaDQge1xuICBmb250LXNpemU6IDIuMnJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0uMDhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xufVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBsZXR0ZXItc3BhY2luZzogLS4wNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuaDYge1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmNsZWFyZml4OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGNvbnRlbnQ6ICcgJztcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi5mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5mbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmpzIC5sb2FkaW5nOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGZpeGVkO1xuICBjb2xvcjogI2ZmZjtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBcbiAgei1pbmRleDogMTAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5qcyAubG9hZGluZzo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogNzBweDtcbiAgaGVpZ2h0OiA3MHB4O1xuICBtYXJnaW46IC0zNXB4IDAgMCAtMzVweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHotaW5kZXg6IDEwMTtcbiAgYm9yZGVyOiA3cHggc29saWQgIzAzM2Y4NTtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuICAtd2Via2l0LWFuaW1hdGlvbjogcm90YXRlTG9hZGVyIDAuOHMgbGluZWFyIGluZmluaXRlIGZvcndhcmRzO1xuICBhbmltYXRpb246IHJvdGF0ZUxvYWRlciAwLjhzIGxpbmVhciBpbmZpbml0ZSBmb3J3YXJkcztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUxvYWRlciB7XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByb3RhdGVMb2FkZXIge1xuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAzNjBkZWcpO1xuICB9XG59XG5cbi8qIExpbmtzICovXG5cblxuXG4uaGlkZGVuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbiIsIi8qKiBDb2xvcnMgKiovXG5cbiRjb2xvci1ibGF1OiAjMDMzZjg1O1xuJGNvbG9yLXNjaHdhcno4MDogcmdiYSgwLDAsMCwwLjgpO1xuJGNvbG9yLW1haW46ICMyYjJiMmI7XG4kY29sb3Itd2hpdGU6ICNmZmY7XG4kY29sb3Itcm90OiAjZmYwMDFmOyIsIkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcblxuaGVhZGVyIHtcbiAgcGFkZGluZzogMnJlbSAwO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbi1tb3otdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4tbXMtdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4tby10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbnRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICB6LWluZGV4OiA1O1xuICB0b3A6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgaGVpZ2h0OiAxNDRweDtcbiAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDByZW0pIHsgXG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICB9XG4gICYuc2hyaW5rIHtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgXG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDByZW0pIHtcbiAgICAgIGhlaWdodDogODBweDtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgIH1cbiAgICAubG9nbyB7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKCg4MHB4IC8gMiApIC0gMjBweCAtIDAuNXJlbSk7XG4gICAgICB3aWxsLWNoYW5nZTogaGVpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5sb2dvIHtcbiAgICBoZWlnaHQ6IDcwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4tbW96LXRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuLW1zLXRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuLW8tdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG50cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbiAgICAmLmFuaW1hdGlvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIHRvcDogY2FsYyg1MHZoIC0gMzVweCk7XG4gICAgICB6LWluZGV4OiAzMDtcbiAgICAgIC8qZGlzcGxheTogbm9uZTsqL1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICB9XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDByZW0pIHsgXG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuICB9XG4gICYuZHAtbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbiAgXG5cbn1cbi5oZWFkZXItY29udGFjdCB7XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICByaWdodDogMXJlbTtcbiAgei1pbmRleDozO1xuICBhIHtcbiAgICBmb250LXNpemU6MTRweDtcbiAgICBmb250LWZhbWlseTogXCJGaXJhLVNhbnMtU0JcIiwgc2Fucy1zZXJpZjtcbiAgICBjb2xvcjogJGNvbG9yLWJsYXU7XG4gIH1cbn1cbi5idXJnZXIge1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2NvbW1vbi9pY24tYnVyZ2VyLnN2Zyk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE4cHg7XG4gICAgbWFyZ2luOiAxcmVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6ICRjb2xvci1ibGF1O1xuICAgIGZvbnQtZmFtaWx5OiBcIkJhcmxvd1wiO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gICAgJi5vcGVuIHtcbiAgICAgIHdpZHRoOiAxN3B4O1xuICAgICAgaGVpZ2h0OiAxN3B4O1xuICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9jb21tb24vaWNuLWJ1cmdlci1jbG9zZS5zdmcpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTdweDtcbiAgICAgIHBhZGRpbmctbGVmdDogaW5pdGlhbDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbml0aWFsO1xuXG4gICAgfVxuICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDQwcmVtKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbiAgLmxvZ28ge1xuICAgIGhlaWdodDogNzBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbi1tb3otdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4tbXMtdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4tby10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbnRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuXG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDByZW0pIHtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIC8qbWFyZ2luLXRvcDogY2FsYygoODBweCAvIDIgKSAtIDIwcHggLSAwLjVyZW0pOyovXG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG5uYXYge1xuICBoZWlnaHQ6IDQwMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IC00MDBweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGF1O1xuICB6LWluZGV4OiA4O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuLW1vei10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbi1tcy10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbi1vLXRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xudHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICYub3BlbiB7XG4gICAgdG9wOiAwO1xuICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7IFxuICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuICAmLmFjdGl2ZSB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MDBweCk7XG4gICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDAwcHgpO1xuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MDBweCk7XG4gICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MDBweCk7XG4gICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwMHB4KTtcbiAgICAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA0MHJlbSkgeyBcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgICAgIH1cbiAgfVxuICBhIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgXG4gICAgJi5uYXYtaXRlbSB7IFxuICAgICY6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG4gICAgIH1cbiAgfVxuICAucm93IC5jb2x1bW4uY29sdW1uLTI1LnAxMCB7XG4gICAgcGFkZGluZy1sZWZ0OjEwJTtcbiAgfVxuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA0MHJlbSkge1xuICAgIGhlaWdodDogMDtcbiAgICB0b3A6IC0xMDAlO1xuICAgIC5yb3cgLmNvbHVtbi5jb2x1bW4tMjUucDEwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbiNjb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dCA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gbGVmdDogMDtcbiByaWdodDogMDtcbiBiYWNrZ3JvdW5kOiAjZmZmO1xuIG1hcmdpbi1sZWZ0OiBhdXRvO1xuIG1hcmdpbi1yaWdodDogYXV0bztcbiBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gICYuYWN0aXZlIHtcbiAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDAwcHgpO1xuICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQwMHB4KTtcbiAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDAwcHgpO1xuICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDAwcHgpO1xuICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MDBweCk7XG4gIH1cblxufVxuXG5mb290ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogNjBweDtcbn1cbiIsIkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbiNmbG93IHtcbiAgaGVpZ2h0OiAxMDBweDsgXG59XG4jdG9wLWltZyB7XG4gIHBhZGRpbmctdG9wOiAxNDRweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1pbi1vdXQgO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgJi5zaHJpbmsge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwIDA7XG4gIH1cbiAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDByZW0pIHsgXG4gICAgcGFkZGluZy10b3A6IDYwcHg7XG4gIH1cbn1cbiNnZixcbiNnZi1vbGQge1xuICBtYXJnaW4tdG9wOiAxNDRweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTQ0cHgpO1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2NvbW1vbi9pbnRyb19nZl9maS5qcGcpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcblxuICAmI2dmLW9sZCB7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9jb21tb24vaW50cm9fZ2ZfZmkuanBnKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIH1cblxuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA0MHJlbSkge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIG1hcmdpbjogNjBweCAwIDA7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9jb21tb24vaW50cm9fZ2ZfZmkuanBnKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMzAlO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gICAgbWluLWhlaWdodDogMzIwcHg7XG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gIH1cblxuICAvKi5saW5rIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQgO1xuICAgIHdpZHRoOiA0MjBweDtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNjcuNXJlbSkge1xuICAgICAgbWF4LXdpZHRoOiAzNXZ3O1xuICAgIH1cbiAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA1NXJlbSkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBkaXYge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDJweDtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1yb3Q7XG4gICAgfVxuXG4gICAgLmFuY2hvciB7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMyw2MywxMzMsMC4zMikgMCUsIHJnYmEoMjU1LDI1NSwyNTUsMCkgNzAlKTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgICBpbWcge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgIH1cbiAgICB9ICAgIFxuICB9IFxuXG4gIC5saW5rMiB7XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDByZW0pIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dCA7XG4gICAgd2lkdGg6IDQyMHB4O1xuICAgIGhlaWdodDogMzBweDtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA2Ny41cmVtKSB7XG4gICAgICBtYXgtd2lkdGg6IDM1dnc7XG4gICAgfVxuICAgIGRpdiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMnB4O1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXJvdDtcbiAgICB9XG4gICAgLmFuY2hvciB7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogJGNvbG9yLWJsYXU7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMyw2MywxMzMsMC4zMikgMCUsIHJnYmEoMjU1LDI1NSwyNTUsMCkgNzAlKTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG4gICAgXG4gIH1cblxuICBcbiAgICAubWVkaXVtbGluayB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNTVyZW0pIGFuZCAobWluLXdpZHRoOiA0MHJlbSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQgO1xuICAgICAgICBtYXgtd2lkdGg6IDM1dnc7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAuYm9yZGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itcm90O1xuICAgICAgICAgIH1cbiAgICAgICAgICAuYW5jaG9yIHtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmxhdTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgzLDYzLDEzMywwLjMyKSAwJSwgcmdiYSgyNTUsMjU1LDI1NSwwKSA3MCUpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIH1cblxuICAgICAgICAuc3VibWVudSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQgO1xuICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgICYudmlzaWJsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogLTEwMHB4O1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgfSovXG59XG5cbmJvZHkubm8tc2Nyb2xsIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbiNhbmltYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xuICB6LWluZGV4OiA2O1xuXG4gICNpbnRybyB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogJGNvbG9yLWJsYXU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMzRweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0b3A6IGNhbGMoNTB2aCAtIDM0cHgpO1xuICAgIC8qdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MHZoKTsqL1xuICAgIGRpc3BsYXk6IG5vbmU7IFxuXG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDByZW0pIHtcbiAgICAgIHRvcDogMzB2aDtcbiAgICB9XG4gIH1cbiAgXG59IFxuXG4jYW5pbWF0aW9uMiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDQwcmVtKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDFyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHdpZHRoOiA3NXJlbTtcbiAgei1pbmRleDogNjtcbiAgXG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDkwcmVtKSB7XG4gICAgLypsZWZ0OiAzcmVtOyovXG4gICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgXG4gIH1cblxuICAjaW50cm8tdGV4dDIge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICRjb2xvci1ibGF1O1xuICAgIG1heC13aWR0aDogNDIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMjR2aDtcbiAgICBtYXJnaW4tYm90dG9tOiA3LjV2aDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDM0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogNDZweDtcblxuICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDY3LjVyZW0pIHtcbiAgICAgIG1heC13aWR0aDogMzV2dztcbiAgICB9XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNTVyZW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogMy40dnc7XG4gICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIH1cbiAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA0MHJlbSkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgJi5kb25lIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5saW5rIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQgO1xuICAgIHdpZHRoOiA0MjBweDtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNjcuNXJlbSkge1xuICAgICAgbWF4LXdpZHRoOiAzNXZ3O1xuICAgIH1cbiAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA1NXJlbSkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBkaXYge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDJweDtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1yb3Q7XG4gICAgfVxuXG4gICAgLmFuY2hvciB7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMyw2MywxMzMsMC4zMikgMCUsIHJnYmEoMjU1LDI1NSwyNTUsMCkgNzAlKTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgICBpbWcge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgIH1cbiAgICB9ICAgIFxuICB9IFxuXG4gIC5saW5rMiB7XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDByZW0pIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dCA7XG4gICAgd2lkdGg6IDQyMHB4O1xuICAgIGhlaWdodDogMzBweDtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA2Ny41cmVtKSB7XG4gICAgICBtYXgtd2lkdGg6IDM1dnc7XG4gICAgfVxuICAgIGRpdiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMnB4O1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXJvdDtcbiAgICB9XG4gICAgLmFuY2hvciB7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogJGNvbG9yLWJsYXU7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMyw2MywxMzMsMC4zMikgMCUsIHJnYmEoMjU1LDI1NSwyNTUsMCkgNzAlKTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG4gICAgXG4gIH1cblxuICBcbiAgICAubWVkaXVtbGluayB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNTVyZW0pIGFuZCAobWluLXdpZHRoOiA0MHJlbSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQgO1xuICAgICAgICBtYXgtd2lkdGg6IDM1dnc7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAuYm9yZGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itcm90O1xuICAgICAgICAgIH1cbiAgICAgICAgICAuYW5jaG9yIHtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmxhdTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgzLDYzLDEzMywwLjMyKSAwJSwgcmdiYSgyNTUsMjU1LDI1NSwwKSA3MCUpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIH1cblxuICAgICAgICAuc3VibWVudSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQgO1xuICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgICYudmlzaWJsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogLTEwMHB4O1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgfVxufVxuXG5cbkBrZXlmcmFtZXMgbG9nb1RvVG9wIHtcbiAgICAwJSAgICB7IFxuICAgICAgICAgICAgLyp0b3A6IGNhbGMoNTB2aCAtIDg2cHgpOyAqL1xuICAgICAgICAgICAgdG9wOiA0OCU7XG4gICAgICAgICAgICAvKnRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpOyovXG4gICAgICAgICAgICBoZWlnaHQ6IDE3MnB4O1xuICAgICAgICAgIH1cbiAgICAgXG4gICAgMTAwJSB7XG4gICAgICAgICAgdG9wOiAycmVtOyAgXG4gICAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICB9XG59XG5Aa2V5ZnJhbWVzIGRpdnRvTnVsbCB7XG4gIDAlIHtoZWlnaHQ6IDEwMHZoOyBvcGFjaXR5OiAxO31cbiAgMTAwJSB7aGVpZ2h0OjA7IG9wYWNpdHk6IDA7IGRpc3BsYXk6IG5vbmU7fVxufVxuQGtleWZyYW1lcyBzbGlkZXNrZXcge1xuICAwJSB7b3BhY2l0eTogMDsgdHJhbnNmb3JtOiBza2V3WCgtMzBkZWcpIHRyYW5zbGF0ZVgoMjUwcHgpO31cbiAgMTAwJSB7b3BhY2l0eTogMTsgdHJhbnNmb3JtOiBza2V3WCgwZGVnKSB0cmFuc2xhdGVYKDBweCk7fVxufVxuQGtleWZyYW1lcyBzaGFnZ2luIHtcbiAgMTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7XG4gIH1cbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpO1xuICB9XG4gIDMwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpO1xuICB9XG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTtcbiAgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTtcbiAgfVxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7XG4gIH1cbiAgNzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7XG4gIH1cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpO1xuICB9XG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KSByb3RhdGUoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCkgcm90YXRlKDApO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xcHgpIHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTFweCkgcm90YXRlKDApO1xuICB9XG59XG4jc2Nyb2xsLWRvd24ge1xuICAvKm1hcmdpbi10b3A6IC0yMHB4OyovXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLyptYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyovXG4vKiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7ICovXG4gIGJvdHRvbTogMnJlbTtcbiAgcmlnaHQ6IDJyZW07XG4gIHdpZHRoOiAzMnB4O1xuICAmLmJsb2Ige1xuICAgIGFuaW1hdGlvbi1uYW1lOiBzaGFnZ2luO1xuICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1cztcbiAgIC8qYW5pbWF0aW9uLWRlbGF5OiAtNXM7Ki9cbiAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7IFxuIH1cbn1cbi5ib3R0b201IHtcbiAgLypkaXNwbGF5OiBncmlkOyovXG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgLypoZWlnaHQ6IGNhbGMoMTAwdmggLSAxNDRweCk7Ki9cbiAgLmZtbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMjAlO1xuXG4gICAgJi50YW0ge1xuICAgICAgd2lkdGg6IDM1JTtcbiAgICB9XG4gICAgLnYyX2wxLCAudjJfbDIge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgLnYyX2wyIHtcbiAgICAgbWFyZ2luLWxlZnQ6IDYwcHg7XG4gICAgfVxuICB9XG4gIC5ob2xkZXItdjMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206MS43cmVtO1xuICAgIGxlZnQ6IDFyZW07XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDBlbSkge1xuICAgICAgYm90dG9tOiBpbml0aWFsO1xuICAgICAgbGVmdDogaW5pdGlhbDtcbiAgICAgIGgxLmNvbG9yLXdoaXRlIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGF1O1xuICAgICAgICBwYWRkaW5nOiAwIDAuOGVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA0MGVtKSB7IFxuXG4gICAgaGVpZ2h0OiA1MCU7XG5cbiAgfVxufVxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDBlbSkge1xuICAuYmx1ZS13cmFwIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uamsge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDBlbSkgeyBcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4jdjMge1xuICAvKmRpc3BsYXk6IC1tcy1pbmxpbmUtZ3JpZDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgcGxhY2UtY29udGVudDogY2VudGVyOyovXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgY29sb3I6ICRjb2xvci1ibGF1O1xuICB0cmFuc2l0aW9uOiBhbGwgMC45cyBlYXNlLWluLW91dDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd3JpdGluZy1tb2RlOiBob3Jpem9udGFsLXRiO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gID4gKiB7XG4gLyogICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDsgXG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7Ki9cbiAgLyotbXMtZmxleC1saW5lLXBhY2s6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7Ki9cbiAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG59XG5cbiAgJi5kaXZ0b051bGwge1xuICAgIGhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGRpdnRvTnVsbDtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuOXM7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICBcblxuICB9XG5cbiAgLnNwbGl0VGV4dCB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0zMGRlZykgdHJhbnNsYXRlWCgyNTBweCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDEuNXMgZWFzZS1pbi1vdXQ7XG4gICAgZm9udC1zaXplOiAyLjEyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4xcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDIuMHJlbTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGZvbnQtZmFtaWx5OiBcIkZpcmEtU2Fucy1TQlwiO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MHJlbSkge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODc1O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMTMxMjVyZW07XG4gICAgfVxuICAgICYuYW5pbWF0aW9uLWZpbmlzaGVkIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHNrZXdYKDBkZWcpIHRyYW5zbGF0ZVgoMHB4KTtcbiAgICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZXNrZXc7XG4gICAgICBhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XG4gICAgfVxuICB9XG4gIC5zcGxpdFRleHRDb3B5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZvbnQtc2l6ZTogMi4xMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjByZW07XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBmb250LWZhbWlseTogXCJGaXJhLVNhbnMtU0JcIjtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDByZW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg3NTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjEzMTI1cmVtO1xuICAgIH1cbiAgfVxuXG4gICNzZWNMb2dvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHdpZHRoOiA4MDBweDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIC8qbWFyZ2luOiAwIGF1dG87Ki9cbiAgICAvKnRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW47Ki9cbiAgICAmLmRwLWlubGluZS1ibG9jayB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAvKm5ldyBzaGl0IGZvciBJRSovXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIC8qdG9wOiBjYWxjKDUwdmggLSA4NXB4KTsgKi9cbiAgICAgIHRvcDogNDYlOyBcblxuICAgIH1cbiAgICAmLnR0dCB7XG4gICAgICAvKnBvc2l0aW9uOiBhYnNvbHV0ZTsqL1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IG1hcmdpbi1yaWdodDogYXV0bzsgbGVmdDogMDsgcmlnaHQ6IDA7XG4gICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICB0b3A6IDJyZW07XG4gICAgICBhbmltYXRpb24tbmFtZTogbG9nb1RvVG9wO1xuICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjlzO1xuICAgICAgXG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDBlbSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgYm90dG9tOiBpbml0aWFsO1xuICB9XG5cbn1cblxuLmJ0bi1saW5rcyB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgaGVpZ2h0OiAyNHB4O1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICRjb2xvci1ibGF1O1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3Itcm90O1xuICB9XG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICBwYWRkaW5nOiAwIDFlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuIH1cblxuIC5hbmlrZXkge1xuXG4gIC5jb250YWN0IHtcblxuICB9XG5cbiAgLmxpbmsge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dCA7XG4gICAgd2lkdGg6IDQyMHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA2Ny41cmVtKSB7XG4gICAgICBtYXgtd2lkdGg6IDM1dnc7XG4gICAgfVxuICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDU1cmVtKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBcbiAgICBkaXYge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDJweDtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1yb3Q7XG4gICAgfVxuXG4gICAgLmFuY2hvciB7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIC8qYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDMsNjMsMTMzLDAuMzIpIDAlLCByZ2JhKDI1NSwyNTUsMjU1LDApIDcwJSk7Ki9cbiAgICAgIC8qIFBhdGg6ICovXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICMwMzNGODUgMSUsIHJnYmEoMjU1LDI1NSwyNTUsMC4wMCkgOTYlKTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgICBpbWcge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgIH1cbiAgICB9ICAgIFxuICB9IFxuXG4gIC5saW5rMiB7XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDByZW0pIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dCA7XG4gICAgd2lkdGg6IDQyMHB4O1xuICAgIGhlaWdodDogMzBweDtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA2Ny41cmVtKSB7XG4gICAgICBtYXgtd2lkdGg6IDM1dnc7XG4gICAgfVxuICAgIGRpdiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMnB4O1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXJvdDtcbiAgICB9XG4gICAgLmFuY2hvciB7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogJGNvbG9yLWJsYXU7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMyw2MywxMzMsMC4zMikgMCUsIHJnYmEoMjU1LDI1NSwyNTUsMCkgNzAlKTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG4gICAgXG4gIH1cblxuICBcbiAgICAubWVkaXVtbGluayB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNTVyZW0pIGFuZCAobWluLXdpZHRoOiA0MHJlbSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQgO1xuICAgICAgICBtYXgtd2lkdGg6IDM1dnc7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAuYm9yZGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itcm90O1xuICAgICAgICAgIH1cbiAgICAgICAgICAuYW5jaG9yIHtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmxhdTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgzLDYzLDEzMywwLjMyKSAwJSwgcmdiYSgyNTUsMjU1LDI1NSwwKSA3MCUpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIH1cblxuICAgICAgICAuc3VibWVudSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQgO1xuICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgICYudmlzaWJsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogLTEwMHB4O1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgfVxuXG4gfVxuXG4jYW5pIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuOXMgZWFzZS1pbi1vdXQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuOXMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuOXMgZWFzZS1pbi1vdXQgO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICYudG9wIHtcbiAgLy90b3A6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxufSIsIkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcblxuLnRoZS10ZWFtIHtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcblx0LXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcblx0LW1vei10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dCA7XG5cblx0Ji5ub3QtYWN0aXZlIHtcblx0XHRvcGFjaXR5OiAwLjI7XG5cdH1cblxuXHQmLmFjdGl2ZSxcblx0Ji5jbGlja2VkIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG4udGFldGlna2VpdHNwcm9maWwge1xuXHRtYXJnaW46IDQwcHggMDtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwwLDAsMC44KTtcblx0cGFkZGluZy10b3A6IDgwcHg7XG5cdHdpZHRoOiAxMDAlO1xuXG5cdCYubm9uZSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC5jbG9zZSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHJpZ2h0OiAxcmVtO1xuXHRcdG1hcmdpbi10b3A6IDEycHg7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHR9XG59XG5cbiNhbGwtb3V0LW9uZS1oYW5kIHtcblx0bWFyZ2luLXRvcDogOTBweDtcblx0cGFkZGluZzogODBweCAwO1xuXHRiYWNrZ3JvdW5kOiAkY29sb3ItYmxhdTtcblx0d2lkdGg6IDEwMCU7XG5cblx0LmluZGV4ZXMge1xuXHRcdHBvc2l0aW9uOnJlbGF0aXZlOyBcblx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdHBhZGRpbmctYm90dG9tOiA0MHB4O1xuXHRcdG1hcmdpbi1ib3R0b206IDYwcHg7XG5cblx0XHRAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA0MHJlbSkgeyBcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0fVxuXG5cdFx0LmJ0bi1tb3JlIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGJvdHRvbTogMDtcblx0XHR9XG5cdH1cblx0QG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDByZW0pIHtcblx0XHRwYWRkaW5nOiA4MHB4IDFyZW07XG5cdH1cbn1cbi5idG4tbW9yZSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0cGFkZGluZy1yaWdodDogMzBweDtcblx0YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9jb21tb24vYnRuLWFycm93LXJpZ2h0LXdoaXRlLnN2Zyk7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtc2l6ZTogMTRweCAxNnB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTtcblx0Y29sb3I6ICNmZmY7XG5cdGN1cnNvcjogcG9pbnRlcjtcdFxufVxuLmRpdmlkZXIge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAzcHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGF1O1xufVxuXG4uYmx1ZS1ib3gge1xuXHRjb2xvcjogI2ZmZjtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0cGFkZGluZzogNjBweCAwO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmxhdTtcbn1cblxuI3RvcC1pbWcge1xuXHRtYXJnaW4tYm90dG9tOiA2MHB4O1xuXHRAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NWVtKSB7XG5cdFx0Lyp3aWR0aDogY2FsYygxMDAlICsgMnJlbSk7XG4gICAgXHRtYXJnaW46IDAgLTFyZW0gNjBweCAtMXJlbTsqL1xuXHR9XG59XG5ib2R5LmZvcm11bGFyZSAjdG9wLWltZyxcbmJvZHkubGlua3MgI3RvcC1pbWcsXG5ib2R5Lm5ld3MgI3RvcC1pbWcge1xuXHRtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4jYmxvZyB7XG5cdGNvbG9yOiAjZmZmO1xuXHRiYWNrZ3JvdW5kOiAjNWM1YzVjO1xuXHRwYWRkaW5nOiA2MHB4IDA7XG5cdFxuXHQuaW5uZXIge2hlaWdodDogNjAwcHg7IG92ZXJmbG93LXk6IGF1dG87fVxuXHRcbn1cblxuLyojbTgwMCB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDgwMXB4KSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxufVxuI202MDAge1xuXHRkaXNwbGF5OiBub25lO1xuXHRAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA2MDFweCkgYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxufVxuI3U2MDAge1xuXHRkaXNwbGF5OiBub25lO1xuXHRAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdH1cbn0qL1xuYm9keS5zdGFydHNlaXRlIC5tYSB7XG5cblx0aW1nIHtcblx0XHRcblx0XHR3aWR0aDogMTAwJTtcblx0XHRtYXJnaW46IDVweDtcblx0XHRwYWRkaW5nOjA7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0bGluZS1oZWlnaHQ6IDA7XG5cdFx0QG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogODAxcHgpIHsgXG5cdFx0XHRtYXgtd2lkdGg6IGNhbGMoKDEwMCUgLSA4MHB4KSAvIDgpO1xuXHRcdH1cblx0XHRAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA2MDFweCkgYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7IFxuXHRcdFx0bWF4LXdpZHRoOiBjYWxjKCgxMDAlIC0gMTIlKSAvIDQpO1xuXHRcdH1cblx0XHRAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA2MDBweCkgeyBcblx0XHRcdG1heC13aWR0aDogY2FsYygoMTAwJSAtIDEyJSkgLyA0KTtcblx0XHR9XG5cdH1cbn1cbmJvZHkuc3RhcnRzZWl0ZSAjdGVhbSB7XG5cdG1hcmdpbi1ib3R0b206IDEwMHB4O1xufVxuYm9keS5pbXByZXNzdW0ge1xuXG5cdGgxIHtcblx0XHRmb250LXNpemU6IDEuMjVyZW07XG5cblx0XHQmI3N0YW5kYXJkIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRwIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0IFxuXHQjdG9wLWltZyB7XG5cdFx0cGFkZGluZy10b3A6IGNhbGMoMTQ5cHggKyA2MHB4KTtcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNzVlbSkge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAxcmVtO1xuXHRcdFx0cGFkZGluZy1yaWdodDogMXJlbTtcblx0XHR9XG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDQwcmVtKSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMTEwcHg7XG5cdFx0fVxuXHRcdCBcblx0fVxuXG59XG5ib2R5LmRhdGVuc2NodXR6IHtcblxuXHRoMSNzdGFuZGFyZCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxuXG5cdCN0b3AtaW1nIHtcblx0XHRwYWRkaW5nLXRvcDogY2FsYygxNDlweCArIDYwcHgpO1xuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA3NWVtKSB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDFyZW07XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuXHRcdH1cblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDByZW0pIHtcblx0XHRcdHBhZGRpbmctdG9wOiAxMTBweDtcblx0XHR9XG5cdH1cbn1cbmJvZHkuZm9ybXVsYXJlLFxuYm9keS5saW5rcyxcbmJvZHkuYWdiLFxuYm9keS53aXJ0c2NoYWZ0c3BydWVmdW5nIHtcblx0I3RvcC1pbWcge1xuXHRcdHBhZGRpbmctdG9wOiBjYWxjKDE0OXB4ICsgNjBweCk7XG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDc1ZW0pIHtcblx0XHRcdHBhZGRpbmctbGVmdDogMXJlbTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDFyZW07XG5cdFx0fVxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MHJlbSkge1xuXHRcdFx0cGFkZGluZy10b3A6IDExMHB4O1xuXHRcdH1cblx0XHRoMSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblx0fVxufVxuYm9keS5rYXJyaWVyZSB7XG5cblx0I3RvcC1pbWcge1xuXHRcdHBhZGRpbmctdG9wOiBjYWxjKDE0NHB4ICsgNjBweCk7XG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDc1ZW0pIHtcblx0XHRcdHBhZGRpbmctbGVmdDogMXJlbTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDFyZW07XG5cdFx0fVxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MHJlbSkge1xuXHRcdFx0cGFkZGluZy10b3A6IDExMHB4O1xuXHRcdH1cblx0XHRoMSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cdFx0XG5cdH1cblxuXG59XG5ib2R5Lmtvb3JwZXJhdGlvbnNwYXJ0bmVyIHtcblx0I3RvcC1pbWcge1xuXHRcdHBhZGRpbmctdG9wOiBjYWxjKDE0NHB4ICsgNjBweCk7XG5cdFx0aDEge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDc1ZW0pIHtcblx0XHRcdHBhZGRpbmctbGVmdDogMXJlbTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDFyZW07XG5cdFx0fVxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0MHJlbSkge1xuXHRcdFx0cGFkZGluZy10b3A6IDExMHB4O1xuXHRcdH1cblx0fVxufVxuXG5ib2R5Lm5ld3Mge1xuXG5cdCN0b3AtaW1nIHtcblx0XHRoMSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblx0XHRwYWRkaW5nLXRvcDogY2FsYygxNDlweCArIDYwcHgpO1xuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA3NWVtKSB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDFyZW07XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuXHRcdH1cblx0XHRAbWVkaWEgKG1heC13aWR0aDogNDByZW0pIHtcblx0XHRcdHBhZGRpbmctdG9wOiAxMTBweDtcblx0XHR9XG5cdH1cbn1cbiBcbmJvZHkuYWdiIHtcblx0LnVsX2ViZW5lMSB7XG5cdFx0Zm9udC1mYW1pbHk6IEZpcmEtU2Fucy1TQjtcblx0XHRmb250LXdlaWdodDogNjAwO1xuXHR9XG5cdFxuXHQuaGVhZGxpbmUxIHtcblx0XHRmb250LXdlaWdodDogNjAwO1xuICAgIFx0Zm9udC1mYW1pbHk6IEZpcmEtU2Fucy1TQjtcblx0fVxuXHRwLCB0ZCB7XG5cdFx0Zm9udC13ZWlnaHQ6IGluaXRpYWw7XG5cdFx0Zm9udC1mYW1pbHk6IEZpcmEtU2Fucztcblx0fVxufSBcblxuYS5saW5rbGlzdCB7XG5cdGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvY29tbW9uL2ljbi1saW5rLnN2Zyk7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgM3B4O1xuXHRiYWNrZ3JvdW5kLXNpemU6IDIwcHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0cGFkZGluZy1sZWZ0OiA0MHB4O1xuXHRmb250LXNpemU6IDE2cHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbmEuZG93bmxvYWRsaXN0IHtcblx0YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9jb21tb24vaWNuLWRvd25sb2FkLnN2Zyk7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgM3B4O1xuXHRiYWNrZ3JvdW5kLXNpemU6IDIwcHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0cGFkZGluZy1sZWZ0OiA0MHB4O1xuXHRmb250LXNpemU6IDE2cHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0d2lkdGg6IDEwMCU7XG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5sZWlzdHVuZ3Nwb3J0Zm9saW8ge1xuXHRcblx0dWwge1xuXHRcdG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7ICAgIFxuXHRcdC13ZWJraXQtbWFyZ2luLWJlZm9yZTogMDtcblx0ICAgIC13ZWJraXQtbWFyZ2luLWFmdGVyOiAwO1xuXHQgICAgLXdlYmtpdC1tYXJnaW4tc3RhcnQ6IDA7XG5cdCAgICAtd2Via2l0LW1hcmdpbi1lbmQ6IDA7XG5cdCAgICAtd2Via2l0LXBhZGRpbmctc3RhcnQ6IDA7XG5cblx0XHRsaSB7XG5cdFx0XHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRcdFx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjU7XG5cdFx0fVxuXHR9XG59XG5cbi5hdXNzY2hyZWlidW5nIHtcblxuXHRwYWRkaW5nOiA0MHB4IDA7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3ItYmxhdTtcblxufVxuXG4uc2gtY29udGFpbmVyIHtcblx0ZGlzcGxheTogdGFibGU7XG5cdHdpZHRoOiAxMDAlO1xuXG5cdC5zaC1kaXYge1xuXHRcdGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cdH1cbn1cblxuLnRhYiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogU3R5bGUgdGhlIGJ1dHRvbnMgdGhhdCBhcmUgdXNlZCB0byBvcGVuIHRoZSB0YWIgY29udGVudCAqL1xuLnRhYiBidXR0b24ge1xuICAgIGNvbG9yOiByZ2JhKDAsMCwwLDAuNSk7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmc6IDAgMjBweCAwIDA7XG4gICAgdHJhbnNpdGlvbjogMC4zcztcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDByZW0pIHtcbiAgICBcdHBhZGRpbmc6IDAgMTBweCAwIDA7XG4gICAgfVxufVxuXG4vKiBDaGFuZ2UgYmFja2dyb3VuZCBjb2xvciBvZiBidXR0b25zIG9uIGhvdmVyICovXG4udGFiIGJ1dHRvbjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvci1ibGF1O1xufVxuXG4vKiBDcmVhdGUgYW4gYWN0aXZlL2N1cnJlbnQgdGFibGluayBjbGFzcyAqL1xuLnRhYiBidXR0b24uYWN0aXZlIHtcbiAgICBjb2xvcjogJGNvbG9yLWJsYXU7XG59XG5cbi8qIFN0eWxlIHRoZSB0YWIgY29udGVudCAqL1xuLnRhYmNvbnRlbnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcGFkZGluZzogMS41cmVtIDA7XG4gICAgYW5pbWF0aW9uOiBmYWRlRWZmZWN0IDAuM3M7XG59XG5Aa2V5ZnJhbWVzIGZhZGVFZmZlY3Qge1xuICAgIGZyb20ge29wYWNpdHk6IDA7fVxuICAgIHRvIHtvcGFjaXR5OiAxO31cbn1cblxuLmRhdGVuc2NodXR6IGgxLFxuLmltcHJlc3N1bSBoMSB7XG5cdG1hcmdpbi1ib3R0b206IDA7XG59XG5cblxuYm9keS5zdGFydHNlaXRlIHtcblx0YS5lZnZFZGl0b3JsaW5rc1xue1xudGV4dC1kZWNvcmF0aW9uOm5vbmU7XG5mb250LWZhbWlseTonRmlyYS1TYW5zLVNCJztcbmZvbnQtc2l6ZToyMHB4O1xuZm9udC13ZWlnaHQ6Ym9sZDtcbmZvbnQtc3R5bGU6bm9ybWFsO1xuYmFja2dyb3VuZC1jb2xvcjogIzVjNWM1YztcbmNvbG9yOiAjZmZmO1xufVxuLmVmdkVkaXRvcmJhY2sgc3Bhblxue1xudGV4dC1kZWNvcmF0aW9uOm5vbmU7XG5mb250LWZhbWlseTonRmlyYS1TYW5zLVNCJztcbmZvbnQtc2l6ZToyMHB4O1xuZm9udC13ZWlnaHQ6Ym9sZDtcbmZvbnQtc3R5bGU6bm9ybWFsO1xuYmFja2dyb3VuZC1jb2xvcjogIzVjNWM1YztcbmNvbG9yOiAjZmZmO1xufVxuLmVmdlBvcHVwVGl0ZWxcbntcbmJhY2tncm91bmQtY29sb3I6ICM1YzVjNWM7XG5jb2xvcjogI2ZmZjtcbnRleHQtYWxpZ246bGVmdDtcbmZvbnQtZmFtaWx5OidGaXJhLVNhbnMnO1xuZm9udC1zaXplOjIwcHg7XG5cbn1cbi5lZnZFZGl0b3JiYWNrXG57XG5iYWNrZ3JvdW5kLWNvbG9yOiAjNWM1YzVjO1xuY29sb3I6ICNmZmY7XG50ZXh0LWFsaWduOmxlZnQ7XG5mb250LWZhbWlseTonRmlyYS1TYW5zJztcbmZvbnQtc2l6ZToxcmVtO1xuZm9udC13ZWlnaHQ6bm9ybWFsO1xufVxuLmVmdkVkaXRvcmRpdlxue1xub3ZlcmZsb3c6YXV0bztcbndpZHRoOjEwMCU7XG4vKmhlaWdodDo1MCU7Ki9cbn1cbi5lZnZFZGl0b3JpbWdcbntcbmhlaWdodDowO1xufVxuLmVmdkVkaXRvcmRpdiB0YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgICBib3JkZXItc3BhY2luZzogMCAxZW07XG59XG5cbi5lZnZFZGl0b3JkaXYgdGFibGUgdHIgdGQ6bnRoLW9mLXR5cGUoMSkge1xuXHR3aWR0aDogMTgwcHg7XG59XG4uZWZ2RWRpdG9yZGl2IHRhYmxlIHRyOm50aC1vZi10eXBlKDNuKzApIHRkIHtcblx0LypoZWlnaHQ6IDIwcHg7XG5cdHBhZGRpbmctYm90dG9tOiAyMHB4OyovXG5cdFxuXHRib3JkZXI6IDFweCBzb2xpZDtcblx0Ym9yZGVyLWxlZnQ6IDA7XG4gIFx0Ym9yZGVyLXJpZ2h0OiAwO1xuICBcdGJvcmRlci10b3A6IDA7XG4gIFx0XG4gIFx0Ym9yZGVyLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgMCUsICByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDEwMCUpO1xuICBcdGJvcmRlci1pbWFnZS1zbGljZTogMTtcblxuXG59XG59XG5cbmJvZHkubmV3cyB7XG5cdGEuZWZ2RWRpdG9ybGlua3NcbntcbnRleHQtZGVjb3JhdGlvbjpub25lO1xuZm9udC1mYW1pbHk6J0ZpcmEtU2Fucy1TQic7XG5mb250LXNpemU6MjBweDtcbmZvbnQtd2VpZ2h0OmJvbGQ7XG5mb250LXN0eWxlOm5vcm1hbDtcblxuY29sb3I6ICMyYjJiMmI7XG59XG4uZWZ2RWRpdG9yYmFjayBzcGFuXG57XG50ZXh0LWRlY29yYXRpb246bm9uZTtcbmZvbnQtZmFtaWx5OidGaXJhLVNhbnMtU0InO1xuZm9udC1zaXplOjIwcHg7XG5mb250LXdlaWdodDpib2xkO1xuZm9udC1zdHlsZTpub3JtYWw7XG5cbmNvbG9yOiAjMmIyYjJiO1xufVxuLmVmdlBvcHVwVGl0ZWxcbntcblxuY29sb3I6ICMyYjJiMmI7XG50ZXh0LWFsaWduOmxlZnQ7XG5mb250LWZhbWlseTonRmlyYS1TYW5zJztcbmZvbnQtc2l6ZToyMHB4O1xuXG59XG4uZWZ2RWRpdG9yYmFja1xue1xuXG5jb2xvcjogIzJiMmIyYjtcbnRleHQtYWxpZ246bGVmdDtcbmZvbnQtZmFtaWx5OidGaXJhLVNhbnMnO1xuZm9udC1zaXplOjFyZW07XG5mb250LXdlaWdodDpub3JtYWw7XG59XG4uZWZ2RWRpdG9yZGl2XG57XG5vdmVyZmxvdzphdXRvO1xud2lkdGg6MTAwJTtcbi8qaGVpZ2h0OjUwJTsqL1xufVxuLmVmdkVkaXRvcmltZ1xue1xuaGVpZ2h0OjA7XG59XG4uZWZ2RWRpdG9yZGl2IHRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwIDFlbTtcbn1cblxuLmVmdkVkaXRvcmRpdiB0YWJsZSB0ciB0ZDpudGgtb2YtdHlwZSgxKSB7XG5cdHdpZHRoOiAxODBweDtcbn1cbi5lZnZFZGl0b3JkaXYgdGFibGUgdHI6bnRoLW9mLXR5cGUoM24rMCkgdGQge1xuXHQvKmhlaWdodDogMjBweDtcblx0cGFkZGluZy1ib3R0b206IDIwcHg7Ki9cblx0XG5cdGJvcmRlcjogMXB4IHNvbGlkO1xuXHRib3JkZXItbGVmdDogMDtcbiAgXHRib3JkZXItcmlnaHQ6IDA7XG4gIFx0Ym9yZGVyLXRvcDogMDtcbiAgXHRcbiAgXHRib3JkZXItaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSg0MywgNDMsIDQzLCAxKSAwJSwgIHJnYmEoNDMsIDQzLCA0MywgMSkgMTAwJSk7XG4gIFx0Ym9yZGVyLWltYWdlLXNsaWNlOiAxO1xuXG5cbn1cbn1cblxuXG5cbiNzdGlja3ktcGhhbnRvbSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiNzdGlja3ktcGhhbnRvbS5hYnMge1xuXHR6LWluZGV4OiAxO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMCU7XG59XG5cbiNjb250ZW50LnN0aWNrIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDozO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuI2NvbnRlbnQuc3RpY2suYWJzIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xufVxuXG5cbi5jYXQtZW50cnkge1xuXHR3aWR0aDogMTAwJTtcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICMyQjJCMkI7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdHBhZGRpbmctdG9wOiAxMHB4O1xuXHRwYWRkaW5nLWJvdHRvbTogMTBweDtcblx0bWFyZ2luLXRvcDogMjVweDtcblxuXHQuY29sLTFvZjIge1xuXHRcdHdpZHRoOiA1MCU7XG5cdFx0ZmxvYXQ6bGVmdDtcblx0XHRAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA4NDBweCkge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRmbG9hdDogbm9uZTtcblxuXHRcdFx0LmZvbnQtMTQge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiA1cHg7XG5cdFx0XHR9XG5cdFx0XHRbZGF0YS1hZHJlc3NdIHtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDIwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5jb2wtZmlmdHlmaWZ0eSB7XG5cdFx0d2lkdGg6IDUwJTtcblx0XHRmbG9hdDogbGVmdDsgXG5cdFx0QG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogODQwcHgpIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0W2RhdGEtbGFzdF0ge1xuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdH1cbn1cbmJvZHkua29vcnBlcmF0aW9uc3BhcnRuZXIgLnJvdyAuY29sdW1uLmNvbHVtbi02NiwgXG5ib2R5Lmtvb3JwZXJhdGlvbnNwYXJ0bmVyIC5yb3cgLmNvbHVtbi5jb2x1bW4tNjcge1xuXHRAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuXHRcdGZsZXg6IDAgMCAxMDAlO1xuICAgIFx0bWF4LXdpZHRoOiAxMDAlO1xuXHR9XG59XG5cblxuLypAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuXHQjY29uZGl0aW9uIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59Ki8iXX0= */