@import url(http://fonts.googleapis.com/css?family=OpenSans:400|Oswald:400); /*! normalize.css v3.0.2 | MIT License | git.io/normalize */
html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    scroll-behavior:smooth;
}

body {
    margin: 0
}

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

audio, canvas, progress, video {
    display: inline-block;
    vertical-align: baseline
}

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

[hidden], template {
    display: none
}

a {
    background-color: transparent
}

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

abbr[title] {
    border-bottom: 1px dotted
}

b, strong {
    font-weight: 700
}

dfn {
    font-style: italic
}

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

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

small {
    font-size: 80%
}

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

sup {
    top: -.5em
}

sub {
    bottom: -.25em
}

img {
    border: 0
}

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

figure {
    margin: 1em 40px
}

hr {
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0
}

pre {
    overflow: auto
}

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

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

button {
    overflow: visible
}

button, select {
    text-transform: none
}

button, html input[type=button], input[type=reset], input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer
}

button[disabled], html input[disabled] {
    cursor: default
}

button::-moz-focus-inner, input::-moz-focus-inner {
    border: 0;
    padding: 0
}

input {
    line-height: normal
}

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

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

input[type=search] {
    -webkit-appearance: textfield;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

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

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

legend {
    border: 0;
    padding: 0
}

textarea {
    overflow: auto
}

optgroup {
    font-weight: 700
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td, th {
    padding: 0
}

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

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

body {
    color: #3d3b3b;
    padding: 0;
    margin: 0;
    position: relative;
    cursor: auto;
    overflow-x: hidden
}

.lt-ie9 * {
    filter: none !important
}

[aria-hidden=true] {
    display: none !important
}

dl, ol, ul {
    margin-bottom: 1.25rem;
    list-style-position: outside
}

ol, ul {
    margin-left: 20px;
    padding: 0
}

li {
    margin-left: 0
}

.figure-wrapper, .left {
    float: left !important
}

.list-plain, .top-bar-section ul, footer .footer-column ul {
    list-style-type: none
}

a {
    color: inherit
}

a:active, a:hover {
    color: #094a7b
}

.feature-item, .feature-tile, .testimonial-content, .tp-column, .tp-column-3, .tp-column-4, .tp-column-fullwidth, .tp-columns, footer .footer-column, footer .footer-headline {
    position: relative;
    padding-left: .9375rem;
    padding-right: .9375rem
}

@media only screen and (min-width: 712px) {
    .feature-item, .feature-tile, .testimonial-content, .tp-column, .tp-column-3, .tp-column-4, .tp-column-fullwidth, .tp-columns, footer .footer-column, footer .footer-headline {
        float: left;
        min-height: 1px
    }
}

@media only screen and (min-width: 1024px) {
    .large-3, .testimonial-content, .tp-column-3 {
        width: 50%
    }
}

@media only screen and (min-width: 1024px) {
    .large-4, .tp-column-4, footer .footer-column {
        width: 25%
    }
}

@media only screen and (min-width: 1024px) {
    .large-6 {
        width: 50%
    }
}

@media only screen and (min-width: 712px) {
    .medium-3, .testimonial-content, .tp-column-3 {
        width: 50%
    }
}

@media only screen and (min-width: 712px) {
    .medium-6, .tp-column-4, footer .footer-column {
        width: 50%
    }
}

.small-12, .tp-column-fullwidth, footer .footer-headline {
    width: 100%
}

@media screen and (min-width: 480px -1px) {
    .testimonial-content, .tp-column-3, .x-small-12 {
        width: 100%
    }
}

@media only screen and (min-width: 712px) {
    .tp-column-6 {
        width: 50%;
        float: right
    }
}

.tp-row {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
    margin-bottom: 0;
    max-width: 62.5rem
}

.tp-row:after, .tp-row:before {
    content: " ";
    display: table
}

.tp-row:after {
    clear: both
}

body {
    font-family: "Open Sans", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    font-style: normal;
    line-height: 1.625;
    -webkit-font-smoothing: antialiased
}

.h1, .h2, .h3, .h4, .h5, .h6, .timeline .title, h1, h2, h3, h4, h5, h6 {
    font-family: Oswald, Helvetica, sans-serif;
    font-weight: 400;
    word-wrap: break-word;
    line-height: 2.5rem
}

@media only screen and (min-width: 767px) {
    .h1, .h2, .h3, .h4, .h5, .h6, .timeline .title, h1, h2, h3, h4, h5, h6 {
        word-wrap: normal
    }
}

.h1, h1 {
    font-size: 2.2rem
}

@media only screen and (min-width: 480px) {
    .h1, h1 {
        font-size: 2.5rem
    }
}

@media only screen and (min-width: 712px) {
    .h1, h1 {
        font-size: 3rem
    }
}

.h2, h2 {
    font-size: 1.8rem
}

@media only screen and (min-width: 480px) {
    .h2, h2 {
        font-size: 2rem
    }
}

@media only screen and (min-width: 712px) {
    .h2, h2 {
        font-size: 2.5rem
    }
}

.h3, .timeline .title, h3 {
    font-size: 1.2rem
}

@media only screen and (min-width: 480px) {
    .h3, .timeline .title, h3 {
        font-size: 1.4rem
    }
}

@media only screen and (min-width: 712px) {
    .h3, .timeline .title, h3 {
        font-size: 1.625rem
    }
}

li, p {
    font-size: .8rem
}

@media (min-width: 480px) {
    li, p {
        font-size: 1rem
    }
}

dl, ol, ul {
    font-family: inherit;
    line-height: 1.6;
    list-style-position: outside
}

ol, ul {
    font-size: 1rem
}

.top-bar {
    overflow: hidden;
    height: 3.125rem;
    line-height: 3.125rem;
    position: fixed;
    width: 100%;
    background: #002b61;
    margin-bottom: 0;
    z-index: 10
}

@media only screen and (min-width: 1024px) {
    .top-bar {
        overflow: visible;
        background: #002b61
    }

    .top-bar:after, .top-bar:before {
        content: " ";
        display: table
    }
}

.top-bar a {
    transition: all .2s ease-in-out;
    text-decoration: none;
    font-weight: 700;
    color: #fff;
    display: block
}

.top-bar a:hover {
    background: #094a7b;
    transition: all .2s ease-in-out !important
}

.top-bar a > li {
    padding-left: 0
}

.top-bar svg {
    height: 35px;
    width: auto
}

.top-bar-section {
    left: 0;
    position: relative;
    width: auto;
    transition: left .3s ease-out
}

@media only screen and (max-width: 64em) {
    .top-bar-section ul li:first-child {
        display: none
    }
}

.top-bar-section li {
    line-height: 3.125rem
}

.top-bar-section a {
    font-size: .8em;
    padding: 0 .9rem
}

@media only screen and (min-width: 480px) {
    .top-bar-section a {
        padding: 0 1.04167rem;
        font-size: 1em
    }
}

.tei-publisher-icon {
    text-align: left;
    padding: 8px .9rem 0 1.04167rem !important;
    height: 50px
}

.title-area {
    position: relative;
    margin: 0;
    list-style-type: none
}

@media only screen and (min-width: 1024px) {
    .title-area {
        float: left
    }
}

.name {
    height: 3.125rem;
    margin: 0
}

@media only screen and (min-width: 1024px) {
    .name {
        display: none
    }
}

.name h1, .name h2, .name h3, .name h4, .name p, .name span {
    line-height: 3.125rem;
    margin: 0
}

.name h1 a, .name h2 a, .name h3 a, .name h4 a, .name p a, .name span a {
    width: 75%;
    display: block
}

.toggle-topbar {
    position: absolute;
    right: 0;
    top: 0
}

@media only screen and (min-width: 1024px) {
    .toggle-topbar {
        display: none
    }
}

.toggle-topbar a {
    position: relative;
    display: block;
    height: 3.125rem;
    line-height: 3.125rem
}

.toggle-topbar.menu-icon a {
    height: 3.125rem;
    line-height: 3.125rem;
    padding: 0 2.60417rem 0 1.04167rem;
    position: relative
}

.menu-icon a span:after {
    content: "";
    position: absolute;
    display: block;
    height: 0;
    top: 50%;
    margin-top: -6px;
    right: 1.04167rem;
    box-shadow: 0 0 0 1px #fff, 0 7px 0 1px #fff, 0 14px 0 1px #fff;
    width: 18px
}

.top-bar-section .divider, .top-bar-section [role=separator] {
    border-top: solid 0 gray;
    clear: both;
    height: 1px;
    width: 100%
}

@media only screen and (min-width: 1024px) {
    .top-bar-section .divider, .top-bar-section [role=separator] {
        border-bottom: none;
        border-top: none;
        border-right: solid 0 #fff;
        clear: none;
        height: 3.125rem;
        width: 0
    }
}

.top-bar-section ul {
    padding: 0;
    width: 100%;
    height: auto;
    display: block;
    margin: 0
}

@media only screen and (min-width: 1024px) {
    .top-bar-section ul {
        width: auto;
        height: auto !important;
        display: inline
    }
}

.top-bar-section ul li {
    background: #fff;
    text-align: center
}

@media only screen and (min-width: 1024px) {
    .top-bar-section ul li {
        float: left
    }
}

.top-bar-section ul li > a {
    color: #fff;
    display: block;
    width: 100%
}

.top-bar-section ul li a {
    background-color: #1c8ebb
}

@media only screen and (min-width: 1024px) {
    .top-bar-section ul li a {
        background-color: #002b61
    }
}

.top-bar.expanded {
    height: auto;
    background: 0 0
}

.top-bar.expanded .title-area {
    background-color: #002b61
}

.tp-light {
    color: #a4a0a0
}

.tp-btn-link-wrapper, .tp-center, .tp-textlink-middle {
    text-align: center
}

.testimonial {
    background: linear-gradient(150deg, #e7f0f6 91%, #cae6f6 45%, #e7f0f6 16%);
    padding: 1.3em 0 3.5em 0;
    position: relative;
    margin-top: 0;
    z-index: 0
}

@media screen and (min-width: 480px) {
    .testimonial {
        padding: 2em 0 3.5em 0
    }
}

.testimonial:before {
    position: absolute;
    bottom: 100%;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    border-width: 30px 100vw 0 0;
    border-color: transparent #e7f0f6 transparent transparent
}

#news {
    z-index: 1;
    padding: 1.3em 0 3.5em 0;
    position: relative;
    margin-top: 0
}

@media screen and (min-width: 480px) {
    #news {
        padding: 2em 0 3.5em 0
    }
}

#news:before {
    position: absolute;
    bottom: 100%;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    border-width: 0 100vw 30px 0;
    border-color: transparent transparent #fff transparent
}

#features {
    background: linear-gradient(150deg, #e7f0f6 91%, #cae6f6 45%, #e7f0f6 16%);
    padding: 1.3em 0 3.5em 0;
    position: relative;
    margin-top: 0;
    z-index: 0
}

@media screen and (min-width: 480px) {
    #features {
        padding: 2em 0 3.5em 0
    }
}

#features:before {
    position: absolute;
    bottom: 100%;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    border-width: 30px 100vw 0 0;
    border-color: transparent #e7f0f6 transparent transparent
}

#demo {
    z-index: 1;
    padding: 1.3em 0 3.5em 0;
    position: relative;
    margin-top: 0
}

@media screen and (min-width: 480px) {
    #demo {
        padding: 2em 0 3.5em 0
    }
}

#demo:before {
    position: absolute;
    bottom: 100%;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    border-width: 0 100vw 30px 0;
    border-color: transparent transparent #fff transparent
}

#vision {
    background: linear-gradient(150deg, #e7f0f6 91%, #cae6f6 45%, #e7f0f6 16%);
    z-index: 1;
    padding: 1.3em 0 3.5em 0;
    position: relative;
    margin-top: 0
}

@media screen and (min-width: 480px) {
    #vision {
        padding: 2em 0 3.5em 0
    }
}

#vision:before {
    position: absolute;
    bottom: 100%;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    border-width: 30px 100vw 0 0;
    border-color: transparent #e7f0f6 transparent transparent
}

#support {
    z-index: 1;
    padding: 1.3em 0 3.5em 0;
    position: relative;
    margin-top: 0
}

@media screen and (min-width: 480px) {
    #support {
        padding: 2em 0 3.5em 0
    }
}

#support:before {
    position: absolute;
    bottom: 100%;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    border-width: 0 100vw 30px 0;
    border-color: transparent transparent #fff transparent
}

footer {
    padding: 1.3em 0 3.5em 0;
    position: relative;
    margin-top: 0
}

@media screen and (min-width: 480px) {
    footer {
        padding: 2em 0 3.5em 0
    }
}

footer:before {
    position: absolute;
    bottom: 100%;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    border-width: 30px 100vw 0 0;
    border-color: transparent #e6e6e6 transparent transparent
}

.tp-headline {
    text-align: center
}

@media only screen and (min-width: 480px) {
    .tp-headline {
        margin-bottom: 4rem
    }
}

.demo-info h3:first-of-type {
    margin-top: 0
}

header {
    background-image: url(../img/graphics/icons-bg-light-gray.png), linear-gradient(150deg, #1072bb 11%, #1f94bb 45%, #cae6f6 95%);
    background-repeat: repeat;
    background-size: 35%, contain
}

@media only screen and (min-width: 1024px) {
    header {
        background-size: 27%, cover
    }
}

@media only screen and (min-width: 1800px) {
    header {
        background-size: 12%, cover
    }
}

.tp-banner {
    padding-top: 50px;
    height: auto
}

.tp-banner > div {
    margin-top: 40px
}

.tp-banner > div:last-of-type {
    margin: 40px 0 60px 0
}

@media only screen and (min-width: 480px) {
    .tp-banner > div:last-of-type {
        margin-bottom: 80px
    }
}

.tp-banner #tp-logo {
    height: 140px;
    width: 100%
}

@media only screen and (min-width: 480px) {
    .tp-banner #tp-logo {
        height: 100%;
        max-height: 200px;
        padding: 32px 0;
        width: 100%
    }
}

.tp-banner h1 {
    color: #002b61;
    text-align: center;
    margin-bottom: 0;
    margin-top: 0;
    padding-bottom: 30px
}

.figure-wrapper {
    position: relative;
    margin-left: 80px
}

.feature-headline {
    margin: 0 0 .5rem 0
}

.feature-description {
    margin-top: 0
}

.figure.workflow {
    margin: 0
}

@media only screen and (min-width: 480px) {
    .figure.workflow {
        margin: 40px 0
    }
}

.figure.workflow svg {
    width: 100%;
    height: auto;
    min-height: 350px
}

@media only screen and (min-width: 480px) {
    .figure.workflow svg {
        min-height: 500px
    }
}

.figure.feature-icon {
    width: auto;
    position: absolute;
    top: 7px;
    left: -80px
}

.feature-item, .feature-tile {
    width: 100%
}

@media only screen and (min-width: 800px) {
    .feature-item, .feature-tile {
        width: 50%
    }
}

.feature-tile {
    margin-top: 2rem
}

.news-graphic-wrapper {
    margin-left: 0;
    margin-right: 0;
    padding-bottom: 30px
}

@media only screen and (min-width: 992px) {
    .news-graphic-wrapper {
        position: relative;
        width: 33%
    }
}

.news-info {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding-bottom: 30px
}

@media only screen and (min-width: 992px) {
    .news-info {
        width: 66%
    }
}

.news-info h2 {
    margin-top: 0
}

.demo-graphic-wrapper {
    margin-left: 0;
    margin-right: 0;
    padding-bottom: 30px
}

@media only screen and (min-width: 992px) {
    .demo-graphic-wrapper {
        position: relative;
        width: 67%
    }
}

@media only screen and (min-width: 992px) {
    .tp-columns.tp-second, .tp-second.tp-column-fullwidth, footer .tp-second.footer-headline {
        float: right !important
    }
}

@media only screen and (min-width: 480px) {
    .demo-item:not(:last-of-type) {
        margin-bottom: 50px
    }
}

.demo-info {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding-bottom: 30px
}

@media only screen and (min-width: 992px) {
    .demo-info {
        width: 33%
    }
}

.demo-info h2 {
    margin-top: 0
}

.demo-image img {
    width: 100%;
    height: auto
}

.testimonial h2 {
    margin-bottom: 0
}

.testimonial h3 {
    margin-bottom: 4rem
}

.testimonial-content {
    margin-bottom: 4em
}

.testimonial-content:last-of-type {
    margin-bottom: 0
}

@media only screen and (min-width: 480px) {
    .testimonial-content {
        margin-bottom: 0
    }
}

.testimonial-content h2, .testimonial-content h3 {
    margin-bottom: 0;
    text-align: center
}

.testimonial-content p {
    text-align: justify
}

.testimonial-content h3 > a {
    text-decoration: none;
    color: #3d3b3b
}

.testimonial-content h3 > a:hover {
    color: #094a7b
}

.up-to-top > div {
    text-align: right
}

.up-to-top a {
    text-decoration: none
}

.tp-image {
    opacity: 1;
    display: block;
    width: 100%;
    height: auto;
    transition: .5s ease;
    backface-visibility: hidden
}

.tp-textlink-middle {
    transition: .5s ease;
    opacity: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%)
}

.container {
    position: relative;
    width: 100%
}

.container:hover .tp-image {
    opacity: .3
}

.container:hover .tp-textlink-middle {
    opacity: 1
}

.round {
    overflow: hidden;
    border-radius: 50%;
    width: 160px;
    height: 160px;
    margin: 0 auto;
    box-shadow: 0 8px 10px 1px rgba(0, 0, 0, .14), 0 3px 14px 2px rgba(0, 0, 0, .12), 0 5px 5px -3px rgba(0, 0, 0, .4)
}

.tp-btn {
    display: inline-block;
    color: #002b61 !important;
    padding: 8px 16px 8px 52px;
    margin-bottom: 7px;
    margin-right: 5px;
    font-size: 1rem;
    font-weight: 900;
    letter-spacing: 2px;
    vertical-align: middle;
    text-align: center;
    text-decoration: none;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    cursor: pointer;
    background-color: transparent;
    border: 3px solid #f8b316;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    -o-transition: all .3s ease-out;
    transition: all .3s ease-out;
    position: relative;
    font-family: Oswald, Helvetica, sans-serif
}

@media only screen and (min-width: 480px) {
    .tp-btn {
        padding: 10px 18px 10px 55px;
        margin-bottom: 7px;
        margin-right: 5px;
        font-size: 1.3rem
    }
}

.tp-btn:hover {
    background-color: #f8b316;
    color: #002b61 !important
}

.tp-btn:focus {
    color: #fff;
    outline: 0
}

.tp-demo-button-container {
    text-align: center
}

.tp-demo-button-container #icon-eye {
    width: auto;
    position: absolute;
    top: 11px;
    left: 11px;
    height: 23px
}

@media only screen and (min-width: 480px) {
    .tp-demo-button-container #icon-eye {
        top: 16px;
        left: 8px;
        height: 26px
    }
}

.tp-btn-link-wrapper {
    margin-top: 2rem
}

.tp-btn-link {
    background-color: #f8b316;
    font-size: inherit;
    color: #3d3b3b;
    font-weight: 700;
    text-decoration: none;
    padding: .8em 1.2em;
    position: relative;
    display: inline-block
}

.tp-btn-link:hover {
    color: inherit;
    background-color: #facb60
}

@media (min-width: 480px) {
    .tp-btn-link {
        font-size: 1rem;
        padding: 1em 2em
    }
}

.tp-btn-link.icon {
    padding: .5em .8em .5em 3em
}

@media (min-width: 480px) {
    .tp-btn-link.icon {
        font-size: 1rem;
        padding: .7em 1em .7em 3.2em
    }
}

.tp-btn-link.icon #icon-eye {
    width: auto;
    position: absolute;
    top: 7px;
    left: 5px;
    height: 20px
}

@media only screen and (min-width: 480px) {
    .tp-btn-link.icon #icon-eye {
        top: 12px;
        left: 7px;
        height: 26px
    }
}

.timeline {
    position: relative
}

.timeline .entries {
    width: calc(100% - 80px);
    margin: auto;
    position: relative;
    left: -5px
}

.timeline .entries:before {
    width: 4px;
    background: #f8b316;
    position: absolute;
    left: 0;
    transform: none;
    content: '';
    top: 26px;
    height: 85%
}

@media only screen and (min-width: 712px) {
    .timeline .entries:before {
        left: 50%;
        transform: translateX(-50%);
        content: '';
        top: 40px;
        height: 83%
    }
}

.timeline .entry {
    padding: 10px 20px 10px 32px;
    float: none;
    clear: both;
    transform: none;
    text-align: left
}

.timeline .entry:nth-child(2n) {
    text-align: left;
    float: none;
    clear: both
}

@media only screen and (min-width: 712px) {
    .timeline .entry {
        clear: both;
        width: calc(50% - 50px);
        text-align: right
    }

    .timeline .entry:not(:first-child) {
        margin-top: -60px
    }

    .timeline .entry:nth-child(2n) {
        text-align: left;
        float: right
    }

    .timeline .entry:nth-child(2n) .title:before {
        left: -86px
    }

    .timeline .entry:nth-child(2n) .title.big:before {
        transform: translate(-8px, -50%)
    }
}

.timeline .title {
    margin: 0 0 12px 0;
    position: relative;
    color: #002b61;
    line-height: .9em
}

@media only screen and (min-width: 712px) {
    .timeline .title {
        line-height: 1.8em
    }
}

.timeline .title:before {
    content: '';
    position: absolute;
    width: 8px;
    height: 8px;
    border: 4px solid #f8b316;
    background-color: #002b61;
    border-radius: 100%;
    top: 50%;
    left: -50px;
    z-index: 1000
}

@media only screen and (min-width: 712px) {
    .timeline .title:before {
        transform: translateY(-50%);
        left: auto;
        right: -74px
    }
}

.timeline .title.big:before {
    width: 24px;
    height: 24px;
    transform: translate(8px, -50%)
}

.timeline p {
    margin: 0
}

@media only screen and (max-width: 711px) {
    .timeline p {
        margin: 0
    }
}

footer {
    background-color: #e6e6e6;
    position: relative
}

@media only screen and (min-width: 480px) {
    footer {
        padding: 4em 0 4em
    }
}

footer .footer-headline {
    margin: 0 0 1em
}

footer .footer-column img {
    width: 200px
}

footer .footer-column ul {
    margin: 0;
    display: inline
}

footer .footer-column li:not(:last-of-type) {
    margin-bottom: .75em
}

footer .footer-column:not(:last-of-type) {
    margin: 0 0 1.75em 0
}

@media only screen and (min-width: 712px) {
    footer .footer-column:not(:last-of-type) {
        margin: 0
    }
}

footer a {
    text-decoration: none
}

footer a:active, footer a:hover {
    text-decoration: underline
}

footer .tp-light:active, footer .tp-light:visited {
    color: #a4a0a0
}

/* overwrites to 1.2.0 */
a[href='#top-of-page'] {
    opacity: 0;
}

.news-info a.all {
    text-decoration: none;
}

.ee-logo{
    padding: 3rem 0;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLnNjc3MiLCJfbm9ybWFsaXplLnNjc3MiLCJzdHlsZS5jc3MiLCJfYmFzZS5zY3NzIiwiX3ZhcmlhYmxlcy5zY3NzIiwiX3RoZW1lLnNjc3MiLCJfbmF2aWdhdGlvbi5zY3NzIiwiX2Zvb3Rlci5zY3NzIiwiX2dyaWQuc2NzcyIsIl90eXBvZ3JhcGh5LnNjc3MiLCJfdGltZWxpbmUuc2NzcyIsIl9idXR0b25zLnNjc3MiLCJfbWl4aW5zLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsNEVDRkEsNERBUUEsS0FDRSxZQUFhLFdBQ2IscUJBQXNCLEtBQ3RCLHlCQUEwQixLQU81QixLQUNFLE9BQVEsRUFhVixRQUNBLE1BQ0EsUUFDQSxXQUNBLE9BQ0EsT0FDQSxPQUNBLE9BQ0EsS0FDQSxLQUNBLElBQ0EsUUFDQSxRQUNFLFFBQVMsTUFRWCxNQUNBLE9BQ0EsU0FDQSxNQUNFLFFBQVMsYUFDVCxlQUFnQixTQVFsQixzQkFDRSxRQUFTLEtBQ1QsT0FBUSxFQ0NWLFNEUUEsU0FDRSxRQUFTLEtBVVgsRUFDRSxpQkFBa0IsWUFPcEIsU0FDQSxRQUNFLFFBQVMsRUFVWCxZQUNFLGNBQWUsSUFBQSxPQU9qQixFQUNBLE9BQ0UsWUFBYSxJQU9mLElBQ0UsV0FBWSxPQVFkLEdBQ0UsVUFBVyxJQUNYLE9BQVEsTUFBQSxFQU9WLEtBQ0UsV0FBWSxLQUNaLE1BQU8sS0FPVCxNQUNFLFVBQVcsSUFPYixJQUNBLElBQ0UsVUFBVyxJQUNYLFlBQWEsRUFDYixTQUFVLFNBQ1YsZUFBZ0IsU0FHbEIsSUFDRSxJQUFLLE1BR1AsSUFDRSxPQUFRLE9BVVYsSUFDRSxPQUFRLEVBT1YsZUFDRSxTQUFVLE9BVVosT0FDRSxPQUFRLElBQUEsS0FPVixHQUNFLGdCQUFpQixZQUNqQixXQUFZLFlBQ1osT0FBUSxFQU9WLElBQ0UsU0FBVSxLQU9aLEtBQ0EsSUFDQSxJQUNBLEtBQ0UsWUFBYSxTQUFBLENBQUEsVUFDYixVQUFXLElBa0JiLE9BQ0EsTUFDQSxTQUNB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LHlDQStCTSxPQUFRLEVBQUEsRUFBQSxPQUFBLEVBQ1IseUNBaENOLHlDQWlDUSxPQUFRLEdBakNoQixTQXVDSSxnQkFBaUIsS0F2Q3JCLGdCQUFBLGVBMENNLGdCQUFpQixVQTFDdkIsd0JBQUEseUJBK0NJLE1IdkNvQiIsImZpbGUiOiJzdHlsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcInV0Zi04XCI7XG5cbkBpbXBvcnQgdXJsKGh0dHA6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU9wZW5TYW5zOjQwMHxPc3dhbGQ6NDAwKTtcbkBpbXBvcnQgXCJub3JtYWxpemUuc2Nzc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy5zY3NzXCI7XG5AaW1wb3J0IFwibWl4aW5zLnNjc3NcIjtcbkBpbXBvcnQgXCJiYXNlLnNjc3NcIjtcbkBpbXBvcnQgXCJncmlkLnNjc3NcIjtcbkBpbXBvcnQgXCJ0eXBvZ3JhcGh5LnNjc3NcIjtcbkBpbXBvcnQgXCJuYXZpZ2F0aW9uLnNjc3NcIjtcbkBpbXBvcnQgXCJ0aGVtZS5zY3NzXCI7XG5AaW1wb3J0IFwiYnV0dG9ucy5zY3NzXCI7XG5AaW1wb3J0IFwidGltZWxpbmUuc2Nzc1wiO1xuQGltcG9ydCBcImZvb3Rlci5zY3NzXCI7XG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2My4wLjIgfCBNSVQgTGljZW5zZSB8IGdpdC5pby9ub3JtYWxpemUgKi9cblxuLyoqXG4gKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuICogMi4gUHJldmVudCBpT1MgdGV4dCBzaXplIGFkanVzdCBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2UsIHdpdGhvdXQgZGlzYWJsaW5nXG4gKiAgICB1c2VyIHpvb20uXG4gKi9cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuICogYW5kIEZpcmVmb3guXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm1lbnUsXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4gKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICovXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4gKiBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4gKi9cblxuW2hpZGRlbl0sXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIExpbmtzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiBJbXByb3ZlIHJlYWRhYmlsaXR5IHdoZW4gZm9jdXNlZCBhbmQgYWxzbyBtb3VzZSBob3ZlcmVkIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICovXG5cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuICovXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgOC85LzEwLlxuICovXG5cbmltZyB7XG4gIGJvcmRlcjogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbiAqL1xuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4gKi9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXG4gKi9cblxuaHIge1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEtub3duIGxpbWl0YXRpb246IGJ5IGRlZmF1bHQsIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFggYWxsb3cgdmVyeSBsaW1pdGVkXG4gKiBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXG4gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbiAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBjb2xvcjogaW5oZXJpdDsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG4gIG1hcmdpbjogMDsgLyogMyAqL1xufVxuXG4vKipcbiAqIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuICovXG5cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbiAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxuICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4gKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbiAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4gKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4gKi9cblxuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbiAgY3Vyc29yOiBwb2ludGVyOyAvKiAzICovXG59XG5cbi8qKlxuICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbiAqL1xuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbiAqIHRoZSBVQSBzdHlsZXNoZWV0LlxuICovXG5cbmlucHV0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLyoqXG4gKiBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4gKiBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxuICpcbiAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4gKiAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuICovXG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXG4gKiBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxuICogZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxuICovXG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZVxuICogICAgKGluY2x1ZGUgYC1tb3pgIHRvIGZ1dHVyZS1wcm9vZikuXG4gKi9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDIgKi9cbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG4gKi9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICovXG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbiAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3JkZXI6IDA7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4gKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAqL1xuXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKiBUYWJsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuICovXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwO1xufVxuIixudWxsLCIvLyoqKioqKioqIEJhc2UgKioqKioqKiovL1xuXG5cbiosICo6YmVmb3JlLCAqOmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTAwJTsgLy8gMTZweCA9IDFyZW1cbn1cblxuYm9keSB7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogYXV0bztcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG4vLyBIYWNrIGZvciBjbGVhcmZpeGVzXG4ubHQtaWU5IHtcbiAgKiB7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuW2FyaWEtaGlkZGVuPXRydWVdIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5cbnVsLCBvbCwgZGwge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xufVxuXG51bCwgb2wge1xuICBtYXJnaW4tbGVmdDogMjBweDtcbiAgcGFkZGluZzogMDtcbn1cblxubGkge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4ubGlzdC1wbGFpbiB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICB9XG59XG4iLCIvLyoqKioqKioqIFZhcmlhYmxlcyAqKioqKioqKi8vXG5cbi8vIENvbG9yc1xuJGJyYW5kLWNvbG9yLXByaW1hcnk6ICAgIzAwMkI2MTtcbiRicmFuZC1jb2xvci1zZWNvbmRhcnk6ICNGOEIzMTY7XG4kY29sb3ItcHJpbWFyeS1saWdodDogICAjMWM4ZWJiO1xuJHNlY3Rpb24tYmctY29sb3I6ICAgICAgI2NhZTZmNjtcbiR0ZXh0LWNvbG9yOiAgICAgICAgICAgICMzZDNiM2I7XG4kdGV4dC1jb2xvci1saWdodDogICAgICBsaWdodGVuKCR0ZXh0LWNvbG9yLCA0MCUpO1xuJGZvb3Rlci1iZy1jb2xvcjogICAgICAgI2U2ZTZlNjtcbiRsaWdodC1iZy1jb2xvcjogICAgICAgICNlN2YwZjY7XG4kcGFwZXItYmctY29sb3I6ICAgICAgICAjZjJmMmU4O1xuJGNvbnRyYXN0LWNvbG9yOiAgICAgICAgI2ZmZjtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICMwOTRBN0I7XG5cbiRibHVlLWdyYWRpZW50OiAgICAgICBsaW5lYXItZ3JhZGllbnQoMTUwZGVnLCAjMTA3MmJiIDExJSwjMUY5NEJCIDQ1JSwkc2VjdGlvbi1iZy1jb2xvciA5NSUpO1xuLy8gJGdyYXktZ3JhZGllbnQ6ICAgICAgIGxpbmVhci1ncmFkaWVudCgxNTBkZWcsICRsaWdodC1iZy1jb2xvciAxNiUsICRzZWN0aW9uLWJnLWNvbG9yIDQ1JSwgJGxpZ2h0LWJnLWNvbG9yIDkxJSk7XG4kZ3JheS1ncmFkaWVudDogICAgICAgbGluZWFyLWdyYWRpZW50KDE1MGRlZywgJGxpZ2h0LWJnLWNvbG9yIDkxJSwgJHNlY3Rpb24tYmctY29sb3IgNDUlLCAkbGlnaHQtYmctY29sb3IgMTYlKTtcblxuLy8gQnJlYWtwb2ludHNcbiRzbWFsbC1zY3JlZW4tbWluOiAgICAgIDQ4MHB4O1xuJHNtYWxsLXNjcmVlbi1tYXg6ICAgICAgNzExcHg7XG4kbWVkaXVtLXNjcmVlbi1taW46ICAgICA3MTJweDtcbiRsYXJnZS1zY3JlZW4tbWluOiAgICAgIDEwMjRweDtcbiR4LWxhcmdlLXNjcmVlbi1taW46ICAgIDE4MDBweDtcblxuLy8gRm9udC1TaXplc1xuJHRwLWZvbnQtYmFzZTogICAgICAgICAgMXJlbTtcbiR0cC1mb250LXNtYWxsOiAgICAgICAgIC44cmVtO1xuXG4kZm9udC1mYW1pbHktZGVmYXVsdDogICBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuJGZvbnQtZmFtaWx5LXNhbnM6ICAgICAgXCJPc3dhbGRcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXG4vLyBOYXZpZ2F0aW9uXG4kY29sb3ItYmctbmF2aWdhdGlvbi1iYXI6ICAgICAgICAkYnJhbmQtY29sb3ItcHJpbWFyeTtcbiR0b3BiYXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgIDMuMTI1cmVtO1xuJHRvcGJhci1tZW51LWljb24tY29sb3ItdG9nZ2xlZDogJGNvbnRyYXN0LWNvbG9yO1xuJGNvbG9yLWJnLWRyb3Bkb3duLW1lbnU6ICAgICAgICAgJGNvbG9yLXByaW1hcnktbGlnaHQ7XG4iLCIvLyBVdGlsaXR5IGNsYXNzZXNcblxuLy8gTGlnaHRlciBmb250IGNvbG9yXG4udHAtbGlnaHQge1xuICBjb2xvcjogJHRleHQtY29sb3ItbGlnaHQ7XG59XG5cbi8vIGNlbnRlciBwb3NpdGlvbmluZ1xuLnRwLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLy8gR2VuZXJhbCBzdHlsaW5nIG9mIHNsb3BlIHNlY3Rpb25zXG4udGVzdGltb25pYWwge1xuICBiYWNrZ3JvdW5kOiAkZ3JheS1ncmFkaWVudDtcbiAgQGluY2x1ZGUgc2xvcGUtc2VjdGlvbigkbGlnaHQtYmctY29sb3IsIHVwKTtcbiAgei1pbmRleDogMDtcbn1cblxuI25ld3Mge1xuICB6LWluZGV4OiAxO1xuICBAaW5jbHVkZSBzbG9wZS1zZWN0aW9uKCRjb250cmFzdC1jb2xvciwgZG93bik7XG59XG5cbiNmZWF0dXJlcyB7XG4gIGJhY2tncm91bmQ6ICRncmF5LWdyYWRpZW50O1xuICBAaW5jbHVkZSBzbG9wZS1zZWN0aW9uKCRsaWdodC1iZy1jb2xvciwgdXApO1xuICB6LWluZGV4OiAwO1xufVxuXG4jZGVtbyB7XG4gIHotaW5kZXg6IDE7XG4gIEBpbmNsdWRlIHNsb3BlLXNlY3Rpb24oJGNvbnRyYXN0LWNvbG9yLCBkb3duKTtcbn1cblxuI3Zpc2lvbiB7XG4gIGJhY2tncm91bmQ6ICRncmF5LWdyYWRpZW50O1xuICB6LWluZGV4OiAxO1xuICBAaW5jbHVkZSBzbG9wZS1zZWN0aW9uKCRsaWdodC1iZy1jb2xvciwgdXApO1xufVxuXG4jc3VwcG9ydCB7XG4gIHotaW5kZXg6IDE7XG4gIEBpbmNsdWRlIHNsb3BlLXNlY3Rpb24oJGNvbnRyYXN0LWNvbG9yLCBkb3duKTtcbn1cblxuZm9vdGVyIHtcbiAgQGluY2x1ZGUgc2xvcGUtc2VjdGlvbigkZm9vdGVyLWJnLWNvbG9yLCB1cCk7XG59XG5cbi8vIFNlY3Rpb24gSGVhZGxpbmVzXG4udHAtaGVhZGxpbmUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNtYWxsLXNjcmVlbi1taW4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICB9XG59XG5cbi8vIEZpcnN0IFN1YmhlYWRsaW5lIGluIGRlbW8gc2VjdGlvblxuLmRlbW8taW5mbyBoMzpmaXJzdC1vZi10eXBlIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLy8gQmFubmVyXG5cbmhlYWRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvZ3JhcGhpY3MvaWNvbnMtYmctbGlnaHQtZ3JheS5wbmcpLCRibHVlLWdyYWRpZW50O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDM1JSwgY29udGFpbjtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRsYXJnZS1zY3JlZW4tbWluKSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyNyUsIGNvdmVyO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkeC1sYXJnZS1zY3JlZW4tbWluKSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMiUsIGNvdmVyO1xuICB9XG59XG5cbi50cC1iYW5uZXIge1xuICBwYWRkaW5nLXRvcDogNTBweDtcbiAgaGVpZ2h0OiBhdXRvO1xuXG4gID5kaXYge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW46IDQwcHggMCA2MHB4IDA7XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4tbWluKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI3RwLWxvZ28ge1xuICAgIGhlaWdodDogMTQwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc21hbGwtc2NyZWVuLW1pbikge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWF4LWhlaWdodDogMjAwcHg7XG4gICAgICBwYWRkaW5nOiAzMnB4IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICBoMSB7XG4gICAgY29sb3I6ICRicmFuZC1jb2xvci1wcmltYXJ5O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIH1cbn1cblxuXG4vLyBLZXkgZmVhdHVyZXNcblxuLmZpZ3VyZS13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogODBweDtcbiAgQGV4dGVuZCAubGVmdDtcbn1cblxuLmZlYXR1cmUtaGVhZGxpbmUge1xuICBtYXJnaW46IDAgMCAuNXJlbSAwO1xufVxuXG4uZmVhdHVyZS1kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5maWd1cmUge1xuICAmLndvcmtmbG93IHtcbiAgICBtYXJnaW46IDA7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc21hbGwtc2NyZWVuLW1pbikge1xuICAgICAgbWFyZ2luOiA0MHB4IDA7XG4gICAgfVxuXG4gICAgc3ZnIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLWhlaWdodDogMzUwcHg7XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4tbWluKSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDUwMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZmVhdHVyZS1pY29uIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA3cHg7XG4gICAgbGVmdDogLTgwcHg7XG4gIH1cbn1cblxuLmZlYXR1cmUtaXRlbSB7XG4gIEBleHRlbmQgLnRwLWNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5cbi5mZWF0dXJlLXRpbGUge1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBAZXh0ZW5kIC5mZWF0dXJlLWl0ZW07XG59XG5cbi8vIE5ld3Mgc2VjdGlvbnNcbi5uZXdzLWdyYXBoaWMtd3JhcHBlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAzMyU7XG4gIH1cbn1cblxuLm5ld3MtaW5mbyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIHdpZHRoOiA2NiU7XG4gIH1cblxuICBoMiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4vLyBEZW1vIHNlY3Rpb24gd2l0aCBzY3JlZW5jYXN0IGdpZnNcblxuLmRlbW8tZ3JhcGhpYy13cmFwcGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDY3JTtcbiAgfVxufVxuXG4udHAtY29sdW1ucy50cC1zZWNvbmQge1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmRlbW8taXRlbTpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4tbWluKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgfVxufVxuXG4uZGVtby1pbmZvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgd2lkdGg6IDMzJTtcbiAgfVxuXG4gIGgyIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5kZW1vLWltYWdlIHtcbiAgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLy8gU2hvd2Nhc2VzXG5cbi50ZXN0aW1vbmlhbCB7XG4gIC8vIG1ha2Ugc3BhY2UgZm9yIHN1YmhlYWRsaW5lXG4gIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC8vIHNoaWZ0IG1hcmdpbi1ib3R0b20gdG8gc3ViaGVhZGxpbmVcbiAgaDMge1xuICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gIH1cbn1cblxuLnRlc3RpbW9uaWFsLWNvbnRlbnQge1xuICBAZXh0ZW5kIC50cC1jb2x1bW4tMztcbiAgbWFyZ2luLWJvdHRvbTogNGVtO1xuXG4gICY6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc21hbGwtc2NyZWVuLW1pbikge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICBoMiwgaDMge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgcCB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgfVxuXG4gIGgzID4gYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLnVwLXRvLXRvcCB7XG4gID4gZGl2IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLy8gbW9kYWwgaW1hZ2VcblxuLnRwLWltYWdlIHtcbiAgb3BhY2l0eTogMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHRyYW5zaXRpb246IC41cyBlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi50cC10ZXh0bGluay1taWRkbGUge1xuICBAZXh0ZW5kIC50cC1jZW50ZXI7XG4gIHRyYW5zaXRpb246IC41cyBlYXNlO1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi5jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6aG92ZXIge1xuICAgIC50cC1pbWFnZSB7XG4gICAgICBvcGFjaXR5OiAwLjM7XG4gICAgfVxuXG4gICAgLnRwLXRleHRsaW5rLW1pZGRsZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuXG4ucm91bmQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHdpZHRoOiAxNjBweDtcbiAgaGVpZ2h0OiAxNjBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJveC1zaGFkb3c6IDAgOHB4IDEwcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDAgM3B4IDE0cHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xMiksIDAgNXB4IDVweCAtM3B4IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cbiIsIi8vICoqKioqKioqKioqIE5hdmlnYXRpb24gKioqKioqKioqLy9cblxuLnRvcC1iYXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICBsaW5lLWhlaWdodDogJHRvcGJhci1oZWlnaHQ7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICRicmFuZC1jb2xvci1wcmltYXJ5O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB6LWluZGV4OiAxMDtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2Utc2NyZWVuLW1pbikge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1iZy1uYXZpZ2F0aW9uLWJhcjtcbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuICB9XG4gIGEge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJGNvbnRyYXN0LWNvbG9yO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgPiBsaSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgc3ZnIHtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLnRvcC1iYXItc2VjdGlvbiB7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIHRyYW5zaXRpb246IGxlZnQgMzAwbXMgZWFzZS1vdXQ7XG5cbiAgdWwge1xuICAgIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRlbSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgbGkge1xuICAgIGxpbmUtaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcbiAgfVxuICBhIHtcbiAgICBmb250LXNpemU6IC44ZW07XG4gICAgcGFkZGluZzogMCAuOXJlbTtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4tbWluKSB7XG4gICAgICBwYWRkaW5nOiAwIDEuMDQxNjdyZW07XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICB9XG4gIH1cbn1cblxuLnRlaS1wdWJsaXNoZXItaWNvbiB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDhweCAuOXJlbSAwIDEuMDQxNjdyZW0gIWltcG9ydGFudDtcbiAgaGVpZ2h0OiA1MHB4O1xufVxuXG4vLyBUaXRsZSBBcmVhXG4udGl0bGUtYXJlYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2Utc2NyZWVuLW1pbil7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuLm5hbWUge1xuICBoZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICBtYXJnaW46IDA7XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2Utc2NyZWVuLW1pbikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBoMSwgaDIsIGgzLCBoNCwgcCwgc3BhbiB7XG4gICAgbGluZS1oZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgIG1hcmdpbjogMDtcbiAgICBhIHtcbiAgICAgIHdpZHRoOiA3NSU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVudSB0b2dnbGUgYnV0dG9uIG9uIHNtYWxsIGRldmljZXNcbi50b2dnbGUtdG9wYmFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRsYXJnZS1zY3JlZW4tbWluKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcbiAgfVxuXG4gICYubWVudS1pY29uIHtcbiAgICBhIHtcbiAgICAgIGhlaWdodDogJHRvcGJhci1oZWlnaHQ7XG4gICAgICBsaW5lLWhlaWdodDogJHRvcGJhci1oZWlnaHQ7XG4gICAgICBwYWRkaW5nOiAwIDIuNjA0MTdyZW0gMCAxLjA0MTY3cmVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgfVxufVxuXG4ubWVudS1pY29uIGEgc3BhbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC02cHg7XG4gIHJpZ2h0OiAxLjA0MTY3cmVtO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggJHRvcGJhci1tZW51LWljb24tY29sb3ItdG9nZ2xlZCxcbiAgMCA3cHggMCAxcHggJHRvcGJhci1tZW51LWljb24tY29sb3ItdG9nZ2xlZCxcbiAgMCAxNHB4IDAgMXB4ICR0b3BiYXItbWVudS1pY29uLWNvbG9yLXRvZ2dsZWQ7XG4gIHdpZHRoOiAxOHB4O1xufVxuXG4udG9wLWJhci1zZWN0aW9uIC5kaXZpZGVyLFxuLnRvcC1iYXItc2VjdGlvbiBbcm9sZT1cInNlcGFyYXRvclwiXSB7XG4gIGJvcmRlci10b3A6IHNvbGlkIDBweCBncmF5O1xuICBjbGVhcjogYm90aDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRsYXJnZS1zY3JlZW4tbWluKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIGJvcmRlci1yaWdodDogc29saWQgMHB4ICRjb250cmFzdC1jb2xvcjtcbiAgICBjbGVhcjogbm9uZTtcbiAgICBoZWlnaHQ6IDMuMTI1cmVtO1xuICAgIHdpZHRoOiAwO1xuICB9XG59XG5cbi50b3AtYmFyLXNlY3Rpb24ge1xuICB1bCB7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIEBleHRlbmQgLmxpc3QtcGxhaW47XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRsYXJnZS1zY3JlZW4tbWluKSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb250cmFzdC1jb2xvcjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGxhcmdlLXNjcmVlbi1taW4pIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB9XG5cbiAgICAgICY+YSB7XG4gICAgICAgIGNvbG9yOiAkY29udHJhc3QtY29sb3I7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmctZHJvcGRvd24tbWVudTtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2Utc2NyZWVuLW1pbikge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvci1wcmltYXJ5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50b3AtYmFyLmV4cGFuZGVkIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgLnRpdGxlLWFyZWEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1iZy1uYXZpZ2F0aW9uLWJhcjtcbiAgfVxufVxuIiwiZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvb3Rlci1iZy1jb2xvcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNtYWxsLXNjcmVlbi1taW4pIHtcbiAgICBwYWRkaW5nOiA0ZW0gMCA0ZW07XG4gIH1cblxuICAuZm9vdGVyLWhlYWRsaW5lIHtcbiAgICBAZXh0ZW5kIC50cC1jb2x1bW4tZnVsbHdpZHRoO1xuICAgIG1hcmdpbjogMCAwIDFlbTtcbiAgfVxuXG4gIC5mb290ZXItY29sdW1uIHtcbiAgICBAZXh0ZW5kIC50cC1jb2x1bW4tNDtcblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMjAwcHg7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgQGV4dGVuZCAubGlzdC1wbGFpbjtcbiAgICB9XG5cbiAgICBsaTpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLjc1ZW07XG4gICAgfVxuXG4gICAgJjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgbWFyZ2luOiAwIDAgMS43NWVtIDA7XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tc2NyZWVuLW1pbikge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICY6YWN0aXZlLFxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG4gIC50cC1saWdodDp2aXNpdGVkLFxuICAudHAtbGlnaHQ6YWN0aXZlIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3ItbGlnaHQ7XG4gIH1cbn1cblxuIiwiLy8qKioqKioqKiBHcmlkICoqKioqKioqLy9cblxuXG4vLyBDb2x1bW5zXG5cbi50cC1jb2x1bW4sIC50cC1jb2x1bW5zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1zY3JlZW4tbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICB9XG59XG5cbi5sYXJnZS0zIHtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2Utc2NyZWVuLW1pbikge1xuICAgIHdpZHRoOiAzMy4zJTtcbiAgfVxufVxuXG4ubGFyZ2UtNCB7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGxhcmdlLXNjcmVlbi1taW4pIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG59XG5cbi5sYXJnZS02IHtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2Utc2NyZWVuLW1pbikge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLm1lZGl1bS0zIHtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbi1taW4pIHtcbiAgICB3aWR0aDogMzMuMyU7XG4gIH1cbn1cblxuLm1lZGl1bS02IHtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbi1taW4pIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5cbi5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi54LXNtYWxsLTEyIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNtYWxsLXNjcmVlbi1taW4gLTFweCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi50cC1jb2x1bW4tMyB7XG4gIEBleHRlbmQgLngtc21hbGwtMTI7XG4gIEBleHRlbmQgLm1lZGl1bS0zO1xuICBAZXh0ZW5kIC5sYXJnZS0zO1xuICBAZXh0ZW5kIC50cC1jb2x1bW47XG59XG5cbi50cC1jb2x1bW4tNCB7XG4gIEBleHRlbmQgLmxhcmdlLTQ7XG4gIEBleHRlbmQgLm1lZGl1bS02O1xuICBAZXh0ZW5kIC50cC1jb2x1bW47XG59XG5cbi50cC1jb2x1bW4tNiB7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1zY3JlZW4tbWluKSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLnRwLWNvbHVtbi1mdWxsd2lkdGgge1xuICBAZXh0ZW5kIC5zbWFsbC0xMjtcbiAgQGV4dGVuZCAudHAtY29sdW1ucztcbiAgQGV4dGVuZCAudHAtY29sdW1uO1xufVxuXG4vLyBSb3dzXG5cbi50cC1yb3cge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWF4LXdpZHRoOiA2Mi41cmVtO1xufVxuXG4udHAtcm93OmJlZm9yZSwgLnRwLXJvdzphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLnRwLXJvdzphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuIiwiLy8gKioqKioqKioqKiogVHlwb2dyYXBoeSAqKioqKioqKiovL1xuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1kZWZhdWx0O1xuICBmb250LXNpemU6IDFyZW07ICAvLyAxNnB4ID0gMXJlbVxuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjYyNTsgLy8gMjZweFxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnM7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgbGluZS1oZWlnaHQ6IDIuNXJlbTtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjdweCkge1xuICAgICAgd29yZC13cmFwOiBub3JtYWw7XG4gIH1cbn1cblxuaDEsIC5oMSB7XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4tbWluKSB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbi1taW4pIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbn1cblxuaDIsIC5oMiB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4tbWluKSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1zY3JlZW4tbWluKSB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cbn1cblxuaDMsIC5oMyB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4tbWluKSB7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gIH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbi1taW4pIHtcbiAgICBmb250LXNpemU6IDEuNjI1cmVtO1xuICB9XG59XG5cbnAsIGxpIHtcbiAgZm9udC1zaXplOiAkdHAtZm9udC1zbWFsbDtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4tbWluKSB7XG4gICAgZm9udC1zaXplOiAkdHAtZm9udC1iYXNlO1xuICB9XG59XG5cbnVsLCBvbCwgZGwge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbn1cblxudWwsIG9sIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuIiwiLy8qKioqKioqKiBUaW1lbGluZSAqKioqKioqKi8vXG5cbiRidWxsZXRTaXplU21hbGwgOiAgICAgIDhweDtcbiRidWxsZXRTaXplQmlnIDogICAgICAgMjRweDtcbiRidWxsZXRPZmZzZXRNb2JpbGU6ICAtNTBweDtcbiR0cmFuc2xhdGVWYWx1ZTogICAgICAgLTUwJTtcblxuLy8gUG9zaXRpb24gd3JhcHBlclxuLnRpbWVsaW5lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC8vIFRpbWVsaW5lIGFydGljbGVzIHdyYXBwZXJcbiAgLmVudHJpZXMge1xuICAgIHdpZHRoOmNhbGMoMTAwJSAtIDgwcHgpO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTVweDtcblxuICAgIC8vIFZlcnRpY2FsIGxpbmVcbiAgICAmOmJlZm9yZSB7XG4gICAgICB3aWR0aDogNHB4O1xuICAgICAgYmFja2dyb3VuZDogJGJyYW5kLWNvbG9yLXNlY29uZGFyeTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHRvcDogMjZweDtcbiAgICAgIGhlaWdodDogODUlO1xuXG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tc2NyZWVuLW1pbikge1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHRvcDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA4MyU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQXJ0aWNsZXMgaW4gdGltZWxpbmVcbiAgLy8gbGVmdCBhbGlnbmVkIG9uIHNtYWxsIHNjcmVlbnNcbiAgLy8gYWx0ZXJuYXRlIGxlZnQgKyByaWdodCBhbGlnbm1lbnQgb24gbGFyZ2Ugc2NyZWVuc1xuICAuZW50cnkge1xuICAgIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDMycHg7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAmOm50aC1jaGlsZCgybikge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbi1taW4pIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgd2lkdGg6Y2FsYyg1MCUgLSA1MHB4KTtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTYwcHg7XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgLy8gYnVsbGV0c1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IC04NnB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLmJpZzpiZWZvcmUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOnRyYW5zbGF0ZSgtOHB4LCAkdHJhbnNsYXRlVmFsdWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEVudHJ5IGhlYWRsaW5lc1xuICAudGl0bGUge1xuICAgIEBleHRlbmQgLmgzO1xuICAgIG1hcmdpbjogMCAwIDEycHggMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICRicmFuZC1jb2xvci1wcmltYXJ5O1xuICAgIGxpbmUtaGVpZ2h0OiAuOWVtO1xuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbi1taW4pIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjhlbTtcbiAgICB9XG5cbiAgICAvLyBCdWxsZXRzICh0aWVkIHRvIGhlYWRsaW5lcylcbiAgICAvLyBsZWZ0LWFsaWduZWQgcGVyIGRlZmF1bHRcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAkYnVsbGV0U2l6ZVNtYWxsO1xuICAgICAgaGVpZ2h0OiAkYnVsbGV0U2l6ZVNtYWxsO1xuICAgICAgYm9yZGVyOjRweCBzb2xpZCAkYnJhbmQtY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWNvbG9yLXByaW1hcnk7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAkYnVsbGV0T2Zmc2V0TW9iaWxlO1xuICAgICAgei1pbmRleDogMTAwMDtcblxuICAgICAgLy8gb3ZlcnJpZGUgbGVmdCBhbGlnbm1lbnQgZm9yIGFsdGVybmF0ZSBwb3NpdGlvblxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbi1taW4pIHtcbiAgICAgICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoJHRyYW5zbGF0ZVZhbHVlKTtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IC03NHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYmlnOmJlZm9yZSB7XG4gICAgICB3aWR0aDogJGJ1bGxldFNpemVCaWc7XG4gICAgICBoZWlnaHQ6ICRidWxsZXRTaXplQmlnO1xuICAgICAgdHJhbnNmb3JtOnRyYW5zbGF0ZSg4cHgsICR0cmFuc2xhdGVWYWx1ZSk7XG4gICAgfVxuICB9XG4gIC8vIEVudHJ5IHRleHRzXG4gIHAge1xuICAgIG1hcmdpbjogMDtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbWFsbC1zY3JlZW4tbWF4KSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG59XG4iLCIvKiBCdXR0b25zICovXG5cbi50cC1idG4ge1xuICBkaXNwbGF5OiAgICAgICAgICAgICAgIGlubGluZS1ibG9jaztcbiAgY29sb3I6ICAgICAgICAgICAgICAgICAkYnJhbmQtY29sb3ItcHJpbWFyeSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAgICAgICAgICAgICAgIDhweCAxNnB4IDhweCA1MnB4O1xuICBtYXJnaW4tYm90dG9tOiAgICAgICAgIDdweDtcbiAgbWFyZ2luLXJpZ2h0OiAgICAgICAgICA1cHg7XG4gIGZvbnQtc2l6ZTogICAgICAgICAgICAgMS4wcmVtO1xuICBmb250LXdlaWdodDogICAgICAgICAgIDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6ICAgICAgICAycHg7XG4gIHZlcnRpY2FsLWFsaWduOiAgICAgICAgbWlkZGxlO1xuICB0ZXh0LWFsaWduOiAgICAgICAgICAgIGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiAgICAgICBub25lO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAgICA0cHg7XG4gIGJvcmRlci1yYWRpdXM6ICAgICAgICAgNHB4O1xuICBjdXJzb3I6ICAgICAgICAgICAgICAgIHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICAgICAgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogICAgICAgICAgICAgICAgM3B4IHNvbGlkICRicmFuZC1jb2xvci1zZWNvbmRhcnk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogICAgYWxsIDAuM3MgZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogICAgICAgYWxsIDAuM3MgZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiAgICAgICAgYWxsIDAuM3MgZWFzZS1vdXQ7XG4gIC1vLXRyYW5zaXRpb246ICAgICAgICAgYWxsIDAuM3MgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246ICAgICAgICAgICAgYWxsIDAuM3MgZWFzZS1vdXQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zO1xuXG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc21hbGwtc2NyZWVuLW1pbikge1xuICAgIHBhZGRpbmc6ICAgICAgICAgICAgICAgMTBweCAxOHB4IDEwcHggNTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAgICAgICAgIDdweDtcbiAgICBtYXJnaW4tcmlnaHQ6ICAgICAgICAgIDVweDtcbiAgICBmb250LXNpemU6ICAgICAgICAgICAgIDEuM3JlbTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvci1zZWNvbmRhcnk7XG4gICAgY29sb3I6ICRicmFuZC1jb2xvci1wcmltYXJ5ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbnRyYXN0LWNvbG9yO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuLnRwLWRlbW8tYnV0dG9uLWNvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgI2ljb24tZXllIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMXB4O1xuICAgIGxlZnQ6IDExcHg7XG4gICAgaGVpZ2h0OiAyM3B4O1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNtYWxsLXNjcmVlbi1taW4pIHtcbiAgICAgIHRvcDogMTZweDtcbiAgICAgIGxlZnQ6IDhweDtcbiAgICAgIGhlaWdodDogMjZweDtcbiAgICB9XG4gIH1cbn1cblxuLnRwLWJ0bi1saW5rLXdyYXBwZXIge1xuICBAZXh0ZW5kIC50cC1jZW50ZXI7XG4gIG1hcmdpbi10b3A6IDJyZW07XG59XG5cbi50cC1idG4tbGluayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvci1zZWNvbmRhcnk7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBhZGRpbmc6IC44ZW0gMS4yZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGJyYW5kLWNvbG9yLXNlY29uZGFyeSwgMTUlKTtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc21hbGwtc2NyZWVuLW1pbikge1xuICAgIGZvbnQtc2l6ZTogJHRwLWZvbnQtYmFzZTtcbiAgICBwYWRkaW5nOiAxZW0gMmVtO1xuICB9XG5cbiAgJi5pY29uIHtcbiAgICBwYWRkaW5nOiAuNWVtIC44ZW0gLjVlbSAzZW07XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNtYWxsLXNjcmVlbi1taW4pIHtcbiAgICAgIGZvbnQtc2l6ZTogJHRwLWZvbnQtYmFzZTtcbiAgICAgIHBhZGRpbmc6IC43ZW0gMWVtIC43ZW0gMy4yZW07XG4gICAgfVxuXG4gICAgI2ljb24tZXllIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA3cHg7XG4gICAgICBsZWZ0OiA1cHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG5cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNtYWxsLXNjcmVlbi1taW4pIHtcbiAgICAgICAgdG9wOiAxMnB4O1xuICAgICAgICBsZWZ0OiA3cHg7XG4gICAgICAgIGhlaWdodDogMjZweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFNsb3BlIFNlY3Rpb24gbWl4aW5cblxuLy8gU2xvcGUgc2VjdGlvbiBhbmdsZXNcbiRzbG9wZS11cDogICAgMzBweCAxMDB2dyAwIDA7XG4kc2xvcGUtZG93bjogIDAgMTAwdncgMzBweCAwO1xuXG5AbWl4aW4gc2xvcGUtc2VjdGlvbiAoJGJnLCAkZGlyZWN0aW9uOnVwKSB7XG4gIHBhZGRpbmc6IDEuM2VtIDAgMy41ZW0gMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAwO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4tbWluKSB7XG4gICAgcGFkZGluZzogMmVtIDAgMy41ZW0gMDtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgY29udGVudDogXCJcIjtcblxuICAgIEBpZiAkZGlyZWN0aW9uID09IFwidXBcIiB7XG4gICAgICBib3JkZXItd2lkdGg6ICRzbG9wZS11cDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJGJnIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwiZG93blwiIHtcbiAgICAgIGJvcmRlci13aWR0aDogJHNsb3BlLWRvd247XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRiZyB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cbiJdfQ== */
