File: D:/HostingSpaces/SBogers10/momsecurity.komma.nl/wwwroot/css/style.css
@charset "UTF-8";
/* 1 - SETTINGS
* Global variables, site-wide settings,
* config switches etc.
*
* The order in which these Sass files
* are loaded is critical!
* So please be careful when editing
=========================================================== */
/* =========================================================
Organize color variables in a Sass Map.
This way, the colors can be iterated, are more organized,
and are more intuitive to reference.
========================================================= */
/**
* A simple function for accessing the colors from our mapping
* To access colors in our palette, we use a very simple custom Sass function
* This function is placed here, (and not in the toolbox)
* so we can use it in our other setting files if we need
USAGE:
.demo {
color: palette(neutral, 900);
}
*/
/* ========================================
Config settings
======================================== */
/* ==========================================================
Defines the typographic baseline.
We define every size in pixels, the underlying system
converts the respective units to the responsive REM value.
========================================================== */
/**
* Our base font-size and line-height
*/
/**
* Here we assign short names for the font families
*/
/* ============================================
Define breakpoints for given formats
============================================ */
/* 2 - TOOLS
* Site wide mixins and functions
=========================================================== */
/* ==========================================================================
Functions used in grid calculation
========================================================================== */
/**
* Return percentage based on amount of columns
* Use parent column size to adjust the origin
*/
/**
* Default function for columns
* Return as percentage
*/
/**
* Return as viewport width
*/
/* ==========================================================================
* Font related functions
* ========================================================================== */
/**
* Mixin for setting font-size in REM through a Sass Map with all available sizes
USAGE:
.myClass {
@include font-size(xl);
}
*/
/* Media query mixin for writing Mobile First
* ========================================== */
/* =============================================
Toolbox functions
================================================ */
/**
* Maths helpers.
* Halve and double numbers, returning rounded integers.
USAGE:
.foo {
padding: halve(30px);
}
*/
/**
* Remove the unit of a length
* @param {Number} $number - Number to remove unit from
* @return {Number} - Unitless number
*/
/* Check if value is number */
/* Value to Em */
/* Value to Rem */
/*
* Set vertical spacing for viewport larger than mobile
* In flexible units (vw) and on max viewport in a fixed amount (px)
USAGE:
.example {
@include vspacing(
'padding-top' 0.33,
'margin-bottom' 0.5
);
}
*/
/**
* A simple function for setting a consistent border-radius
USAGE:
.card {
@include border-radius;
}
.card--alt {
@include border-radius(l);
}
*/
/**
* Lobotomized Owl Selector mixin:
* - Set spacing for consecutive items with margin-top on all but the first item
USAGE:
.box {
@include owl-children;
}
.card__item {
@include owl;
}
*/
/*
* Lobotomized owl selector.
* - Gives the children of the element spacing
* - https://alistapart.com/article/axiomatic-css-and-lobotomized-owls
*/
/**
* Show hyphens for every browser supporting it
* and will break lines in every other browser
*/
/*
* Restrict an element to a max-width for creating gutters on the side
*/
/*
* Restrict an element to a max-width for creating gutters on the side
*/
/*
* A mixin to set elements to its own named grid-area
*/
/** =================================================================================================
* The 'z-index-map' is used for managing the elements stacking order in the 'root' stacking context
* This way we have a overview of all the z-index values that are used across the project.
==================================================================================================== */
/**
USAGE:
@include z(z-modal);
*/
/* 3 - ELEMENTS
* Plain old simple HTML elements without a class (type selectors)
=========================================================== */
/* ==========================================================================
* Basic elements (no class selectors allowed)
* ========================================================================== */
/**
* Set up the html
*
* 1. Makes sure that some fonts are better rendered
* 2. Set font to lining figures
*
*/
html {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-rendering: optimizeLegibility;
font-feature-settings: "lnum";
box-sizing: border-box;
height: 100%;
}
body {
font-size: 1.125rem;
line-height: 1.6666666667;
position: relative;
font-family: "Rubik", sans-serif;
line-height: 1.6666666667;
margin: 0;
color: #8F9BB3;
background-color: #fafcff;
}
/**
* [1] Make sure elements like input and textarea inherit some base properties
* https://www.smashingmagazine.com/2016/11/css-inheritance-cascade-global-scope-new-old-worst-best-friends/
*
* [2] Setting box-sizing the best way per:
* https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/
*/
* {
font-family: inherit;
line-height: inherit;
color: inherit;
}
*, *:before, *:after {
box-sizing: inherit;
}
/**
* [1] Turn off text-shadow when selecting text for better readability
*/
::selection {
background: #0076FF;
color: #F0F2F5;
text-shadow: none;
/* [1] */
}
/* Remove default margin around figure
*/
figure {
margin: 0;
}
/**
* [1] Setting 'vertical-align' removes the whitespace that appears under 'img'
* elements when they are dropped into a page as-is. Safer alternative to
* using 'display: block;'.
* [2] Remove border / especially on older browsers
*/
img, svg {
vertical-align: middle;
/*[1]*/
border: none;
/*[2]*/
max-width: 100%;
}
/**
* Needed for iOS to prevent input zooming
* https://uxcellence.com/2014/01/15/quick-fix-increase-font-size-to-16px-to-fix-input-zoom
*/
input,
select,
textarea {
font-size: 16px;
}
a:not([class]) {
position: relative;
color: #699BFF;
-webkit-text-decoration-skip: ink;
text-decoration-skip-ink: auto;
transition: color 0.2s;
}
a:not([class]):hover {
color: #1a2233;
}
a:not([class]):hover::after {
height: 2px;
opacity: 1;
transform: translateY(0px);
}
a:not([class]):focus {
outline-color: #0076FF;
}
h1, h2, h3, h4, h5, h6, hgroup,
ul, ol, dd,
p, figure,
pre, table, fieldset, hr {
margin-top: 0;
margin-bottom: 0;
}
h1, h2, h3, h4, h5, h6 {
color: #475266;
}
h1 {
font-size: 2.5rem;
line-height: 1;
}
h2 {
font-size: 2rem;
line-height: 1.25;
font-weight: normal;
}
h3 {
font-size: 1.5rem;
line-height: 1.3333333333;
font-weight: 500;
}
h4 {
font-size: 1.25rem;
line-height: 1.6;
font-weight: 500;
}
h5, h6 {
font-size: 1.125rem;
line-height: 1.6666666667;
font-weight: bold;
}
/** =====================================================================================
* Lists
===================================================================================== */
/**
* Default indentation value for lists
*/
ul,
ol {
padding: 0;
margin: 0;
margin-left: 1.125em;
}
dd {
margin-left: 0;
}
/**
* Remove extra vertical spacing when nesting lists.
*/
li > ul,
li > ol {
margin-bottom: 0;
}
/* 4 - Layout elements
* Design patterns (e.g. grids or media object)
=========================================================== */
@media screen and (max-width: 1679px) {
.l-block + .l-block {
margin-top: 6.25vw;
}
}
@media screen and (min-width: 1680px) {
.l-block + .l-block {
margin-top: 120px;
}
}
/*==========================================================================
* Contain
* ========================================================================== */
.l-contain {
margin-left: auto;
margin-right: auto;
max-width: 1440px;
width: calc((100% / 14) * 12);
}
@media screen and (min-width: 840px) {
.l-divide {
display: flex;
align-items: center;
}
}
@media screen and (max-width: 839px) {
.l-divide__item + .l-divide__item {
margin-top: 24px;
}
}
@media screen and (min-width: 840px) {
.l-divide__item:nth-child(2) {
margin-left: auto;
}
}
.l-form__body {
margin-top: 40px;
}
.l-form__row + .l-form__row {
margin-top: 24px;
}
.l-form__footer {
margin-top: 40px;
}
.l-form__pot {
opacity: 0;
position: absolute;
top: 0;
left: 0;
height: 0;
width: 0;
z-index: -1;
}
/*
* Wrapper of the main body
* (between the header and the footer)
* [1] Avoid the IE 10-11 `min-height` bug.
*/
.l-page {
display: flex;
flex-direction: column;
height: 100%;
/* [1] */
}
.l-page__body {
z-index: 40;
position: relative;
flex: 1 0 auto;
}
.l-page__footer {
position: relative;
flex-shrink: 0;
background-color: white;
padding-bottom: 64px;
transition: padding 600ms ease-in-out;
}
body.is-cookies-accepted .l-page__footer {
padding-bottom: 0;
}
.l-page__footer .svg-wrapper {
pointer-events: none;
height: 100%;
width: 100%;
position: relative;
top: 1px;
background-color: transparent;
transform: scale(-1, -1);
}
.l-page__footer .svg-wrapper defs {
display: none;
}
/* 5 - COMPONENTS
* Discrete complete chunks of UI.
* Designed components
=========================================================== */
/** ==========================================================================
* Components
* =========================================================================*/
.c-breadcrumb {
padding-bottom: 4px;
}
.c-breadcrumb__list {
margin: 0;
list-style: none;
display: flex;
flex-wrap: wrap;
}
.c-breadcrumb__item {
display: flex;
align-items: center;
}
.c-breadcrumb__item:nth-child(n+2) .c-breadcrumb__icon {
display: flex;
align-items: center;
justify-content: center;
width: 24px;
height: 24px;
margin-left: 8px;
margin-right: 8px;
transform: rotate(0.75turn);
color: #699BFF;
}
.c-breadcrumb__link {
color: rgba(255, 255, 255, 0.4);
text-decoration: none;
font-size: 0.9375rem;
transition: color 0.2s;
}
.c-breadcrumb__link:hover {
color: rgba(255, 255, 255, 0.75);
}
.c-breadcrumb__item--last .c-breadcrumb__link {
color: white !important;
font-weight: bold;
}
/* ==========================================================================
* Default button
* ========================================================================== */
.c-button {
display: inline-flex;
align-items: center;
border-radius: 4px;
font-size: 0.875rem;
line-height: 1.4285714286;
padding: 11px 0 10px;
background: linear-gradient(90deg, #2F6CE6 0%, #699BFF 50%, #2F6CE6 100%);
background-size: 200%;
color: white;
border: none;
border-radius: 400px;
cursor: pointer;
text-decoration: none;
transition: background 0.3s;
}
.c-button:hover:not(:disabled) {
background-position: -100%;
}
.c-button:active:not(:disabled) {
transform: translateY(1px);
}
.c-button:disabled {
opacity: 0.5;
cursor: not-allowed;
}
.c-button:focus {
outline: none;
}
.c-button__text {
font-size: 1.125rem;
line-height: 1.2222222222;
padding: 0 25px;
text-align: center;
letter-spacing: 1.5px;
}
.c-button__icon {
display: none;
position: relative;
top: -1px;
left: -4px;
height: 12px;
width: 16px;
margin-right: 15px;
transition: transform 0.3s;
}
.c-button:hover:not(:disabled) .c-button__icon {
transform: translateX(4px);
}
.c-button__icon:first-child {
margin-right: 0;
margin-left: 15px;
}
.c-button--icon .c-button__icon {
display: flex;
align-items: center;
}
.c-button--text {
border: none;
background: none;
color: #7AD3FF;
}
.c-button--text:hover:not(:disabled) {
background: none;
color: #475266;
}
.c-button--text .c-button__text {
padding-left: 0;
}
.c-button--ghost {
padding: 10px 0 9px;
color: #8F9BB3;
background: transparent;
border: 1px solid currentColor;
transition: color 0.3s, border 0.3s;
}
.c-button--ghost:hover:not(:disabled) {
color: #697999;
}
.c-button--on-dark {
color: white;
}
.c-button--on-dark:hover:not(:disabled) {
color: rgba(255, 255, 255, 0.75);
}
.c-card {
display: flex;
flex-direction: column;
height: 100%;
text-decoration: none;
cursor: pointer;
}
.c-card__picture {
width: 100%;
flex: auto;
display: block;
}
.c-card__img {
object-fit: cover;
width: 100%;
height: 100%;
background-color: #D7DBE0;
}
.c-card__label {
position: relative;
overflow: hidden;
padding: 14px 10px 15px;
text-align: center;
font-weight: bold;
color: #F0F2F5;
background-color: #F0F2F5;
transition-property: background;
transition-duration: 250ms;
}
.c-card:hover .c-card__label {
background-color: #F0F2F5;
}
.c-checkbox {
display: flex;
align-items: center;
}
.c-checkbox__input {
position: absolute;
height: 1px;
width: 1px;
overflow: hidden;
clip: rect(1px, 1px, 1px, 1px);
}
.c-checkbox__text {
font-size: 0.875rem;
line-height: 1.4285714286;
position: relative;
display: inline-block;
padding-left: 24px;
/* 16px width of fake checkbox + gap */
/*Outer box of the fake checkbox*/
/*Checkmark of the fake checkbox*/
/*Hide the checkmark by default*/
/*Unhide on the checked state*/
/*Adding focus styles on the outer-box of the fake checkbox*/
/* Links inside the text */
}
.c-checkbox__text::before, .c-checkbox__text::after {
position: absolute;
content: "";
/*Needed for the line-height to take effect*/
display: inline-block;
}
.c-checkbox__text::before {
height: 16px;
width: 16px;
background-color: #F0F2F5;
border: 2px solid #F0F2F5;
top: 2px;
left: 0;
border-radius: 2px;
transition: all 150ms linear;
}
.c-checkbox__text::after {
height: 5px;
width: 10px;
top: 7px;
left: 3px;
color: #F0F2F5;
border-left: 2px solid;
border-bottom: 2px solid;
transform: rotate(-53deg);
}
.c-checkbox__input + .c-checkbox__text::after {
content: none;
}
.c-checkbox__input:checked + .c-checkbox__text::before {
background-color: #0076FF;
border-color: #0076FF;
}
.c-checkbox__input:checked + .c-checkbox__text::after {
content: "";
}
.c-checkbox__input:focus + .c-checkbox__text::before {
outline: #3b99fc auto 5px;
outline: none;
box-shadow: 0 0 7px -1px rgba(31, 32, 36, 0.8);
border-color: #0076FF;
}
.c-checkbox__text > a {
color: #0076FF;
}
.c-checkbox__text > a:hover {
text-decoration: underline;
}
.c-checkbox__text > a:hover::after {
content: none;
}
.c-checkbox__count {
font-size: 0.75rem;
border-radius: 4px;
display: flex;
align-items: center;
padding: 2px 8px;
color: #F0F2F5;
background-color: rgba(215, 219, 224, 0.7);
border: 2px solid #F0F2F5;
transition: all 80ms linear;
}
.c-checkbox__input:checked ~ .c-checkbox__count {
color: #0076FF;
background-color: #0076FF;
border-color: #0076FF;
}
.c-checkbox--has-indicator {
margin-top: 4px;
}
.c-checkbox--has-indicator .c-checkbox__text {
margin-right: auto;
}
.c-close {
display: flex;
align-items: center;
justify-content: center;
align-self: center;
position: relative;
width: 40px;
height: 40px;
padding: 0;
background: none;
border: none;
outline: none;
cursor: pointer;
transition: transform 180ms ease-out;
}
.c-close:focus {
box-shadow: 0 0 3px 2px #F0F2F5;
}
.c-close:after, .c-close:before {
content: "";
position: absolute;
top: 20px;
right: 20%;
left: 20%;
height: 3px;
margin-top: -2px;
pointer-events: none;
background: #F0F2F5;
border-radius: 3px;
}
.c-close:before {
transform: rotate(45deg);
}
.c-close:after {
transform: rotate(-45deg);
}
.c-close:hover {
transform: scale(1.2);
}
.c-cta__subtitle {
color: #8F9BB3;
font-size: 1.125rem;
line-height: 1.6666666667;
}
.c-cta__title {
margin: 10px 0 30px 0;
}
.c-cta-text {
position: relative;
padding-bottom: 80px;
}
.c-cta-text:before {
content: "";
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 75%;
background: white;
box-shadow: 0 -25px 25px -25px rgba(198, 214, 227, 0.5);
}
@media screen and (min-width: 950px) {
.c-cta-text:before {
height: calc(50% + 40px);
}
}
.c-cta-text--without-shadow:before {
display: none;
}
.c-cta-text__grid {
position: relative;
z-index: 1;
}
@media screen and (min-width: 950px) {
.c-cta-text__grid {
display: flex;
align-items: center;
}
}
.c-cta-text__main {
padding: 50px 45px 60px 45px;
border-radius: 20px;
background-image: url("/img/gradient-bg.svg");
background-position: 100% 50%;
background-size: cover;
color: white;
}
@media screen and (max-width: 599px) {
.c-cta-text__main {
position: relative;
z-index: 2;
padding-left: 40px;
padding-right: 40px;
}
}
@media screen and (min-width: 950px) {
.c-cta-text__main {
width: 58.3333333333%;
}
}
@media screen and (min-width: 1300px) {
.c-cta-text__main {
padding: 100px 45px 120px 45px;
}
}
@media screen and (min-width: 1500px) {
.c-cta-text__main {
padding: 100px 90px 120px 90px;
}
}
.c-cta-text__main h2 {
margin: 0 0 30px 0;
color: white;
font-weight: 500;
}
@media screen and (min-width: 1300px) {
.c-cta-text__main h2 {
margin: 0 0 60px 0;
}
}
.c-cta-text__main p {
margin: 0 0 25px 0;
font-size: 1.125rem;
line-height: 1.4444444444;
}
.c-cta-text__main p:last-of-type {
margin: 0;
}
@media screen and (min-width: 1300px) {
.c-cta-text__main p {
margin: 0 0 50px 0;
}
}
.c-cta-text__main strong {
display: inline-block;
padding: 9px;
margin: 0 2px;
border-radius: 10px;
color: #699BFF;
background-color: #FFFFFF;
}
.c-cta-text__side {
width: calc(100% - 80px);
margin: 0 auto;
background-color: white;
border-radius: 0 0 20px 20px;
padding: 45px;
box-shadow: 0 6px 25px 0 rgba(203, 225, 244, 0.5);
}
@media screen and (max-width: 599px) {
.c-cta-text__side {
position: relative;
top: -20px;
padding: 60px 40px 40px;
width: 100%;
}
}
@media screen and (min-width: 950px) {
.c-cta-text__side {
width: 41.6666666667%;
margin: 0;
}
}
@media screen and (min-width: 1024px) {
.c-cta-text__side {
border-radius: 0 20px 20px 0;
box-shadow: 6px 6px 25px 0 rgba(203, 225, 244, 0.5);
}
}
@media screen and (min-width: 1300px) {
.c-cta-text__side {
padding: 70px 45px;
}
}
@media screen and (min-width: 1500px) {
.c-cta-text__side {
padding: 70px;
}
}
.c-ctaPerson {
padding-top: 140px;
padding-bottom: 54px;
background-color: white;
box-shadow: 0 -25px 25px -25px rgba(198, 214, 227, 0.5);
}
.c-ctaPerson--without-shadow {
background-color: transparent;
box-shadow: none;
}
@media screen and (min-width: 900px) {
.c-ctaPerson__main {
display: flex;
justify-content: center;
}
.c-ctaPerson__main > * {
width: 50%;
max-width: 480px;
}
}
@media screen and (max-width: 669px) {
.c-ctaPerson__left {
margin: 0 auto 60px auto;
text-align: center;
width: 100%;
}
}
@media screen and (min-width: 670px) and (max-width: 899px) {
.c-ctaPerson__left {
margin: 0 auto 60px auto;
text-align: center;
width: 75%;
}
}
@media screen and (max-width: 679px) {
.c-ctaPerson__right {
text-align: center;
}
.c-ctaPerson__right .c-ctaPerson__personalData {
width: 100%;
text-align: center;
margin-top: 30px;
}
}
@media screen and (min-width: 680px) {
.c-ctaPerson__right {
display: flex;
align-items: center;
}
.c-ctaPerson__right .c-ctaPerson__svgHolder {
margin-right: 30px;
}
}
@media screen and (min-width: 680px) and (max-width: 899px) {
.c-ctaPerson__right {
justify-content: center;
}
}
@media screen and (min-width: 900px) {
.c-ctaPerson__right {
padding-left: 40px;
}
}
.c-ctaPerson__right .c-ctaPerson__svgHolder {
display: inline-block;
width: 160px;
}
.c-ctaPerson__right .c-ctaPerson__personalData {
display: inline-block;
vertical-align: middle;
}
.c-cta__personal-name {
margin: 0 0 10px 0;
}
.c-cta__personal-function {
margin: 0 0 25px 0;
color: #699BFF;
font-size: 1rem;
line-height: 1.1875;
}
.c-cta__personal-phone {
color: #475266;
font-size: 1.25rem;
line-height: 1.2;
text-decoration: none;
}
.c-faq__list {
margin-left: 0;
list-style: none;
}
.c-faq__item {
border-bottom: 1px solid #699BFF;
max-width: 45em;
}
.c-faq__label {
display: flex;
cursor: pointer;
padding: 16px 0;
}
.c-faq__number {
margin-right: 16px;
}
.c-faq__heading {
font-size: 1.125rem;
font-weight: bold;
display: flex;
align-items: center;
justify-content: space-between;
width: 100%;
color: #475266;
transition: color 150ms linear;
}
.c-faq__label:hover .c-faq__heading {
color: #8F9BB3;
}
.c-faq__label.is-active .c-faq__heading {
color: #699BFF;
}
.c-faq__arrow {
flex: none;
color: #2F6CE6;
transition: transform 150ms ease-in-out;
}
.c-faq__label.is-active .c-faq__arrow {
transform: rotate(-0.25turn);
}
.c-faq__content {
max-height: 0;
opacity: 0;
padding: 0;
pointer-events: none;
transition: all 250ms ease-in-out;
}
.is-active ~ .c-faq__content {
padding-bottom: 24px;
max-height: 1000px;
opacity: 1;
pointer-events: all;
}
.c-faq__action {
margin-top: 48px;
}
.c-form-group__label {
font-size: 0.9375rem;
line-height: 1.6;
display: block;
padding: 4px 0;
}
.c-form-group__error {
display: none;
}
.has-error .c-form-group__error:not(:empty) {
font-size: 0.875rem;
line-height: 1.1428571429;
display: block;
padding: 8px;
color: #0076FF;
background-color: rgba(0, 118, 255, 0.1);
border: 1px solid #0076FF;
border-top: none;
border-radius: 0 0 4px 4px;
}
.c-form-feedback {
font-size: 0.9375rem;
line-height: 1.6;
border-radius: 4px;
margin: 16px 0 0;
padding: 24px 32px;
border: 2px solid #0076FF;
background-color: rgba(0, 118, 255, 0.1);
}
.c-form-feedback:before {
content: attr(data-feedback);
display: inline-block;
margin-left: -16px;
margin-bottom: 8px;
}
.c-form-feedback:not(:empty) {
display: block;
}
.c-full-image {
position: relative;
}
@media screen and (max-width: 799px) {
.c-full-image {
margin-bottom: 40px;
}
}
@media screen and (min-width: 1200px) {
.c-full-image {
margin-bottom: -5vw;
}
}
.c-full-image__image {
position: relative;
z-index: 2;
}
.c-full-image__image .c-clipped-image__svg {
max-width: none !important;
}
.c-full-image__shape {
position: absolute;
z-index: 1;
left: 0;
top: 75%;
width: 100%;
}
.c-full-image__shape svg, .c-full-image__shape img {
width: 100%;
}
.c-hamburger {
display: flex;
justify-content: center;
align-items: center;
align-self: center;
position: relative;
width: 40px;
height: 40px;
padding: 0;
color: #F0F2F5;
background: none;
border: none;
outline: none;
cursor: pointer;
}
.c-hamburger:focus {
box-shadow: 0 0 3px 2px #0076FF;
}
.c-hamburger > span, .c-hamburger:after, .c-hamburger:before {
content: "";
position: absolute;
top: 20px;
right: 20%;
left: 20%;
height: 3px;
margin-top: -2px;
pointer-events: none;
background: currentColor;
border-radius: 3px;
transform-origin: right;
transition-property: transform;
transition-duration: 150ms;
transition-timing-function: ease-out;
transition-delay: 100ms;
}
.c-hamburger:before {
top: 12px;
transform: scaleX(0.8);
}
.c-hamburger:after {
top: 28px;
transform: scaleX(0.5);
}
.c-hamburger:hover > span {
transform: scaleX(0.8);
}
.c-hamburger:hover:after, .c-hamburger:hover:before {
transform: scaleX(1);
}
.is-overlay-menu-active .c-hamburger > span {
transform: scaleX(1) !important;
}
.is-overlay-menu-active .c-hamburger:before {
transform: translateY(3px) scaleX(1) !important;
transition-delay: 0ms;
}
.is-overlay-menu-active .c-hamburger:after {
transform: translateY(-3px) scaleX(1) !important;
transition-delay: 0ms;
}
.c-heading {
font-size: 2rem;
line-height: 1.25;
color: #F0F2F5;
}
.c-input {
font-size: 0.9375rem;
line-height: 1.6;
border-radius: 4px;
width: 100%;
padding: 6px 16px;
color: #F0F2F5;
background-color: #F0F2F5;
border: 2px solid #1F2024;
outline: none;
}
.has-error .c-input {
box-shadow: 0 0 7px -3px #0076FF;
border-color: #0076FF;
}
.c-input:focus {
box-shadow: 0 0 7px -3px #0076FF;
border-color: #0076FF;
}
textarea.c-input {
display: block;
padding: 16px;
min-height: 156px;
line-height: 24px;
resize: vertical;
}
.c-language {
position: relative;
}
.c-language__button {
font-size: 0.9375rem;
line-height: 1.6;
border-radius: 4px;
display: flex;
position: relative;
width: 100%;
padding: 8px;
text-align: left;
background: transparent;
color: #F0F2F5;
border: none;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
transition: background-color 150ms, box-shadow 150ms;
}
.c-language__button:focus {
outline: none;
}
.c-language__icon {
flex: none;
pointer-events: none;
}
.c-language__label {
margin-left: 4px;
font-weight: bold;
}
.c-language__dropdown {
position: absolute;
right: 0;
top: 100%;
min-width: 100%;
margin: 0;
opacity: 0;
list-style: none;
border-radius: 4px;
box-shadow: 0 0 12px 1px rgba(240, 242, 245, 0.15);
pointer-events: none;
transform: translate3d(0, -5px, 0);
transition: opacity 300ms, transform 300ms;
}
.c-language:hover .c-language__dropdown {
opacity: 1;
pointer-events: all;
transform: translate3d(0, 0, 0);
}
.c-language__item {
overflow: hidden;
background-color: #F0F2F5;
}
.c-language__item:nth-child(even) {
background-color: #D7DBE0;
}
.c-language__item:first-child {
border-radius: 4px 4px 0 0;
}
.c-language__item:last-child {
border-radius: 0 0 4px 4px;
}
.c-language__item:first-child:last-child {
border-radius: 4px;
}
.c-language__link {
display: block;
padding: 4px 8px;
text-align: center;
font-weight: bold;
text-decoration: none;
color: #1F2024;
transition: background-color 300ms;
}
.c-language__link:hover {
color: #F0F2F5;
background-color: #F0F2F5;
}
@media screen and (min-width: 740px) {
.c-large-quote {
display: flex;
justify-content: center;
}
}
.c-large-quote__image {
max-width: 280px;
margin: auto;
}
@media screen and (min-width: 740px) {
.c-large-quote__image {
max-width: 360px;
width: 33.3333333333%;
margin: 0;
}
}
.c-large-quote__image .c-clipped-image__svg {
color: #e4f6ff;
}
.c-large-quote__image .c-clipped-image__background {
opacity: 1;
}
@media screen and (max-width: 739px) {
.c-large-quote__main {
margin: 30px auto 0;
width: 83.3333333333%;
text-align: center;
}
}
@media screen and (min-width: 740px) {
.c-large-quote__main {
margin-left: 8.3333333333%;
width: 58.3333333333%;
max-width: 700px;
}
}
.c-large-quote__text {
position: relative;
}
.c-large-quote__text h2 {
margin-bottom: 50px;
}
.c-large-quote__quote-mark {
width: 35px;
max-height: 30px;
}
@media screen and (max-width: 739px) {
.c-large-quote__quote-mark {
display: inline-block;
margin-bottom: 20px;
}
}
@media screen and (min-width: 740px) {
.c-large-quote__quote-mark {
position: absolute;
left: -65px;
top: -5px;
}
}
.c-large-quote__name {
margin-top: 40px;
font-weight: 500;
color: #8F9BB3;
line-height: 1.2;
}
.c-large-quote__function {
font-size: 1rem;
}
.c-nav {
height: 100%;
padding: 0;
}
.c-nav__list {
display: flex;
justify-content: flex-end;
align-items: center;
margin-left: 0;
padding: 0;
list-style: none;
}
.c-nav__item {
font-size: 1.125rem;
line-height: 1.6666666667;
white-space: nowrap;
margin-right: 2%;
}
.c-nav__item:last-child {
margin-right: 0;
}
.c-nav__link {
position: relative;
padding: 4px;
color: #F0F2F5;
text-decoration: none;
transition: color 150ms linear;
}
.c-nav__link::before {
content: "";
display: block;
position: absolute;
z-index: -1;
left: 4px;
bottom: 1px;
width: calc(100% - 8px);
height: 2px;
border-radius: 1px;
background-color: currentColor;
transform: scaleX(0);
transform-origin: bottom right;
transition: transform 300ms cubic-bezier(0.86, 0, 0.07, 1);
}
.c-nav__link:hover::before {
transform: scaleX(1);
transform-origin: bottom left;
}
.is-active.c-nav__item .c-nav__link {
font-weight: bold;
color: #F0F2F5;
}
.is-active.c-nav__item .c-nav__link::before {
transform: scaleX(1);
transform-origin: bottom left;
background-color: #F0F2F5;
}
.c-nav__link:focus {
outline-color: #0076FF;
}
/*
* Page title
*/
.c-page-title {
overflow-wrap: break-word;
word-wrap: break-word;
-webkit-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
padding-top: 32px;
padding-bottom: 32px;
color: #F0F2F5;
}
@media screen and (min-width: 840px) {
.c-page-title__lead {
margin-top: -16px;
margin-bottom: 16px;
}
}
.c-page-title__heading {
font-size: 2.5rem;
line-height: 1;
line-height: 1.3;
}
.c-pagination {
border-radius: 8px;
display: inline-flex;
justify-content: center;
align-items: center;
margin-left: 0;
list-style: none;
overflow: hidden;
border: 1px solid #1F2024;
}
.c-pagination__item {
display: flex;
justify-content: center;
align-items: center;
}
@media screen and (max-width: 839px) {
.c-pagination__item {
display: none;
}
.c-pagination__item:first-child, .c-pagination__item:last-child, .c-pagination__item.is-last-page, .c-pagination__item.is-active {
display: flex;
}
.c-pagination__item.is-last-page {
pointer-events: none;
}
}
.c-pagination__item + .c-pagination__item {
border-left: 1px solid;
border-color: inherit;
}
.c-pagination__text,
.c-pagination__link,
.c-pagination__prev,
.c-pagination__next {
display: flex;
justify-content: center;
align-items: center;
min-width: 48px;
min-height: 48px;
padding: 8px;
}
.c-pagination__text {
color: #1F2024;
opacity: 0.35;
}
.c-pagination__link {
color: #1F2024;
text-decoration: none;
transition: color 200ms, background-color 200ms;
}
.c-pagination__link:hover {
color: #F0F2F5;
background: #1a2233;
}
.is-active > .c-pagination__link {
box-shadow: inset 0 0 10px -5px #1F2024;
font-weight: bold;
color: white;
cursor: default;
background-image: url("/img/gradient-bg.svg");
background-color: transparent !important;
background-size: cover;
background-position: 100% 50%;
}
.c-pagination__prev,
.c-pagination__next {
transition: background 200ms;
transform: rotate(0.75turn);
}
.c-pagination__prev.is-inactive,
.c-pagination__next.is-inactive {
color: #F0F2F5;
background: transparent;
}
.c-pagination__prev {
transform: rotate(0.25turn);
}
.c-projector {
position: relative;
height: 100%;
max-width: 576px;
margin: 0 auto;
}
.c-projector__figure {
display: -ms-grid;
display: grid;
-ms-grid-rows: 1fr;
grid-template-rows: 1fr;
-ms-grid-columns: 1fr;
grid-template-columns: 1fr;
}
.c-projector__caption {
font-size: 0.9375rem;
line-height: 1.6;
-ms-grid-column: 1;
grid-column: 1;
-ms-grid-row: 2;
grid-row: 2;
-webkit-user-select: text;
-ms-user-select: text;
user-select: text;
margin-top: 8px;
color: #F0F2F5;
}
.c-projector__picture {
-ms-grid-column: 1;
grid-column: 1;
-ms-grid-row: 1;
grid-row: 1;
-ms-grid-row-align: end;
align-self: end;
height: 100%;
display: block;
background-color: #F0F2F5;
opacity: 0;
transition: opacity 500ms;
}
.c-projector__picture.is-active {
opacity: 1;
}
.c-projector__img {
width: 100%;
height: 100%;
object-fit: cover;
background-color: #D7DBE0;
}
@media screen and (max-width: 839px) {
.c-projector__img {
max-height: 78vh;
}
}
.c-projector__control {
-ms-grid-column: 1;
grid-column: 1;
-ms-grid-row: 1;
grid-row: 1;
-ms-grid-row-align: end;
align-self: end;
margin-bottom: 8px;
margin-right: 8px;
}
.c-post-categories__label {
margin-bottom: -20px;
}
.c-post-categories {
margin: -5px;
}
.c-post-categories__item {
display: inline-block;
margin: 5px;
padding: 8px 16px;
font-weight: 500;
color: white;
cursor: pointer;
border: 2px solid white;
text-decoration: none;
font-size: 0.875rem;
border-radius: 12px;
transition: background-color 0.2s;
}
.c-post-categories__item:not(.is-active):hover {
background-color: rgba(255, 255, 255, 0.15);
}
.c-post-categories__item.is-active {
border-color: #699BFF;
background-image: url("/img/gradient-bg.svg");
background-color: transparent !important;
background-size: cover;
background-position: 100% 50%;
}
.c-references__title {
text-align: center;
margin-bottom: 32px;
}
.c-references__blocks {
display: flex;
justify-content: space-around;
align-items: center;
flex-wrap: wrap;
}
.c-references__block {
margin: 30px;
text-align: center;
display: flex;
justify-content: center;
}
.c-references__block + .c-references__block {
margin-left: 4.1666666667%;
}
.c-references__block img {
width: 130px;
display: block;
}
.c-reference-card__title {
margin-bottom: 40px;
text-align: center;
}
.c-reference-card__overview {
margin-top: 40px;
text-align: center;
}
@media screen and (min-width: 600px) {
.c-reference-card__blocks {
display: flex;
justify-content: center;
align-items: flex-start;
flex-wrap: wrap;
margin: -20px;
}
}
.c-reference-card__item {
position: relative;
box-shadow: 0 10px 20px -15px rgba(104, 153, 252, 0.5), 0 20px 40px -10px rgba(104, 153, 252, 0.1);
}
@media screen and (max-width: 599px) {
.c-reference-card__item + .c-reference-card__item {
margin-top: 20px;
}
}
@media screen and (min-width: 600px) {
.c-reference-card__item {
margin: 20px;
width: calc((100% - 20px * 4) / 2);
}
}
@media screen and (min-width: 1200px) {
.c-reference-card__item {
width: calc((100% - 20px * 6) / 3);
}
}
.c-reference-card__link {
display: block;
cursor: pointer;
border-radius: 10px;
overflow: hidden;
text-decoration: none;
transition: background-color 150ms linear;
}
.c-reference-card__link:hover {
background-color: #F0F2F5;
}
.c-reference-card__link:hover::before {
border-color: #F0F2F5;
}
.c-reference-card__link:focus {
outline-color: #0076FF;
}
.c-reference-card__body {
padding: 36px 24px;
background-color: white;
transition: background-color 0.2s;
}
.c-reference-card__link:hover .c-reference-card__body {
background-color: #F0F2F5;
}
.c-reference-card__image {
position: relative;
width: 100%;
padding-bottom: 65%;
overflow: hidden;
}
.c-reference-card__bg-image {
position: absolute;
background-size: cover;
background-position: center;
width: 100%;
height: 100%;
transform: scale3d(1, 1, 1);
transition: transform 0.3s ease-in-out;
}
.c-reference-card__link:hover .c-reference-card__bg-image {
transform: scale3d(1.04, 1.04, 1);
}
.c-reference-card__action {
display: flex;
justify-content: flex-start;
align-items: center;
margin-top: 8px;
font-size: 0.875rem;
color: #475266;
}
.c-reference-card__readmore {
margin-right: 8px;
}
/**
* Select styled without extra containing elements
* ------------------------------------
* Based on this article:
* https://www.filamentgroup.com/lab/select-css.html
*/
.c-select {
border-radius: 4px;
font-size: 0.875rem;
line-height: 1.1428571429;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
display: block;
padding-top: 6px;
padding-bottom: 6px;
padding-left: 16px;
padding-right: 32px;
height: 40px;
width: 100%;
max-width: 500px;
box-sizing: border-box;
margin: 0;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
color: #1F2024;
background-color: #F0F2F5;
background-image: url("/img/select-arrow.svg"), linear-gradient(to bottom, #F0F2F5 0%, #F0F2F5 100%);
background-repeat: no-repeat, repeat;
background-position: right 13px top 50%, 0 0;
background-size: 12px auto, 100%;
border: 2px solid #F0F2F5;
transition: border 150ms linear;
}
.c-select:hover {
border-color: #F0F2F5;
background-color: #F0F2F5;
}
.c-select:focus {
border-color: #0076FF;
box-shadow: 0 0 7px -3px rgba(31, 32, 36, 0.7);
box-shadow: 0 0 0 1px -moz-mac-focusring;
color: #1F2024;
outline: none;
}
.c-select option {
font-weight: normal;
}
.c-select::-ms-expand {
display: none;
}
.c-servicepoint {
display: inline-flex;
flex-wrap: wrap;
align-items: center;
justify-content: flex-start;
text-align: left;
margin-top: -16px;
}
.c-servicepoint__image {
max-width: 176px;
flex: 0;
margin-top: 16px;
margin-right: 16px;
border-radius: 50%;
}
@media screen and (max-width: 539px) {
.c-servicepoint__image {
width: 96px;
}
}
.c-servicepoint__content {
overflow-wrap: break-word;
word-wrap: break-word;
-webkit-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
flex-grow: 1;
flex-basis: 165px;
margin-top: 16px;
}
.c-servicepoint__body {
margin-top: 8px;
}
.c-servicepoint__data {
font-size: 1.25rem;
line-height: 1.6;
}
.c-servicepoint__footer {
margin-top: 8px;
}
.c-servicepoint__heading {
font-size: 1.125rem;
line-height: 1.6666666667;
color: #F0F2F5;
border-radius: 100%;
}
.c-service-blocks__title {
text-align: center;
}
.c-service-block__grid {
padding-top: 28px;
padding-bottom: 40px;
}
@media screen and (min-width: 700px) {
.c-service-block__grid {
display: flex;
max-width: 1200px;
justify-content: flex-start;
flex-wrap: wrap;
margin: 0 auto -40px;
}
}
@media screen and (max-width: 899px) {
.c-service-block__grid {
margin: 0;
padding-top: 0;
}
}
.c-service-block {
padding: 60px 30px;
background: #FFFFFF;
border-radius: 20px;
min-height: 444px;
display: flex;
justify-content: space-between;
align-items: center;
flex-direction: column;
box-shadow: 0 -10px 20px -15px rgba(137, 155, 191, 0.5), 0 10px 20px -15px rgba(104, 153, 252, 0.5), 0 20px 40px -10px rgba(104, 153, 252, 0.1);
text-decoration: none;
transform: translateY(0);
transition: transform 0.2s, box-shadow 0.2s;
}
@media screen and (max-width: 699px) {
.c-service-block {
max-width: 340px;
margin: 30px auto;
}
}
@media screen and (min-width: 700px) {
.c-service-block {
width: calc((100% - 20px * 4) / 2);
margin: 20px;
}
}
@media screen and (min-width: 1180px) {
.c-service-block {
width: calc((100% - 30px * 6) / 3);
max-width: 340px;
}
}
.c-service-block h3 {
color: #475266;
}
.c-service-block p {
text-align: center;
}
.c-service-block:hover {
transform: translateY(-5px);
box-shadow: 0 20px 40px -10px rgba(104, 153, 252, 0.5);
}
.c-service-block--narrow {
background: linear-gradient(180deg, #699BFF 0%, #2F6CE6 100%);
color: white;
width: 120px;
display: flex;
text-align: center;
text-transform: uppercase;
}
@media screen and (max-width: 1609px) {
.c-service-block--narrow {
width: 340px;
}
}
.c-service-block--narrow .c-button__icon {
width: 19px;
margin-top: 10px;
}
.c-service-block__icon {
width: 100px;
height: 100px;
border-radius: 100%;
border: none;
}
.c-button--ghost {
color: #699BFF;
}
.c-service-block__subtitle {
font-size: 1rem;
line-height: 1.3125;
color: #2F6CE6;
}
@media screen and (max-width: 949px) {
.c-service-type__grid > * {
margin-top: 40px;
}
}
@media screen and (min-width: 950px) {
.c-service-type__grid {
display: flex;
justify-content: space-between;
align-items: flex-start;
background: white;
box-shadow: 0 10px 20px -15px rgba(104, 153, 252, 0.5), 0 20px 40px -10px rgba(104, 153, 252, 0.1);
border-radius: 20px;
}
.c-service-type__grid > * {
width: 50%;
}
}
.c-service-type__item {
display: block;
padding: 70px;
text-decoration: none;
background-color: white;
}
@media screen and (max-width: 949px) {
.c-service-type__item {
box-shadow: 0 10px 20px -15px rgba(104, 153, 252, 0.5), 0 20px 40px -10px rgba(104, 153, 252, 0.1);
border-radius: 20px;
padding: 40px;
margin-left: auto;
margin-right: auto;
}
}
@media screen and (max-width: 949px) and (min-width: 760px) {
.c-service-type__item {
max-width: 580px;
}
}
@media screen and (min-width: 950px) {
.c-service-type__item {
position: relative;
background-color: transparent;
}
.c-service-type__item:last-child:after {
position: absolute;
top: 70px;
left: 0;
content: "";
display: block;
width: 1px;
height: calc(100% - 140px);
background-color: rgba(47, 108, 230, 0.25);
}
}
.c-service-type__icon {
width: 85px;
margin: 0 auto 30px;
}
.c-service-type__content {
text-align: center;
font-size: 1rem;
line-height: 1.5;
margin-bottom: 30px;
}
.c-service-type__content h2 {
font-size: 1.75rem;
font-weight: 500;
}
.c-service-type__content p {
max-width: 480px;
margin-left: auto;
margin-right: auto;
}
.c-service-type__button {
text-align: center;
}
.c-service-type__button .c-button--ghost {
color: #699BFF;
}
.c-service-heading {
position: relative;
text-transform: uppercase;
}
@media screen and (min-width: 560px) and (max-width: 1399px) {
.c-service-heading {
display: flex;
justify-content: flex-start;
align-items: flex-start;
}
}
.c-service-heading__icon {
display: block;
margin-bottom: 20px;
width: 52px;
opacity: 0.3;
}
@media screen and (min-width: 560px) {
.c-service-heading__icon {
display: inline-flex;
margin-bottom: 0;
}
}
@media screen and (min-width: 560px) and (max-width: 1399px) {
.c-service-heading__icon {
margin-top: -5px;
margin-right: 15px;
}
}
@media screen and (min-width: 1400px) {
.c-service-heading__icon {
position: absolute;
top: -5px;
left: -76px;
}
}
.c-sitemap__item {
font-size: 1.25rem;
color: #8F9BB3;
}
.c-sitemap__link {
display: block;
padding: 4px 0;
text-decoration: none;
}
.c-sitemap__link:hover {
color: #475266;
text-decoration: underline;
}
/*
* Skip Link
*/
.c-skip-link {
font-size: 0.9375rem;
line-height: 1.6;
position: fixed;
top: -100vh;
left: 50%;
transform: translateX(-50%);
color: #F0F2F5;
text-decoration: none;
}
.c-skip-link:focus {
outline-color: #0076FF;
outline-offset: 2px;
top: 5px;
/* Now the link will appear */
}
.c-slide-indicator {
display: flex;
justify-content: flex-end;
align-items: center;
}
.c-slide-indicator__dot {
position: relative;
display: inline-block;
width: 30px;
height: 30px;
background-color: transparent;
border: none;
cursor: pointer;
transition-property: background-color, opacity;
transition-duration: 250ms;
}
.c-slide-indicator__dot:focus {
outline: none;
}
.c-slide-indicator__dot:hover:not(.is-active), .c-slide-indicator__dot:focus:not(.is-active) {
opacity: 0.5;
}
.c-slide-indicator__dot:before, .c-slide-indicator__dot:after {
content: "";
position: absolute;
background-clip: content-box;
transition-property: transform, background-color, opacity;
transition-duration: 300ms;
transition-timing-function: ease-in-out;
border-radius: 100%;
}
.c-slide-indicator__dot:before {
top: calc((30px - 8px) / 2);
right: calc((30px - 8px) / 2);
bottom: calc((30px - 8px) / 2);
left: calc((30px - 8px) / 2);
background-color: #F0F2F5;
}
.c-slide-indicator__dot:after {
top: calc((30px - 12px) / 2);
right: calc((30px - 12px) / 2);
bottom: calc((30px - 12px) / 2);
left: calc((30px - 12px) / 2);
border: 1px solid #F0F2F5;
transform: scale(1.4);
opacity: 0;
}
.c-slide-indicator__dot.is-active:before {
background-color: #F0F2F5;
border-color: rgba(240, 242, 245, 0.9);
transform: scale(0.75);
}
.c-slide-indicator__dot.is-active:after {
opacity: 0.9;
transform: scale(1);
}
.c-slide-indicator__dot:focus {
opacity: 1 !important;
}
.c-slide-indicator__dot:focus:before {
box-shadow: 0 0 0 2px black, 0 0 10px 1px white;
}
.c-slide-indicator__dot:focus:after {
box-shadow: 0 0 0 2px black, 0 0 10px 1px white;
}
.c-slide-indicator__button {
position: relative;
border: none;
background-color: #F0F2F5;
color: #F0F2F5;
height: 40px;
width: 40px;
}
.c-slide-indicator__button + .c-slide-indicator__button {
margin-left: 8px;
}
.c-slide-indicator__button[aria-label=previous] > svg {
transform: rotate(90deg);
}
.c-slide-indicator__button[aria-label=next] > svg {
transform: rotate(-90deg);
}
.c-slide-indicator__button:hover {
cursor: pointer;
background-color: #d3d9e2;
}
.c-slide-indicator__button:focus {
outline: none;
background-color: #d3d9e2;
}
.c-subnav {
background-color: #F0F2F5;
padding: 8.3333333333%;
}
.c-subnav__header {
margin: 0;
}
.c-subnav__list {
margin-top: 40px;
list-style-type: none;
margin-left: 0;
}
.c-subnav__link {
position: relative;
display: flex;
padding: 8px 0;
color: #F0F2F5;
text-decoration: none;
cursor: pointer;
transition: color 250ms;
}
.c-subnav__link:hover {
color: #1F2024;
}
.c-subnav__link:focus {
outline-color: #0076FF;
}
.c-subnav__link::before {
content: "";
display: block;
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 100%;
border-bottom: 1px solid #F0F2F5;
}
.c-subnav__icon {
opacity: 0;
align-items: center;
margin-left: 16px;
color: #F0F2F5;
transform: translateX(-16px);
transition: all 250ms ease-out;
}
.c-subnav__link:hover .c-subnav__icon {
opacity: 1;
transform: none;
color: #1F2024;
}
.c-subnav__item.is-active .c-subnav__link {
color: #F0F2F5;
font-weight: bold;
}
.c-subnav__item.is-active .c-subnav__link::before {
border-color: #1F2024;
border-width: 2px;
}
.c-subnav__item.is-active .c-subnav__icon {
opacity: 0;
}
.c-text {
width: 100%;
margin: auto;
}
.c-text-button {
display: inline-flex;
justify-content: center;
align-items: center;
color: #1F2024;
padding: 0;
/* 2 */
background-color: transparent;
/* 2 */
border: none;
/* 2 */
cursor: pointer;
text-decoration: none;
font-weight: 500;
letter-spacing: 1.5px;
transition: color 300ms;
}
.c-text-button:hover:not(:disabled) {
color: #F0F2F5;
}
.c-text-button:disabled {
opacity: 0.5;
cursor: not-allowed;
}
.c-text-button:focus {
outline-color: #0076FF;
}
.c-text-button__text {
font-size: 1.125rem;
line-height: 1.6666666667;
}
.c-text-button__icon {
display: none;
position: relative;
margin-left: 8px;
transition: transform 300ms;
}
.c-text-button:hover:not(:disabled) .c-text-button__icon {
transform: translateX(3px);
}
.c-text-button--icon .c-text-button__icon {
display: block;
}
.c-text-button--is-reversed .c-text-button__text {
order: 2;
}
.c-text-button--is-reversed .c-text-button__icon {
order: 1;
top: 1px;
margin-left: 0;
margin-right: 8px;
transform: rotate(0.5turn);
}
.c-text-button--is-reversed:hover:not(:disabled) .c-text-button__icon {
transform: rotate(0.5turn) translateX(3px);
}
.c-text-button--on-dark {
color: #7AD3FF;
}
.c-text-button--on-dark:hover:not(:disabled) {
color: white;
}
.c-trademark {
display: inline-flex;
align-items: center;
text-decoration: none;
transition: color 150ms linear;
}
.c-trademark__text {
display: flex;
align-items: center;
margin-right: 7px;
}
.c-trademark__love {
display: inline-flex;
background-image: url(/img/heart-sprite.png);
background-position: right 1px;
background-repeat: no-repeat;
background-size: 2900%;
cursor: pointer;
width: 56px;
height: 56px;
margin: 0 -12px;
}
.c-trademark:hover {
color: #E2264D;
}
.c-trademark:hover .komma-emblem {
transform-origin: 12px 12px;
animation: logo-spin 1.8s linear infinite;
}
.c-trademark:hover .c-trademark__love {
animation: heartAnim 1.1s steps(28) forwards;
}
@keyframes heartAnim {
from {
background-position: left 1px;
}
to {
background-position: right 1px;
}
}
@keyframes logo-spin {
from {
transform: rotate(0);
}
to {
transform: rotate(-1turn);
}
}
.c-video {
position: relative;
height: 0;
width: 100%;
padding-bottom: 56.25%;
background-color: #D7DBE0;
}
.c-video__iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
/* 6 - ORGANISMS
* Large blocks composed of multiple components.
=========================================================== */
/** ==========================================================================
* Organisms
* =========================================================================*/
.o-advice-content {
background-color: #FAFCFF;
margin-top: -60px;
padding-top: 120px;
padding-bottom: 160px;
position: relative;
}
@media screen and (min-width: 700px) {
.o-advice-content .l-grid-content {
display: flex;
justify-content: center;
align-items: flex-start;
}
}
.o-advice-content .left {
width: 120px;
flex-shrink: 0;
}
@media screen and (max-width: 699px) {
.o-advice-content .left {
margin: 0 auto 30px auto;
}
}
.o-advice-content .left .phone-holder {
display: block;
width: 150%;
text-align: center;
position: relative;
left: -25%;
margin-top: 10px;
}
.o-advice-content .left .phone-holder h4 {
line-height: 1.3;
}
.o-advice-content .left .phone-holder a {
text-decoration: none;
font-weight: 400;
}
.o-advice-content .right {
margin-left: 7.6923076923%;
}
@media screen and (max-width: 699px) {
.o-advice-content .right {
margin-left: 0;
}
}
.o-advice-content .right .s-text {
margin-bottom: 60px;
}
.o-advice-content .right .s-text h1 {
font-size: 2rem;
font-weight: 500;
text-transform: none;
}
.o-advice-content .right #adviceForm {
position: relative;
}
.o-advice-content .right #adviceForm label {
display: block;
color: #8F9BB3;
margin-bottom: 20px;
}
.o-advice-content .right #adviceForm .clientType {
position: relative;
margin-bottom: 50px;
}
.o-advice-content .right #adviceForm .clientType label {
margin: 0;
display: inline-block;
width: 40%;
}
.o-advice-content .right #adviceForm .clientType p {
margin: 0 0 30px 0;
}
.o-advice-content .right #adviceForm .clientType input {
display: none;
}
.o-advice-content .right #adviceForm .clientType .private, .o-advice-content .right #adviceForm .clientType .professional {
display: inline-block;
width: 100%;
border-radius: 20px;
border: 2px solid white;
box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.5), 2px 2px 15px 0 rgba(198, 214, 227, 0.5);
background-color: white;
padding: 30px 0;
text-align: center;
cursor: pointer;
font-size: 1.125rem;
line-height: 1.2222222222;
color: #8F9BB3;
}
.o-advice-content .right #adviceForm .clientType .private:hover, .o-advice-content .right #adviceForm .clientType .professional:hover {
background-color: rgba(68, 161, 244, 0.2);
border: 2px solid #44A1F4;
}
.o-advice-content .right #adviceForm .clientType .professional {
margin-left: 45px;
}
.o-advice-content .right #adviceForm .clientType input[type=radio]:checked + div {
border: 2px solid #44A1F4;
}
.o-advice-content .right #adviceForm input[type=text], .o-advice-content .right #adviceForm textarea {
width: 100%;
padding: 12px 15px;
margin-bottom: 30px;
border-radius: 3px;
background-color: white;
color: black;
font-size: 1.125rem;
line-height: 1.2222222222;
outline: none;
border: 1px solid transparent;
box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2);
}
.o-advice-content .right #adviceForm input[type=text]:focus, .o-advice-content .right #adviceForm textarea:focus {
outline: none;
border: 1px solid #6EB8FF;
}
.o-advice-content .right #adviceForm input[type=text]:-ms-input-placeholder, .o-advice-content .right #adviceForm textarea:-ms-input-placeholder {
color: #8F9BB3;
}
.o-advice-content .right #adviceForm input[type=text]::placeholder, .o-advice-content .right #adviceForm textarea::placeholder {
color: #8F9BB3;
}
.o-advice-content .right #adviceForm textarea {
resize: none;
min-height: 100px;
color: black;
}
.o-advice-content .right #adviceForm .submit input[type=submit] {
background: transparent;
border: none;
padding: 13px 35px 15px 35px;
cursor: pointer;
font-size: 1.125rem;
line-height: 1.2222222222;
border-radius: 4px;
border-radius: 400px;
color: white;
background: linear-gradient(90deg, #699BFF 0%, #2F6CE6 100%);
}
.o-advice-content .right #adviceForm .error-message {
position: absolute;
right: 0;
color: indianred;
}
@media screen and (min-width: 600px) {
.o-blog__grid {
display: flex;
justify-content: flex-start;
align-items: flex-start;
flex-wrap: wrap;
margin: -20px;
}
}
.o-blog__divider {
border: none;
border-bottom: 2px solid rgba(143, 155, 179, 0.2);
margin-bottom: 64px;
}
.o-blog__others {
margin-bottom: 48px;
}
@media screen and (max-width: 599px) {
.o-blog__others > * + * {
margin-top: 16px;
}
}
@media screen and (min-width: 600px) {
.o-blog__others {
display: flex;
justify-content: space-between;
}
}
.o-blog__heading {
font-size: 1.5rem;
line-height: 1.3333333333;
font-weight: 500;
color: #475266;
}
.o-blog__article {
position: relative;
box-shadow: 0 10px 20px -15px rgba(104, 153, 252, 0.5), 0 20px 40px -10px rgba(104, 153, 252, 0.1);
}
@media screen and (max-width: 599px) {
.o-blog__article + .o-blog__article {
margin-top: 20px;
}
}
@media screen and (min-width: 600px) {
.o-blog__article {
margin: 20px;
width: calc((100% - 20px * 4) / 2);
}
}
@media screen and (min-width: 1200px) {
.o-blog__article {
width: calc((100% - 20px * 6) / 3);
}
}
.o-blog__link {
display: block;
cursor: pointer;
border-radius: 10px;
overflow: hidden;
text-decoration: none;
transition: background-color 150ms linear;
}
.o-blog__link:hover {
background-color: #F0F2F5;
}
.o-blog__link:hover::before {
border-color: #F0F2F5;
}
.o-blog__link:focus {
outline-color: #0076FF;
}
.o-blog__body {
padding: 36px 24px;
background-color: white;
transition: background-color 0.2s;
}
.o-blog__link:hover .o-blog__body {
background-color: #F0F2F5;
}
.o-blog__image {
position: relative;
width: 100%;
padding-bottom: 65%;
overflow: hidden;
}
.o-blog__bg-image {
position: absolute;
background-size: cover;
background-position: center;
width: 100%;
height: 100%;
transform: scale3d(1, 1, 1);
transition: transform 0.3s ease-in-out;
}
.o-blog__link:hover .o-blog__bg-image {
transform: scale3d(1.04, 1.04, 1);
}
.o-blog__intro {
margin-top: 16px;
margin-bottom: 16px;
font-size: 1rem;
}
.o-blog__timestamp {
display: block;
margin-top: 2px;
font-size: 0.875rem;
color: #2F6CE6;
}
.o-blog__action {
display: flex;
justify-content: flex-start;
align-items: center;
margin-top: 8px;
font-size: 0.875rem;
color: #475266;
}
.o-blog__readmore {
margin-right: 8px;
}
.o-blog__footer {
margin-top: 64px;
text-align: center;
}
.o-callout-bar {
overflow-wrap: break-word;
word-wrap: break-word;
-webkit-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
color: #F0F2F5;
background-color: #F0F2F5;
text-align: center;
}
.o-callout-bar__main {
margin-left: auto;
margin-right: auto;
max-width: 1440px;
width: calc((100% / 14) * 12);
}
@media screen and (max-width: 1679px) {
.o-callout-bar__main {
padding-top: 6.25vw;
padding-bottom: 6.25vw;
}
}
@media screen and (min-width: 1680px) {
.o-callout-bar__main {
padding-top: 120px;
padding-bottom: 120px;
}
}
@media screen and (max-width: 1679px) {
.o-callout-bar__main > * + * {
margin-top: 3.125vw;
}
}
@media screen and (min-width: 1680px) {
.o-callout-bar__main > * + * {
margin-top: 60px;
}
}
.o-callout-bar__heading {
font-size: 2rem;
line-height: 1.25;
}
/* In the [$o-card-grid] map we define some settings:
*
* 'columns'.key = number of items in a row
* 'columns'.value = breakpoint size from which we want that number of items
*/
@media screen and (min-width: 740px) {
.o-card-grid__main {
display: flex;
flex-wrap: wrap;
margin: -16px;
}
}
.o-card-grid__item {
max-width: 444px;
margin: 16px auto;
}
@media screen and (min-width: 740px) {
.o-card-grid__item {
flex: none;
margin: 16px;
flex-basis: calc(50% - (16px * 2));
}
}
@media screen and (min-width: 1060px) {
.o-card-grid__item {
flex-basis: calc(33.3333333333% - (16px * 2));
}
}
.o-contact-content {
position: relative;
z-index: 100;
padding-bottom: 100px;
}
@media screen and (max-width: 899px) {
.o-contact-content {
padding-bottom: 90px;
}
}
.o-contact-content .l-bisection {
position: relative;
}
@media screen and (min-width: 900px) {
.o-contact-content .l-bisection {
display: flex;
flex-direction: row-reverse;
}
}
.o-contact-content .l-bisection__item {
height: 100%;
}
@media screen and (min-width: 900px) {
.o-contact-content .l-bisection__item {
width: 50%;
}
}
.o-contact-content #contactForm {
background-color: white;
border-radius: 20px;
width: 83.3333333333%;
padding: 50px 80px;
min-height: 690px;
box-shadow: 6px 6px 25px 0 rgba(104, 153, 252, 0.1);
}
@media screen and (max-width: 1279px) {
.o-contact-content #contactForm {
width: 91.6666666667%;
padding: 50px 40px;
}
}
@media screen and (max-width: 899px) {
.o-contact-content #contactForm {
width: 100%;
margin-top: 120px;
}
}
@media screen and (max-width: 611px) {
.o-contact-content #contactForm {
margin-top: 200px;
}
}
.o-contact-content #contactForm .form-element {
position: relative;
}
.o-contact-content #contactForm label {
display: block;
color: #8F9BB3;
margin-bottom: 4px;
}
.o-contact-content #contactForm input[type=text], .o-contact-content #contactForm input[type=email], .o-contact-content #contactForm textarea {
width: 100%;
border: none;
padding: 12px 15px;
border-radius: 3px;
background-color: white;
color: black;
font-size: 1.125rem;
line-height: 1.2222222222;
box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2);
}
.o-contact-content #contactForm input[type=text]:focus, .o-contact-content #contactForm input[type=email]:focus, .o-contact-content #contactForm textarea:focus {
outline: none;
border-bottom: 1px solid #6EB8FF;
}
.o-contact-content #contactForm input[type=text].error, .o-contact-content #contactForm input[type=email].error, .o-contact-content #contactForm textarea.error {
border-bottom: 1px solid #F97A4D;
}
.o-contact-content #contactForm input[type=text]:-ms-input-placeholder, .o-contact-content #contactForm input[type=email]:-ms-input-placeholder, .o-contact-content #contactForm textarea:-ms-input-placeholder {
color: #8F9BB3;
}
.o-contact-content #contactForm input[type=text]::placeholder, .o-contact-content #contactForm input[type=email]::placeholder, .o-contact-content #contactForm textarea::placeholder {
color: #8F9BB3;
}
.o-contact-content #contactForm textarea {
resize: none;
min-height: 100px;
}
.o-contact-content #contactForm .submit {
text-align: right;
}
.o-contact-content #contactForm .submit input[type=submit] {
background: transparent;
border: none;
padding: 13px 35px 15px 35px;
cursor: pointer;
font-size: 1.125rem;
line-height: 1.2222222222;
border-radius: 4px;
border-radius: 400px;
color: white;
background: linear-gradient(90deg, #699BFF 0%, #2F6CE6 100%);
}
.o-contact-content #contactForm .error-message {
position: absolute;
right: 0;
color: #F97A4D;
width: 75%;
text-align: right;
}
.o-contact-content .contact-options {
white-space: nowrap;
margin-bottom: 50px;
}
.o-contact-content .contact-options .left,
.o-contact-content .contact-options .right {
display: inline-block;
width: 50%;
vertical-align: top;
}
@media screen and (max-width: 899px) {
.o-contact-content .contact-options .left,
.o-contact-content .contact-options .right {
width: 49%;
}
}
@media screen and (max-width: 611px) {
.o-contact-content .contact-options .left,
.o-contact-content .contact-options .right {
display: block;
width: 100%;
}
}
.o-contact-content .contact-options .left svg,
.o-contact-content .contact-options .right svg {
margin-right: 40px;
}
@media screen and (max-width: 1279px) {
.o-contact-content .contact-options .left svg,
.o-contact-content .contact-options .right svg {
margin-right: 20px;
}
}
.o-contact-content .contact-options .left a,
.o-contact-content .contact-options .right a {
text-decoration: none;
display: block;
margin: 0 0 25px 0;
font-size: 1.125rem;
line-height: 1.2222222222;
color: white;
}
.o-contact-content .contact-options .left p,
.o-contact-content .contact-options .right p {
color: white;
font-size: 1.125rem;
line-height: 1.2222222222;
margin: 0 0 10px 0;
}
.o-contact-content .contact-options .left .company-details,
.o-contact-content .contact-options .right .company-details {
display: inline-block;
}
.o-contact-content .contact-options .right svg {
vertical-align: top;
}
.o-contact-content #map {
width: 100%;
height: calc(100% - 145px);
border-radius: 20px;
box-shadow: 6px 6px 25px 0 rgba(104, 153, 252, 0.1);
}
@media screen and (max-width: 899px) {
.o-contact-content #map {
height: 540px;
}
}
.o-contact-content #map > div:first-child {
height: 105% !important;
}
.o-contact-content .o-block:first-of-type {
padding-top: 140px;
}
.o-cookie-bar {
z-index: -1;
position: fixed;
bottom: 0;
left: 0;
justify-content: flex-start;
align-items: center;
height: 64px;
width: 100%;
background-color: #1F2024;
box-shadow: 0 -4px 6px 0 rgba(240, 242, 245, 0.25);
transition: transform 600ms ease-in-out;
}
body:not(.is-cookies-accepted) .o-cookie-bar {
z-index: 9999;
display: flex;
}
.o-cookie-bar.is-transitioning-out {
display: flex;
z-index: -1;
pointer-events: none;
transform: translateY(100%);
}
.o-cookie-bar__main {
display: flex;
justify-content: center;
align-items: center;
}
@media screen and (max-width: 374px) {
.o-cookie-bar__main {
transform: scale(0.9);
}
}
.o-cookie-bar__text {
margin: 0;
color: #F0F2F5;
}
@media screen and (max-width: 374px) {
.o-cookie-bar__text {
font-size: 0.875rem;
line-height: 1.1428571429;
}
}
.o-cookie-bar__link {
color: inherit;
transition: color 300ms;
}
.o-cookie-bar__link:hover {
color: #D7DBE0;
}
.o-cookie-bar__button {
flex: none;
margin-left: 40px;
}
@media screen and (max-width: 839px) {
.o-cookie-bar__button {
margin-left: 16px;
}
}
.o-double-image {
margin: -1px;
text-align: center;
}
@media screen and (min-width: 1100px) {
.o-double-image {
display: flex;
}
}
.o-double-image__picture {
display: block;
margin: 1px;
order: 1;
}
@media screen and (min-width: 1100px) {
.o-double-image__picture {
width: 50%;
display: flex;
justify-content: flex-end;
}
.o-double-image__picture:last-child {
justify-content: flex-start;
}
}
.o-double-image__img {
object-fit: cover;
max-height: 85vh;
}
.o-double-image--is-reversed .o-double-image__picture {
justify-content: flex-start;
}
.o-double-image--is-reversed .o-double-image__picture:last-child {
order: 0;
justify-content: flex-end;
}
.o-double-text {
position: relative;
}
@media screen and (min-width: 840px) {
.o-double-text {
display: flex;
justify-content: space-between;
}
}
.o-double-text__column + .o-double-text__column {
margin-top: 40px;
}
@media screen and (min-width: 840px) {
.o-double-text__column {
margin-top: 0 !important;
width: 45.8333333333%;
}
}
.o-footer {
z-index: 20;
background: linear-gradient(174deg, #1D2840 10vw, #172030 100%);
color: #8F9BB3;
}
.o-footer__main {
margin-left: auto;
margin-right: auto;
max-width: 1440px;
width: calc((100% / 14) * 12);
}
@media screen and (max-width: 1679px) {
.o-footer__main {
padding-top: 1.5625vw;
padding-bottom: 6.25vw;
}
}
@media screen and (min-width: 1680px) {
.o-footer__main {
padding-top: 30px;
padding-bottom: 120px;
}
}
.o-footer__brand {
display: inline-block;
transition: opacity 200ms linear;
}
.o-footer__brand:hover {
opacity: 0.5;
}
@media screen and (max-width: 1679px) {
.o-footer__columns {
margin-top: 3.125vw;
}
}
@media screen and (min-width: 1680px) {
.o-footer__columns {
margin-top: 60px;
}
}
@media screen and (min-width: 1080px) {
.o-footer__columns {
display: flex;
}
}
.o-footer__logo {
width: 160px;
max-height: 60px;
}
@media screen and (min-width: 700px) {
.o-footer__logo {
width: 220px;
max-height: 80px;
}
}
.o-footer__info > * + * {
margin-top: 32px;
}
@media screen and (min-width: 1080px) {
.o-footer__info {
width: 33.3333333333%;
}
}
.o-footer__contact {
padding-left: 72px;
}
@media screen and (min-width: 700px) {
.o-footer__contact {
padding-left: 100px;
}
}
@media screen and (max-width: 639px) {
.o-footer__nav > * {
margin-top: 40px;
}
}
@media screen and (min-width: 640px) and (max-width: 1079px) {
.o-footer__nav {
display: flex;
align-items: flex-start;
flex-wrap: wrap;
}
.o-footer__nav > * {
margin-top: 40px;
width: calc((100% - 40px) / 2);
}
}
@media screen and (max-width: 699px) {
.o-footer__nav {
padding-left: 72px;
}
}
@media screen and (min-width: 700px) and (max-width: 1079px) {
.o-footer__nav {
padding-left: 100px;
}
}
@media screen and (min-width: 1080px) {
.o-footer__nav {
display: flex;
margin-left: 8.3333333333%;
width: 58.3333333333%;
}
}
.o-footer__list {
list-style: none;
margin-left: 0;
}
@media screen and (min-width: 1080px) {
.o-footer__list {
width: 42.8571428571%;
}
.o-footer__list:nth-child(n+2) {
margin-left: 14.2857142857%;
}
}
.o-footer__item--heading {
color: white;
margin-bottom: 40px;
font-size: 1.25rem;
line-height: 1.2;
}
.o-footer__heading-link {
text-decoration: none;
}
.o-footer__link {
display: inline-block;
position: relative;
z-index: 0;
text-decoration: none;
line-height: 2.25;
cursor: pointer;
transition: color 250ms;
}
.o-footer__link:hover {
color: #7AD3FF;
}
.o-footer__link:focus {
outline-color: #0076FF;
}
.o-footer__social {
display: flex;
list-style: none;
margin: 32px 0 0;
}
.o-footer__channel {
display: flex;
justify-content: center;
align-items: center;
width: 24px;
height: 24px;
margin-right: 16px;
}
.o-footer__icon {
flex: auto;
display: block;
height: 100%;
background-repeat: no-repeat;
background-position: center;
transition-property: opacity;
transition-duration: 300ms;
}
.facebook .o-footer__icon {
background-image: url("/img/social/facebook.svg");
height: 21px;
}
.instagram .o-footer__icon {
background-image: url("/img/social/instagram.svg");
}
.twitter .o-footer__icon {
background-image: url("/img/social/twitter.svg");
height: 20px;
}
.linkedin .o-footer__icon {
background-image: url("/img/social/linkedin.svg");
height: 18px;
}
.o-footer__icon:hover {
opacity: 0.5;
}
.o-footer__icon:focus {
outline-color: #0076FF;
}
.o-header {
z-index: 50;
position: relative;
padding: 32px 0;
margin-bottom: -100%;
background: linear-gradient(180deg, rgba(26, 34, 51, 0.8) 0%, rgba(26, 34, 51, 0.4) 60%, rgba(26, 34, 51, 0) 100%);
}
.o-header.is-sticky {
opacity: 0;
position: fixed;
z-index: 50;
top: 0;
left: 0;
width: 100%;
padding-top: 16px;
padding-bottom: 16px;
box-shadow: 0 -5px 30px black;
background-color: #1a2233;
transform: translateY(-100%);
transition-property: transform, opacity;
transition-duration: 300ms;
transition-delay: 0ms, 300ms;
transition-timing-function: cubic-bezier(0.4, 0, 0.6, 1);
}
@media screen and (min-width: 1360px) {
.o-header.is-sticky {
display: none;
}
}
.is-sticky-header-visible .o-header.is-sticky {
opacity: 1;
transform: none;
transition-delay: 0ms;
}
.o-header__main {
margin-left: auto;
margin-right: auto;
max-width: 1440px;
width: calc((100% / 14) * 12);
display: flex;
justify-content: space-between;
align-items: center;
position: relative;
}
.o-header__logo {
flex: none;
}
.o-header__logo:focus {
outline-offset: 2px;
outline-color: #0076FF;
}
.o-header__img {
width: 160px;
max-height: 60px;
}
@media screen and (min-width: 700px) {
.o-header__img {
width: 220px;
max-height: 80px;
}
}
.is-sticky .o-header__img {
width: 140px !important;
max-height: 50px !important;
}
.o-header__nav {
width: 100%;
margin-left: 48px;
}
@media screen and (max-width: 1359px) {
.o-header__nav {
display: none;
}
}
.o-header__language {
margin-left: 16px;
}
@media screen and (max-width: 1359px) {
.o-header__language {
margin-left: auto;
}
}
.o-header__toggle {
margin-left: 40px;
}
.o-hero {
position: relative;
margin-bottom: 100px;
overflow: hidden;
}
.o-hero__main {
padding: 160px 0 1px;
background-color: #1a2233;
}
.o-hero__grid {
position: relative;
z-index: 1;
}
@media screen and (max-width: 939px) {
.o-hero__grid > * + * {
margin-top: 60px;
}
}
@media screen and (min-width: 940px) {
.o-hero__grid {
display: flex;
justify-content: space-between;
align-items: center;
}
.o-hero__grid > * {
width: 50%;
}
.o-hero__grid.no-image .o-hero__text {
width: 70%;
}
.o-hero__grid.no-image .o-hero__image {
width: 30%;
}
}
@media screen and (min-width: 940px) {
.o-hero__text {
padding-right: 3.3333333333%;
}
}
.o-hero__text.additional-padding {
padding-top: 20px;
}
.o-hero__text--service {
position: relative;
}
@media screen and (min-width: 940px) {
.o-hero__text--service {
width: 83.3333333333%;
max-width: 900px;
}
}
.o-hero__top-shape {
position: absolute;
left: 50vw;
top: 0;
height: 78%;
}
@media screen and (max-width: 939px) {
.o-hero__top-shape {
display: none;
}
}
.o-hero__top-shape img {
height: 100%;
max-width: none;
}
.o-hero__placeholder {
display: block;
height: 120px;
width: 100%;
background-color: #1a2233;
}
.o-hero__bottom-shape {
display: flex;
align-items: flex-start;
width: 100%;
color: #1a2233;
}
.o-hero__bottom-shape svg {
width: 100%;
}
.o-map {
position: relative;
width: 100%;
height: 0;
padding-bottom: 85%;
}
.o-map__inner {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
background-color: #fafcff;
}
.o-overlay-menu {
z-index: 100;
display: flex;
flex-direction: column;
position: fixed;
height: 100%;
width: 100%;
right: 0;
top: 0;
pointer-events: none;
opacity: 0;
transform: translateY(-400px);
transition-property: transform, opacity;
transition-duration: 450ms;
transition-timing-function: cubic-bezier(0.8, 0.2, 0.2, 0.8);
transition-delay: 0ms, 450ms;
}
.is-overlay-menu-active .o-overlay-menu {
pointer-events: all;
opacity: 1;
transform: none;
transition-delay: 100ms, 0ms;
}
.o-overlay-menu::before {
display: block;
content: "";
position: absolute;
z-index: -1;
left: 0;
top: 0;
height: 200vh;
width: 120vw;
background: rgba(0, 0, 0, 0.6);
pointer-events: none;
opacity: 0;
transition-property: opacity;
transition-duration: 100ms;
transition-delay: 450ms;
transition-timing-function: linear;
}
.is-overlay-menu-active .o-overlay-menu::before {
opacity: 1;
transition-delay: 0ms;
}
.o-overlay-menu__main {
background-color: #1a2233;
}
.o-overlay-menu__shape {
display: flex;
justify-content: center;
align-items: flex-start;
color: #1a2233;
}
.o-overlay-menu__shape svg {
width: 100%;
}
.o-overlay-menu__bar {
margin-left: auto;
margin-right: auto;
max-width: 1440px;
width: calc((100% / 14) * 12);
display: flex;
justify-content: space-between;
align-items: center;
padding-top: 32px;
padding-bottom: 32px;
}
.o-overlay-menu__img {
width: 220px;
max-height: 80px;
}
.o-overlay-menu__toggle {
transform: rotate(-0.5turn);
transition: transform 600ms ease-out;
transition-delay: 200ms;
}
.is-overlay-menu-active .o-overlay-menu__toggle {
transform: none;
}
.o-overlay-menu__nav {
margin-top: 8px;
}
@media screen and (min-width: 1360px) {
.o-overlay-menu__nav {
margin-left: auto;
margin-right: auto;
max-width: 1440px;
width: calc((100% / 14) * 12);
}
}
.o-overlay-menu__list {
margin-left: 0;
list-style: none;
}
@media screen and (max-width: 1359px) {
.o-overlay-menu__item:not(.o-overlay-menu__item--advice) + .o-overlay-menu__item:not(.o-overlay-menu__item--advice) {
border-top: 1px solid rgba(255, 255, 255, 0.4);
}
}
.o-overlay-menu__item--advice {
margin: 20px 7.1428571429% 0;
opacity: 0;
transform: translateX(-8.3333333333%) scale(1.2);
transform-origin: top left;
transition: all 300ms ease-in;
transition-delay: 0ms;
}
.is-overlay-menu-active .o-overlay-menu__item--advice {
opacity: 1;
transform: none;
transition: all 300ms ease-out 800ms;
}
@media screen and (min-width: 1100px) {
.o-overlay-menu__item--advice {
margin-top: 40px;
}
}
.o-overlay-menu__link {
position: relative;
z-index: 2;
font-size: 1.25rem;
line-height: 1.6;
display: block;
padding: 12px 7.1428571429%;
color: white;
text-decoration: none;
opacity: 0;
transform: translateX(-8.3333333333%) scale(1.2);
transform-origin: top left;
transition: all 300ms ease-in;
transition-delay: 0ms;
}
.o-overlay-menu__link:after {
content: "";
position: absolute;
z-index: -1;
left: 0;
top: 0;
width: 100%;
height: 100%;
}
.o-overlay-menu__link:hover:after {
background-color: #151b29;
}
.o-overlay-menu__link:focus {
outline-offset: 2px;
outline-color: white;
}
.is-overlay-menu-active .o-overlay-menu__link {
opacity: 1;
transform: none;
transition: all 200ms ease-out;
}
.is-overlay-menu-active .o-overlay-menu__item:nth-child(1) .o-overlay-menu__link {
transition-delay: 495ms;
}
.is-overlay-menu-active .o-overlay-menu__item:nth-child(2) .o-overlay-menu__link {
transition-delay: 540ms;
}
.is-overlay-menu-active .o-overlay-menu__item:nth-child(3) .o-overlay-menu__link {
transition-delay: 585ms;
}
.is-overlay-menu-active .o-overlay-menu__item:nth-child(4) .o-overlay-menu__link {
transition-delay: 630ms;
}
.is-overlay-menu-active .o-overlay-menu__item:nth-child(5) .o-overlay-menu__link {
transition-delay: 675ms;
}
.is-overlay-menu-active .o-overlay-menu__item:nth-child(6) .o-overlay-menu__link {
transition-delay: 720ms;
}
.is-overlay-menu-active .o-overlay-menu__item:nth-child(7) .o-overlay-menu__link {
transition-delay: 765ms;
}
.is-overlay-menu-active .o-overlay-menu__item:nth-child(8) .o-overlay-menu__link {
transition-delay: 810ms;
}
.is-overlay-menu-active .o-overlay-menu__item:nth-child(9) .o-overlay-menu__link {
transition-delay: 855ms;
}
.is-overlay-menu-active .o-overlay-menu__item:nth-child(10) .o-overlay-menu__link {
transition-delay: 900ms;
}
.is-active .o-overlay-menu__link {
color: #699BFF;
}
/* In the [$o-partners] map we define some settings:
*
* 'columns'.key = number of items in a row
* 'columns'.value = breakpoint size from which we want that number of items
*/
@media screen and (min-width: 320px) {
.o-partners__list {
display: flex;
flex-wrap: wrap;
margin: -4%;
}
}
.o-partners__item {
max-width: 444px;
margin: 4% auto;
list-style-type: none;
}
@media screen and (min-width: 320px) {
.o-partners__item {
flex: none;
margin: 4%;
flex-basis: calc(50% - (4% * 2));
}
}
@media screen and (min-width: 620px) {
.o-partners__item {
flex-basis: calc(33.3333333333% - (4% * 2));
}
}
@media screen and (min-width: 860px) {
.o-partners__item {
flex-basis: calc(25% - (4% * 2));
}
}
@media screen and (min-width: 1080px) {
.o-partners__item {
flex-basis: calc(20% - (4% * 2));
}
}
.o-partners__logo {
display: flex;
align-items: center;
height: 100%;
transition: opacity 150ms linear;
}
.o-partners__logo:hover {
opacity: 0.75;
}
.o-partners__figure {
display: flex;
align-items: center;
}
.o-partners__img {
display: block;
width: 100%;
object-fit: contain;
}
.o-subfooter {
z-index: 10;
background-color: #151C28;
color: #8F9BB3;
}
.o-subfooter__main {
margin-left: auto;
margin-right: auto;
max-width: 1440px;
width: calc((100% / 14) * 12);
font-size: 0.9375rem;
line-height: 1.6;
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
align-items: center;
padding-top: 8px;
padding-bottom: 8px;
}
.o-subfooter__copyright {
display: flex;
flex-wrap: wrap;
margin-top: 8px;
margin-bottom: 8px;
margin-right: 32px;
}
.o-subfooter__nav {
margin-right: auto;
margin-top: 8px;
margin-bottom: 8px;
}
@media screen and (min-width: 1000px) {
.o-subfooter__nav {
margin-left: auto;
}
}
.o-subfooter__list {
display: flex;
flex-wrap: wrap;
list-style-type: none;
margin: 0;
}
.o-subfooter__item {
margin-right: 32px;
white-space: nowrap;
}
.o-subfooter__link {
color: #8F9BB3;
text-decoration: none;
transition: color 200ms;
}
.o-subfooter__link:hover {
color: white;
}
.o-subfooter__link:focus {
outline-color: #0076FF;
}
.o-subfooter__trademark {
margin-top: 8px;
margin-bottom: 8px;
}
/*
* On small screens the content is stacked, without controls
* When the screen is wide enough we add the controls
* and show only the chosen 'slide content'
*/
.o-tabs {
margin-left: auto;
margin-right: auto;
max-width: 1440px;
width: calc((100% / 14) * 12);
}
@media screen and (max-width: 839px) {
.o-tabs__controls {
display: none;
}
}
@media screen and (min-width: 840px) {
.o-tabs__controls {
display: flex;
align-items: center;
}
}
.o-tabs__button {
font-size: 1.125rem;
line-height: 1.6666666667;
border: none;
padding: 16px 32px;
min-height: 48px;
color: #F0F2F5;
cursor: pointer;
transition: all 200ms linear;
}
.o-tabs__button:hover {
color: #F0F2F5;
background-color: #F0F2F5;
}
.o-tabs__button.is-active {
color: #F0F2F5;
background-color: #D7DBE0;
}
.o-tabs__button:focus {
outline: none;
border-color: #0076FF;
}
.o-tabs__button:focus:not(.is-active):not(:active) {
box-shadow: 0 0 5px 3px rgba(0, 118, 255, 0.1);
}
@media screen and (min-width: 840px) {
.o-tabs__container {
display: -ms-grid;
display: grid;
-ms-grid-columns: 1fr;
grid-template-columns: 1fr;
-ms-grid-rows: 1fr;
grid-template-rows: 1fr;
padding: 48px 32px;
background-color: #D7DBE0;
}
}
@media screen and (max-width: 839px) {
.o-tabs__content + .o-tabs__content {
margin-top: 40px;
}
}
@media screen and (min-width: 840px) {
.o-tabs__content {
-ms-grid-row: 1;
grid-row: 1;
-ms-grid-column: 1;
grid-column: 1;
opacity: 0;
z-index: 0;
pointer-events: none;
transition: opacity 200ms linear;
}
.o-tabs__content.is-active {
opacity: 1;
z-index: 1;
pointer-events: all;
}
}
.o-tabs__label {
font-size: 0.875rem;
line-height: 1.1428571429;
display: block;
padding-bottom: 8px;
text-transform: uppercase;
color: #F0F2F5;
}
@media screen and (min-width: 840px) {
.o-tabs__label {
display: none;
}
}
.o-text-image {
margin-left: auto;
margin-right: auto;
max-width: 1440px;
width: calc((100% / 14) * 12);
position: relative;
}
@media screen and (min-width: 840px) {
.o-text-image {
display: flex;
justify-content: space-between;
}
}
.o-text-image__description {
margin-bottom: 40px;
}
.o-text-image__description p, .o-text-image__description ul {
max-width: 480px;
}
@media screen and (min-width: 840px) {
.o-text-image__description {
width: 45.8333333333%;
margin-bottom: 0;
}
}
@media screen and (min-width: 840px) {
.o-text-image__visual {
width: 50%;
}
}
@media screen and (min-width: 840px) {
.o-text-image--is-reversed {
flex-direction: row-reverse;
}
}
/* 7 - Templates
* Override styling for a specific template
=========================================================== */
/** ==========================================================================
* Templates
* =========================================================================*/
#contact .o-hero__top-shape {
height: 50%;
}
#contact .o-contact-content {
margin-top: -400px;
}
#contact .o-hero__main {
padding-bottom: 240px;
}
@media screen and (min-width: 1500px) {
#contact .o-hero__main {
padding-bottom: 160px;
}
}
#method .s-text h3 {
color: #699BFF;
font-size: 1.125rem;
line-height: 1.1666666667;
font-weight: 400;
}
#method .s-text h2 {
margin-top: 4px !important;
}
#posts .o-hero__text {
padding-bottom: 40px;
}
#posts .o-blog {
margin-top: -40px;
}
@media screen and (min-width: 600px) and (max-width: 1099px) {
#posts .o-blog {
margin-top: -22.5vw;
}
}
@media screen and (min-width: 1100px) and (max-width: 2199px) {
#posts .o-blog {
margin-top: -17.5vw;
}
}
@media screen and (min-width: 2200px) {
#posts .o-blog {
margin-top: -15vw;
}
}
/* 8 - SCOPES
* Elements and classes that are scoped by a parent class
=========================================================== */
/**
* All text elements that can be added by the user through a CMS
*/
.s-text h1:not(.c-service-heading) {
font-size: 2.625rem;
line-height: 1.2380952381;
text-transform: uppercase;
}
.s-text > * + * {
margin-top: 32px;
}
.s-text > :first-child {
margin-top: 0 !important;
}
.s-text > * + [class*=c-] {
margin-top: 40px;
}
.s-text > ul:not([class]) {
list-style: none;
}
.s-text > ul:not([class]) > li {
position: relative;
margin-left: -1.125em;
padding-left: 1.125em;
}
.s-text > ul:not([class]) > li::before {
font-size: 1.5rem;
line-height: 1.3333333333;
content: "\2022";
position: absolute;
top: -4px;
left: 0;
}
.s-text > ol:not([class]) {
list-style: none;
counter-reset: ol-counter;
}
.s-text > ol:not([class]) > li {
counter-increment: ol-counter;
position: relative;
margin-left: -1.125em;
padding-left: 1.8em;
}
.s-text > ol:not([class]) > li::before {
content: counter(ol-counter) ". ";
position: absolute;
top: 0;
left: 0;
width: 1.275em;
text-align: right;
}
.s-text--on-dark {
color: rgba(255, 255, 255, 0.6);
}
.s-text--on-dark h1 {
color: white;
}
.s-text--on-dark h2, .s-text--on-dark h3 {
color: rgba(255, 255, 255, 0.6);
}
/* 9 - LIBRARIES
* Styling we implement from third parties
=========================================================== */
/* 10 - UTILITIES
* High-specificity, very explicit selectors.
* Overrides and helper classes.
=========================================================== */
/** =====================================================================================
* Color
===================================================================================== */
/**
* Here we print out all our helper classes for our defined colors
* Based on these articles:
* - http://erskinedesign.com/blog/friendlier-colour-names-sass-maps/
* - https://blog.atechmedia.com/css-for-multiple-themes/
* Output is in the form of:
.u-color-primary {
color: #bada55;
}
.u-bg-neutral--900 {
background-color: #decaff;
}
*/
.u-color-primary--300 {
color: #699BFF;
}
.u-bg-primary--300 {
background-color: #699BFF;
}
.u-color-primary--400 {
color: #2F6CE6;
}
.u-bg-primary--400 {
background-color: #2F6CE6;
}
.u-color-primary--800 {
color: #1a2233;
}
.u-bg-primary--800 {
background-color: #1a2233;
}
.u-color-primary--900 {
color: #151C28;
}
.u-bg-primary--900 {
background-color: #151C28;
}
.u-color-secondary--20 {
color: #fafcff;
}
.u-bg-secondary--20 {
background-color: #fafcff;
}
.u-color-secondary--80 {
color: #e4f6ff;
}
.u-bg-secondary--80 {
background-color: #e4f6ff;
}
.u-color-secondary--500 {
color: #7AD3FF;
}
.u-bg-secondary--500 {
background-color: #7AD3FF;
}
.u-color-secondary--700 {
color: #2EA8E6;
}
.u-bg-secondary--700 {
background-color: #2EA8E6;
}
.u-color-neutral--100 {
color: #F0F2F5;
}
.u-bg-neutral--100 {
background-color: #F0F2F5;
}
.u-color-neutral--200 {
color: #D7DBE0;
}
.u-bg-neutral--200 {
background-color: #D7DBE0;
}
.u-color-neutral--900 {
color: #1F2024;
}
.u-bg-neutral--900 {
background-color: #1F2024;
}
.u-color-text--400 {
color: #8F9BB3;
}
.u-bg-text--400 {
background-color: #8F9BB3;
}
.u-color-text--600 {
color: #475266;
}
.u-bg-text--600 {
background-color: #475266;
}
.u-color-feedback--action {
color: #0076FF;
}
.u-bg-feedback--action {
background-color: #0076FF;
}
.u-color-feedback--negative {
color: #cf3e3e;
}
.u-bg-feedback--negative {
background-color: #cf3e3e;
}
.u-color-feedback--positive {
color: #3ecf8e;
}
.u-bg-feedback--positive {
background-color: #3ecf8e;
}
.u-placeholder-image {
height: 100% !important;
width: 100% !important;
object-fit: cover !important;
}
.u-text-align-center {
text-align: center !important;
}
.u-list {
list-style: none;
margin-left: 0;
}
.u-visually-hidden {
position: absolute;
width: 1px;
height: 1px;
margin: -1px;
border: 0;
padding: 0;
white-space: nowrap;
-webkit-clip-path: inset(100%);
clip-path: inset(100%);
overflow: hidden;
}
.u-hidden {
display: none !important;
}
@media screen and (max-width: 839px) {
.u-hidden\@s-down {
display: none !important;
}
}
@media screen and (min-width: 840px) {
.u-hidden\@m-up {
display: none !important;
}
}
@media screen and (max-width: 1151px) {
.u-hidden\@m-down {
display: none !important;
}
}
@media screen and (min-width: 1152px) {
.u-hidden\@l-up {
display: none !important;
}
}
@media screen and (max-width: 1679px) {
.u-hidden\@l-down {
display: none !important;
}
}
/*
* If you need to make a quick fix, you can do it here.
* Later when you have the time, you can move the fix into the correct place in the structure
*/
.u-spacing-m0 {
margin: 0px !important;
}
.u-spacing-mt0 {
margin-top: 0px !important;
}
.u-spacing-mr0 {
margin-right: 0px !important;
}
.u-spacing-mb0 {
margin-bottom: 0px !important;
}
.u-spacing-ml0 {
margin-left: 0px !important;
}
.u-spacing-p0 {
padding: 0px !important;
}
.u-spacing-pt0 {
padding-top: 0px !important;
}
.u-spacing-pr0 {
padding-right: 0px !important;
}
.u-spacing-pb0 {
padding-bottom: 0px !important;
}
.u-spacing-pl0 {
padding-left: 0px !important;
}
.u-spacing-m1 {
margin: 8px !important;
}
.u-spacing-mt1 {
margin-top: 8px !important;
}
.u-spacing-mr1 {
margin-right: 8px !important;
}
.u-spacing-mb1 {
margin-bottom: 8px !important;
}
.u-spacing-ml1 {
margin-left: 8px !important;
}
.u-spacing-p1 {
padding: 8px !important;
}
.u-spacing-pt1 {
padding-top: 8px !important;
}
.u-spacing-pr1 {
padding-right: 8px !important;
}
.u-spacing-pb1 {
padding-bottom: 8px !important;
}
.u-spacing-pl1 {
padding-left: 8px !important;
}
.u-spacing-m2 {
margin: 16px !important;
}
.u-spacing-mt2 {
margin-top: 16px !important;
}
.u-spacing-mr2 {
margin-right: 16px !important;
}
.u-spacing-mb2 {
margin-bottom: 16px !important;
}
.u-spacing-ml2 {
margin-left: 16px !important;
}
.u-spacing-p2 {
padding: 16px !important;
}
.u-spacing-pt2 {
padding-top: 16px !important;
}
.u-spacing-pr2 {
padding-right: 16px !important;
}
.u-spacing-pb2 {
padding-bottom: 16px !important;
}
.u-spacing-pl2 {
padding-left: 16px !important;
}
.u-spacing-m3 {
margin: 24px !important;
}
.u-spacing-mt3 {
margin-top: 24px !important;
}
.u-spacing-mr3 {
margin-right: 24px !important;
}
.u-spacing-mb3 {
margin-bottom: 24px !important;
}
.u-spacing-ml3 {
margin-left: 24px !important;
}
.u-spacing-p3 {
padding: 24px !important;
}
.u-spacing-pt3 {
padding-top: 24px !important;
}
.u-spacing-pr3 {
padding-right: 24px !important;
}
.u-spacing-pb3 {
padding-bottom: 24px !important;
}
.u-spacing-pl3 {
padding-left: 24px !important;
}
.u-spacing-m4 {
margin: 32px !important;
}
.u-spacing-mt4 {
margin-top: 32px !important;
}
.u-spacing-mr4 {
margin-right: 32px !important;
}
.u-spacing-mb4 {
margin-bottom: 32px !important;
}
.u-spacing-ml4 {
margin-left: 32px !important;
}
.u-spacing-p4 {
padding: 32px !important;
}
.u-spacing-pt4 {
padding-top: 32px !important;
}
.u-spacing-pr4 {
padding-right: 32px !important;
}
.u-spacing-pb4 {
padding-bottom: 32px !important;
}
.u-spacing-pl4 {
padding-left: 32px !important;
}
.u-spacing-m5 {
margin: 40px !important;
}
.u-spacing-mt5 {
margin-top: 40px !important;
}
.u-spacing-mr5 {
margin-right: 40px !important;
}
.u-spacing-mb5 {
margin-bottom: 40px !important;
}
.u-spacing-ml5 {
margin-left: 40px !important;
}
.u-spacing-p5 {
padding: 40px !important;
}
.u-spacing-pt5 {
padding-top: 40px !important;
}
.u-spacing-pr5 {
padding-right: 40px !important;
}
.u-spacing-pb5 {
padding-bottom: 40px !important;
}
.u-spacing-pl5 {
padding-left: 40px !important;
}
.u-spacing-m6 {
margin: 48px !important;
}
.u-spacing-mt6 {
margin-top: 48px !important;
}
.u-spacing-mr6 {
margin-right: 48px !important;
}
.u-spacing-mb6 {
margin-bottom: 48px !important;
}
.u-spacing-ml6 {
margin-left: 48px !important;
}
.u-spacing-p6 {
padding: 48px !important;
}
.u-spacing-pt6 {
padding-top: 48px !important;
}
.u-spacing-pr6 {
padding-right: 48px !important;
}
.u-spacing-pb6 {
padding-bottom: 48px !important;
}
.u-spacing-pl6 {
padding-left: 48px !important;
}
.u-spacing-m7 {
margin: 56px !important;
}
.u-spacing-mt7 {
margin-top: 56px !important;
}
.u-spacing-mr7 {
margin-right: 56px !important;
}
.u-spacing-mb7 {
margin-bottom: 56px !important;
}
.u-spacing-ml7 {
margin-left: 56px !important;
}
.u-spacing-p7 {
padding: 56px !important;
}
.u-spacing-pt7 {
padding-top: 56px !important;
}
.u-spacing-pr7 {
padding-right: 56px !important;
}
.u-spacing-pb7 {
padding-bottom: 56px !important;
}
.u-spacing-pl7 {
padding-left: 56px !important;
}
.u-spacing-m8 {
margin: 64px !important;
}
.u-spacing-mt8 {
margin-top: 64px !important;
}
.u-spacing-mr8 {
margin-right: 64px !important;
}
.u-spacing-mb8 {
margin-bottom: 64px !important;
}
.u-spacing-ml8 {
margin-left: 64px !important;
}
.u-spacing-p8 {
padding: 64px !important;
}
.u-spacing-pt8 {
padding-top: 64px !important;
}
.u-spacing-pr8 {
padding-right: 64px !important;
}
.u-spacing-pb8 {
padding-bottom: 64px !important;
}
.u-spacing-pl8 {
padding-left: 64px !important;
}
.u-spacing-m9 {
margin: 72px !important;
}
.u-spacing-mt9 {
margin-top: 72px !important;
}
.u-spacing-mr9 {
margin-right: 72px !important;
}
.u-spacing-mb9 {
margin-bottom: 72px !important;
}
.u-spacing-ml9 {
margin-left: 72px !important;
}
.u-spacing-p9 {
padding: 72px !important;
}
.u-spacing-pt9 {
padding-top: 72px !important;
}
.u-spacing-pr9 {
padding-right: 72px !important;
}
.u-spacing-pb9 {
padding-bottom: 72px !important;
}
.u-spacing-pl9 {
padding-left: 72px !important;
}
.u-spacing-m10 {
margin: 80px !important;
}
.u-spacing-mt10 {
margin-top: 80px !important;
}
.u-spacing-mr10 {
margin-right: 80px !important;
}
.u-spacing-mb10 {
margin-bottom: 80px !important;
}
.u-spacing-ml10 {
margin-left: 80px !important;
}
.u-spacing-p10 {
padding: 80px !important;
}
.u-spacing-pt10 {
padding-top: 80px !important;
}
.u-spacing-pr10 {
padding-right: 80px !important;
}
.u-spacing-pb10 {
padding-bottom: 80px !important;
}
.u-spacing-pl10 {
padding-left: 80px !important;
}
.u-spacing-m11 {
margin: 88px !important;
}
.u-spacing-mt11 {
margin-top: 88px !important;
}
.u-spacing-mr11 {
margin-right: 88px !important;
}
.u-spacing-mb11 {
margin-bottom: 88px !important;
}
.u-spacing-ml11 {
margin-left: 88px !important;
}
.u-spacing-p11 {
padding: 88px !important;
}
.u-spacing-pt11 {
padding-top: 88px !important;
}
.u-spacing-pr11 {
padding-right: 88px !important;
}
.u-spacing-pb11 {
padding-bottom: 88px !important;
}
.u-spacing-pl11 {
padding-left: 88px !important;
}
.u-spacing-m12 {
margin: 96px !important;
}
.u-spacing-mt12 {
margin-top: 96px !important;
}
.u-spacing-mr12 {
margin-right: 96px !important;
}
.u-spacing-mb12 {
margin-bottom: 96px !important;
}
.u-spacing-ml12 {
margin-left: 96px !important;
}
.u-spacing-p12 {
padding: 96px !important;
}
.u-spacing-pt12 {
padding-top: 96px !important;
}
.u-spacing-pr12 {
padding-right: 96px !important;
}
.u-spacing-pb12 {
padding-bottom: 96px !important;
}
.u-spacing-pl12 {
padding-left: 96px !important;
}
.u-spacing-m13 {
margin: 104px !important;
}
.u-spacing-mt13 {
margin-top: 104px !important;
}
.u-spacing-mr13 {
margin-right: 104px !important;
}
.u-spacing-mb13 {
margin-bottom: 104px !important;
}
.u-spacing-ml13 {
margin-left: 104px !important;
}
.u-spacing-p13 {
padding: 104px !important;
}
.u-spacing-pt13 {
padding-top: 104px !important;
}
.u-spacing-pr13 {
padding-right: 104px !important;
}
.u-spacing-pb13 {
padding-bottom: 104px !important;
}
.u-spacing-pl13 {
padding-left: 104px !important;
}
/* ==========================================================================
* This grid can be turned on and off when you want to check
* if everything is nice in place.
* Set flag 'show_grid' to true in site.php
* ========================================================================== */
.u-visible-grid {
z-index: 10000;
margin-left: auto;
margin-right: auto;
max-width: 1440px;
width: calc((100% / 14) * 12);
position: fixed;
left: 0;
right: 0;
pointer-events: none;
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.u-visible-grid {
padding: 0;
}
}
.u-visible-grid__main {
height: 100vh;
background: repeating-linear-gradient(to right, rgba(38, 77, 217, 0.2), rgba(38, 77, 217, 0.2) 1px, transparent 1px, transparent 8.3333333333%), repeating-linear-gradient(to left, rgba(38, 77, 217, 0.2), rgba(38, 77, 217, 0.2) 1px, transparent 1px, transparent 100vw);
}
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy9zdHlsZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzEtU2V0dGluZ3MvX3NldHRpbmdzLmNvbG9ycy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzEtU2V0dGluZ3MvX3NldHRpbmdzLmNvbmZpZy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzEtU2V0dGluZ3MvX3NldHRpbmdzLnR5cG9ncmFwaHkuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy8xLVNldHRpbmdzL19zZXR0aW5ncy5icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzItVG9vbHMvX3Rvb2xzLmNvbHVtbi5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzItVG9vbHMvX3Rvb2xzLmZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvMi1Ub29scy9fdG9vbHMubWVkaWFRdWVyaWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvMi1Ub29scy9fdG9vbHMudG9vbGJveC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzItVG9vbHMvX3Rvb2xzLnppbmRleC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzMtRWxlbWVudHMvX2VsZW1lbnRzLmJhc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy8zLUVsZW1lbnRzL19lbGVtZW50cy5oZWFkaW5ncy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzMtRWxlbWVudHMvX2VsZW1lbnRzLmxpc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNC1MYXlvdXRzL19sYXlvdXRzLmJsb2NrLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNC1MYXlvdXRzL19sYXlvdXRzLmNvbnRhaW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy80LUxheW91dHMvX2xheW91dHMuZGl2aWRlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNC1MYXlvdXRzL19sYXlvdXRzLmZvcm0uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy80LUxheW91dHMvX2xheW91dHMucGFnZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5icmVhZGNydW1iLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmJ1dHRvbi5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmNoZWNrYm94LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmNsb3NlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmN0YS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5jdGFUZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmN0YVBlcnNvbi5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5mYXEuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuZm9ybUdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmZvcm1GZWVkYmFjay5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5mdWxsSW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuaGFtYnVyZ2VyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmhlYWRpbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuaW5wdXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMubGFuZ3VhZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMubGFyZ2VRdW90ZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMucGFnZVRpdGxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLnBhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMucHJvamVjdG9yLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLnBvc3RDYXRlZ29yaWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLnJlZmVyZW5jZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMucmVmZXJlbmNlQ2FyZHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuc2VsZWN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLnNlcnZpY2VQb2ludC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5zZXJ2aWNlQmxvY2suc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuc2VydmljZVR5cGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuc2VydmljZUhlYWRpbmcuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuc2l0ZW1hcC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5za2lwTGluay5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5zbGlkZUluZGljYXRvci5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5zdWJuYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMudGV4dC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy50ZXh0QnV0dG9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLnRyYWRlbWFyay5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy52aWRlby5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmFkdmljZUNvbnRlbnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmJsb2cuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmNhbGxvdXRCYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmNhcmRHcmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5jb250YWN0Q29udGVudC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuY29va2llQmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5kb3VibGVJbWFnZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuZG91YmxlVGV4dC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5oZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmhlcm8uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLm1hcC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMub3ZlcmxheU1lbnUuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLnBhcnRuZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5zdWJmb290ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLnRhYnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLnRleHRJbWFnZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzctVGVtcGxhdGVzL190ZW1wbGF0ZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy83LVRlbXBsYXRlcy9fdGVtcGxhdGVzLmNvbnRhY3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy83LVRlbXBsYXRlcy9fdGVtcGxhdGVzLm1ldGhvZC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzctVGVtcGxhdGVzL190ZW1wbGF0ZXMucG9zdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy84LVNjb3Blcy9fc2NvcGVzLnRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy8xMC1VdGlsaXRpZXMvX3V0aWxpdGllcy5jb2xvcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy8xMC1VdGlsaXRpZXMvX3V0aWxpdGllcy5oZWxwZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvMTAtVXRpbGl0aWVzL191dGlsaXRpZXMuaGlkZGVuLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvMTAtVXRpbGl0aWVzL191dGlsaXRpZXMuc2hhbWUuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy8xMC1VdGlsaXRpZXMvX3V0aWxpdGllcy5zcGFjaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvMTAtVXRpbGl0aWVzL191dGlsaXRpZXMudmlzaWJsZUdyaWQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBZ0I7QUFDaEI7Ozs7Ozs7Z0VBQUE7QUNEQTs7OzsrREFBQTtBQTJDQTs7Ozs7Ozs7Ozs7O0dBQUE7QUMzQ0E7OzhDQUFBO0FDQUE7Ozs7Z0VBQUE7QUFNQTs7R0FBQTtBQStDQTs7R0FBQTtBQ3JEQTs7a0RBQUE7QUpjQTs7K0RBQUE7QUtkQTs7K0VBQUE7QUFJQTs7O0lBQUE7QUFrQkE7OztJQUFBO0FBUUE7O0lBQUE7QUM5QkE7O2dGQUFBO0FBS0E7Ozs7Ozs7OztHQUFBO0FDTEE7Z0RBQUE7QUNBQTs7c0RBQUE7QUFLQTs7Ozs7Ozs7OztHQUFBO0FBaUNBOzs7O0dBQUE7QUFlQTtBQU9BO0FBT0E7QUFrQkE7Ozs7Ozs7Ozs7Ozs7R0FBQTtBQStCQTs7Ozs7Ozs7Ozs7OztHQUFBO0FBMEJBOzs7Ozs7Ozs7Ozs7OztHQUFBO0FBZ0JBOzs7O0dBQUE7QUEwQkE7OztHQUFBO0FBZ0JBOztHQUFBO0FBR0E7O0dBQUE7QUE0QkE7O0dBQUE7QUN2T0E7Ozt3R0FBQTtBQWlCQTs7Ozs7R0FBQTtBVEtBOzsrREFBQTtBVXRCQTs7Z0ZBQUE7QUFJQTs7Ozs7O0dBQUE7QUFRQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDVjJLRDs7QVV2S0E7RUpVTTtFQVJBO0VJQUw7RUFDQSxpQ1BpQ2M7RU9oQ2QsMEJQZm1CO0VPZ0JuQjtFQUNBO0VBQ0E7Q1YyS0Q7O0FVdktBOzs7Ozs7R0FBQTtBQU9BO0VBQ0M7RUFDQTtFQUNBO0NWMEtEO0FVeEtDO0VBR0M7Q1Z3S0Y7O0FVbktBOztHQUFBO0FBR0E7RUFDQztFQUNBO0VBQ0E7RUFBbUI7Q1Z1S3BCOztBVW5LQTtHQUFBO0FBRUE7RUFDQztDVnNLRDs7QVVsS0E7Ozs7O0dBQUE7QUFNQTtFQUNDO0VBQXdCO0VBQ3hCO0VBQWM7RUFDZDtDVnVLRDs7QVVuS0E7OztHQUFBO0FBSUE7OztFQUdDO0NWc0tEOztBVWpLQTtFQUNDO0VBQ0E7RUFDQTtVQUFBO0VBQ0E7Q1ZvS0Q7QVVsS0M7RUFDQztDVm9LRjtBVW5LRTtFQUNDO0VBQ0E7RUFDQTtDVnFLSDtBVWpLQztFQUNDO0NWbUtGOztBVTVKQTs7OztFQUlDO0VBQ0E7Q1YrSkQ7O0FXMVJBO0VBQ0M7Q1g2UkQ7O0FXMVJBO0VMNEJNO0VBUkE7Q04yUU47O0FXM1JBO0VMd0JNO0VBUkE7RUtkTDtDWCtSRDs7QVc1UkE7RUxtQk07RUFSQTtFS1RMO0NYZ1NEOztBVzdSQTtFTGNNO0VBUkE7RUtKTDtDWGlTRDs7QVc5UkE7RUxTTTtFQVJBO0VLQ0w7Q1hrU0Q7O0FZM1RBOzt5RkFBQTtBQUtBOztHQUFBO0FBSUE7O0VBRUM7RUFDQTtFQUNBO0NaMlREOztBWXhUQTtFQUNDO0NaMlREOztBWXRUQTs7R0FBQTtBQUtDOztFQUVDO0NadVRGOztBQXRUQTs7K0RBQUE7QU9TQztFTXJDQztJTHFHQztHUnFQRDtDQUNGO0FPdFRDO0VNckNDO0lMNEdDO0dSbVBEO0NBQ0Y7O0FjbFdBOztnRkFBQTtBQUtBO0VOME1DO0VBQ0E7RUFHQztFQUlDO0NScUpIOztBT3JVQztFUXRDQTtJQUNDO0lBQ0E7R2YrV0E7Q0FDRjtBTzVVQztFQzBJRTtJQUNDLGlCT3pLVTtHZjhXWjtDQUNGO0FPalZDO0VRM0JDO0lBQ0M7R2YrV0Q7Q0FDRjs7QWdCN1hBO0VBQ0M7Q2hCZ1lEOztBZ0IzWEM7RUFDQztDaEI4WEY7O0FnQnpYQTtFQUNDO0NoQjRYRDs7QWdCdlhBO0VBQ0M7RUFDQTtFQUNBO0VBQVE7RUFBUztFQUFXO0VBQzVCO0NoQjZYRDs7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RDtJQVNJO0lBQ0E7SUFDQTtJQUNBO0d6QjR3QkY7Q0FDRjtBT3AxQkM7RWtCMkREO0lBZ0JJO0lBQ0E7R3pCNndCRjtDQUNGO0FPMTFCQztFa0IyREQ7SUFxQkk7SUFDQTtHekI4d0JGO0NBQ0Y7QU9oMkJDO0VrQjJERDtJQTBCSTtHekIrd0JGO0NBQ0Y7QU9yMkJDO0VrQjJERDtJQThCSTtHekJneEJGO0NBQ0Y7O0EwQmo1QkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtDMUJvNUJGOztBMEJqNUJBO0VBQ0U7RUFDQTtDMUJvNUJGOztBT3QzQkM7RW1CM0JEO0lBRUk7SUFDQTtHMUJvNUJGO0UwQmw1QkU7SUFDRTtJQUNBO0cxQm81Qko7Q0FDRjs7QU9qNEJDO0VtQmREO0lBR0k7SUFDQTtJQUNBO0cxQmk1QkY7Q0FDRjtBT3o0QkM7RW1CZEQ7SUFTSTtJQUNBO0lBQ0E7RzFCazVCRjtDQUNGOztBT2g1QkM7RW1CR0Q7SUFHSTtHMUIrNEJGO0UwQjc0QkU7SUFDRTtJQUNBO0lBQ0E7RzFCKzRCSjtDQUNGO0FPMzVCQztFbUJHRDtJQWFJO0lBQ0E7RzFCKzRCRjtFMEI3NEJFO0lBQ0U7RzFCKzRCSjtDQUNGO0FPcDZCQztFbUJHRDtJQXNCSTtHMUIrNEJGO0NBQ0Y7QU96NkJDO0VtQkdEO0lBMEJJO0cxQmc1QkY7Q0FDRjtBMEI5NEJFO0VBQ0U7RUFDQTtDMUJnNUJKO0EwQjc0QkU7RUFDRTtFQUNBO0MxQis0Qko7O0EwQjM0QkE7RUFDRTtDMUI4NEJGOztBMEIzNEJBO0VBQ0U7RUFDQTtFcEJ4REk7RUFHRTtDTnE4QlI7O0EwQjU0QkE7RUFDRTtFcEI3REk7RUFHRTtFb0I0RE47QzFCZzVCRjs7QTJCMytCQTtFQUNDO0VBQ0E7QzNCOCtCRDs7QTJCMStCQTtFQUNDO0VBQ0E7QzNCNitCRDs7QTJCeitCQTtFQUNDO0VBQ0E7RUFDQTtDM0I0K0JEOztBMkJ4K0JBO0VBQ0M7QzNCMitCRDs7QTJCditCQTtFckJJTTtFcUJGTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDM0IwK0JEO0EyQngrQkM7RUFDQztDM0IwK0JGO0EyQnYrQkM7RUFDQztDM0J5K0JGOztBMkJwK0JBO0VBQ0M7RUFDQTtFQUNBO0MzQnUrQkQ7QTJCcitCQztFQUNDO0MzQnUrQkY7O0EyQmwrQkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0MzQnErQkQ7QTJCbitCQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0MzQnErQkY7O0EyQmorQkE7RUFDQztDM0JvK0JEOztBNEIvaUNBO0V0QmdDTTtFQVJBO0VzQnRCTDtFQUNBO0M1Qm1qQ0Q7O0E0Qi9pQ0E7RUFDQztDNUJrakNEO0E0QmhqQ0M7RXRCc0JLO0VBUkE7RXNCWko7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzVCbWpDRjs7QTZCcmtDQTtFdkJnQ007RUFSQTtFRTRHSjtFcUJqSUQ7RUFDQTtFQUNBO0VBQ0E7QzdCeWtDRDtBNkJ2a0NDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QzdCeWtDRjtBNkJya0NDO0VBQ0M7QzdCdWtDRjs7QThCeGxDQTtFQUNFO0M5QjJsQ0Y7QU9yakNDO0V1QnZDRDtJQUlJO0c5QjRsQ0Y7Q0FDRjtBTzFqQ0M7RXVCdkNEO0lBUUk7RzlCNmxDRjtDQUNGOztBOEIxbENBO0VBQ0U7RUFDQTtDOUI2bENGO0E4QjNsQ0U7RUFDRTtDOUI2bENKOztBOEJ6bENBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDOUI0bENGO0E4QjFsQ0U7RUFDRTtDOUI0bENKOztBK0J6bkNBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Qy9CNG5DRDtBK0IxbkNDO0VBQ0M7Qy9CNG5DRjtBK0J6bkNDO0VBR0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0MvQnluQ0Y7QStCdG5DQztFQUNDO0VBQ0E7Qy9Cd25DRjtBK0JybkNDO0VBQ0M7RUFDQTtDL0J1bkNGO0ErQm5uQ0U7RUFDQztDL0JxbkNIO0ErQm5uQ0U7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QTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VwRC9GSztFb0RpR0w7QzFEd2lGRDs7QTBEcmlGQTtFQUNDO0MxRHdpRkQ7O0EwRHJpRkE7RUFDQztFQUNBO0MxRHdpRkQ7O0EyRGxyRkE7RW5EOExDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RW1EaE1BO0VBQ0E7RUFDRTtDM0R5ckZIOztBMkRyckZBO0VuRHVNQztFQUNBO0VBR0M7RUFJQztDUjYrRUg7QU83cEZDO0VvRC9CRDtJbkQrRkc7SUFBQTtHUmttRkQ7Q0FDRjtBT25xRkM7RW9EL0JEO0luRHNHRztJQUFBO0dSaW1GRDtDQUNGO0FPenFGQztFb0R2QkE7SW5EdUZFO0dSNm1GRDtDQUNGO0FPOXFGQztFb0R2QkE7SW5EOEZFO0dSMm1GRDtDQUNGOztBMkRsc0ZBO0VyRFFNO0VBUkE7Q051c0ZOOztBNEQvdEZBOzs7O0dBQUE7QXJEdUNDO0VxRGpCQTtJQUNDO0lBQ0E7SUFDQTtHNURrdEZBO0NBQ0Y7QTREOXNGQTtFQUNDO0VBQ0E7QzVEZ3RGRDtBT3pzRkM7RXFEVEQ7SUFZSTtJQUNBO0lBSUQ7RzVEdXNGRDtDQUNGO0FPaHRGQztFcURURDtJQWlCRztHNUQ0c0ZEO0NBQ0Y7O0E2RDV2RkE7RUFDRTtFQUNBO0VBQ0E7QzdEK3ZGRjtBTzN0RkM7RXNEdkNEO0lBTUk7RzdEZ3dGRjtDQUNGO0E2RDl2RkU7RUFDRTtDN0Rnd0ZKO0FPbnVGQztFc0Q5QkM7SUFHSTtJQUNBO0c3RGt3Rko7Q0FDRjtBNkQvdkZFO0VBQ0U7QzdEaXdGSjtBTzV1RkM7RXNEdEJDO0lBSUk7RzdEa3dGSjtDQUNGO0E2RC92RkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzdEaXdGSjtBT3p2RkM7RXNEZEM7SUFTSTtJQUNBO0c3RGt3Rko7Q0FDRjtBTy92RkM7RXNEZEM7SUFjSTtJQUNBO0c3RG13Rko7Q0FDRjtBT3J3RkM7RXNEZEM7SUFtQkk7RzdEb3dGSjtDQUNGO0E2RGx3Rkk7RUFDRTtDN0Rvd0ZOO0E2RGp3Rkk7RUFDRTtFQUNBO0VBQ0E7QzdEbXdGTjtBNkRod0ZJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V2RC9CQTtFQUdFO0V1RDhCRjtDN0Rtd0ZOO0E2RGp3Rk07RUFDRTtFQUNBO0M3RG13RlI7QTZEaHdGTTtFQUNFO0M3RGt3RlI7QTZEL3ZGTTtFQUNFO0M3RGl3RlI7QTZEbHdGTTtFQUNFO0M3RGl3RlI7QTZEOXZGSTtFQUNFO0VBQ0E7QzdEZ3dGTjtBNkQ5dkZJO0VBQ0U7QzdEZ3dGTjtBNkQvdkZNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RXZEMURGO0VBR0U7RUVpR047RXFEdkNNO0VBQ0E7RUFDQTtDN0Rrd0ZSO0E2RDl2Rkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0M3RGd3Rk47QTZENXZGRTtFQUNFO0VBQ0E7QzdEOHZGSjtBNkQ1dkZJOztFQUVFO0VBQ0E7RUFDQTtDN0Q4dkZOO0FPMzBGQztFc0R5RUc7O0lBT0k7RzdEZ3dGTjtDQUNGO0FPajFGQztFc0R5RUc7O0lBV0k7SUFDQTtHN0Rrd0ZOO0NBQ0Y7QTZEaHdGTTs7RUFDRTtDN0Rtd0ZSO0FPNTFGQztFc0R3Rks7O0lBSUk7RzdEcXdGUjtDQUNGO0E2RGx3Rk07O0VBQ0U7RUFDQTtFQUNBO0V2RDFHRjtFQUdFO0V1RHlHQTtDN0Rzd0ZSO0E2RHB3Rk07O0VBQ0U7RXZEL0dGO0VBR0U7RXVEOEdBO0M3RHd3RlI7QTZEcndGTTs7RUFDRTtDN0R3d0ZSO0E2RHB3Rk07RUFDRTtDN0Rzd0ZSO0E2RGp3RkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtDN0Rtd0ZKO0FPLzNGQztFc0R3SEM7SUFPSTtHN0Rvd0ZKO0NBQ0Y7QTZEbHdGSTtFQUNFO0M3RG93Rk47QTZEL3ZGSTtFQUNFO0M3RGl3Rk47O0E4RGo3RkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhNURtQjZCO0U0RGxCN0I7RUFDQTtFQUVBO0VBQ0E7QzlEbTdGRDtBOEQvNkZDO0VyRFNBO0VxRFBDO0M5RGk3RkY7QThENzZGQztFQUNDO0VBQ0E7RUFDQTtFQUVBO0M5RDg2RkY7O0E4RHo2RkE7RUFDQztFQUNBO0VBQ0E7QzlENDZGRDtBT3g2RkM7RXVEUEQ7SUFNRTtHOUQ2NkZBO0NBQ0Y7O0E4RHo2RkE7RUFDQztFQUNBO0M5RDQ2RkQ7QU9sN0ZDO0V1RElEO0l4RFhNO0lBUkE7R05zOEZKO0NBQ0Y7O0E4RDE2RkE7RUFDQztFQUNBO0M5RDY2RkQ7QThEMzZGQztFQUNDO0M5RDY2RkY7O0E4RHg2RkE7RUFDQztFQUNBO0M5RDI2RkQ7QU9yOEZDO0V1RHdCRDtJQUtFO0c5RDQ2RkE7Q0FDRjs7QStEOStGQTtFQUNDO0VBQ0E7Qy9EaS9GRDtBTy84RkM7RXdEcENEO0lBTUU7Ry9EaS9GQTtDQUNGOztBK0Q3K0ZBO0VBQ0M7RUFDQTtFQUNBO0MvRGcvRkQ7QU8xOUZDO0V3RHpCRDtJQU1FO0lBQ0E7SUFDQTtHL0RpL0ZBO0UrRC8rRkE7SUFDQztHL0RpL0ZEO0NBQ0Y7O0ErRDUrRkE7RUFDQztFQUNBO0MvRCsrRkQ7O0ErRDErRkM7RUFDQztDL0Q2K0ZGO0ErRDMrRkU7RUFDQztFQUNBO0MvRDYrRkg7O0FnRXJoR0E7RUFDQztDaEV3aEdEO0FPci9GQztFeURwQ0Q7SUFJRTtJQUNBO0doRXloR0E7Q0FDRjs7QVF0M0ZFO0VBQ0MsaUJ3RC9KVztDaEV3aEdkO0FPLy9GQztFeUQxQkQ7SUFJRTtJQUNBO0doRXloR0E7Q0FDRjs7QWlFemlHQTtFeERzQkM7RXdEbEJBLGdFaEVpQ2M7RWdFaENkO0NqRTBpR0Q7O0FpRXRpR0E7RXpEbU1DO0VBQ0E7RUFHQztFQUlDO0NSazJGSDtBT2xoR0M7RTBEM0JEO0l6RDJGRztJQUFBO0dSdTlGRDtDQUNGO0FPeGhHQztFMEQzQkQ7SXpEa0dHO0lBQUE7R1JzOUZEO0NBQ0Y7O0FpRWhqR0E7RUFDQztFQUNBO0NqRW1qR0Q7QWlFampHQztFQUNDO0NqRW1qR0Y7O0FPdGlHQztFMERSRDtJekR3RUc7R1IyK0ZEO0NBQ0Y7QU81aUdDO0UwRFJEO0l6RCtFRztHUnkrRkQ7Q0FDRjtBT2pqR0M7RTBEUkQ7SUFLRTtHakV3akdBO0NBQ0Y7O0FpRXBqR0E7RUFDQztFQUNBO0NqRXVqR0Q7QU8zakdDO0UwREVEO0lBS0U7SUFDQTtHakV3akdBO0NBQ0Y7O0FRcDhGQztFQUNDLGlCeUQvR3FCO0NqRXNqR3ZCO0FPcmtHQztFMERjRDtJQUlFO0dqRXVqR0E7Q0FDRjs7QWlFcGpHQTtFQUNDO0NqRXVqR0Q7QU85a0dDO0UwRHNCRDtJQUlFO0dqRXdqR0E7Q0FDRjs7QU9ubEdDO0UwRGtDQztJQUNDO0dqRXFqR0Q7Q0FDRjtBT3psR0M7RTBEK0JEO0lBU0U7SUFDQTtJQUNBO0dqRXFqR0E7RWlFbGpHQTtJQUNDO0lBQ0E7R2pFb2pHRDtDQUNGO0FPcG1HQztFMEQrQkQ7SUFxQkU7R2pFb2pHQTtDQUNGO0FPem1HQztFMEQrQkQ7SUF5QkU7R2pFcWpHQTtDQUNGO0FPOW1HQztFMEQrQkQ7SUE2QkU7SUFDQTtJQUNBO0dqRXNqR0E7Q0FDRjs7QWlFbGpHQTtFQUNDO0VBQ0E7Q2pFcWpHRDtBTzFuR0M7RTBEbUVEO0lBS0U7R2pFc2pHQTtFaUVuakdBO0lBQ0M7R2pFcWpHRDtDQUNGOztBaUVqakdBO0VBQ0M7RUFDQTtFM0QxRks7RUFHRTtDTjZvR1I7O0FpRWxqR0E7RUFDQztDakVxakdEOztBaUVsakdBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q2pFcWpHRDtBaUVuakdDO0VBQ0M7Q2pFcWpHRjtBaUVsakdDO0VBQ0M7Q2pFb2pHRjs7QWlFL2lHQTtFQUNDO0VBQ0E7RUFDQTtDakVrakdEOztBaUU5aUdBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NqRWlqR0Q7O0FpRTdpR0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDakVnakdEO0FpRTlpR0M7RUFDQztFQUNBO0NqRWdqR0Y7QWlFOWlHQztFQUNDO0NqRWdqR0Y7QWlFOWlHQztFQUNDO0VBQ0E7Q2pFZ2pHRjtBaUU5aUdDO0VBQ0M7RUFDQTtDakVnakdGO0FpRTdpR0M7RUFDQztDakUraUdGO0FpRTVpR0M7RUFDQztDakU4aUdGOztBa0VsdkdBO0V6RHlCQztFeUR2QkE7RUFDQTtF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QztFOERxR0Q7SUFlRTtHckV5NUdBO0NBQ0Y7O0FxRXQ1R0E7RUFDQztFQUNBO0UvRGpJSztFQVJBO0UrRDJJTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3JFMDVHRDtBcUV4NUdDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3JFMDVHRjtBcUV0NUdFO0VBQ0M7Q3JFdzVHSDtBcUVwNUdDO0VBQ0M7RUFDQTtDckVzNUdGO0FxRW41R0M7RUFDQztFQUNBO0VBQ0E7Q3JFcTVHRjtBcUUvNEdHO0VBR0M7Q3JFKzRHSjs7QXFFbDVHRztFQUdDO0NyRW01R0o7O0FxRXQ1R0c7RUFHQztDckV1NUdKOztBcUUxNUdHO0VBR0M7Q3JFMjVHSjs7QXFFOTVHRztFQUdDO0NyRSs1R0o7O0FxRWw2R0c7RUFHQztDckVtNkdKOztBcUV0NkdHO0VBR0M7Q3JFdTZHSjs7QXFFMTZHRztFQUdDO0NyRTI2R0o7O0FxRTk2R0c7RUFHQztDckUrNkdKOztBcUVsN0dHO0VBR0M7Q3JFbTdHSjs7QXFFOTZHQztFQUNDO0NyRWk3R0Y7O0FzRXJvSEE7Ozs7R0FBQTtBL0R1Q0M7RStEaEJEO0lBRUU7SUFDQTtJQUNBO0d0RXNuSEE7Q0FDRjs7QXNFbG5IQTtFQUNDO0VBQ0E7RUFDQTtDdEVxbkhEO0FPam5IQztFK0RQRDtJQWFJO0lBQ0E7SUFJRDtHdEU0bUhEO0NBQ0Y7QU94bkhDO0UrRFBEO0lBa0JHO0d0RWluSEQ7Q0FDRjtBTzduSEM7RStEUEQ7SUFrQkc7R3RFc25IRDtDQUNGO0FPbG9IQztFK0RQRDtJQWtCRztHdEUybkhEO0NBQ0Y7O0FzRXRuSEE7RUFDQztFQUNBO0VBQ0E7RUFDQTtDdEV5bkhEO0FzRXZuSEM7RUFDQztDdEV5bkhGOztBc0VwbkhBO0VBQ0M7RUFDQTtDdEV1bkhEOztBc0VsbkhBO0VBQ0M7RUFDQTtFQUNBO0N0RXFuSEQ7O0F1RWhzSEE7RTlEc0JDO0U4RHBCQTtFQUNBO0N2RW1zSEQ7O0F1RS9ySEE7RS9EcU1DO0VBQ0E7RUFHQztFQUlDO0VGdkxHO0VBUkE7RWlFWEw7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0N2RXNzSEQ7O0F1RWxzSEE7RUFDQztFQUNBO0VBQ0U7RUFDQTtFQUNGLG1CQTNCdUI7Q3ZFZ3VIeEI7O0F1RWpzSEE7RUFDQztFQUNBO0VBQ0E7Q3ZFb3NIRDtBTy9ySEM7RWdFUkQ7SUFNRTtHdkVxc0hBO0NBQ0Y7O0F1RWpzSEE7RUFDQztFQUNBO0VBQ0E7RUFDQTtDdkVvc0hEOztBdUVoc0hBO0VBQ0MsbUJBbkR1QjtFQW9EdkI7Q3ZFbXNIRDs7QXVFL3JIQTtFQUNDO0VBQ0E7RUFDQTtDdkVrc0hEO0F1RWhzSEM7RUFDQztDdkVrc0hGO0F1RS9ySEM7RUFDQztDdkVpc0hGOztBdUU1ckhBO0VBQ0M7RUFDQTtDdkUrckhEOztBd0V0d0hBOzs7O0dBQUE7QUFPQTtFaEVzTUM7RUFDQTtFQUdDO0VBSUM7Q1I2akhIOztBTzd1SEM7RWlFekJEO0lBRUU7R3hFeXdIQTtDQUNGO0FPbnZIQztFaUV6QkQ7SUFNRTtJQUNBO0d4RTB3SEE7Q0FDRjs7QXdFcndIQTtFbEVLTTtFQVJBO0VrRUtMO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDeEV5d0hEO0F3RXZ3SEM7RUFDQztFQUNBO0N4RXl3SEY7QXdFdHdIQztFQUNDO0VBQ0E7Q3hFd3dIRjtBd0Vyd0hDO0VBQ0M7RUFDQTtDeEV1d0hGO0F3RXJ3SEU7RUFDQztDeEV1d0hIOztBT254SEM7RWlFa0JEO0lBRUU7SUFBQTtJQUNBO0lBQUE7SUFDQTtJQUFBO0lBQ0E7SUFDQTtHeEVvd0hBO0NBQ0Y7O0FPN3hIQztFaUUrQkM7SUFDQztHeEVrd0hEO0NBQ0Y7QU9ueUhDO0VpRTZCRDtJQVFFO0lBQUE7SUFDQTtJQUFBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7R3hFa3dIQTtFd0Vod0hBO0lBQ0M7SUFDQTtJQUNBO0d4RWt3SEQ7Q0FDRjs7QXdFN3ZIQTtFbEU1RE07RUFSQTtFa0VzRUw7RUFDQTtFQUNBO0VBQ0E7Q3hFaXdIRDtBTzN6SEM7RWlFcUREO0lBUUU7R3hFa3dIQTtDQUNGOztBeUVuMkhBO0VqRTJNQztFQUNBO0VBR0M7RUFJQztFaUVqTkY7Q3pFeTJIRDtBT3gwSEM7RWtFbkNEO0lBS0U7SUFDQTtHekUwMkhBO0NBQ0Y7O0F5RXQySEE7RUFDQztDekV5MkhEO0F5RXYySEM7RUFDQztDekV5MkhGO0FPcjFIQztFa0V4QkQ7SUFRRTtJQUNBO0d6RXkySEE7Q0FDRjs7QU8zMUhDO0VrRVZEO0lBRUU7R3pFdzJIQTtDQUNGOztBT2oySEM7RWtFRkQ7SUFFRTtHekVzMkhBO0NBQ0Y7O0FBdjFIQTs7K0RBQUE7QTBFdkRBOzs4RUFBQTtBQ0VFO0VBQ0U7QzNFcTVISjtBMkVsNUhFO0VBQ0U7QzNFbzVISjtBMkVqNUhFO0VBQ0U7QzNFbTVISjtBT3YzSEM7RW9FN0JDO0lBSUk7RzNFbzVISjtDQUNGOztBNEVoNkhJO0VBQ0U7RXRFNEJBO0VBR0U7RXNFN0JGO0M1RW82SE47QTRFbDZISTtFQUNFO0M1RW82SE47O0E2RTM2SEU7RUFDRTtDN0U4NkhKO0E2RTM2SEU7RUFDRTtDN0U2NkhKO0FPNzRIQztFc0VqQ0M7SUFJSTtHN0U4NkhKO0NBQ0Y7QU9sNUhDO0VzRWpDQztJQVFJO0c3RSs2SEo7Q0FDRjtBT3Y1SEM7RXNFakNDO0lBV0k7RzdFaTdISjtDQUNGOztBQXA0SEE7OytEQUFBO0E4RS9EQTs7R0FBQTtBQU9DO0V4RXlCSztFQUdFO0V3RTFCTjtDOUVzOEhGO0E4RTk3SEM7RUFDQztDOUVnOEhGO0E4RTU3SEM7RUFDQztDOUU4N0hGO0E4RTE3SEM7RUFDQztDOUU0N0hGO0E4RXo3SEM7RUFDQztDOUUyN0hGO0E4RXo3SEU7RUFDQztFQUNBO0VBQ0E7QzlFMjdISDtBOEV6N0hHO0V4RVBHO0VBUkE7RXdFaUJGO0VBQ0E7RUFDQTtFQUNBO0M5RTQ3SEo7QThFdjdIQztFQUNDO0VBQ0E7QzlFeTdIRjtBOEV2N0hFO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QzlFeTdISDtBOEV2N0hHO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0M5RXk3SEo7O0E4RW43SEE7RUFDQztDOUVzN0hEO0E4RXA3SEM7RUFDQztDOUVzN0hGO0E4RW43SEM7RUFDQztDOUVxN0hGOztBQTc3SEE7OytEQUFBO0FBT0E7OzsrREFBQTtBK0U5RUE7O3lGQUFBO0FBS0E7Ozs7Ozs7Ozs7Ozs7O0dBQUE7QUEwQkc7RUFDQztDL0VpZ0lKOztBK0UvL0hHO0VBQ0M7Qy9Fa2dJSjs7QStFdGdJRztFQUNDO0MvRXlnSUo7O0ErRXZnSUc7RUFDQztDL0UwZ0lKOztBK0U5Z0lHO0VBQ0M7Qy9FaWhJSjs7QStFL2dJRztFQUNDO0MvRWtoSUo7O0ErRXRoSUc7RUFDQztDL0V5aElKOztBK0V2aElHO0VBQ0M7Qy9FMGhJSjs7QStFOWhJRztFQUNDO0MvRWlpSUo7O0ErRS9oSUc7RUFDQztDL0VraUlKOztBK0V0aUlHO0VBQ0M7Qy9FeWlJSjs7QStFdmlJRztFQUNDO0MvRTBpSUo7O0ErRTlpSUc7RUFDQztDL0VpaklKOztBK0UvaUlHO0VBQ0M7Qy9Fa2pJSjs7QStFdGpJRztFQUNDO0MvRXlqSUo7O0ErRXZqSUc7RUFDQztDL0UwaklKOztBK0U5aklHO0VBQ0M7Qy9FaWtJSjs7QStFL2pJRztFQUNDO0MvRWtrSUo7O0ErRXRrSUc7RUFDQztDL0V5a0lKOztBK0V2a0lHO0VBQ0M7Qy9FMGtJSjs7QStFOWtJRztFQUNDO0MvRWlsSUo7O0ErRS9rSUc7RUFDQztDL0VrbElKOztBK0V0bElHO0VBQ0M7Qy9FeWxJSjs7QStFdmxJRztFQUNDO0MvRTBsSUo7O0ErRTlsSUc7RUFDQztDL0VpbUlKOztBK0UvbElHO0VBQ0M7Qy9Fa21JSjs7QStFdG1JRztFQUNDO0MvRXltSUo7O0ErRXZtSUc7RUFDQztDL0UwbUlKOztBK0U5bUlHO0VBQ0M7Qy9FaW5JSjs7QStFL21JRztFQUNDO0MvRWtuSUo7O0ErRXRuSUc7RUFDQztDL0V5bklKOztBK0V2bklHO0VBQ0M7Qy9FMG5JSjs7QWdGN3BJQTtFQUNDO0VBQ0E7RUFDQTtDaEZncUlEOztBZ0Y3cElBO0VBQ0M7Q2hGZ3FJRDs7QWdGN3BJQTtFQUNDO0VBQ0E7Q2hGZ3FJRDs7QWlGNXFJQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7VUFBQTtFQUNBO0NqRitxSUQ7O0FpRjVxSUE7RUFDQztDakYrcUlEOztBT3JwSUM7RTBFdEJBO0lBQ0M7R2pGK3FJQTtDQUNGO0FPM3BJQztFMEVoQkE7SUFDQztHakY4cUlBO0NBQ0Y7QU9ocUlDO0UwRVZBO0lBQ0M7R2pGNnFJQTtDQUNGO0FPcnFJQztFMEVKQTtJQUNDO0dqRjRxSUE7Q0FDRjtBTzFxSUM7RTBFRUE7SUFDQztHakYycUlBO0NBQ0Y7QWtGdHRJQTs7O0VBQUE7QUNFQztFQUF5QjtDbkYydEkxQjs7QW1GMXRJQztFQUF5QjtDbkY4dEkxQjs7QW1GN3RJQztFQUF5QjtDbkZpdUkxQjs7QW1GaHVJQztFQUF5QjtDbkZvdUkxQjs7QW1GbnVJQztFQUF5QjtDbkZ1dUkxQjs7QW1GcHVJQztFQUF5QjtDbkZ3dUkxQjs7QW1GdnVJQztFQUF5QjtDbkYydUkxQjs7QW1GMXVJQztFQUF5QjtDbkY4dUkxQjs7QW1GN3VJQztFQUF5QjtDbkZpdkkxQjs7QW1GaHZJQztFQUF5QjtDbkZvdkkxQjs7QW1GL3ZJQztFQUF5QjtDbkZtd0kxQjs7QW1GbHdJQztFQUF5QjtDbkZzd0kxQjs7QW1GcndJQztFQUF5QjtDbkZ5d0kxQjs7QW1GeHdJQztFQUF5QjtDbkY0d0kxQjs7QW1GM3dJQztFQUF5QjtDbkYrd0kxQjs7QW1GNXdJQztFQUF5QjtDbkZneEkxQjs7QW1GL3dJQztFQUF5QjtDbkZteEkxQjs7QW1GbHhJQztFQUF5QjtDbkZzeEkxQjs7QW1GcnhJQztFQUF5QjtDbkZ5eEkxQjs7QW1GeHhJQztFQUF5QjtDbkY0eEkxQjs7QW1GdnlJQztFQUF5QjtDbkYyeUkxQjs7QW1GMXlJQztFQUF5QjtDbkY4eUkxQjs7QW1GN3lJQztFQUF5QjtDbkZpekkxQjs7QW1GaHpJQztFQUF5QjtDbkZvekkxQjs7QW1GbnpJQztFQUF5QjtDbkZ1ekkxQjs7QW1GcHpJQztFQUF5QjtDbkZ3ekkxQjs7QW1GdnpJQztFQUF5QjtDbkYyekkxQjs7QW1GMXpJQztFQUF5QjtDbkY4ekkxQjs7QW1GN3pJQztFQUF5QjtDbkZpMEkxQjs7QW1GaDBJQztFQUF5QjtDbkZvMEkxQjs7QW1GLzBJQztFQUF5QjtDbkZtMUkxQjs7QW1GbDFJQztFQUF5QjtDbkZzMUkxQjs7QW1GcjFJQztFQUF5QjtDbkZ5MUkxQjs7QW1GeDFJQztFQUF5QjtDbkY0MUkxQjs7QW1GMzFJQztFQUF5QjtDbkYrMUkxQjs7QW1GNTFJQztFQUF5QjtDbkZnMkkxQjs7QW1GLzFJQztFQUF5QjtDbkZtMkkxQjs7QW1GbDJJQztFQUF5QjtDbkZzMkkxQjs7QW1GcjJJQztFQUF5QjtDbkZ5MkkxQjs7QW1GeDJJQztFQUF5QjtDbkY0MkkxQjs7QW1GdjNJQztFQUF5QjtDbkYyM0kxQjs7QW1GMTNJQztFQUF5QjtDbkY4M0kxQjs7QW1GNzNJQztFQUF5QjtDbkZpNEkxQjs7QW1GaDRJQztFQUF5QjtDbkZvNEkxQjs7QW1GbjRJQztFQUF5QjtDbkZ1NEkxQjs7QW1GcDRJQztFQUF5QjtDbkZ3NEkxQjs7QW1GdjRJQztFQUF5QjtDbkYyNEkxQjs7QW1GMTRJQztFQUF5QjtDbkY4NEkxQjs7QW1GNzRJQztFQUF5QjtDbkZpNUkxQjs7QW1GaDVJQztFQUF5QjtDbkZvNUkxQjs7QW1GLzVJQztFQUF5QjtDbkZtNkkxQjs7QW1GbDZJQztFQUF5QjtDbkZzNkkxQjs7QW1GcjZJQztFQUF5QjtDbkZ5NkkxQjs7QW1GeDZJQztFQUF5QjtDbkY0NkkxQjs7QW1GMzZJQztFQUF5QjtDbkYrNkkxQjs7QW1GNTZJQztFQUF5QjtDbkZnN0kxQjs7QW1GLzZJQztFQUF5QjtDbkZtN0kxQjs7QW1GbDdJQztFQUF5QjtDbkZzN0kxQjs7QW1GcjdJQztFQUF5QjtDbkZ5N0kxQjs7QW1GeDdJQztFQUF5QjtDbkY0N0kxQjs7QW1GdjhJQztFQUF5QjtDbkYyOEkxQjs7QW1GMThJQztFQUF5QjtDbkY4OEkxQjs7QW1GNzhJQztFQUF5QjtDbkZpOUkxQjs7QW1GaDlJQztFQUF5QjtDbkZvOUkxQjs7QW1GbjlJQztFQUF5QjtDbkZ1OUkxQjs7QW1GcDlJQztFQUF5QjtDbkZ3OUkxQjs7QW1GdjlJQztFQUF5QjtDbkYyOUkxQjs7QW1GMTlJQztFQUF5QjtDbkY4OUkxQjs7QW1GNzlJQztFQUF5QjtDbkZpK0kxQjs7QW1GaCtJQztFQUF5QjtDbkZvK0kxQjs7QW1GLytJQztFQUF5QjtDbkZtL0kxQjs7QW1GbC9JQztFQUF5QjtDbkZzL0kxQjs7QW1Gci9JQztFQUF5QjtDbkZ5L0kxQjs7QW1GeC9JQztFQUF5QjtDbkY0L0kxQjs7QW1GMy9JQztFQUF5QjtDbkYrL0kxQjs7QW1GNS9JQztFQUF5QjtDbkZnZ0oxQjs7QW1GLy9JQztFQUF5QjtDbkZtZ0oxQjs7QW1GbGdKQztFQUF5QjtDbkZzZ0oxQjs7QW1GcmdKQztFQUF5QjtDbkZ5Z0oxQjs7QW1GeGdKQztFQUF5QjtDbkY0Z0oxQjs7QW1GdmhKQztFQUF5QjtDbkYyaEoxQjs7QW1GMWhKQztFQUF5QjtDbkY4aEoxQjs7QW1GN2hKQztFQUF5QjtDbkZpaUoxQjs7QW1GaGlKQztFQUF5QjtDbkZvaUoxQjs7QW1GbmlKQztFQUF5QjtDbkZ1aUoxQjs7QW1GcGlKQztFQUF5QjtDbkZ3aUoxQjs7QW1GdmlKQztFQUF5QjtDbkYyaUoxQjs7QW1GMWlKQztFQUF5QjtDbkY4aUoxQjs7QW1GN2lKQztFQUF5QjtDbkZpakoxQjs7QW1GaGpKQztFQUF5QjtDbkZvakoxQjs7QW1GL2pKQztFQUF5QjtDbkZta0oxQjs7QW1GbGtKQztFQUF5QjtDbkZza0oxQjs7QW1GcmtKQztFQUF5QjtDbkZ5a0oxQjs7QW1GeGtKQztFQUF5QjtDbkY0a0oxQjs7QW1GM2tKQztFQUF5QjtDbkYra0oxQjs7QW1GNWtKQztFQUF5QjtDbkZnbEoxQjs7QW1GL2tKQztFQUF5QjtDbkZtbEoxQjs7QW1GbGxKQztFQUF5QjtDbkZzbEoxQjs7QW1GcmxKQztFQUF5QjtDbkZ5bEoxQjs7QW1GeGxKQztFQUF5QjtDbkY0bEoxQjs7QW1Gdm1KQztFQUF5QjtDbkYybUoxQjs7QW1GMW1KQztFQUF5QjtDbkY4bUoxQjs7QW1GN21KQztFQUF5QjtDbkZpbkoxQjs7QW1GaG5KQztFQUF5QjtDbkZvbkoxQjs7QW1Gbm5KQztFQUF5QjtDbkZ1bkoxQjs7QW1GcG5KQztFQUF5QjtDbkZ3bkoxQjs7QW1Gdm5KQztFQUF5QjtDbkYybkoxQjs7QW1GMW5KQztFQUF5QjtDbkY4bkoxQjs7QW1GN25KQztFQUF5QjtDbkZpb0oxQjs7QW1GaG9KQztFQUF5QjtDbkZvb0oxQjs7QW1GL29KQztFQUF5QjtDbkZtcEoxQjs7QW1GbHBKQztFQUF5QjtDbkZzcEoxQjs7QW1GcnBKQztFQUF5QjtDbkZ5cEoxQjs7QW1GeHBKQztFQUF5QjtDbkY0cEoxQjs7QW1GM3BKQztFQUF5QjtDbkYrcEoxQjs7QW1GNXBKQztFQUF5QjtDbkZncUoxQjs7QW1GL3BKQztFQUF5QjtDbkZtcUoxQjs7QW1GbHFKQztFQUF5QjtDbkZzcUoxQjs7QW1GcnFKQztFQUF5QjtDbkZ5cUoxQjs7QW1GeHFKQztFQUF5QjtDbkY0cUoxQjs7QW1GdnJKQztFQUF5QjtDbkYyckoxQjs7QW1GMXJKQztFQUF5QjtDbkY4ckoxQjs7QW1GN3JKQztFQUF5QjtDbkZpc0oxQjs7QW1GaHNKQztFQUF5QjtDbkZvc0oxQjs7QW1GbnNKQztFQUF5QjtDbkZ1c0oxQjs7QW1GcHNKQztFQUF5QjtDbkZ3c0oxQjs7QW1GdnNKQztFQUF5QjtDbkYyc0oxQjs7QW1GMXNKQztFQUF5QjtDbkY4c0oxQjs7QW1GN3NKQztFQUF5QjtDbkZpdEoxQjs7QW1GaHRKQztFQUF5QjtDbkZvdEoxQjs7QW1GL3RKQztFQUF5QjtDbkZtdUoxQjs7QW1GbHVKQztFQUF5QjtDbkZzdUoxQjs7QW1GcnVKQztFQUF5QjtDbkZ5dUoxQjs7QW1GeHVKQztFQUF5QjtDbkY0dUoxQjs7QW1GM3VKQztFQUF5QjtDbkYrdUoxQjs7QW1GNXVKQztFQUF5QjtDbkZndkoxQjs7QW1GL3VKQztFQUF5QjtDbkZtdkoxQjs7QW1GbHZKQztFQUF5QjtDbkZzdkoxQjs7QW1GcnZKQztFQUF5QjtDbkZ5dkoxQjs7QW1GeHZKQztFQUF5QjtDbkY0dkoxQjs7QW9GendKQTs7OztnRkFBQTtBQWNBO0UzRVdDO0VEc0xBO0VBQ0E7RUFHQztFQUlDO0U0RXRNRjtFQUNBO0VBQ0E7RUFDQTtDcEZzd0pEO0FPbnZKQztFNkV6QkQ7SUFTRTtHcEZ1d0pBO0NBQ0Y7O0FvRm53SkE7RUFDQztFQUNBLDRRQUNDIiwiZmlsZSI6ImNzcy9zdHlsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKiAgMSAtIFNFVFRJTkdTXG4gKiAgR2xvYmFsIHZhcmlhYmxlcywgc2l0ZS13aWRlIHNldHRpbmdzLFxuICogIGNvbmZpZyBzd2l0Y2hlcyBldGMuXG4gKlxuICogIFRoZSBvcmRlciBpbiB3aGljaCB0aGVzZSBTYXNzIGZpbGVzXG4gKiAgYXJlIGxvYWRlZCBpcyBjcml0aWNhbCFcbiAqICBTbyBwbGVhc2UgYmUgY2FyZWZ1bCB3aGVuIGVkaXRpbmdcbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgT3JnYW5pemUgY29sb3IgdmFyaWFibGVzIGluIGEgU2FzcyBNYXAuXG4gICBUaGlzIHdheSwgdGhlIGNvbG9ycyBjYW4gYmUgaXRlcmF0ZWQsIGFyZSBtb3JlIG9yZ2FuaXplZCxcbiAgIGFuZCBhcmUgbW9yZSBpbnR1aXRpdmUgdG8gcmVmZXJlbmNlLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqXHRBIHNpbXBsZSBmdW5jdGlvbiBmb3IgYWNjZXNzaW5nIHRoZSBjb2xvcnMgZnJvbSBvdXIgbWFwcGluZ1xuICpcdFRvIGFjY2VzcyBjb2xvcnMgaW4gb3VyIHBhbGV0dGUsIHdlIHVzZSBhIHZlcnkgc2ltcGxlIGN1c3RvbSBTYXNzIGZ1bmN0aW9uXG4gKiAgVGhpcyBmdW5jdGlvbiBpcyBwbGFjZWQgaGVyZSwgKGFuZCBub3QgaW4gdGhlIHRvb2xib3gpXG4gKiAgc28gd2UgY2FuIHVzZSBpdCBpbiBvdXIgb3RoZXIgc2V0dGluZyBmaWxlcyBpZiB3ZSBuZWVkXG5cblx0VVNBR0U6XG5cblx0LmRlbW8ge1xuXHRcdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDkwMCk7XG5cdH1cblxuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb25maWcgc2V0dGluZ3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBcdCBEZWZpbmVzIHRoZSB0eXBvZ3JhcGhpYyBiYXNlbGluZS5cbiAgIFdlIGRlZmluZSBldmVyeSBzaXplIGluIHBpeGVscywgdGhlIHVuZGVybHlpbmcgc3lzdGVtXG4gICBjb252ZXJ0cyB0aGUgcmVzcGVjdGl2ZSB1bml0cyB0byB0aGUgcmVzcG9uc2l2ZSBSRU0gdmFsdWUuXG4gXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBPdXIgYmFzZSBmb250LXNpemUgYW5kIGxpbmUtaGVpZ2h0XG4gKi9cbi8qKlxuICpcdEhlcmUgd2UgYXNzaWduIHNob3J0IG5hbWVzIGZvciB0aGUgZm9udCBmYW1pbGllc1xuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRGVmaW5lIGJyZWFrcG9pbnRzIGZvciBnaXZlbiBmb3JtYXRzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogIDIgLSBUT09MU1xuICogIFNpdGUgd2lkZSBtaXhpbnMgYW5kIGZ1bmN0aW9uc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBGdW5jdGlvbnMgdXNlZCBpbiBncmlkIGNhbGN1bGF0aW9uXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgKiBSZXR1cm4gcGVyY2VudGFnZSBiYXNlZCBvbiBhbW91bnQgb2YgY29sdW1uc1xuICAqIFVzZSBwYXJlbnQgY29sdW1uIHNpemUgdG8gYWRqdXN0IHRoZSBvcmlnaW5cbiAgKi9cbi8qKlxuICAqIERlZmF1bHQgZnVuY3Rpb24gZm9yIGNvbHVtbnNcbiAgKiBSZXR1cm4gYXMgcGVyY2VudGFnZVxuICAqL1xuLyoqXG4gICogUmV0dXJuIGFzIHZpZXdwb3J0IHdpZHRoXG4gICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogRm9udCByZWxhdGVkIGZ1bmN0aW9uc1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogIE1peGluIGZvciBzZXR0aW5nIGZvbnQtc2l6ZSBpbiBSRU0gdGhyb3VnaCBhIFNhc3MgTWFwIHdpdGggYWxsIGF2YWlsYWJsZSBzaXplc1xuXG4gICAgVVNBR0U6XG5cbiAgICAubXlDbGFzcyB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSh4bCk7XG4gICAgfVxuXG4gKi9cbi8qIE1lZGlhIHF1ZXJ5IG1peGluIGZvciB3cml0aW5nIE1vYmlsZSBGaXJzdFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFRvb2xib3ggZnVuY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogIE1hdGhzIGhlbHBlcnMuXG4gKiAgSGFsdmUgYW5kIGRvdWJsZSBudW1iZXJzLCByZXR1cm5pbmcgcm91bmRlZCBpbnRlZ2Vycy5cblxuICAgIFVTQUdFOlxuXG4gICAgLmZvbyB7XG4gICAgICAgIHBhZGRpbmc6IGhhbHZlKDMwcHgpO1xuICAgIH1cblxuICovXG4vKipcbiAqICBSZW1vdmUgdGhlIHVuaXQgb2YgYSBsZW5ndGhcbiAqICBAcGFyYW0ge051bWJlcn0gJG51bWJlciAtIE51bWJlciB0byByZW1vdmUgdW5pdCBmcm9tXG4gKiAgQHJldHVybiB7TnVtYmVyfSAtIFVuaXRsZXNzIG51bWJlclxuICovXG4vKiBDaGVjayBpZiB2YWx1ZSBpcyBudW1iZXIgKi9cbi8qIFZhbHVlIHRvIEVtICovXG4vKiBWYWx1ZSB0byBSZW0gKi9cbi8qXG4gKiBTZXQgdmVydGljYWwgc3BhY2luZyBmb3Igdmlld3BvcnQgbGFyZ2VyIHRoYW4gbW9iaWxlXG4gKiBJbiBmbGV4aWJsZSB1bml0cyAodncpIGFuZCBvbiBtYXggdmlld3BvcnQgaW4gYSBmaXhlZCBhbW91bnQgKHB4KVxuXG4gVVNBR0U6XG5cbiAuZXhhbXBsZSB7XG5cdCBAaW5jbHVkZSB2c3BhY2luZyhcblx0XHQncGFkZGluZy10b3AnIDAuMzMsXG5cdFx0J21hcmdpbi1ib3R0b20nIDAuNVxuXHQpO1xuICB9XG5cbiAqL1xuLyoqXG4gKlx0QSBzaW1wbGUgZnVuY3Rpb24gZm9yIHNldHRpbmcgYSBjb25zaXN0ZW50IGJvcmRlci1yYWRpdXNcblxuXHRVU0FHRTpcblxuXHQuY2FyZCB7XG5cdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cztcblx0fVxuXG5cdC5jYXJkLS1hbHQge1xuXHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMobCk7XG5cdH1cblxuICovXG4vKipcbiAqIExvYm90b21pemVkIE93bCBTZWxlY3RvciBtaXhpbjpcbiAqIC0gU2V0IHNwYWNpbmcgZm9yIGNvbnNlY3V0aXZlIGl0ZW1zIHdpdGggbWFyZ2luLXRvcCBvbiBhbGwgYnV0IHRoZSBmaXJzdCBpdGVtXG5cblx0VVNBR0U6XG5cblx0LmJveCB7XG5cdFx0QGluY2x1ZGUgb3dsLWNoaWxkcmVuO1xuXHR9XG5cblx0LmNhcmRfX2l0ZW0ge1xuXHRcdEBpbmNsdWRlIG93bDtcblx0fVxuXG4gKi9cbi8qXG4gKiBMb2JvdG9taXplZCBvd2wgc2VsZWN0b3IuXG4gKiAtIEdpdmVzIHRoZSBjaGlsZHJlbiBvZiB0aGUgZWxlbWVudCBzcGFjaW5nXG4gKiAtIGh0dHBzOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9heGlvbWF0aWMtY3NzLWFuZC1sb2JvdG9taXplZC1vd2xzXG4gKi9cbi8qKlxuICogIFNob3cgaHlwaGVucyBmb3IgZXZlcnkgYnJvd3NlciBzdXBwb3J0aW5nIGl0XG4gKiAgYW5kIHdpbGwgYnJlYWsgbGluZXMgaW4gZXZlcnkgb3RoZXIgYnJvd3NlclxuICovXG4vKlxuICogIFJlc3RyaWN0IGFuIGVsZW1lbnQgdG8gYSBtYXgtd2lkdGggZm9yIGNyZWF0aW5nIGd1dHRlcnMgb24gdGhlIHNpZGVcbiAqL1xuLypcbiAqICBSZXN0cmljdCBhbiBlbGVtZW50IHRvIGEgbWF4LXdpZHRoIGZvciBjcmVhdGluZyBndXR0ZXJzIG9uIHRoZSBzaWRlXG4gKi9cbi8qXG4gKlx0QSBtaXhpbiB0byBzZXQgZWxlbWVudHMgdG8gaXRzIG93biBuYW1lZCBncmlkLWFyZWFcbiAqL1xuLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqICBUaGUgJ3otaW5kZXgtbWFwJyBpcyB1c2VkIGZvciBtYW5hZ2luZyB0aGUgZWxlbWVudHMgc3RhY2tpbmcgb3JkZXIgaW4gdGhlICdyb290JyBzdGFja2luZyBjb250ZXh0XG4gKiAgVGhpcyB3YXkgd2UgaGF2ZSBhIG92ZXJ2aWV3IG9mIGFsbCB0aGUgei1pbmRleCB2YWx1ZXMgdGhhdCBhcmUgdXNlZCBhY3Jvc3MgdGhlIHByb2plY3QuXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgVVNBR0U6XG5cbiAgICBAaW5jbHVkZSB6KHotbW9kYWwpO1xuXG4gKi9cbi8qICAzIC0gRUxFTUVOVFNcbiAqICBQbGFpbiBvbGQgc2ltcGxlIEhUTUwgZWxlbWVudHMgd2l0aG91dCBhIGNsYXNzICh0eXBlIHNlbGVjdG9ycylcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIEJhc2ljIGVsZW1lbnRzIChubyBjbGFzcyBzZWxlY3RvcnMgYWxsb3dlZClcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFNldCB1cCB0aGUgaHRtbFxuICpcbiAqIDEuIE1ha2VzIHN1cmUgdGhhdCBzb21lIGZvbnRzIGFyZSBiZXR0ZXIgcmVuZGVyZWRcbiAqIDIuIFNldCBmb250IHRvIGxpbmluZyBmaWd1cmVzXG4gKlxuICovXG5odG1sIHtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJsbnVtXCI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuYm9keSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY2NjY2NjY2Njc7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1mYW1pbHk6IFwiUnViaWtcIiwgc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IDEuNjY2NjY2NjY2NztcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzhGOUJCMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmNmZjtcbn1cblxuLyoqXG4gKiBbMV0gTWFrZSBzdXJlIGVsZW1lbnRzIGxpa2UgaW5wdXQgYW5kIHRleHRhcmVhIGluaGVyaXQgc29tZSBiYXNlIHByb3BlcnRpZXNcbiAqICAgICBodHRwczovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE2LzExL2Nzcy1pbmhlcml0YW5jZS1jYXNjYWRlLWdsb2JhbC1zY29wZS1uZXctb2xkLXdvcnN0LWJlc3QtZnJpZW5kcy9cbiAqXG4gKiBbMl0gU2V0dGluZyBib3gtc2l6aW5nIHRoZSBiZXN0IHdheSBwZXI6XG4gKiAgICAgaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9pbmhlcml0aW5nLWJveC1zaXppbmctcHJvYmFibHktc2xpZ2h0bHktYmV0dGVyLWJlc3QtcHJhY3RpY2UvXG4gKi9cbioge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuKiwgKjpiZWZvcmUsICo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG4vKipcbiAqIFsxXSBUdXJuIG9mZiB0ZXh0LXNoYWRvdyB3aGVuIHNlbGVjdGluZyB0ZXh0IGZvciBiZXR0ZXIgcmVhZGFiaWxpdHlcbiAqL1xuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiAjMDA3NkZGO1xuICBjb2xvcjogI0YwRjJGNTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIC8qIFsxXSAqL1xufVxuXG4vKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gYXJvdW5kIGZpZ3VyZVxuICovXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogWzFdIFNldHRpbmcgJ3ZlcnRpY2FsLWFsaWduJyByZW1vdmVzIHRoZSB3aGl0ZXNwYWNlIHRoYXQgYXBwZWFycyB1bmRlciAnaW1nJ1xuICpcdCAgIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgZHJvcHBlZCBpbnRvIGEgcGFnZSBhcy1pcy4gU2FmZXIgYWx0ZXJuYXRpdmUgdG9cbiAqXHQgICB1c2luZyAnZGlzcGxheTogYmxvY2s7Jy5cbiAqIFsyXSBSZW1vdmUgYm9yZGVyIC8gZXNwZWNpYWxseSBvbiBvbGRlciBicm93c2Vyc1xuICovXG5pbWcsIHN2ZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC8qWzFdKi9cbiAgYm9yZGVyOiBub25lO1xuICAvKlsyXSovXG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyoqXG4gKiAgTmVlZGVkIGZvciBpT1MgdG8gcHJldmVudCBpbnB1dCB6b29taW5nXG4gKiAgaHR0cHM6Ly91eGNlbGxlbmNlLmNvbS8yMDE0LzAxLzE1L3F1aWNrLWZpeC1pbmNyZWFzZS1mb250LXNpemUtdG8tMTZweC10by1maXgtaW5wdXQtem9vbVxuICovXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG5hOm5vdChbY2xhc3NdKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICM2OTlCRkY7XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogYXV0bztcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4ycztcbn1cbmE6bm90KFtjbGFzc10pOmhvdmVyIHtcbiAgY29sb3I6ICMxYTIyMzM7XG59XG5hOm5vdChbY2xhc3NdKTpob3Zlcjo6YWZ0ZXIge1xuICBoZWlnaHQ6IDJweDtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG59XG5hOm5vdChbY2xhc3NdKTpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6ICMwMDc2RkY7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIGhncm91cCxcbnVsLCBvbCwgZGQsXG5wLCBmaWd1cmUsXG5wcmUsIHRhYmxlLCBmaWVsZHNldCwgaHIge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgY29sb3I6ICM0NzUyNjY7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbmgzIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMzMzMzMzMzMzM7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbmg0IHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG5oNSwgaDYge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS42NjY2NjY2NjY3O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqICBMaXN0c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICpcdERlZmF1bHQgaW5kZW50YXRpb24gdmFsdWUgZm9yIGxpc3RzXG4gKi9cbnVsLFxub2wge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1sZWZ0OiAxLjEyNWVtO1xufVxuXG5kZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vKipcbiAqXHRSZW1vdmUgZXh0cmEgdmVydGljYWwgc3BhY2luZyB3aGVuIG5lc3RpbmcgbGlzdHMuXG4gKi9cbmxpID4gdWwsXG5saSA+IG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogIDQgLSBMYXlvdXQgZWxlbWVudHNcbiAqICBEZXNpZ24gcGF0dGVybnMgKGUuZy4gZ3JpZHMgb3IgbWVkaWEgb2JqZWN0KVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNjc5cHgpIHtcbiAgLmwtYmxvY2sgKyAubC1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogNi4yNXZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjgwcHgpIHtcbiAgLmwtYmxvY2sgKyAubC1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogMTIwcHg7XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogQ29udGFpblxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5sLWNvbnRhaW4ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5sLWRpdmlkZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAubC1kaXZpZGVfX2l0ZW0gKyAubC1kaXZpZGVfX2l0ZW0ge1xuICAgIG1hcmdpbi10b3A6IDI0cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5sLWRpdmlkZV9faXRlbTpudGgtY2hpbGQoMikge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG59XG5cbi5sLWZvcm1fX2JvZHkge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuXG4ubC1mb3JtX19yb3cgKyAubC1mb3JtX19yb3cge1xuICBtYXJnaW4tdG9wOiAyNHB4O1xufVxuXG4ubC1mb3JtX19mb290ZXIge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuXG4ubC1mb3JtX19wb3Qge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgei1pbmRleDogLTE7XG59XG5cbi8qXG4qIFdyYXBwZXIgb2YgdGhlIG1haW4gYm9keVxuKiAoYmV0d2VlbiB0aGUgaGVhZGVyIGFuZCB0aGUgZm9vdGVyKVxuXG4qIFsxXSBBdm9pZCB0aGUgSUUgMTAtMTEgYG1pbi1oZWlnaHRgIGJ1Zy5cbiovXG4ubC1wYWdlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgaGVpZ2h0OiAxMDAlO1xuICAvKiBbMV0gKi9cbn1cblxuLmwtcGFnZV9fYm9keSB7XG4gIHotaW5kZXg6IDQwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDEgMCBhdXRvO1xufVxuXG4ubC1wYWdlX19mb290ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZy1ib3R0b206IDY0cHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgNjAwbXMgZWFzZS1pbi1vdXQ7XG59XG5ib2R5LmlzLWNvb2tpZXMtYWNjZXB0ZWQgLmwtcGFnZV9fZm9vdGVyIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG4ubC1wYWdlX19mb290ZXIgLnN2Zy13cmFwcGVyIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAtMSk7XG59XG4ubC1wYWdlX19mb290ZXIgLnN2Zy13cmFwcGVyIGRlZnMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiAgNSAtIENPTVBPTkVOVFNcbiAqICBEaXNjcmV0ZSBjb21wbGV0ZSBjaHVua3Mgb2YgVUkuXG4gKiAgRGVzaWduZWQgY29tcG9uZW50c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIENvbXBvbmVudHNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmMtYnJlYWRjcnVtYiB7XG4gIHBhZGRpbmctYm90dG9tOiA0cHg7XG59XG5cbi5jLWJyZWFkY3J1bWJfX2xpc3Qge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmMtYnJlYWRjcnVtYl9faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uYy1icmVhZGNydW1iX19pdGVtOm50aC1jaGlsZChuKzIpIC5jLWJyZWFkY3J1bWJfX2ljb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgY29sb3I6ICM2OTlCRkY7XG59XG5cbi5jLWJyZWFkY3J1bWJfX2xpbmsge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xufVxuLmMtYnJlYWRjcnVtYl9fbGluazpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xufVxuLmMtYnJlYWRjcnVtYl9faXRlbS0tbGFzdCAuYy1icmVhZGNydW1iX19saW5rIHtcbiAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogRGVmYXVsdCBidXR0b25cbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uYy1idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40Mjg1NzE0Mjg2O1xuICBwYWRkaW5nOiAxMXB4IDAgMTBweDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjMkY2Q0U2IDAlLCAjNjk5QkZGIDUwJSwgIzJGNkNFNiAxMDAlKTtcbiAgYmFja2dyb3VuZC1zaXplOiAyMDAlO1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNDAwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3M7XG59XG4uYy1idXR0b246aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwJTtcbn1cbi5jLWJ1dHRvbjphY3RpdmU6bm90KDpkaXNhYmxlZCkge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTtcbn1cbi5jLWJ1dHRvbjpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5jLWJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5jLWJ1dHRvbl9fdGV4dCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjIyMjIyMjIyMjI7XG4gIHBhZGRpbmc6IDAgMjVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsZXR0ZXItc3BhY2luZzogMS41cHg7XG59XG5cbi5jLWJ1dHRvbl9faWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xuICBsZWZ0OiAtNHB4O1xuICBoZWlnaHQ6IDEycHg7XG4gIHdpZHRoOiAxNnB4O1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xufVxuLmMtYnV0dG9uOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIC5jLWJ1dHRvbl9faWNvbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpO1xufVxuLmMtYnV0dG9uX19pY29uOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMTVweDtcbn1cbi5jLWJ1dHRvbi0taWNvbiAuYy1idXR0b25fX2ljb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uYy1idXR0b24tLXRleHQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjN0FEM0ZGO1xufVxuLmMtYnV0dG9uLS10ZXh0OmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY29sb3I6ICM0NzUyNjY7XG59XG4uYy1idXR0b24tLXRleHQgLmMtYnV0dG9uX190ZXh0IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4uYy1idXR0b24tLWdob3N0IHtcbiAgcGFkZGluZzogMTBweCAwIDlweDtcbiAgY29sb3I6ICM4RjlCQjM7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3MsIGJvcmRlciAwLjNzO1xufVxuLmMtYnV0dG9uLS1naG9zdDpob3Zlcjpub3QoOmRpc2FibGVkKSB7XG4gIGNvbG9yOiAjNjk3OTk5O1xufVxuXG4uYy1idXR0b24tLW9uLWRhcmsge1xuICBjb2xvcjogd2hpdGU7XG59XG4uYy1idXR0b24tLW9uLWRhcms6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcbn1cblxuLmMtY2FyZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGhlaWdodDogMTAwJTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jLWNhcmRfX3BpY3R1cmUge1xuICB3aWR0aDogMTAwJTtcbiAgZmxleDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jLWNhcmRfX2ltZyB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDdEQkUwO1xufVxuXG4uYy1jYXJkX19sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMTRweCAxMHB4IDE1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjRjBGMkY1O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGMkY1O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcztcbn1cbi5jLWNhcmQ6aG92ZXIgLmMtY2FyZF9fbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGMkY1O1xufVxuXG4uYy1jaGVja2JveCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5jLWNoZWNrYm94X19pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAxcHg7XG4gIHdpZHRoOiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbn1cblxuLmMtY2hlY2tib3hfX3RleHQge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40Mjg1NzE0Mjg2O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICAvKiAxNnB4IHdpZHRoIG9mIGZha2UgY2hlY2tib3ggKyBnYXAgKi9cbiAgLypPdXRlciBib3ggb2YgdGhlIGZha2UgY2hlY2tib3gqL1xuICAvKkNoZWNrbWFyayBvZiB0aGUgZmFrZSBjaGVja2JveCovXG4gIC8qSGlkZSB0aGUgY2hlY2ttYXJrIGJ5IGRlZmF1bHQqL1xuICAvKlVuaGlkZSBvbiB0aGUgY2hlY2tlZCBzdGF0ZSovXG4gIC8qQWRkaW5nIGZvY3VzIHN0eWxlcyBvbiB0aGUgb3V0ZXItYm94IG9mIHRoZSBmYWtlIGNoZWNrYm94Ki9cbiAgLyogTGlua3MgaW5zaWRlIHRoZSB0ZXh0ICovXG59XG4uYy1jaGVja2JveF9fdGV4dDo6YmVmb3JlLCAuYy1jaGVja2JveF9fdGV4dDo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIC8qTmVlZGVkIGZvciB0aGUgbGluZS1oZWlnaHQgdG8gdGFrZSBlZmZlY3QqL1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4uYy1jaGVja2JveF9fdGV4dDo6YmVmb3JlIHtcbiAgaGVpZ2h0OiAxNnB4O1xuICB3aWR0aDogMTZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YwRjJGNTtcbiAgYm9yZGVyOiAycHggc29saWQgI0YwRjJGNTtcbiAgdG9wOiAycHg7XG4gIGxlZnQ6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGxpbmVhcjtcbn1cbi5jLWNoZWNrYm94X190ZXh0OjphZnRlciB7XG4gIGhlaWdodDogNXB4O1xuICB3aWR0aDogMTBweDtcbiAgdG9wOiA3cHg7XG4gIGxlZnQ6IDNweDtcbiAgY29sb3I6ICNGMEYyRjU7XG4gIGJvcmRlci1sZWZ0OiAycHggc29saWQ7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTUzZGVnKTtcbn1cbi5jLWNoZWNrYm94X19pbnB1dCArIC5jLWNoZWNrYm94X190ZXh0OjphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG4uYy1jaGVja2JveF9faW5wdXQ6Y2hlY2tlZCArIC5jLWNoZWNrYm94X190ZXh0OjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3NkZGO1xuICBib3JkZXItY29sb3I6ICMwMDc2RkY7XG59XG4uYy1jaGVja2JveF9faW5wdXQ6Y2hlY2tlZCArIC5jLWNoZWNrYm94X190ZXh0OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4uYy1jaGVja2JveF9faW5wdXQ6Zm9jdXMgKyAuYy1jaGVja2JveF9fdGV4dDo6YmVmb3JlIHtcbiAgb3V0bGluZTogIzNiOTlmYyBhdXRvIDVweDtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm94LXNoYWRvdzogMCAwIDdweCAtMXB4IHJnYmEoMzEsIDMyLCAzNiwgMC44KTtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3NkZGO1xufVxuLmMtY2hlY2tib3hfX3RleHQgPiBhIHtcbiAgY29sb3I6ICMwMDc2RkY7XG59XG4uYy1jaGVja2JveF9fdGV4dCA+IGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5jLWNoZWNrYm94X190ZXh0ID4gYTpob3Zlcjo6YWZ0ZXIge1xuICBjb250ZW50OiBub25lO1xufVxuXG4uYy1jaGVja2JveF9fY291bnQge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMnB4IDhweDtcbiAgY29sb3I6ICNGMEYyRjU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjE1LCAyMTksIDIyNCwgMC43KTtcbiAgYm9yZGVyOiAycHggc29saWQgI0YwRjJGNTtcbiAgdHJhbnNpdGlvbjogYWxsIDgwbXMgbGluZWFyO1xufVxuLmMtY2hlY2tib3hfX2lucHV0OmNoZWNrZWQgfiAuYy1jaGVja2JveF9fY291bnQge1xuICBjb2xvcjogIzAwNzZGRjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3NkZGO1xufVxuXG4uYy1jaGVja2JveC0taGFzLWluZGljYXRvciB7XG4gIG1hcmdpbi10b3A6IDRweDtcbn1cbi5jLWNoZWNrYm94LS1oYXMtaW5kaWNhdG9yIC5jLWNoZWNrYm94X190ZXh0IHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uYy1jbG9zZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxODBtcyBlYXNlLW91dDtcbn1cbi5jLWNsb3NlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDNweCAycHggI0YwRjJGNTtcbn1cbi5jLWNsb3NlOmFmdGVyLCAuYy1jbG9zZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjBweDtcbiAgcmlnaHQ6IDIwJTtcbiAgbGVmdDogMjAlO1xuICBoZWlnaHQ6IDNweDtcbiAgbWFyZ2luLXRvcDogLTJweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNGMEYyRjU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cbi5jLWNsb3NlOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cbi5jLWNsb3NlOmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbn1cbi5jLWNsb3NlOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xufVxuXG4uYy1jdGFfX3N1YnRpdGxlIHtcbiAgY29sb3I6ICM4RjlCQjM7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY2NjY2NjY2Njc7XG59XG5cbi5jLWN0YV9fdGl0bGUge1xuICBtYXJnaW46IDEwcHggMCAzMHB4IDA7XG59XG5cbi5jLWN0YS10ZXh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogODBweDtcbn1cbi5jLWN0YS10ZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA3NSU7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3gtc2hhZG93OiAwIC0yNXB4IDI1cHggLTI1cHggcmdiYSgxOTgsIDIxNCwgMjI3LCAwLjUpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTUwcHgpIHtcbiAgLmMtY3RhLXRleHQ6YmVmb3JlIHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlICsgNDBweCk7XG4gIH1cbn1cblxuLmMtY3RhLXRleHQtLXdpdGhvdXQtc2hhZG93OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jLWN0YS10ZXh0X19ncmlkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTUwcHgpIHtcbiAgLmMtY3RhLXRleHRfX2dyaWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuXG4uYy1jdGEtdGV4dF9fbWFpbiB7XG4gIHBhZGRpbmc6IDUwcHggNDVweCA2MHB4IDQ1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvZ3JhZGllbnQtYmcuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgY29sb3I6IHdoaXRlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgLmMtY3RhLXRleHRfX21haW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NTBweCkge1xuICAuYy1jdGEtdGV4dF9fbWFpbiB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAwcHgpIHtcbiAgLmMtY3RhLXRleHRfX21haW4ge1xuICAgIHBhZGRpbmc6IDEwMHB4IDQ1cHggMTIwcHggNDVweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTUwMHB4KSB7XG4gIC5jLWN0YS10ZXh0X19tYWluIHtcbiAgICBwYWRkaW5nOiAxMDBweCA5MHB4IDEyMHB4IDkwcHg7XG4gIH1cbn1cbi5jLWN0YS10ZXh0X19tYWluIGgyIHtcbiAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAwcHgpIHtcbiAgLmMtY3RhLXRleHRfX21haW4gaDIge1xuICAgIG1hcmdpbjogMCAwIDYwcHggMDtcbiAgfVxufVxuLmMtY3RhLXRleHRfX21haW4gcCB7XG4gIG1hcmdpbjogMCAwIDI1cHggMDtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDQ0NDQ0NDQ0NDtcbn1cbi5jLWN0YS10ZXh0X19tYWluIHA6bGFzdC1vZi10eXBlIHtcbiAgbWFyZ2luOiAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMwMHB4KSB7XG4gIC5jLWN0YS10ZXh0X19tYWluIHAge1xuICAgIG1hcmdpbjogMCAwIDUwcHggMDtcbiAgfVxufVxuLmMtY3RhLXRleHRfX21haW4gc3Ryb25nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiA5cHg7XG4gIG1hcmdpbjogMCAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGNvbG9yOiAjNjk5QkZGO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xufVxuXG4uYy1jdGEtdGV4dF9fc2lkZSB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMjBweCAyMHB4O1xuICBwYWRkaW5nOiA0NXB4O1xuICBib3gtc2hhZG93OiAwIDZweCAyNXB4IDAgcmdiYSgyMDMsIDIyNSwgMjQ0LCAwLjUpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgLmMtY3RhLXRleHRfX3NpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0yMHB4O1xuICAgIHBhZGRpbmc6IDYwcHggNDBweCA0MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NTBweCkge1xuICAuYy1jdGEtdGV4dF9fc2lkZSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5jLWN0YS10ZXh0X19zaWRlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDIwcHggMjBweCAwO1xuICAgIGJveC1zaGFkb3c6IDZweCA2cHggMjVweCAwIHJnYmEoMjAzLCAyMjUsIDI0NCwgMC41KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMwMHB4KSB7XG4gIC5jLWN0YS10ZXh0X19zaWRlIHtcbiAgICBwYWRkaW5nOiA3MHB4IDQ1cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE1MDBweCkge1xuICAuYy1jdGEtdGV4dF9fc2lkZSB7XG4gICAgcGFkZGluZzogNzBweDtcbiAgfVxufVxuXG4uYy1jdGFQZXJzb24ge1xuICBwYWRkaW5nLXRvcDogMTQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA1NHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCAtMjVweCAyNXB4IC0yNXB4IHJnYmEoMTk4LCAyMTQsIDIyNywgMC41KTtcbn1cblxuLmMtY3RhUGVyc29uLS13aXRob3V0LXNoYWRvdyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MDBweCkge1xuICAuYy1jdGFQZXJzb25fX21haW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgLmMtY3RhUGVyc29uX19tYWluID4gKiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXgtd2lkdGg6IDQ4MHB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY2OXB4KSB7XG4gIC5jLWN0YVBlcnNvbl9fbGVmdCB7XG4gICAgbWFyZ2luOiAwIGF1dG8gNjBweCBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjcwcHgpIGFuZCAobWF4LXdpZHRoOiA4OTlweCkge1xuICAuYy1jdGFQZXJzb25fX2xlZnQge1xuICAgIG1hcmdpbjogMCBhdXRvIDYwcHggYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NzlweCkge1xuICAuYy1jdGFQZXJzb25fX3JpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLmMtY3RhUGVyc29uX19yaWdodCAuYy1jdGFQZXJzb25fX3BlcnNvbmFsRGF0YSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4MHB4KSB7XG4gIC5jLWN0YVBlcnNvbl9fcmlnaHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICAuYy1jdGFQZXJzb25fX3JpZ2h0IC5jLWN0YVBlcnNvbl9fc3ZnSG9sZGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4MHB4KSBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgLmMtY3RhUGVyc29uX19yaWdodCB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSB7XG4gIC5jLWN0YVBlcnNvbl9fcmlnaHQge1xuICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgfVxufVxuLmMtY3RhUGVyc29uX19yaWdodCAuYy1jdGFQZXJzb25fX3N2Z0hvbGRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDE2MHB4O1xufVxuLmMtY3RhUGVyc29uX19yaWdodCAuYy1jdGFQZXJzb25fX3BlcnNvbmFsRGF0YSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmMtY3RhX19wZXJzb25hbC1uYW1lIHtcbiAgbWFyZ2luOiAwIDAgMTBweCAwO1xufVxuXG4uYy1jdGFfX3BlcnNvbmFsLWZ1bmN0aW9uIHtcbiAgbWFyZ2luOiAwIDAgMjVweCAwO1xuICBjb2xvcjogIzY5OUJGRjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4xODc1O1xufVxuXG4uYy1jdGFfX3BlcnNvbmFsLXBob25lIHtcbiAgY29sb3I6ICM0NzUyNjY7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYy1mYXFfX2xpc3Qge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmMtZmFxX19pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM2OTlCRkY7XG4gIG1heC13aWR0aDogNDVlbTtcbn1cblxuLmMtZmFxX19sYWJlbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMTZweCAwO1xufVxuXG4uYy1mYXFfX251bWJlciB7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbn1cblxuLmMtZmFxX19oZWFkaW5nIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiAjNDc1MjY2O1xuICB0cmFuc2l0aW9uOiBjb2xvciAxNTBtcyBsaW5lYXI7XG59XG4uYy1mYXFfX2xhYmVsOmhvdmVyIC5jLWZhcV9faGVhZGluZyB7XG4gIGNvbG9yOiAjOEY5QkIzO1xufVxuLmMtZmFxX19sYWJlbC5pcy1hY3RpdmUgLmMtZmFxX19oZWFkaW5nIHtcbiAgY29sb3I6ICM2OTlCRkY7XG59XG5cbi5jLWZhcV9fYXJyb3cge1xuICBmbGV4OiBub25lO1xuICBjb2xvcjogIzJGNkNFNjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDE1MG1zIGVhc2UtaW4tb3V0O1xufVxuLmMtZmFxX19sYWJlbC5pcy1hY3RpdmUgLmMtZmFxX19hcnJvdyB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjI1dHVybik7XG59XG5cbi5jLWZhcV9fY29udGVudCB7XG4gIG1heC1oZWlnaHQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1pbi1vdXQ7XG59XG4uaXMtYWN0aXZlIH4gLmMtZmFxX19jb250ZW50IHtcbiAgcGFkZGluZy1ib3R0b206IDI0cHg7XG4gIG1heC1oZWlnaHQ6IDEwMDBweDtcbiAgb3BhY2l0eTogMTtcbiAgcG9pbnRlci1ldmVudHM6IGFsbDtcbn1cblxuLmMtZmFxX19hY3Rpb24ge1xuICBtYXJnaW4tdG9wOiA0OHB4O1xufVxuXG4uYy1mb3JtLWdyb3VwX19sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogNHB4IDA7XG59XG5cbi5jLWZvcm0tZ3JvdXBfX2Vycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5oYXMtZXJyb3IgLmMtZm9ybS1ncm91cF9fZXJyb3I6bm90KDplbXB0eSkge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xNDI4NTcxNDI5O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogOHB4O1xuICBjb2xvcjogIzAwNzZGRjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxMTgsIDI1NSwgMC4xKTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwNzZGRjtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDRweCA0cHg7XG59XG5cbi5jLWZvcm0tZmVlZGJhY2sge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBtYXJnaW46IDE2cHggMCAwO1xuICBwYWRkaW5nOiAyNHB4IDMycHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMwMDc2RkY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTE4LCAyNTUsIDAuMSk7XG59XG4uYy1mb3JtLWZlZWRiYWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1mZWVkYmFjayk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IC0xNnB4O1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG4uYy1mb3JtLWZlZWRiYWNrOm5vdCg6ZW1wdHkpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jLWZ1bGwtaW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3OTlweCkge1xuICAuYy1mdWxsLWltYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmMtZnVsbC1pbWFnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTV2dztcbiAgfVxufVxuXG4uYy1mdWxsLWltYWdlX19pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cbi5jLWZ1bGwtaW1hZ2VfX2ltYWdlIC5jLWNsaXBwZWQtaW1hZ2VfX3N2ZyB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uYy1mdWxsLWltYWdlX19zaGFwZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgbGVmdDogMDtcbiAgdG9wOiA3NSU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmMtZnVsbC1pbWFnZV9fc2hhcGUgc3ZnLCAuYy1mdWxsLWltYWdlX19zaGFwZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmMtaGFtYnVyZ2VyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogI0YwRjJGNTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uYy1oYW1idXJnZXI6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgM3B4IDJweCAjMDA3NkZGO1xufVxuLmMtaGFtYnVyZ2VyID4gc3BhbiwgLmMtaGFtYnVyZ2VyOmFmdGVyLCAuYy1oYW1idXJnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDIwcHg7XG4gIHJpZ2h0OiAyMCU7XG4gIGxlZnQ6IDIwJTtcbiAgaGVpZ2h0OiAzcHg7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTUwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbi1kZWxheTogMTAwbXM7XG59XG4uYy1oYW1idXJnZXI6YmVmb3JlIHtcbiAgdG9wOiAxMnB4O1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwLjgpO1xufVxuLmMtaGFtYnVyZ2VyOmFmdGVyIHtcbiAgdG9wOiAyOHB4O1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwLjUpO1xufVxuLmMtaGFtYnVyZ2VyOmhvdmVyID4gc3BhbiB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDAuOCk7XG59XG4uYy1oYW1idXJnZXI6aG92ZXI6YWZ0ZXIsIC5jLWhhbWJ1cmdlcjpob3ZlcjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbn1cbi5pcy1vdmVybGF5LW1lbnUtYWN0aXZlIC5jLWhhbWJ1cmdlciA+IHNwYW4ge1xuICB0cmFuc2Zvcm06IHNjYWxlWCgxKSAhaW1wb3J0YW50O1xufVxuLmlzLW92ZXJsYXktbWVudS1hY3RpdmUgLmMtaGFtYnVyZ2VyOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzcHgpIHNjYWxlWCgxKSAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwbXM7XG59XG4uaXMtb3ZlcmxheS1tZW51LWFjdGl2ZSAuYy1oYW1idXJnZXI6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCkgc2NhbGVYKDEpICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBtcztcbn1cblxuLmMtaGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGNvbG9yOiAjRjBGMkY1O1xufVxuXG4uYy1pbnB1dCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA2cHggMTZweDtcbiAgY29sb3I6ICNGMEYyRjU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMEYyRjU7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMxRjIwMjQ7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4uaGFzLWVycm9yIC5jLWlucHV0IHtcbiAgYm94LXNoYWRvdzogMCAwIDdweCAtM3B4ICMwMDc2RkY7XG4gIGJvcmRlci1jb2xvcjogIzAwNzZGRjtcbn1cbi5jLWlucHV0OmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDdweCAtM3B4ICMwMDc2RkY7XG4gIGJvcmRlci1jb2xvcjogIzAwNzZGRjtcbn1cbnRleHRhcmVhLmMtaW5wdXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTZweDtcbiAgbWluLWhlaWdodDogMTU2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG4uYy1sYW5ndWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmMtbGFuZ3VhZ2VfX2J1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDhweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjRjBGMkY1O1xuICBib3JkZXI6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMTUwbXMsIGJveC1zaGFkb3cgMTUwbXM7XG59XG4uYy1sYW5ndWFnZV9fYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmMtbGFuZ3VhZ2VfX2ljb24ge1xuICBmbGV4OiBub25lO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmMtbGFuZ3VhZ2VfX2xhYmVsIHtcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5jLWxhbmd1YWdlX19kcm9wZG93biB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMTAwJTtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm94LXNoYWRvdzogMCAwIDEycHggMXB4IHJnYmEoMjQwLCAyNDIsIDI0NSwgMC4xNSk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zLCB0cmFuc2Zvcm0gMzAwbXM7XG59XG4uYy1sYW5ndWFnZTpob3ZlciAuYy1sYW5ndWFnZV9fZHJvcGRvd24ge1xuICBvcGFjaXR5OiAxO1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uYy1sYW5ndWFnZV9faXRlbSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMEYyRjU7XG59XG4uYy1sYW5ndWFnZV9faXRlbTpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDdEQkUwO1xufVxuLmMtbGFuZ3VhZ2VfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbn1cbi5jLWxhbmd1YWdlX19pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbn1cbi5jLWxhbmd1YWdlX19pdGVtOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5jLWxhbmd1YWdlX19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDRweCA4cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMxRjIwMjQ7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXM7XG59XG4uYy1sYW5ndWFnZV9fbGluazpob3ZlciB7XG4gIGNvbG9yOiAjRjBGMkY1O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGMkY1O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NDBweCkge1xuICAuYy1sYXJnZS1xdW90ZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuXG4uYy1sYXJnZS1xdW90ZV9faW1hZ2Uge1xuICBtYXgtd2lkdGg6IDI4MHB4O1xuICBtYXJnaW46IGF1dG87XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NDBweCkge1xuICAuYy1sYXJnZS1xdW90ZV9faW1hZ2Uge1xuICAgIG1heC13aWR0aDogMzYwcHg7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuLmMtbGFyZ2UtcXVvdGVfX2ltYWdlIC5jLWNsaXBwZWQtaW1hZ2VfX3N2ZyB7XG4gIGNvbG9yOiAjZTRmNmZmO1xufVxuLmMtbGFyZ2UtcXVvdGVfX2ltYWdlIC5jLWNsaXBwZWQtaW1hZ2VfX2JhY2tncm91bmQge1xuICBvcGFjaXR5OiAxO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3MzlweCkge1xuICAuYy1sYXJnZS1xdW90ZV9fbWFpbiB7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG8gMDtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NDBweCkge1xuICAuYy1sYXJnZS1xdW90ZV9fbWFpbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogNzAwcHg7XG4gIH1cbn1cblxuLmMtbGFyZ2UtcXVvdGVfX3RleHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYy1sYXJnZS1xdW90ZV9fdGV4dCBoMiB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG5cbi5jLWxhcmdlLXF1b3RlX19xdW90ZS1tYXJrIHtcbiAgd2lkdGg6IDM1cHg7XG4gIG1heC1oZWlnaHQ6IDMwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3MzlweCkge1xuICAuYy1sYXJnZS1xdW90ZV9fcXVvdGUtbWFyayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc0MHB4KSB7XG4gIC5jLWxhcmdlLXF1b3RlX19xdW90ZS1tYXJrIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTY1cHg7XG4gICAgdG9wOiAtNXB4O1xuICB9XG59XG5cbi5jLWxhcmdlLXF1b3RlX19uYW1lIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICM4RjlCQjM7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi5jLWxhcmdlLXF1b3RlX19mdW5jdGlvbiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLmMtbmF2IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uYy1uYXZfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmMtbmF2X19pdGVtIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjY2NjY2NjY2NztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAyJTtcbn1cbi5jLW5hdl9faXRlbTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uYy1uYXZfX2xpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDRweDtcbiAgY29sb3I6ICNGMEYyRjU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMTUwbXMgbGluZWFyO1xufVxuLmMtbmF2X19saW5rOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTtcbiAgbGVmdDogNHB4O1xuICBib3R0b206IDFweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDhweCk7XG4gIGhlaWdodDogMnB4O1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSByaWdodDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zIGN1YmljLWJlemllcigwLjg2LCAwLCAwLjA3LCAxKTtcbn1cbi5jLW5hdl9fbGluazpob3Zlcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBsZWZ0O1xufVxuLmlzLWFjdGl2ZS5jLW5hdl9faXRlbSAuYy1uYXZfX2xpbmsge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNGMEYyRjU7XG59XG4uaXMtYWN0aXZlLmMtbmF2X19pdGVtIC5jLW5hdl9fbGluazo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBsZWZ0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGMkY1O1xufVxuLmMtbmF2X19saW5rOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogIzAwNzZGRjtcbn1cblxuLypcbiAqIFBhZ2UgdGl0bGVcbiAqL1xuLmMtcGFnZS10aXRsZSB7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICAtbXMtaHlwaGVuczogYXV0bztcbiAgaHlwaGVuczogYXV0bztcbiAgcGFkZGluZy10b3A6IDMycHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMnB4O1xuICBjb2xvcjogI0YwRjJGNTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLmMtcGFnZS10aXRsZV9fbGVhZCB7XG4gICAgbWFyZ2luLXRvcDogLTE2cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgfVxufVxuXG4uYy1wYWdlLXRpdGxlX19oZWFkaW5nIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsaW5lLWhlaWdodDogMS4zO1xufVxuXG4uYy1wYWdpbmF0aW9uIHtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMUYyMDI0O1xufVxuXG4uYy1wYWdpbmF0aW9uX19pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAuYy1wYWdpbmF0aW9uX19pdGVtIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5jLXBhZ2luYXRpb25fX2l0ZW06Zmlyc3QtY2hpbGQsIC5jLXBhZ2luYXRpb25fX2l0ZW06bGFzdC1jaGlsZCwgLmMtcGFnaW5hdGlvbl9faXRlbS5pcy1sYXN0LXBhZ2UsIC5jLXBhZ2luYXRpb25fX2l0ZW0uaXMtYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5jLXBhZ2luYXRpb25fX2l0ZW0uaXMtbGFzdC1wYWdlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuLmMtcGFnaW5hdGlvbl9faXRlbSArIC5jLXBhZ2luYXRpb25fX2l0ZW0ge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkO1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG59XG5cbi5jLXBhZ2luYXRpb25fX3RleHQsXG4uYy1wYWdpbmF0aW9uX19saW5rLFxuLmMtcGFnaW5hdGlvbl9fcHJldixcbi5jLXBhZ2luYXRpb25fX25leHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLXdpZHRoOiA0OHB4O1xuICBtaW4taGVpZ2h0OiA0OHB4O1xuICBwYWRkaW5nOiA4cHg7XG59XG5cbi5jLXBhZ2luYXRpb25fX3RleHQge1xuICBjb2xvcjogIzFGMjAyNDtcbiAgb3BhY2l0eTogMC4zNTtcbn1cblxuLmMtcGFnaW5hdGlvbl9fbGluayB7XG4gIGNvbG9yOiAjMUYyMDI0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDIwMG1zLCBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zO1xufVxuLmMtcGFnaW5hdGlvbl9fbGluazpob3ZlciB7XG4gIGNvbG9yOiAjRjBGMkY1O1xuICBiYWNrZ3JvdW5kOiAjMWEyMjMzO1xufVxuLmlzLWFjdGl2ZSA+IC5jLXBhZ2luYXRpb25fX2xpbmsge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMTBweCAtNXB4ICMxRjIwMjQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogd2hpdGU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9ncmFkaWVudC1iZy5zdmdcIik7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xufVxuXG4uYy1wYWdpbmF0aW9uX19wcmV2LFxuLmMtcGFnaW5hdGlvbl9fbmV4dCB7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMjAwbXM7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbn1cbi5jLXBhZ2luYXRpb25fX3ByZXYuaXMtaW5hY3RpdmUsXG4uYy1wYWdpbmF0aW9uX19uZXh0LmlzLWluYWN0aXZlIHtcbiAgY29sb3I6ICNGMEYyRjU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4uYy1wYWdpbmF0aW9uX19wcmV2IHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC4yNXR1cm4pO1xufVxuXG4uYy1wcm9qZWN0b3Ige1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiA1NzZweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5jLXByb2plY3Rvcl9fZmlndXJlIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xufVxuXG4uYy1wcm9qZWN0b3JfX2NhcHRpb24ge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgZ3JpZC1jb2x1bW46IDE7XG4gIGdyaWQtcm93OiAyO1xuICB1c2VyLXNlbGVjdDogdGV4dDtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBjb2xvcjogI0YwRjJGNTtcbn1cblxuLmMtcHJvamVjdG9yX19waWN0dXJlIHtcbiAgZ3JpZC1jb2x1bW46IDE7XG4gIGdyaWQtcm93OiAxO1xuICBhbGlnbi1zZWxmOiBlbmQ7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMEYyRjU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNTAwbXM7XG59XG4uYy1wcm9qZWN0b3JfX3BpY3R1cmUuaXMtYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmMtcHJvamVjdG9yX19pbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Q3REJFMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5jLXByb2plY3Rvcl9faW1nIHtcbiAgICBtYXgtaGVpZ2h0OiA3OHZoO1xuICB9XG59XG5cbi5jLXByb2plY3Rvcl9fY29udHJvbCB7XG4gIGdyaWQtY29sdW1uOiAxO1xuICBncmlkLXJvdzogMTtcbiAgYWxpZ24tc2VsZjogZW5kO1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xufVxuXG4uYy1wb3N0LWNhdGVnb3JpZXNfX2xhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogLTIwcHg7XG59XG5cbi5jLXBvc3QtY2F0ZWdvcmllcyB7XG4gIG1hcmdpbjogLTVweDtcbn1cblxuLmMtcG9zdC1jYXRlZ29yaWVzX19pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDVweDtcbiAgcGFkZGluZzogOHB4IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IDJweCBzb2xpZCB3aGl0ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG59XG4uYy1wb3N0LWNhdGVnb3JpZXNfX2l0ZW06bm90KC5pcy1hY3RpdmUpOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbn1cbi5jLXBvc3QtY2F0ZWdvcmllc19faXRlbS5pcy1hY3RpdmUge1xuICBib3JkZXItY29sb3I6ICM2OTlCRkY7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvZ3JhZGllbnQtYmcuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTtcbn1cblxuLmMtcmVmZXJlbmNlc19fdGl0bGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7XG59XG5cbi5jLXJlZmVyZW5jZXNfX2Jsb2NrcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5jLXJlZmVyZW5jZXNfX2Jsb2NrIHtcbiAgbWFyZ2luOiAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmMtcmVmZXJlbmNlc19fYmxvY2sgKyAuYy1yZWZlcmVuY2VzX19ibG9jayB7XG4gIG1hcmdpbi1sZWZ0OiA0LjE2NjY2NjY2NjclO1xufVxuLmMtcmVmZXJlbmNlc19fYmxvY2sgaW1nIHtcbiAgd2lkdGg6IDEzMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmMtcmVmZXJlbmNlLWNhcmRfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYy1yZWZlcmVuY2UtY2FyZF9fb3ZlcnZpZXcge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gIC5jLXJlZmVyZW5jZS1jYXJkX19ibG9ja3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbjogLTIwcHg7XG4gIH1cbn1cblxuLmMtcmVmZXJlbmNlLWNhcmRfX2l0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IC0xNXB4IHJnYmEoMTA0LCAxNTMsIDI1MiwgMC41KSwgMCAyMHB4IDQwcHggLTEwcHggcmdiYSgxMDQsIDE1MywgMjUyLCAwLjEpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgLmMtcmVmZXJlbmNlLWNhcmRfX2l0ZW0gKyAuYy1yZWZlcmVuY2UtY2FyZF9faXRlbSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgLmMtcmVmZXJlbmNlLWNhcmRfX2l0ZW0ge1xuICAgIG1hcmdpbjogMjBweDtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtIDIwcHggKiA0KSAvIDIpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmMtcmVmZXJlbmNlLWNhcmRfX2l0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gMjBweCAqIDYpIC8gMyk7XG4gIH1cbn1cblxuLmMtcmVmZXJlbmNlLWNhcmRfX2xpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMTUwbXMgbGluZWFyO1xufVxuLmMtcmVmZXJlbmNlLWNhcmRfX2xpbms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGMkY1O1xufVxuLmMtcmVmZXJlbmNlLWNhcmRfX2xpbms6aG92ZXI6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogI0YwRjJGNTtcbn1cbi5jLXJlZmVyZW5jZS1jYXJkX19saW5rOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogIzAwNzZGRjtcbn1cblxuLmMtcmVmZXJlbmNlLWNhcmRfX2JvZHkge1xuICBwYWRkaW5nOiAzNnB4IDI0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG59XG4uYy1yZWZlcmVuY2UtY2FyZF9fbGluazpob3ZlciAuYy1yZWZlcmVuY2UtY2FyZF9fYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMEYyRjU7XG59XG5cbi5jLXJlZmVyZW5jZS1jYXJkX19pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctYm90dG9tOiA2NSU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jLXJlZmVyZW5jZS1jYXJkX19iZy1pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLmMtcmVmZXJlbmNlLWNhcmRfX2xpbms6aG92ZXIgLmMtcmVmZXJlbmNlLWNhcmRfX2JnLWltYWdlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDQsIDEuMDQsIDEpO1xufVxuXG4uYy1yZWZlcmVuY2UtY2FyZF9fYWN0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAjNDc1MjY2O1xufVxuXG4uYy1yZWZlcmVuY2UtY2FyZF9fcmVhZG1vcmUge1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cblxuLyoqXG4gKiBTZWxlY3Qgc3R5bGVkIHdpdGhvdXQgZXh0cmEgY29udGFpbmluZyBlbGVtZW50c1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBCYXNlZCBvbiB0aGlzIGFydGljbGU6XG4gKiBodHRwczovL3d3dy5maWxhbWVudGdyb3VwLmNvbS9sYWIvc2VsZWN0LWNzcy5odG1sXG4gKi9cbi5jLXNlbGVjdCB7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTQyODU3MTQyOTtcbiAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy10b3A6IDZweDtcbiAgcGFkZGluZy1ib3R0b206IDZweDtcbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAzMnB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDUwMHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW46IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGNvbG9yOiAjMUYyMDI0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGMkY1O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL3NlbGVjdC1hcnJvdy5zdmdcIiksIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNGMEYyRjUgMCUsICNGMEYyRjUgMTAwJSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIHJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMTNweCB0b3AgNTAlLCAwIDA7XG4gIGJhY2tncm91bmQtc2l6ZTogMTJweCBhdXRvLCAxMDAlO1xuICBib3JkZXI6IDJweCBzb2xpZCAjRjBGMkY1O1xuICB0cmFuc2l0aW9uOiBib3JkZXIgMTUwbXMgbGluZWFyO1xufVxuLmMtc2VsZWN0OmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjRjBGMkY1O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGMkY1O1xufVxuLmMtc2VsZWN0OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3NkZGO1xuICBib3gtc2hhZG93OiAwIDAgN3B4IC0zcHggcmdiYSgzMSwgMzIsIDM2LCAwLjcpO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggLW1vei1tYWMtZm9jdXNyaW5nO1xuICBjb2xvcjogIzFGMjAyNDtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5jLXNlbGVjdCBvcHRpb24ge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4uYy1zZWxlY3Q6Oi1tcy1leHBhbmQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYy1zZXJ2aWNlcG9pbnQge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1hcmdpbi10b3A6IC0xNnB4O1xufVxuXG4uYy1zZXJ2aWNlcG9pbnRfX2ltYWdlIHtcbiAgbWF4LXdpZHRoOiAxNzZweDtcbiAgZmxleDogMDtcbiAgbWFyZ2luLXRvcDogMTZweDtcbiAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MzlweCkge1xuICAuYy1zZXJ2aWNlcG9pbnRfX2ltYWdlIHtcbiAgICB3aWR0aDogOTZweDtcbiAgfVxufVxuXG4uYy1zZXJ2aWNlcG9pbnRfX2NvbnRlbnQge1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgLW1zLWh5cGhlbnM6IGF1dG87XG4gIGh5cGhlbnM6IGF1dG87XG4gIGZsZXgtZ3JvdzogMTtcbiAgZmxleC1iYXNpczogMTY1cHg7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG59XG5cbi5jLXNlcnZpY2Vwb2ludF9fYm9keSB7XG4gIG1hcmdpbi10b3A6IDhweDtcbn1cblxuLmMtc2VydmljZXBvaW50X19kYXRhIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4uYy1zZXJ2aWNlcG9pbnRfX2Zvb3RlciB7XG4gIG1hcmdpbi10b3A6IDhweDtcbn1cblxuLmMtc2VydmljZXBvaW50X19oZWFkaW5nIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjY2NjY2NjY2NztcbiAgY29sb3I6ICNGMEYyRjU7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG59XG5cbi5jLXNlcnZpY2UtYmxvY2tzX190aXRsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmMtc2VydmljZS1ibG9ja19fZ3JpZCB7XG4gIHBhZGRpbmctdG9wOiAyOHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcwMHB4KSB7XG4gIC5jLXNlcnZpY2UtYmxvY2tfX2dyaWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDAgYXV0byAtNDBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgLmMtc2VydmljZS1ibG9ja19fZ3JpZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG5cbi5jLXNlcnZpY2UtYmxvY2sge1xuICBwYWRkaW5nOiA2MHB4IDMwcHg7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIG1pbi1oZWlnaHQ6IDQ0NHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGJveC1zaGFkb3c6IDAgLTEwcHggMjBweCAtMTVweCByZ2JhKDEzNywgMTU1LCAxOTEsIDAuNSksIDAgMTBweCAyMHB4IC0xNXB4IHJnYmEoMTA0LCAxNTMsIDI1MiwgMC41KSwgMCAyMHB4IDQwcHggLTEwcHggcmdiYSgxMDQsIDE1MywgMjUyLCAwLjEpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMsIGJveC1zaGFkb3cgMC4ycztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY5OXB4KSB7XG4gIC5jLXNlcnZpY2UtYmxvY2sge1xuICAgIG1heC13aWR0aDogMzQwcHg7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcwMHB4KSB7XG4gIC5jLXNlcnZpY2UtYmxvY2sge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gMjBweCAqIDQpIC8gMik7XG4gICAgbWFyZ2luOiAyMHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTgwcHgpIHtcbiAgLmMtc2VydmljZS1ibG9jayB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAzMHB4ICogNikgLyAzKTtcbiAgICBtYXgtd2lkdGg6IDM0MHB4O1xuICB9XG59XG4uYy1zZXJ2aWNlLWJsb2NrIGgzIHtcbiAgY29sb3I6ICM0NzUyNjY7XG59XG4uYy1zZXJ2aWNlLWJsb2NrIHAge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uYy1zZXJ2aWNlLWJsb2NrOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICBib3gtc2hhZG93OiAwIDIwcHggNDBweCAtMTBweCByZ2JhKDEwNCwgMTUzLCAyNTIsIDAuNSk7XG59XG5cbi5jLXNlcnZpY2UtYmxvY2stLW5hcnJvdyB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICM2OTlCRkYgMCUsICMyRjZDRTYgMTAwJSk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgd2lkdGg6IDEyMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNjA5cHgpIHtcbiAgLmMtc2VydmljZS1ibG9jay0tbmFycm93IHtcbiAgICB3aWR0aDogMzQwcHg7XG4gIH1cbn1cbi5jLXNlcnZpY2UtYmxvY2stLW5hcnJvdyAuYy1idXR0b25fX2ljb24ge1xuICB3aWR0aDogMTlweDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLmMtc2VydmljZS1ibG9ja19faWNvbiB7XG4gIHdpZHRoOiAxMDBweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uYy1idXR0b24tLWdob3N0IHtcbiAgY29sb3I6ICM2OTlCRkY7XG59XG5cbi5jLXNlcnZpY2UtYmxvY2tfX3N1YnRpdGxlIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4zMTI1O1xuICBjb2xvcjogIzJGNkNFNjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTQ5cHgpIHtcbiAgLmMtc2VydmljZS10eXBlX19ncmlkID4gKiB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTUwcHgpIHtcbiAgLmMtc2VydmljZS10eXBlX19ncmlkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMjBweCAtMTVweCByZ2JhKDEwNCwgMTUzLCAyNTIsIDAuNSksIDAgMjBweCA0MHB4IC0xMHB4IHJnYmEoMTA0LCAxNTMsIDI1MiwgMC4xKTtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICB9XG4gIC5jLXNlcnZpY2UtdHlwZV9fZ3JpZCA+ICoge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLmMtc2VydmljZS10eXBlX19pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDcwcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NDlweCkge1xuICAuYy1zZXJ2aWNlLXR5cGVfX2l0ZW0ge1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IC0xNXB4IHJnYmEoMTA0LCAxNTMsIDI1MiwgMC41KSwgMCAyMHB4IDQwcHggLTEwcHggcmdiYSgxMDQsIDE1MywgMjUyLCAwLjEpO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgcGFkZGluZzogNDBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk0OXB4KSBhbmQgKG1pbi13aWR0aDogNzYwcHgpIHtcbiAgLmMtc2VydmljZS10eXBlX19pdGVtIHtcbiAgICBtYXgtd2lkdGg6IDU4MHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NTBweCkge1xuICAuYy1zZXJ2aWNlLXR5cGVfX2l0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAuYy1zZXJ2aWNlLXR5cGVfX2l0ZW06bGFzdC1jaGlsZDphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNzBweDtcbiAgICBsZWZ0OiAwO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDE0MHB4KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQ3LCAxMDgsIDIzMCwgMC4yNSk7XG4gIH1cbn1cblxuLmMtc2VydmljZS10eXBlX19pY29uIHtcbiAgd2lkdGg6IDg1cHg7XG4gIG1hcmdpbjogMCBhdXRvIDMwcHg7XG59XG5cbi5jLXNlcnZpY2UtdHlwZV9fY29udGVudCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuLmMtc2VydmljZS10eXBlX19jb250ZW50IGgyIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuLmMtc2VydmljZS10eXBlX19jb250ZW50IHAge1xuICBtYXgtd2lkdGg6IDQ4MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uYy1zZXJ2aWNlLXR5cGVfX2J1dHRvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5jLXNlcnZpY2UtdHlwZV9fYnV0dG9uIC5jLWJ1dHRvbi0tZ2hvc3Qge1xuICBjb2xvcjogIzY5OUJGRjtcbn1cblxuLmMtc2VydmljZS1oZWFkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTYwcHgpIGFuZCAobWF4LXdpZHRoOiAxMzk5cHgpIHtcbiAgLmMtc2VydmljZS1oZWFkaW5nIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxufVxuXG4uYy1zZXJ2aWNlLWhlYWRpbmdfX2ljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgd2lkdGg6IDUycHg7XG4gIG9wYWNpdHk6IDAuMztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU2MHB4KSB7XG4gIC5jLXNlcnZpY2UtaGVhZGluZ19faWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTYwcHgpIGFuZCAobWF4LXdpZHRoOiAxMzk5cHgpIHtcbiAgLmMtc2VydmljZS1oZWFkaW5nX19pY29uIHtcbiAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5jLXNlcnZpY2UtaGVhZGluZ19faWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTVweDtcbiAgICBsZWZ0OiAtNzZweDtcbiAgfVxufVxuXG4uYy1zaXRlbWFwX19pdGVtIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBjb2xvcjogIzhGOUJCMztcbn1cblxuLmMtc2l0ZW1hcF9fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA0cHggMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmMtc2l0ZW1hcF9fbGluazpob3ZlciB7XG4gIGNvbG9yOiAjNDc1MjY2O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLypcbiAqIFNraXAgTGlua1xuICovXG4uYy1za2lwLWxpbmsge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IC0xMDB2aDtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIGNvbG9yOiAjRjBGMkY1O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYy1za2lwLWxpbms6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiAjMDA3NkZGO1xuICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICB0b3A6IDVweDtcbiAgLyogTm93IHRoZSBsaW5rIHdpbGwgYXBwZWFyICovXG59XG5cbi5jLXNsaWRlLWluZGljYXRvciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5jLXNsaWRlLWluZGljYXRvcl9fZG90IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciwgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG59XG4uYy1zbGlkZS1pbmRpY2F0b3JfX2RvdDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4uYy1zbGlkZS1pbmRpY2F0b3JfX2RvdDpob3Zlcjpub3QoLmlzLWFjdGl2ZSksIC5jLXNsaWRlLWluZGljYXRvcl9fZG90OmZvY3VzOm5vdCguaXMtYWN0aXZlKSB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fZG90OmJlZm9yZSwgLmMtc2xpZGUtaW5kaWNhdG9yX19kb3Q6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQtY2xpcDogY29udGVudC1ib3g7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgYmFja2dyb3VuZC1jb2xvciwgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMzAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fZG90OmJlZm9yZSB7XG4gIHRvcDogY2FsYygoMzBweCAtIDhweCkgLyAyKTtcbiAgcmlnaHQ6IGNhbGMoKDMwcHggLSA4cHgpIC8gMik7XG4gIGJvdHRvbTogY2FsYygoMzBweCAtIDhweCkgLyAyKTtcbiAgbGVmdDogY2FsYygoMzBweCAtIDhweCkgLyAyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YwRjJGNTtcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fZG90OmFmdGVyIHtcbiAgdG9wOiBjYWxjKCgzMHB4IC0gMTJweCkgLyAyKTtcbiAgcmlnaHQ6IGNhbGMoKDMwcHggLSAxMnB4KSAvIDIpO1xuICBib3R0b206IGNhbGMoKDMwcHggLSAxMnB4KSAvIDIpO1xuICBsZWZ0OiBjYWxjKCgzMHB4IC0gMTJweCkgLyAyKTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0YwRjJGNTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjQpO1xuICBvcGFjaXR5OiAwO1xufVxuLmMtc2xpZGUtaW5kaWNhdG9yX19kb3QuaXMtYWN0aXZlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMEYyRjU7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNDAsIDI0MiwgMjQ1LCAwLjkpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNzUpO1xufVxuLmMtc2xpZGUtaW5kaWNhdG9yX19kb3QuaXMtYWN0aXZlOmFmdGVyIHtcbiAgb3BhY2l0eTogMC45O1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuLmMtc2xpZGUtaW5kaWNhdG9yX19kb3Q6Zm9jdXMge1xuICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG59XG4uYy1zbGlkZS1pbmRpY2F0b3JfX2RvdDpmb2N1czpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggYmxhY2ssIDAgMCAxMHB4IDFweCB3aGl0ZTtcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fZG90OmZvY3VzOmFmdGVyIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4IGJsYWNrLCAwIDAgMTBweCAxcHggd2hpdGU7XG59XG5cbi5jLXNsaWRlLWluZGljYXRvcl9fYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMEYyRjU7XG4gIGNvbG9yOiAjRjBGMkY1O1xuICBoZWlnaHQ6IDQwcHg7XG4gIHdpZHRoOiA0MHB4O1xufVxuLmMtc2xpZGUtaW5kaWNhdG9yX19idXR0b24gKyAuYy1zbGlkZS1pbmRpY2F0b3JfX2J1dHRvbiB7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG59XG4uYy1zbGlkZS1pbmRpY2F0b3JfX2J1dHRvblthcmlhLWxhYmVsPXByZXZpb3VzXSA+IHN2ZyB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fYnV0dG9uW2FyaWEtbGFiZWw9bmV4dF0gPiBzdmcge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xufVxuLmMtc2xpZGUtaW5kaWNhdG9yX19idXR0b246aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkM2Q5ZTI7XG59XG4uYy1zbGlkZS1pbmRpY2F0b3JfX2J1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkM2Q5ZTI7XG59XG5cbi5jLXN1Ym5hdiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMEYyRjU7XG4gIHBhZGRpbmc6IDguMzMzMzMzMzMzMyU7XG59XG5cbi5jLXN1Ym5hdl9faGVhZGVyIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uYy1zdWJuYXZfX2xpc3Qge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uYy1zdWJuYXZfX2xpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDhweCAwO1xuICBjb2xvcjogI0YwRjJGNTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGNvbG9yIDI1MG1zO1xufVxuLmMtc3VibmF2X19saW5rOmhvdmVyIHtcbiAgY29sb3I6ICMxRjIwMjQ7XG59XG4uYy1zdWJuYXZfX2xpbms6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiAjMDA3NkZGO1xufVxuLmMtc3VibmF2X19saW5rOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRjBGMkY1O1xufVxuXG4uYy1zdWJuYXZfX2ljb24ge1xuICBvcGFjaXR5OiAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tbGVmdDogMTZweDtcbiAgY29sb3I6ICNGMEYyRjU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTZweCk7XG4gIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLW91dDtcbn1cbi5jLXN1Ym5hdl9fbGluazpob3ZlciAuYy1zdWJuYXZfX2ljb24ge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIGNvbG9yOiAjMUYyMDI0O1xufVxuXG4uYy1zdWJuYXZfX2l0ZW0uaXMtYWN0aXZlIC5jLXN1Ym5hdl9fbGluayB7XG4gIGNvbG9yOiAjRjBGMkY1O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5jLXN1Ym5hdl9faXRlbS5pcy1hY3RpdmUgLmMtc3VibmF2X19saW5rOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICMxRjIwMjQ7XG4gIGJvcmRlci13aWR0aDogMnB4O1xufVxuLmMtc3VibmF2X19pdGVtLmlzLWFjdGl2ZSAuYy1zdWJuYXZfX2ljb24ge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uYy10ZXh0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogYXV0bztcbn1cblxuLmMtdGV4dC1idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAjMUYyMDI0O1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvKiAyICovXG4gIGJvcmRlcjogbm9uZTtcbiAgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDEuNXB4O1xuICB0cmFuc2l0aW9uOiBjb2xvciAzMDBtcztcbn1cbi5jLXRleHQtYnV0dG9uOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcbiAgY29sb3I6ICNGMEYyRjU7XG59XG4uYy10ZXh0LWJ1dHRvbjpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5jLXRleHQtYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogIzAwNzZGRjtcbn1cblxuLmMtdGV4dC1idXR0b25fX3RleHQge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS42NjY2NjY2NjY3O1xufVxuXG4uYy10ZXh0LWJ1dHRvbl9faWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zO1xufVxuLmMtdGV4dC1idXR0b246aG92ZXI6bm90KDpkaXNhYmxlZCkgLmMtdGV4dC1idXR0b25fX2ljb24ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTtcbn1cbi5jLXRleHQtYnV0dG9uLS1pY29uIC5jLXRleHQtYnV0dG9uX19pY29uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jLXRleHQtYnV0dG9uLS1pcy1yZXZlcnNlZCAuYy10ZXh0LWJ1dHRvbl9fdGV4dCB7XG4gIG9yZGVyOiAyO1xufVxuLmMtdGV4dC1idXR0b24tLWlzLXJldmVyc2VkIC5jLXRleHQtYnV0dG9uX19pY29uIHtcbiAgb3JkZXI6IDE7XG4gIHRvcDogMXB4O1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNXR1cm4pO1xufVxuLmMtdGV4dC1idXR0b24tLWlzLXJldmVyc2VkOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIC5jLXRleHQtYnV0dG9uX19pY29uIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC41dHVybikgdHJhbnNsYXRlWCgzcHgpO1xufVxuXG4uYy10ZXh0LWJ1dHRvbi0tb24tZGFyayB7XG4gIGNvbG9yOiAjN0FEM0ZGO1xufVxuLmMtdGV4dC1idXR0b24tLW9uLWRhcms6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5jLXRyYWRlbWFyayB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDE1MG1zIGxpbmVhcjtcbn1cblxuLmMtdHJhZGVtYXJrX190ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLXJpZ2h0OiA3cHg7XG59XG5cbi5jLXRyYWRlbWFya19fbG92ZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltZy9oZWFydC1zcHJpdGUucG5nKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMXB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDI5MDAlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdpZHRoOiA1NnB4O1xuICBoZWlnaHQ6IDU2cHg7XG4gIG1hcmdpbjogMCAtMTJweDtcbn1cblxuLmMtdHJhZGVtYXJrOmhvdmVyIHtcbiAgY29sb3I6ICNFMjI2NEQ7XG59XG4uYy10cmFkZW1hcms6aG92ZXIgLmtvbW1hLWVtYmxlbSB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDEycHggMTJweDtcbiAgYW5pbWF0aW9uOiBsb2dvLXNwaW4gMS44cyBsaW5lYXIgaW5maW5pdGU7XG59XG4uYy10cmFkZW1hcms6aG92ZXIgLmMtdHJhZGVtYXJrX19sb3ZlIHtcbiAgYW5pbWF0aW9uOiBoZWFydEFuaW0gMS4xcyBzdGVwcygyOCkgZm9yd2FyZHM7XG59XG5cbkBrZXlmcmFtZXMgaGVhcnRBbmltIHtcbiAgZnJvbSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAxcHg7XG4gIH1cbiAgdG8ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDFweDtcbiAgfVxufVxuQGtleWZyYW1lcyBsb2dvLXNwaW4ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTF0dXJuKTtcbiAgfVxufVxuLmMtdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEN0RCRTA7XG59XG5cbi5jLXZpZGVvX19pZnJhbWUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLyogIDYgLSBPUkdBTklTTVNcbiAqICBMYXJnZSBibG9ja3MgY29tcG9zZWQgb2YgbXVsdGlwbGUgY29tcG9uZW50cy5cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBPcmdhbmlzbXNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLm8tYWR2aWNlLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkFGQ0ZGO1xuICBtYXJnaW4tdG9wOiAtNjBweDtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTYwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcwMHB4KSB7XG4gIC5vLWFkdmljZS1jb250ZW50IC5sLWdyaWQtY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxufVxuLm8tYWR2aWNlLWNvbnRlbnQgLmxlZnQge1xuICB3aWR0aDogMTIwcHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjk5cHgpIHtcbiAgLm8tYWR2aWNlLWNvbnRlbnQgLmxlZnQge1xuICAgIG1hcmdpbjogMCBhdXRvIDMwcHggYXV0bztcbiAgfVxufVxuLm8tYWR2aWNlLWNvbnRlbnQgLmxlZnQgLnBob25lLWhvbGRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTUwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0yNSU7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG4uby1hZHZpY2UtY29udGVudCAubGVmdCAucGhvbmUtaG9sZGVyIGg0IHtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cbi5vLWFkdmljZS1jb250ZW50IC5sZWZ0IC5waG9uZS1ob2xkZXIgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi5vLWFkdmljZS1jb250ZW50IC5yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiA3LjY5MjMwNzY5MjMlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjk5cHgpIHtcbiAgLm8tYWR2aWNlLWNvbnRlbnQgLnJpZ2h0IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuLm8tYWR2aWNlLWNvbnRlbnQgLnJpZ2h0IC5zLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xufVxuLm8tYWR2aWNlLWNvbnRlbnQgLnJpZ2h0IC5zLXRleHQgaDEge1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuLm8tYWR2aWNlLWNvbnRlbnQgLnJpZ2h0ICNhZHZpY2VGb3JtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLm8tYWR2aWNlLWNvbnRlbnQgLnJpZ2h0ICNhZHZpY2VGb3JtIGxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjOEY5QkIzO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLm8tYWR2aWNlLWNvbnRlbnQgLnJpZ2h0ICNhZHZpY2VGb3JtIC5jbGllbnRUeXBlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuLm8tYWR2aWNlLWNvbnRlbnQgLnJpZ2h0ICNhZHZpY2VGb3JtIC5jbGllbnRUeXBlIGxhYmVsIHtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiA0MCU7XG59XG4uby1hZHZpY2UtY29udGVudCAucmlnaHQgI2FkdmljZUZvcm0gLmNsaWVudFR5cGUgcCB7XG4gIG1hcmdpbjogMCAwIDMwcHggMDtcbn1cbi5vLWFkdmljZS1jb250ZW50IC5yaWdodCAjYWR2aWNlRm9ybSAuY2xpZW50VHlwZSBpbnB1dCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uby1hZHZpY2UtY29udGVudCAucmlnaHQgI2FkdmljZUZvcm0gLmNsaWVudFR5cGUgLnByaXZhdGUsIC5vLWFkdmljZS1jb250ZW50IC5yaWdodCAjYWR2aWNlRm9ybSAuY2xpZW50VHlwZSAucHJvZmVzc2lvbmFsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYm9yZGVyOiAycHggc29saWQgd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwIHJnYmEoMCwgMCwgMCwgMC41KSwgMnB4IDJweCAxNXB4IDAgcmdiYSgxOTgsIDIxNCwgMjI3LCAwLjUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMzBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjIyMjIyMjIyMjtcbiAgY29sb3I6ICM4RjlCQjM7XG59XG4uby1hZHZpY2UtY29udGVudCAucmlnaHQgI2FkdmljZUZvcm0gLmNsaWVudFR5cGUgLnByaXZhdGU6aG92ZXIsIC5vLWFkdmljZS1jb250ZW50IC5yaWdodCAjYWR2aWNlRm9ybSAuY2xpZW50VHlwZSAucHJvZmVzc2lvbmFsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg2OCwgMTYxLCAyNDQsIDAuMik7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM0NEExRjQ7XG59XG4uby1hZHZpY2UtY29udGVudCAucmlnaHQgI2FkdmljZUZvcm0gLmNsaWVudFR5cGUgLnByb2Zlc3Npb25hbCB7XG4gIG1hcmdpbi1sZWZ0OiA0NXB4O1xufVxuLm8tYWR2aWNlLWNvbnRlbnQgLnJpZ2h0ICNhZHZpY2VGb3JtIC5jbGllbnRUeXBlIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBkaXYge1xuICBib3JkZXI6IDJweCBzb2xpZCAjNDRBMUY0O1xufVxuLm8tYWR2aWNlLWNvbnRlbnQgLnJpZ2h0ICNhZHZpY2VGb3JtIGlucHV0W3R5cGU9dGV4dF0sIC5vLWFkdmljZS1jb250ZW50IC5yaWdodCAjYWR2aWNlRm9ybSB0ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMnB4IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGNvbG9yOiBibGFjaztcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjIyMjIyMjIyMjtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cbi5vLWFkdmljZS1jb250ZW50IC5yaWdodCAjYWR2aWNlRm9ybSBpbnB1dFt0eXBlPXRleHRdOmZvY3VzLCAuby1hZHZpY2UtY29udGVudCAucmlnaHQgI2FkdmljZUZvcm0gdGV4dGFyZWE6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjNkVCOEZGO1xufVxuLm8tYWR2aWNlLWNvbnRlbnQgLnJpZ2h0ICNhZHZpY2VGb3JtIGlucHV0W3R5cGU9dGV4dF06OnBsYWNlaG9sZGVyLCAuby1hZHZpY2UtY29udGVudCAucmlnaHQgI2FkdmljZUZvcm0gdGV4dGFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM4RjlCQjM7XG59XG4uby1hZHZpY2UtY29udGVudCAucmlnaHQgI2FkdmljZUZvcm0gdGV4dGFyZWEge1xuICByZXNpemU6IG5vbmU7XG4gIG1pbi1oZWlnaHQ6IDEwMHB4O1xuICBjb2xvcjogYmxhY2s7XG59XG4uby1hZHZpY2UtY29udGVudCAucmlnaHQgI2FkdmljZUZvcm0gLnN1Ym1pdCBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAxM3B4IDM1cHggMTVweCAzNXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjIyMjIyMjIyMjI7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNDAwcHg7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjNjk5QkZGIDAlLCAjMkY2Q0U2IDEwMCUpO1xufVxuLm8tYWR2aWNlLWNvbnRlbnQgLnJpZ2h0ICNhZHZpY2VGb3JtIC5lcnJvci1tZXNzYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgY29sb3I6IGluZGlhbnJlZDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgLm8tYmxvZ19fZ3JpZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbjogLTIwcHg7XG4gIH1cbn1cblxuLm8tYmxvZ19fZGl2aWRlciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHJnYmEoMTQzLCAxNTUsIDE3OSwgMC4yKTtcbiAgbWFyZ2luLWJvdHRvbTogNjRweDtcbn1cblxuLm8tYmxvZ19fb3RoZXJzIHtcbiAgbWFyZ2luLWJvdHRvbTogNDhweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gIC5vLWJsb2dfX290aGVycyA+ICogKyAqIHtcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkge1xuICAuby1ibG9nX19vdGhlcnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG59XG5cbi5vLWJsb2dfX2hlYWRpbmcge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzMzMzMzMzMzMztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICM0NzUyNjY7XG59XG5cbi5vLWJsb2dfX2FydGljbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IC0xNXB4IHJnYmEoMTA0LCAxNTMsIDI1MiwgMC41KSwgMCAyMHB4IDQwcHggLTEwcHggcmdiYSgxMDQsIDE1MywgMjUyLCAwLjEpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgLm8tYmxvZ19fYXJ0aWNsZSArIC5vLWJsb2dfX2FydGljbGUge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gIC5vLWJsb2dfX2FydGljbGUge1xuICAgIG1hcmdpbjogMjBweDtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtIDIwcHggKiA0KSAvIDIpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm8tYmxvZ19fYXJ0aWNsZSB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAyMHB4ICogNikgLyAzKTtcbiAgfVxufVxuXG4uby1ibG9nX19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDE1MG1zIGxpbmVhcjtcbn1cbi5vLWJsb2dfX2xpbms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGMkY1O1xufVxuLm8tYmxvZ19fbGluazpob3Zlcjo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjRjBGMkY1O1xufVxuLm8tYmxvZ19fbGluazpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6ICMwMDc2RkY7XG59XG5cbi5vLWJsb2dfX2JvZHkge1xuICBwYWRkaW5nOiAzNnB4IDI0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG59XG4uby1ibG9nX19saW5rOmhvdmVyIC5vLWJsb2dfX2JvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGMkY1O1xufVxuXG4uby1ibG9nX19pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctYm90dG9tOiA2NSU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5vLWJsb2dfX2JnLWltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4uby1ibG9nX19saW5rOmhvdmVyIC5vLWJsb2dfX2JnLWltYWdlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDQsIDEuMDQsIDEpO1xufVxuXG4uby1ibG9nX19pbnRybyB7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLm8tYmxvZ19fdGltZXN0YW1wIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgY29sb3I6ICMyRjZDRTY7XG59XG5cbi5vLWJsb2dfX2FjdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogIzQ3NTI2Njtcbn1cblxuLm8tYmxvZ19fcmVhZG1vcmUge1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cblxuLm8tYmxvZ19fZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogNjRweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uby1jYWxsb3V0LWJhciB7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICAtbXMtaHlwaGVuczogYXV0bztcbiAgaHlwaGVuczogYXV0bztcbiAgY29sb3I6ICNGMEYyRjU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMEYyRjU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm8tY2FsbG91dC1iYXJfX21haW4ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNjc5cHgpIHtcbiAgLm8tY2FsbG91dC1iYXJfX21haW4ge1xuICAgIHBhZGRpbmctdG9wOiA2LjI1dnc7XG4gICAgcGFkZGluZy1ib3R0b206IDYuMjV2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTY4MHB4KSB7XG4gIC5vLWNhbGxvdXQtYmFyX19tYWluIHtcbiAgICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNjc5cHgpIHtcbiAgLm8tY2FsbG91dC1iYXJfX21haW4gPiAqICsgKiB7XG4gICAgbWFyZ2luLXRvcDogMy4xMjV2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTY4MHB4KSB7XG4gIC5vLWNhbGxvdXQtYmFyX19tYWluID4gKiArICoge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cbn1cblxuLm8tY2FsbG91dC1iYXJfX2hlYWRpbmcge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuXG4vKiBJbiB0aGUgWyRvLWNhcmQtZ3JpZF0gbWFwIHdlIGRlZmluZSBzb21lIHNldHRpbmdzOlxuICpcbiAqICdjb2x1bW5zJy5rZXkgXHQ9XHRudW1iZXIgb2YgaXRlbXMgaW4gYSByb3dcbiAqICdjb2x1bW5zJy52YWx1ZSBcdD0gXHRicmVha3BvaW50IHNpemUgZnJvbSB3aGljaCB3ZSB3YW50IHRoYXQgbnVtYmVyIG9mIGl0ZW1zXG4gKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc0MHB4KSB7XG4gIC5vLWNhcmQtZ3JpZF9fbWFpbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luOiAtMTZweDtcbiAgfVxufVxuLm8tY2FyZC1ncmlkX19pdGVtIHtcbiAgbWF4LXdpZHRoOiA0NDRweDtcbiAgbWFyZ2luOiAxNnB4IGF1dG87XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NDBweCkge1xuICAuby1jYXJkLWdyaWRfX2l0ZW0ge1xuICAgIGZsZXg6IG5vbmU7XG4gICAgbWFyZ2luOiAxNnB4O1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoNTAlIC0gKDE2cHggKiAyKSk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNjBweCkge1xuICAuby1jYXJkLWdyaWRfX2l0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAoMTZweCAqIDIpKTtcbiAgfVxufVxuXG4uby1jb250YWN0LWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwMDtcbiAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgLm8tY29udGFjdC1jb250ZW50IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogOTBweDtcbiAgfVxufVxuLm8tY29udGFjdC1jb250ZW50IC5sLWJpc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSB7XG4gIC5vLWNvbnRhY3QtY29udGVudCAubC1iaXNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG59XG4uby1jb250YWN0LWNvbnRlbnQgLmwtYmlzZWN0aW9uX19pdGVtIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAwcHgpIHtcbiAgLm8tY29udGFjdC1jb250ZW50IC5sLWJpc2VjdGlvbl9faXRlbSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuLm8tY29udGFjdC1jb250ZW50ICNjb250YWN0Rm9ybSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIHBhZGRpbmc6IDUwcHggODBweDtcbiAgbWluLWhlaWdodDogNjkwcHg7XG4gIGJveC1zaGFkb3c6IDZweCA2cHggMjVweCAwIHJnYmEoMTA0LCAxNTMsIDI1MiwgMC4xKTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAuby1jb250YWN0LWNvbnRlbnQgI2NvbnRhY3RGb3JtIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gICAgcGFkZGluZzogNTBweCA0MHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OTlweCkge1xuICAuby1jb250YWN0LWNvbnRlbnQgI2NvbnRhY3RGb3JtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAxMjBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjExcHgpIHtcbiAgLm8tY29udGFjdC1jb250ZW50ICNjb250YWN0Rm9ybSB7XG4gICAgbWFyZ2luLXRvcDogMjAwcHg7XG4gIH1cbn1cbi5vLWNvbnRhY3QtY29udGVudCAjY29udGFjdEZvcm0gLmZvcm0tZWxlbWVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5vLWNvbnRhY3QtY29udGVudCAjY29udGFjdEZvcm0gbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICM4RjlCQjM7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbn1cbi5vLWNvbnRhY3QtY29udGVudCAjY29udGFjdEZvcm0gaW5wdXRbdHlwZT10ZXh0XSwgLm8tY29udGFjdC1jb250ZW50ICNjb250YWN0Rm9ybSBpbnB1dFt0eXBlPWVtYWlsXSwgLm8tY29udGFjdC1jb250ZW50ICNjb250YWN0Rm9ybSB0ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDEycHggMTVweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yMjIyMjIyMjIyO1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG4uby1jb250YWN0LWNvbnRlbnQgI2NvbnRhY3RGb3JtIGlucHV0W3R5cGU9dGV4dF06Zm9jdXMsIC5vLWNvbnRhY3QtY29udGVudCAjY29udGFjdEZvcm0gaW5wdXRbdHlwZT1lbWFpbF06Zm9jdXMsIC5vLWNvbnRhY3QtY29udGVudCAjY29udGFjdEZvcm0gdGV4dGFyZWE6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzZFQjhGRjtcbn1cbi5vLWNvbnRhY3QtY29udGVudCAjY29udGFjdEZvcm0gaW5wdXRbdHlwZT10ZXh0XS5lcnJvciwgLm8tY29udGFjdC1jb250ZW50ICNjb250YWN0Rm9ybSBpbnB1dFt0eXBlPWVtYWlsXS5lcnJvciwgLm8tY29udGFjdC1jb250ZW50ICNjb250YWN0Rm9ybSB0ZXh0YXJlYS5lcnJvciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRjk3QTREO1xufVxuLm8tY29udGFjdC1jb250ZW50ICNjb250YWN0Rm9ybSBpbnB1dFt0eXBlPXRleHRdOjpwbGFjZWhvbGRlciwgLm8tY29udGFjdC1jb250ZW50ICNjb250YWN0Rm9ybSBpbnB1dFt0eXBlPWVtYWlsXTo6cGxhY2Vob2xkZXIsIC5vLWNvbnRhY3QtY29udGVudCAjY29udGFjdEZvcm0gdGV4dGFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM4RjlCQjM7XG59XG4uby1jb250YWN0LWNvbnRlbnQgI2NvbnRhY3RGb3JtIHRleHRhcmVhIHtcbiAgcmVzaXplOiBub25lO1xuICBtaW4taGVpZ2h0OiAxMDBweDtcbn1cbi5vLWNvbnRhY3QtY29udGVudCAjY29udGFjdEZvcm0gLnN1Ym1pdCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLm8tY29udGFjdC1jb250ZW50ICNjb250YWN0Rm9ybSAuc3VibWl0IGlucHV0W3R5cGU9c3VibWl0XSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDEzcHggMzVweCAxNXB4IDM1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjIyMjIyMjIyMjtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0MDBweDtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICM2OTlCRkYgMCUsICMyRjZDRTYgMTAwJSk7XG59XG4uby1jb250YWN0LWNvbnRlbnQgI2NvbnRhY3RGb3JtIC5lcnJvci1tZXNzYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgY29sb3I6ICNGOTdBNEQ7XG4gIHdpZHRoOiA3NSU7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLm8tY29udGFjdC1jb250ZW50IC5jb250YWN0LW9wdGlvbnMge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuLm8tY29udGFjdC1jb250ZW50IC5jb250YWN0LW9wdGlvbnMgLmxlZnQsXG4uby1jb250YWN0LWNvbnRlbnQgLmNvbnRhY3Qtb3B0aW9ucyAucmlnaHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiA1MCU7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OTlweCkge1xuICAuby1jb250YWN0LWNvbnRlbnQgLmNvbnRhY3Qtb3B0aW9ucyAubGVmdCxcbi5vLWNvbnRhY3QtY29udGVudCAuY29udGFjdC1vcHRpb25zIC5yaWdodCB7XG4gICAgd2lkdGg6IDQ5JTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjExcHgpIHtcbiAgLm8tY29udGFjdC1jb250ZW50IC5jb250YWN0LW9wdGlvbnMgLmxlZnQsXG4uby1jb250YWN0LWNvbnRlbnQgLmNvbnRhY3Qtb3B0aW9ucyAucmlnaHQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uby1jb250YWN0LWNvbnRlbnQgLmNvbnRhY3Qtb3B0aW9ucyAubGVmdCBzdmcsXG4uby1jb250YWN0LWNvbnRlbnQgLmNvbnRhY3Qtb3B0aW9ucyAucmlnaHQgc3ZnIHtcbiAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gIC5vLWNvbnRhY3QtY29udGVudCAuY29udGFjdC1vcHRpb25zIC5sZWZ0IHN2Zyxcbi5vLWNvbnRhY3QtY29udGVudCAuY29udGFjdC1vcHRpb25zIC5yaWdodCBzdmcge1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgfVxufVxuLm8tY29udGFjdC1jb250ZW50IC5jb250YWN0LW9wdGlvbnMgLmxlZnQgYSxcbi5vLWNvbnRhY3QtY29udGVudCAuY29udGFjdC1vcHRpb25zIC5yaWdodCBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDAgMjVweCAwO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yMjIyMjIyMjIyO1xuICBjb2xvcjogd2hpdGU7XG59XG4uby1jb250YWN0LWNvbnRlbnQgLmNvbnRhY3Qtb3B0aW9ucyAubGVmdCBwLFxuLm8tY29udGFjdC1jb250ZW50IC5jb250YWN0LW9wdGlvbnMgLnJpZ2h0IHAge1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjIyMjIyMjIyMjI7XG4gIG1hcmdpbjogMCAwIDEwcHggMDtcbn1cbi5vLWNvbnRhY3QtY29udGVudCAuY29udGFjdC1vcHRpb25zIC5sZWZ0IC5jb21wYW55LWRldGFpbHMsXG4uby1jb250YWN0LWNvbnRlbnQgLmNvbnRhY3Qtb3B0aW9ucyAucmlnaHQgLmNvbXBhbnktZGV0YWlscyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5vLWNvbnRhY3QtY29udGVudCAuY29udGFjdC1vcHRpb25zIC5yaWdodCBzdmcge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuLm8tY29udGFjdC1jb250ZW50ICNtYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNDVweCk7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGJveC1zaGFkb3c6IDZweCA2cHggMjVweCAwIHJnYmEoMTA0LCAxNTMsIDI1MiwgMC4xKTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XG4gIC5vLWNvbnRhY3QtY29udGVudCAjbWFwIHtcbiAgICBoZWlnaHQ6IDU0MHB4O1xuICB9XG59XG4uby1jb250YWN0LWNvbnRlbnQgI21hcCA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gIGhlaWdodDogMTA1JSAhaW1wb3J0YW50O1xufVxuLm8tY29udGFjdC1jb250ZW50IC5vLWJsb2NrOmZpcnN0LW9mLXR5cGUge1xuICBwYWRkaW5nLXRvcDogMTQwcHg7XG59XG5cbi5vLWNvb2tpZS1iYXIge1xuICB6LWluZGV4OiAtMTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiA2NHB4O1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFGMjAyNDtcbiAgYm94LXNoYWRvdzogMCAtNHB4IDZweCAwIHJnYmEoMjQwLCAyNDIsIDI0NSwgMC4yNSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA2MDBtcyBlYXNlLWluLW91dDtcbn1cbmJvZHk6bm90KC5pcy1jb29raWVzLWFjY2VwdGVkKSAuby1jb29raWUtYmFyIHtcbiAgei1pbmRleDogOTk5OTtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5vLWNvb2tpZS1iYXIuaXMtdHJhbnNpdGlvbmluZy1vdXQge1xuICBkaXNwbGF5OiBmbGV4O1xuICB6LWluZGV4OiAtMTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbn1cblxuLm8tY29va2llLWJhcl9fbWFpbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzc0cHgpIHtcbiAgLm8tY29va2llLWJhcl9fbWFpbiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICB9XG59XG5cbi5vLWNvb2tpZS1iYXJfX3RleHQge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjRjBGMkY1O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzc0cHgpIHtcbiAgLm8tY29va2llLWJhcl9fdGV4dCB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xNDI4NTcxNDI5O1xuICB9XG59XG5cbi5vLWNvb2tpZS1iYXJfX2xpbmsge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdHJhbnNpdGlvbjogY29sb3IgMzAwbXM7XG59XG4uby1jb29raWUtYmFyX19saW5rOmhvdmVyIHtcbiAgY29sb3I6ICNEN0RCRTA7XG59XG5cbi5vLWNvb2tpZS1iYXJfX2J1dHRvbiB7XG4gIGZsZXg6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiA0MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODM5cHgpIHtcbiAgLm8tY29va2llLWJhcl9fYnV0dG9uIHtcbiAgICBtYXJnaW4tbGVmdDogMTZweDtcbiAgfVxufVxuXG4uby1kb3VibGUtaW1hZ2Uge1xuICBtYXJnaW46IC0xcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExMDBweCkge1xuICAuby1kb3VibGUtaW1hZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuLm8tZG91YmxlLWltYWdlX19waWN0dXJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMXB4O1xuICBvcmRlcjogMTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExMDBweCkge1xuICAuby1kb3VibGUtaW1hZ2VfX3BpY3R1cmUge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB9XG4gIC5vLWRvdWJsZS1pbWFnZV9fcGljdHVyZTpsYXN0LWNoaWxkIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbn1cblxuLm8tZG91YmxlLWltYWdlX19pbWcge1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgbWF4LWhlaWdodDogODV2aDtcbn1cblxuLm8tZG91YmxlLWltYWdlLS1pcy1yZXZlcnNlZCAuby1kb3VibGUtaW1hZ2VfX3BpY3R1cmUge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4uby1kb3VibGUtaW1hZ2UtLWlzLXJldmVyc2VkIC5vLWRvdWJsZS1pbWFnZV9fcGljdHVyZTpsYXN0LWNoaWxkIHtcbiAgb3JkZXI6IDA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5vLWRvdWJsZS10ZXh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tZG91YmxlLXRleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG59XG5cbi5vLWRvdWJsZS10ZXh0X19jb2x1bW4gKyAuby1kb3VibGUtdGV4dF9fY29sdW1uIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWRvdWJsZS10ZXh0X19jb2x1bW4ge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICB3aWR0aDogNDUuODMzMzMzMzMzMyU7XG4gIH1cbn1cblxuLm8tZm9vdGVyIHtcbiAgei1pbmRleDogMjA7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNzRkZWcsICMxRDI4NDAgMTB2dywgIzE3MjAzMCAxMDAlKTtcbiAgY29sb3I6ICM4RjlCQjM7XG59XG5cbi5vLWZvb3Rlcl9fbWFpbiB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogMTQ0MHB4O1xuICB3aWR0aDogY2FsYygoMTAwJSAvIDE0KSAqIDEyKTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE2NzlweCkge1xuICAuby1mb290ZXJfX21haW4ge1xuICAgIHBhZGRpbmctdG9wOiAxLjU2MjV2dztcbiAgICBwYWRkaW5nLWJvdHRvbTogNi4yNXZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjgwcHgpIHtcbiAgLm8tZm9vdGVyX19tYWluIHtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIH1cbn1cblxuLm8tZm9vdGVyX19icmFuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBsaW5lYXI7XG59XG4uby1mb290ZXJfX2JyYW5kOmhvdmVyIHtcbiAgb3BhY2l0eTogMC41O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNjc5cHgpIHtcbiAgLm8tZm9vdGVyX19jb2x1bW5zIHtcbiAgICBtYXJnaW4tdG9wOiAzLjEyNXZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjgwcHgpIHtcbiAgLm8tZm9vdGVyX19jb2x1bW5zIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDgwcHgpIHtcbiAgLm8tZm9vdGVyX19jb2x1bW5zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbi5vLWZvb3Rlcl9fbG9nbyB7XG4gIHdpZHRoOiAxNjBweDtcbiAgbWF4LWhlaWdodDogNjBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcwMHB4KSB7XG4gIC5vLWZvb3Rlcl9fbG9nbyB7XG4gICAgd2lkdGg6IDIyMHB4O1xuICAgIG1heC1oZWlnaHQ6IDgwcHg7XG4gIH1cbn1cblxuLm8tZm9vdGVyX19pbmZvID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAzMnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA4MHB4KSB7XG4gIC5vLWZvb3Rlcl9faW5mbyB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG59XG5cbi5vLWZvb3Rlcl9fY29udGFjdCB7XG4gIHBhZGRpbmctbGVmdDogNzJweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcwMHB4KSB7XG4gIC5vLWZvb3Rlcl9fY29udGFjdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMDBweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAuby1mb290ZXJfX25hdiA+ICoge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0MHB4KSBhbmQgKG1heC13aWR0aDogMTA3OXB4KSB7XG4gIC5vLWZvb3Rlcl9fbmF2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAuby1mb290ZXJfX25hdiA+ICoge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSA0MHB4KSAvIDIpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2OTlweCkge1xuICAuby1mb290ZXJfX25hdiB7XG4gICAgcGFkZGluZy1sZWZ0OiA3MnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3MDBweCkgYW5kIChtYXgtd2lkdGg6IDEwNzlweCkge1xuICAuby1mb290ZXJfX25hdiB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMDBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA4MHB4KSB7XG4gIC5vLWZvb3Rlcl9fbmF2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxufVxuXG4uby1mb290ZXJfX2xpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwODBweCkge1xuICAuby1mb290ZXJfX2xpc3Qge1xuICAgIHdpZHRoOiA0Mi44NTcxNDI4NTcxJTtcbiAgfVxuICAuby1mb290ZXJfX2xpc3Q6bnRoLWNoaWxkKG4rMikge1xuICAgIG1hcmdpbi1sZWZ0OiAxNC4yODU3MTQyODU3JTtcbiAgfVxufVxuXG4uby1mb290ZXJfX2l0ZW0tLWhlYWRpbmcge1xuICBjb2xvcjogd2hpdGU7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLm8tZm9vdGVyX19oZWFkaW5nLWxpbmsge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5vLWZvb3Rlcl9fbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAyLjI1O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGNvbG9yIDI1MG1zO1xufVxuLm8tZm9vdGVyX19saW5rOmhvdmVyIHtcbiAgY29sb3I6ICM3QUQzRkY7XG59XG4uby1mb290ZXJfX2xpbms6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiAjMDA3NkZGO1xufVxuXG4uby1mb290ZXJfX3NvY2lhbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMzJweCAwIDA7XG59XG5cbi5vLWZvb3Rlcl9fY2hhbm5lbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG59XG5cbi5vLWZvb3Rlcl9faWNvbiB7XG4gIGZsZXg6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMzAwbXM7XG59XG4uZmFjZWJvb2sgLm8tZm9vdGVyX19pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9zb2NpYWwvZmFjZWJvb2suc3ZnXCIpO1xuICBoZWlnaHQ6IDIxcHg7XG59XG4uaW5zdGFncmFtIC5vLWZvb3Rlcl9faWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvc29jaWFsL2luc3RhZ3JhbS5zdmdcIik7XG59XG4udHdpdHRlciAuby1mb290ZXJfX2ljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL3NvY2lhbC90d2l0dGVyLnN2Z1wiKTtcbiAgaGVpZ2h0OiAyMHB4O1xufVxuLmxpbmtlZGluIC5vLWZvb3Rlcl9faWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvc29jaWFsL2xpbmtlZGluLnN2Z1wiKTtcbiAgaGVpZ2h0OiAxOHB4O1xufVxuLm8tZm9vdGVyX19pY29uOmhvdmVyIHtcbiAgb3BhY2l0eTogMC41O1xufVxuLm8tZm9vdGVyX19pY29uOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogIzAwNzZGRjtcbn1cblxuLm8taGVhZGVyIHtcbiAgei1pbmRleDogNTA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMzJweCAwO1xuICBtYXJnaW4tYm90dG9tOiAtMTAwJTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNiwgMzQsIDUxLCAwLjgpIDAlLCByZ2JhKDI2LCAzNCwgNTEsIDAuNCkgNjAlLCByZ2JhKDI2LCAzNCwgNTEsIDApIDEwMCUpO1xufVxuLm8taGVhZGVyLmlzLXN0aWNreSB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogNTA7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAxNnB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgYm94LXNoYWRvdzogMCAtNXB4IDMwcHggYmxhY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYTIyMzM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMzAwbXM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBtcywgMzAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM2MHB4KSB7XG4gIC5vLWhlYWRlci5pcy1zdGlja3kge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5pcy1zdGlja3ktaGVhZGVyLXZpc2libGUgLm8taGVhZGVyLmlzLXN0aWNreSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMG1zO1xufVxuXG4uby1oZWFkZXJfX21haW4ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uby1oZWFkZXJfX2xvZ28ge1xuICBmbGV4OiBub25lO1xufVxuLm8taGVhZGVyX19sb2dvOmZvY3VzIHtcbiAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgb3V0bGluZS1jb2xvcjogIzAwNzZGRjtcbn1cblxuLm8taGVhZGVyX19pbWcge1xuICB3aWR0aDogMTYwcHg7XG4gIG1heC1oZWlnaHQ6IDYwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3MDBweCkge1xuICAuby1oZWFkZXJfX2ltZyB7XG4gICAgd2lkdGg6IDIyMHB4O1xuICAgIG1heC1oZWlnaHQ6IDgwcHg7XG4gIH1cbn1cbi5pcy1zdGlja3kgLm8taGVhZGVyX19pbWcge1xuICB3aWR0aDogMTQwcHggIWltcG9ydGFudDtcbiAgbWF4LWhlaWdodDogNTBweCAhaW1wb3J0YW50O1xufVxuXG4uby1oZWFkZXJfX25hdiB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tbGVmdDogNDhweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzNTlweCkge1xuICAuby1oZWFkZXJfX25hdiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uby1oZWFkZXJfX2xhbmd1YWdlIHtcbiAgbWFyZ2luLWxlZnQ6IDE2cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzU5cHgpIHtcbiAgLm8taGVhZGVyX19sYW5ndWFnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbn1cblxuLm8taGVhZGVyX190b2dnbGUge1xuICBtYXJnaW4tbGVmdDogNDBweDtcbn1cblxuLm8taGVybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5vLWhlcm9fX21haW4ge1xuICBwYWRkaW5nOiAxNjBweCAwIDFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFhMjIzMztcbn1cblxuLm8taGVyb19fZ3JpZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkzOXB4KSB7XG4gIC5vLWhlcm9fX2dyaWQgPiAqICsgKiB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTQwcHgpIHtcbiAgLm8taGVyb19fZ3JpZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICAuby1oZXJvX19ncmlkID4gKiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuby1oZXJvX19ncmlkLm5vLWltYWdlIC5vLWhlcm9fX3RleHQge1xuICAgIHdpZHRoOiA3MCU7XG4gIH1cbiAgLm8taGVyb19fZ3JpZC5uby1pbWFnZSAuby1oZXJvX19pbWFnZSB7XG4gICAgd2lkdGg6IDMwJTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NDBweCkge1xuICAuby1oZXJvX190ZXh0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjMzMzMzMzMzMzMlO1xuICB9XG59XG4uby1oZXJvX190ZXh0LmFkZGl0aW9uYWwtcGFkZGluZyB7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xufVxuXG4uby1oZXJvX190ZXh0LS1zZXJ2aWNlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTQwcHgpIHtcbiAgLm8taGVyb19fdGV4dC0tc2VydmljZSB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogOTAwcHg7XG4gIH1cbn1cblxuLm8taGVyb19fdG9wLXNoYXBlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MHZ3O1xuICB0b3A6IDA7XG4gIGhlaWdodDogNzglO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTM5cHgpIHtcbiAgLm8taGVyb19fdG9wLXNoYXBlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uby1oZXJvX190b3Atc2hhcGUgaW1nIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cbi5vLWhlcm9fX3BsYWNlaG9sZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTIwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWEyMjMzO1xufVxuXG4uby1oZXJvX19ib3R0b20tc2hhcGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiAjMWEyMjMzO1xufVxuLm8taGVyb19fYm90dG9tLXNoYXBlIHN2ZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uby1tYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiA4NSU7XG59XG5cbi5vLW1hcF9faW5uZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmNmZjtcbn1cblxuLm8tb3ZlcmxheS1tZW51IHtcbiAgei1pbmRleDogMTAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQwMHB4KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA0NTBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjgsIDAuMiwgMC4yLCAwLjgpO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwbXMsIDQ1MG1zO1xufVxuLmlzLW92ZXJsYXktbWVudS1hY3RpdmUgLm8tb3ZlcmxheS1tZW51IHtcbiAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxMDBtcywgMG1zO1xufVxuLm8tb3ZlcmxheS1tZW51OjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDIwMHZoO1xuICB3aWR0aDogMTIwdnc7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEwMG1zO1xuICB0cmFuc2l0aW9uLWRlbGF5OiA0NTBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbn1cbi5pcy1vdmVybGF5LW1lbnUtYWN0aXZlIC5vLW92ZXJsYXktbWVudTo6YmVmb3JlIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMG1zO1xufVxuLm8tb3ZlcmxheS1tZW51X19tYWluIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFhMjIzMztcbn1cblxuLm8tb3ZlcmxheS1tZW51X19zaGFwZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgY29sb3I6ICMxYTIyMzM7XG59XG4uby1vdmVybGF5LW1lbnVfX3NoYXBlIHN2ZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uby1vdmVybGF5LW1lbnVfX2JhciB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogMTQ0MHB4O1xuICB3aWR0aDogY2FsYygoMTAwJSAvIDE0KSAqIDEyKTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLXRvcDogMzJweDtcbiAgcGFkZGluZy1ib3R0b206IDMycHg7XG59XG5cbi5vLW92ZXJsYXktbWVudV9faW1nIHtcbiAgd2lkdGg6IDIyMHB4O1xuICBtYXgtaGVpZ2h0OiA4MHB4O1xufVxuXG4uby1vdmVybGF5LW1lbnVfX3RvZ2dsZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjV0dXJuKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDYwMG1zIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyMDBtcztcbn1cbi5pcy1vdmVybGF5LW1lbnUtYWN0aXZlIC5vLW92ZXJsYXktbWVudV9fdG9nZ2xlIHtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuXG4uby1vdmVybGF5LW1lbnVfX25hdiB7XG4gIG1hcmdpbi10b3A6IDhweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNjBweCkge1xuICAuby1vdmVybGF5LW1lbnVfX25hdiB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTQ0MHB4O1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICB9XG59XG5cbi5vLW92ZXJsYXktbWVudV9fbGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzU5cHgpIHtcbiAgLm8tb3ZlcmxheS1tZW51X19pdGVtOm5vdCguby1vdmVybGF5LW1lbnVfX2l0ZW0tLWFkdmljZSkgKyAuby1vdmVybGF5LW1lbnVfX2l0ZW06bm90KC5vLW92ZXJsYXktbWVudV9faXRlbS0tYWR2aWNlKSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiAgfVxufVxuXG4uby1vdmVybGF5LW1lbnVfX2l0ZW0tLWFkdmljZSB7XG4gIG1hcmdpbjogMjBweCA3LjE0Mjg1NzE0MjklIDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtOC4zMzMzMzMzMzMzJSkgc2NhbGUoMS4yKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gIHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwbXM7XG59XG4uaXMtb3ZlcmxheS1tZW51LWFjdGl2ZSAuby1vdmVybGF5LW1lbnVfX2l0ZW0tLWFkdmljZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2Utb3V0IDgwMG1zO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gIC5vLW92ZXJsYXktbWVudV9faXRlbS0tYWR2aWNlIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICB9XG59XG5cbi5vLW92ZXJsYXktbWVudV9fbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTJweCA3LjE0Mjg1NzE0MjklO1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC04LjMzMzMzMzMzMzMlKSBzY2FsZSgxLjIpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW47XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBtcztcbn1cbi5vLW92ZXJsYXktbWVudV9fbGluazphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5vLW92ZXJsYXktbWVudV9fbGluazpob3ZlcjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNTFiMjk7XG59XG4uby1vdmVybGF5LW1lbnVfX2xpbms6Zm9jdXMge1xuICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICBvdXRsaW5lLWNvbG9yOiB3aGl0ZTtcbn1cbi5pcy1vdmVybGF5LW1lbnUtYWN0aXZlIC5vLW92ZXJsYXktbWVudV9fbGluayB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2Utb3V0O1xufVxuLmlzLW92ZXJsYXktbWVudS1hY3RpdmUgLm8tb3ZlcmxheS1tZW51X19pdGVtOm50aC1jaGlsZCgxKSAuby1vdmVybGF5LW1lbnVfX2xpbmsge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA0OTVtcztcbn1cblxuLmlzLW92ZXJsYXktbWVudS1hY3RpdmUgLm8tb3ZlcmxheS1tZW51X19pdGVtOm50aC1jaGlsZCgyKSAuby1vdmVybGF5LW1lbnVfX2xpbmsge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA1NDBtcztcbn1cblxuLmlzLW92ZXJsYXktbWVudS1hY3RpdmUgLm8tb3ZlcmxheS1tZW51X19pdGVtOm50aC1jaGlsZCgzKSAuby1vdmVybGF5LW1lbnVfX2xpbmsge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA1ODVtcztcbn1cblxuLmlzLW92ZXJsYXktbWVudS1hY3RpdmUgLm8tb3ZlcmxheS1tZW51X19pdGVtOm50aC1jaGlsZCg0KSAuby1vdmVybGF5LW1lbnVfX2xpbmsge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA2MzBtcztcbn1cblxuLmlzLW92ZXJsYXktbWVudS1hY3RpdmUgLm8tb3ZlcmxheS1tZW51X19pdGVtOm50aC1jaGlsZCg1KSAuby1vdmVybGF5LW1lbnVfX2xpbmsge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA2NzVtcztcbn1cblxuLmlzLW92ZXJsYXktbWVudS1hY3RpdmUgLm8tb3ZlcmxheS1tZW51X19pdGVtOm50aC1jaGlsZCg2KSAuby1vdmVybGF5LW1lbnVfX2xpbmsge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA3MjBtcztcbn1cblxuLmlzLW92ZXJsYXktbWVudS1hY3RpdmUgLm8tb3ZlcmxheS1tZW51X19pdGVtOm50aC1jaGlsZCg3KSAuby1vdmVybGF5LW1lbnVfX2xpbmsge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA3NjVtcztcbn1cblxuLmlzLW92ZXJsYXktbWVudS1hY3RpdmUgLm8tb3ZlcmxheS1tZW51X19pdGVtOm50aC1jaGlsZCg4KSAuby1vdmVybGF5LW1lbnVfX2xpbmsge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA4MTBtcztcbn1cblxuLmlzLW92ZXJsYXktbWVudS1hY3RpdmUgLm8tb3ZlcmxheS1tZW51X19pdGVtOm50aC1jaGlsZCg5KSAuby1vdmVybGF5LW1lbnVfX2xpbmsge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA4NTVtcztcbn1cblxuLmlzLW92ZXJsYXktbWVudS1hY3RpdmUgLm8tb3ZlcmxheS1tZW51X19pdGVtOm50aC1jaGlsZCgxMCkgLm8tb3ZlcmxheS1tZW51X19saW5rIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogOTAwbXM7XG59XG5cbi5pcy1hY3RpdmUgLm8tb3ZlcmxheS1tZW51X19saW5rIHtcbiAgY29sb3I6ICM2OTlCRkY7XG59XG5cbi8qIEluIHRoZSBbJG8tcGFydG5lcnNdIG1hcCB3ZSBkZWZpbmUgc29tZSBzZXR0aW5nczpcbiAqXG4gKiAnY29sdW1ucycua2V5IFx0PVx0bnVtYmVyIG9mIGl0ZW1zIGluIGEgcm93XG4gKiAnY29sdW1ucycudmFsdWUgXHQ9IFx0YnJlYWtwb2ludCBzaXplIGZyb20gd2hpY2ggd2Ugd2FudCB0aGF0IG51bWJlciBvZiBpdGVtc1xuICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkge1xuICAuby1wYXJ0bmVyc19fbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luOiAtNCU7XG4gIH1cbn1cblxuLm8tcGFydG5lcnNfX2l0ZW0ge1xuICBtYXgtd2lkdGg6IDQ0NHB4O1xuICBtYXJnaW46IDQlIGF1dG87XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC5vLXBhcnRuZXJzX19pdGVtIHtcbiAgICBmbGV4OiBub25lO1xuICAgIG1hcmdpbjogNCU7XG4gICAgZmxleC1iYXNpczogY2FsYyg1MCUgLSAoNCUgKiAyKSk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYyMHB4KSB7XG4gIC5vLXBhcnRuZXJzX19pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gKDQlICogMikpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjBweCkge1xuICAuby1wYXJ0bmVyc19faXRlbSB7XG4gICAgZmxleC1iYXNpczogY2FsYygyNSUgLSAoNCUgKiAyKSk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwODBweCkge1xuICAuby1wYXJ0bmVyc19faXRlbSB7XG4gICAgZmxleC1iYXNpczogY2FsYygyMCUgLSAoNCUgKiAyKSk7XG4gIH1cbn1cblxuLm8tcGFydG5lcnNfX2xvZ28ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyO1xufVxuLm8tcGFydG5lcnNfX2xvZ286aG92ZXIge1xuICBvcGFjaXR5OiAwLjc1O1xufVxuXG4uby1wYXJ0bmVyc19fZmlndXJlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLm8tcGFydG5lcnNfX2ltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuLm8tc3ViZm9vdGVyIHtcbiAgei1pbmRleDogMTA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNTFDMjg7XG4gIGNvbG9yOiAjOEY5QkIzO1xufVxuXG4uby1zdWJmb290ZXJfX21haW4ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDhweDtcbiAgcGFkZGluZy1ib3R0b206IDhweDtcbn1cblxuLm8tc3ViZm9vdGVyX19jb3B5cmlnaHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBtYXJnaW4tcmlnaHQ6IDMycHg7XG59XG5cbi5vLXN1YmZvb3Rlcl9fbmF2IHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAuby1zdWJmb290ZXJfX25hdiB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbn1cblxuLm8tc3ViZm9vdGVyX19saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbn1cblxuLm8tc3ViZm9vdGVyX19pdGVtIHtcbiAgbWFyZ2luLXJpZ2h0OiAzMnB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uby1zdWJmb290ZXJfX2xpbmsge1xuICBjb2xvcjogIzhGOUJCMztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAyMDBtcztcbn1cbi5vLXN1YmZvb3Rlcl9fbGluazpob3ZlciB7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbi5vLXN1YmZvb3Rlcl9fbGluazpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6ICMwMDc2RkY7XG59XG5cbi5vLXN1YmZvb3Rlcl9fdHJhZGVtYXJrIHtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG5cbi8qXG4gKiBPbiBzbWFsbCBzY3JlZW5zIHRoZSBjb250ZW50IGlzIHN0YWNrZWQsIHdpdGhvdXQgY29udHJvbHNcbiAqIFdoZW4gdGhlIHNjcmVlbiBpcyB3aWRlIGVub3VnaCB3ZSBhZGQgdGhlIGNvbnRyb2xzXG4gKiBhbmQgc2hvdyBvbmx5IHRoZSBjaG9zZW4gJ3NsaWRlIGNvbnRlbnQnXG4gKi9cbi5vLXRhYnMge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLXRhYnNfX2NvbnRyb2xzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby10YWJzX19jb250cm9scyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG5cbi5vLXRhYnNfX2J1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY2NjY2NjY2Njc7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMTZweCAzMnB4O1xuICBtaW4taGVpZ2h0OiA0OHB4O1xuICBjb2xvcjogI0YwRjJGNTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgbGluZWFyO1xufVxuLm8tdGFic19fYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICNGMEYyRjU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMEYyRjU7XG59XG4uby10YWJzX19idXR0b24uaXMtYWN0aXZlIHtcbiAgY29sb3I6ICNGMEYyRjU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEN0RCRTA7XG59XG4uby10YWJzX19idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXItY29sb3I6ICMwMDc2RkY7XG59XG4uby10YWJzX19idXR0b246Zm9jdXM6bm90KC5pcy1hY3RpdmUpOm5vdCg6YWN0aXZlKSB7XG4gIGJveC1zaGFkb3c6IDAgMCA1cHggM3B4IHJnYmEoMCwgMTE4LCAyNTUsIDAuMSk7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXRhYnNfX2NvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcbiAgICBwYWRkaW5nOiA0OHB4IDMycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Q3REJFMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAuby10YWJzX19jb250ZW50ICsgLm8tdGFic19fY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tdGFic19fY29udGVudCB7XG4gICAgZ3JpZC1yb3c6IDE7XG4gICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgb3BhY2l0eTogMDtcbiAgICB6LWluZGV4OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgbGluZWFyO1xuICB9XG4gIC5vLXRhYnNfX2NvbnRlbnQuaXMtYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHotaW5kZXg6IDE7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgfVxufVxuXG4uby10YWJzX19sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE0Mjg1NzE0Mjk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWJvdHRvbTogOHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogI0YwRjJGNTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXRhYnNfX2xhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5vLXRleHQtaW1hZ2Uge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXRleHQtaW1hZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG59XG5cbi5vLXRleHQtaW1hZ2VfX2Rlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi5vLXRleHQtaW1hZ2VfX2Rlc2NyaXB0aW9uIHAsIC5vLXRleHQtaW1hZ2VfX2Rlc2NyaXB0aW9uIHVsIHtcbiAgbWF4LXdpZHRoOiA0ODBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXRleHQtaW1hZ2VfX2Rlc2NyaXB0aW9uIHtcbiAgICB3aWR0aDogNDUuODMzMzMzMzMzMyU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby10ZXh0LWltYWdlX192aXN1YWwge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tdGV4dC1pbWFnZS0taXMtcmV2ZXJzZWQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxufVxuXG4vKiAgNyAtIFRlbXBsYXRlc1xuICogIE92ZXJyaWRlIHN0eWxpbmcgZm9yIGEgc3BlY2lmaWMgdGVtcGxhdGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBUZW1wbGF0ZXNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuI2NvbnRhY3QgLm8taGVyb19fdG9wLXNoYXBlIHtcbiAgaGVpZ2h0OiA1MCU7XG59XG4jY29udGFjdCAuby1jb250YWN0LWNvbnRlbnQge1xuICBtYXJnaW4tdG9wOiAtNDAwcHg7XG59XG4jY29udGFjdCAuby1oZXJvX19tYWluIHtcbiAgcGFkZGluZy1ib3R0b206IDI0MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTUwMHB4KSB7XG4gICNjb250YWN0IC5vLWhlcm9fX21haW4ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxNjBweDtcbiAgfVxufVxuXG4jbWV0aG9kIC5zLXRleHQgaDMge1xuICBjb2xvcjogIzY5OUJGRjtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTY2NjY2NjY2NztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbiNtZXRob2QgLnMtdGV4dCBoMiB7XG4gIG1hcmdpbi10b3A6IDRweCAhaW1wb3J0YW50O1xufVxuXG4jcG9zdHMgLm8taGVyb19fdGV4dCB7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xufVxuI3Bvc3RzIC5vLWJsb2cge1xuICBtYXJnaW4tdG9wOiAtNDBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogMTA5OXB4KSB7XG4gICNwb3N0cyAuby1ibG9nIHtcbiAgICBtYXJnaW4tdG9wOiAtMjIuNXZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTAwcHgpIGFuZCAobWF4LXdpZHRoOiAyMTk5cHgpIHtcbiAgI3Bvc3RzIC5vLWJsb2cge1xuICAgIG1hcmdpbi10b3A6IC0xNy41dnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDIyMDBweCkge1xuICAjcG9zdHMgLm8tYmxvZyB7XG4gICAgbWFyZ2luLXRvcDogLTE1dnc7XG4gIH1cbn1cblxuLyogIDggLSBTQ09QRVNcbiAqICBFbGVtZW50cyBhbmQgY2xhc3NlcyB0aGF0IGFyZSBzY29wZWQgYnkgYSBwYXJlbnQgY2xhc3NcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBbGwgdGV4dCBlbGVtZW50cyB0aGF0IGNhbiBiZSBhZGRlZCBieSB0aGUgdXNlciB0aHJvdWdoIGEgQ01TXG4gKi9cbi5zLXRleHQgaDE6bm90KC5jLXNlcnZpY2UtaGVhZGluZykge1xuICBmb250LXNpemU6IDIuNjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yMzgwOTUyMzgxO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLnMtdGV4dCA+ICogKyAqIHtcbiAgbWFyZ2luLXRvcDogMzJweDtcbn1cbi5zLXRleHQgPiA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG4ucy10ZXh0ID4gKiArIFtjbGFzcyo9Yy1dIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cbi5zLXRleHQgPiB1bDpub3QoW2NsYXNzXSkge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLnMtdGV4dCA+IHVsOm5vdChbY2xhc3NdKSA+IGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogLTEuMTI1ZW07XG4gIHBhZGRpbmctbGVmdDogMS4xMjVlbTtcbn1cbi5zLXRleHQgPiB1bDpub3QoW2NsYXNzXSkgPiBsaTo6YmVmb3JlIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMzMzMzMzMzMzM7XG4gIGNvbnRlbnQ6IFwi4oCiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNHB4O1xuICBsZWZ0OiAwO1xufVxuLnMtdGV4dCA+IG9sOm5vdChbY2xhc3NdKSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGNvdW50ZXItcmVzZXQ6IG9sLWNvdW50ZXI7XG59XG4ucy10ZXh0ID4gb2w6bm90KFtjbGFzc10pID4gbGkge1xuICBjb3VudGVyLWluY3JlbWVudDogb2wtY291bnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogLTEuMTI1ZW07XG4gIHBhZGRpbmctbGVmdDogMS44ZW07XG59XG4ucy10ZXh0ID4gb2w6bm90KFtjbGFzc10pID4gbGk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGNvdW50ZXIob2wtY291bnRlcikgXCIuIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEuMjc1ZW07XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4ucy10ZXh0LS1vbi1kYXJrIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbn1cbi5zLXRleHQtLW9uLWRhcmsgaDEge1xuICBjb2xvcjogd2hpdGU7XG59XG4ucy10ZXh0LS1vbi1kYXJrIGgyLCAucy10ZXh0LS1vbi1kYXJrIGgzIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbn1cblxuLyogIDkgLSBMSUJSQVJJRVNcbiAqICBTdHlsaW5nIHdlIGltcGxlbWVudCBmcm9tIHRoaXJkIHBhcnRpZXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogIDEwIC0gVVRJTElUSUVTXG4gKiAgSGlnaC1zcGVjaWZpY2l0eSwgdmVyeSBleHBsaWNpdCBzZWxlY3RvcnMuXG4gKiAgT3ZlcnJpZGVzIGFuZCBoZWxwZXIgY2xhc3Nlcy5cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqICBDb2xvclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogSGVyZSB3ZSBwcmludCBvdXQgYWxsIG91ciBoZWxwZXIgY2xhc3NlcyBmb3Igb3VyIGRlZmluZWQgY29sb3JzXG4gKiBCYXNlZCBvbiB0aGVzZSBhcnRpY2xlczpcbiAqIC0gaHR0cDovL2Vyc2tpbmVkZXNpZ24uY29tL2Jsb2cvZnJpZW5kbGllci1jb2xvdXItbmFtZXMtc2Fzcy1tYXBzL1xuICogLSBodHRwczovL2Jsb2cuYXRlY2htZWRpYS5jb20vY3NzLWZvci1tdWx0aXBsZS10aGVtZXMvXG4gKiBPdXRwdXQgaXMgaW4gdGhlIGZvcm0gb2Y6XG5cbiAgIC51LWNvbG9yLXByaW1hcnkge1xuICAgICAgY29sb3I6ICNiYWRhNTU7XG4gICB9XG5cbiAgLnUtYmctbmV1dHJhbC0tOTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVjYWZmO1xuICB9XG4gKi9cbi51LWNvbG9yLXByaW1hcnktLTMwMCB7XG4gIGNvbG9yOiAjNjk5QkZGO1xufVxuXG4udS1iZy1wcmltYXJ5LS0zMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjk5QkZGO1xufVxuXG4udS1jb2xvci1wcmltYXJ5LS00MDAge1xuICBjb2xvcjogIzJGNkNFNjtcbn1cblxuLnUtYmctcHJpbWFyeS0tNDAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJGNkNFNjtcbn1cblxuLnUtY29sb3ItcHJpbWFyeS0tODAwIHtcbiAgY29sb3I6ICMxYTIyMzM7XG59XG5cbi51LWJnLXByaW1hcnktLTgwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYTIyMzM7XG59XG5cbi51LWNvbG9yLXByaW1hcnktLTkwMCB7XG4gIGNvbG9yOiAjMTUxQzI4O1xufVxuXG4udS1iZy1wcmltYXJ5LS05MDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTUxQzI4O1xufVxuXG4udS1jb2xvci1zZWNvbmRhcnktLTIwIHtcbiAgY29sb3I6ICNmYWZjZmY7XG59XG5cbi51LWJnLXNlY29uZGFyeS0tMjAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmY2ZmO1xufVxuXG4udS1jb2xvci1zZWNvbmRhcnktLTgwIHtcbiAgY29sb3I6ICNlNGY2ZmY7XG59XG5cbi51LWJnLXNlY29uZGFyeS0tODAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRmNmZmO1xufVxuXG4udS1jb2xvci1zZWNvbmRhcnktLTUwMCB7XG4gIGNvbG9yOiAjN0FEM0ZGO1xufVxuXG4udS1iZy1zZWNvbmRhcnktLTUwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3QUQzRkY7XG59XG5cbi51LWNvbG9yLXNlY29uZGFyeS0tNzAwIHtcbiAgY29sb3I6ICMyRUE4RTY7XG59XG5cbi51LWJnLXNlY29uZGFyeS0tNzAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJFQThFNjtcbn1cblxuLnUtY29sb3ItbmV1dHJhbC0tMTAwIHtcbiAgY29sb3I6ICNGMEYyRjU7XG59XG5cbi51LWJnLW5ldXRyYWwtLTEwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMEYyRjU7XG59XG5cbi51LWNvbG9yLW5ldXRyYWwtLTIwMCB7XG4gIGNvbG9yOiAjRDdEQkUwO1xufVxuXG4udS1iZy1uZXV0cmFsLS0yMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDdEQkUwO1xufVxuXG4udS1jb2xvci1uZXV0cmFsLS05MDAge1xuICBjb2xvcjogIzFGMjAyNDtcbn1cblxuLnUtYmctbmV1dHJhbC0tOTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFGMjAyNDtcbn1cblxuLnUtY29sb3ItdGV4dC0tNDAwIHtcbiAgY29sb3I6ICM4RjlCQjM7XG59XG5cbi51LWJnLXRleHQtLTQwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4RjlCQjM7XG59XG5cbi51LWNvbG9yLXRleHQtLTYwMCB7XG4gIGNvbG9yOiAjNDc1MjY2O1xufVxuXG4udS1iZy10ZXh0LS02MDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDc1MjY2O1xufVxuXG4udS1jb2xvci1mZWVkYmFjay0tYWN0aW9uIHtcbiAgY29sb3I6ICMwMDc2RkY7XG59XG5cbi51LWJnLWZlZWRiYWNrLS1hY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3NkZGO1xufVxuXG4udS1jb2xvci1mZWVkYmFjay0tbmVnYXRpdmUge1xuICBjb2xvcjogI2NmM2UzZTtcbn1cblxuLnUtYmctZmVlZGJhY2stLW5lZ2F0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NmM2UzZTtcbn1cblxuLnUtY29sb3ItZmVlZGJhY2stLXBvc2l0aXZlIHtcbiAgY29sb3I6ICMzZWNmOGU7XG59XG5cbi51LWJnLWZlZWRiYWNrLS1wb3NpdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZWNmOGU7XG59XG5cbi51LXBsYWNlaG9sZGVyLWltYWdlIHtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIG9iamVjdC1maXQ6IGNvdmVyICFpbXBvcnRhbnQ7XG59XG5cbi51LXRleHQtYWxpZ24tY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi51LWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLnUtdmlzdWFsbHktaGlkZGVuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNsaXAtcGF0aDogaW5zZXQoMTAwJSk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi51LWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODM5cHgpIHtcbiAgLnUtaGlkZGVuXFxAcy1kb3duIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC51LWhpZGRlblxcQG0tdXAge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC51LWhpZGRlblxcQG0tZG93biB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLnUtaGlkZGVuXFxAbC11cCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNjc5cHgpIHtcbiAgLnUtaGlkZGVuXFxAbC1kb3duIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qXG4qIElmIHlvdSBuZWVkIHRvIG1ha2UgYSBxdWljayBmaXgsIHlvdSBjYW4gZG8gaXQgaGVyZS5cbiogTGF0ZXIgd2hlbiB5b3UgaGF2ZSB0aGUgdGltZSwgeW91IGNhbiBtb3ZlIHRoZSBmaXggaW50byB0aGUgY29ycmVjdCBwbGFjZSBpbiB0aGUgc3RydWN0dXJlXG4qL1xuLnUtc3BhY2luZy1tMCB7XG4gIG1hcmdpbjogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXQwIHtcbiAgbWFyZ2luLXRvcDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXIwIHtcbiAgbWFyZ2luLXJpZ2h0OiAwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tYjAge1xuICBtYXJnaW4tYm90dG9tOiAwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tbDAge1xuICBtYXJnaW4tbGVmdDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcDAge1xuICBwYWRkaW5nOiAwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wdDAge1xuICBwYWRkaW5nLXRvcDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHIwIHtcbiAgcGFkZGluZy1yaWdodDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGIwIHtcbiAgcGFkZGluZy1ib3R0b206IDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBsMCB7XG4gIHBhZGRpbmctbGVmdDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbTEge1xuICBtYXJnaW46IDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW10MSB7XG4gIG1hcmdpbi10b3A6IDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1yMSB7XG4gIG1hcmdpbi1yaWdodDogOHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbWIxIHtcbiAgbWFyZ2luLWJvdHRvbTogOHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbWwxIHtcbiAgbWFyZ2luLWxlZnQ6IDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXAxIHtcbiAgcGFkZGluZzogOHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHQxIHtcbiAgcGFkZGluZy10b3A6IDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXByMSB7XG4gIHBhZGRpbmctcmlnaHQ6IDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBiMSB7XG4gIHBhZGRpbmctYm90dG9tOiA4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wbDEge1xuICBwYWRkaW5nLWxlZnQ6IDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW0yIHtcbiAgbWFyZ2luOiAxNnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXQyIHtcbiAgbWFyZ2luLXRvcDogMTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1yMiB7XG4gIG1hcmdpbi1yaWdodDogMTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1iMiB7XG4gIG1hcmdpbi1ib3R0b206IDE2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tbDIge1xuICBtYXJnaW4tbGVmdDogMTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXAyIHtcbiAgcGFkZGluZzogMTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXB0MiB7XG4gIHBhZGRpbmctdG9wOiAxNnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHIyIHtcbiAgcGFkZGluZy1yaWdodDogMTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBiMiB7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGwyIHtcbiAgcGFkZGluZy1sZWZ0OiAxNnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbTMge1xuICBtYXJnaW46IDI0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tdDMge1xuICBtYXJnaW4tdG9wOiAyNHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXIzIHtcbiAgbWFyZ2luLXJpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbWIzIHtcbiAgbWFyZ2luLWJvdHRvbTogMjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1sMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcDMge1xuICBwYWRkaW5nOiAyNHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHQzIHtcbiAgcGFkZGluZy10b3A6IDI0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wcjMge1xuICBwYWRkaW5nLXJpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGIzIHtcbiAgcGFkZGluZy1ib3R0b206IDI0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wbDMge1xuICBwYWRkaW5nLWxlZnQ6IDI0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tNCB7XG4gIG1hcmdpbjogMzJweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW10NCB7XG4gIG1hcmdpbi10b3A6IDMycHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tcjQge1xuICBtYXJnaW4tcmlnaHQ6IDMycHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tYjQge1xuICBtYXJnaW4tYm90dG9tOiAzMnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbWw0IHtcbiAgbWFyZ2luLWxlZnQ6IDMycHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wNCB7XG4gIHBhZGRpbmc6IDMycHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wdDQge1xuICBwYWRkaW5nLXRvcDogMzJweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXByNCB7XG4gIHBhZGRpbmctcmlnaHQ6IDMycHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wYjQge1xuICBwYWRkaW5nLWJvdHRvbTogMzJweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBsNCB7XG4gIHBhZGRpbmctbGVmdDogMzJweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW01IHtcbiAgbWFyZ2luOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXQ1IHtcbiAgbWFyZ2luLXRvcDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1yNSB7XG4gIG1hcmdpbi1yaWdodDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1iNSB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tbDUge1xuICBtYXJnaW4tbGVmdDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXA1IHtcbiAgcGFkZGluZzogNDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXB0NSB7XG4gIHBhZGRpbmctdG9wOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHI1IHtcbiAgcGFkZGluZy1yaWdodDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBiNSB7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGw1IHtcbiAgcGFkZGluZy1sZWZ0OiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbTYge1xuICBtYXJnaW46IDQ4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tdDYge1xuICBtYXJnaW4tdG9wOiA0OHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXI2IHtcbiAgbWFyZ2luLXJpZ2h0OiA0OHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbWI2IHtcbiAgbWFyZ2luLWJvdHRvbTogNDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1sNiB7XG4gIG1hcmdpbi1sZWZ0OiA0OHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcDYge1xuICBwYWRkaW5nOiA0OHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHQ2IHtcbiAgcGFkZGluZy10b3A6IDQ4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wcjYge1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGI2IHtcbiAgcGFkZGluZy1ib3R0b206IDQ4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wbDYge1xuICBwYWRkaW5nLWxlZnQ6IDQ4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tNyB7XG4gIG1hcmdpbjogNTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW10NyB7XG4gIG1hcmdpbi10b3A6IDU2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tcjcge1xuICBtYXJnaW4tcmlnaHQ6IDU2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tYjcge1xuICBtYXJnaW4tYm90dG9tOiA1NnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbWw3IHtcbiAgbWFyZ2luLWxlZnQ6IDU2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wNyB7XG4gIHBhZGRpbmc6IDU2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wdDcge1xuICBwYWRkaW5nLXRvcDogNTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXByNyB7XG4gIHBhZGRpbmctcmlnaHQ6IDU2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wYjcge1xuICBwYWRkaW5nLWJvdHRvbTogNTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBsNyB7XG4gIHBhZGRpbmctbGVmdDogNTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW04IHtcbiAgbWFyZ2luOiA2NHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXQ4IHtcbiAgbWFyZ2luLXRvcDogNjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1yOCB7XG4gIG1hcmdpbi1yaWdodDogNjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1iOCB7XG4gIG1hcmdpbi1ib3R0b206IDY0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tbDgge1xuICBtYXJnaW4tbGVmdDogNjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXA4IHtcbiAgcGFkZGluZzogNjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXB0OCB7XG4gIHBhZGRpbmctdG9wOiA2NHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHI4IHtcbiAgcGFkZGluZy1yaWdodDogNjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBiOCB7XG4gIHBhZGRpbmctYm90dG9tOiA2NHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGw4IHtcbiAgcGFkZGluZy1sZWZ0OiA2NHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbTkge1xuICBtYXJnaW46IDcycHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tdDkge1xuICBtYXJnaW4tdG9wOiA3MnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXI5IHtcbiAgbWFyZ2luLXJpZ2h0OiA3MnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbWI5IHtcbiAgbWFyZ2luLWJvdHRvbTogNzJweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1sOSB7XG4gIG1hcmdpbi1sZWZ0OiA3MnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcDkge1xuICBwYWRkaW5nOiA3MnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHQ5IHtcbiAgcGFkZGluZy10b3A6IDcycHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wcjkge1xuICBwYWRkaW5nLXJpZ2h0OiA3MnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGI5IHtcbiAgcGFkZGluZy1ib3R0b206IDcycHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wbDkge1xuICBwYWRkaW5nLWxlZnQ6IDcycHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tMTAge1xuICBtYXJnaW46IDgwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tdDEwIHtcbiAgbWFyZ2luLXRvcDogODBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1yMTAge1xuICBtYXJnaW4tcmlnaHQ6IDgwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tYjEwIHtcbiAgbWFyZ2luLWJvdHRvbTogODBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1sMTAge1xuICBtYXJnaW4tbGVmdDogODBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXAxMCB7XG4gIHBhZGRpbmc6IDgwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wdDEwIHtcbiAgcGFkZGluZy10b3A6IDgwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wcjEwIHtcbiAgcGFkZGluZy1yaWdodDogODBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBiMTAge1xuICBwYWRkaW5nLWJvdHRvbTogODBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBsMTAge1xuICBwYWRkaW5nLWxlZnQ6IDgwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tMTEge1xuICBtYXJnaW46IDg4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tdDExIHtcbiAgbWFyZ2luLXRvcDogODhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1yMTEge1xuICBtYXJnaW4tcmlnaHQ6IDg4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tYjExIHtcbiAgbWFyZ2luLWJvdHRvbTogODhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1sMTEge1xuICBtYXJnaW4tbGVmdDogODhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXAxMSB7XG4gIHBhZGRpbmc6IDg4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wdDExIHtcbiAgcGFkZGluZy10b3A6IDg4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wcjExIHtcbiAgcGFkZGluZy1yaWdodDogODhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBiMTEge1xuICBwYWRkaW5nLWJvdHRvbTogODhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBsMTEge1xuICBwYWRkaW5nLWxlZnQ6IDg4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tMTIge1xuICBtYXJnaW46IDk2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tdDEyIHtcbiAgbWFyZ2luLXRvcDogOTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1yMTIge1xuICBtYXJnaW4tcmlnaHQ6IDk2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tYjEyIHtcbiAgbWFyZ2luLWJvdHRvbTogOTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1sMTIge1xuICBtYXJnaW4tbGVmdDogOTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXAxMiB7XG4gIHBhZGRpbmc6IDk2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wdDEyIHtcbiAgcGFkZGluZy10b3A6IDk2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wcjEyIHtcbiAgcGFkZGluZy1yaWdodDogOTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBiMTIge1xuICBwYWRkaW5nLWJvdHRvbTogOTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBsMTIge1xuICBwYWRkaW5nLWxlZnQ6IDk2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tMTMge1xuICBtYXJnaW46IDEwNHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXQxMyB7XG4gIG1hcmdpbi10b3A6IDEwNHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXIxMyB7XG4gIG1hcmdpbi1yaWdodDogMTA0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tYjEzIHtcbiAgbWFyZ2luLWJvdHRvbTogMTA0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tbDEzIHtcbiAgbWFyZ2luLWxlZnQ6IDEwNHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcDEzIHtcbiAgcGFkZGluZzogMTA0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wdDEzIHtcbiAgcGFkZGluZy10b3A6IDEwNHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHIxMyB7XG4gIHBhZGRpbmctcmlnaHQ6IDEwNHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGIxMyB7XG4gIHBhZGRpbmctYm90dG9tOiAxMDRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBsMTMge1xuICBwYWRkaW5nLWxlZnQ6IDEwNHB4ICFpbXBvcnRhbnQ7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBUaGlzIGdyaWQgY2FuIGJlIHR1cm5lZCBvbiBhbmQgb2ZmIHdoZW4geW91IHdhbnQgdG8gY2hlY2tcbiAqIGlmIGV2ZXJ5dGhpbmcgaXMgbmljZSBpbiBwbGFjZS5cbiAqIFNldCBmbGFnICdzaG93X2dyaWQnIHRvIHRydWUgaW4gc2l0ZS5waHBcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udS12aXNpYmxlLWdyaWQge1xuICB6LWluZGV4OiAxMDAwMDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiAxNDQwcHg7XG4gIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC51LXZpc2libGUtZ3JpZCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4udS12aXNpYmxlLWdyaWRfX21haW4ge1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDM4LCA3NywgMjE3LCAwLjIpLCByZ2JhKDM4LCA3NywgMjE3LCAwLjIpIDFweCwgdHJhbnNwYXJlbnQgMXB4LCB0cmFuc3BhcmVudCA4LjMzMzMzMzMzMzMlKSwgcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDM4LCA3NywgMjE3LCAwLjIpLCByZ2JhKDM4LCA3NywgMjE3LCAwLjIpIDFweCwgdHJhbnNwYXJlbnQgMXB4LCB0cmFuc3BhcmVudCAxMDB2dyk7XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBPcmdhbml6ZSBjb2xvciB2YXJpYWJsZXMgaW4gYSBTYXNzIE1hcC5cbiAgIFRoaXMgd2F5LCB0aGUgY29sb3JzIGNhbiBiZSBpdGVyYXRlZCwgYXJlIG1vcmUgb3JnYW5pemVkLFxuICAgYW5kIGFyZSBtb3JlIGludHVpdGl2ZSB0byByZWZlcmVuY2UuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4kcGFsZXR0ZXM6IChcbiAgJ3ByaW1hcnknOiAoXG4gICAgMzAwOiAjNjk5QkZGLFxuICAgIDQwMDogIzJGNkNFNixcbiAgICA4MDA6ICMxYTIyMzMsXG4gICAgOTAwOiAjMTUxQzI4LFxuICApLFxuXG4gICdzZWNvbmRhcnknOiAoXG4gICAgMjA6ICNmYWZjZmYsXG4gICAgODA6ICNlNGY2ZmYsXG4gICAgNTAwOiAjN0FEM0ZGLFxuICAgIDcwMDogIzJFQThFNixcbiAgKSxcblxuICAnbmV1dHJhbCc6IChcbiAgICAxMDA6ICNGMEYyRjUsXG4gICAgMjAwOiAjRDdEQkUwLFxuICAgIDkwMDogIzFGMjAyNCxcbiAgKSxcblxuICAndGV4dCc6IChcbiAgICA0MDA6ICM4RjlCQjMsXG4gICAgNjAwOiAjNDc1MjY2LFxuICApLFxuXG4gICdmZWVkYmFjayc6IChcbiAgICBhY3Rpb246ICAgIzAwNzZGRixcbiAgICBuZWdhdGl2ZTogI2NmM2UzZSxcbiAgICBwb3NpdGl2ZTogIzNlY2Y4ZSxcbiAgKSxcbik7XG5cbiRibHVlR3JhZGllbnQgOmxpbmVhci1ncmFkaWVudCgxNzRkZWcsICMxRDI4NDAgMTB2dywgIzE3MjAzMCAxMDAlKTtcblxuXG4vKipcbiAqXHRBIHNpbXBsZSBmdW5jdGlvbiBmb3IgYWNjZXNzaW5nIHRoZSBjb2xvcnMgZnJvbSBvdXIgbWFwcGluZ1xuICpcdFRvIGFjY2VzcyBjb2xvcnMgaW4gb3VyIHBhbGV0dGUsIHdlIHVzZSBhIHZlcnkgc2ltcGxlIGN1c3RvbSBTYXNzIGZ1bmN0aW9uXG4gKiAgVGhpcyBmdW5jdGlvbiBpcyBwbGFjZWQgaGVyZSwgKGFuZCBub3QgaW4gdGhlIHRvb2xib3gpXG4gKiAgc28gd2UgY2FuIHVzZSBpdCBpbiBvdXIgb3RoZXIgc2V0dGluZyBmaWxlcyBpZiB3ZSBuZWVkXG5cblx0VVNBR0U6XG5cblx0LmRlbW8ge1xuXHRcdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDkwMCk7XG5cdH1cblxuICovXG5cbkBmdW5jdGlvbiBwYWxldHRlKCRwYWxldHRlLCAkbGV2ZWw6IDEpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRwYWxldHRlcywgJHBhbGV0dGUpIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkobWFwLWdldCgkcGFsZXR0ZXMsICRwYWxldHRlKSwgJGxldmVsKSB7XG4gICAgICBAcmV0dXJuIG1hcC1nZXQobWFwLWdldCgkcGFsZXR0ZXMsICRwYWxldHRlKSwgJGxldmVsKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIElmIGxldmVsIGRvZXNuJ3QgZXhpc3QgaW4gbWFwLCBnaXZlIHRoZSBmaXJzdCB2YWx1ZSBvZiB0aGUgcGFsZXR0ZVxuICAgICAgQHJldHVybiBudGgobnRoKG1hcC1nZXQoJHBhbGV0dGVzLCAkcGFsZXR0ZSksIDEpLCAyKTtcbiAgICB9XG4gIH1cblxuICBAd2FybiBcIlVua25vd24gY29sb3I6IGAjeyRwYWxldHRlfWAgaW4gJHBhbGV0dGUuIFwiO1xuICBAcmV0dXJuIGRlZXBwaW5rO1xufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbmZpZyBzZXR0aW5nc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRoZSBkZWZhdWx0IGJvcmRlci1yYWRpdXMgdmFsdWVzIHVzZWQgaW4gdGhlIGJvcmRlciBtaXhpblxuXG4kYm9yZGVyLXJhZGl1czogKFxuXHRzOiA0cHgsXG5cdG06IDhweCxcblx0bDogMTZweFxuKTtcblxuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDb2x1bW4gc2V0dGluZ3NcblxuJHNpdGUtY29sdW1uczogMTQ7XG4kc2l0ZS1jb2x1bW4tc2l6ZTpcdFx0ICAgIDEyMDsgLy8gU2l6ZSBvZiBhIHNpbmdsZSBjb2x1bW4gd2hlbiB2aWV3cG9ydCBpcyBhdCBpdHMgbWF4IHdpZHRoICh1c2VkIGZvciBjYWxjdWxhdGluZyBtYXgtd2lkdGgpLlxuXG5cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE90aGVyIHNldHRpbmdzXG5cbiRzaXRlLWNvb2tpZUJhci1oZWlnaHQ6ICAgICBcdFx0NjRweDsgLy8gRml4ZWQgc2l6ZSBzbyB3ZSBjYW4gb2Zmc2V0IHBhZGRpbmctYm90dG9tIG9uIHRoZSBib2R5XG4kc2l0ZS1jb29raWVCYXItdHJhbnNpdGlvbi1zcGVlZDogXHQ2MDBtczsgLy8gU3BlZWQgb2YgdGhlIGRpc2FwcGVhciBhbmltYXRpb25cbiRzaXRlLWNvb2tpZUJhci10cmFuc2l0aW9uLWVhc2U6IFx0ZWFzZS1pbi1vdXQ7IC8vIEVhc2luZyBvZiB0aGUgZGlzYXBwZWFyIGFuaW1hdGlvblxuXG5cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDYWxjdWxhdGlvbnMgdGhhdCBhcmUgZG9uZSB3aXRoIHNvbWUgb2YgdGhlIGdpdmVuIHZhbHVlcyBhYm92ZSB0aGlzIGxpbmVcblxuJHNpdGUtbWF4LXdpZHRoOiAkc2l0ZS1jb2x1bW4tc2l6ZSAqICgkc2l0ZS1jb2x1bW5zIC0gMik7IC8vIE1haW4gY29udGFpbmVyIG1heC13aWR0aCAod2l0aG91dCBndXR0ZXIpXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gXHQgRGVmaW5lcyB0aGUgdHlwb2dyYXBoaWMgYmFzZWxpbmUuXG4gICBXZSBkZWZpbmUgZXZlcnkgc2l6ZSBpbiBwaXhlbHMsIHRoZSB1bmRlcmx5aW5nIHN5c3RlbVxuICAgY29udmVydHMgdGhlIHJlc3BlY3RpdmUgdW5pdHMgdG8gdGhlIHJlc3BvbnNpdmUgUkVNIHZhbHVlLlxuIFx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBPdXIgYmFzZSBmb250LXNpemUgYW5kIGxpbmUtaGVpZ2h0XG4gKi9cbiRiYXNlLWZvbnQtc2l6ZTogICBcdDE4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcdCFkZWZhdWx0O1xuJGJhc2UtbGluZS1oZWlnaHQ6IFx0MzAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFx0IWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtcmF0aW86XHQkYmFzZS1saW5lLWhlaWdodC8kYmFzZS1mb250LXNpemUgICAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZXM6IChcblx0J3hzJzogXHRcdFx0KFxuXHRcdGZvbnQtc2l6ZTogXHRcdDE0LFxuXHRcdGxpbmUtaGVpZ2h0OiBcdDE2XG5cdCksXG5cdCdzJzogXHRcdFx0XHQoXG5cdFx0Zm9udC1zaXplOiBcdFx0MTUsXG5cdFx0bGluZS1oZWlnaHQ6IFx0MjRcblx0KSxcblx0J2Jhc2UnOiBcdFx0KFxuXHRcdGZvbnQtc2l6ZTogXHRcdCRiYXNlLWZvbnQtc2l6ZSxcblx0XHRsaW5lLWhlaWdodDogXHQkYmFzZS1saW5lLWhlaWdodFxuXHQpLFxuXHQnbSc6IFx0XHRcdFx0KFxuXHRcdGZvbnQtc2l6ZTogXHRcdDIwLFxuXHRcdGxpbmUtaGVpZ2h0OiBcdDMyXG5cdCksXG5cdCdsJzogXHRcdFx0XHQoXG5cdFx0Zm9udC1zaXplOiBcdFx0MjQsXG5cdFx0bGluZS1oZWlnaHQ6IFx0MzJcblx0KSxcblx0J3hsJzogXHRcdFx0KFxuXHRcdGZvbnQtc2l6ZTogXHRcdDMyLFxuXHRcdGxpbmUtaGVpZ2h0OiBcdDQwXG5cdCksXG5cdCd4eGwnOiBcdFx0XHQoXG5cdFx0Zm9udC1zaXplOiBcdFx0NDAsXG5cdFx0bGluZS1oZWlnaHQ6IFx0NDBcblx0KSxcblx0J3h4eGwnOiBcdFx0KFxuXHRcdGZvbnQtc2l6ZTogXHRcdDQ4LFxuXHRcdGxpbmUtaGVpZ2h0OiBcdDQ4XG5cdCksXG5cdCd4eHh4bCc6IFx0XHQoXG5cdFx0Zm9udC1zaXplOiBcdFx0NTYsXG5cdFx0bGluZS1oZWlnaHQ6IFx0NTZcblx0KSxcbik7XG5cblxuLyoqXG4gKlx0SGVyZSB3ZSBhc3NpZ24gc2hvcnQgbmFtZXMgZm9yIHRoZSBmb250IGZhbWlsaWVzXG4gKi9cblxuJGZvbnQtc3lzdGVtOlx0XHQtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIjtcbiRmb250LXJvYm90bzogXHQnUnViaWsnLCBzYW5zLXNlcmlmOyIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBEZWZpbmUgYnJlYWtwb2ludHMgZm9yIGdpdmVuIGZvcm1hdHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuLy8gRGVmYXVsdCBicmVha3BvaW50c1xuJGJyZWFrcG9pbnRzOiAoXG5cdHM6IDM4NCxcblx0bTogODQwLFxuXHRsOiAxMTUyLFxuKTtcblxuLy8gRGV0ZXJtaW5lIGF0IHdoaWNoIHZpZXdwb3J0IHNpemUgd2UgY2FuIGZpdCBpbiBhIGhvcml6b250YWwgbWVudSBpbnN0ZWFkIG9mIHRoZSBoYW1idXJnZXIgbWVudSB0b2dnbGVcbiRicC1oZWFkZXItbGFyZ2U6IDEzNjA7XG5cblxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENhbGN1bGF0ZSB2aWV3cG9ydCBzaXplIHdoZW4gY29udGFpbmVyIGNhbid0IGdyb3cgYW55bW9yZVxuJGJwLW1heDogJHNpdGUtY29sdW1ucyAqICRzaXRlLWNvbHVtbi1zaXplOyIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEZ1bmN0aW9ucyB1c2VkIGluIGdyaWQgY2FsY3VsYXRpb25cbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gICogUmV0dXJuIHBlcmNlbnRhZ2UgYmFzZWQgb24gYW1vdW50IG9mIGNvbHVtbnNcbiAgKiBVc2UgcGFyZW50IGNvbHVtbiBzaXplIHRvIGFkanVzdCB0aGUgb3JpZ2luXG4gICovXG5AZnVuY3Rpb24gY2FsY3VsYXRlQ29sdW1uU2l6ZSgkY29sdW1uQ291bnQgOiAxLCAkb3JpZ2luIDogJHNpdGUtY29sdW1ucykge1xuXHQvLyBDYWxjdWxhdGUgdGhlIHdpZHRoIGZvciBhIHNpbmdsZSBjb2x1bW4gb24gYSBmdWxsIGdyaWRcblx0JHNpbmdsZUNvbHVtblNpemU6IDEwMCAvICRzaXRlLWNvbHVtbnM7XG5cblx0Ly8gR2V0IHRoZSBvcmlnaW4gc2l6ZSBpbiBwZXJjZW50YWdlIGZyb20gdGhlIGZ1bGwgZ3JpZFxuXHQkb3JpZ2luUGVyY2VudGFnZTogJG9yaWdpbiAvICRzaXRlLWNvbHVtbnMgKiAxMDA7XG5cblx0Ly8gQ2FsY3VsYXRlIHNpbmdsZSBjb2x1bW4gZnJvbSBuZXcgb3JpZ2luXG5cdCRuZXdTaW5nbGVDb2x1bW5TaXplOiAkc2luZ2xlQ29sdW1uU2l6ZSAvICRvcmlnaW5QZXJjZW50YWdlICogMTAwO1xuXG5cdC8vIFJldHVybiBhbW91bnQgb2YgY29sdW1ucyBhcyBwZXJjZW50YWdlXG5cdEByZXR1cm4gKCRuZXdTaW5nbGVDb2x1bW5TaXplICogJGNvbHVtbkNvdW50KTtcbn1cblxuLyoqXG4gICogRGVmYXVsdCBmdW5jdGlvbiBmb3IgY29sdW1uc1xuICAqIFJldHVybiBhcyBwZXJjZW50YWdlXG4gICovXG5AZnVuY3Rpb24gY29sdW1uKCRjb2x1bW5Db3VudCA6IDEsICRvcmlnaW4gOiAoJHNpdGUtY29sdW1ucyAtIDIpKSB7XG5cdEByZXR1cm4gY2FsY3VsYXRlQ29sdW1uU2l6ZSgkY29sdW1uQ291bnQsICRvcmlnaW4pICogMSU7XG59XG5cbi8qKlxuICAqIFJldHVybiBhcyB2aWV3cG9ydCB3aWR0aFxuICAqL1xuQGZ1bmN0aW9uIGNvbHVtblZ3KCRjb2x1bW5Db3VudCA6IDEsICRvcmlnaW4gOiAoJHNpdGUtY29sdW1ucyAtIDIpKSB7XG5cdEByZXR1cm4gY2FsY3VsYXRlQ29sdW1uU2l6ZSgkY29sdW1uQ291bnQsICRvcmlnaW4pICogMXZ3O1xufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBGb250IHJlbGF0ZWQgZnVuY3Rpb25zXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qKlxuICogIE1peGluIGZvciBzZXR0aW5nIGZvbnQtc2l6ZSBpbiBSRU0gdGhyb3VnaCBhIFNhc3MgTWFwIHdpdGggYWxsIGF2YWlsYWJsZSBzaXplc1xuXG4gICAgVVNBR0U6XG5cbiAgICAubXlDbGFzcyB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSh4bCk7XG4gICAgfVxuXG4gKi9cblxuXG5AbWl4aW4gZm9udC1zaXplKCRmcywgJGxoOiBudWxsKSB7XG4gIC8vIEdldCBjb3JyZWN0IGtleSB3aXRoIGZvbnQtc2l6ZSBhbmQgbGluZS1oZWlnaHQgcHggdmFsdWVcbiAgJGZvbnQtc2l6ZS1wcm9wZXJ0aWVzOiBtYXAtZ2V0KCRmb250LXNpemVzLCAkZnMpO1xuICBAaWYgJGZvbnQtc2l6ZS1wcm9wZXJ0aWVzIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUobWFwLWdldCgkZm9udC1zaXplLXByb3BlcnRpZXMsIGZvbnQtc2l6ZSkpO1xuXG4gICAgQGlmKCRsaCA9PSBudWxsKXtcbiAgICAgIGxpbmUtaGVpZ2h0OiBtYXAtZ2V0KCRmb250LXNpemUtcHJvcGVydGllcywgbGluZS1oZWlnaHQpIC8gbWFwLWdldCgkZm9udC1zaXplLXByb3BlcnRpZXMsIGZvbnQtc2l6ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBsaW5lLWhlaWdodDogJGxoIC8gbWFwLWdldCgkZm9udC1zaXplLXByb3BlcnRpZXMsIGZvbnQtc2l6ZSk7XG4gICAgfVxuICB9XG4gIC8vIFdoZW4gbWFwcGluZyBpc24ndCBmb3VuZCBjYWxjdWxhdGUgYXMgaWYgUFgtdmFsdWUgd2FzIGdpdmVuIGFuZCByZXR1cm4gUkVNIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAaWYgaXMtbnVtYmVyKCRmcykge1xuICAgICAgZm9udC1zaXplOiB2YWx1ZVRvUmVtKCRmcyk7XG5cbiAgICAgIEBpZigkbGggIT0gbnVsbCl7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGggLyAkZnM7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuIFwiIGAjeyRmc31gIGlzIG5vdCBhIHZhbGlkIHZhbHVlLiBJdCBtdXN0IGJlIG9uZSBvZiB0aGUgZm9sbG93aW5nOiBgI3skZm9udC1zaXplc31gXCI7XG4gICAgfVxuICB9XG59XG5cblxuLy9UT0RPOiByZW1vdmUgZnVuY3Rpb24gYW5kIHVzZXNcbkBtaXhpbiBmb250KCRzaXplLCAkbGg6IG51bGwsICR3ZWlnaHQ6IG51bGwpIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzaXplLCAkbGgpO1xufSIsIi8qIE1lZGlhIHF1ZXJ5IG1peGluIGZvciB3cml0aW5nIE1vYmlsZSBGaXJzdFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBmdW5jdGlvbiBjb252ZXJ0QnJlYWtwb2ludEtleVRvVmFsdWUoJGJyZWFrcG9pbnQpIHtcblxuXHRAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkge1xuXHRcdEByZXR1cm4gbWFwLWdldCgkYnJlYWtwb2ludHMsICRicmVha3BvaW50KTtcblx0fVxuXG5cdEB3YXJuIFwiVW5rbm93biBicmVha3BvaW50OiBgI3skYnJlYWtwb2ludH1gIGluICRicmVha3BvaW50cy5cIjtcblx0QHJldHVybiBudWxsO1xufVxuXG5AbWl4aW4gbXEoJG1pbjogbnVsbCwgJG1heDogbnVsbCkge1xuXHQkcXVlcnk6IFwiYWxsXCIgIWRlZmF1bHQ7XG5cblx0Ly8gVHJ5IHRvIGNvbnZlcnQgJG1pbiB2YWx1ZSBpZiBub3QgbnVtYmVyIG9yIG51bGxcblx0QGlmKHR5cGUtb2YoJG1pbikgIT0gbnVtYmVyIGFuZCAkbWluICE9IG51bGwpe1xuXHRcdCRtaW46IGNvbnZlcnRCcmVha3BvaW50S2V5VG9WYWx1ZSgkbWluKTtcblx0fVxuXG5cdC8vIFRyeSB0byBjb252ZXJ0ICRtYXggdmFsdWUgaWYgbm90IG51bWJlciBvciBudWxsXG5cdEBpZih0eXBlLW9mKCRtYXgpICE9IG51bWJlciBhbmQgJG1heCAhPSBudWxsKXtcblx0XHQkbWF4OiBjb252ZXJ0QnJlYWtwb2ludEtleVRvVmFsdWUoJG1heCk7XG5cdH1cblxuXHQvLyBzZXQgYm90aCBtaW4gYW5kIG1heFxuXHRAaWYgKCRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsKSB7XG5cdFx0JHF1ZXJ5OiBcIihtaW4td2lkdGg6ICN7JG1pbn1weCkgYW5kIChtYXgtd2lkdGg6ICN7JG1heCAtIDF9cHgpXCI7XG5cdH1cblx0Ly8gc2V0IGp1c3QgbWluXG5cdEBlbHNlIGlmICgkbWluICE9IG51bGwgYW5kICRtYXggPT0gbnVsbCkge1xuXHRcdCRxdWVyeTogXCIobWluLXdpZHRoOiAjeyRtaW59cHgpXCI7XG5cdH1cblx0Ly8gc2V0IGp1c3QgbWF4XG5cdEBlbHNlIGlmICgkbWluID09IG51bGwgYW5kICRtYXggIT0gbnVsbCkge1xuXHRcdCRxdWVyeTogXCIobWF4LXdpZHRoOiAjeyRtYXggLSAxfXB4KVwiO1xuXHR9XG5cblx0QG1lZGlhIHNjcmVlbiBhbmQgI3skcXVlcnl9IHtcblx0XHRAY29udGVudDtcblx0fVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVG9vbGJveCBmdW5jdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qKlxuICogIE1hdGhzIGhlbHBlcnMuXG4gKiAgSGFsdmUgYW5kIGRvdWJsZSBudW1iZXJzLCByZXR1cm5pbmcgcm91bmRlZCBpbnRlZ2Vycy5cblxuICAgIFVTQUdFOlxuXG4gICAgLmZvbyB7XG4gICAgICAgIHBhZGRpbmc6IGhhbHZlKDMwcHgpO1xuICAgIH1cblxuICovXG5cbkBmdW5jdGlvbiBxdWFydGVyKCRudW1iZXIpIHtcblx0QHJldHVybiByb3VuZCgkbnVtYmVyIC8gNCk7XG59XG5cbkBmdW5jdGlvbiBoYWx2ZSgkbnVtYmVyKSB7XG5cdEByZXR1cm4gcm91bmQoJG51bWJlciAvIDIpO1xufVxuXG5AZnVuY3Rpb24gZG91YmxlKCRudW1iZXIpIHtcblx0QHJldHVybiByb3VuZCgkbnVtYmVyICogMik7XG59XG5cbkBmdW5jdGlvbiB0cmlwbGUoJG51bWJlcikge1xuXHRAcmV0dXJuIHJvdW5kKCRudW1iZXIgKiAzKTtcbn1cblxuQGZ1bmN0aW9uIHF1YWRydXBsZSgkbnVtYmVyKSB7XG5cdEByZXR1cm4gcm91bmQoJG51bWJlciAqIDQpO1xufVxuXG5cbi8qKlxuICogIFJlbW92ZSB0aGUgdW5pdCBvZiBhIGxlbmd0aFxuICogIEBwYXJhbSB7TnVtYmVyfSAkbnVtYmVyIC0gTnVtYmVyIHRvIHJlbW92ZSB1bml0IGZyb21cbiAqICBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG4gKi9cblxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bWJlcikge1xuXHRAaWYgdHlwZS1vZigkbnVtYmVyKSA9PSAnbnVtYmVyJyBhbmQgbm90IHVuaXRsZXNzKCRudW1iZXIpIHtcblx0XHRAcmV0dXJuICRudW1iZXIgLyAoJG51bWJlciAqIDAgKyAxKTtcblx0fVxuXG5cdEByZXR1cm4gJG51bWJlcjtcbn1cblxuXG4vKiBDaGVjayBpZiB2YWx1ZSBpcyBudW1iZXIgKi9cblxuQGZ1bmN0aW9uIGlzLW51bWJlcigkdmFsdWUpIHtcblx0QHJldHVybiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcic7XG59XG5cblxuLyogVmFsdWUgdG8gRW0gKi9cblxuQGZ1bmN0aW9uIHZhbHVlVG9SZW0oJHZhbHVlKSB7XG5cdCRub1VuaXRzOiBzdHJpcC11bml0KCR2YWx1ZSk7XG5cdEByZXR1cm4gI3skbm9Vbml0cyAvIDE2ICogMXJlbX07XG59XG5cbi8qIFZhbHVlIHRvIFJlbSAqL1xuXG5AZnVuY3Rpb24gdmFsdWVUb0VtKCR2YWx1ZSkge1xuXHQkbm9Vbml0czogc3RyaXAtdW5pdCgkdmFsdWUpO1xuXHRAcmV0dXJuICN7JG5vVW5pdHMgLyAxNiAqIDFlbX07XG59XG5cblxuXG5cbi8vIFNldCBhIGZpeGVkIHNwYWNlIGJhc2VkIG9uIHRoZSA4cHQgZ3JpZFxuLy8gSnVzdCBwYXNzIHRoZSBmdW5jdGlvbiBhIG51bWJlciBlcXVhbCB0byB0aGUgbnVtYmVyIG9mICg4KXBvaW50cyB5b3UgbmVlZFxuQGZ1bmN0aW9uIHNwYWNlKCRzaXplOiAnMScpIHtcbiAgQHJldHVybiA4cHggKiAkc2l6ZTtcbn1cblxuXG5cbi8qXG4gKiBTZXQgdmVydGljYWwgc3BhY2luZyBmb3Igdmlld3BvcnQgbGFyZ2VyIHRoYW4gbW9iaWxlXG4gKiBJbiBmbGV4aWJsZSB1bml0cyAodncpIGFuZCBvbiBtYXggdmlld3BvcnQgaW4gYSBmaXhlZCBhbW91bnQgKHB4KVxuXG4gVVNBR0U6XG5cbiAuZXhhbXBsZSB7XG5cdCBAaW5jbHVkZSB2c3BhY2luZyhcblx0XHQncGFkZGluZy10b3AnIDAuMzMsXG5cdFx0J21hcmdpbi1ib3R0b20nIDAuNVxuXHQpO1xuICB9XG5cbiAqL1xuXG5AbWl4aW4gdnNwYWNpbmcoJHZhbHVlcy4uLikge1xuXHRAaW5jbHVkZSBtcSgkbWF4OiAkYnAtbWF4KSB7XG5cdFx0QGVhY2ggJGkgaW4gJHZhbHVlcyB7XG5cdFx0XHQje250aCgkaSwgMSl9OiAjeygxIC8gKCRzaXRlLWNvbHVtbnMgKyAyKSAqIDEwMCkgKiBudGgoJGksIDIpfXZ3O1xuXHRcdH1cblx0fVxuXHQvLyBsb2NrIGl0IGluIHB4IHZhbHVlcyBzbyBpdCB3b24ndCBrZWVwIGdyb3dpbmdcblx0QGluY2x1ZGUgbXEoJGJwLW1heCkge1xuXHRcdEBlYWNoICRpIGluICR2YWx1ZXMge1xuXHRcdFx0Ly8je250aCgkaSwgMSl9OiAjeygkc2l0ZS1tYXgtd2lkdGggLyAkc2l0ZS1jb2x1bW5zKSAqIG50aCgkaSwgMil9cHg7XG5cdFx0XHQje250aCgkaSwgMSl9OiAjeyRzaXRlLWNvbHVtbi1zaXplICogbnRoKCRpLCAyKX1weDtcblx0XHR9XG5cdH1cbn1cblxuXG4vKipcbiAqXHRBIHNpbXBsZSBmdW5jdGlvbiBmb3Igc2V0dGluZyBhIGNvbnNpc3RlbnQgYm9yZGVyLXJhZGl1c1xuXG5cdFVTQUdFOlxuXG5cdC5jYXJkIHtcblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzO1xuXHR9XG5cblx0LmNhcmQtLWFsdCB7XG5cdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhsKTtcblx0fVxuXG4gKi9cbkBtaXhpbiBib3JkZXItcmFkaXVzKCR0eXBlOiBzKSB7XG5cdEBpZiAoJHR5cGUgPT0gJ3MnKSB7XG5cdFx0Ym9yZGVyLXJhZGl1czogbWFwLWdldCgkYm9yZGVyLXJhZGl1cywgcyk7XG5cdH1cblx0QGlmICgkdHlwZSA9PSAnbScpIHtcblx0XHRib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBtKTtcblx0fVxuXHRAaWYgKCR0eXBlID09ICdsJykge1xuXHRcdGJvcmRlci1yYWRpdXM6IG1hcC1nZXQoJGJvcmRlci1yYWRpdXMsIGwpO1xuXHR9XG59XG5cbi8qKlxuICogTG9ib3RvbWl6ZWQgT3dsIFNlbGVjdG9yIG1peGluOlxuICogLSBTZXQgc3BhY2luZyBmb3IgY29uc2VjdXRpdmUgaXRlbXMgd2l0aCBtYXJnaW4tdG9wIG9uIGFsbCBidXQgdGhlIGZpcnN0IGl0ZW1cblxuXHRVU0FHRTpcblxuXHQuYm94IHtcblx0XHRAaW5jbHVkZSBvd2wtY2hpbGRyZW47XG5cdH1cblxuXHQuY2FyZF9faXRlbSB7XG5cdFx0QGluY2x1ZGUgb3dsO1xuXHR9XG5cbiAqL1xuXG4vKlxuICogTG9ib3RvbWl6ZWQgb3dsIHNlbGVjdG9yLlxuICogLSBHaXZlcyB0aGUgY2hpbGRyZW4gb2YgdGhlIGVsZW1lbnQgc3BhY2luZ1xuICogLSBodHRwczovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvYXhpb21hdGljLWNzcy1hbmQtbG9ib3RvbWl6ZWQtb3dsc1xuICovXG5AbWl4aW4gb3dsLWNoaWxkcmVuKCRtYXJnaW46ICN7JGxpbmUtaGVpZ2h0LXJhdGlvfXJlbSkge1xuXHQmID4gKiArICoge1xuXHRcdG1hcmdpbi10b3A6ICRtYXJnaW47XG5cdH1cbn1cblxuLy8gR2l2ZXMgdGhlIGVsZW1lbnQgaXRzZWxmIHNwYWNpbmdcbkBtaXhpbiBvd2woJG1hcmdpbjogI3skbGluZS1oZWlnaHQtcmF0aW99cmVtLCAkbXE6IG51bGwpIHtcblx0QGlmKCRtcSA9PSBudWxsKSB7XG5cdFx0JiArICYge1xuXHRcdFx0bWFyZ2luLXRvcDogJG1hcmdpbjtcblx0XHR9XG5cdH0gQGVsc2Uge1xuXHRcdEBpbmNsdWRlIG1xKCRtYXg6ICRtcSl7XG5cdFx0XHQmICsgJiB7XG5cdFx0XHRcdG1hcmdpbi10b3A6ICRtYXJnaW47XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8qKlxuICogIFNob3cgaHlwaGVucyBmb3IgZXZlcnkgYnJvd3NlciBzdXBwb3J0aW5nIGl0XG4gKiAgYW5kIHdpbGwgYnJlYWsgbGluZXMgaW4gZXZlcnkgb3RoZXIgYnJvd3NlclxuICovXG5cbkBtaXhpbiBoeXBoZW5hdGUge1xuXHRvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cdC13ZWJraXQtaHlwaGVuczogYXV0bztcblx0LW1zLWh5cGhlbnM6IGF1dG87XG5cdGh5cGhlbnM6IGF1dG87XG59XG5cblxuXG5cbi8qXG4gKiAgUmVzdHJpY3QgYW4gZWxlbWVudCB0byBhIG1heC13aWR0aCBmb3IgY3JlYXRpbmcgZ3V0dGVycyBvbiB0aGUgc2lkZVxuICovXG4vKlxuICogIFJlc3RyaWN0IGFuIGVsZW1lbnQgdG8gYSBtYXgtd2lkdGggZm9yIGNyZWF0aW5nIGd1dHRlcnMgb24gdGhlIHNpZGVcbiAqL1xuQG1peGluIGNvbnRhaW4oJG1xOiBudWxsLCAkbWF4OiBudWxsKSB7XG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cblx0QGlmICgkbWF4ID09IG51bGwpIHtcblx0XHRtYXgtd2lkdGg6ICN7JHNpdGUtbWF4LXdpZHRofXB4O1xuXG5cdFx0Ly8gaWYgbm8gYXJndW1lbnQgaXMgcGFzc2VkIGNvbnRhaW4gb24gYWxsIHZpZXdwb3J0c1xuXHRcdEBpZiAoJG1xID09IG51bGwpIHtcblx0XHRcdHdpZHRoOiBjYWxjKCgxMDAlIC8gI3skc2l0ZS1jb2x1bW5zfSkgKiAjeyRzaXRlLWNvbHVtbnMgLSAyfSk7XG5cdFx0fSBAZWxzZSB7XG5cdFx0XHQvLyBpZiBtZWRpYSBxdWVyeSBpcyBwYXNzZWQgdXNlIHRoYXQgaW4gb3VyIG1peGluXG5cdFx0XHRAaW5jbHVkZSBtcSgkbXEpIHtcblx0XHRcdFx0d2lkdGg6IGNhbGMoKDEwMCUgLyAjeyRzaXRlLWNvbHVtbnN9KSAqICN7JHNpdGUtY29sdW1ucyAtIDJ9KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0QGVsc2Uge1xuXHRcdEBpbmNsdWRlIG1xKCRtYXg6ICRtYXgpIHtcblx0XHRcdHdpZHRoOiBjYWxjKCgxMDAlIC8gI3skc2l0ZS1jb2x1bW5zfSkgKiAjeyRzaXRlLWNvbHVtbnMgLSAyfSk7XG5cdFx0fVxuXHR9XG59XG5cblxuLypcbiAqXHRBIG1peGluIHRvIHNldCBlbGVtZW50cyB0byBpdHMgb3duIG5hbWVkIGdyaWQtYXJlYVxuICovXG5cbkBtaXhpbiB0ZW1wbGF0ZSgkZWxlbWVudHMuLi4pIHtcblx0QGVhY2ggJGVsZW1lbnQgaW4gJGVsZW1lbnRzIHtcblx0XHQmX18jeyRlbGVtZW50fSB7XG5cdFx0XHRncmlkLWFyZWE6ICRlbGVtZW50O1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7IC8vIEluIElFIGdyaWQgaXRlbXMgY2FuJ3QgYmUgaW5saW5lXG5cdFx0fVxuXHR9XG59IiwiLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqICBUaGUgJ3otaW5kZXgtbWFwJyBpcyB1c2VkIGZvciBtYW5hZ2luZyB0aGUgZWxlbWVudHMgc3RhY2tpbmcgb3JkZXIgaW4gdGhlICdyb290JyBzdGFja2luZyBjb250ZXh0XG4gKiAgVGhpcyB3YXkgd2UgaGF2ZSBhIG92ZXJ2aWV3IG9mIGFsbCB0aGUgei1pbmRleCB2YWx1ZXMgdGhhdCBhcmUgdXNlZCBhY3Jvc3MgdGhlIHByb2plY3QuXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbiR6LWluZGV4OiAoXG5cdHotdmlzaWJsZS1ncmlkOlx0XHRcdDEwMDAwLFxuXHR6LWNvb2tpZTpcdFx0IFx0XHRcdFx0OTk5OSxcblx0ei1vdmVybGF5LW1lbnU6XHRcdFx0MTAwLFxuXHR6LWhlYWRlcjogXHRcdFx0XHRcdDUwLFxuXHR6LWJvZHk6XHRcdFx0XHRcdFx0XHQ0MCxcblx0ei1mb290ZXI6XHRcdFx0XHQgXHRcdDIwLFxuXHR6LXN1YmZvb3RlcjpcdFx0XHRcdDEwLFxuKTtcblxuXG4vKipcbiAgICBVU0FHRTpcblxuICAgIEBpbmNsdWRlIHooei1tb2RhbCk7XG5cbiAqL1xuXG5AbWl4aW4geigkbGFiZWwpIHtcblx0ei1pbmRleDogbWFwLWdldCgkei1pbmRleCwkbGFiZWwpO1xufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBCYXNpYyBlbGVtZW50cyAobm8gY2xhc3Mgc2VsZWN0b3JzIGFsbG93ZWQpXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFNldCB1cCB0aGUgaHRtbFxuICpcbiAqIDEuIE1ha2VzIHN1cmUgdGhhdCBzb21lIGZvbnRzIGFyZSBiZXR0ZXIgcmVuZGVyZWRcbiAqIDIuIFNldCBmb250IHRvIGxpbmluZyBmaWd1cmVzXG4gKlxuICovXG5cbmh0bWwge1xuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblx0dGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcblx0Zm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImxudW1cIjtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0aGVpZ2h0OiAxMDAlO1xufVxuXG5cbmJvZHkge1xuXHRAaW5jbHVkZSBmb250LXNpemUoYmFzZSk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Zm9udC1mYW1pbHk6ICRmb250LXJvYm90bztcblx0bGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1yYXRpbztcblx0bWFyZ2luOiAwO1xuXHRjb2xvcjogcGFsZXR0ZSh0ZXh0LCA0MDApO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgMjApO1xufVxuXG5cbi8qKlxuICogWzFdIE1ha2Ugc3VyZSBlbGVtZW50cyBsaWtlIGlucHV0IGFuZCB0ZXh0YXJlYSBpbmhlcml0IHNvbWUgYmFzZSBwcm9wZXJ0aWVzXG4gKiAgICAgaHR0cHM6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNi8xMS9jc3MtaW5oZXJpdGFuY2UtY2FzY2FkZS1nbG9iYWwtc2NvcGUtbmV3LW9sZC13b3JzdC1iZXN0LWZyaWVuZHMvXG4gKlxuICogWzJdIFNldHRpbmcgYm94LXNpemluZyB0aGUgYmVzdCB3YXkgcGVyOlxuICogICAgIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlL1xuICovXG4qIHtcblx0Zm9udC1mYW1pbHk6IGluaGVyaXQ7XG5cdGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuXHRjb2xvcjogaW5oZXJpdDtcblxuXHQmLFxuXHQmOmJlZm9yZSxcblx0JjphZnRlciB7XG5cdFx0Ym94LXNpemluZzogaW5oZXJpdDtcblx0fVxufVxuXG5cbi8qKlxuICogWzFdIFR1cm4gb2ZmIHRleHQtc2hhZG93IHdoZW4gc2VsZWN0aW5nIHRleHQgZm9yIGJldHRlciByZWFkYWJpbGl0eVxuICovXG46OnNlbGVjdGlvbiB7XG5cdGJhY2tncm91bmQ6IHBhbGV0dGUoZmVlZGJhY2ssIGZvY3VzKTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG5cdHRleHQtc2hhZG93OiBub25lOyAvKiBbMV0gKi9cbn1cblxuXG4vKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gYXJvdW5kIGZpZ3VyZVxuICovXG5maWd1cmUge1xuXHRtYXJnaW46IDA7XG59XG5cblxuLyoqXG4gKiBbMV0gU2V0dGluZyAndmVydGljYWwtYWxpZ24nIHJlbW92ZXMgdGhlIHdoaXRlc3BhY2UgdGhhdCBhcHBlYXJzIHVuZGVyICdpbWcnXG4gKlx0ICAgZWxlbWVudHMgd2hlbiB0aGV5IGFyZSBkcm9wcGVkIGludG8gYSBwYWdlIGFzLWlzLiBTYWZlciBhbHRlcm5hdGl2ZSB0b1xuICpcdCAgIHVzaW5nICdkaXNwbGF5OiBibG9jazsnLlxuICogWzJdIFJlbW92ZSBib3JkZXIgLyBlc3BlY2lhbGx5IG9uIG9sZGVyIGJyb3dzZXJzXG4gKi9cbmltZywgc3ZnIHtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTsgLypbMV0qL1xuXHRib3JkZXI6IG5vbmU7IC8qWzJdKi9cblx0bWF4LXdpZHRoOiAxMDAlO1xufVxuXG5cbi8qKlxuICogIE5lZWRlZCBmb3IgaU9TIHRvIHByZXZlbnQgaW5wdXQgem9vbWluZ1xuICogIGh0dHBzOi8vdXhjZWxsZW5jZS5jb20vMjAxNC8wMS8xNS9xdWljay1maXgtaW5jcmVhc2UtZm9udC1zaXplLXRvLTE2cHgtdG8tZml4LWlucHV0LXpvb21cbiAqL1xuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG5cdGZvbnQtc2l6ZTogMTZweDtcbn1cblxuXG4vLyBMaW5rcyB3aXRoIG5vIGNsYXNzIGdldCBhIGRlZmF1bHQgaG92ZXJcbmE6bm90KFtjbGFzc10pIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRjb2xvcjogcGFsZXR0ZShwcmltYXJ5LCAzMDApO1xuXHR0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IGF1dG87IC8vIHByZXR0eSB1bmRlcmxpbmluZyBsaW5rc1xuXHR0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xuXG5cdCY6aG92ZXIge1xuXHRcdGNvbG9yOiAgcGFsZXR0ZShwcmltYXJ5LCA4MDApO1xuXHRcdCY6OmFmdGVyIHtcblx0XHRcdGhlaWdodDogMnB4O1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuXHRcdH1cblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtY29sb3I6IHBhbGV0dGUoZmVlZGJhY2ssIGZvY3VzKTtcblx0fVxufVxuXG5cbi8vIFRPRE86IElzIHRoaXMgdGhlIHJpZ2h0IHdheSB0byByZXNldCBhbGwgbWFyZ2luPz9cbi8vIFJlc2V0IGFsbCB0b3AgbWFyZ2luc1xuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgaGdyb3VwLFxudWwsIG9sLCBkZCxcbnAsIGZpZ3VyZSxcbnByZSwgdGFibGUsIGZpZWxkc2V0LCBociB7XG5cdG1hcmdpbi10b3A6IDA7XG5cdG1hcmdpbi1ib3R0b206IDA7XG59IiwiaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG5cdGNvbG9yOiBwYWxldHRlKHRleHQsIDYwMCk7XG59XG5cbmgxIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHh4bCk7XG59XG5cbmgyIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHhsKTtcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuaDMge1xuXHRAaW5jbHVkZSBmb250LXNpemUobCk7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbmg0IHtcblx0QGluY2x1ZGUgZm9udC1zaXplKG0pO1xuXHRmb250LXdlaWdodDogNTAwO1xufVxuXG5oNSwgaDYge1xuXHRAaW5jbHVkZSBmb250LXNpemUoYmFzZSk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufSIsIi8qKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiAgTGlzdHNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuLyoqXG4gKlx0RGVmYXVsdCBpbmRlbnRhdGlvbiB2YWx1ZSBmb3IgbGlzdHNcbiAqL1xuXG51bCxcbm9se1xuXHRwYWRkaW5nOiAwO1xuXHRtYXJnaW46IDA7XG5cdG1hcmdpbi1sZWZ0OiAxLjEyNWVtO1xufVxuXG5kZHtcblx0bWFyZ2luLWxlZnQ6IDA7XG59XG5cblxuXG4vKipcbiAqXHRSZW1vdmUgZXh0cmEgdmVydGljYWwgc3BhY2luZyB3aGVuIG5lc3RpbmcgbGlzdHMuXG4gKi9cblxubGkge1xuXHQ+IHVsLFxuXHQ+IG9sIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG59IiwiLmwtYmxvY2sge1xuICAvLyBUb3AgbWFyZ2luIG9ubHkgb24gY29uc2VjdXRpdmUgYmxvY2tzXG4gICYgKyAmIHtcbiAgICBAaW5jbHVkZSB2c3BhY2luZyhcbiAgICAgICAgJ21hcmdpbi10b3AnIDFcbiAgICApO1xuICB9XG59IiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogQ29udGFpblxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4ubC1jb250YWluIHtcbiAgQGluY2x1ZGUgY29udGFpbjtcbn0iLCJAaW5jbHVkZSBtcShtKSB7XG5cdC5sLWRpdmlkZSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHR9XG59XG5cblxuLmwtZGl2aWRlX19pdGVtIHtcblx0QGluY2x1ZGUgb3dsKHNwYWNlKDMpLCBtKTtcblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0JjpudGgtY2hpbGQoMikge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0fVxuXHR9XG59IiwiLmwtZm9ybV9fYm9keSB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDUpO1xufVxuXG5cbi5sLWZvcm1fX3JvdyB7XG5cdCYgKyAmIHtcblx0XHRtYXJnaW4tdG9wOiBzcGFjZSgzKTtcblx0fVxufVxuXG5cbi5sLWZvcm1fX2Zvb3RlciB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDUpO1xufVxuXG5cbi8vIEEgaGlkZGVuIHdyYXBwZXIgZm9yIGhvbmV5IHBvdCBzdHVmZlxuLmwtZm9ybV9fcG90IHtcblx0b3BhY2l0eTogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XHRsZWZ0OiAwOyBoZWlnaHQ6IDA7IHdpZHRoOiAwO1xuXHR6LWluZGV4OiAtMTtcbn0iLCIgLypcbiAqIFdyYXBwZXIgb2YgdGhlIG1haW4gYm9keVxuICogKGJldHdlZW4gdGhlIGhlYWRlciBhbmQgdGhlIGZvb3RlcilcblxuICogWzFdIEF2b2lkIHRoZSBJRSAxMC0xMSBgbWluLWhlaWdodGAgYnVnLlxuICovXG5cblxuIC8vIC5sLXBhZ2UgbmVlZHMgdG8gYmUgb24gdGhlIGJvZHkgZWxlbWVudFxuLmwtcGFnZSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGhlaWdodDogMTAwJTsgLyogWzFdICovXG59XG5cblxuLmwtcGFnZV9faGVhZGVyIHtcbiBcdC8vcG9zaXRpb246IHJlbGF0aXZlO1xuXHQvL3otaW5kZXg6IDQxO1xuXHQvL2Rpc3BsYXk6IGJsb2NrO1xuXHQvL2JveC1zaGFkb3c6IDAgMjVweCAxMHB4IC0xMHB4IHJnYmEoYmxhY2ssIDAuMSk7XG59XG5cblxuLmwtcGFnZV9fYm9keSB7XG5cdEBpbmNsdWRlIHooei1ib2R5KTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRmbGV4OiAxIDAgYXV0bztcbn1cblxuXG4ubC1wYWdlX19mb290ZXIge1xuIFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRmbGV4LXNocmluazogMDtcblx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cblx0Ly8gU29tZSBzZXR0aW5ncyBmb3IgbWFraW5nIHN1cmUgdGhlIGNvb2tpZS1iYXIgZG9lc24ndCBjb3ZlciB0aGUgY29udGVudFxuXHRwYWRkaW5nLWJvdHRvbTogJHNpdGUtY29va2llQmFyLWhlaWdodDtcblx0dHJhbnNpdGlvbjogcGFkZGluZyAkc2l0ZS1jb29raWVCYXItdHJhbnNpdGlvbi1zcGVlZCAkc2l0ZS1jb29raWVCYXItdHJhbnNpdGlvbi1lYXNlO1xuXG5cdGJvZHkuaXMtY29va2llcy1hY2NlcHRlZCAmIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0fVxuXG5cdC5zdmctd3JhcHBlciB7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR0b3A6IDFweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKC0xLCAtMSk7XG5cblx0XHRkZWZzIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG59XG5cblxuLy8gV3JhcHBlciBmb3IgaW5pdGlhbGx5IGhpZGRlbiBlbGVtZW50c1xuLmwtcGFnZV9fY29uY2VhbGVkIHtcbn0iLCIvKiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIENvbXBvbmVudHNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG5AaW1wb3J0IFwiY29tcG9uZW50cy5icmVhZGNydW1iXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5idXR0b25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmNhcmRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmNoZWNrYm94XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5jbG9zZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuY3RhXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5jdGFUZXh0XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5jdGFQZXJzb25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmZhcVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuZm9ybUdyb3VwXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5mb3JtRmVlZGJhY2tcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmZ1bGxJbWFnZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuaGFtYnVyZ2VyXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5oZWFkaW5nXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5pbnB1dFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMubGFuZ3VhZ2VcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmxhcmdlUXVvdGVcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLm5hdlwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMucGFnZVRpdGxlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5wcm9qZWN0b3JcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnBvc3RDYXRlZ29yaWVzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5yZWZlcmVuY2VzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5yZWZlcmVuY2VDYXJkc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuc2VsZWN0XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5zZXJ2aWNlUG9pbnRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnNlcnZpY2VCbG9ja1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuc2VydmljZVR5cGVcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnNlcnZpY2VIZWFkaW5nXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5zaXRlbWFwXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5za2lwTGlua1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuc2xpZGVJbmRpY2F0b3JcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnN1Ym5hdlwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMudGV4dFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMudGV4dEJ1dHRvblwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMudHJhZGVtYXJrXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy52aWRlb1wiOyIsIi5jLWJyZWFkY3J1bWIge1xuXHRwYWRkaW5nLWJvdHRvbTogNHB4OyAvLyBtYWtlIHN1cmUgdG90YWwgaGVpZ2h0IHdpbGwgYmUgZGl2aXNpYmxlIGJ5IDhcbiB9XG5cbi5jLWJyZWFkY3J1bWJfX2xpc3Qge1xuXHRtYXJnaW46IDA7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcbn1cblxuXG4uYy1icmVhZGNydW1iX19pdGVtIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHQmOm50aC1jaGlsZChuKzIpIHtcblx0XHQmIC5jLWJyZWFkY3J1bWJfX2ljb24ge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdHdpZHRoOiBzcGFjZSgzKTtcblx0XHRcdGhlaWdodDogc3BhY2UoMyk7XG5cdFx0XHRtYXJnaW4tbGVmdDogc3BhY2UoMSk7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IHNwYWNlKDEpO1xuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuXHRcdFx0Ly9jb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA1MDApO1xuXHRcdFx0Y29sb3I6IHBhbGV0dGUocHJpbWFyeSwgMzAwKTtcblx0XHR9XG5cdH1cbn1cblxuLmMtYnJlYWRjcnVtYl9fbGluayB7XG5cdGNvbG9yOiByZ2JhKHdoaXRlLCAwLjQpO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgxNSk7XG5cdHRyYW5zaXRpb246IGNvbG9yIDAuMnM7XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IHJnYmEod2hpdGUsIDAuNzUpO1xuXHR9XG5cblx0LmMtYnJlYWRjcnVtYl9faXRlbS0tbGFzdCAmIHtcblx0XHRjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0fVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBEZWZhdWx0IGJ1dHRvblxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmMtYnV0dG9uIHtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdEBpbmNsdWRlIGJvcmRlci1yYWRpdXM7XG5cdEBpbmNsdWRlIGZvbnQoMTQsIDIwLCA1MDApO1xuXHRwYWRkaW5nOiAxMXB4IDAgMTBweDtcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjMkY2Q0U2IDAlLCAjNjk5QkZGIDUwJSwgIzJGNkNFNiAxMDAlKTtcblx0YmFja2dyb3VuZC1zaXplOiAyMDAlO1xuXHRjb2xvcjogd2hpdGU7XG5cdGJvcmRlcjogbm9uZTtcblx0Ym9yZGVyLXJhZGl1czogNDAwcHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3M7XG5cdC8vd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gVE9ETyBTaG91bGQgdGhlIHRleHQgb2YgYSBidXR0b24gd3JhcCBvciBub3Q/XG5cblx0Jjpob3Zlcjpub3QoOmRpc2FibGVkKSB7XG5cdFx0Ly9iYWNrZ3JvdW5kLWNvbG9yOiBzY2FsZS1jb2xvcihwYWxldHRlKGFjdGlvbiksICRsaWdodG5lc3M6IC0yMCUpO1xuXHRcdC8vYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCBzY2FsZS1jb2xvcigjNjk5QkZGLCAkbGlnaHRuZXNzOiAtMjAlKSAwJSwgc2NhbGUtY29sb3IoIzJGNkNFNiwgJGxpZ2h0bmVzczogLTIwJSkgMTAwJSk7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMCU7XG5cdH1cblx0JjphY3RpdmU6bm90KDpkaXNhYmxlZCkge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxcHgpO1xuXHR9XG5cdCY6ZGlzYWJsZWQge1xuXHRcdG9wYWNpdHk6IDAuNTtcblx0XHRjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXHR9XG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdH1cbn1cblxuLmMtYnV0dG9uX190ZXh0IHtcblx0QGluY2x1ZGUgZm9udCgxOCwgMjIsIDUwMCk7XG5cdHBhZGRpbmc6IDAgMjVweDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRsZXR0ZXItc3BhY2luZzogMS41cHg7XG59XG5cbi5jLWJ1dHRvbl9faWNvbiB7XG5cdGRpc3BsYXk6IG5vbmU7IC8vIEJ5IGRlZmF1bHQgaWNvbiBpcyBoaWRkZW5cblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0b3A6IC0xcHg7XG5cdGxlZnQ6IC00cHg7XG5cdGhlaWdodDogMTJweDtcblx0d2lkdGg6IDE2cHg7XG5cdG1hcmdpbi1yaWdodDogMTVweDtcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XG5cblx0LmMtYnV0dG9uOmhvdmVyOm5vdCg6ZGlzYWJsZWQpICYge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpO1xuXHR9XG5cblx0Ly8gV2hlbiBpY29uIGNvbWVzIGJlZm9yZSB0aGUgdGV4dCAoaW4gdGhlIERPTSkgc3dpdGNoIHRoZSBtYXJnaW5cblx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdG1hcmdpbi1sZWZ0OiAxNXB4O1xuXHR9XG5cblx0LmMtYnV0dG9uLS1pY29uICYge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0fVxufVxuXG4uYy1idXR0b24tLXRleHQge1xuXHRib3JkZXI6IG5vbmU7XG5cdGJhY2tncm91bmQ6IG5vbmU7XG5cdGNvbG9yOiAjN0FEM0ZGO1xuXG5cdCY6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuXHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0Y29sb3I6IHBhbGV0dGUodGV4dCwgNjAwKTtcblx0fVxuXG5cdC5jLWJ1dHRvbl9fdGV4dCB7XG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHR9XG59XG5cbi5jLWJ1dHRvbi0tZ2hvc3Qge1xuXHRwYWRkaW5nOiAxMHB4IDAgOXB4O1xuXHRjb2xvcjogcGFsZXR0ZSh0ZXh0LCA0MDApO1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyOiAxcHggc29saWQgY3VycmVudENvbG9yO1xuXHR0cmFuc2l0aW9uOiBjb2xvciAwLjNzLCBib3JkZXIgMC4zcztcblxuXHQmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcblx0XHRjb2xvcjogc2NhbGUtY29sb3IocGFsZXR0ZSh0ZXh0LCA0MDApLCAkbGlnaHRuZXNzOiAtMjAlKTtcblx0fVxufVxuXG4uYy1idXR0b24tLW9uLWRhcmsge1xuXHRjb2xvcjogd2hpdGU7XG5cblx0Jjpob3Zlcjpub3QoOmRpc2FibGVkKSB7XG5cdFx0Y29sb3I6IHJnYmEod2hpdGUsIDAuNzUpO1xuXHR9XG59IiwiLmMtY2FyZCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGhlaWdodDogMTAwJTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG5cblxuLmMtY2FyZF9fcGljdHVyZSB7XG5cdHdpZHRoOiAxMDAlO1xuXHRmbGV4OiBhdXRvO1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuXG4uYy1jYXJkX19pbWcge1xuXHRvYmplY3QtZml0OiBjb3Zlcjtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAyMDApO1xufVxuXG5cbi5jLWNhcmRfX2xhYmVsIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAxNHB4IDEwcHggMTVweDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG5cdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgODAwKTtcblx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZDtcblx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG5cblx0LmMtY2FyZDpob3ZlciAmIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDEwMDApO1xuXHR9XG59IiwiLmMtY2hlY2tib3gge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5cbi5jLWNoZWNrYm94X19pbnB1dCB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0aGVpZ2h0OiAxcHg7XG5cdHdpZHRoOiAxcHg7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbn1cblxuXG4uYy1jaGVja2JveF9fdGV4dCB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgxNCwyMCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwYWRkaW5nLWxlZnQ6IDE2cHggKyBzcGFjZSgxKTsgLyogMTZweCB3aWR0aCBvZiBmYWtlIGNoZWNrYm94ICsgZ2FwICovXG5cblx0Jjo6YmVmb3JlLFxuXHQmOjphZnRlciB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cblx0XHQvKk5lZWRlZCBmb3IgdGhlIGxpbmUtaGVpZ2h0IHRvIHRha2UgZWZmZWN0Ki9cblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdH1cblxuXHQvKk91dGVyIGJveCBvZiB0aGUgZmFrZSBjaGVja2JveCovXG5cdCY6OmJlZm9yZSB7XG5cdFx0aGVpZ2h0OiAxNnB4O1xuXHRcdHdpZHRoOiAxNnB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG5cdFx0Ym9yZGVyOiAycHggc29saWQgcGFsZXR0ZShuZXV0cmFsLCAzMDApO1xuXHRcdHRvcDogMnB4OyAvLyB0byB2ZXJ0aWNhbGx5IGNlbnRlciBpdC5cblx0XHRsZWZ0OiAwO1xuXHRcdGJvcmRlci1yYWRpdXM6IDJweDtcblx0XHR0cmFuc2l0aW9uOiBhbGwgMTUwbXMgbGluZWFyO1xuXHR9XG5cblx0LypDaGVja21hcmsgb2YgdGhlIGZha2UgY2hlY2tib3gqL1xuXHQmOjphZnRlciB7XG5cdFx0aGVpZ2h0OiA1cHg7XG5cdFx0d2lkdGg6IDEwcHg7XG5cdFx0dG9wOiA3cHg7XG5cdFx0bGVmdDogM3B4O1xuXHRcdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDApO1xuXHRcdGJvcmRlci1sZWZ0OiAycHggc29saWQ7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkO1xuXHRcdHRyYW5zZm9ybTogcm90YXRlKC01M2RlZyk7XG5cdH1cblxuXG5cdC8qSGlkZSB0aGUgY2hlY2ttYXJrIGJ5IGRlZmF1bHQqL1xuXHQuYy1jaGVja2JveF9faW5wdXQgKyAmOjphZnRlciB7XG5cdFx0Y29udGVudDogbm9uZTtcblx0fVxuXG5cdC8qVW5oaWRlIG9uIHRoZSBjaGVja2VkIHN0YXRlKi9cblx0LmMtY2hlY2tib3hfX2lucHV0OmNoZWNrZWQgKyAmIHtcblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShmZWVkYmFjaywgZm9jdXMpO1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiBwYWxldHRlKGZlZWRiYWNrLCBmb2N1cyk7XG5cdFx0fVxuXHRcdCY6OmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0fVxuXHR9XG5cblxuXHQvKkFkZGluZyBmb2N1cyBzdHlsZXMgb24gdGhlIG91dGVyLWJveCBvZiB0aGUgZmFrZSBjaGVja2JveCovXG5cdC5jLWNoZWNrYm94X19pbnB1dDpmb2N1cyArICY6OmJlZm9yZSB7XG5cdFx0b3V0bGluZTogcmdiKDU5LCAxNTMsIDI1MikgYXV0byA1cHg7XG5cdFx0b3V0bGluZTogbm9uZTtcblx0XHRib3gtc2hhZG93OiAwIDAgN3B4IC0xcHggcmdiYShwYWxldHRlKG5ldXRyYWwsIDkwMCksIDAuOCk7XG5cdFx0Ym9yZGVyLWNvbG9yOiBwYWxldHRlKGZlZWRiYWNrLCBmb2N1cyk7XG5cdH1cblx0XG5cdFxuXHQvKiBMaW5rcyBpbnNpZGUgdGhlIHRleHQgKi9cblx0JiA+IGEge1xuXHRcdGNvbG9yOiBwYWxldHRlKGZlZWRiYWNrLCBmb2N1cyk7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0Jjo6YWZ0ZXIgeyBjb250ZW50OiBub25lOyB9XG5cdFx0fVxuXHR9XG59XG5cblxuLmMtY2hlY2tib3hfX2NvdW50IHtcblx0QGluY2x1ZGUgZm9udC1zaXplKDEyKTtcblx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhzKTtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZzogMnB4IHNwYWNlKDEpO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAzMDApO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHBhbGV0dGUobmV1dHJhbCwgMjAwKSwgMC43KTtcblx0Ym9yZGVyOiAycHggc29saWQgcGFsZXR0ZShuZXV0cmFsLCAzMDApO1xuXHR0cmFuc2l0aW9uOiBhbGwgODBtcyBsaW5lYXI7XG5cblx0LmMtY2hlY2tib3hfX2lucHV0OmNoZWNrZWQgfiAmIHtcblx0XHRjb2xvcjogcGFsZXR0ZShmZWVkYmFjaywgZm9jdXMpO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUoZmVlZGJhY2ssIGZvY3VzKTtcblx0XHRib3JkZXItY29sb3I6IHBhbGV0dGUoZmVlZGJhY2ssIGZvY3VzKTtcblx0fVxufVxuXG5cbi5jLWNoZWNrYm94LS1oYXMtaW5kaWNhdG9yIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoMC41KTtcblxuXHQmIC5jLWNoZWNrYm94X190ZXh0IHtcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdH1cbn0iLCIuYy1jbG9zZSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1zZWxmOiBjZW50ZXI7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IHNwYWNlKDUpO1xuXHRoZWlnaHQ6IHNwYWNlKDUpO1xuXHRwYWRkaW5nOiAwO1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRib3JkZXI6IG5vbmU7XG5cdG91dGxpbmU6IG5vbmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDE4MG1zIGVhc2Utb3V0O1xuXG5cdCY6Zm9jdXMge1xuXHRcdGJveC1zaGFkb3c6IDAgMCAzcHggMnB4IHBhbGV0dGUobmV1dHJhbCwgMzAwKTtcblx0fVxuXG5cdCY6YWZ0ZXIsXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAyMHB4O1xuXHRcdHJpZ2h0OiAyMCU7XG5cdFx0bGVmdDogMjAlO1xuXHRcdGhlaWdodDogM3B4O1xuXHRcdG1hcmdpbi10b3A6IC0ycHg7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0YmFja2dyb3VuZDogcGFsZXR0ZShuZXV0cmFsLCAzMDApO1xuXHRcdGJvcmRlci1yYWRpdXM6IDNweDtcblx0fVxuXHQmOmJlZm9yZSB7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuXHR9XG5cdCY6YWZ0ZXIge1xuXHRcdHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG5cdH1cbn0iLCIuYy1jdGEge31cblxuXG4uYy1jdGFfX3N1YnRpdGxlIHtcblx0Y29sb3I6IHBhbGV0dGUodGV4dCwgNDAwKTtcblx0QGluY2x1ZGUgZm9udCgxOCwgMzApO1xufVxuLmMtY3RhX190aXRsZSB7XG5cdG1hcmdpbjogMTBweCAwIDMwcHggMDtcbn1cblxuLmMtY3RhX19idXR0b24ge1xuXG59IiwiJGN0YVRleHRCcDogOTUwO1xuXG4uYy1jdGEtdGV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDgwcHg7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDc1JTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwIC0yNXB4IDI1cHggLTI1cHggcmdiYSgxOTgsMjE0LDIyNywwLjUpO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEoJGN0YVRleHRCcCkge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgKyA0MHB4KTtcbiAgICB9XG4gIH1cbn1cblxuLmMtY3RhLXRleHQtLXdpdGhvdXQtc2hhZG93IHtcbiAgJjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmMtY3RhLXRleHRfX2dyaWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG5cbiAgQGluY2x1ZGUgbXEoJGN0YVRleHRCcCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuXG4uYy1jdGEtdGV4dF9fbWFpbiB7XG4gIHBhZGRpbmc6IDUwcHggNDVweCA2MHB4IDQ1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9ncmFkaWVudC1iZy5zdmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBjb2xvcjogd2hpdGU7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogNjAwKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBtcSgkY3RhVGV4dEJwKSB7XG4gICAgd2lkdGg6IGNvbHVtbig3LCAxMik7XG4gIH1cblxuICBAaW5jbHVkZSBtcSgxMzAwKSB7XG4gICAgcGFkZGluZzogMTAwcHggNDVweCAxMjBweCA0NXB4O1xuICB9XG4gIEBpbmNsdWRlIG1xKDE1MDApIHtcbiAgICBwYWRkaW5nOiAxMDBweCA5MHB4IDEyMHB4IDkwcHg7XG4gIH1cblxuICBoMiB7XG4gICAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgQGluY2x1ZGUgbXEoMTMwMCkge1xuICAgICAgbWFyZ2luOiAwIDAgNjBweCAwO1xuICAgIH1cbiAgfVxuICBwIHtcbiAgICBtYXJnaW46IDAgMCAyNXB4IDA7XG4gICAgQGluY2x1ZGUgZm9udCgxOCwgMjYpO1xuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xKDEzMDApIHtcbiAgICAgIG1hcmdpbjogMCAwIDUwcHggMDtcbiAgICB9XG4gIH1cbiAgc3Ryb25nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogOXB4O1xuICAgIG1hcmdpbjogMCAycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBjb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA3MDApO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIH1cbn1cblxuLmMtY3RhLXRleHRfX3NpZGUge1xuICB3aWR0aDogY2FsYygxMDAlIC0gODBweCk7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDIwcHggMjBweDtcbiAgcGFkZGluZzogNDVweDtcbiAgYm94LXNoYWRvdzogMCA2cHggMjVweCAwIHJnYmEoMjAzLCAyMjUsIDI0NCwgMC41KTtcblxuICBAaW5jbHVkZSBtcSgkbWF4OiA2MDApIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMjBweDtcbiAgICBwYWRkaW5nOiA2MHB4IDQwcHggNDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKCRjdGFUZXh0QnApIHtcbiAgICB3aWR0aDogY29sdW1uKDUsMTIpO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKDEwMjQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDIwcHggMjBweCAwO1xuICAgIGJveC1zaGFkb3c6IDZweCA2cHggMjVweCAwIHJnYmEoMjAzLCAyMjUsIDI0NCwgMC41KTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKDEzMDApIHtcbiAgICBwYWRkaW5nOiA3MHB4IDQ1cHg7XG4gIH1cblxuICBAaW5jbHVkZSBtcSgxNTAwKSB7XG4gICAgcGFkZGluZzogNzBweDtcbiAgfVxuXG59IiwiLmMtY3RhUGVyc29uIHtcbiAgcGFkZGluZy10b3A6IDE0MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNTRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgLTI1cHggMjVweCAtMjVweCByZ2JhKDE5OCwyMTQsMjI3LDAuNSk7XG59XG5cbi5jLWN0YVBlcnNvbi0td2l0aG91dC1zaGFkb3cge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLmMtY3RhUGVyc29uX19tYWluIHtcbiAgQGluY2x1ZGUgbXEoOTAwKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgID4gKiB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgbWF4LXdpZHRoOiA0ODBweDtcbiAgICB9XG4gIH1cbn1cblxuXG4uYy1jdGFQZXJzb25fX2xlZnQge1xuXG4gIEBpbmNsdWRlIG1xKG51bGwsIDY3MCkge1xuICAgIG1hcmdpbjogMCBhdXRvIDYwcHggYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBAaW5jbHVkZSBtcSg2NzAsIDkwMCkge1xuICAgIG1hcmdpbjogMCBhdXRvIDYwcHggYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuXG5cbn1cblxuLmMtY3RhUGVyc29uX19yaWdodCB7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogNjgwKSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLmMtY3RhUGVyc29uX19wZXJzb25hbERhdGEge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1xKDY4MCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC5jLWN0YVBlcnNvbl9fc3ZnSG9sZGVyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtcSg2ODAsIDkwMCkge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEoOTAwKSB7XG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICB9XG5cbiAgLmMtY3RhUGVyc29uX19zdmdIb2xkZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTYwcHg7XG4gIH1cblxuICAuYy1jdGFQZXJzb25fX3BlcnNvbmFsRGF0YSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbn1cblxuLmMtY3RhX19wZXJzb25hbC1uYW1le1xuICBtYXJnaW46IDAgMCAxMHB4IDA7XG59XG5cbi5jLWN0YV9fcGVyc29uYWwtZnVuY3Rpb257XG4gIG1hcmdpbjogMCAwIDI1cHggMDtcbiAgY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNTAwKTtcbiAgQGluY2x1ZGUgZm9udCgxNiwgMTkpO1xufVxuXG4uYy1jdGFfX3BlcnNvbmFsLXBob25le1xuICBjb2xvcjogcGFsZXR0ZSh0ZXh0LCA2MDApO1xuICBAaW5jbHVkZSBmb250KDIwLCAyNCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn0iLCIuYy1mYXEge1xuXG59XG5cbi5jLWZhcV9fbGlzdCB7XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xufVxuXG5cbi5jLWZhcV9faXRlbSB7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBwYWxldHRlKHByaW1hcnksIDIwMCk7XG5cdG1heC13aWR0aDogNDVlbTtcbn1cblxuXG4uYy1mYXFfX2xhYmVsIHtcblx0ZGlzcGxheTogZmxleDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRwYWRkaW5nOiBzcGFjZSgyKSAwO1xufVxuXG5cbi5jLWZhcV9fbnVtYmVyIHtcblx0bWFyZ2luLXJpZ2h0OiBzcGFjZSgyKTtcbn1cblxuXG4uYy1mYXFfX2hlYWRpbmcge1xuXHRAaW5jbHVkZSBmb250LXNpemUoMTgpO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHR3aWR0aDogMTAwJTtcblx0Y29sb3I6IHBhbGV0dGUodGV4dCwgNjAwKTtcblx0dHJhbnNpdGlvbjogY29sb3IgMTUwbXMgbGluZWFyO1xuXG5cdC5jLWZhcV9fbGFiZWw6aG92ZXIgJiB7XG5cdFx0Y29sb3I6IHBhbGV0dGUodGV4dCwgNDAwKTtcblx0fVxuXG5cdC5jLWZhcV9fbGFiZWwuaXMtYWN0aXZlICYge1xuXHRcdGNvbG9yOiBwYWxldHRlKHByaW1hcnksIDUwMCk7XG5cdH1cbn1cblxuXG4uYy1mYXFfX2Fycm93IHtcblx0ZmxleDogbm9uZTtcblx0Y29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNDAwKTtcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDE1MG1zIGVhc2UtaW4tb3V0O1xuXG5cdC5jLWZhcV9fbGFiZWwuaXMtYWN0aXZlICYge1xuXHRcdHRyYW5zZm9ybTogcm90YXRlKC0wLjI1dHVybik7XG5cdH1cbn1cblxuXG4uYy1mYXFfX2NvbnRlbnQge1xuXHRtYXgtaGVpZ2h0OiAwO1xuXHRvcGFjaXR5OiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTsgLy8gTmVlZGVkIHNvIHdlIGRvbid0IGNsaWNrIG9uIGl0IHdoZW4gaXQgaXMgaGlkZGVuXG5cdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLWluLW91dDtcblxuXHQuaXMtYWN0aXZlIH4gJiB7XG5cdFx0cGFkZGluZy1ib3R0b206IHNwYWNlKDMpO1xuXHRcdG1heC1oZWlnaHQ6IDEwMDBweDtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHBvaW50ZXItZXZlbnRzOiBhbGw7XG5cdH1cbn1cblxuLmMtZmFxX19hY3Rpb24ge1xuXHRtYXJnaW4tdG9wOiBzcGFjZSg2KTtcbn0iLCIuYy1mb3JtLWdyb3VwX19sYWJlbCB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZShzKTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmc6IHNwYWNlKDAuNSkgMDtcbn1cblxuXG4uYy1mb3JtLWdyb3VwX19lcnJvciB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cblx0Lmhhcy1lcnJvciAmOm5vdCg6ZW1wdHkpIHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoeHMpO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBhZGRpbmc6IHNwYWNlKDEpO1xuXHRcdGNvbG9yOiBwYWxldHRlKGZlZWRiYWNrLCB3YXJuaW5nKTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHBhbGV0dGUoZmVlZGJhY2ssIHdhcm5pbmcpLCAwLjEpO1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkIHBhbGV0dGUoZmVlZGJhY2ssIHdhcm5pbmcpO1xuXHRcdGJvcmRlci10b3A6IG5vbmU7XG5cdFx0Ym9yZGVyLXJhZGl1czogMCAwIG1hcC1nZXQoJGJvcmRlci1yYWRpdXMsIHMpIG1hcC1nZXQoJGJvcmRlci1yYWRpdXMsIHMpO1xuXHR9XG59IiwiLmMtZm9ybS1mZWVkYmFjayB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZShzKTtcblx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhzKTtcblx0bWFyZ2luOiBzcGFjZSgyKSAwIDA7XG5cdHBhZGRpbmc6IHNwYWNlKDMpIHNwYWNlKDQpO1xuXHRib3JkZXI6IDJweCBzb2xpZCBwYWxldHRlKGZlZWRiYWNrLCB3YXJuaW5nKTtcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYShwYWxldHRlKGZlZWRiYWNrLCB3YXJuaW5nKSwgMC4xKTtcblxuXHQmOmJlZm9yZXtcblx0XHRjb250ZW50OiBhdHRyKGRhdGEtZmVlZGJhY2spO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRtYXJnaW4tbGVmdDogc3BhY2UoLTIpO1xuXHRcdG1hcmdpbi1ib3R0b206IHNwYWNlKDEpO1xuXHR9XG5cblx0Ly8gTWFrZSBzdXJlIGRpdiBiZWNvbWVzIHZpc2libGUgd2hlbiBpdCBpcyBwb3B1bGF0ZWQgd2l0aCBpdGVtcyB2aWEgSlNcblx0Jjpub3QoOmVtcHR5KSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn0iLCIuYy1mdWxsLWltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpbmNsdWRlIG1xKCRtYXg6IDgwMCkge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBtcSgxMjAwKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTV2dztcbiAgfVxufVxuXG4uYy1mdWxsLWltYWdlX19pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcblxuICAuYy1jbGlwcGVkLWltYWdlX19zdmcge1xuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5jLWZ1bGwtaW1hZ2VfX3NoYXBlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICBsZWZ0OiAwO1xuICB0b3A6IDc1JTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgc3ZnLCBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59IiwiLmMtaGFtYnVyZ2VyIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGFsaWduLXNlbGY6IGNlbnRlcjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogc3BhY2UoNSk7XG5cdGhlaWdodDogc3BhY2UoNSk7XG5cdHBhZGRpbmc6IDA7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDgwMCk7XG5cdGJhY2tncm91bmQ6IG5vbmU7XG5cdGJvcmRlcjogbm9uZTtcblx0b3V0bGluZTogbm9uZTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdCY6Zm9jdXMge1xuXHRcdGJveC1zaGFkb3c6IDAgMCAzcHggMnB4IHBhbGV0dGUoZmVlZGJhY2ssIGZvY3VzKTtcblx0fVxuXG5cdCYgPiBzcGFuLFxuXHQmOmFmdGVyLFxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMjBweDtcblx0XHRyaWdodDogMjAlO1xuXHRcdGxlZnQ6IDIwJTtcblx0XHRoZWlnaHQ6IDNweDtcblx0XHRtYXJnaW4tdG9wOiAtMnB4O1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcblx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdFx0dHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG5cdFx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDE1MG1zO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcblx0XHR0cmFuc2l0aW9uLWRlbGF5OiAxMDBtcztcblx0fVxuXG5cdCY6YmVmb3JlIHtcblx0XHR0b3A6IDEycHg7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZVgoMC44KTtcblx0fVxuXG5cdCY6YWZ0ZXIge1xuXHRcdHRvcDogMjhweDtcblx0XHR0cmFuc2Zvcm06IHNjYWxlWCgwLjUpO1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0JiA+IHNwYW4ge1xuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZVgoMC44KTtcblx0XHR9XG5cdFx0JjphZnRlcixcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlWCgxKTtcblx0XHR9XG5cdH1cblxuXHQuaXMtb3ZlcmxheS1tZW51LWFjdGl2ZSAmIHtcblx0XHQmID4gc3BhbiB7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlWCgxKSAhaW1wb3J0YW50O1xuXHRcdH1cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoM3B4KSBzY2FsZVgoMSkgIWltcG9ydGFudDtcblx0XHRcdHRyYW5zaXRpb24tZGVsYXk6IDBtcztcblx0XHR9XG5cdFx0JjphZnRlciB7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCkgc2NhbGVYKDEpICFpbXBvcnRhbnQ7XG5cdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwbXM7XG5cdFx0fVxuXHR9XG59IiwiLmMtaGVhZGluZyB7XG5cdEBpbmNsdWRlIGZvbnQoeGwpO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA4MDApO1xufSIsIiRjLWlucHV0LWJvcmRlci1zaXplOiAycHg7XG5cblxuLmMtaW5wdXQge1xuXHRAaW5jbHVkZSBmb250LXNpemUocyk7XG5cdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMocyk7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiAoc3BhY2UoMSkgLSAkYy1pbnB1dC1ib3JkZXItc2l6ZSkgc3BhY2UoMik7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDgwMCk7XG5cdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG5cdGJvcmRlcjogJGMtaW5wdXQtYm9yZGVyLXNpemUgc29saWQgcGFsZXR0ZShuZXV0cmFsLCA5MDApO1xuXHRvdXRsaW5lOiBub25lO1xuXG5cdC5oYXMtZXJyb3IgJiB7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDdweCAtM3B4IHBhbGV0dGUoZmVlZGJhY2ssIHdhcm5pbmcpO1xuXHRcdGJvcmRlci1jb2xvcjogcGFsZXR0ZShmZWVkYmFjaywgd2FybmluZyk7XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRib3gtc2hhZG93OiAwIDAgN3B4IC0zcHggcGFsZXR0ZShmZWVkYmFjaywgZm9jdXMpO1xuXHRcdGJvcmRlci1jb2xvcjogcGFsZXR0ZShmZWVkYmFjaywgZm9jdXMpO1xuXHR9XG5cblx0QGF0LXJvb3QgdGV4dGFyZWEjeyZ9IHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwYWRkaW5nOiBzcGFjZSgyKTtcblx0XHRtaW4taGVpZ2h0OiBzcGFjZSgyMCkgLSBkb3VibGUoJGMtaW5wdXQtYm9yZGVyLXNpemUpO1xuXHRcdGxpbmUtaGVpZ2h0OiBzcGFjZSgzKTtcblx0XHRyZXNpemU6IHZlcnRpY2FsO1xuXHR9XG59IiwiLmMtbGFuZ3VhZ2Uge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cblxuLmMtbGFuZ3VhZ2VfX2J1dHRvbiB7XG5cdEBpbmNsdWRlIGZvbnQocyk7XG5cdEBpbmNsdWRlIGJvcmRlci1yYWRpdXM7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDEwMCU7XG5cdHBhZGRpbmc6IHNwYWNlKDEpO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgODAwKTtcblx0Ym9yZGVyOiBub25lO1xuXHRhcHBlYXJhbmNlOiBub25lO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDE1MG1zLCBib3gtc2hhZG93IDE1MG1zO1xuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdH1cbn1cblxuXG4uYy1sYW5ndWFnZV9faWNvbiB7XG5cdGZsZXg6IG5vbmU7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5cbi5jLWxhbmd1YWdlX19sYWJlbCB7XG5cdG1hcmdpbi1sZWZ0OiBzcGFjZSgwLjUpO1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cblxuXG4uYy1sYW5ndWFnZV9fZHJvcGRvd24ge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiAwO1xuXHR0b3A6IDEwMCU7XG5cdG1pbi13aWR0aDogMTAwJTtcblx0bWFyZ2luOiAwO1xuXHRvcGFjaXR5OiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKTtcblx0Ym94LXNoYWRvdzogMCAwIDEycHggMXB4IHJnYmEocGFsZXR0ZShuZXV0cmFsLCAxMDAwKSwgMC4xNSk7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zLCB0cmFuc2Zvcm0gMzAwbXM7XG5cblx0LmMtbGFuZ3VhZ2U6aG92ZXIgJiB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHRwb2ludGVyLWV2ZW50czogYWxsO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuXHR9XG59XG5cblxuLmMtbGFuZ3VhZ2VfX2l0ZW0ge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDApO1xuXG5cdCY6bnRoLWNoaWxkKGV2ZW4pIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDIwMCk7XG5cdH1cblxuXHQmOmZpcnN0LWNoaWxkIHtcblx0XHRib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKSBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKSAwIDA7XG5cdH1cblxuXHQmOmxhc3QtY2hpbGQge1xuXHRcdGJvcmRlci1yYWRpdXM6IDAgMCBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKSBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKTtcblx0fVxuXG5cdCY6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG5cdFx0Ym9yZGVyLXJhZGl1czogbWFwLWdldCgkYm9yZGVyLXJhZGl1cywgcyk7XG5cdH1cbn1cblxuXG4uYy1sYW5ndWFnZV9fbGluayB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwYWRkaW5nOiBzcGFjZSgwLjUpIHNwYWNlKDEpO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDkwMCk7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXM7XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA1MDApO1xuXHR9XG59XG5cbiIsIiRsYXJnZVF1b3RlQnA6IDc0MDtcblxuLmMtbGFyZ2UtcXVvdGUge1xuXG4gIEBpbmNsdWRlIG1xKCRsYXJnZVF1b3RlQnApIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5cbi5jLWxhcmdlLXF1b3RlX19pbWFnZSB7XG4gIG1heC13aWR0aDogMjgwcHg7XG4gIG1hcmdpbjogYXV0bztcblxuICBAaW5jbHVkZSBtcSgkbGFyZ2VRdW90ZUJwKSB7XG4gICAgbWF4LXdpZHRoOiAzNjBweDtcbiAgICB3aWR0aDogY29sdW1uKDIsIDYpO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC5jLWNsaXBwZWQtaW1hZ2VfX3N2ZyB7XG4gICAgY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA4MCk7XG4gIH1cbiAgLmMtY2xpcHBlZC1pbWFnZV9fYmFja2dyb3VuZCB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uYy1sYXJnZS1xdW90ZV9fbWFpbiB7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogJGxhcmdlUXVvdGVCcCkge1xuICAgIG1hcmdpbjogMzBweCBhdXRvIDA7XG4gICAgd2lkdGg6IGNvbHVtbigxMCwgMTIpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKCRsYXJnZVF1b3RlQnApIHtcbiAgICBtYXJnaW4tbGVmdDogY29sdW1uKDAuNSwgNik7XG4gICAgd2lkdGg6IGNvbHVtbigzLjUsIDYpO1xuICAgIG1heC13aWR0aDogNzAwcHg7XG4gIH1cbn1cblxuXG4uYy1sYXJnZS1xdW90ZV9fdGV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgfVxufVxuXG4uYy1sYXJnZS1xdW90ZV9fcXVvdGUtbWFyayB7XG4gIHdpZHRoOiAzNXB4O1xuICBtYXgtaGVpZ2h0OiAzMHB4O1xuXG4gIEBpbmNsdWRlIG1xKCRtYXg6ICRsYXJnZVF1b3RlQnApe1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbXEoJGxhcmdlUXVvdGVCcCkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtNjVweDtcbiAgICB0b3A6IC01cHg7XG4gIH1cbn1cblxuLmMtbGFyZ2UtcXVvdGVfX25hbWUge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogcGFsZXR0ZSh0ZXh0LCA0MDApO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4uYy1sYXJnZS1xdW90ZV9fZnVuY3Rpb24ge1xuICBAaW5jbHVkZSBmb250LXNpemUoMTYpO1xufSIsIiRjLW5hdi1saW5rLXBhZGRpbmc6IDRweDtcblxuXG4uYy1uYXYge1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHBhZGRpbmc6IDA7XG59XG5cblxuLmMtbmF2X19saXN0IHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0bWFyZ2luLWxlZnQ6IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cblxuLmMtbmF2X19pdGVtIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKGJhc2UpO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRtYXJnaW4tcmlnaHQ6IDIlO1xuXG5cdCY6bGFzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHR9XG59XG5cblxuLmMtbmF2X19saW5rIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nOiAkYy1uYXYtbGluay1wYWRkaW5nO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA4MDApO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRyYW5zaXRpb246IGNvbG9yIDE1MG1zIGxpbmVhcjtcblxuXHQmOjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAtMTtcblx0XHRsZWZ0OiAkYy1uYXYtbGluay1wYWRkaW5nO1xuXHRcdGJvdHRvbTogMXB4O1xuXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAje2RvdWJsZSgkYy1uYXYtbGluay1wYWRkaW5nKX0pO1xuXHRcdGhlaWdodDogMnB4O1xuXHRcdGJvcmRlci1yYWRpdXM6IDFweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZVgoMCk7XG5cdFx0dHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIHJpZ2h0O1xuXHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcyBjdWJpYy1iZXppZXIoMC44NiwgMCwgMC4wNywgMSk7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZVgoMSk7XG5cdFx0XHR0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcblx0XHR9XG5cdH1cblxuXHQvLyBXaGVuIGl0ZW0gaXMgYWN0aXZlXG5cdC5pcy1hY3RpdmUuYy1uYXZfX2l0ZW0gJiB7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMTAwMCk7XG5cblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZVgoMSk7XG5cdFx0XHR0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMTAwMCk7XG5cdFx0fVxuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZS1jb2xvcjogcGFsZXR0ZShmZWVkYmFjaywgZm9jdXMpO1xuXHR9XG59IiwiLypcbiAqIFBhZ2UgdGl0bGVcbiAqL1xuXG5cbi5jLXBhZ2UtdGl0bGUge1xuXHRAaW5jbHVkZSBoeXBoZW5hdGU7XG5cdHBhZGRpbmctdG9wOiBzcGFjZSg0KTtcblx0cGFkZGluZy1ib3R0b206IHNwYWNlKDQpO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA4MDApO1xufVxuXG5cbi5jLXBhZ2UtdGl0bGVfX2xlYWQge1xuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0bWFyZ2luLXRvcDogc3BhY2UoLTIpO1xuXHRcdG1hcmdpbi1ib3R0b206IHNwYWNlKDIpO1xuXHR9XG59XG5cblxuLmMtcGFnZS10aXRsZV9faGVhZGluZyB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSh4eGwpO1xuXHRsaW5lLWhlaWdodDogMS4zO1xufSIsIi5jLXBhZ2luYXRpb24ge1xuXHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKG0pO1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdG1hcmdpbi1sZWZ0OiAwOyAvLyByZXNldFxuXHRsaXN0LXN0eWxlOiBub25lOyAvLyByZXNldFxuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRib3JkZXI6IDFweCBzb2xpZCBwYWxldHRlKG5ldXRyYWwsIDkwMCk7XG59XG5cblxuLmMtcGFnaW5hdGlvbl9faXRlbSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXG5cdC8vIE9uIHNtYWxsIHNjcmVlbnMgaGlkZSBhbGwgaXRlbXMgYnV0IHRoZSBhcnJvd3MsIGZpcnN0IHBhZ2UsIGxhc3QgcGFnZSBhbmQgYWN0aXZlXG5cdEBpbmNsdWRlIG1xKCRtYXg6IG0pe1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cblx0XHQmOmZpcnN0LWNoaWxkLFxuXHRcdCY6bGFzdC1jaGlsZCxcblx0XHQmLmlzLWxhc3QtcGFnZSxcblx0XHQmLmlzLWFjdGl2ZSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdH1cblxuXHRcdCYuaXMtbGFzdC1wYWdlIHtcblx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdH1cblx0fVxuXG5cdCYgKyAmIHtcblx0XHRib3JkZXItbGVmdDogMXB4IHNvbGlkO1xuXHRcdGJvcmRlci1jb2xvcjogaW5oZXJpdDtcblx0fVxufVxuXG5cbi5jLXBhZ2luYXRpb25fX3RleHQsXG4uYy1wYWdpbmF0aW9uX19saW5rLFxuLmMtcGFnaW5hdGlvbl9fcHJldixcbi5jLXBhZ2luYXRpb25fX25leHR7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRtaW4td2lkdGg6IHNwYWNlKDYpO1xuXHRtaW4taGVpZ2h0OiBzcGFjZSg2KTtcblx0cGFkZGluZzogc3BhY2UoMSk7XG59XG5cblxuLmMtcGFnaW5hdGlvbl9fdGV4dCB7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDkwMCk7XG5cdG9wYWNpdHk6IDAuMzU7XG59XG5cblxuLmMtcGFnaW5hdGlvbl9fbGluayB7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDkwMCk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogY29sb3IgMjAwbXMsIGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMTAwMCk7XG5cdFx0YmFja2dyb3VuZDogcGFsZXR0ZShwcmltYXJ5LCA4MDApO1xuXHR9XG5cblx0LmlzLWFjdGl2ZSA+ICYge1xuXHRcdGJveC1zaGFkb3c6IGluc2V0IDAgMCAxMHB4IC01cHggcGFsZXR0ZShuZXV0cmFsLCA5MDApO1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdGNvbG9yOiB3aGl0ZTtcblx0XHRjdXJzb3I6IGRlZmF1bHQ7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9ncmFkaWVudC1iZy5zdmdcIik7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xuXHR9XG59XG5cblxuLmMtcGFnaW5hdGlvbl9fcHJldixcbi5jLXBhZ2luYXRpb25fX25leHQge1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDIwMG1zO1xuXHR0cmFuc2Zvcm06IHJvdGF0ZSgwLjc1dHVybik7XG5cblx0Ji5pcy1pbmFjdGl2ZSB7XG5cdFx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMzAwKTtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0fVxufVxuXG5cbi5jLXBhZ2luYXRpb25fX3ByZXYge1xuXHR0cmFuc2Zvcm06IHJvdGF0ZSgwLjI1dHVybik7XG59IiwiLmMtcHJvamVjdG9yIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdG1heC13aWR0aDogNTc2cHg7XG5cdG1hcmdpbjogMCBhdXRvO1xufVxuXG5cbi5jLXByb2plY3Rvcl9fZmlndXJlIHtcblx0ZGlzcGxheTogZ3JpZDtcblx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xufVxuXG5cbi5jLXByb2plY3Rvcl9fY2FwdGlvbiB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZShzKTtcblx0Z3JpZC1jb2x1bW46IDE7XG5cdGdyaWQtcm93OiAyO1xuXHR1c2VyLXNlbGVjdDogdGV4dDtcblx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDQwMCk7XG59XG5cblxuLmMtcHJvamVjdG9yX19waWN0dXJlIHtcblx0Z3JpZC1jb2x1bW46IDE7XG5cdGdyaWQtcm93OiAxO1xuXHRhbGlnbi1zZWxmOiBlbmQ7XG5cdGhlaWdodDogMTAwJTtcblx0ZGlzcGxheTogYmxvY2s7IC8vIE5lZWRlZCBmb3IgSUVcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDUwMG1zO1xuXG5cdCYuaXMtYWN0aXZlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG5cblxuLmMtcHJvamVjdG9yX19pbWcge1xuXHQvLyBtYWtlIHN1cmUgaXQgc3RyZXRjaGVzIHRoZSBjb250YWluZXJcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblx0b2JqZWN0LWZpdDogY292ZXI7IC8vIEZhbGxiYWNrIGZvciBJRSB2aWEgSlMgcG9seWZpbGxcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAyMDApO1xuXG5cdEBpbmNsdWRlIG1xKCRtYXg6IG0pIHtcblx0XHRtYXgtaGVpZ2h0OiA3OHZoOyAvLyBNYWtlIHN1cmUgaW1hZ2VzIGFyZSB2aXNpYmxlIGVudGlyZWx5IG9uIHNtYWxsIGRldmljZXMgaW4gbGFuZHNjYXBlKVxuXHR9XG59XG5cblxuLmMtcHJvamVjdG9yX19jb250cm9sIHtcblx0Z3JpZC1jb2x1bW46IDE7XG5cdGdyaWQtcm93OiAxO1xuXHRhbGlnbi1zZWxmOiBlbmQ7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDEpO1xuXHRtYXJnaW4tcmlnaHQ6IHNwYWNlKDEpO1xufSIsIi5jLXBvc3QtY2F0ZWdvcmllc19fbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAtMjBweDtcbn1cblxuLmMtcG9zdC1jYXRlZ29yaWVze1xuICBtYXJnaW46IC01cHg7XG59XG5cbi5jLXBvc3QtY2F0ZWdvcmllc19faXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiA1cHg7XG4gIHBhZGRpbmc6IHNwYWNlKDEpIHNwYWNlKDIpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogd2hpdGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyOiAycHggc29saWQgd2hpdGU7XG5cbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBAaW5jbHVkZSBmb250KDE0KTtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcblxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG5cbiAgJjpub3QoLmlzLWFjdGl2ZSk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEod2hpdGUsIDAuMTUpO1xuICB9XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogcGFsZXR0ZShwcmltYXJ5LCAzMDApO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvZ3JhZGllbnQtYmcuc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTtcbiAgfVxufVxuIiwiLmMtcmVmZXJlbmNlc19fdGl0bGUge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDQpO1xufVxuXG4uYy1yZWZlcmVuY2VzX19ibG9ja3Mge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0ZmxleC13cmFwOiB3cmFwO1xufVxuXG4uYy1yZWZlcmVuY2VzX19ibG9jayB7XG5cdG1hcmdpbjogMzBweDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuXHQmICsgJiB7XG5cdFx0bWFyZ2luLWxlZnQ6IGNvbHVtbigwLjUsIDEyKTtcblx0fVxuXG5cdGltZyB7XG5cdFx0d2lkdGg6IDEzMHB4O1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59IiwiLmMtcmVmZXJlbmNlLWNhcmRfX3RpdGxlIHtcblx0bWFyZ2luLWJvdHRvbTogNDBweDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYy1yZWZlcmVuY2UtY2FyZF9fb3ZlcnZpZXcge1xuXHRtYXJnaW4tdG9wOiA0MHB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5jLXJlZmVyZW5jZS1jYXJkX19ibG9ja3Mge1xuXHRAaW5jbHVkZSBtcSg2MDApIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRtYXJnaW46IC0yMHB4O1xuXHR9XG59XG5cbi5jLXJlZmVyZW5jZS1jYXJkX19pdGVtIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRib3gtc2hhZG93OiAwIDEwcHggMjBweCAtMTVweCByZ2JhKDEwNCwxNTMsMjUyLDAuNTApLCAwIDIwcHggNDBweCAtMTBweCByZ2JhKDEwNCwxNTMsMjUyLDAuMTApO1xuXG5cdEBpbmNsdWRlIG1xKCRtYXg6IDYwMCkge1xuXHRcdCYgKyAmIHtcblx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdFx0fVxuXHR9XG5cdEBpbmNsdWRlIG1xKDYwMCkge1xuXHRcdG1hcmdpbjogMjBweDtcblx0XHR3aWR0aDogY2FsYygoMTAwJSAtIDIwcHggKiA0KSAvIDIpO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEoMTIwMCkge1xuXHRcdHdpZHRoOiBjYWxjKCgxMDAlIC0gMjBweCAqIDYpIC8gMyk7XG5cdH1cbn1cblxuLmMtcmVmZXJlbmNlLWNhcmRfX2xpbmsge1xuXHRkaXNwbGF5OiBibG9jaztcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMTUwbXMgbGluZWFyO1xuXG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMTAwKTtcblxuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRib3JkZXItY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMzAwKTtcblx0XHR9XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lLWNvbG9yOiBwYWxldHRlKGZlZWRiYWNrLCBmb2N1cyk7XG5cdH1cbn1cblxuLmMtcmVmZXJlbmNlLWNhcmRfX2JvZHkge1xuXHRwYWRkaW5nOiAzNnB4IDI0cHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG5cblx0LmMtcmVmZXJlbmNlLWNhcmRfX2xpbms6aG92ZXIgJiB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuXHR9XG59XG5cbi5jLXJlZmVyZW5jZS1jYXJkX19pbWFnZSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDEwMCU7XG5cdHBhZGRpbmctYm90dG9tOiA2NSU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jLXJlZmVyZW5jZS1jYXJkX19iZy1pbWFnZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHR0cmFuc2Zvcm06IHNjYWxlM2QoMSwxLDEpO1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLWluLW91dDtcblxuXHQuYy1yZWZlcmVuY2UtY2FyZF9fbGluazpob3ZlciAmIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNCwgMS4wNCwgMSk7XG5cdH1cbn1cblxuLmMtcmVmZXJlbmNlLWNhcmRfX2FjdGlvbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG5cdEBpbmNsdWRlIGZvbnQoMTQpO1xuXHRjb2xvcjogcGFsZXR0ZSh0ZXh0LCA2MDApO1xufVxuXG4uYy1yZWZlcmVuY2UtY2FyZF9fcmVhZG1vcmUge1xuXHRtYXJnaW4tcmlnaHQ6IHNwYWNlKDEpO1xufSIsIi8qKlxuICogU2VsZWN0IHN0eWxlZCB3aXRob3V0IGV4dHJhIGNvbnRhaW5pbmcgZWxlbWVudHNcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogQmFzZWQgb24gdGhpcyBhcnRpY2xlOlxuICogaHR0cHM6Ly93d3cuZmlsYW1lbnRncm91cC5jb20vbGFiL3NlbGVjdC1jc3MuaHRtbFxuICovXG5cblxuJGMtc2VsZWN0LWJvcmRlci1zaXplOiAycHg7XG5cblxuLmMtc2VsZWN0IHtcblx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhzKTtcblx0QGluY2x1ZGUgZm9udC1zaXplKDE0LDE2KTtcblx0Zm9udC1mYW1pbHk6ICRmb250LXN5c3RlbTsgLy8gZm9yIGZpcmVmb3hcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmctdG9wOiAje3NwYWNlKDEpIC0gJGMtc2VsZWN0LWJvcmRlci1zaXplfTtcblx0cGFkZGluZy1ib3R0b206ICN7c3BhY2UoMSkgLSAkYy1zZWxlY3QtYm9yZGVyLXNpemV9O1xuXHRwYWRkaW5nLWxlZnQ6IHNwYWNlKDIpO1xuXHRwYWRkaW5nLXJpZ2h0OiBzcGFjZSg0KTtcblx0aGVpZ2h0OiBzcGFjZSg1KTtcblx0d2lkdGg6IDEwMCU7XG5cdC8vbWF4LXdpZHRoOiAxMDAlO1xuXHRtYXgtd2lkdGg6IDUwMHB4O1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRtYXJnaW46IDA7XG5cdGFwcGVhcmFuY2U6IG5vbmU7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDkwMCk7XG5cdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltZy9zZWxlY3QtYXJyb3cuc3ZnJyksIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHBhbGV0dGUobmV1dHJhbCwgMCkgMCUscGFsZXR0ZShuZXV0cmFsLCAwKSAxMDAlKTtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCwgcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxM3B4IHRvcCA1MCUsIDAgMDtcblx0YmFja2dyb3VuZC1zaXplOiAxMnB4IGF1dG8sIDEwMCU7XG5cdGJvcmRlcjogJGMtc2VsZWN0LWJvcmRlci1zaXplIHNvbGlkIHBhbGV0dGUobmV1dHJhbCwgMzAwKTtcblx0dHJhbnNpdGlvbjogYm9yZGVyIDE1MG1zIGxpbmVhcjtcblxuXHQmOmhvdmVyIHtcblx0XHRib3JkZXItY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgNTAwKTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDEwMCk7XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRib3JkZXItY29sb3I6IHBhbGV0dGUoZmVlZGJhY2ssIGZvY3VzKTtcblx0XHRib3gtc2hhZG93OiAwIDAgN3B4IC0zcHggcmdiYShwYWxldHRlKG5ldXRyYWwsIDkwMCksIDAuNyk7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDAgMXB4IC1tb3otbWFjLWZvY3VzcmluZztcblx0XHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA5MDApO1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdH1cblxuXHQmIG9wdGlvbiB7XG5cdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0fVxufVxuXG5cbi5jLXNlbGVjdDo6LW1zLWV4cGFuZCB7XG5cdGRpc3BsYXk6IG5vbmU7XG59IiwiJGMtc2VydmljZXBvaW50LWJwMTogNTQwO1xuXG5cbi5jLXNlcnZpY2Vwb2ludCB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0bWFyZ2luLXRvcDogc3BhY2UoLTIpO1xufVxuXG5cbi5jLXNlcnZpY2Vwb2ludF9faW1hZ2Uge1xuXHRAaW5jbHVkZSBtcSgkbWF4OiAkYy1zZXJ2aWNlcG9pbnQtYnAxKSB7XG5cdFx0d2lkdGg6IDk2cHg7XG5cdH1cblxuXHRtYXgtd2lkdGg6IDE3NnB4O1xuXHRmbGV4OiAwO1xuXHRtYXJnaW4tdG9wOiBzcGFjZSgyKTtcblx0bWFyZ2luLXJpZ2h0OiBzcGFjZSgyKTtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xufVxuXG5cbi5jLXNlcnZpY2Vwb2ludF9fY29udGVudCB7XG5cdEBpbmNsdWRlIGh5cGhlbmF0ZTtcblx0ZmxleC1ncm93OiAxO1xuXHRmbGV4LWJhc2lzOiAxNjVweDtcblx0bWFyZ2luLXRvcDogc3BhY2UoMik7XG59XG5cblxuLmMtc2VydmljZXBvaW50X19ib2R5IHtcblx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG59XG5cblxuLmMtc2VydmljZXBvaW50X19kYXRhIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKG0pO1xufVxuXG5cbi5jLXNlcnZpY2Vwb2ludF9fZm9vdGVyIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG59XG5cblxuLmMtc2VydmljZXBvaW50X19oZWFkaW5nIHtcblx0QGluY2x1ZGUgZm9udChiYXNlKTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgNTAwKTtcblx0Ym9yZGVyLXJhZGl1czogMTAwJTtcbn0iLCIuYy1zZXJ2aWNlLWJsb2Nrc19fdGl0bGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5jLXNlcnZpY2UtYmxvY2tfX2dyaWQge1xuXG4gIEBpbmNsdWRlIG1xKDcwMCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIG1hcmdpbjogMCBhdXRvIC00MHB4O1xuICB9XG5cbiAgcGFkZGluZy10b3A6IDI4cHg7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuXG4gIEBpbmNsdWRlIG1xKCRtYXg6IDkwMCkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxufVxuXG4uYy1zZXJ2aWNlLWJsb2NrIHtcbiAgcGFkZGluZzogNjBweCAzMHB4O1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBtaW4taGVpZ2h0OiA0NDRweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBib3gtc2hhZG93OiAwIC0xMHB4IDIwcHggLTE1cHggcmdiYSgxMzcsIDE1NSwgMTkxLCAwLjUpLCAwIDEwcHggMjBweCAtMTVweCByZ2JhKDEwNCwgMTUzLCAyNTIsIDAuNSksIDAgMjBweCA0MHB4IC0xMHB4IHJnYmEoMTA0LCAxNTMsIDI1MiwgMC4xKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzLCBib3gtc2hhZG93IDAuMnM7XG5cbiAgQGluY2x1ZGUgbXEoJG1heDogNzAwKSB7XG4gICAgbWF4LXdpZHRoOiAzNDBweDtcbiAgICBtYXJnaW46IDMwcHggYXV0bztcbiAgfVxuICBAaW5jbHVkZSBtcSg3MDApIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtIDIwcHggKiA0KSAvIDIpO1xuICAgIG1hcmdpbjogMjBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKDExODApIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHggKiA2KSAvIDMpO1xuICAgIG1heC13aWR0aDogMzQwcHg7XG4gIH1cblxuICBoMyB7XG4gICAgY29sb3I6IHBhbGV0dGUodGV4dCwgNjAwKTtcbiAgfVxuICBwIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gICAgYm94LXNoYWRvdzogMCAyMHB4IDQwcHggLTEwcHggcmdiYSgxMDQsIDE1MywgMjUyLCAwLjUpO1xuICB9XG59XG5cbi5jLXNlcnZpY2UtYmxvY2stLW5hcnJvdyB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICM2OTlCRkYgMCUsICMyRjZDRTYgMTAwJSk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgd2lkdGg6IDEyMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICAvL2ZsZXgtZ3JvdzogMTtcbiAgLy9mbGV4LXNocmluazogMTtcbiAgLy9tYXgtd2lkdGg6IDQwMHB4O1xuICAvL21pbi13aWR0aDogMTIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgLy9AaW5jbHVkZSBmb250KGJhc2UsICR3ZWlnaHQ6IDUwMCk7XG5cbiAgQGluY2x1ZGUgbXEobnVsbCwgMTYxMCkge1xuICAgIHdpZHRoOiAzNDBweDtcbiAgfVxuXG4gIC5jLWJ1dHRvbl9faWNvbiB7XG4gICAgd2lkdGg6IDE5cHg7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgfVxufVxuXG4uYy1zZXJ2aWNlLWJsb2NrX19pY29uIHtcbiAgd2lkdGg6IDEwMHB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5jLWJ1dHRvbi0tZ2hvc3Qge1xuICBjb2xvcjogcGFsZXR0ZShwcmltYXJ5KTtcbn1cblxuLmMtc2VydmljZS1ibG9ja19fc3VidGl0bGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoMTYsIDIxKTtcbiAgY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNDAwKTtcbn1cbiIsIiRzZXJ2aWNlVHlwZUJwIDogOTUwO1xuXG4uYy1zZXJ2aWNlLXR5cGVfX2dyaWQge1xuXG4gIEBpbmNsdWRlIG1xKCRtYXg6ICRzZXJ2aWNlVHlwZUJwKSB7XG4gICAgPiAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbXEoJHNlcnZpY2VUeXBlQnApIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IC0xNXB4IHJnYmEoMTA0LDE1MywyNTIsMC41MCksIDAgMjBweCA0MHB4IC0xMHB4IHJnYmEoMTA0LDE1MywyNTIsMC4xMCk7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcblxuICAgID4gKiB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cbiAgfVxufVxuXG4uYy1zZXJ2aWNlLXR5cGVfX2l0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogNzBweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblxuICBAaW5jbHVkZSBtcSgkbWF4OiAkc2VydmljZVR5cGVCcCkge1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IC0xNXB4IHJnYmEoMTA0LDE1MywyNTIsMC41MCksIDAgMjBweCA0MHB4IC0xMHB4IHJnYmEoMTA0LDE1MywyNTIsMC4xMCk7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBwYWRkaW5nOiA0MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgIEBpbmNsdWRlIG1xKDc2MCkge1xuICAgICAgbWF4LXdpZHRoOiA1ODBweDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtcSgkc2VydmljZVR5cGVCcCkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNzBweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDE0MHB4KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShwYWxldHRlKHByaW1hcnksIDQwMCksIDAuMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYy1zZXJ2aWNlLXR5cGVfX2ljb24ge1xuICB3aWR0aDogODVweDtcbiAgbWFyZ2luOiAwIGF1dG8gMzBweDtcbn1cblxuLmMtc2VydmljZS10eXBlX19jb250ZW50IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBmb250LXNpemUoMTYsIDI0KTtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICBoMiB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDI4KTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG5cbiAgcCB7XG4gICAgbWF4LXdpZHRoOiA0ODBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLmMtc2VydmljZS10eXBlX19idXR0b24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgLmMtYnV0dG9uLS1naG9zdCB7XG4gICAgY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgMzAwKVxuICB9XG59IiwiLmMtc2VydmljZS1oZWFkaW5nIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG5cdEBpbmNsdWRlIG1xKDU2MCwgMTQwMCkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHR9XG59XG5cbi5jLXNlcnZpY2UtaGVhZGluZ19faWNvbiB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHR3aWR0aDogNTJweDtcblx0b3BhY2l0eTogMC4zO1xuXG5cblx0QGluY2x1ZGUgbXEoNTYwKSB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKDU2MCwgMTQwMCkge1xuXHRcdG1hcmdpbi10b3A6IC01cHg7XG5cdFx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xuXHR9XG5cblx0QGluY2x1ZGUgbXEoMTQwMCkge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IC01cHg7XG5cdFx0bGVmdDogLTc2cHg7XG5cdH1cbn0iLCIuYy1zaXRlbWFwX19pdGVtIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKDIwKTtcblx0Y29sb3I6IHBhbGV0dGUodGV4dCwgNDAwKTtcbn1cblxuLmMtc2l0ZW1hcF9fbGluayB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwYWRkaW5nOiBzcGFjZSgwLjUpIDA7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogcGFsZXR0ZSh0ZXh0LCA2MDApO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHR9XG59IiwiLypcbiAqIFNraXAgTGlua1xuICovXG5cbi5jLXNraXAtbGluayB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZShzKTtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IC0xMDB2aDtcblx0bGVmdDogNTAlO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDUwMCk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lLWNvbG9yOiBwYWxldHRlKGZlZWRiYWNrLCBmb2N1cyk7XG5cdFx0b3V0bGluZS1vZmZzZXQ6IDJweDtcblx0XHR0b3A6IDVweDsgLyogTm93IHRoZSBsaW5rIHdpbGwgYXBwZWFyICovXG5cdH1cbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IFNsaWRlIGluZGljYXRvclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRjLXNsaWRlLWluZGljYXRvcjogKFxuXHQnZG90LWNvbG9yJzpcdFx0XHRcdHBhbGV0dGUobmV1dHJhbCwgMCksXG5cdCdkb3QtY29sb3ItYWN0aXZlJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDEwMDApLFxuXHQnZG90LXJpbmctY29sb3ItYWN0aXZlJzpcdHBhbGV0dGUobmV1dHJhbCwgMCksXG5cdCdkb3Qtc2l6ZSc6XHRcdFx0XHRcdDhweCxcblx0J2RvdC1zaXplLWFjdGl2ZSc6XHRcdFx0NnB4LFxuXHQnZG90LXJpbmctc2l6ZS1hY3RpdmUnOlx0XHQxMnB4LFxuXHQnZG90LXNpemUtdGFyZ2V0Ym94JzpcdFx0MzBweCxcblx0J2RvdC1pcy1yb3VuZGVkJzpcdFx0XHR0cnVlLFxuXHQnYnV0dG9uLWljb24tY29sb3InOlx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQnYnV0dG9uLWJnLWNvbG9yJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDUwMCksXG5cdCdidXR0b24tYmctY29sb3ItaG92ZXInOlx0c2NhbGVfY29sb3IocGFsZXR0ZShuZXV0cmFsLCA1MDApLCAkbGlnaHRuZXNzOiAtMTAlKSxcblx0J2J1dHRvbi1zaXplJzpcdFx0XHRcdDQwcHgsXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uYy1zbGlkZS1pbmRpY2F0b3Ige1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5cbi8vIERvdHMgY2FuIGJlIHVzZWQgaW5zdGVhZCBvZiBhcnJvdyBidXR0b25zXG4vLyBZb3UgaGF2ZSB0byBzZXQgdGhlICRpbWFnZU5hdmlnYXRpb25NZXRob2QgdG8gWzBdIG9uIHRoZSBpbWFnZSBjb21wb25lbnRcbi5jLXNsaWRlLWluZGljYXRvcl9fZG90IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHdpZHRoOiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1zaXplLXRhcmdldGJveCcpO1xuXHRoZWlnaHQ6IG1hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnZG90LXNpemUtdGFyZ2V0Ym94Jyk7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRib3JkZXI6IG5vbmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciwgb3BhY2l0eTtcblx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZTogbm9uZTtcblx0fVxuXG5cdCY6aG92ZXI6bm90KC5pcy1hY3RpdmUpLFxuXHQmOmZvY3VzOm5vdCguaXMtYWN0aXZlKSB7XG5cdFx0b3BhY2l0eTogMC41O1xuXHR9XG5cblx0JjpiZWZvcmUsXG5cdCY6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xuXHRcdHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgYmFja2dyb3VuZC1jb2xvciwgb3BhY2l0eTtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAzMDBtcztcblx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG5cdFx0QGlmIChtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1pcy1yb3VuZGVkJykgPT0gdHJ1ZSkge1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMTAwJTtcblx0XHR9XG5cdH1cblxuXHQmOmJlZm9yZSB7XG5cdFx0JG9mZnNldDogY2FsYygoI3ttYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1zaXplLXRhcmdldGJveCcpfSAtICN7bWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdkb3Qtc2l6ZScpfSkgLyAyKTtcblx0XHR0b3A6ICRvZmZzZXQ7XG5cdFx0cmlnaHQ6ICRvZmZzZXQ7XG5cdFx0Ym90dG9tOiAkb2Zmc2V0O1xuXHRcdGxlZnQ6ICRvZmZzZXQ7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdkb3QtY29sb3InKTtcblx0fVxuXG5cdCY6YWZ0ZXIge1xuXHRcdCRvZmZzZXQ6IGNhbGMoKCN7bWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdkb3Qtc2l6ZS10YXJnZXRib3gnKX0gLSAje21hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnZG90LXJpbmctc2l6ZS1hY3RpdmUnKX0pIC8gMik7XG5cdFx0dG9wOiAkb2Zmc2V0O1xuXHRcdHJpZ2h0OiAkb2Zmc2V0O1xuXHRcdGJvdHRvbTogJG9mZnNldDtcblx0XHRsZWZ0OiAkb2Zmc2V0O1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkIG1hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnZG90LXJpbmctY29sb3ItYWN0aXZlJyk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjQpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblxuXHQmLmlzLWFjdGl2ZSB7XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdkb3QtY29sb3ItYWN0aXZlJyk7XG5cdFx0XHRib3JkZXItY29sb3I6IHJnYmEobWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdkb3QtcmluZy1jb2xvci1hY3RpdmUnKSwgMC45KTtcblx0XHRcdHRyYW5zZm9ybTogc2NhbGUoc3RyaXAtdW5pdChtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1zaXplLWFjdGl2ZScpKSAvIHN0cmlwLXVuaXQobWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdkb3Qtc2l6ZScpKSk7XG5cdFx0fVxuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRvcGFjaXR5OiAwLjk7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXHRcdH1cblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdG9wYWNpdHk6IDEgIWltcG9ydGFudDtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdC8vYmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA1MDApO1xuXHRcdFx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IGJsYWNrLCAwIDAgMTBweCAxcHggd2hpdGU7XG5cdFx0fVxuXG5cdFx0JjphZnRlciB7XG5cdFx0XHQvL2JhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgNTAwKTtcblx0XHRcdGJveC1zaGFkb3c6IDAgMCAwIDJweCBibGFjaywgMCAwIDEwcHggMXB4IHdoaXRlO1xuXHRcdH1cblx0fVxufVxuXG5cbi8vIEFycm93IGJ1dHRvbnMgY2FuIGJlIHVzZWQgaW5zdGVhZCBvZiBkb3RzXG4vLyBZb3UgaGF2ZSB0byBzZXQgdGhlICRpbWFnZU5hdmlnYXRpb25NZXRob2QgdG8gWzFdIG9uIHRoZSBpbWFnZSBjb21wb25lbnRcbi5jLXNsaWRlLWluZGljYXRvcl9fYnV0dG9uIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRib3JkZXI6IG5vbmU7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnYnV0dG9uLWJnLWNvbG9yJyk7XG5cdGNvbG9yOiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2J1dHRvbi1pY29uLWNvbG9yJyk7XG5cdGhlaWdodDogbWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdidXR0b24tc2l6ZScpO1xuXHR3aWR0aDogbWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdidXR0b24tc2l6ZScpO1xuXG5cdCYgKyAmIHtcblx0XHRtYXJnaW4tbGVmdDogOHB4O1xuXHR9XG5cblx0JlthcmlhLWxhYmVsPSdwcmV2aW91cyddID4gc3ZnIHtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG5cdH1cblxuXHQmW2FyaWEtbGFiZWw9J25leHQnXSA+IHN2ZyB7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcblx0fVxuXG5cdCY6aG92ZXIge1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2J1dHRvbi1iZy1jb2xvci1ob3ZlcicpO1xuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZTogbm9uZTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2J1dHRvbi1iZy1jb2xvci1ob3ZlcicpO1xuXHR9XG59IiwiLmMtc3VibmF2IHtcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuXHRwYWRkaW5nOiBjb2x1bW4oMSk7XG59XG5cblxuLmMtc3VibmF2X19oZWFkZXIge1xuXHRtYXJnaW46IDA7XG59XG5cblxuLmMtc3VibmF2X19saXN0IHtcblx0bWFyZ2luLXRvcDogc3BhY2UoNSk7XG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblx0bWFyZ2luLWxlZnQ6IDA7XG59XG5cblxuLmMtc3VibmF2X19saW5rIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRwYWRkaW5nOiBzcGFjZSgxKSAwO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA1MDApO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogY29sb3IgMjUwbXM7XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgOTAwKTtcblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtY29sb3I6IHBhbGV0dGUoZmVlZGJhY2ssIGZvY3VzKTtcblx0fVxuXG5cdCY6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgcGFsZXR0ZShuZXV0cmFsLCAzMDApO1xuXHR9XG59XG5cblxuLmMtc3VibmF2X19pY29uIHtcblx0b3BhY2l0eTogMDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0bWFyZ2luLWxlZnQ6IHNwYWNlKDIpO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAzMDApO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoI3tzcGFjZSgtMil9KTtcblx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2Utb3V0O1xuXG5cdC5jLXN1Ym5hdl9fbGluazpob3ZlciAmIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA5MDApO1xuXHR9XG59XG5cblxuLy8gQWN0aXZlIHN0YXRlIG9mIHRoZSBzdWJuYXYgaXRlbVxuLmMtc3VibmF2X19pdGVtLmlzLWFjdGl2ZSB7XG5cdC5jLXN1Ym5hdl9fbGluayB7XG5cdFx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMTAwMCk7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDkwMCk7XG5cdFx0XHRib3JkZXItd2lkdGg6IDJweDtcblx0XHR9XG5cdH1cblxuXHQuYy1zdWJuYXZfX2ljb24ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cbn0iLCIuYy10ZXh0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIC8vbWF4LXdpZHRoOiA4MDBweDtcbiAgbWFyZ2luOiBhdXRvO1xufSIsIi5jLXRleHQtYnV0dG9uIHtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA5MDApO1xuXHRwYWRkaW5nOiAwOyAvKiAyICovXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAyICovXG5cdGJvcmRlcjogbm9uZTsgLyogMiAqL1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcbiAgXHRsZXR0ZXItc3BhY2luZzogMS41cHg7XG5cdHRyYW5zaXRpb246IGNvbG9yIDMwMG1zO1xuXG5cdCY6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuXHRcdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDEwMDApXG5cdH1cblx0JjpkaXNhYmxlZCB7XG5cdFx0b3BhY2l0eTogMC41O1xuXHRcdGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cdH1cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZS1jb2xvcjogcGFsZXR0ZShmZWVkYmFjaywgZm9jdXMpO1xuXHR9XG59XG5cblxuLmMtdGV4dC1idXR0b25fX3RleHQge1xuXHRAaW5jbHVkZSBmb250LXNpemUoYmFzZSk7XG59XG5cblxuLmMtdGV4dC1idXR0b25fX2ljb24ge1xuXHRkaXNwbGF5OiBub25lOyAvLyBCeSBkZWZhdWx0IGljb24gaXMgaGlkZGVuXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWFyZ2luLWxlZnQ6IHNwYWNlKDEpO1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXM7XG5cblx0LmMtdGV4dC1idXR0b246aG92ZXI6bm90KDpkaXNhYmxlZCkgJiB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCk7XG5cdH1cblxuXHQuYy10ZXh0LWJ1dHRvbi0taWNvbiAme1xuXHRcdGRpc3BsYXk6IGJsb2NrOyAvLyBTaG93IHdoZW4gaGFzIGljb24gbW9kaWZpZXJcblx0fVxufVxuXG5cbi8vIENoYW5nZSBkaXJlY3Rpb24gb2YgaWNvbiAoYXJyb3cpXG4uYy10ZXh0LWJ1dHRvbi0taXMtcmV2ZXJzZWQge1xuXHQuYy10ZXh0LWJ1dHRvbl9fdGV4dCB7IG9yZGVyOiAyO1x0fVxuXHQuYy10ZXh0LWJ1dHRvbl9faWNvbiB7XG5cdFx0b3JkZXI6IDE7XG5cdFx0dG9wOiAxcHg7XG5cdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0bWFyZ2luLXJpZ2h0OiBzcGFjZSgxKTtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgwLjV0dXJuKTtcblx0fVxuXHQmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIC5jLXRleHQtYnV0dG9uX19pY29uIHtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgwLjV0dXJuKSB0cmFuc2xhdGVYKDNweCk7XG5cdH1cbn1cblxuLmMtdGV4dC1idXR0b24tLW9uLWRhcmsge1xuXHRjb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDUwMCk7XG5cblx0Jjpob3Zlcjpub3QoOmRpc2FibGVkKSB7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHR9XG59IiwiLmMtdHJhZGVtYXJrIHtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogY29sb3IgMTUwbXMgbGluZWFyO1xufVxuXG5cbi5jLXRyYWRlbWFya19fdGV4dCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdG1hcmdpbi1yaWdodDogN3B4O1xufVxuXG5cbi5jLXRyYWRlbWFya19fbG92ZSB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltZy9oZWFydC1zcHJpdGUucG5nKTtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMXB4O1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXNpemU6IDI5MDAlO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHdpZHRoOiBzcGFjZSg3KTtcblx0aGVpZ2h0OiBzcGFjZSg3KTtcblx0bWFyZ2luOiAwIHNwYWNlKC0xLjUpO1xufVxuXG5cbi8vIE9uIGhvdmVyIGRvIHNvbWUgYW5pbWF0aW5nIDstKVxuLmMtdHJhZGVtYXJrOmhvdmVyIHtcblx0Y29sb3I6ICNFMjI2NEQ7IC8vIHNhbWUgY29sb3IgYXMgaGVhcnQgaW1hZ2VcblxuXHQmIC5rb21tYS1lbWJsZW0ge1xuXHRcdHRyYW5zZm9ybS1vcmlnaW46IDEycHggMTJweDtcblx0XHRhbmltYXRpb246IGxvZ28tc3BpbiAxLjhzIGxpbmVhciBpbmZpbml0ZTtcblx0fVxuXG5cdCYgLmMtdHJhZGVtYXJrX19sb3ZlIHtcblx0XHRhbmltYXRpb246IGhlYXJ0QW5pbSAxLjFzIHN0ZXBzKDI4KSBmb3J3YXJkcztcblx0fVxufVxuXG5cbkBrZXlmcmFtZXMgaGVhcnRBbmltIHtcblx0ZnJvbSB7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAxcHg7XG5cdH1cblx0dG8ge1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDFweDtcblx0fVxufVxuXG5cbkBrZXlmcmFtZXMgbG9nby1zcGluIHtcblx0ZnJvbSB7IHRyYW5zZm9ybTogcm90YXRlKDApOyB9XG5cdHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoLTF0dXJuKTsgfVxufSIsIi5jLXZpZGVvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyAvLyBBc3BlY3QgUmF0aW86IDE2OjlcbiAgYmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAyMDApO1xufVxuXG5cbi5jLXZpZGVvX19pZnJhbWUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn0iLCIvKiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIE9yZ2FuaXNtc1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbkBpbXBvcnQgXCJvcmdhbmlzbXMuYWR2aWNlQ29udGVudFwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5ibG9nXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmNhbGxvdXRCYXJcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuY2FyZEdyaWRcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuY29udGFjdENvbnRlbnRcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuY29va2llQmFyXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmRvdWJsZUltYWdlXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmRvdWJsZVRleHRcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuZm9vdGVyXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmhlYWRlclwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5oZXJvXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLm1hcFwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5vdmVybGF5TWVudVwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5wYXJ0bmVyc1wiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5zdWJmb290ZXJcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMudGFic1wiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy50ZXh0SW1hZ2VcIjsiLCIuby1hZHZpY2UtY29udGVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGQUZDRkY7XG4gIG1hcmdpbi10b3A6IC02MHB4O1xuICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5sLWdyaWQtY29udGVudCB7XG4gICAgQGluY2x1ZGUgbXEoNzAwKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB9XG4gIH1cblxuICAubGVmdCB7XG4gICAgd2lkdGg6IDEyMHB4O1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuXG4gICAgQGluY2x1ZGUgbXEobnVsbCwgNzAwKSB7XG4gICAgICBtYXJnaW46IDAgYXV0byAzMHB4IGF1dG87XG4gICAgfVxuXG4gICAgLnBob25lLWhvbGRlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxNTAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGVmdDogLTI1JTtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICBoNCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgfVxuICAgIH1cblxuXG4gIH1cbiAgLnJpZ2h0IHtcbiAgICBtYXJnaW4tbGVmdDogY29sdW1uKDAuNSwgNi41KTtcblxuICAgIEBpbmNsdWRlIG1xKG51bGwsIDcwMCkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLnMtdGV4dCB7XG4gICAgICBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICB9XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIH1cblxuICAgICNhZHZpY2VGb3JtIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbG9yOiBwYWxldHRlKHRleHQsIDQwMCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICB9XG5cblxuXG4gICAgICAuY2xpZW50VHlwZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IGNvbHVtbigyLCA1KTtcbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAucHJpdmF0ZSwgLnByb2Zlc3Npb25hbCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgYm9yZGVyOiAycHggc29saWQgd2hpdGU7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggM3B4IDAgcmdiYSgwLDAsMCwwLjUpLCAycHggMnB4IDE1cHggMCByZ2JhKDE5OCwyMTQsMjI3LDAuNSk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgcGFkZGluZzogMzBweCAwO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udCgxOCwgMjIpO1xuICAgICAgICAgIGNvbG9yOiBwYWxldHRlKHRleHQsIDQwMCk7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoIzQ0QTFGNCwgMC4yKTtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICM0NEExRjQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5wcm9mZXNzaW9uYWwge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0NXB4O1xuICAgICAgICB9XG4gICAgICAgIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBkaXYge1xuICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICM0NEExRjQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuXG4gICAgICBpbnB1dFt0eXBlPXRleHRdLCB0ZXh0YXJlYSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDE1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgQGluY2x1ZGUgZm9udCgxOCwgMjIpO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzZFQjhGRjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBjb2xvcjogcGFsZXR0ZSh0ZXh0LCA0MDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0ZXh0YXJlYSB7XG4gICAgICAgIHJlc2l6ZTogbm9uZTtcbiAgICAgICAgbWluLWhlaWdodDogMTAwcHg7XG4gICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgIH1cbiAgICAgIC5zdWJtaXQge1xuICAgICAgICBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nOiAxM3B4IDM1cHggMTVweCAzNXB4O1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBAaW5jbHVkZSBmb250KDE4LCAyMiwgNTAwKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDQwMHB4O1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICM2OTlCRkYgMCUsICMyRjZDRTYgMTAwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmVycm9yLW1lc3NhZ2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBjb2xvcjogaW5kaWFucmVkO1xuICAgICAgfVxuXG4gICAgfVxuICB9XG59IiwiLm8tYmxvZ19fZ3JpZCB7XG5cdEBpbmNsdWRlIG1xKDYwMCkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRtYXJnaW46IC0yMHB4O1xuXHR9XG59XG5cbi5vLWJsb2dfX2RpdmlkZXIge1xuXHRib3JkZXI6IG5vbmU7XG5cdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCByZ2JhKHBhbGV0dGUodGV4dCwgNDAwKSwgMC4yKTtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoOCk7XG59XG5cbi5vLWJsb2dfX290aGVycyB7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDYpO1xuXG5cdEBpbmNsdWRlIG1xKCRtYXg6IDYwMCkge1xuXHRcdD4gKiArICoge1xuXHRcdFx0bWFyZ2luLXRvcDogc3BhY2UoMik7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgbXEoNjAwKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdH1cbn1cblxuLm8tYmxvZ19faGVhZGluZyB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZShsKTtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0Y29sb3I6IHBhbGV0dGUodGV4dCwgNjAwKTtcbn1cblxuLm8tYmxvZ19fYXJ0aWNsZSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Ym94LXNoYWRvdzogMCAxMHB4IDIwcHggLTE1cHggcmdiYSgxMDQsMTUzLDI1MiwwLjUwKSwgMCAyMHB4IDQwcHggLTEwcHggcmdiYSgxMDQsMTUzLDI1MiwwLjEwKTtcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiA2MDApIHtcblx0XHQmICsgJiB7XG5cdFx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRcdH1cblx0fVxuXHRAaW5jbHVkZSBtcSg2MDApIHtcblx0XHRtYXJnaW46IDIwcHg7XG5cdFx0d2lkdGg6IGNhbGMoKDEwMCUgLSAyMHB4ICogNCkgLyAyKTtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKDEyMDApIHtcblx0XHR3aWR0aDogY2FsYygoMTAwJSAtIDIwcHggKiA2KSAvIDMpO1xuXHR9XG59XG5cbi5vLWJsb2dfX2xpbmsge1xuXHRkaXNwbGF5OiBibG9jaztcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMTUwbXMgbGluZWFyO1xuXG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMTAwKTtcblxuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRib3JkZXItY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMzAwKTtcblx0XHR9XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lLWNvbG9yOiBwYWxldHRlKGZlZWRiYWNrLCBmb2N1cyk7XG5cdH1cbn1cblxuLm8tYmxvZ19fYm9keSB7XG5cdHBhZGRpbmc6IDM2cHggMjRweDtcblx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycztcblxuXHQuby1ibG9nX19saW5rOmhvdmVyICYge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMTAwKTtcblx0fVxufVxuXG4uby1ibG9nX19pbWFnZSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDEwMCU7XG5cdHBhZGRpbmctYm90dG9tOiA2NSU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5vLWJsb2dfX2JnLWltYWdlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHRyYW5zZm9ybTogc2NhbGUzZCgxLDEsMSk7XG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0O1xuXG5cdC5vLWJsb2dfX2xpbms6aG92ZXIgJiB7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZTNkKDEuMDQsIDEuMDQsIDEpO1xuXHR9XG59XG5cbi8vIEJvZHkgY29udGVudDpcbi5vLWJsb2dfX2ludHJvIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoMik7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDIpO1xuXHRAaW5jbHVkZSBmb250LXNpemUoMTYpO1xufVxuXG4uby1ibG9nX190aW1lc3RhbXAge1xuXHRkaXNwbGF5OiBibG9jaztcblx0bWFyZ2luLXRvcDogMnB4O1xuXHQvL2ZvbnQtd2VpZ2h0OiA1MDA7XG5cdEBpbmNsdWRlIGZvbnQoMTQpO1xuXHRjb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA0MDApO1xufVxuXG4uby1ibG9nX19hY3Rpb24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDEpO1xuXHRAaW5jbHVkZSBmb250KDE0KTtcblx0Y29sb3I6IHBhbGV0dGUodGV4dCwgNjAwKTtcbn1cblxuLm8tYmxvZ19fcmVhZG1vcmUge1xuXHRtYXJnaW4tcmlnaHQ6IHNwYWNlKDEpO1xufVxuXG4uby1ibG9nX19mb290ZXIge1xuXHRtYXJnaW4tdG9wOiBzcGFjZSg4KTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufSIsIi5vLWNhbGxvdXQtYmFyIHtcblx0QGluY2x1ZGUgaHlwaGVuYXRlO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA4MDApO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDEwMCk7XG4gIFx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5cbi5vLWNhbGxvdXQtYmFyX19tYWluIHtcblx0QGluY2x1ZGUgY29udGFpbjtcblx0QGluY2x1ZGUgdnNwYWNpbmcoXG5cdFx0J3BhZGRpbmctdG9wJyAxLFxuXHRcdCdwYWRkaW5nLWJvdHRvbScgMVxuXHQpO1xuXG5cdC8vIFZlcnRpY2FsIHNwYWNpbmcgZm9yIGVsZW1lbnRzIHRoYXQgcHJvY2VlZCBhbm90aGVyIGVsZW1lbnRcblx0JiA+ICogKyAqIHtcblx0XHRAaW5jbHVkZSB2c3BhY2luZyhcblx0XHRcdCdtYXJnaW4tdG9wJyAwLjVcblx0XHQpO1xuXHR9XG59XG5cblxuLm8tY2FsbG91dC1iYXJfX2hlYWRpbmcge1xuXHRAaW5jbHVkZSBmb250LXNpemUoeGwpO1xufSIsIi8qIEluIHRoZSBbJG8tY2FyZC1ncmlkXSBtYXAgd2UgZGVmaW5lIHNvbWUgc2V0dGluZ3M6XG4gKlxuICogJ2NvbHVtbnMnLmtleSBcdD1cdG51bWJlciBvZiBpdGVtcyBpbiBhIHJvd1xuICogJ2NvbHVtbnMnLnZhbHVlIFx0PSBcdGJyZWFrcG9pbnQgc2l6ZSBmcm9tIHdoaWNoIHdlIHdhbnQgdGhhdCBudW1iZXIgb2YgaXRlbXNcbiAqL1xuXG5cbiRvLWNhcmQtZ3JpZDogKFxuXHQnZ2FwJyA6IHNwYWNlKDIpLFxuXHQnY29sdW1ucyc6IChcblx0XHQyOiA3NDAsXG5cdFx0MzogMTA2MCxcblx0KSxcbik7XG5cbi8vIEdldCB2YWx1ZXMgZnJvbSB0aGUgbWFwIGFuZCBwbGFjZSB0aGVtIGluIGFuIGVhc3kgdG8gYWNjZXNzIHZhcmlhYmxlXG4kby1jYXJkLWdyaWQtY29sdW1uczogXHRcdFx0XHRtYXAtZ2V0KCRvLWNhcmQtZ3JpZCwgJ2NvbHVtbnMnKTsgLy8gZ2V0IHRoZSAnY29sdW1ucycgbGlzdFxuJG8tY2FyZC1ncmlkLWNvbHVtbi1rZXlzOiBcdFx0XHRtYXAta2V5cygkby1jYXJkLWdyaWQtY29sdW1ucyk7IC8vIGdldCBhIGxpc3Qgb2YgdGhlIGtleXMgZnJvbSB0aGUgJ2NvbHVtbnMnXG4kby1jYXJkLWdyaWQtY29sdW1uLXNtYWxsZXN0LWJwOiBcdG1hcC1nZXQoJG8tY2FyZC1ncmlkLWNvbHVtbnMsIG50aCgkby1jYXJkLWdyaWQtY29sdW1uLWtleXMsIDEpKTsgLy8gZ2V0IGJyZWFrcG9pbnQgdmFsdWUgb2YgdGhlIGZpcnN0IGNvbHVtblxuXG5cbkBpbmNsdWRlIG1xKCRvLWNhcmQtZ3JpZC1jb2x1bW4tc21hbGxlc3QtYnApIHtcblx0Lm8tY2FyZC1ncmlkX19tYWluIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRtYXJnaW46IG1hcC1nZXQoJG8tY2FyZC1ncmlkLCAnZ2FwJykgKiAtMTtcblx0fVxufVxuXG5cbi5vLWNhcmQtZ3JpZF9faXRlbSB7XG5cdG1heC13aWR0aDogNDQ0cHg7IC8vIGNvbnN0cmFpbiB0aGUgd2lkdGggb2YgdGhlIGVsZW1lbnQgaW5zaWRlXG5cdG1hcmdpbjogbWFwLWdldCgkby1jYXJkLWdyaWQsICdnYXAnKSBhdXRvO1xuXG5cblx0Ly8gTG9vcCB0aHJvdWdoIGFsbCBkZWZpbmVkIGNvbHVtbnNcblx0QGVhY2ggJGNvdW50LCAkYnJlYWtwb2ludCBpbiAkby1jYXJkLWdyaWQtY29sdW1ucyB7XG5cdFx0JGk6IGluZGV4KCRvLWNhcmQtZ3JpZC1jb2x1bW5zLCAoJGNvdW50ICRicmVha3BvaW50KSk7XG5cblx0XHRAaW5jbHVkZSBtcShtYXAtZ2V0KCRvLWNhcmQtZ3JpZC1jb2x1bW5zLCAkY291bnQpKSB7XG5cdFx0XHRAaWYoJGkgPT0gMSkge1xuXHRcdFx0XHQvLyBPbmx5IHNldCB0aGVzZSB2YWx1ZXMgZm9yIHRoZSBmaXJzdCBtZWRpYSBxdWVyeSwgbm8gbmVlZCB0byBzZXQgdGhlbSBldmVyeSB0aW1lXG5cdFx0XHRcdGZsZXg6IG5vbmU7XG5cdFx0XHRcdG1hcmdpbjogbWFwLWdldCgkby1jYXJkLWdyaWQsICdnYXAnKTtcblx0XHRcdH1cblxuXHRcdFx0Ly8gaW4gY2FzZSBvZiBhIGJ1ZyBpbiBJRSB3ZSBuZWVkIHRvIHNwZWNpZnkgZmxleC1iYXNpcyBsb25naGFuZCBwcm9wZXJ0eTogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLThcblx0XHRcdGZsZXgtYmFzaXM6IGNhbGMoI3twZXJjZW50YWdlKDEgLyAkY291bnQpfSAtICgje21hcC1nZXQoJG8tY2FyZC1ncmlkLCAnZ2FwJyl9ICogMikpO1xuXHRcdH1cblx0fVxufSIsIi5vLWNvbnRhY3QtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTAwO1xuICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG5cbiAgQGluY2x1ZGUgbXEobnVsbCwgOTAwKSB7XG4gICAgcGFkZGluZy1ib3R0b206IDkwcHg7XG4gIH1cblxuICAubC1iaXNlY3Rpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBtcSg5MDApIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgfVxuICB9XG5cbiAgLmwtYmlzZWN0aW9uX19pdGVtIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBtcSg5MDApIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuICB9XG5cbiAgI2NvbnRhY3RGb3JtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIHdpZHRoOiBjb2x1bW4oNSwgNik7XG4gICAgcGFkZGluZzogNTBweCA4MHB4O1xuICAgIG1pbi1oZWlnaHQ6IDY5MHB4O1xuICAgIGJveC1zaGFkb3c6IDZweCA2cHggMjVweCAwIHJnYmEoMTA0LCAxNTMsIDI1MiwgMC4xKTtcblxuICAgIEBpbmNsdWRlIG1xKG51bGwsIDEyODApIHtcbiAgICAgIHdpZHRoOiBjb2x1bW4oNS41LCA2KTtcbiAgICAgIHBhZGRpbmc6IDUwcHggNDBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcShudWxsLCA5MDApIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogMTIwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbXEobnVsbCwgNjEyKSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMDBweDtcbiAgICB9XG5cbiAgICAuZm9ybS1lbGVtZW50IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiBwYWxldHRlKHRleHQsIDQwMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT10ZXh0XSxpbnB1dFt0eXBlPWVtYWlsXSwgdGV4dGFyZWEge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAxMnB4IDE1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgIEBpbmNsdWRlIGZvbnQoMTgsIDIyKTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNkVCOEZGO1xuICAgICAgfVxuXG4gICAgICAmLmVycm9yIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNGOTdBNEQ7XG4gICAgICB9XG5cbiAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHBhbGV0dGUodGV4dCwgNDAwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGV4dGFyZWEge1xuICAgICAgcmVzaXplOiBub25lO1xuICAgICAgbWluLWhlaWdodDogMTAwcHg7XG4gICAgfVxuICAgIC5zdWJtaXQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAxM3B4IDM1cHggMTVweCAzNXB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQoMTgsIDIyLCA1MDApO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0MDBweDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICM2OTlCRkYgMCUsICMyRjZDRTYgMTAwJSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmVycm9yLW1lc3NhZ2Uge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBjb2xvcjogI0Y5N0E0RDtcbiAgICAgIHdpZHRoOiA3NSU7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cblxuICAuY29udGFjdC1vcHRpb25zIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG5cbiAgICAubGVmdCxcbiAgICAucmlnaHQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgICAgIEBpbmNsdWRlIG1xKG51bGwsIDkwMCkge1xuICAgICAgICB3aWR0aDogNDklO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtcShudWxsLCA2MTIpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEobnVsbCwgMTI4MCkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIDAgMjVweCAwO1xuICAgICAgICBAaW5jbHVkZSBmb250KDE4LCAyMik7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQoMTgsIDIyKTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICAgICAgfVxuXG4gICAgICAuY29tcGFueS1kZXRhaWxzIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgICAucmlnaHQge1xuICAgICAgc3ZnIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjbWFwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDE0NXB4KTtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIGJveC1zaGFkb3c6IDZweCA2cHggMjVweCAwIHJnYmEoMTA0LCAxNTMsIDI1MiwgMC4xKTtcblxuICAgIEBpbmNsdWRlIG1xKG51bGwsIDkwMCkge1xuICAgICAgaGVpZ2h0OiA1NDBweDtcbiAgICB9XG5cbiAgICA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICBoZWlnaHQ6IDEwNSUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuby1ibG9jayB7XG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNDBweDtcbiAgICB9XG4gIH1cbn0iLCIuby1jb29raWUtYmFyIHtcblx0ei1pbmRleDogLTE7IC8vIG5vdCBzZWxlY3RhYmxlXG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0Ym90dG9tOiAwO1xuXHRsZWZ0OiAwO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGhlaWdodDogJHNpdGUtY29va2llQmFyLWhlaWdodDtcblx0d2lkdGg6IDEwMCU7XG5cdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgOTAwKTtcblx0Ly9vcGFjaXR5OiAxO1xuXHRib3gtc2hhZG93OiAwIC00cHggNnB4IDAgcmdiYShwYWxldHRlKG5ldXRyYWwsIDEwMDApLCAwLjI1KTtcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtICRzaXRlLWNvb2tpZUJhci10cmFuc2l0aW9uLXNwZWVkICRzaXRlLWNvb2tpZUJhci10cmFuc2l0aW9uLWVhc2U7XG5cdC8vdHJhbnNmb3JtOiBub25lO1xuXG5cdC8vIFdoZW4gY29va2llcyBhcmUgbm90IHlldCBhY2NlcHRlZCwgc2hvdyBjb29raWViYXJcblx0Ym9keTpub3QoLmlzLWNvb2tpZXMtYWNjZXB0ZWQpICYge1xuXHRcdEBpbmNsdWRlIHooei1jb29raWUpO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cblx0fVxuXG5cdCYuaXMtdHJhbnNpdGlvbmluZy1vdXQge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ei1pbmRleDogLTE7IC8vIG5vdCBzZWxlY3RhYmxlXG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0Ly9vcGFjaXR5OiAwO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcblx0fVxufVxuXG5cbi5vLWNvb2tpZS1iYXJfX21haW4ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiAzNzUpIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG5cdH1cbn1cblxuXG4uby1jb29raWUtYmFyX190ZXh0IHtcblx0bWFyZ2luOiAwO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiAzNzUpIHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoeHMpO1xuXHR9XG59XG5cblxuLm8tY29va2llLWJhcl9fbGluayB7XG5cdGNvbG9yOiBpbmhlcml0O1xuXHR0cmFuc2l0aW9uOiBjb2xvciAzMDBtcztcblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAyMDApO1xuXHR9XG59XG5cblxuLm8tY29va2llLWJhcl9fYnV0dG9uIHtcblx0ZmxleDogbm9uZTtcblx0bWFyZ2luLWxlZnQ6IHNwYWNlKDUpO1xuXG5cdEBpbmNsdWRlIG1xKCRtYXg6IG0pIHtcblx0XHRtYXJnaW4tbGVmdDogc3BhY2UoMik7XG5cdH1cbn0iLCIkby1kb3VibGUtaW1hZ2UtYnAxOiAxMTAwO1xuXG5cbi5vLWRvdWJsZS1pbWFnZSB7XG5cdG1hcmdpbjogLTFweDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdC8vIFNldCBzaWRlIGJ5IHNpZGUgZnJvbSBtZWRpdW0gdmlld3BvcnRzIGFuZCB1cFxuXHRAaW5jbHVkZSBtcSgkby1kb3VibGUtaW1hZ2UtYnAxKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxufVxuXG5cbi5vLWRvdWJsZS1pbWFnZV9fcGljdHVyZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW46IDFweDtcblx0b3JkZXI6IDE7XG5cblx0QGluY2x1ZGUgbXEoJG8tZG91YmxlLWltYWdlLWJwMSkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNik7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHR9XG5cdH1cbn1cblxuXG4uby1kb3VibGUtaW1hZ2VfX2ltZyB7XG5cdG9iamVjdC1maXQ6IGNvdmVyO1xuXHRtYXgtaGVpZ2h0OiA4NXZoO1xufVxuXG5cbi5vLWRvdWJsZS1pbWFnZS0taXMtcmV2ZXJzZWQge1xuXHQmIC5vLWRvdWJsZS1pbWFnZV9fcGljdHVyZSB7XG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdG9yZGVyOiAwO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0XHR9XG5cdH1cbn0iLCIkby1kb3VibGUtdGV4dC1icDE6IG07XG5cblxuLm8tZG91YmxlLXRleHQge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0QGluY2x1ZGUgbXEoJG8tZG91YmxlLXRleHQtYnAxKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdH1cbn1cblxuXG4uby1kb3VibGUtdGV4dF9fY29sdW1uIHtcblx0QGluY2x1ZGUgb3dsKHNwYWNlKDUpKTtcblxuXHRAaW5jbHVkZSBtcSgkby1kb3VibGUtdGV4dC1icDEpIHtcblx0XHRtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IC8vIHJlc2V0IG93bFxuXHRcdHdpZHRoOiBjb2x1bW4oNS41KTtcblx0fVxufSIsIiRvLWZvb3Rlci1icDE6IDEwODA7XG5cblxuLm8tZm9vdGVyIHtcblx0QGluY2x1ZGUgeih6LWZvb3Rlcik7XG5cdC8vbWluLWhlaWdodDogODM1cHg7XG5cblx0YmFja2dyb3VuZDogJGJsdWVHcmFkaWVudDtcblx0Y29sb3I6IHBhbGV0dGUodGV4dCwgNDAwKTtcbn1cblxuXG4uby1mb290ZXJfX21haW4ge1xuXHRAaW5jbHVkZSBjb250YWluO1xuXHRAaW5jbHVkZSB2c3BhY2luZyhcblx0XHQncGFkZGluZy10b3AnIDAuMjUsXG5cdFx0J3BhZGRpbmctYm90dG9tJyAxXG5cdCk7XG59XG5cblxuLm8tZm9vdGVyX19icmFuZCB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBsaW5lYXI7XG5cblx0Jjpob3ZlciB7XG5cdFx0b3BhY2l0eTogMC41O1xuXHR9XG59XG5cblxuLm8tZm9vdGVyX19jb2x1bW5zIHtcblx0QGluY2x1ZGUgdnNwYWNpbmcoXG5cdFx0J21hcmdpbi10b3AnIDAuNVxuXHQpO1xuXHRAaW5jbHVkZSBtcSgkby1mb290ZXItYnAxKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxufVxuXG5cbi5vLWZvb3Rlcl9fbG9nbyB7XG5cdHdpZHRoOiAxNjBweDtcblx0bWF4LWhlaWdodDogNjBweDtcblxuXHRAaW5jbHVkZSBtcSg3MDApIHtcblx0XHR3aWR0aDogMjIwcHg7XG5cdFx0bWF4LWhlaWdodDogODBweDtcblx0fVxufVxuXG5cbi8vIExlZnQgY29sdW1uXG4uby1mb290ZXJfX2luZm8ge1xuXHRAaW5jbHVkZSBvd2wtY2hpbGRyZW4oc3BhY2UoNCkpO1xuXG5cdEBpbmNsdWRlIG1xKCRvLWZvb3Rlci1icDEpIHtcblx0XHR3aWR0aDogY29sdW1uKDQpO1xuXHR9XG59XG5cbi5vLWZvb3Rlcl9fY29udGFjdCB7XG5cdHBhZGRpbmctbGVmdDogNzJweDtcblxuXHRAaW5jbHVkZSBtcSg3MDApIHtcblx0XHRwYWRkaW5nLWxlZnQ6IDEwMHB4O1xuXHR9XG59XG5cbi8vIFJpZ2h0IGNvbHVtblxuLm8tZm9vdGVyX19uYXYge1xuXG5cdEBpbmNsdWRlIG1xKCRtYXg6IDY0MCkge1xuXHRcdD4gKiB7XG5cdFx0XHRtYXJnaW4tdG9wOiA0MHB4O1xuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIG1xKDY0MCwgJG8tZm9vdGVyLWJwMSkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXG5cblx0XHQ+ICoge1xuXHRcdFx0bWFyZ2luLXRvcDogNDBweDtcblx0XHRcdHdpZHRoOiBjYWxjKCgxMDAlIC0gNDBweCkgLyAyKTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBtcSgkbWF4OiA3MDApIHtcblx0XHRwYWRkaW5nLWxlZnQ6IDcycHg7XG5cdH1cblxuXHRAaW5jbHVkZSBtcSg3MDAsICRvLWZvb3Rlci1icDEpIHtcblx0XHRwYWRkaW5nLWxlZnQ6IDEwMHB4O1xuXHR9XG5cblx0QGluY2x1ZGUgbXEoJG8tZm9vdGVyLWJwMSkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0bWFyZ2luLWxlZnQ6IGNvbHVtbigxKTtcblx0XHR3aWR0aDogY29sdW1uKDcpO1xuXHR9XG59XG5cblxuLm8tZm9vdGVyX19saXN0IHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bWFyZ2luLWxlZnQ6IDA7XG5cblx0QGluY2x1ZGUgbXEoJG8tZm9vdGVyLWJwMSkge1xuXHRcdHdpZHRoOiBjb2x1bW4oMywgNyk7XG5cblx0XHQvLyBBbGwgc3Vic2VxdWVudCBsaXN0cyBuZWVkIHNwYWNpbmdcblx0XHQmOm50aC1jaGlsZChuKzIpe1xuXHRcdFx0bWFyZ2luLWxlZnQ6IGNvbHVtbigxLCA3KTtcblx0XHR9XG5cdH1cbn1cblxuLm8tZm9vdGVyX19pdGVtLS1oZWFkaW5nIHtcblx0Y29sb3I6IHdoaXRlO1xuXHRtYXJnaW4tYm90dG9tOiA0MHB4O1xuXHRAaW5jbHVkZSBmb250LXNpemUoMjAsIDI0KTtcbn1cblxuLm8tZm9vdGVyX19oZWFkaW5nLWxpbmsge1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5vLWZvb3Rlcl9fbGluayB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAwO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGxpbmUtaGVpZ2h0OiAyLjI1O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246IGNvbG9yIDI1MG1zO1xuXG5cdCY6aG92ZXIge1xuXHRcdGNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNTAwKTtcblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtY29sb3I6IHBhbGV0dGUoZmVlZGJhY2ssIGZvY3VzKTtcblx0fVxufVxuXG5cbi5vLWZvb3Rlcl9fc29jaWFsIHtcblx0ZGlzcGxheTogZmxleDtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bWFyZ2luOiBzcGFjZSg0KSAwIDA7XG59XG5cblxuLm8tZm9vdGVyX19jaGFubmVsIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHdpZHRoOiAyNHB4O1xuXHRoZWlnaHQ6IDI0cHg7XG5cdG1hcmdpbi1yaWdodDogc3BhY2UoMik7XG59XG5cblxuLm8tZm9vdGVyX19pY29uIHtcblx0ZmxleDogYXV0bztcblx0ZGlzcGxheTogYmxvY2s7XG5cdGhlaWdodDogMTAwJTtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHR0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuXHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAzMDBtcztcblxuXHQuZmFjZWJvb2sgJiB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9zb2NpYWwvZmFjZWJvb2suc3ZnXCIpO1xuXHRcdGhlaWdodDogMjFweDtcblx0fVxuXHQuaW5zdGFncmFtICYge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvc29jaWFsL2luc3RhZ3JhbS5zdmdcIik7XG5cdH1cblx0LnR3aXR0ZXIgJiB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9zb2NpYWwvdHdpdHRlci5zdmdcIik7XG5cdFx0aGVpZ2h0OiAyMHB4O1xuXHR9XG5cdC5saW5rZWRpbiAmIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL3NvY2lhbC9saW5rZWRpbi5zdmdcIik7XG5cdFx0aGVpZ2h0OiAxOHB4O1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0b3BhY2l0eTogMC41O1xuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZS1jb2xvcjogcGFsZXR0ZShmZWVkYmFjaywgZm9jdXMpO1xuXHR9XG59IiwiLm8taGVhZGVyIHtcblx0QGluY2x1ZGUgeih6LWhlYWRlcik7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZzogc3BhY2UoNCkgMDtcblx0bWFyZ2luLWJvdHRvbTogLTEwMCU7XG5cblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYShwYWxldHRlKHByaW1hcnksIDgwMCksIDAuOCkgMCUsIHJnYmEocGFsZXR0ZShwcmltYXJ5LCA4MDApLCAwLjQpIDYwJSwgcmdiYShwYWxldHRlKHByaW1hcnksIDgwMCksIDApIDEwMCUpO1xuXG5cdCYuaXMtc3RpY2t5IHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHR6LWluZGV4OiA1MDtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRwYWRkaW5nLXRvcDogc3BhY2UoMik7XG5cdFx0cGFkZGluZy1ib3R0b206IHNwYWNlKDIpO1xuXHRcdGJveC1zaGFkb3c6IDAgLTVweCAzMHB4IGJsYWNrO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgODAwKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuXHRcdHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAzMDBtcztcblx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwbXMsIDMwMG1zO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpO1xuXG5cdFx0QGluY2x1ZGUgbXEoJGJwLWhlYWRlci1sYXJnZSkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHQuaXMtc3RpY2t5LWhlYWRlci12aXNpYmxlICYge1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHRcdHRyYW5zaXRpb24tZGVsYXk6IDBtcztcblx0XHR9XG5cdH1cbn1cblxuXG4uby1oZWFkZXJfX21haW4ge1xuXHRAaW5jbHVkZSBjb250YWluO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuXG4uby1oZWFkZXJfX2xvZ28ge1xuXHRmbGV4OiBub25lO1xuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAycHg7XG5cdFx0b3V0bGluZS1jb2xvcjogcGFsZXR0ZShmZWVkYmFjaywgZm9jdXMpO1xuXHR9XG59XG5cblxuLm8taGVhZGVyX19pbWcge1xuXHR3aWR0aDogMTYwcHg7XG5cdG1heC1oZWlnaHQ6IDYwcHg7XG5cblx0QGluY2x1ZGUgbXEoNzAwKSB7XG5cdFx0d2lkdGg6IDIyMHB4O1xuXHRcdG1heC1oZWlnaHQ6IDgwcHg7XG5cdH1cblxuXHQuaXMtc3RpY2t5ICYge1xuXHRcdHdpZHRoOiAxNDBweCAhaW1wb3J0YW50O1xuXHRcdG1heC1oZWlnaHQ6IDUwcHggIWltcG9ydGFudDtcblx0fVxufVxuXG5cbi5vLWhlYWRlcl9fbmF2IHtcblx0d2lkdGg6IDEwMCU7XG5cdG1hcmdpbi1sZWZ0OiBzcGFjZSg2KTtcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiAkYnAtaGVhZGVyLWxhcmdlKSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG5cbi5vLWhlYWRlcl9fbGFuZ3VhZ2Uge1xuXHRtYXJnaW4tbGVmdDogc3BhY2UoMik7XG5cblx0QGluY2x1ZGUgbXEoJG1heDogJGJwLWhlYWRlci1sYXJnZSkge1xuXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHR9XG59XG5cblxuLm8taGVhZGVyX190b2dnbGUge1xuXHRtYXJnaW4tbGVmdDogNDBweDtcblx0Ly9AaW5jbHVkZSBtcSgkYnAtaGVhZGVyLWxhcmdlKSB7XG5cdC8vXHRkaXNwbGF5OiBub25lO1xuXHQvL31cbn0iLCIkaGVyb0JwOiA5NDA7XG5cbi5vLWhlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uby1oZXJvX19tYWluIHtcbiAgLy9wYWRkaW5nOiAyMDBweCAwIDYwcHg7XG4gIHBhZGRpbmc6IDE2MHB4IDAgMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKHByaW1hcnksIDgwMCk7XG5cbiAgLy8jaG9tZSAmIHtcbiAgLy8gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIC8vfVxufVxuXG4uby1oZXJvX19ncmlkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuXG4gIEBpbmNsdWRlIG1xKCRtYXg6ICRoZXJvQnApIHtcbiAgICA+ICogKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgfVxuICB9XG5cblxuICBAaW5jbHVkZSBtcSgkaGVyb0JwKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgID4gKiB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cblxuICAgICYubm8taW1hZ2Uge1xuICAgICAgLm8taGVyb19fdGV4dCB7XG4gICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICB9XG4gICAgICAuby1oZXJvX19pbWFnZSB7XG4gICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5vLWhlcm9fX3RleHQge1xuICBAaW5jbHVkZSBtcSgkaGVyb0JwKSB7XG4gICAgcGFkZGluZy1yaWdodDogY29sdW1uKDAuMiwgNik7XG4gIH1cblxuICAmLmFkZGl0aW9uYWwtcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gIH1cbn1cblxuLm8taGVyb19fdGV4dC0tc2VydmljZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAaW5jbHVkZSBtcSgkaGVyb0JwKSB7XG4gICAgd2lkdGg6IGNvbHVtbigxMCwgMTIpO1xuICAgIG1heC13aWR0aDogOTAwcHg7XG4gIH1cbn1cblxuLm8taGVyb19fdG9wLXNoYXBlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MHZ3O1xuICB0b3A6IDA7XG4gIGhlaWdodDogNzglO1xuXG4gIEBpbmNsdWRlIG1xKCRtYXg6IDk0MCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBpbWcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cblxuLm8taGVyb19fcGxhY2Vob2xkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMjBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgODAwKTtcbn1cblxuLm8taGVyb19fYm90dG9tLXNoYXBlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBjb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA4MDApO1xuXG4gIHN2ZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn0iLCIuby1tYXAge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDA7XG5cdHBhZGRpbmctYm90dG9tOiA4NSU7XG59XG5cblxuLm8tbWFwX19pbm5lciB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogMDtcblx0dG9wOiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgMjApO1xufSIsIiRvLW92ZXJsYXktbWVudTogKFxuXHQnYmdjb2xvcic6ICAgICAgICAgIHBhbGV0dGUocHJpbWFyeSwgODAwKSxcblx0J2NvbG9yJzogICAgICAgICAgICB3aGl0ZSxcblx0J3NoYWRlci1jb2xvcic6ICAgICByZ2JhKDAsIDAsIDAsIDAuNiksXG5cdCdtb3ZlLXNwZWVkJzogICAgICAgNDUwbXMsXG5cdCdvcGFjaXR5LXNwZWVkJzogICAgMTAwbXMsXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uby1vdmVybGF5LW1lbnUge1xuXHRAaW5jbHVkZSB6KHotb3ZlcmxheS1tZW51KTtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0cG9zaXRpb246IGZpeGVkO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHdpZHRoOiAxMDAlO1xuXHRyaWdodDogMDtcblx0dG9wOiAwO1xuXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG5cdC8vIFdoZW4gaXQgZGlzYXBwZWFycyBvdXQgb2Ygdmlld1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQwMHB4KTtcblx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuXHR0cmFuc2l0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ21vdmUtc3BlZWQnKTtcblx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjgsIDAuMiwgMC4yLCAwLjgpO1xuXHR0cmFuc2l0aW9uLWRlbGF5OiAwbXMsIG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnbW92ZS1zcGVlZCcpO1xuXG5cdC8vIFdoZW4gaXQgY29tZXMgaW50byB2aWV3XG5cdC5pcy1vdmVybGF5LW1lbnUtYWN0aXZlICYge1xuXHRcdHBvaW50ZXItZXZlbnRzOiBhbGw7XG5cdFx0b3BhY2l0eTogMTtcblx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0dHJhbnNpdGlvbi1kZWxheTogbWFwLWdldCgkby1vdmVybGF5LW1lbnUsICdvcGFjaXR5LXNwZWVkJyksIDBtcztcblx0fVxuXG5cdC8vIFNoYWRlclxuXHQmOjpiZWZvcmUge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAtMTtcblx0XHRsZWZ0OiAwO1xuXHRcdHRvcDogMDtcblx0XHRoZWlnaHQ6IDIwMHZoO1xuXHRcdHdpZHRoOiAxMjB2dztcblx0XHRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ3NoYWRlci1jb2xvcicpO1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG5cdFx0Ly8gd2hlbiBzaGFkZXIgZGlzYXBwZWFycyBvdXQgb2Ygdmlld1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ29wYWNpdHktc3BlZWQnKTtcblx0XHR0cmFuc2l0aW9uLWRlbGF5OiBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ21vdmUtc3BlZWQnKTtcblx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuXG5cdFx0Ly8gd2hlbiBzaGFkZXIgY29tZXMgaW50byB2aWV3XG5cdFx0LmlzLW92ZXJsYXktbWVudS1hY3RpdmUgJiB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMG1zO1xuXHRcdH1cblx0fVxuXG5cdC8vLy8gSGlkZSBvdmVybGF5IG1lbnUgb24gbGFyZ2VyIHZpZXdwb3J0c1xuXHRAaW5jbHVkZSBtcSgkYnAtaGVhZGVyLWxhcmdlKSB7XG5cdFx0Ly9oZWlnaHQ6IGF1dG87XG5cblx0fVxufVxuXG4uby1vdmVybGF5LW1lbnVfX21haW4ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ2JnY29sb3InKTtcbn1cblxuLm8tb3ZlcmxheS1tZW51X19zaGFwZSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuXHRjb2xvcjogbWFwLWdldCgkby1vdmVybGF5LW1lbnUsICdiZ2NvbG9yJyk7XG5cblx0c3ZnIHtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxufVxuXG4uby1vdmVybGF5LW1lbnVfX2JhciB7XG5cdEBpbmNsdWRlIGNvbnRhaW47XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZy10b3A6IHNwYWNlKDQpO1xuXHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoNCk7XG59XG5cblxuLm8tb3ZlcmxheS1tZW51X19pbWcge1xuXHR3aWR0aDogMjIwcHg7XG5cdG1heC1oZWlnaHQ6IDgwcHg7XG59XG5cblxuLm8tb3ZlcmxheS1tZW51X190b2dnbGUge1xuXHR0cmFuc2Zvcm06IHJvdGF0ZSgtMC41dHVybik7XG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSA2MDBtcyBlYXNlLW91dDtcblx0dHJhbnNpdGlvbi1kZWxheTogMjAwbXM7XG5cblx0LmlzLW92ZXJsYXktbWVudS1hY3RpdmUgJiB7XG5cdFx0dHJhbnNmb3JtOiBub25lO1xuXHR9XG59XG5cblxuLm8tb3ZlcmxheS1tZW51X19uYXYge1xuXHRtYXJnaW4tdG9wOiBzcGFjZSgxKTtcblxuXHRAaW5jbHVkZSBtcSgkYnAtaGVhZGVyLWxhcmdlKSB7XG5cdFx0QGluY2x1ZGUgY29udGFpbjtcblx0fVxufVxuXG5cbi5vLW92ZXJsYXktbWVudV9fbGlzdCB7XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xufVxuXG5cbi5vLW92ZXJsYXktbWVudV9faXRlbTpub3QoLm8tb3ZlcmxheS1tZW51X19pdGVtLS1hZHZpY2UpIHtcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiAkYnAtaGVhZGVyLWxhcmdlKSB7XG5cdFx0JiArICYge1xuXHRcdFx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEod2hpdGUsIDAuNCk7XG5cdFx0fVxuXHR9XG59XG5cbi5vLW92ZXJsYXktbWVudV9faXRlbS0tYWR2aWNlIHtcblx0bWFyZ2luOiAyMHB4IGNvbHVtbigxLDE0KSAwO1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY29sdW1uKC0xKSkgc2NhbGUoMS4yKTtcblx0dHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG5cdHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluO1xuXHR0cmFuc2l0aW9uLWRlbGF5OiAwbXM7XG5cblx0LmlzLW92ZXJsYXktbWVudS1hY3RpdmUgJiB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0dHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2Utb3V0IDgwMG1zO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEoMTEwMCkge1xuXHRcdG1hcmdpbi10b3A6IDQwcHg7XG5cdH1cbn1cblxuLm8tb3ZlcmxheS1tZW51X19saW5rIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAyO1xuXHRAaW5jbHVkZSBmb250LXNpemUobSk7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwYWRkaW5nOiBzcGFjZSgxLjUpIGNvbHVtbigxLDE0KTtcblx0Y29sb3I6IG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnY29sb3InKTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY29sdW1uKC0xKSkgc2NhbGUoMS4yKTtcblx0dHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG5cdHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluO1xuXHR0cmFuc2l0aW9uLWRlbGF5OiAwbXM7XG5cblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IC0xO1xuXHRcdGxlZnQ6IDA7XG5cdFx0dG9wOiAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0fVxuXG5cdCY6aG92ZXIge1xuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogc2NhbGUtY29sb3IobWFwLWdldCgkby1vdmVybGF5LW1lbnUsICdiZ2NvbG9yJyksICRsaWdodG5lc3M6IC0yMCUpO1xuXHRcdH1cblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAycHg7XG5cdFx0b3V0bGluZS1jb2xvcjogbWFwLWdldCgkby1vdmVybGF5LW1lbnUsICdjb2xvcicpO1xuXHR9XG5cblx0LmlzLW92ZXJsYXktbWVudS1hY3RpdmUgJiB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0dHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2Utb3V0O1xuXHR9XG5cblx0Ly8gU2V0IGEgZGVsYXkgZm9yIGVhY2ggbGlua1xuXHRAZm9yICRpIGZyb20gMSB0aHJvdWdoIDEwIHtcblx0XHRAYXQtcm9vdCAuby1vdmVybGF5LW1lbnVfX2l0ZW06bnRoLWNoaWxkKCN7JGl9KSB7XG5cdFx0XHQuaXMtb3ZlcmxheS1tZW51LWFjdGl2ZSAmIC5vLW92ZXJsYXktbWVudV9fbGluayB7XG5cdFx0XHRcdCRnYXA6IDQ1O1xuXHRcdFx0XHQkaW5pdGlhbGRlbGF5OiBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ21vdmUtc3BlZWQnKTtcblx0XHRcdFx0dHJhbnNpdGlvbi1kZWxheTogI3skaSAqICRnYXAgKyAkaW5pdGlhbGRlbGF5fTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuaXMtYWN0aXZlICYge1xuXHRcdGNvbG9yOiBwYWxldHRlKHByaW1hcnksIDMwMCk7XG5cdH1cbn0iLCIvKiBJbiB0aGUgWyRvLXBhcnRuZXJzXSBtYXAgd2UgZGVmaW5lIHNvbWUgc2V0dGluZ3M6XG4gKlxuICogJ2NvbHVtbnMnLmtleSBcdD1cdG51bWJlciBvZiBpdGVtcyBpbiBhIHJvd1xuICogJ2NvbHVtbnMnLnZhbHVlIFx0PSBcdGJyZWFrcG9pbnQgc2l6ZSBmcm9tIHdoaWNoIHdlIHdhbnQgdGhhdCBudW1iZXIgb2YgaXRlbXNcbiAqL1xuXG5cbiRvLXBhcnRuZXJzOiAoXG5cdCdnYXAnIDogNCUsXG5cdCdjb2x1bW5zJzogKFxuXHRcdDI6IDMyMCxcblx0XHQzOiA2MjAsXG5cdFx0NDogODYwLFxuXHRcdDU6IDEwODAsXG5cdCksXG4pO1xuXG4vLyBHZXQgdmFsdWVzIGZyb20gdGhlIG1hcCBhbmQgcGxhY2UgdGhlbSBpbiBhbiBlYXN5IHRvIGFjY2VzcyB2YXJpYWJsZVxuJG8tcGFydG5lcnMtY29sdW1uczogXHRcdFx0XHRtYXAtZ2V0KCRvLXBhcnRuZXJzLCAnY29sdW1ucycpOyAvLyBnZXQgdGhlICdjb2x1bW5zJyBsaXN0XG4kby1wYXJ0bmVycy1jb2x1bW4ta2V5czogXHRcdFx0bWFwLWtleXMoJG8tcGFydG5lcnMtY29sdW1ucyk7IC8vIGdldCBhIGxpc3Qgb2YgdGhlIGtleXMgZnJvbSB0aGUgJ2NvbHVtbnMnXG4kby1wYXJ0bmVycy1jb2x1bW4tc21hbGxlc3QtYnA6IFx0bWFwLWdldCgkby1wYXJ0bmVycy1jb2x1bW5zLCBudGgoJG8tcGFydG5lcnMtY29sdW1uLWtleXMsIDEpKTsgLy8gZ2V0IGJyZWFrcG9pbnQgdmFsdWUgb2YgdGhlIGZpcnN0IGNvbHVtblxuXG5cbi5vLXBhcnRuZXJzX19saXN0IHtcblx0QGluY2x1ZGUgbXEoJG8tcGFydG5lcnMtY29sdW1uLXNtYWxsZXN0LWJwKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0bWFyZ2luOiBtYXAtZ2V0KCRvLXBhcnRuZXJzLCAnZ2FwJykgKiAtMTtcblx0fVxufVxuXG5cbi5vLXBhcnRuZXJzX19pdGVtIHtcblx0bWF4LXdpZHRoOiA0NDRweDsgLy8gY29uc3RyYWluIHRoZSB3aWR0aCBvZiB0aGUgZWxlbWVudCBpbnNpZGVcblx0bWFyZ2luOiBtYXAtZ2V0KCRvLXBhcnRuZXJzLCAnZ2FwJykgYXV0bztcblx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG5cblx0Ly8gTG9vcCB0aHJvdWdoIGFsbCBkZWZpbmVkIGNvbHVtbnNcblx0QGVhY2ggJGNvdW50LCAkYnJlYWtwb2ludCBpbiAkby1wYXJ0bmVycy1jb2x1bW5zIHtcblx0XHQkaTogaW5kZXgoJG8tcGFydG5lcnMtY29sdW1ucywgKCRjb3VudCAkYnJlYWtwb2ludCkpO1xuXG5cdFx0QGluY2x1ZGUgbXEobWFwLWdldCgkby1wYXJ0bmVycy1jb2x1bW5zLCAkY291bnQpKSB7XG5cdFx0XHRAaWYoJGkgPT0gMSkge1xuXHRcdFx0XHQvLyBPbmx5IHNldCB0aGVzZSB2YWx1ZXMgZm9yIHRoZSBmaXJzdCBtZWRpYSBxdWVyeSwgbm8gbmVlZCB0byBzZXQgdGhlbSBldmVyeSB0aW1lXG5cdFx0XHRcdGZsZXg6IG5vbmU7XG5cdFx0XHRcdG1hcmdpbjogbWFwLWdldCgkby1wYXJ0bmVycywgJ2dhcCcpO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBpbiBjYXNlIG9mIGEgYnVnIGluIElFIHdlIG5lZWQgdG8gc3BlY2lmeSBmbGV4LWJhc2lzIGxvbmdoYW5kIHByb3BlcnR5OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctOFxuXHRcdFx0ZmxleC1iYXNpczogY2FsYygje3BlcmNlbnRhZ2UoMSAvICRjb3VudCl9IC0gKCN7bWFwLWdldCgkby1wYXJ0bmVycywgJ2dhcCcpfSAqIDIpKTtcblx0XHR9XG5cdH1cbn1cblxuXG4uby1wYXJ0bmVyc19fbG9nbyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGhlaWdodDogMTAwJTtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBsaW5lYXI7XG5cblx0Jjpob3ZlciB7XG5cdFx0b3BhY2l0eTogMC43NTtcblx0fVxufVxuXG5cbi5vLXBhcnRuZXJzX19maWd1cmUge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXG59XG5cblxuLm8tcGFydG5lcnNfX2ltZyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR3aWR0aDogMTAwJTtcblx0b2JqZWN0LWZpdDogY29udGFpbjtcbn0iLCIkby1zdWJmb290ZXItc3BhY2luZy1oOlx0c3BhY2UoNCk7XG5cblxuLm8tc3ViZm9vdGVyIHtcblx0QGluY2x1ZGUgeih6LXN1YmZvb3Rlcik7XG5cdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgOTAwKTtcblx0Y29sb3I6IHBhbGV0dGUodGV4dCwgNDAwKTtcbn1cblxuXG4uby1zdWJmb290ZXJfX21haW4ge1xuXHRAaW5jbHVkZSBjb250YWluO1xuXHRAaW5jbHVkZSBmb250KHMpO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZy10b3A6IHNwYWNlKDEpO1xuXHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoMSk7XG59XG5cblxuLm8tc3ViZm9vdGVyX19jb3B5cmlnaHQge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG4gIFx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG4gIFx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMSk7XG5cdG1hcmdpbi1yaWdodDogJG8tc3ViZm9vdGVyLXNwYWNpbmctaDtcbn1cblxuXG4uby1zdWJmb290ZXJfX25hdiB7XG5cdG1hcmdpbi1yaWdodDogYXV0bztcblx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDEpO1xuXG5cdEBpbmNsdWRlIG1xKDEwMDApIHtcblx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0fVxufVxuXG5cbi5vLXN1YmZvb3Rlcl9fbGlzdCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRtYXJnaW46IDA7XG59XG5cblxuLm8tc3ViZm9vdGVyX19pdGVtIHtcblx0bWFyZ2luLXJpZ2h0OiAkby1zdWJmb290ZXItc3BhY2luZy1oO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG5cbi5vLXN1YmZvb3Rlcl9fbGluayB7XG5cdGNvbG9yOiBwYWxldHRlKHRleHQsIDQwMCk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogY29sb3IgMjAwbXM7XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZS1jb2xvcjogcGFsZXR0ZShmZWVkYmFjaywgZm9jdXMpO1xuXHR9XG59XG5cblxuLm8tc3ViZm9vdGVyX190cmFkZW1hcmsge1xuXHRtYXJnaW4tdG9wOiBzcGFjZSgxKTtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMSk7XG59IiwiJG8tdGFicy1wYWRkaW5nLWg6IHNwYWNlKDQpO1xuXG4vKlxuICogT24gc21hbGwgc2NyZWVucyB0aGUgY29udGVudCBpcyBzdGFja2VkLCB3aXRob3V0IGNvbnRyb2xzXG4gKiBXaGVuIHRoZSBzY3JlZW4gaXMgd2lkZSBlbm91Z2ggd2UgYWRkIHRoZSBjb250cm9sc1xuICogYW5kIHNob3cgb25seSB0aGUgY2hvc2VuICdzbGlkZSBjb250ZW50J1xuICovXG5cblxuLm8tdGFicyB7XG5cdEBpbmNsdWRlIGNvbnRhaW47XG59XG5cblxuLm8tdGFic19fY29udHJvbHMge1xuXHRAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdH1cbn1cblxuXG4vLyBTaGFyZWQgc3R5bGluZyBmb3IgdGFiLSBhbmQgc3RlcC1idXR0b25zXG4uby10YWJzX19idXR0b24ge1xuXHRAaW5jbHVkZSBmb250LXNpemUoYmFzZSk7IC8vIG5lZWRlZCBmb3IgYnV0dG9uIHJlc2V0XG5cdGJvcmRlcjogbm9uZTsgLy8gbmVlZGVkIGZvciBidXR0b24gcmVzZXRcblx0cGFkZGluZzogc3BhY2UoMikgJG8tdGFicy1wYWRkaW5nLWg7XG5cdG1pbi1oZWlnaHQ6IHNwYWNlKDYpO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA3MDApO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246IGFsbCAyMDBtcyBsaW5lYXI7XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMTAwMCk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuXHR9XG5cblx0Ji5pcy1hY3RpdmUge1xuXHRcdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDEwMDApO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMjAwKTtcblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0Ym9yZGVyLWNvbG9yOiBwYWxldHRlKGZlZWRiYWNrLCBmb2N1cyk7XG5cblx0XHQmOm5vdCguaXMtYWN0aXZlKTpub3QoOmFjdGl2ZSkge1xuXHRcdFx0Ym94LXNoYWRvdzogMCAwIDVweCAzcHggcmdiYShwYWxldHRlKGZlZWRiYWNrLCBmb2N1cyksIDAuMSk7XG5cdFx0fVxuXHR9XG59XG5cblxuLm8tdGFic19fY29udGFpbmVyIHtcblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7XG5cdFx0cGFkZGluZzogc3BhY2UoNikgJG8tdGFicy1wYWRkaW5nLWg7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAyMDApO1xuXHR9XG59XG5cblxuLm8tdGFic19fY29udGVudCB7XG5cdEBpbmNsdWRlIG1xKCRtYXg6IG0pIHtcblx0XHQmICsgJiB7XG5cdFx0XHRtYXJnaW4tdG9wOiBzcGFjZSg1KTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0Z3JpZC1yb3c6IDE7XG5cdFx0Z3JpZC1jb2x1bW46IDE7XG5cdFx0b3BhY2l0eTogMDtcblx0XHR6LWluZGV4OiAwO1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgbGluZWFyO1xuXG5cdFx0Ji5pcy1hY3RpdmUge1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0XHRwb2ludGVyLWV2ZW50czogYWxsO1xuXHRcdH1cblx0fVxufVxuXG5cbi5vLXRhYnNfX2xhYmVsIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHhzKTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmctYm90dG9tOiBzcGFjZSgxKTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMTAwMCk7XG5cblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn0iLCIkby10ZXh0LWltYWdlLWJwMTogbTtcbiRvLXRleHQtaW1hZ2UtYnAyOiBsO1xuXG5cbi5vLXRleHQtaW1hZ2Uge1xuXHRAaW5jbHVkZSBjb250YWluO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0QGluY2x1ZGUgbXEoJG8tdGV4dC1pbWFnZS1icDEpIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0fVxufVxuXG5cbi5vLXRleHQtaW1hZ2VfX2Rlc2NyaXB0aW9uIHtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoNSk7XG5cblx0cCwgdWwge1xuXHRcdG1heC13aWR0aDogNDgwcHg7XG5cdH1cblxuXHRAaW5jbHVkZSBtcSgkby10ZXh0LWltYWdlLWJwMSl7XG5cdFx0d2lkdGg6IGNvbHVtbig1LjUpO1xuXHRcdG1hcmdpbi1ib3R0b206IDA7IC8vIHJlc2V0XG5cdH1cbn1cblxuXG4uby10ZXh0LWltYWdlX192aXN1YWwge1xuXHRAaW5jbHVkZSBtcSgkby10ZXh0LWltYWdlLWJwMSkge1xuXHRcdHdpZHRoOiA1MCU7XG5cdH1cbn1cblxuXG4vLyBNb2RpZmllciBmb3IgcmV2ZXJzaW5nOiBJbWFnZSBmaXJzdCwgdGhlbiB0ZXh0XG4uby10ZXh0LWltYWdlLS1pcy1yZXZlcnNlZCB7XG5cdEBpbmNsdWRlIG1xKCRvLXRleHQtaW1hZ2UtYnAxKSB7XG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuXHR9XG59IiwiLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBUZW1wbGF0ZXNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG5AaW1wb3J0IFwidGVtcGxhdGVzLmNvbnRhY3RcIjtcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMubWV0aG9kXCI7XG5AaW1wb3J0IFwidGVtcGxhdGVzLnBvc3RzXCI7IiwiI2NvbnRhY3Qge1xuXG4gIC5vLWhlcm9fX3RvcC1zaGFwZSB7XG4gICAgaGVpZ2h0OiA1MCU7XG4gIH1cblxuICAuby1jb250YWN0LWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IC00MDBweDtcbiAgfVxuXG4gIC5vLWhlcm9fX21haW4ge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNDBweDtcblxuICAgIEBpbmNsdWRlIG1xKDE1MDApIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNjBweDtcbiAgICB9XG4gIH1cbn0iLCIjbWV0aG9kIHtcblxuICAucy10ZXh0IHtcbiAgICBoMyB7XG4gICAgICBjb2xvcjogcGFsZXR0ZShwcmltYXJ5LCAzMDApO1xuICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE4LCAyMSk7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cbiAgICBoMiB7XG4gICAgICBtYXJnaW4tdG9wOiA0cHggIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn0iLCIjcG9zdHMge1xuXG4gIC5vLWhlcm9fX3RleHQge1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICB9XG5cbiAgLm8tYmxvZyB7XG4gICAgbWFyZ2luLXRvcDogLTQwcHg7XG5cbiAgICBAaW5jbHVkZSBtcSg2MDAsIDExMDApIHtcbiAgICAgIG1hcmdpbi10b3A6IC0yMi41dnc7ICAgIFxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xKDExMDAsIDIyMDApIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xNy41dnc7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKDIyMDApIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xNXZ3O1xuICAgIH1cblxuICAgIC8vQGluY2x1ZGUgbXEoNjAwLCAxODAwKSB7XG4gICAgLy8gIG1hcmdpbi10b3A6IC0yNDBweDtcbiAgICAvL31cbiAgICAvL1xuICAgIC8vQGluY2x1ZGUgbXEoMTgwMCkge1xuICAgIC8vICBtYXJnaW4tdG9wOiAtMzIwcHg7XG4gICAgLy99XG4gIH1cbn0iLCIvKipcbiAqIEFsbCB0ZXh0IGVsZW1lbnRzIHRoYXQgY2FuIGJlIGFkZGVkIGJ5IHRoZSB1c2VyIHRocm91Z2ggYSBDTVNcbiAqL1xuXG5cbi5zLXRleHQge1xuXG5cdGgxOm5vdCguYy1zZXJ2aWNlLWhlYWRpbmcpIHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoNDIsIDUyKTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG5cdFx0Ly9AaW5jbHVkZSBtcSg1MDApIHtcblx0XHQvL1x0QGluY2x1ZGUgZm9udC1zaXplKDU0KTtcblx0XHQvL31cblx0fVxuXG5cdC8vIEZpcnN0IHRoZSBvd2wgc2VsZWN0b3IgZm9yIHNldHRpbmcgYSBkZWZhdWx0IHZlcnRpY2FsIHJoeXRobVxuXHQmID4gKiArICoge1xuXHRcdG1hcmdpbi10b3A6IHNwYWNlKDQpO1xuXHR9XG5cblx0Ly8gTWFrZSBzdXJlIGZpcnN0IGl0ZW0gaW4gc2NvcGVkIHRleHQgaGFzIG5vIG1hcmdpbiBvbiB0b3Bcblx0JiA+IDpmaXJzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuXHR9XG5cblx0Ly8gQ2xhc3NlcyB0aGF0IHN0YXJ0IHdpdGggJ2MtJyBhcmUgY29tcG9uZW50cyBhbmQgbmVlZCBhIGxpdHRsZSBleHRyYSBzcGFjZVxuXHQmID4gKiArIFtjbGFzcyo9J2MtJ10ge1xuXHRcdG1hcmdpbi10b3A6IHNwYWNlKDUpO1xuXHR9XG5cblx0JiA+IHVsOm5vdChbY2xhc3NdKSB7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblxuXHRcdCYgPiBsaSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRtYXJnaW4tbGVmdDogLTEuMTI1ZW07XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDEuMTI1ZW07XG5cblx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdEBpbmNsdWRlIGZvbnQtc2l6ZShsKTtcblx0XHRcdFx0Y29udGVudDogXCJcXDIwMjJcIjtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IC00cHg7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0JiA+IG9sOm5vdChbY2xhc3NdKSB7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRjb3VudGVyLXJlc2V0OiBvbC1jb3VudGVyO1xuXG5cdFx0JiA+IGxpIHtcblx0XHRcdGNvdW50ZXItaW5jcmVtZW50OiBvbC1jb3VudGVyO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IC0xLjEyNWVtO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAxLjhlbTtcblxuXHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogY291bnRlcihvbC1jb3VudGVyKSBcIi4gXCI7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHR3aWR0aDogMS4yNzVlbTtcblx0XHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5zLXRleHQtLW9uLWRhcmsge1xuXHRjb2xvcjogcmdiYSh3aGl0ZSwgMC42KTtcblxuXHRoMSB7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHR9XG5cblx0aDIsIGgzIHtcblx0XHRjb2xvcjogcmdiYSh3aGl0ZSwgMC42KTtcblx0fVxufSIsIi8qKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiAgQ29sb3JcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuLyoqXG4gKiBIZXJlIHdlIHByaW50IG91dCBhbGwgb3VyIGhlbHBlciBjbGFzc2VzIGZvciBvdXIgZGVmaW5lZCBjb2xvcnNcbiAqIEJhc2VkIG9uIHRoZXNlIGFydGljbGVzOlxuICogLSBodHRwOi8vZXJza2luZWRlc2lnbi5jb20vYmxvZy9mcmllbmRsaWVyLWNvbG91ci1uYW1lcy1zYXNzLW1hcHMvXG4gKiAtIGh0dHBzOi8vYmxvZy5hdGVjaG1lZGlhLmNvbS9jc3MtZm9yLW11bHRpcGxlLXRoZW1lcy9cbiAqIE91dHB1dCBpcyBpbiB0aGUgZm9ybSBvZjpcblxuICAgLnUtY29sb3ItcHJpbWFyeSB7XG4gICAgICBjb2xvcjogI2JhZGE1NTtcbiAgIH1cblxuICAudS1iZy1uZXV0cmFsLS05MDAge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWNhZmY7XG4gIH1cbiAqL1xuXG5AZWFjaCAkbGV2ZWwsICRwYWxldHRlIGluICRwYWxldHRlcyB7XG5cdEBlYWNoICR0eXBlLCAkY29sb3IgaW4gJHBhbGV0dGUge1xuXHRcdEBpZigkdHlwZSA9PSAnYmFzZScpe1xuXHRcdFx0LnUtY29sb3ItI3skbGV2ZWx9IHtcblx0XHRcdFx0Y29sb3I6ICN7JGNvbG9yfTtcblx0XHRcdH1cblx0XHRcdC51LWJnLSN7JGxldmVsfSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICN7JGNvbG9yfTtcblx0XHRcdH1cblx0XHR9IEBlbHNlIHtcblx0XHRcdC51LWNvbG9yLSN7JGxldmVsfS0tI3skdHlwZX0ge1xuXHRcdFx0XHRjb2xvcjogI3skY29sb3J9O1xuXHRcdFx0fVxuXHRcdFx0LnUtYmctI3skbGV2ZWx9LS0jeyR0eXBlfSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICN7JGNvbG9yfTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIudS1wbGFjZWhvbGRlci1pbWFnZSB7XG5cdGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuXHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXHRvYmplY3QtZml0OiBjb3ZlciAhaW1wb3J0YW50O1xufVxuXG4udS10ZXh0LWFsaWduLWNlbnRlciB7XG5cdHRleHQtYWxpZ246IGNlbnRlciFpbXBvcnRhbnQ7XG59XG5cbi51LWxpc3Qge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRtYXJnaW4tbGVmdDogMDtcbn0iLCIudS12aXN1YWxseS1oaWRkZW4ge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHdpZHRoOiAxcHg7XG5cdGhlaWdodDogMXB4O1xuXHRtYXJnaW46IC0xcHg7XG5cdGJvcmRlcjogMDtcblx0cGFkZGluZzogMDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0Y2xpcC1wYXRoOiBpbnNldCgxMDAlKTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnUtaGlkZGVuIHtcblx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50XG59XG5cbkBpbmNsdWRlIG1xKCRtYXg6IG0pIHtcblx0LnUtaGlkZGVuXFxAcy1kb3duIHtcblx0XHRkaXNwbGF5OiBub25lIWltcG9ydGFudFxuXHR9XG59XG5cbkBpbmNsdWRlIG1xKG0pIHtcblx0LnUtaGlkZGVuXFxAbS11cCB7XG5cdFx0ZGlzcGxheTogbm9uZSFpbXBvcnRhbnRcblx0fVxufVxuXG5AaW5jbHVkZSBtcSgkbWF4OiBsKSB7XG5cdC51LWhpZGRlblxcQG0tZG93biB7XG5cdFx0ZGlzcGxheTogbm9uZSFpbXBvcnRhbnRcblx0fVxufVxuXG5AaW5jbHVkZSBtcShsKSB7XG5cdC51LWhpZGRlblxcQGwtdXAge1xuXHRcdGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50XG5cdH1cbn1cblxuQGluY2x1ZGUgbXEoJG1heDogJGJwLW1heCkge1xuXHQudS1oaWRkZW5cXEBsLWRvd24ge1xuXHRcdGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50XG5cdH1cbn0iLCIvKlxuKiBJZiB5b3UgbmVlZCB0byBtYWtlIGEgcXVpY2sgZml4LCB5b3UgY2FuIGRvIGl0IGhlcmUuXG4qIExhdGVyIHdoZW4geW91IGhhdmUgdGhlIHRpbWUsIHlvdSBjYW4gbW92ZSB0aGUgZml4IGludG8gdGhlIGNvcnJlY3QgcGxhY2UgaW4gdGhlIHN0cnVjdHVyZVxuKi9cblxuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE5vdGhpbmcgaGVyZSB5ZXQsIEdvb2Qgam9iISEiLCJAZm9yICRpIGZyb20gMCB0aHJvdWdoIDEzIHtcblx0Ly8gTWFyZ2luXG5cdC51LXNwYWNpbmctbSN7JGl9ICAgICAgeyBtYXJnaW46IFx0XHRzcGFjZSgkaSkgIWltcG9ydGFudDsgfVxuXHQudS1zcGFjaW5nLW10I3skaX0gICAgIHsgbWFyZ2luLXRvcDogXHRzcGFjZSgkaSkgIWltcG9ydGFudDsgfVxuXHQudS1zcGFjaW5nLW1yI3skaX0gICAgIHsgbWFyZ2luLXJpZ2h0OiBcdHNwYWNlKCRpKSAhaW1wb3J0YW50OyB9XG5cdC51LXNwYWNpbmctbWIjeyRpfSAgICAgeyBtYXJnaW4tYm90dG9tOiBzcGFjZSgkaSkgIWltcG9ydGFudDsgfVxuXHQudS1zcGFjaW5nLW1sI3skaX0gICAgIHsgbWFyZ2luLWxlZnQ6IFx0c3BhY2UoJGkpICFpbXBvcnRhbnQ7IH1cblxuXHQvLyBQYWRkaW5nXG5cdC51LXNwYWNpbmctcCN7JGl9ICAgICAgeyBwYWRkaW5nOiBcdFx0c3BhY2UoJGkpICFpbXBvcnRhbnQ7IH1cblx0LnUtc3BhY2luZy1wdCN7JGl9ICAgICB7IHBhZGRpbmctdG9wOiBcdHNwYWNlKCRpKSAhaW1wb3J0YW50OyB9XG5cdC51LXNwYWNpbmctcHIjeyRpfSAgICAgeyBwYWRkaW5nLXJpZ2h0OiBzcGFjZSgkaSkgIWltcG9ydGFudDsgfVxuXHQudS1zcGFjaW5nLXBiI3skaX0gICAgIHsgcGFkZGluZy1ib3R0b206c3BhY2UoJGkpICFpbXBvcnRhbnQ7IH1cblx0LnUtc3BhY2luZy1wbCN7JGl9ICAgICB7IHBhZGRpbmctbGVmdDogXHRzcGFjZSgkaSkgIWltcG9ydGFudDsgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBUaGlzIGdyaWQgY2FuIGJlIHR1cm5lZCBvbiBhbmQgb2ZmIHdoZW4geW91IHdhbnQgdG8gY2hlY2tcbiAqIGlmIGV2ZXJ5dGhpbmcgaXMgbmljZSBpbiBwbGFjZS5cbiAqIFNldCBmbGFnICdzaG93X2dyaWQnIHRvIHRydWUgaW4gc2l0ZS5waHBcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuJHZnLWxpbmUtY29sb3I6IGhzbGEoMjI3LCA3MCwgNTAsIDAuMik7XG5cbi8vIERvIHNvbWUgY2FsY3VsYXRpb25zIGFuZCBwdXQgdGhlbSBpbiB2YXJpYWJsZXMgZm9yIHJldXNlXG4kdmctY29sdW1uLWNvdW50OiAkc2l0ZS1jb2x1bW5zIC0gMjtcbiR2Zy1jb2x1bW4td2lkdGg6IHBlcmNlbnRhZ2UoMSAvICR2Zy1jb2x1bW4tY291bnQpO1xuXG5cbi51LXZpc2libGUtZ3JpZCB7XG5cdEBpbmNsdWRlIHooei12aXNpYmxlLWdyaWQpO1xuXHRAaW5jbHVkZSBjb250YWluKCk7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0bGVmdDogMDtcblx0cmlnaHQ6IDA7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG5cdEBpbmNsdWRlIG1xKG0sIGwpIHtcblx0XHRwYWRkaW5nOiAwO1xuXHR9XG59XG5cblxuLnUtdmlzaWJsZS1ncmlkX19tYWluIHtcblx0aGVpZ2h0OiAxMDB2aDtcblx0YmFja2dyb3VuZDpcblx0XHRyZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KFxuXHRcdFx0XHR0byByaWdodCxcblx0XHRcdFx0JHZnLWxpbmUtY29sb3IsXG5cdFx0XHRcdCR2Zy1saW5lLWNvbG9yIDFweCxcblx0XHRcdFx0dHJhbnNwYXJlbnQgMXB4LFxuXHRcdFx0XHR0cmFuc3BhcmVudCAkdmctY29sdW1uLXdpZHRoXG5cdFx0KSxcblx0XHRyZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KFxuXHRcdFx0XHR0byBsZWZ0LFxuXHRcdFx0XHQkdmctbGluZS1jb2xvcixcblx0XHRcdFx0JHZnLWxpbmUtY29sb3IgMXB4LFxuXHRcdFx0XHR0cmFuc3BhcmVudCAxcHgsXG5cdFx0XHRcdHRyYW5zcGFyZW50IDEwMHZ3XG5cdFx0KTtcblxuXG59XG4iXSwic291cmNlUm9vdCI6IiJ9*/