File: D:/HostingSpaces/SBogers10/plateau.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)
* because we want to use it in our other setting files
USAGE:
.demo {
color: palette(primary, 500);
}
*/
/* ========================================
Config settings
======================================== */
/*
[1] Logo dark or light can be set in header.blade.php / footer.blade.php &
[2] Set this to true when bgColor gets a dark color that contrast the body bg color
*/
/* ==========================================================
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 only for mobile viewport
USAGE:
.example {
@include vspacing-s(
'margin-top' 1
);
}
*/
/*
* 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-m-up(
'padding-top' 0.33,
'margin-bottom' 0.5
);
}
*/
/*
* From values given return the correct v-spacing for each breakpoint
*/
/**
* 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
*/
/*
* 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
*
* 3. Avoid the IE 10-11 `min-height` bug.
* 4. Use `%` instead of `vh` since `vh` is buggy in older mobile Safari.
*/
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: 1rem;
line-height: 1.5;
position: relative;
line-height: 1.5;
font-family: "Roboto", sans-serif;
margin: 0;
color: #656565;
background: #FFFFFF;
overflow-x: hidden;
display: flex;
flex-direction: column;
height: 100%;
/* 3, 4 */
}
footer {
flex: 1 0 auto;
display: flex;
flex-direction: column;
}
/**
* [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: #4DA6A7;
color: #FFFFFF;
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: #4079B8;
text-decoration: none;
-webkit-text-decoration-skip: ink;
text-decoration-skip-ink: auto;
}
a:not([class])::after {
position: absolute;
top: 100%;
left: 0;
width: 100%;
height: 1px;
background: #4079B8;
content: "";
opacity: 0;
transition: height 0.3s, opacity 0.3s, transform 0.3s;
transform: translateY(-5px);
}
a:not([class]):hover::after {
height: 2px;
opacity: 1;
transform: translateY(0px);
}
h1, h2, h3, h4, h5, h6, hgroup,
ul, ol, dd,
p, figure,
pre, table, fieldset, hr {
margin-top: 0;
margin-bottom: 0;
}
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: 1rem;
line-height: 1.5;
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)
=========================================================== */
/*==========================================================================
* Contain
* ========================================================================== */
.l-contain {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
}
@media screen and (min-width: 840px) {
.l-contain {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 1152px) {
.l-contain {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
/*===============================================================================
* Split layout in 2 equal columns
*
* Until viewport is wide enough the columns are stacked vertically
* ============================================================================== */
.l-split {
position: relative;
background-color: #FFFFFF;
height: 100%;
}
@media screen and (min-width: 840px) {
.l-split {
display: flex;
}
}
/**
* Special contain version for split.
* Doesn't restrain content on medium viewport
*/
.l-split--contain {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
}
@media screen and (min-width: 840px) {
.l-split--contain {
width: 100%;
}
}
@media screen and (min-width: 1152px) {
.l-split--contain {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
@media screen and (min-width: 1152px) {
.l-split__column {
width: 50%;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.l-split__column:first-child {
width: 62.5%;
padding-right: 12.5%;
}
}
@media screen and (min-width: 1152px) {
.l-split__column:first-child {
padding-left: 8.3333333333%;
padding-right: 8.3333333333%;
}
}
@media screen and (max-width: 839px) {
.l-split__column:last-child {
margin-top: 6vw;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.l-split__column:last-child {
width: 37.5%;
}
}
.l-split--is-reversed .l-split__column:first-child {
order: 2;
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.l-split--is-reversed .l-split__column:first-child {
padding-left: 12.5%;
padding-right: 0;
}
}
@media screen and (min-width: 1152px) {
.l-split--is-reversed .l-split__column:first-child {
padding-left: 8.3333333333%;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.l-split--breakout-on-m .l-split__column:first-child {
width: 60%;
padding-left: 10%;
padding-right: 10%;
}
.l-split--breakout-on-m .l-split__column:last-child {
width: 40%;
}
}
/**
* When there is only 1 column, align it to the middle and contain the width
* Only one column is used e.g. in the tabslider when there is no image set
*/
@media screen and (min-width: 840px) {
.l-split__column:only-child {
margin: 0 auto;
width: 75%;
padding-left: 0;
padding-right: 0;
}
}
@media screen and (min-width: 1152px) {
.l-split__column:only-child {
width: 50%;
padding-left: 0 !important;
}
}
.l-split__column--vpad {
margin-top: 40px;
margin-bottom: 40px;
}
@media screen and (min-width: 840px) {
.l-split__column--vpad {
margin-top: 80px;
margin-bottom: 80px;
}
}
@media screen and (min-width: 1152px) {
.l-split__column--leftpad {
padding-left: 8.3333333333%;
}
}
/*==========================================================================
* Restrict
*
* When a block shouldn't take up the whole width of the container
* we can restrict the maximum width
* ========================================================================== */
@media screen and (min-width: 840px) {
.l-restrict-narrow {
margin-left: auto;
margin-right: auto;
width: 75%;
max-width: 38em;
}
}
@media screen and (min-width: 1152px) {
.l-restrict-narrow {
width: 50%;
}
}
@media screen and (min-width: 840px) {
.l-restrict-wide {
margin-left: auto;
margin-right: auto;
width: 87.5%;
}
}
@media screen and (min-width: 1152px) {
.l-restrict-wide {
width: 66.6666666667%;
}
}
/* 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: #1D1D1D;
}
.c-breadcrumb__link {
color: #656565;
text-decoration: none;
}
.c-breadcrumb__item--last .c-breadcrumb__link {
font-weight: bold;
}
.c-button {
border-radius: 8px;
font-size: 0.875rem;
line-height: 1.1428571429;
font-weight: 500;
display: inline-flex;
align-items: center;
justify-content: center;
color: #FFFFFF;
background-color: #4DA6A7;
text-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
border: none;
padding: 16px 0;
text-transform: uppercase;
position: relative;
overflow: hidden;
cursor: pointer;
text-decoration: none;
}
.c-button:focus {
outline: none;
box-shadow: 0 0 0 1px #FFFFFF, 0 0 5px 2px #4DA6A7;
}
.c-button:active:not(:disabled) {
outline: none;
box-shadow: none;
}
.c-button:disabled {
opacity: 0.5;
cursor: not-allowed;
}
.c-button::after {
content: "";
position: absolute;
z-index: 1;
top: calc(50% - 2px);
left: calc(50% - 2px);
width: 4px;
height: 4px;
opacity: 0;
border-radius: 50%;
background: #3e8586;
pointer-events: none;
transition-property: opacity, transform;
transition-duration: 0.5s;
}
.c-button:hover:not(:disabled)::after {
opacity: 1;
transform: scale(100);
}
.c-button__text {
position: relative;
z-index: 2;
padding: 0 24px;
text-align: center;
}
.c-button--icon .c-button__text {
padding-right: 16px;
}
.c-button__icon {
display: none;
position: relative;
z-index: 2;
top: -1px;
margin-right: 15px;
transition: transform 0.3s;
}
.c-button:hover:not(:disabled) .c-button__icon {
transform: translateX(3px);
}
.c-button__icon:first-child {
margin-right: 0;
margin-left: 15px;
}
.c-button--icon .c-button__icon {
display: block;
width: 16px;
}
/* ==========================================================================
* Default button
* ========================================================================== */
.c-ghostbutton {
border-radius: 8px;
font-size: 0.875rem;
line-height: 1.1428571429;
font-weight: 500;
display: inline-flex;
justify-content: center;
align-items: center;
color: #FFFFFF;
background: transparent;
text-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
border: 1px solid currentColor;
padding: 16px 0;
text-transform: uppercase;
position: relative;
cursor: pointer;
text-decoration: none;
}
.c-ghostbutton:focus {
outline: none;
box-shadow: 0 0 4px 2px rgba(255, 255, 255, 0.5);
}
.c-ghostbutton:active:not(:disabled) {
outline: none;
box-shadow: none !important;
}
.c-ghostbutton:disabled {
opacity: 0.5;
cursor: not-allowed;
}
.c-ghostbutton::after {
border-radius: 8px;
border: 1px solid transparent;
background: rgba(0, 0, 0, 0.07);
background-clip: content-box;
content: "";
position: absolute;
top: -1px;
bottom: -1px;
right: -1px;
left: -1px;
transform: scaleX(0);
opacity: 0;
pointer-events: none;
transition-duration: 0.5s;
}
.c-ghostbutton:hover:not(:disabled)::after {
transform: scaleX(1);
opacity: 1;
transition-property: opacity, transform;
transition-duration: 0.35s;
transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.c-ghostbutton__text {
position: relative;
z-index: 2;
padding: 0 24px;
text-align: center;
}
.c-button--icon .c-ghostbutton__text {
padding-right: 16px;
}
.c-ghostbutton__icon {
display: none;
position: relative;
z-index: 2;
top: -1px;
margin-right: 15px;
transition: transform 0.3s;
}
.c-ghostbutton:hover:not(:disabled) .c-ghostbutton__icon {
transform: translateX(3px);
}
.c-ghostbutton--icon .c-ghostbutton__icon {
display: block;
width: 16px;
}
.c-ghostbutton__icon:first-child {
margin-right: 0;
margin-left: 15px;
}
.c-card {
display: flex;
flex-direction: column;
height: 100%;
text-decoration: none;
position: relative;
}
/*
* Card that does some animations on hover
*/
.c-card--has-action {
overflow: hidden;
z-index: 0;
}
.c-card--has-action:hover, .c-card--has-action:active {
outline: none !important;
}
.c-card--has-action::before, .c-card--has-action::after {
content: "";
position: absolute;
z-index: 1;
top: 0;
right: 0;
bottom: 0;
left: 0;
opacity: 0;
pointer-events: none;
}
.c-card--has-action::before {
background-color: rgba(0, 0, 0, 0.92);
background: radial-gradient(rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.92) 100%);
transform: translateX(-135%) rotate(-11deg) scale(1.3);
transform-origin: center;
transition-property: opacity, transform;
transition-duration: 300ms;
transition-delay: 100ms;
transition-timing-function: cubic-bezier(0.45, 0.1, 0.3, 1);
}
.c-card--has-action::after {
z-index: 2;
width: 25px;
margin: auto;
background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%234DA6A7' d='M13.4 6.783H.762A.772.772 0 0 1 0 6c0-.432.341-.783.762-.783H13.4L9.623 1.336a.798.798 0 0 1 0-1.107.747.747 0 0 1 1.077 0l5.077 5.218a.798.798 0 0 1 0 1.106L10.7 11.771a.747.747 0 0 1-1.077 0 .798.798 0 0 1 0-1.107L13.4 6.783z'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: center;
transform: scale(1.75);
transition-property: opacity, transform;
transition-duration: 200ms;
}
.c-card--has-action:hover:before {
opacity: 0.92;
transform: rotate(-11deg) scale(1.3);
transition-duration: 400ms;
transition-delay: 50ms;
}
.c-card--has-action:hover:after {
opacity: 1;
transform: none;
transition-duration: 400ms;
transition-delay: 200ms;
}
.c-card--has-action:focus {
outline-color: #000000;
outline-style: solid;
outline-offset: 1px;
outline-width: 2px;
}
.c-card__picture {
width: 100%;
flex: none;
display: block;
position: relative;
}
.c-card__img {
object-fit: cover;
width: 100%;
height: auto;
}
.c-card__linked-in {
position: absolute;
right: 0;
bottom: 0;
padding: 8px;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
}
.c-card__linked-in-icon {
display: flex;
align-items: center;
border-radius: 4px;
width: 28px;
height: 28px;
background-color: #2767b1;
background-image: url("/img/social/linkedin.svg");
background-size: 18px 18px;
background-repeat: no-repeat;
background-position: center;
box-shadow: 0 0 8px 8px rgba(0, 0, 0, 0.12);
transition: all 150ms ease-in-out;
}
.c-card__linked-in:hover .c-card__linked-in-icon {
background-color: #4DA6A7;
transform: scale(1.1);
}
.c-card__label {
font-size: 0.875rem;
line-height: 1.1428571429;
position: relative;
z-index: 3;
overflow: hidden;
padding: 14px 10px 15px;
text-align: center;
font-weight: medium;
text-transform: uppercase;
color: #FFFFFF;
background-color: #000000;
transition-property: background;
transition-duration: 400ms;
}
.c-card--has-action:hover .c-card__label {
color: #FFFFFF;
}
.c-card__label::before {
content: "";
position: absolute;
z-index: -1;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: #4DA6A7;
pointer-events: none;
transform: translateY(300%) rotate(11deg) scale(1.5, 3);
transform-origin: center;
transition-property: opacity, transform;
transition-duration: 300ms;
transition-delay: 200ms;
transition-timing-function: cubic-bezier(0.45, 0.1, 0.3, 1);
}
.c-card--has-action:hover .c-card__label::before {
opacity: 1;
transform: rotate(5deg) scale(2);
transition-duration: 300ms;
transition-delay: 0ms;
}
.c-card__info {
flex: 1;
display: flex;
flex-direction: column;
padding: 16px 32px;
background-color: #F8F8F8;
}
.c-card__heading {
font-size: 1.125rem;
line-height: 1.7777777778;
color: #1F2883;
}
.c-card__subheading {
color: #999999;
margin-bottom: 4px;
}
.c-card__textline {
color: #999999;
}
*:not(.c-card__textline) + .c-card__textline {
margin-top: 16px;
}
.c-card__actions {
padding-top: 16px;
margin-top: auto;
}
.c-card__link {
font-size: 0.875rem;
line-height: 1.1428571429;
display: block;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
margin-top: auto;
color: #656565;
}
.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 #FFFFFF;
}
.c-close:after, .c-close:before {
content: "";
position: absolute;
top: 20px;
right: 20%;
left: 20%;
height: 3px;
margin-top: -2px;
pointer-events: none;
background: #FFFFFF;
border-radius: 3px;
}
.c-close:before {
transform: rotate(45deg);
}
.c-close:after {
transform: rotate(-45deg);
}
.c-close:hover {
transform: scale(1.2);
}
.c-connect {
display: inline-flex;
flex-direction: column;
align-items: center;
}
@media screen and (min-width: 840px) {
.c-connect {
flex-direction: row;
}
}
.c-connect__phone {
font-size: 1.125rem;
line-height: 1.7777777778;
font-weight: bold;
text-decoration: none;
color: #2C2C2C;
transition: opacity 300ms;
}
.c-connect__phone:hover, .c-connect__phone:active {
outline: none !important;
}
.c-connect__phone:hover {
opacity: 0.7;
text-decoration: underline;
}
.c-connect__phone:focus {
outline-color: currentColor;
outline-style: solid;
outline-offset: 1px;
outline-width: 2px;
}
.c-connect__or {
margin: 0 16px;
color: #656565;
}
@media screen and (max-width: 839px) {
.c-connect__or {
margin: 8px 0 16px;
}
}
.c-data {
margin: 16px 0;
}
.c-data__line {
display: flex;
}
.c-data__label {
min-width: 64px;
font-weight: bold;
color: #2C2C2C;
}
.c-data__value {
color: #656565;
text-decoration: none;
}
.c-data__value[href]:hover, .c-data__value[href]:active {
outline: none !important;
}
.c-data__value[href]:hover {
text-decoration: underline;
}
.c-data__value[href]:focus {
outline-color: currentColor;
outline-style: solid;
outline-offset: 1px;
outline-width: 2px;
}
.c-date-label {
display: inline-block;
padding: 4px 24px;
font-weight: bold;
}
.c-date-label--secondary {
background-color: #4DA6A7;
color: #FFFFFF;
}
.c-date-label__day {
font-size: 1.5rem;
line-height: 1.3333333333;
display: inline-block;
}
.c-date-label__month {
font-size: 1.125rem;
line-height: 1.7777777778;
display: inline-block;
}
.c-download-list {
list-style: none;
padding: 0;
margin: 0;
}
.c-download-list__item {
border-bottom: 1px solid #C8C8C8;
transition: color 0.2s, background-color 0.2s;
}
.c-download-list__item:hover {
background-color: rgba(200, 200, 200, 0.2);
}
.c-download-list__link {
display: flex;
padding: 8px 0;
text-decoration: none;
}
.c-download-list__icon {
display: inline-block;
width: 16px;
}
.c-download-list__icon svg {
width: 100%;
}
.c-download-list__text {
width: calc(100% - 16px);
padding-left: 8px;
}
.c-download-list__item:hover .c-download-list__text {
color: #1D1D1D;
}
.c-event-card {
display: flex;
flex-direction: column;
height: 100%;
text-decoration: none;
position: relative;
overflow: hidden;
z-index: 0;
}
.c-event-card:hover, .c-event-card:active {
outline: none !important;
}
.c-event-card:focus {
outline-color: #4DA6A7;
outline-style: solid;
outline-offset: 1px;
outline-width: 2px;
}
.c-event-card__picture {
width: 100%;
flex: none;
display: block;
position: relative;
}
.c-event-card__picture::before {
content: "";
position: absolute;
z-index: 0;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: rgba(0, 0, 0, 0.6);
opacity: 0;
pointer-events: none;
transition: all 200ms linear;
}
.c-event-card:hover .c-event-card__picture::before {
opacity: 1;
}
.c-event-card__img {
object-fit: cover;
width: 100%;
height: auto;
}
.c-event-card__date {
position: absolute;
z-index: 1;
bottom: 0;
left: 0;
background-color: #4DA6A7;
color: #FFFFFF;
transform-origin: left bottom;
transition: all 200ms linear;
}
.c-event-card:hover .c-event-card__date {
background-color: #4DA6A7;
color: #FFFFFF;
transform: scale(1.05);
}
.c-event-card__info {
flex: 1;
padding: 16px 24px;
background-color: #F8F8F8;
position: relative;
transition: all 200ms linear;
}
.c-event-card:hover .c-event-card__info {
background-color: #4DA6A7;
}
.c-event-card__title {
font-size: 1rem;
line-height: 1.5;
position: relative;
z-index: 2;
font-weight: bold;
color: #2C2C2C;
transition: all 200ms linear;
}
.c-event-card:hover .c-event-card__title {
color: #FFFFFF !important;
}
.c-event-card__subtitle {
font-size: 0.9375rem;
line-height: 1.6;
position: relative;
z-index: 2;
color: #999999;
transition: all 200ms linear;
}
.c-event-card:hover .c-event-card__subtitle {
color: #FFFFFF !important;
}
.c-event-card__type {
font-size: 0.9375rem;
line-height: 1.6;
position: relative;
z-index: 2;
margin-top: 8px;
color: #C8C8C8;
transition: all 200ms linear;
}
.c-event-card:hover .c-event-card__type {
color: #FFFFFF !important;
}
.c-file-upload__main {
position: relative;
}
.c-file-upload__input {
opacity: 0;
position: absolute;
top: 0;
left: 0;
}
.c-file-upload__button {
border-radius: 8px;
font-size: 0.875rem;
line-height: 1.1428571429;
font-weight: 500;
display: inline-flex;
align-items: center;
justify-content: center;
color: #1D1D1D;
background-color: #FFFFFF;
border: 1px solid #656565;
margin-right: 8px;
padding: 16px 24px;
text-transform: uppercase;
position: relative;
overflow: hidden;
cursor: pointer;
text-decoration: none;
transition: all 150ms;
}
.c-file-upload__button::after {
content: "";
background-image: url(/img/add.svg);
background-repeat: no-repeat;
width: 16px;
height: 16px;
margin-left: 16px;
}
.c-file-upload__button:hover {
opacity: 0.7;
}
.c-file-upload__list {
margin-left: 0;
margin-bottom: 24px;
list-style: none;
overflow: hidden;
}
.c-file-upload__list > li {
display: flex;
justify-content: flex-start;
align-items: center;
border-bottom: 1px solid #C8C8C8;
padding: 4px 0;
animation: expand 0.5s ease-in-out;
}
.c-file-upload__list > li::before {
content: "";
display: flex;
align-items: center;
justify-content: center;
width: 16px;
height: 16px;
margin-right: 8px;
background: url("/img/file.svg") no-repeat;
}
.c-file-upload__list > li > button {
font-size: 24px;
line-height: 16px;
color: #000000;
margin-left: auto;
border: none;
background-color: transparent;
cursor: pointer;
outline: none;
transition: color 150ms linear;
}
.c-file-upload__list > li > button:hover {
color: red;
}
.c-file-upload__list > li > button::before {
content: "\D7";
}
.c-file-upload__note {
color: #999999;
}
@keyframes expand {
from {
transform: translateX(-100%);
transform-origin: top;
opacity: 0;
background: #4079B8;
}
}
.c-form-group__label {
font-size: 0.9375rem;
line-height: 1.6;
display: block;
padding: 4px 0;
color: #999999;
}
.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: #4079B8;
background-color: rgba(64, 121, 184, 0.1);
border: 1px solid #4079B8;
border-top: none;
border-radius: 0 0 4px 4px;
}
.c-form-feedback {
font-size: 0.9375rem;
line-height: 1.6;
border-radius: 4px;
margin: 0 0 8px;
padding: 24px 32px;
color: #2C2C2C;
background-color: rgba(255, 211, 58, 0.2);
border: 1px solid #ffd33a;
}
.c-form-feedback:not(:empty) {
display: block;
}
.c-form-feedback:before {
content: attr(data-feedback);
display: inline-block;
margin-left: -16px;
margin-bottom: 8px;
font-weight: 500;
}
.c-form-feedback li::first-letter {
text-transform: uppercase;
}
.c-hamburger {
display: flex;
justify-content: center;
align-items: center;
align-self: center;
position: relative;
width: 40px;
height: 40px;
padding: 0;
color: #EDEDED;
background: none;
border: none;
outline: none;
cursor: pointer;
}
.c-hamburger:focus {
outline-color: currentColor;
outline-style: solid;
outline-offset: 1px;
outline-width: 2px;
}
.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: 0s;
}
.is-overlay-menu-active .c-hamburger:after {
transform: translateY(-3px) scaleX(1) !important;
transition-delay: 0s;
}
.c-heading {
font-size: 2rem;
line-height: 1.25;
margin: 40px 0;
color: #2C2C2C;
}
@media screen and (min-width: 1152px) {
.c-heading--indent {
padding-left: 8.3333333333%;
}
}
@media screen and (min-width: 840px) {
.c-hero {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
}
}
@media screen and (min-width: 840px) and (min-width: 840px) {
.c-hero {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 840px) and (min-width: 1152px) {
.c-hero {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
.c-hero__main {
position: relative;
background-color: #FFFFFF;
}
.c-hero__slider {
overflow: hidden;
position: relative;
padding-bottom: 55.556%;
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.c-hero__slider {
padding-bottom: 50%;
}
}
.c-hero__picture {
position: absolute;
top: 0;
left: 0;
opacity: 0;
transition-property: opacity, filter;
transition-duration: 500ms;
transition-timing-function: linear;
filter: blur(5px);
}
.c-hero__picture.is-active {
opacity: 1;
transform: translateY(0) scale(1);
filter: none;
}
.c-hero__image {
width: 100%;
}
.c-hero__caption {
font-size: calc(16px + 1vw);
font-weight: bold;
position: relative;
padding: 24px;
line-height: 1.2;
text-align: center;
color: #FFFFFF;
background-color: rgba(29, 29, 29, 0.6);
}
@media screen and (min-width: 840px) {
.c-hero__caption {
position: absolute;
bottom: 0;
max-width: 50%;
padding: 32px;
text-align: left;
}
.c-hero__caption::before {
content: "";
position: absolute;
z-index: -1;
top: 0;
bottom: 0;
right: -100vw;
left: -100vw;
height: 100%;
background-color: #3D93D0;
}
}
@media screen and (min-width: 840px) and (max-width: 1343px) {
.c-hero__caption {
padding: 2.6vw;
font-size: 3vw;
line-height: 1.2;
}
}
@media screen and (min-width: 1344px) {
.c-hero__caption {
font-size: 2.5rem;
line-height: 1;
line-height: 1.25;
padding-left: 4.1666666667%;
}
}
.c-hero__controls {
position: absolute;
bottom: 0;
right: 0;
width: 100%;
padding: 8px;
}
.c-hero__controls::before {
content: "";
position: absolute;
bottom: 0;
left: 0;
height: 48px;
width: 100%;
background: linear-gradient(to top, black, transparent);
opacity: 0.3;
}
.c-hero__scroll {
display: flex;
justify-content: center;
align-items: center;
position: absolute;
bottom: 0;
left: 50%;
width: 40px;
height: 40px;
padding: 10px;
color: #FFFFFF;
background-color: #4DA6A7;
border-radius: 100%;
transform: translate(-50%, 50%) rotate(0.25turn);
transition: background-color 200ms;
}
@media screen and (max-width: 839px) {
.c-hero__scroll {
display: none;
}
}
.c-hero__scroll > svg {
transition: transform 200ms;
}
.c-hero__scroll:hover {
cursor: pointer;
background: #418d8e;
}
.c-hero__scroll:hover > svg {
transform: translateX(3px);
}
.c-hero__scroll:focus {
outline: none;
background: #459596;
box-shadow: 0 0 0 3px #c8e5e6;
}
.c-info {
border-radius: 4px;
font-weight: bold;
padding: 12px 16px;
color: #3ecf8e;
background-color: rgba(62, 207, 142, 0.1);
border: 1px solid #3ecf8e;
}
.c-input {
font-size: 0.9375rem;
line-height: 1.6;
width: 100%;
padding: 7px 16px;
color: #2C2C2C;
background-color: #FFFFFF;
border: 1px solid #C8C8C8;
outline: none;
}
.has-error .c-input {
box-shadow: 0 0 7px -3px #ffd33a;
border-color: #ffd33a;
background-color: rgba(255, 211, 58, 0.05);
}
.c-input:focus {
box-shadow: 0 0 7px -3px #1D1D1D;
border-color: #1D1D1D;
}
textarea.c-input {
display: block;
padding: 16px;
min-height: 158px;
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: rgba(237, 237, 237, 0.5);
border: none;
-webkit-appearance: none;
appearance: none;
transition: background-color 0.15s, box-shadow 0.15s;
}
.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(0, 0, 0, 0.15);
pointer-events: none;
transform: translate3d(0, -5px, 0);
transition: opacity 0.3s, transform 0.3s;
}
.c-language:hover .c-language__dropdown {
opacity: 1;
pointer-events: all;
transform: translate3d(0, 0, 0);
}
.c-language__item {
background-color: #FFFFFF;
overflow: hidden;
}
.c-language__item:nth-child(even) {
background-color: #f2f2f2;
}
.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: #656565;
transition: background-color 0.3s;
}
.c-language__link:hover {
color: #FFFFFF;
background-color: #4DA6A7;
}
/*
Colors get defined in _settings.config.scss
*/
.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: 1rem;
line-height: 1.5;
white-space: nowrap;
margin-right: 2%;
}
.c-nav__item:last-child {
margin-right: 0;
}
.c-nav__link {
position: relative;
padding: 4px;
color: #EDEDED;
text-decoration: none;
transition: color 150ms linear;
}
.c-nav__link:hover, .c-nav__link:active {
outline: none !important;
}
.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: #4DA6A7;
transform: scaleX(0);
transform-origin: bottom right;
transition: transform 300ms cubic-bezier(0.86, 0, 0.07, 1);
}
.c-nav__link:hover {
color: #EDEDED;
}
.c-nav__link:hover::before {
transform: scaleX(1);
transform-origin: bottom left;
}
.c-nav__link.is-active {
font-weight: 500;
color: #FFFFFF;
}
.c-nav__link.is-active::before {
transform: scaleX(1);
transform-origin: bottom left;
background-color: #EDEDED;
}
.c-nav__link:focus {
outline-color: currentColor;
outline-style: solid;
outline-offset: 1px;
outline-width: 2px;
}
.c-pagination {
display: inline-flex;
justify-content: center;
align-items: center;
border-radius: 8px;
border: 1px solid #C8C8C8;
list-style: none;
margin-left: 0;
overflow: hidden;
}
.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: #2C2C2C;
opacity: 0.35;
}
.c-pagination__link {
color: #2C2C2C;
text-decoration: none;
transition: color 0.2s, background-color 0.2s;
}
.c-pagination__link:hover {
color: #1f1f1f;
background: #F8F8F8;
}
.is-active > .c-pagination__link {
box-shadow: inset 0 0 10px -5px #3D93D0;
font-weight: bold;
color: #3D93D0;
cursor: default;
}
.c-pagination__prev,
.c-pagination__next {
transition: background 0.2s;
transform: rotate(0.75turn);
}
.c-pagination__prev.is-inactive,
.c-pagination__next.is-inactive {
color: rgba(44, 44, 44, 0.4);
background: transparent;
}
.c-pagination__prev {
transform: rotate(0.25turn);
}
/*
* Page title
*/
.c-page-title {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
overflow-wrap: break-word;
word-wrap: break-word;
-webkit-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
padding-top: 16px;
padding-bottom: 16px;
color: #2C2C2C;
}
@media screen and (min-width: 840px) {
.c-page-title {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 1152px) {
.c-page-title {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
@media screen and (min-width: 840px) {
.c-page-title {
padding-top: 48px;
padding-bottom: 48px;
}
}
.c-page-title--center {
text-align: center;
margin-left: auto;
margin-right: auto;
}
@media screen and (min-width: 840px) {
.c-page-title--center {
width: 75%;
}
}
@media screen and (min-width: 1152px) {
.c-page-title--center {
width: 66.6666666667%;
}
}
@media screen and (min-width: 840px) {
.c-page-title__preheading {
margin-top: -8px;
margin-bottom: 8px;
}
}
.c-page-title__heading {
font-size: 2.5rem;
line-height: 1;
line-height: 1.3;
}
.c-page-title__heading-small {
font-size: 1.25rem;
line-height: 1.6;
display: block;
}
.c-page-title__subheading {
font-size: 1rem;
line-height: 1.5;
color: #999999;
}
.c-projector {
position: relative;
height: 100%;
}
.c-projector__figure {
display: -ms-grid;
display: grid;
-ms-grid-rows: 1fr;
grid-template-rows: 1fr;
-ms-grid-columns: 1fr;
grid-template-columns: 1fr;
height: 100%;
}
.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: #999999;
}
.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%;
min-height: 360px;
display: block;
background-color: #F8F8F8;
opacity: 0;
transition: opacity 0.5s;
}
.ie .c-projector--single-image .c-projector__picture {
min-height: 400px;
}
.c-projector__picture.is-active {
opacity: 1;
}
.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-projector__img {
width: 100%;
height: 100%;
object-fit: cover;
}
@media screen and (max-width: 839px) {
.c-projector__img {
max-height: 78vh;
}
}
.c-servicepoint {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: flex-start;
text-align: left;
}
.c-servicepoint__image {
flex: 0;
min-width: auto;
max-width: 194px;
margin-right: 16px;
border-radius: 100%;
}
.c-servicepoint__content {
overflow-wrap: break-word;
word-wrap: break-word;
-webkit-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
min-width: 50%;
max-width: 100%;
flex-grow: 1;
flex-basis: calc(calc(420px - 100%) * 999);
margin-top: 16px;
margin-bottom: 16px;
}
@media screen and (min-width: 1152px) {
.c-servicepoint__content {
flex-basis: auto;
}
}
.c-servicepoint__body {
margin-top: 8px;
}
.c-servicepoint__footer {
margin-top: 8px;
}
.c-servicepoint__heading {
font-size: 1rem;
line-height: 1.5;
color: #656565;
border-radius: 100%;
}
.c-servicepoint__subheading {
font-size: 0.9375rem;
line-height: 1.6;
color: #999999;
}
.c-sitemap__item {
font-size: 1.5rem;
line-height: 1.3333333333;
color: #656565;
}
.c-sitemap__link {
display: block;
padding: 4px 0;
text-decoration: none;
}
.c-sitemap__link:hover {
color: #3D93D0;
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: #4079B8;
text-decoration: none;
}
.c-skip-link:focus {
outline-color: currentColor;
outline-style: solid;
outline-offset: 1px;
outline-width: 2px;
top: 5px;
/* Now the link will appear */
}
.c-slide-indicator {
display: flex;
justify-content: flex-end;
align-items: center;
}
.c-slide-indicator__button {
position: relative;
border: none;
background-color: #4DA6A7;
color: #FFFFFF;
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: #459596;
}
.c-slide-indicator__button:focus {
outline: none;
background-color: #459596;
}
.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: 0.3s;
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: #FFFFFF;
}
.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 #FFFFFF;
transform: scale(1.4);
opacity: 0;
}
.c-slide-indicator__dot.is-active:before {
background-color: #000000;
border-color: rgba(255, 255, 255, 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-subnav {
height: 100%;
}
.c-subnav--boxed {
background-color: #F8F8F8;
padding: 80px 6vw;
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.c-subnav--boxed {
padding-left: 25%;
}
}
.c-subnav__header {
margin: 0;
}
.c-subnav__list {
margin-top: 40px;
list-style-type: none;
margin-left: 0;
}
.c-subnav__item--back {
margin-top: 24px;
}
.c-subnav__link {
position: relative;
display: flex;
padding: 8px 0;
color: #656565;
text-decoration: none;
cursor: pointer;
transition: color 250ms;
}
.c-subnav__link:hover, .c-subnav__link:active {
outline: none !important;
}
.c-subnav__link:hover {
color: #4079B8;
}
.c-subnav__link:focus {
outline-color: currentColor;
outline-style: solid;
outline-offset: 1px;
outline-width: 2px;
}
.c-subnav__link::before {
content: "";
display: block;
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 100%;
border-bottom: 1px solid #C8C8C8;
}
.c-subnav__item.is-active .c-subnav__link::before {
border-color: #3D93D0;
border-width: 2px;
}
.c-subnav__icon {
opacity: 0;
align-items: center;
margin-left: 16px;
color: #C8C8C8;
transform: translateX(-16px);
transition: all 250ms ease-out;
}
.c-subnav__link:hover .c-subnav__icon {
opacity: 1;
transform: none;
color: #4079B8;
}
.c-subnav__item.is-active .c-subnav__link {
color: #3D93D0;
font-weight: bold;
}
.c-subnav__item.is-active .c-subnav__link::before {
border-color: #3D93D0;
border-width: 2px;
}
.c-subnav__item.is-active .c-subnav__icon {
opacity: 0;
}
/**
* 1. Color gets inherited and used for nested elements with 'currentColor' property
* 2. Reset default button styling
*/
.c-textbutton {
display: inline-flex;
justify-content: center;
align-items: center;
color: #4079B8;
/* 1 */
padding: 0;
/* 2 */
background-color: transparent;
/* 2 */
border: none;
/* 2 */
cursor: pointer;
text-decoration: none;
transition: color 0.3s;
}
.c-textbutton:hover, .c-textbutton:active {
outline: none !important;
}
.c-textbutton:hover:not(:disabled) {
color: #26496e;
}
.c-textbutton:disabled {
opacity: 0.5;
cursor: not-allowed;
}
.c-textbutton:focus {
outline-color: currentColor;
outline-style: solid;
outline-offset: 1px;
outline-width: 2px;
}
.c-textbutton__text {
font-size: 1rem;
line-height: 1.5;
}
.c-textbutton__icon {
display: none;
position: relative;
margin-left: 8px;
transition: transform 0.3s;
}
.c-textbutton:hover:not(:disabled) .c-textbutton__icon {
transform: translateX(3px);
}
.c-textbutton--icon .c-textbutton__icon {
display: block;
}
.c-textbutton--is-reversed .c-textbutton__text {
order: 2;
}
.c-textbutton--is-reversed .c-textbutton__icon {
order: 1;
top: 1px;
margin-left: 0;
margin-right: 8px;
transform: rotate(0.5turn);
}
.c-textbutton--is-reversed:hover:not(:disabled) .c-textbutton__icon {
transform: rotate(0.5turn) translateX(3px);
}
.c-toggle {
list-style: none;
margin-left: 0;
}
.c-toggle__item {
border-radius: 8px;
border: 1px solid #C8C8C8;
}
.c-toggle__item + .c-toggle__item {
margin-top: 16px;
}
.c-toggle__title {
position: relative;
padding-left: 96px;
}
.c-toggle__title[data-toggle-id] {
cursor: pointer;
}
.c-toggle__icon {
position: absolute;
top: 18px;
left: calc(48px);
width: 20px;
height: 20px;
align-items: center;
justify-content: center;
border-radius: 50%;
color: #1F2883;
border: 2px solid currentColor;
transform: translateX(-50%);
transition: all 150ms linear;
}
.c-toggle__icon > svg {
width: 10px;
}
.c-toggle__icon.plus {
display: flex;
}
.c-toggle__title.is-active .c-toggle__icon.plus {
display: none;
}
.c-toggle__title.is-active .c-toggle__icon.minus {
display: flex;
}
.c-toggle__icon.check {
display: flex;
border: none;
}
.c-toggle__icon.check > svg {
width: 24px;
}
.c-toggle__title[data-toggle-id]:not(.is-active):hover .c-toggle__icon {
color: #1D1D1D;
}
.c-toggle__label {
font-size: 1rem;
line-height: 1.5;
display: flex;
padding: 16px 0;
font-weight: bold;
color: #1F2883;
transition: all 150ms linear;
}
.c-toggle__title[data-toggle-id]:not(.is-active):hover .c-toggle__label {
color: #1D1D1D;
}
.c-toggle__content {
max-height: 0;
opacity: 0;
padding-left: 96px;
padding-right: 48px;
pointer-events: none;
transition: all 250ms ease-in-out;
}
.is-active ~ .c-toggle__content {
padding-bottom: 16px;
max-height: 1000px;
opacity: 1;
pointer-events: all;
}
.c-trademark {
display: inline-flex;
justify-content: center;
align-items: center;
text-decoration: none;
transition: color 200ms;
}
.c-trademark:hover, .c-trademark:active {
outline: none !important;
}
.c-trademark:hover {
color: #FFFFFF;
}
.c-trademark:focus {
outline-color: currentColor;
outline-style: solid;
outline-offset: 1px;
outline-width: 2px;
}
.c-trademark__text {
margin-right: 7px;
white-space: nowrap;
}
.c-trademark__icon {
width: 100px;
max-height: 32px;
opacity: 0.5;
transition: opacity 200ms;
transform: translateY(-1px);
}
.c-trademark:hover .c-trademark__icon {
opacity: 1;
}
.c-vacancy-properties {
list-style: none;
display: flex;
flex-wrap: wrap;
margin-left: 0;
}
.c-vacancy-properties__item {
display: flex;
align-items: center;
color: #4079B8;
margin-top: 4px;
margin-bottom: 4px;
}
.c-vacancy-properties__item:nth-last-child(n+2) {
margin-right: 32px;
}
.c-vacancy-properties__icon {
display: flex;
align-items: center;
width: 24px;
height: 24px;
margin-right: 8px;
}
.c-video {
position: relative;
height: 0;
width: 100%;
padding-bottom: 56.25%;
background-color: #EDEDED;
}
.c-video__iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
/* 6 - ORGANISMS
* Large blocks composed of multiple components.
=========================================================== */
/** ==========================================================================
* Organisms
* =========================================================================*/
.o-accordion {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
}
@media screen and (min-width: 840px) {
.o-accordion {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 1152px) {
.o-accordion {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
.o-accordion__item {
border-radius: 8px;
position: relative;
overflow: hidden;
border-style: solid;
border-width: 1px;
border-color: #C8C8C8;
transition-property: border;
transition-duration: 250ms;
}
.o-accordion__item + .o-accordion__item {
margin-top: 16px;
}
.o-accordion__item:not(.is-active):hover {
border-color: #3D93D0;
}
.o-accordion__title {
display: flex;
justify-content: flex-start;
align-items: center;
padding-top: 16px;
padding-right: 24px;
padding-bottom: 16px;
padding-left: 48px;
color: #000000;
cursor: pointer;
}
@media screen and (min-width: 840px) {
.o-accordion__title {
padding-left: 12.5%;
}
}
@media screen and (min-width: 1152px) {
.o-accordion__title {
padding-left: 8.3333333333%;
}
}
.o-accordion__item:not(.is-active) .o-accordion__title:hover {
color: #3D93D0;
}
.o-accordion__icon {
flex: 0 0 auto;
position: absolute;
top: auto;
left: 14px;
width: 20px;
height: 20px;
color: inherit;
border-color: currentColor;
border-width: 2px;
border-style: solid;
border-radius: 100%;
transition-property: color;
transition-duration: 250ms;
transition-timing-function: ease;
}
@media screen and (min-width: 840px) {
.o-accordion__icon {
left: calc(6.25% - 10px);
}
}
@media screen and (min-width: 1152px) {
.o-accordion__icon {
left: calc(4.1666666667% - 10px);
}
}
.o-accordion__icon::before, .o-accordion__icon::after {
content: "";
display: block;
position: absolute;
height: 2px;
width: 10px;
left: 3px;
top: calc(50% - 1px);
background-color: currentColor;
transition-property: background-color, transform;
transition-duration: 250ms, 400ms;
transition-timing-function: ease, cubic-bezier(0.86, 0, 0.07, 1);
}
.o-accordion__item.is-active .o-accordion__icon::before {
transform: scaleX(0) rotate(0.25turn);
}
.o-accordion__icon::after {
transform: rotate(0.25turn);
}
.o-accordion__item.is-active .o-accordion__icon::after {
transform: rotate(0.5turn);
}
.o-accordion__header {
font-size: 1rem;
line-height: 1.5;
font-weight: 500;
color: inherit;
text-decoration: inherit;
transition-property: color;
transition-duration: 250ms;
transition-timing-function: ease;
}
@media screen and (min-width: 840px) {
.o-accordion__header {
font-size: 1.5rem;
line-height: 1.3333333333;
}
}
/* Hidden by default*/
.o-accordion__content {
opacity: 0;
max-height: 0;
overflow: hidden;
padding-left: 48px;
padding-right: 24px;
transform: translateY(6px);
transition: all 0.2s ease-in-out;
}
.o-accordion__content > * + * {
margin-top: 1.5rem;
}
@media screen and (min-width: 840px) {
.o-accordion__content {
padding-left: 12.5%;
}
}
@media screen and (min-width: 1152px) {
.o-accordion__content {
padding-left: 8.3333333333%;
}
}
.o-accordion__item.is-active .o-accordion__content {
opacity: 1;
max-height: 400px;
padding-bottom: 32px;
transform: none;
transition-property: all;
transition-duration: 400ms;
transition-timing-function: ease-out;
transition-delay: 0.2s;
}
@media screen and (max-width: 839px) {
.o-apply {
padding-top: 6vw;
padding-bottom: 12vw;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.o-apply {
padding-top: 5vw;
padding-bottom: 10vw;
}
}
@media screen and (min-width: 1152px) and (max-width: 1343px) {
.o-apply {
padding-top: 3.5714285714vw;
padding-bottom: 7.1428571429vw;
}
}
@media screen and (min-width: 1344px) {
.o-apply {
padding-top: 48px;
padding-bottom: 96px;
}
}
.o-apply__heading {
padding-bottom: 48px;
color: #1D1D1D;
}
@media screen and (min-width: 700px) {
.o-apply__body {
display: flex;
}
}
@media screen and (min-width: 700px) {
.o-apply__left {
width: calc(50% + 48px);
padding-right: 48px;
}
}
.o-apply__right {
margin-top: 16px;
}
@media screen and (min-width: 700px) {
.o-apply__right {
width: 50%;
margin-top: 0;
}
}
.o-apply__row + .o-apply__row {
margin-top: 16px;
}
@media screen and (min-width: 700px) {
.o-apply__fileupload {
margin-top: 40px;
}
}
.o-apply__footer {
border-top: 1px solid #C8C8C8;
margin-top: 48px;
padding-top: 48px;
text-align: center;
}
.o-apply__feedback {
margin-top: 32px;
}
@media screen and (max-width: 839px) {
.o-block {
margin-bottom: 12vw;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.o-block {
margin-bottom: 10vw;
}
}
@media screen and (min-width: 1152px) and (max-width: 1343px) {
.o-block {
margin-bottom: 7.1428571429vw;
}
}
@media screen and (min-width: 1344px) {
.o-block {
margin-bottom: 96px;
}
}
@media screen and (max-width: 839px) {
.o-block + .o-block {
margin-top: 12vw;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.o-block + .o-block {
margin-top: 10vw;
}
}
@media screen and (min-width: 1152px) and (max-width: 1343px) {
.o-block + .o-block {
margin-top: 7.1428571429vw;
}
}
@media screen and (min-width: 1344px) {
.o-block + .o-block {
margin-top: 96px;
}
}
/*
* Wrapper of the main body
* (between the header and the footer)
*/
.o-body {
z-index: 40;
position: relative;
flex: 0 0 auto;
}
.o-callout-bar {
overflow-wrap: break-word;
word-wrap: break-word;
-webkit-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
color: #2C2C2C;
background-color: #F8F8F8;
text-align: center;
}
.o-callout-bar__main {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
}
@media screen and (min-width: 840px) {
.o-callout-bar__main {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 1152px) {
.o-callout-bar__main {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
@media screen and (max-width: 839px) {
.o-callout-bar__main {
padding-top: 12vw;
padding-bottom: 12vw;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.o-callout-bar__main {
padding-top: 10vw;
padding-bottom: 10vw;
}
}
@media screen and (min-width: 1152px) and (max-width: 1343px) {
.o-callout-bar__main {
padding-top: 7.1428571429vw;
padding-bottom: 7.1428571429vw;
}
}
@media screen and (min-width: 1344px) {
.o-callout-bar__main {
padding-top: 96px;
padding-bottom: 96px;
}
}
@media screen and (max-width: 839px) {
.o-callout-bar__main > * + * {
margin-top: 6vw;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.o-callout-bar__main > * + * {
margin-top: 5vw;
}
}
@media screen and (min-width: 1152px) and (max-width: 1343px) {
.o-callout-bar__main > * + * {
margin-top: 3.5714285714vw;
}
}
@media screen and (min-width: 1344px) {
.o-callout-bar__main > * + * {
margin-top: 48px;
}
}
.o-callout-bar__body {
display: inline-block;
}
.o-callout-bar__heading {
font-size: 2rem;
line-height: 1.25;
}
/*
* Card grid
*
*/
@media screen and (min-width: 600px) {
.o-card-grid__main {
display: flex;
flex-wrap: wrap;
}
}
@media screen and (max-width: 599px) {
.o-card-grid__item + .o-card-grid__item {
margin-top: 32px;
}
}
@media screen and (max-width: 599px) {
.o-card-grid__item {
max-width: 344px;
margin: 0 auto;
}
}
@media screen and (min-width: 600px) and (max-width: 1151px) {
.o-card-grid__item {
flex: 0;
flex-basis: calc(50% - ((2 - 1) / 2 * 32px));
margin-left: 32px;
}
.o-card-grid__item:nth-child(2n+1) {
margin-left: 0;
}
.o-card-grid__item:nth-child(n+3) {
margin-top: 32px;
}
}
@media screen and (min-width: 1152px) {
.o-card-grid__item {
flex: 0;
flex-basis: calc(33.3333333333% - ((3 - 1) / 3 * 32px));
margin-left: 32px;
}
.o-card-grid__item:nth-child(3n+1) {
margin-left: 0;
}
.o-card-grid__item:nth-child(n+4) {
margin-top: 32px;
}
}
.o-contact {
background-color: #FFFFFF;
position: relative;
}
@media screen and (min-width: 1040px) {
.o-contact {
display: flex;
width: calc((100% / 14) * 12);
max-width: 1152px;
margin-left: auto;
margin-right: auto;
}
}
.o-contact__info {
padding-top: 32px;
padding-left: 6vw;
padding-right: 6vw;
}
@media screen and (min-width: 840px) {
.o-contact__info {
padding-left: 10%;
padding-right: 10%;
}
}
@media screen and (min-width: 1152px) {
.o-contact__info {
padding-left: 7.1428571429%;
padding-right: 7.1428571429%;
}
}
@media screen and (min-width: 1040px) {
.o-contact__info {
width: 50%;
padding-top: 48px;
padding-bottom: 48px;
padding-right: 8px;
}
}
.o-contact__form {
margin-top: 32px;
padding: 32px 6vw;
background-color: #F8F8F8;
}
@media screen and (min-width: 840px) {
.o-contact__form {
padding-left: 10%;
padding-right: 10%;
}
}
@media screen and (min-width: 1152px) {
.o-contact__form {
padding-left: 7.1428571429%;
padding-right: 7.1428571429%;
}
}
@media screen and (min-width: 1040px) {
.o-contact__form {
width: 50%;
margin-top: 0;
padding-top: 48px;
}
}
.o-contact__header {
overflow-wrap: break-word;
word-wrap: break-word;
-webkit-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
font-size: 2rem;
line-height: 1.25;
margin-bottom: 32px;
color: #2C2C2C;
}
.o-contact__card {
margin-bottom: 40px;
}
.o-contact__address {
margin-top: 24px;
}
.o-contact__numbers {
margin-top: 16px;
}
.o-cookie-bar {
z-index: -1;
display: none;
position: fixed;
bottom: 0;
left: 0;
height: 64px;
width: 100%;
background-color: #1D1D1D;
opacity: 1;
box-shadow: 0 -4px 6px 0 rgba(0, 0, 0, 0.2);
transition: opacity 0.5s, transform 0.6s;
transform: none;
}
.o-cookie-bar:not(.is-accepted) {
z-index: 9999;
display: flex;
justify-content: flex-start;
align-items: center;
}
.o-cookie-bar.is-transitioning-out {
z-index: -1;
opacity: 0;
transform: translateY(50%);
}
.o-cookie-bar__main {
display: flex;
justify-content: center;
align-items: center;
}
@media screen and (max-width: 373px) {
.o-cookie-bar__main {
transform: scale(0.9);
}
}
.o-cookie-bar__text {
margin: 0;
color: #999999;
}
@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 0.3s;
}
.o-cookie-bar__link:hover {
color: rgba(153, 153, 153, 0.75);
}
.o-cookie-bar__button {
flex: none;
margin-left: 40px;
}
@media screen and (max-width: 839px) {
.o-cookie-bar__button {
margin-left: 16px;
}
}
/*===============================================================================
* Double image in 2 equal columns
*
* Until viewport is wide enough the pictures are stacked vertically
* ============================================================================== */
.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;
min-height: 360px;
}
@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;
}
/*===============================================================================
* Double layout in 2 equal columns
*
* Until viewport is wide enough the columns are stacked vertically
* ============================================================================== */
.o-double-text {
position: relative;
background-color: #FFFFFF;
height: 100%;
}
@media screen and (min-width: 840px) {
.o-double-text {
display: flex;
}
}
@media screen and (min-width: 1152px) {
.o-double-text__column {
width: 50%;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.o-double-text__column:first-child {
width: 62.5%;
padding-right: 12.5%;
}
}
@media screen and (min-width: 1152px) {
.o-double-text__column:first-child {
padding-left: 8.3333333333%;
}
}
@media screen and (max-width: 839px) {
.o-double-text__column:last-child {
margin-top: 6vw;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.o-double-text__column:last-child {
width: 37.5%;
}
}
@media screen and (min-width: 1152px) {
.o-double-text__column:last-child {
padding-left: 8.3333333333%;
padding-right: 8.3333333333%;
}
}
@media screen and (max-width: 1151px) {
.o-double-usp {
background-color: #3D93D0;
}
}
.o-double-usp__main {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
padding-top: 48px;
padding-bottom: 48px;
}
@media screen and (min-width: 840px) {
.o-double-usp__main {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 1152px) {
.o-double-usp__main {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
@media screen and (min-width: 840px) {
.o-double-usp__main {
display: flex;
}
}
@media screen and (max-width: 839px) {
.o-double-usp__left {
margin-bottom: 48px;
}
}
@media screen and (min-width: 840px) {
.o-double-usp__left {
width: 58.3333333333%;
padding-right: 8.3333333333%;
}
}
@media screen and (min-width: 840px) {
.o-double-usp__right {
width: 50%;
}
}
.o-double-usp__heading {
font-size: 2rem;
line-height: 1.25;
margin-bottom: 24px;
color: #FFFFFF;
}
.o-double-usp__list {
list-style-type: none;
margin-left: 16px;
}
.o-double-usp__item {
position: relative;
padding-left: 16px;
color: #FFFFFF;
}
.o-double-usp__item + .o-double-usp__item {
margin-top: 16px;
}
.o-double-usp__item::before {
content: "";
position: absolute;
top: 5px;
left: -16px;
width: 16px;
height: 12px;
background-image: url(/img/check/checked.svg);
background-size: 16px 12px;
}
@media screen and (min-width: 840px) {
.o-downloads {
display: flex;
justify-content: space-between;
}
}
@media screen and (min-width: 840px) {
.o-downloads--is-reversed {
flex-direction: row-reverse;
}
}
.o-downloads__main {
background-color: #FFFFFF;
padding-top: 40px;
padding-bottom: 72px;
}
@media screen and (min-width: 840px) {
.o-downloads__main {
width: 50%;
}
}
@media screen and (max-width: 1151px) {
.o-downloads__main {
padding-left: 6.25%;
padding-right: 6.25%;
}
}
@media screen and (min-width: 1152px) {
.o-downloads__main {
padding-left: 8.3333333333%;
padding-right: 8.3333333333%;
}
}
.o-downloads__main .c-heading {
margin-top: 0;
}
@media screen and (max-width: 839px) {
.o-downloads__service-point {
margin-top: 80px;
}
}
@media screen and (min-width: 840px) {
.o-downloads__service-point {
margin-top: 40px;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.o-downloads__service-point {
width: 37.5%;
}
}
@media screen and (min-width: 1152px) {
.o-downloads__service-point {
width: 41.6666666667%;
}
}
.o-event {
display: -ms-grid;
display: grid;
grid-row-gap: 64px;
-ms-grid-columns: 1fr;
grid-template-columns: 1fr;
-ms-grid-rows: auto 64px auto;
grid-template-rows: repeat(2, auto);
grid-template-areas: "data" "form";
}
.o-event__data {
-ms-grid-row: 1;
-ms-grid-column: 1;
grid-area: data;
display: block;
}
.o-event__form {
-ms-grid-row: 3;
-ms-grid-column: 1;
grid-area: form;
display: block;
}
@media screen and (min-width: 1000px) {
.o-event {
-ms-grid-columns: 6fr 8.3333333333% 5fr;
grid-template-columns: 6fr 5fr;
grid-row-gap: 0;
grid-column-gap: 8.3333333333%;
grid-template-areas: "form data";
}
.o-event__data {
-ms-grid-row: 1;
-ms-grid-column: 3;
}
.o-event__form {
-ms-grid-row: 1;
-ms-grid-column: 1;
}
}
@media screen and (min-width: 1000px) {
.o-event__data {
padding-top: 32px;
}
}
@media screen and (min-width: 1152px) {
.o-event__data {
padding-top: 48px;
}
}
.o-event__form {
padding-top: 32px;
padding-bottom: 32px;
background-color: #F8F8F8;
}
@media screen and (max-width: 839px) {
.o-event__form {
margin-left: -8.3333333333%;
margin-right: -8.3333333333%;
padding-left: 8.3333333333%;
padding-right: 8.3333333333%;
}
}
@media screen and (min-width: 840px) {
.o-event__form {
padding-left: 48px;
padding-right: 48px;
}
}
@media screen and (min-width: 1152px) {
.o-event__form {
padding-top: 48px;
padding-left: 96px;
padding-right: 96px;
padding-bottom: 80px;
}
}
.o-event__info-list {
display: flex;
flex-wrap: wrap;
margin: 0 0 64px;
}
.o-event__info-list dt {
width: 110px;
text-transform: capitalize;
align-self: flex-start;
font-weight: bold;
}
.o-event__info-list dd {
overflow-wrap: break-word;
word-wrap: break-word;
-webkit-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
width: calc(100% - 110px);
}
.o-event__heading {
color: #1D1D1D;
margin-bottom: 32px;
}
.o-event__servicepoint-heading {
margin-top: 64px;
}
/*
* Events
*
*/
@media screen and (min-width: 600px) {
.o-events__main {
display: flex;
flex-wrap: wrap;
}
}
@media screen and (max-width: 599px) {
.o-events__item + .o-events__item {
margin-top: 32px;
}
}
@media screen and (max-width: 599px) {
.o-events__item {
max-width: 344px;
margin: 0 auto;
}
}
@media screen and (min-width: 600px) and (max-width: 899px) {
.o-events__item {
flex: 0;
flex-basis: calc(50% - ((2 - 1) / 2 * 32px));
margin-left: 32px;
}
.o-events__item:nth-child(2n+1) {
margin-left: 0;
}
.o-events__item:nth-child(n+3) {
margin-top: 32px;
}
}
@media screen and (min-width: 900px) and (max-width: 1199px) {
.o-events__item {
flex: 0;
flex-basis: calc(33.3333333333% - ((3 - 1) / 3 * 32px));
margin-left: 32px;
}
.o-events__item:nth-child(3n+1) {
margin-left: 0;
}
.o-events__item:nth-child(n+4) {
margin-top: 32px;
}
}
@media screen and (min-width: 1200px) {
.o-events__item {
flex: 0;
flex-basis: calc(25% - ((4 - 1) / 4 * 32px));
margin-left: 32px;
}
.o-events__item:nth-child(4n+1) {
margin-left: 0;
}
.o-events__item:nth-child(n+5) {
margin-top: 32px;
}
}
.o-footer {
z-index: 20;
color: #EDEDED;
background-color: #1F2883;
flex: 1 0 auto;
}
.o-footer__main {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
}
@media screen and (min-width: 840px) {
.o-footer__main {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 1152px) {
.o-footer__main {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
@media screen and (max-width: 839px) {
.o-footer__main {
padding-top: 6vw;
padding-bottom: 6vw;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.o-footer__main {
padding-top: 5vw;
padding-bottom: 5vw;
}
}
@media screen and (min-width: 1152px) and (max-width: 1343px) {
.o-footer__main {
padding-top: 3.5714285714vw;
padding-bottom: 3.5714285714vw;
}
}
@media screen and (min-width: 1344px) {
.o-footer__main {
padding-top: 48px;
padding-bottom: 48px;
}
}
@media screen and (min-width: 840px) {
.o-footer__columns {
display: flex;
}
}
.o-footer__brand {
display: inline-block;
transition: opacity 200ms linear;
}
@media screen and (max-width: 839px) {
.o-footer__brand {
margin-bottom: 3.96vw;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.o-footer__brand {
margin-bottom: 3.3vw;
}
}
@media screen and (min-width: 1152px) and (max-width: 1343px) {
.o-footer__brand {
margin-bottom: 2.3571428571vw;
}
}
@media screen and (min-width: 1344px) {
.o-footer__brand {
margin-bottom: 31.68px;
}
}
.o-footer__brand:hover {
opacity: 0.5;
}
.o-footer__logo {
height: 64px;
}
.o-footer__info {
line-height: 1.6;
}
.o-footer__info > * + * {
margin-top: 32px;
}
@media screen and (min-width: 840px) {
.o-footer__info {
width: 40%;
}
}
@media screen and (min-width: 1152px) {
.o-footer__info {
width: 41.6666666667%;
}
}
@media screen and (max-width: 839px) {
.o-footer__nav {
margin-top: 6vw;
}
}
@media screen and (min-width: 840px) {
.o-footer__nav {
margin-left: 10%;
}
}
@media screen and (min-width: 1152px) {
.o-footer__nav {
margin-left: 8.3333333333%;
}
}
.o-footer__list {
list-style: none;
margin: 0;
}
.o-footer__link {
display: inline-block;
position: relative;
z-index: 0;
color: #EDEDED;
line-height: 1.5;
text-decoration: none;
cursor: pointer;
}
.o-footer__link:hover, .o-footer__link:active {
outline: none !important;
}
.o-footer__link::before {
border-radius: 4px;
opacity: 0;
content: "";
display: block;
position: absolute;
z-index: -1;
top: 0;
bottom: 0;
left: -8px;
right: -8px;
background-color: rgba(18, 18, 18, 0.18);
transition: opacity 150ms linear;
}
.o-footer__link:hover {
color: #EDEDED;
}
.o-footer__link:hover::before {
opacity: 1;
}
.o-footer__link:focus {
outline-color: currentColor;
outline-style: solid;
outline-offset: 1px;
outline-width: 2px;
}
.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: 0.3s;
}
.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: #4079B8;
}
.o-form__header {
margin-bottom: 40px;
}
.o-form__footer {
margin-top: 40px;
}
.o-form__row + .o-form__row {
margin-top: 20px;
}
.o-form__pot {
opacity: 0;
position: absolute;
top: 0;
left: 0;
height: 0;
width: 0;
z-index: -1;
}
/*
Colors get defined in _settings.config.scss
*/
.o-header {
z-index: 50;
background-color: #1F2883;
position: relative;
padding: 32px 0;
}
.o-header.is-sticky {
opacity: 0;
position: fixed;
z-index: 50;
top: 0;
left: 0;
width: 100%;
padding-top: 32px;
padding-bottom: 32px;
box-shadow: 0 -5px 30px black;
transform: translateY(-100%);
transition-property: transform, opacity;
transition-duration: 300ms;
transition-delay: 0s, 300ms;
transition-timing-function: cubic-bezier(0.4, 0, 0.6, 1);
}
@media screen and (min-width: 1100px) {
.o-header.is-sticky {
display: none;
}
}
.is-sticky-header-visible .o-header.is-sticky {
opacity: 1;
transform: none;
transition-delay: 0s;
}
.o-header__main {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
display: flex;
justify-content: space-between;
align-items: center;
position: relative;
}
@media screen and (min-width: 840px) {
.o-header__main {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 1152px) {
.o-header__main {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
.o-header__nav {
width: 100%;
margin-left: 48px;
}
@media screen and (max-width: 1099px) {
.o-header__nav {
display: none;
}
}
.o-header__language {
flex: none;
margin-left: 16px;
}
@media screen and (max-width: 1099px) {
.o-header__language {
margin-left: auto;
}
}
.o-header__logo {
flex: none;
}
.o-header__logo:hover, .o-header__logo:active {
outline: none !important;
}
.o-header__logo:focus {
outline-color: currentColor;
outline-style: solid;
outline-offset: 1px;
outline-width: 2px;
}
.o-header__img {
height: 64px;
}
@media screen and (min-width: 1100px) {
.o-header__toggle {
display: none;
}
}
.o-intro {
position: relative;
z-index: 0;
background-color: #1F2883;
}
@media screen and (max-width: 839px) {
.o-intro {
margin-bottom: 12vw;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.o-intro {
margin-bottom: 10vw;
}
}
@media screen and (min-width: 1152px) and (max-width: 1343px) {
.o-intro {
margin-bottom: 7.1428571429vw;
}
}
@media screen and (min-width: 1344px) {
.o-intro {
margin-bottom: 96px;
}
}
.o-intro__body {
position: relative;
}
@media screen and (max-width: 839px) {
.o-intro__body {
margin-bottom: 12vw;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.o-intro__body {
margin-bottom: 10vw;
}
}
@media screen and (min-width: 1152px) and (max-width: 1343px) {
.o-intro__body {
margin-bottom: 7.1428571429vw;
}
}
@media screen and (min-width: 1344px) {
.o-intro__body {
margin-bottom: 96px;
}
}
@media screen and (max-width: 839px) {
.o-intro--mobile-break-out .o-intro__body {
width: 100vw;
margin-left: 50%;
transform: translateX(-50%);
}
}
@media screen and (min-width: 840px) {
.o-intro__body::before {
content: "";
position: absolute;
z-index: 0;
top: 50%;
right: 0;
bottom: 0;
left: 0;
background-color: #3D93D0;
}
.o-intro--bottom-bar-hidden .o-intro__body::before {
display: none;
}
}
.o-intro__content {
background-color: #FFFFFF;
position: relative;
}
@media screen and (min-width: 840px) {
.o-intro__content {
display: flex;
}
}
@media screen and (min-width: 1152px) {
.o-intro__content {
width: calc((100% / 14) * 12);
max-width: 1152px;
margin-left: auto;
margin-right: auto;
}
}
.o-intro__nav,
.o-intro__image {
margin-top: 32px;
}
@media screen and (min-width: 840px) {
.o-intro__nav,
.o-intro__image {
order: -1;
width: 41.6666666667%;
margin-top: 0;
}
}
@media screen and (min-width: 1152px) {
.o-intro__nav,
.o-intro__image {
width: 50%;
}
}
.o-intro__nav {
background-color: #F8F8F8;
padding: 32px 6vw;
}
@media screen and (min-width: 840px) {
.o-intro__nav {
padding: 80px 4.1666666667%;
padding-left: 10%;
}
}
@media screen and (min-width: 1152px) {
.o-intro__nav {
padding-left: 8.3333333333%;
padding-right: 8.3333333333%;
}
}
.o-intro__text {
padding-top: 32px;
padding-left: 6vw;
padding-right: 6vw;
}
@media screen and (min-width: 840px) {
.o-intro__text {
width: 58.3333333333%;
padding: 80px 8.3333333333%;
}
}
@media screen and (min-width: 1152px) {
.o-intro__text {
width: 50%;
}
}
.o-intro__title,
.o-intro__heading {
color: #FFFFFF !important;
}
.o-intro__button {
color: #4DA6A7 !important;
}
.o-logos__list {
display: flex;
flex-wrap: wrap;
margin-left: 0;
margin: -2.382vw;
list-style-type: none;
}
@media screen and (min-width: 1344px) {
.o-logos__list {
margin: -32px;
}
}
.o-logos__item {
flex: 0 1 100%;
margin: 2.382vw;
}
@media screen and (min-width: 384px) {
.o-logos__item {
flex-basis: calc(50% - 5vw);
}
}
@media screen and (min-width: 840px) {
.o-logos__item {
flex-basis: calc(33.3333333333% - 5vw);
}
}
@media screen and (min-width: 1152px) {
.o-logos__item {
flex-basis: calc(25% - 5vw);
}
}
@media screen and (min-width: 1344px) {
.o-logos__item {
flex-basis: calc(25% - 64px);
margin: 32px;
}
}
.o-logos__link {
display: block;
}
.o-logos__img {
display: block;
width: 100%;
height: 0;
padding-bottom: 100%;
background-repeat: no-repeat;
background-size: contain;
background-position: center;
}
.o-map a:after {
display: none;
}
.o-news {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
}
@media screen and (min-width: 840px) {
.o-news {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 1152px) {
.o-news {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
.o-news__heading {
font-size: 2rem;
line-height: 1.25;
color: #2C2C2C;
}
.o-news__article {
position: relative;
}
.o-news__article + .o-news__article {
margin-top: 32px;
}
.o-news__link {
display: block;
cursor: pointer;
text-decoration: none;
transition: background-color 150ms linear;
}
.o-news__link:hover, .o-news__link:active {
outline: none !important;
}
.o-news__link::before {
content: "";
display: block;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
border: 1px solid #C8C8C8;
transition: opacity 150ms linear;
}
.o-news__link:hover, .o-news__link:focus {
background-color: #F8F8F8;
}
.o-news__link:hover::before, .o-news__link:focus::before {
opacity: 0;
}
.o-news__link:focus {
outline-color: currentColor;
outline-style: solid;
outline-offset: 1px;
outline-width: 2px;
}
@media screen and (min-width: 840px) {
.o-news__link {
display: flex;
justify-content: flex-start;
align-items: flex-start;
}
}
.o-news__body {
flex-grow: 1;
padding: 6vw;
}
@media screen and (min-width: 840px) {
.o-news__body {
order: 1;
padding-top: 48px;
padding-bottom: 48px;
padding-left: 12.5%;
padding-right: 12.5%;
}
}
@media screen and (min-width: 1152px) {
.o-news__body {
padding-left: 8.3333333333%;
}
}
.o-news__image {
position: relative;
width: 100%;
padding-bottom: 55%;
}
@media screen and (min-width: 840px) {
.o-news__image {
flex: none;
order: 2;
width: 25%;
padding-bottom: 25%;
}
}
.o-news__bg-image {
position: absolute;
background-position: 50% 50%;
background-size: cover;
top: 6vw;
right: 6vw;
width: calc(100% - 12vw);
height: calc(100% - 6vw);
}
@media screen and (min-width: 840px) {
.o-news__bg-image {
top: 8px;
right: 8px;
width: calc(100% - 16px);
height: calc(100% - 16px);
}
}
.o-news__intro {
margin-top: 24px;
}
.o-news__timestamp {
display: block;
margin-top: 16px;
color: #999999;
}
.o-news__action {
display: flex;
justify-content: flex-start;
align-items: center;
margin-top: 8px;
color: #4079B8;
}
.o-news__readmore {
margin-right: 8px;
}
.o-news__footer {
margin-top: 32px;
text-align: center;
}
.o-overlay-menu {
z-index: 100;
display: flex;
flex-direction: column;
opacity: 0;
position: fixed;
height: 100%;
width: 100%;
left: 0;
top: 0;
background-color: #3D93D0;
transform: translateX(-120vw);
transition-property: transform, opacity;
transition-duration: 400ms, 200ms;
transition-delay: 0s, 400ms;
transition-timing-function: cubic-bezier(0.5, 0.15, 0.1, 1), linear;
}
.is-overlay-menu-active .o-overlay-menu {
opacity: 1;
transform: none;
transition-delay: 200ms, 0s;
}
.o-overlay-menu::before {
display: block;
content: "";
position: absolute;
top: 0;
right: -120vw;
width: 120vw;
height: 100%;
background: rgba(0, 0, 0, 0.6);
pointer-events: none;
opacity: 0;
transition-property: opacity;
transition-duration: 200ms;
transition-delay: 400ms;
transition-timing-function: linear;
}
.is-overlay-menu-active .o-overlay-menu::before {
opacity: 1;
transition-delay: 0s;
}
.o-overlay-menu::after {
display: block;
content: "";
position: absolute;
top: 0;
right: -20%;
width: 20%;
height: 100%;
background: linear-gradient(-86deg, transparent 50%, #3D93D0 50%);
}
@media screen and (min-width: 1100px) {
.o-overlay-menu {
display: none;
}
}
.o-overlay-menu__bar {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
display: flex;
justify-content: space-between;
align-items: center;
padding-top: 32px;
padding-bottom: 32px;
}
@media screen and (min-width: 840px) {
.o-overlay-menu__bar {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 1152px) {
.o-overlay-menu__bar {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
.o-overlay-menu__img {
height: 48px;
}
.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__list {
display: flex;
flex-direction: column;
justify-content: space-between;
margin-left: 0;
list-style: none;
}
.o-overlay-menu__item {
padding: 8px 7.1428571429%;
border-top: 1px solid rgba(255, 255, 255, 0.3);
}
.o-overlay-menu__link {
font-size: 1.5rem;
line-height: 1.3333333333;
display: block;
color: #FFFFFF;
text-decoration: none;
transition: opacity 200ms linear;
}
.o-overlay-menu__link:hover {
color: rgba(255, 255, 255, 0.7);
}
.o-overlay-menu__link:focus {
outline-offset: 2px;
outline-color: rgba(255, 255, 255, 0.3);
}
.o-overlay-menu__link.is-active {
position: relative;
opacity: 1;
font-weight: bold;
}
.o-overlay-menu__link.is-active::before {
content: "\2794";
position: absolute;
top: 6px;
left: -1.25em;
font-size: 14px;
}
.o-quote {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
}
@media screen and (min-width: 840px) {
.o-quote {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 1152px) {
.o-quote {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
@media screen and (min-width: 840px) {
.o-quote {
display: flex;
}
}
@media screen and (min-width: 840px) {
.o-quote__body {
width: 50%;
}
}
@media screen and (min-width: 1152px) {
.o-quote__body {
margin-left: 8.3333333333%;
width: 66.6666666667%;
}
}
.o-quote__picture {
display: block;
}
@media screen and (max-width: 839px) {
.o-quote__picture {
margin-top: 32px;
}
}
@media screen and (min-width: 840px) {
.o-quote__picture {
width: 37.5%;
margin-left: 12.5%;
}
}
@media screen and (min-width: 1152px) {
.o-quote__picture {
width: 33.3333333333%;
margin-left: 8.3333333333%;
margin-right: 8.3333333333%;
}
}
.o-quote__img {
display: block;
margin: 0 auto;
}
.o-quote__text {
font-size: 1.125rem;
line-height: 1.7777777778;
quotes: "\201C" "\201D";
}
.o-quote__text::before {
content: open-quote;
}
.o-quote__text::after {
content: close-quote;
}
.o-quote__author {
margin-top: 24px;
margin-left: 8.3333333333%;
}
.o-quote__heading {
font-size: 1rem;
line-height: 1.5;
color: #656565;
}
.o-quote__subheading {
font-size: 0.9375rem;
line-height: 1.6;
color: #999999;
}
.o-references {
display: flex;
flex-wrap: wrap;
margin: -32px;
}
.o-references__item {
border-radius: 4px;
flex: 0 1 100%;
margin: 32px;
padding-top: 24px;
padding-bottom: 24px;
background-color: #FFFFFF;
border: 0px solid #C8C8C8;
box-shadow: 0 2.4px 39.4px -16px rgba(0, 0, 0, 0.024), 0 6.8px 45.5px -16px rgba(0, 0, 0, 0.035), 0 16.3px 51.4px -16px rgba(0, 0, 0, 0.046), 0 54px 80px -16px rgba(0, 0, 0, 0.07);
}
@media screen and (min-width: 800px) {
.o-references__item {
flex-basis: calc(50% - 64px - 0px);
}
}
.o-references__body {
display: flex;
flex-wrap: wrap;
align-items: flex-start;
margin-top: 0;
padding-right: 24px;
}
.o-references__picture {
display: block;
flex-grow: 1;
flex-basis: 25%;
margin-bottom: 24px;
margin-left: 24px;
}
.o-references__content {
flex-grow: 9999;
flex-basis: 18em;
margin-left: 24px;
color: #656565;
}
.o-references__author {
margin-top: 24px;
}
.o-references__heading {
font-size: 1rem;
line-height: 1.5;
font-weight: normal;
color: #656565;
}
.o-references__subheading {
color: #999999;
}
.o-subfooter {
z-index: 10;
color: rgba(255, 255, 255, 0.7);
background-color: #3D93D0;
padding-bottom: 64px;
transition: padding 0.6s;
}
.is-cookies-accepted .o-subfooter {
padding-bottom: 0;
}
.o-subfooter__main {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
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;
}
@media screen and (min-width: 840px) {
.o-subfooter__main {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 1152px) {
.o-subfooter__main {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
.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;
}
.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: rgba(255, 255, 255, 0.7);
text-decoration: none;
transition: color 200ms;
}
.o-subfooter__link:hover, .o-subfooter__link:active {
outline: none !important;
}
.o-subfooter__link:hover {
color: white;
}
.o-subfooter__link:focus {
outline-color: currentColor;
outline-style: solid;
outline-offset: 1px;
outline-width: 2px;
}
.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-tabslider {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
}
@media screen and (min-width: 840px) {
.o-tabslider {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 1152px) {
.o-tabslider {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
.o-tabslider__button {
border-radius: 8px;
min-height: 48px;
color: #2C2C2C;
background-color: #FFFFFF;
border: 1px solid #C8C8C8;
font-weight: 500;
cursor: pointer;
transition-property: color, border;
transition-duration: 250ms;
}
.o-tabslider__button:hover {
color: #3D93D0;
border-color: #3D93D0;
}
.o-tabslider__button.is-active {
color: #FFFFFF;
background-color: #3D93D0;
border-color: #3D93D0;
}
.o-tabslider__button:focus {
outline: none;
border-color: #3D93D0;
}
.o-tabslider__button:focus:not(.is-active):not(:active) {
box-shadow: 0 0 0 1px #FFFFFF, 0 0 5px 3px rgba(44, 44, 44, 0.1);
}
@media screen and (max-width: 839px) {
.o-tabslider__controls {
display: none;
}
}
@media screen and (min-width: 840px) {
.o-tabslider__controls {
display: flex;
justify-content: space-between;
align-items: center;
}
}
@media screen and (min-width: 1152px) {
.o-tabslider__controls {
margin-left: 8.3333333333%;
margin-right: 8.3333333333%;
}
}
.o-tabslider__step {
width: 48px;
}
.o-tabslider__step--prev {
transform: rotate(0.5turn);
}
@media screen and (min-width: 840px) {
.o-tabslider__tabs {
display: flex;
}
}
@media screen and (min-width: 1344px) {
.o-tabslider__tabs {
margin: -8px 8px;
}
}
.o-tabslider__tab {
font-size: 0.875rem;
line-height: 1.1428571429;
margin: 8px;
padding: 7px 16px;
text-transform: uppercase;
}
@media screen and (min-width: 840px) {
.o-tabslider__container {
display: -ms-grid;
display: grid;
-ms-grid-columns: 1fr;
grid-template-columns: 1fr;
-ms-grid-rows: 1fr;
grid-template-rows: 1fr;
margin-top: 48px;
}
}
@media screen and (max-width: 839px) {
.o-tabslider__content + .o-tabslider__content {
margin-top: 12vw;
}
}
@media screen and (min-width: 840px) {
.o-tabslider__content {
-ms-grid-row: 1;
grid-row: 1;
-ms-grid-column: 1;
grid-column: 1;
opacity: 0;
z-index: 0;
transform: translateY(6px);
pointer-events: none;
transform-origin: top center;
transition-property: opacity, transform;
transition-duration: 200ms;
transition-timing-function: ease-in;
}
.o-tabslider__content.is-active {
opacity: 1;
z-index: 1;
transform: none;
pointer-events: all;
transition-duration: 500ms;
transition-delay: 200ms;
transition-timing-function: ease-out;
}
}
.o-tabslider__label {
font-size: 0.875rem;
line-height: 1.1428571429;
display: block;
padding-bottom: 8px;
text-transform: uppercase;
color: #2C2C2C;
}
@media screen and (min-width: 840px) {
.o-tabslider__label {
display: none;
}
}
.o-team {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
}
@media screen and (min-width: 840px) {
.o-team {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 1152px) {
.o-team {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
@media screen and (max-width: 839px) {
.o-team {
margin-top: 12vw;
margin-bottom: 12vw;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.o-team {
margin-top: 10vw;
margin-bottom: 10vw;
}
}
@media screen and (min-width: 1152px) and (max-width: 1343px) {
.o-team {
margin-top: 7.1428571429vw;
margin-bottom: 7.1428571429vw;
}
}
@media screen and (min-width: 1344px) {
.o-team {
margin-top: 96px;
margin-bottom: 96px;
}
}
@media screen and (min-width: 560px) {
.o-team__matrix {
display: flex;
flex-wrap: wrap;
margin: -16px;
}
}
.o-team__item {
margin: 0 auto 32px;
max-width: 300px;
min-width: 0;
}
@media screen and (min-width: 560px) {
.o-team__item {
margin: 16px;
max-width: none;
flex: none;
flex-basis: calc(50% - 32px);
}
}
@media screen and (min-width: 900px) {
.o-team__item {
flex-basis: calc(33.33% - 32px);
}
}
@media screen and (min-width: 1200px) {
.o-team__item {
flex-basis: calc(25% - 32px);
}
}
.o-thanks {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
}
@media screen and (min-width: 840px) {
.o-thanks {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 1152px) {
.o-thanks {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
@media screen and (max-width: 839px) {
.o-thanks {
padding-bottom: 12vw;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.o-thanks {
padding-bottom: 10vw;
}
}
@media screen and (min-width: 1152px) and (max-width: 1343px) {
.o-thanks {
padding-bottom: 7.1428571429vw;
}
}
@media screen and (min-width: 1344px) {
.o-thanks {
padding-bottom: 96px;
}
}
@media screen and (min-width: 1110px) {
.o-thanks {
display: flex;
}
}
@media screen and (min-width: 1110px) {
.o-thanks__left {
width: calc(50% + 48px);
padding-right: 48px;
}
}
.o-thanks__right {
margin-top: 40px;
}
@media screen and (min-width: 1110px) {
.o-thanks__right {
width: 50%;
margin-top: 0;
}
}
@media screen and (max-width: 1151px) {
.o-usp {
background-color: #3D93D0;
}
}
@media screen and (min-width: 840px) {
.o-usp__main {
display: flex;
}
}
.o-usp__text {
padding: 32px 0;
color: #FFFFFF;
background-color: #3D93D0;
}
@media screen and (min-width: 840px) {
.o-usp__text {
width: 62.5%;
padding-top: 6.25%;
padding-bottom: 6.25%;
padding-left: 0;
padding-right: 12.5%;
}
}
@media screen and (min-width: 1152px) {
.o-usp__text {
width: 50%;
padding: 4.1666666667% 8.3333333333%;
}
}
.o-usp__image {
background-position: 50% 50%;
background-size: cover;
}
@media screen and (max-width: 839px) {
.o-usp__image {
margin-left: -6vw;
margin-right: -6vw;
padding-bottom: 65%;
min-height: 360px;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.o-usp__image {
width: 50%;
margin-right: -12.5%;
}
}
@media screen and (min-width: 1152px) {
.o-usp__image {
width: 50%;
}
}
.o-usp__heading {
font-size: 2rem;
line-height: 1.25;
margin-bottom: 24px;
color: #FFFFFF;
}
.o-usp__list {
list-style-type: none;
margin-left: 16px;
}
.o-usp__item {
position: relative;
padding-left: 16px;
}
.o-usp__item + .o-usp__item {
margin-top: 16px;
}
.o-usp__item::before {
content: "";
position: absolute;
top: 5px;
left: -16px;
width: 16px;
height: 12px;
background-image: url(/img/check/checked.svg);
background-size: 16px 12px;
}
.o-usp__action {
margin-top: 48px;
}
.o-usp__image {
background-color: #F8F8F8;
background-repeat: no-repeat;
}
.o-vacancies {
margin: 0;
padding: 0;
line-height: 1.4;
list-style: none;
}
.o-vacancies > * + * {
margin-top: 16px;
}
.o-vacancies__link {
border-radius: 8px;
display: flex;
align-items: center;
padding: 32px;
border: 1px solid #C8C8C8;
color: #1D1D1D;
text-decoration: none;
transition: all 150ms linear;
}
.o-vacancies__link:hover {
color: #4079B8;
border-color: currentColor;
box-shadow: inset 0 0 1px 1px currentColor;
}
.o-vacancies__content {
flex: auto;
}
.o-vacancies__icon {
flex: none;
display: flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
background-color: #4DA6A7;
border-radius: 50%;
color: #FFFFFF;
transition: all 150ms linear;
}
.o-vacancies__link:hover .o-vacancies__icon {
background-color: #4079b8;
}
.o-vacancies__title {
font-size: 1.5rem;
line-height: 1.3333333333;
font-weight: bold;
color: currentColor;
}
.o-vacancies__subtitle {
font-size: 1rem;
line-height: 1.5;
font-weight: normal;
color: #999999;
}
.o-vacancies__properties {
margin-top: 32px;
}
.o-vacancy__hero {
position: relative;
margin-bottom: 32px;
}
@media screen and (min-width: 1152px) {
.o-vacancy__hero {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
}
}
@media screen and (min-width: 1152px) and (min-width: 840px) {
.o-vacancy__hero {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 1152px) and (min-width: 1152px) {
.o-vacancy__hero {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
.o-vacancy__hero::before {
position: absolute;
z-index: -1;
content: "";
top: 0;
bottom: 0;
right: -50vw;
left: -50vw;
background-color: #1F2883;
}
.o-vacancy__hero-img {
width: 100%;
height: auto;
}
.o-vacancy__properties {
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
margin-top: -16px;
}
@media screen and (min-width: 840px) {
.o-vacancy__properties {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 1152px) {
.o-vacancy__properties {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
/* 7 - Templates
* Override styling for a specific template
=========================================================== */
/** ==========================================================================
* Templates
* =========================================================================*/
/* 8 - SCOPES
* Elements and classes that are scoped by a parent class
=========================================================== */
.s-checklist {
list-style: none;
margin-left: 0;
}
.s-checklist li {
display: flex;
vertical-align: middle;
margin-top: 5px;
line-height: 1.45;
}
.s-checklist li::before {
content: "";
background-image: url(/img/check/checked.svg);
background-repeat: no-repeat;
width: 12px;
height: 12px;
margin-right: 8px;
transform: translateY(7px);
}
.checklist-has-x-small-font .s-checklist {
font-size: 0.875rem;
line-height: 1.1428571429;
}
.checklist-has-x-small-font .s-checklist li::before {
transform: translateY(5px);
}
/**
* All text elements that can be added by the user through a CMS
*/
.s-text h2, .s-text h3, .s-text h4 {
color: #2C2C2C;
}
.s-text > * + * {
margin-top: 32px;
}
.s-text > :first-child {
margin-top: 0 !important;
}
.s-text > * + .c-button {
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;
}
/* 9 - 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--500 {
color: #3D93D0;
}
.u-bg-primary--500 {
background-color: #3D93D0;
}
.u-color-primary--700 {
color: #1F2883;
}
.u-bg-primary--700 {
background-color: #1F2883;
}
.u-color-secondary--500 {
color: #4DA6A7;
}
.u-bg-secondary--500 {
background-color: #4DA6A7;
}
.u-color-neutral--0 {
color: #FFFFFF;
}
.u-bg-neutral--0 {
background-color: #FFFFFF;
}
.u-color-neutral--100 {
color: #F8F8F8;
}
.u-bg-neutral--100 {
background-color: #F8F8F8;
}
.u-color-neutral--200 {
color: #EDEDED;
}
.u-bg-neutral--200 {
background-color: #EDEDED;
}
.u-color-neutral--300 {
color: #C8C8C8;
}
.u-bg-neutral--300 {
background-color: #C8C8C8;
}
.u-color-neutral--400 {
color: #999999;
}
.u-bg-neutral--400 {
background-color: #999999;
}
.u-color-neutral--500 {
color: #656565;
}
.u-bg-neutral--500 {
background-color: #656565;
}
.u-color-neutral--800 {
color: #2C2C2C;
}
.u-bg-neutral--800 {
background-color: #2C2C2C;
}
.u-color-neutral--900 {
color: #1D1D1D;
}
.u-bg-neutral--900 {
background-color: #1D1D1D;
}
.u-color-neutral--1000 {
color: #000000;
}
.u-bg-neutral--1000 {
background-color: #000000;
}
.u-color-feedback--action {
color: #4079B8;
}
.u-bg-feedback--action {
background-color: #4079B8;
}
.u-color-feedback--warning {
color: #ffd33a;
}
.u-bg-feedback--warning {
background-color: #ffd33a;
}
.u-color-feedback--alert {
color: #ff8100;
}
.u-bg-feedback--alert {
background-color: #ff8100;
}
.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-color-border--0 {
color: #fff;
}
.u-bg-border--0 {
background-color: #fff;
}
.u-color-border--300 {
color: #C8C8C8;
}
.u-bg-border--300 {
background-color: #C8C8C8;
}
.u-color-border--500 {
color: #656565;
}
.u-bg-border--500 {
background-color: #656565;
}
/** =====================================================================================
* Fonts
===================================================================================== */
/**
* Here we print out all our helper classes for our defined $font-sizes map
* Output of the classes in the this form:
.u-fs-m {}
.u-fs-xl {}
... etc
*/
.u-fs-xs {
font-size: 0.875rem;
line-height: 1.1428571429;
}
.u-fs-xs {
font-size: 0.875rem;
line-height: 1.1428571429;
}
.u-fs-s {
font-size: 0.9375rem;
line-height: 1.6;
}
.u-fs-s {
font-size: 0.9375rem;
line-height: 1.6;
}
.u-fs-base {
font-size: 1rem;
line-height: 1.5;
}
.u-fs-base {
font-size: 1rem;
line-height: 1.5;
}
.u-fs-m {
font-size: 1.125rem;
line-height: 1.7777777778;
}
.u-fs-m {
font-size: 1.125rem;
line-height: 1.7777777778;
}
.u-fs-l {
font-size: 1.25rem;
line-height: 1.6;
}
.u-fs-l {
font-size: 1.25rem;
line-height: 1.6;
}
.u-fs-xl {
font-size: 1.5rem;
line-height: 1.3333333333;
}
.u-fs-xl {
font-size: 1.5rem;
line-height: 1.3333333333;
}
.u-fs-xxl {
font-size: 2rem;
line-height: 1.25;
}
.u-fs-xxl {
font-size: 2rem;
line-height: 1.25;
}
.u-fs-xxxl {
font-size: 2.5rem;
line-height: 1;
}
.u-fs-xxxl {
font-size: 2.5rem;
line-height: 1;
}
.u-fs-xxxxl {
font-size: 3rem;
line-height: 1;
}
.u-fs-xxxxl {
font-size: 3rem;
line-height: 1;
}
/**
* Here we print out all our helper classes for our defined $font-weights map
* Output of the classes in the this form:
.u-fw-regular {}
.u-fw-semiBold {}
... etc
*/
.u-hidden {
display: none !important;
}
.u-placeholder-image {
height: 100% !important;
width: 100% !important;
object-fit: cover !important;
}
.u-text-align-center {
text-align: center !important;
}
.nowrap {
white-space: nowrap;
}
.u-max-content {
max-width: 40em;
}
/*
* 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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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;
}
@media screen and (max-width: 839px) {
.u-spacing-pv {
padding-top: 12vw;
padding-bottom: 12vw;
}
}
@media screen and (min-width: 840px) and (max-width: 1151px) {
.u-spacing-pv {
padding-top: 10vw;
padding-bottom: 10vw;
}
}
@media screen and (min-width: 1152px) and (max-width: 1343px) {
.u-spacing-pv {
padding-top: 7.1428571429vw;
padding-bottom: 7.1428571429vw;
}
}
@media screen and (min-width: 1344px) {
.u-spacing-pv {
padding-top: 96px;
padding-bottom: 96px;
}
}
@media screen and (min-width: 1152px) {
.u-spacing-pr0\@l {
padding-right: 0 !important;
}
}
/* ==========================================================================
* This grid can be turned on and off when you want to check
* if everything is nice in place.
* Set flag 'showGrid' to true in site.php
* ========================================================================== */
.u-visible-grid {
z-index: 10000;
width: calc(100% - 12vw);
margin-left: auto;
margin-right: auto;
position: fixed;
left: 0;
right: 0;
width: 100%;
pointer-events: none;
/* 8 point grid lines */
}
@media screen and (min-width: 840px) {
.u-visible-grid {
width: calc((100% / 10) * 8);
}
}
@media screen and (min-width: 1152px) {
.u-visible-grid {
width: calc((100% / 14) * 12);
max-width: 1152px;
}
}
@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(0, 43, 255, 0.07), rgba(0, 43, 255, 0.07) 25%, rgba(0, 43, 255, 0.04) 25%, rgba(0, 43, 255, 0.04) 50%);
}
@media screen and (min-width: 840px) {
.u-visible-grid__main {
background: repeating-linear-gradient(to right, rgba(0, 43, 255, 0.07), rgba(0, 43, 255, 0.07) 12.5%, rgba(0, 43, 255, 0.04) 12.5%, rgba(0, 43, 255, 0.04) 25%);
}
}
@media screen and (min-width: 1152px) {
.u-visible-grid__main {
background: repeating-linear-gradient(to right, rgba(0, 43, 255, 0.07), rgba(0, 43, 255, 0.07) 8.3333333333%, rgba(0, 43, 255, 0.04) 8.3333333333%, rgba(0, 43, 255, 0.04) 16.6666666667%);
}
}
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy9zdHlsZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzEtU2V0dGluZ3MvX3NldHRpbmdzLmNvbG9ycy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzEtU2V0dGluZ3MvX3NldHRpbmdzLmNvbmZpZy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzEtU2V0dGluZ3MvX3NldHRpbmdzLnR5cG9ncmFwaHkuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy8xLVNldHRpbmdzL19zZXR0aW5ncy5icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzItVG9vbHMvX3Rvb2xzLmNvbHVtbi5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzItVG9vbHMvX3Rvb2xzLmZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvMi1Ub29scy9fdG9vbHMubWVkaWFRdWVyaWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvMi1Ub29scy9fdG9vbHMudG9vbGJveC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzItVG9vbHMvX3Rvb2xzLnppbmRleC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzMtRWxlbWVudHMvX2VsZW1lbnRzLmJhc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy8zLUVsZW1lbnRzL19lbGVtZW50cy5oZWFkaW5ncy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzMtRWxlbWVudHMvX2VsZW1lbnRzLmxpc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNC1MYXlvdXRzL19sYXlvdXRzLmNvbnRhaW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy80LUxheW91dHMvX2xheW91dHMuc3BsaXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy80LUxheW91dHMvX2xheW91dHMucmVzdHJpY3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5idXR0b24uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuZ2hvc3RidXR0b24uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuY2FyZC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5jbG9zZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5jb25uZWN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmRhdGEuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuZGF0ZUxhYmVsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmRvd25sb2FkTGlzdC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5ldmVudENhcmQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuZmlsZVVwbG9hZC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5mb3JtR3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuZm9ybUZlZWRiYWNrLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmhhbWJ1cmdlci5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5oZWFkaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmhlcm8uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuaW5mby5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5pbnB1dC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5sYW5ndWFnZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMucGFnaW5hdGlvbi5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5wYWdlVGl0bGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMucHJvamVjdG9yLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLnNlcnZpY2VQb2ludC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5zaXRlbWFwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLnNraXBMaW5rLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLnNsaWRlLWluZGljYXRvci5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5zdWJuYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMudGV4dC1idXR0b24uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMudG9nZ2xlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLnRyYWRlbWFyay5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy52YWNhbmN5UHJvcGVydGllcy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy52aWRlby5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmFjY29yZGlvbi5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuYXBwbHkuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmJsb2NrLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5ib2R5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5jYWxsb3V0QmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5jYXJkLWdyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmNvbnRhY3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmNvb2tpZUJhci5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuZG91YmxlSW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmRvdWJsZVRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmRvdWJsZVVzcC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuZG93bmxvYWRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5ldmVudC5zY3NzIiwid2VicGFjazovLy8uLzxubyBzb3VyY2U+Iiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuZXZlbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5mb290ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmZvcm0uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmhlYWRlci5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuaW50cm8uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmxvZ29zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5tYXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLm5ld3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLm92ZXJsYXlNZW51LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5xdW90ZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMucmVmZXJlbmNlcy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuc3ViZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy50YWJzbGlkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLnRlYW0uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLnRoYW5rcy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMudXNwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy52YWNhbmNpZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLnZhY2FuY3kuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy83LVRlbXBsYXRlcy9fdGVtcGxhdGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvOC1TY29wZXMvX3Njb3Blcy5jaGVja2xpc3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy84LVNjb3Blcy9fc2NvcGVzLnRleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy85LVV0aWxpdGllcy9fdXRpbGl0aWVzLmNvbG9ycy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzktVXRpbGl0aWVzL191dGlsaXRpZXMuZm9udHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy85LVV0aWxpdGllcy9fdXRpbGl0aWVzLmhlbHBlcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy85LVV0aWxpdGllcy9fdXRpbGl0aWVzLnNoYW1lLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvOS1VdGlsaXRpZXMvX3V0aWxpdGllcy5zcGFjaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvOS1VdGlsaXRpZXMvX3V0aWxpdGllcy52aXNpYmxlR3JpZC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFnQjtBQUNoQjs7Ozs7OztnRUFBQTtBQ0RBOzs7OytEQUFBO0FBOENBOzs7Ozs7Ozs7Ozs7R0FBQTtBQzlDQTs7OENBQUE7QUFJQTs7O0VBQUE7QUNKQTs7OztnRUFBQTtBQU1BOztHQUFBO0FBK0NBOztHQUFBO0FDckRBOztrREFBQTtBSmNBOzsrREFBQTtBS2RBOzsrRUFBQTtBQUlBOzs7SUFBQTtBQWtCQTs7O0lBQUE7QUFRQTs7SUFBQTtBQzlCQTs7Z0ZBQUE7QUFLQTs7Ozs7Ozs7O0dBQUE7QUNMQTtnREFBQTtBQ0FBOztzREFBQTtBQUtBOzs7Ozs7Ozs7O0dBQUE7QUFpQ0E7Ozs7R0FBQTtBQWVBO0FBT0E7QUFPQTtBQWtCQTs7Ozs7Ozs7Ozs7R0FBQTtBQXdCQTs7Ozs7Ozs7Ozs7OztHQUFBO0FBaUNBOztHQUFBO0FBU0E7Ozs7Ozs7Ozs7Ozs7R0FBQTtBQTBCQTs7Ozs7Ozs7Ozs7Ozs7R0FBQTtBQWdCQTs7OztHQUFBO0FBa0JBOzs7R0FBQTtBQXdCQTs7R0FBQTtBQXFDQTs7R0FBQTtBQ2hSQTs7O3dHQUFBO0FBaUJBOzs7OztHQUFBO0FUS0E7OytEQUFBO0FVdEJBOztnRkFBQTtBQUlBOzs7Ozs7OztHQUFBO0FBVUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q1YyTEY7O0FVeExBO0VKU007RUFSQTtFSUNKO0VBQ0EsaUJQZmtCO0VPZ0JsQixrQ1ArQmE7RU85QmI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFBYztDVjZMaEI7O0FVMUxBO0VBQ0U7RUFDQTtFQUNBO0NWNkxGOztBVXpMQTs7Ozs7O0dBQUE7QUFPQTtFQUNFO0VBQ0E7RUFDQTtDVjRMRjtBVTFMRTtFQUdFO0NWMExKOztBVXRMQTs7R0FBQTtBQUdBO0VBQ0U7RUFDQTtFQUNBO0VBQW1CO0NWMExyQjs7QVV2TEE7R0FBQTtBQUVBO0VBQ0U7Q1YwTEY7O0FVdkxBOzs7OztHQUFBO0FBTUE7RUFDRTtFQUF3QjtFQUN4QjtFQUFjO0VBQ2Q7Q1Y0TEY7O0FVekxBOzs7R0FBQTtBQUlBOzs7RUFHRTtDVjRMRjs7QVV2TEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0NWMExGO0FVeExFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q1YwTEo7QVV0TEk7RUFDRTtFQUNBO0VBQ0E7Q1Z3TE47O0FVaExBOzs7O0VBSUU7RUFDQTtDVm1MRjs7QVc3VEE7RUxnQ007RUFSQTtDTjBTTjs7QVc5VEE7RUw0Qk07RUFSQTtFS2xCTDtDWGtVRDs7QVcvVEE7RUx1Qk07RUFSQTtFS2JMO0NYbVVEOztBV2hVQTtFTGtCTTtFQVJBO0VLUkw7Q1hvVUQ7O0FXalVBO0VMYU07RUFSQTtFS0hMO0NYcVVEOztBWTFWQTs7eUZBQUE7QUFLQTs7R0FBQTtBQUlBOztFQUVDO0VBQ0E7RUFDQTtDWjBWRDs7QVl2VkE7RUFDQztDWjBWRDs7QVlyVkE7O0dBQUE7QUFLQzs7RUFFQztDWnNWRjs7QUFyVkE7OytEQUFBO0FhOUJBOztnRkFBQTtBQUtBO0VMMk9DO0VBQ0E7RUFDQTtDUjZJRDtBT3hWQztFTWxDRDtJTGlQSTtHUjZJRjtDQUNGO0FPN1ZDO0VNbENEO0lMd1BFO0lBQ0E7R1IySUE7Q0FDRjs7QWMxWUE7Ozs7b0ZBQUE7QUFPQTtFQUNDO0VBQ0E7RUFDQTtDZDJZRDtBTzlXQztFT2hDRDtJQU9FO0dkMllBO0NBQ0Y7O0FjdllBOzs7R0FBQTtBQUtBO0VOd05DO0VBQ0E7RUFDQTtDUmtMRDtBTzdYQztFT2ZEO0lOZ09HO0dSZ0xEO0NBQ0Y7QU9sWUM7RU9mRDtJTnFPRTtJQUNBO0dSZ0xBO0NBQ0Y7O0FPeFlDO0VPVkQ7SUFJRTtHZG1aQTtDQUNGO0FPOVlDO0VPRkE7SUFFRTtJQUNBO0dka1pEO0NBQ0Y7QU9wWkM7RU9GQTtJQU1FO0lBQ0E7R2RvWkQ7Q0FDRjtBTzFaQztFT1VBO0lOdURLO0dSNlZKO0NBQ0Y7QU8vWkM7RU9VQTtJQU1FO0dkbVpEO0NBQ0Y7QWM5WUU7RUFDQztDZGdaSDtBT3ZhQztFT3NCQztJQUlFO0lBQ0E7R2RpWkY7Q0FDRjtBTzdhQztFT3NCQztJQVFFO0dkbVpGO0NBQ0Y7O0FPbGJDO0VPdUNFO0lBQ0M7SUFDQTtJQUNBO0dkK1lGO0VjN1lDO0lBQ0M7R2QrWUY7Q0FDRjtBY3pZQTs7O0dBQUE7QVBwREM7RU93REQ7SUFFRTtJQUNBO0lBQ0E7SUFDQTtHZDJZQTtDQUNGO0FPemNDO0VPd0REO0lBUUU7SUFDQTtHZDZZQTtDQUNGOztBY3ZZQTtFQUNDO0VBQ0E7Q2QwWUQ7QU9wZEM7RU93RUQ7SUFLRTtJQUNBO0dkMllBO0NBQ0Y7O0FPMWRDO0VPcUZBO0lBQ0M7R2R5WUE7Q0FDRjtBZXZnQkE7Ozs7O2dGQUFBO0FSdUNDO0VRL0JEO0lBRUk7SUFDQTtJQUNBO0lBQ0E7R2Z1Z0JGO0NBQ0Y7QU85ZUM7RVEvQkQ7SUFRSTtHZnlnQkY7Q0FDRjs7QU9uZkM7RVFuQkQ7SUFFSTtJQUNBO0lBQ0E7R2Z5Z0JGO0NBQ0Y7QU8zZkM7RVFuQkQ7SUFRSTtHZjBnQkY7Q0FDRjs7QUFqZ0JBOzs7K0RBQUE7QWdCdENBOzs4RUFBQTtBQ0FBO0VBQ0M7Q2pCaWpCRDs7QWlCOWlCQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0NqQmlqQkQ7O0FpQjdpQkE7RUFDQztFQUNBO0NqQmdqQkQ7QWlCN2lCRTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtDakI4aUJIOztBaUJ6aUJBO0VBQ0M7RUFDQTtDakI0aUJEO0FpQjFpQkM7RUFDQztDakI0aUJGOztBa0Jya0JBO0VWOEpFO0VGMUlJO0VBUkE7RVlUTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NsQnlrQkQ7QWtCdmtCQztFQUNDO0VBQ0E7Q2xCeWtCRjtBa0J2a0JDO0VBQ0M7RUFDQTtDbEJ5a0JGO0FrQnZrQkM7RUFDQztFQUNBO0NsQnlrQkY7QWtCcmtCQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NsQnVrQkY7QWtCcGtCQztFQUNDO0VBQ0E7Q2xCc2tCRjs7QWtCbGtCQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0NsQnFrQkQ7QWtCbmtCQztFQUNDO0NsQnFrQkY7O0FrQmprQkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q2xCb2tCRDtBa0Jsa0JDO0VBQ0M7Q2xCb2tCRjtBa0Joa0JDO0VBQ0M7RUFDQTtDbEJra0JGO0FrQi9qQkM7RUFDQztFQUNBO0NsQmlrQkY7O0FtQmxxQkE7O2dGQUFBO0FBU0E7RVhpS0U7RUYxSUk7RUFSQTtFYVpMO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NuQmdxQkQ7QW1COXBCQztFQUNDO0VBQ0E7Q25CZ3FCRjtBbUI3cEJDO0VBQ0M7RUFDQTtDbkIrcEJGO0FtQjdwQkM7RUFDQztFQUNBO0NuQitwQkY7QW1CM3BCQztFWGlJQztFVy9IQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDbkI2cEJGO0FtQnpwQkU7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0NuQjJwQkg7O0FtQnRwQkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtDbkJ5cEJEO0FtQnZwQkM7RUFDQztDbkJ5cEJGOztBbUJycEJBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NuQndwQkQ7QW1CdHBCQztFQUNDO0NuQndwQkY7QW1CcnBCQztFQUNDO0VBQ0E7Q25CdXBCRjtBbUJucEJDO0VBQ0M7RUFDQTtDbkJxcEJGOztBb0J6dUJBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDcEI0dUJEOztBb0J6dUJBOztHQUFBO0FBR0E7RUFFQztFQUNBO0NwQjJ1QkQ7QVF0aUJDO0VBRUM7Q1J1aUJGO0FvQjV1QkM7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3BCNnVCRjtBb0J6dUJDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDcEIydUJGO0FvQnR1QkM7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3BCd3VCRjtBb0JudUJFO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7Q3BCcXVCSDtBb0JsdUJFO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7Q3BCb3VCSDtBb0JqdUJDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7Q3BCbXVCRjs7QW9CL3RCQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0NwQmt1QkQ7O0FvQi90QkE7RUFDQztFQUNBO0VBQ0E7Q3BCa3VCRDs7QW9COXRCQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3BCaXVCRDs7QW9CN3RCQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDcEJndUJEO0FvQjl0QkM7RUFDQztFQUNBO0NwQmd1QkY7O0FvQjN0QkE7RWQ5R007RUFSQTtFY3dITDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NwQit0QkQ7QW9CN3RCQztFQUNDO0NwQit0QkY7QW9CM3RCQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDcEI0dEJGO0FvQjF0QkU7RUFDQztFQUNBO0VBQ0E7RUFDQTtDcEI0dEJIOztBb0J2dEJBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDcEIwdEJEOztBb0J0dEJBO0VkcktNO0VBUkE7RWMrS0w7Q3BCMHRCRDs7QW9CdHRCQTtFQUNDO0VBQ0E7Q3BCeXRCRDs7QW9CcnRCQTtFQUNDO0NwQnd0QkQ7QW9CcnRCQztFQUNDO0NwQnV0QkY7O0FvQmx0QkE7RUFDQztFQUNBO0NwQnF0QkQ7O0FvQmp0QkE7RWRqTU07RUFSQTtFYzJNTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3BCcXRCRDs7QXFCbjdCQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NyQnM3QkQ7QXFCcDdCQztFQUNDO0NyQnM3QkY7QXFCbjdCQztFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NyQm83QkY7QXFCbDdCQztFQUNDO0NyQm83QkY7QXFCbDdCQztFQUNDO0NyQm83QkY7QXFCajdCQztFQUNDO0NyQm03QkY7O0FzQno5QkE7RUFDQztFQUNBO0VBQ0E7Q3RCNDlCRDtBT3A4QkM7RWUzQkQ7SUFNRTtHdEI2OUJBO0NBQ0Y7O0FzQno5QkE7RWhCU007RUFSQTtFZ0JFTDtFQUNBO0VBQ0E7RUFDQTtDdEI0OUJEO0FRdHhCQztFQUVDO0NSdXhCRjtBc0I3OUJDO0VBQ0M7RUFDQTtDdEIrOUJGO0FzQjU5QkM7RUFDQztFQUNBO0VBQ0E7RUFDQTtDdEI4OUJGOztBc0J6OUJBO0VBQ0M7RUFDQTtDdEI0OUJEO0FPcCtCQztFZU1EO0lBS0U7R3RCNjlCQTtDQUNGOztBdUJyZ0NBO0VBQ0M7Q3ZCd2dDRDs7QXVCcmdDQTtFQUNDO0N2QndnQ0Q7O0F1QnJnQ0E7RUFDQztFQUNBO0VBQ0E7Q3ZCd2dDRDs7QXVCcmdDQTtFQUNJO0VBQ0g7Q3ZCd2dDRDtBUWgwQkM7RUFFQztDUmkwQkY7QXVCdGdDRTtFQUNDO0N2QndnQ0g7QXVCdGdDRTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0N2QndnQ0g7O0F3Qi9pQ0E7RUFDQztFQUNBO0VBQ0E7Q3hCa2pDRDs7QXdCOWlDQTtFQUNDO0VBQ0E7Q3hCaWpDRDs7QXdCN2lDQTtFbEJtQk07RUFSQTtFa0JUTDtDeEJpakNEOztBd0I3aUNBO0VsQmFNO0VBUkE7RWtCSEw7Q3hCaWpDRDs7QXlCdGtDQTtFQUNFO0VBQ0E7RUFDQTtDekJ5a0NGOztBeUJ0a0NBO0VBQ0U7RUFDQTtDekJ5a0NGO0F5QnZrQ0U7RUFDRTtDekJ5a0NKOztBeUJya0NBO0VBQ0U7RUFDQTtFQUNBO0N6QndrQ0Y7O0F5QnJrQ0E7RUFDRTtFQUNBO0N6QndrQ0Y7QXlCdGtDRTtFQUNFO0N6QndrQ0o7O0F5QnBrQ0E7RUFDRTtFQUNBO0N6QnVrQ0Y7QXlCcmtDRTtFQUNFO0N6QnVrQ0o7O0EwQi9sQ0E7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDMUJpbUNEO0FRajVCQztFQUVDO0NSazVCRjtBMEJsbUNDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QzFCb21DRjs7QTBCL2xDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0MxQmttQ0Q7QTBCaG1DQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzFCa21DRjtBMEI5bENFO0VBQ0M7QzFCZ21DSDs7QTBCMWxDQTtFQUNDO0VBQ0E7RUFDQTtDMUI2bENEOztBMEJ6bENBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDMUI0bENEO0EwQjFsQ0M7RUFDQztFQUNBO0VBQ0E7QzFCNGxDRjs7QTBCdGxDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzFCeWxDRDtBMEJ2bENDO0VBQ0M7QzFCeWxDRjs7QTBCcGxDQTtFcEJqRU07RUFSQTtFb0IyRUw7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDMUJ3bENEO0EwQnRsQ0M7RUFDQztDMUJ3bENGOztBMEJubENBO0VwQi9FTTtFQVJBO0VvQnlGTDtFQUNBO0VBQ0E7RUFDQTtDMUJ1bENEO0EwQnJsQ0M7RUFDQztDMUJ1bENGOztBMEJsbENBO0VwQjVGTTtFQVJBO0VvQnNHTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0MxQnNsQ0Q7QTBCcGxDQztFQUNDO0MxQnNsQ0Y7O0EyQi9zQ0E7RUFDQztDM0JrdENEOztBMkI5c0NBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QzNCaXRDRDs7QTJCN3NDQTtFbkJpSkU7RUYxSUk7RUFSQTtFcUJJTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzNCaXRDRDtBMkIvc0NDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0MzQml0Q0Y7QTJCOXNDQztFQUNDO0MzQmd0Q0Y7O0EyQjNzQ0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtDM0I4c0NEO0EyQjVzQ0M7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzNCOHNDRjtBMkI1c0NFO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDM0I4c0NIO0EyQjFzQ0U7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzNCNHNDSDtBMkIxc0NHO0VBQ0M7QzNCNHNDSjtBMkJ6c0NHO0VBQ0M7QzNCMnNDSjs7QTJCcHNDQTtFQUNDO0MzQnVzQ0Q7O0EyQm5zQ0E7RUFDQztJQUNDO0lBQ0E7SUFDQTtJQUNBO0czQnNzQ0E7Q0FDRjtBNEJsekNBO0V0QnFCTTtFQVJBO0VzQlhKO0VBQ0E7RUFDQTtDNUJxekNGOztBNEJsekNBO0VBQ0U7QzVCcXpDRjtBNEJuekNFO0V0QldJO0VBUkE7RXNCREY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzVCc3pDSjs7QTZCdjBDQTtFdkJvQk07RUFSQTtFRStJSjtFcUJ4SkE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDN0IyMENGO0E2QnowQ0U7RUFDRTtDN0IyMENKO0E2QngwQ0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0M3QjAwQ0o7QTZCdjBDRTtFQUNFO0M3QnkwQ0o7O0E4QnQyQ0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDOUJ5MkNEO0E4QnYyQ0M7RUFDQztFQUNBO0VBQ0E7RUFDQTtDOUJ5MkNGO0E4QnQyQ0M7RUFHQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzlCczJDRjtBOEJuMkNDO0VBQ0M7RUFDQTtDOUJxMkNGO0E4QmwyQ0M7RUFDQztFQUNBO0M5Qm8yQ0Y7QThCaDJDRTtFQUNDO0M5QmsyQ0g7QThCaDJDRTtFQUVDO0M5QmkyQ0g7QThCNTFDRTtFQUNDO0M5QjgxQ0g7QThCNTFDRTtFQUNDO0VBQ0E7QzlCODFDSDtBOEI1MUNFO0VBQ0M7RUFDQTtDOUI4MUNIOztBK0IzNkNBO0V6QmdDTTtFQVJBO0V5QnRCTDtFQUNBO0MvQis2Q0Q7O0FPMzRDQztFd0JqQ0Q7SUFFRTtHL0IrNkNBO0NBQ0Y7O0FPajVDQztFeUI1QkQ7SXhCcU9DO0lBQ0E7SUFDQTtHUjZzQ0M7Q0FDRjtBT3o1Q0M7RXlCNUJEO0l4QjJPSTtHUjhzQ0Y7Q0FDRjtBTzk1Q0M7RXlCNUJEO0l4QmtQRTtJQUNBO0dSNHNDQTtDQUNGOztBZ0MxN0NBO0VBQ0M7RUFDQTtDaEM2N0NEOztBZ0MxN0NBO0VBQ0M7RUFDQTtFQUNBO0NoQzY3Q0Q7QU8vNkNDO0V5QmpCRDtJQU1FO0doQzg3Q0E7Q0FDRjs7QWdDMzdDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q2hDODdDRDtBZ0M1N0NDO0VBQ0M7RUFDQTtFQUNBO0NoQzg3Q0Y7O0FnQzE3Q0E7RUFDQztDaEM2N0NEOztBZ0MxN0NBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDaEM0N0NEO0FPbjlDQztFeUJjRDtJQVlFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7R2hDNjdDQTtFZ0MzN0NBO0lBQ0M7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0doQzY3Q0Q7Q0FDRjtBT3YrQ0M7RXlCY0Q7SUFpQ0U7SUFDQTtJQUNBO0doQzQ3Q0E7Q0FDRjtBTzkrQ0M7RXlCY0Q7STFCckJNO0lBUkE7STBCcUVKO0lBQ0E7R2hDODdDQTtDQUNGOztBZ0MzN0NBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDaEM4N0NEO0FnQzU3Q0M7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NoQzg3Q0Y7O0FnQ3g3Q0E7RUFLQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NoQ3U3Q0Q7QU96aERDO0V5QmdGRDtJQUVFO0doQzI4Q0E7Q0FDRjtBZ0MxN0NDO0VBQ0M7Q2hDNDdDRjtBZ0N6N0NDO0VBQ0M7RUFDQTtDaEMyN0NGO0FnQ3o3Q0U7RUFDQztDaEMyN0NIO0FnQ3Y3Q0M7RUFDQztFQUNBO0VBQ0E7Q2hDeTdDRjs7QWlDcGxEQTtFekJ1S0U7RXlCcktEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q2pDdWxERDs7QWtDOWtEQTtFNUJpQk07RUFSQTtFNEJQTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q2xDa2xERDtBa0NobERDO0VBQ0M7RUFDQTtFQUNBO0NsQ2tsREY7QWtDL2tEQztFQUNDO0VBQ0E7Q2xDaWxERjtBa0M5a0RVO0VBQ1I7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDbENnbERGOztBbUMxbURBO0VBQ0M7Q25DNm1ERDs7QW1DMW1EQTtFN0JjTTtFQVJBO0VFK0lKO0UyQmxKRDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7VUFBQTtFQUNBO0NuQzhtREQ7QW1DNW1EQztFQUNDO0NuQzhtREY7O0FtQ3RtREE7RUFDQztFQUNBO0NuQ3ltREQ7O0FtQ3RtREE7RUFDQztFQUNBO0NuQ3ltREQ7O0FtQ3RtREE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q25DeW1ERDtBbUN2bURDO0VBQ0M7RUFDQTtFQUNBO0NuQ3ltREY7O0FtQ3JtREE7RUFDQztFQUNBO0NuQ3dtREQ7QW1DdG1EQztFQUNDO0NuQ3dtREY7QW1Dcm1EQztFQUNDO0NuQ3VtREY7QW1DcG1EQztFQUNDO0NuQ3NtREY7QW1Dbm1EQztFQUNDO0NuQ3FtREY7O0FtQ2ptREE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDbkNvbUREO0FtQ2xtREM7RUFDQztFQUNBO0NuQ29tREY7O0FvQ3hzREE7O0VBQUE7QUFXQTtFQUNDO0VBQ0E7Q3BDbXNERDs7QW9DaHNEQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDcENtc0REOztBb0MvckRBO0U5QkVNO0VBUkE7RThCUUw7RUFDQTtDcENtc0REO0FvQ2pzREM7RUFDQztDcENtc0RGOztBb0M5ckRBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDcENnc0REO0FRNWdEQztFQUVDO0NSNmdERjtBb0Nqc0RDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3BDbXNERjtBb0Noc0RDO0VBQ0M7Q3BDa3NERjtBb0Noc0RFO0VBQ0M7RUFDQTtDcENrc0RIO0FvQzdyREM7RUFDQztFQUNBO0NwQytyREY7QW9DN3JERTtFQUNDO0VBQ0E7RUFDQTtDcEMrckRIO0FvQzNyREM7RUFDQztFQUNBO0VBQ0E7RUFDQTtDcEM2ckRGOztBcUMzd0RBO0VBQ0M7RUFDQTtFQUNBO0U3QjJKQztFNkJ6SkQ7RUFDQTtFQUNBO0VBQ0E7Q3JDOHdERDs7QXFDM3dEQTtFQUNDO0VBQ0E7RUFDQTtDckM4d0REO0FPandEQztFOEJoQkQ7SUFPRTtHckM4d0RBO0VxQzV3REE7SUFJQztHckMyd0REO0VxQ3h3REE7SUFDQztHckMwd0REO0NBQ0Y7QXFDdndEQztFQUNDO0VBQ0E7Q3JDeXdERjs7QXFDcndEQTs7OztFQUlDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDckN3d0REOztBcUNyd0RBO0VBQ0M7RUFDQTtDckN3d0REOztBcUNyd0RBO0VBQ0M7RUFDQTtFQUNBO0NyQ3d3REQ7QXFDdHdEQztFQUNDO0VBQ0E7Q3JDd3dERjtBcUNyd0RDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7Q3JDdXdERjs7QXFDbndEQTs7RUFFQztFQUNBO0NyQ3N3REQ7QXFDcHdEQzs7RUFDQztFQUNBO0NyQ3V3REY7O0FxQ253REE7RUFDQztDckNzd0REOztBc0N2MkRBOztHQUFBO0FBSUE7RTlCNE9DO0VBQ0E7RUFDQTtFQXpCQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U4QnROQztFQUNBO0VBQ0E7Q3RDKzJERjtBT2oxREM7RStCbkNEO0k5QmtQSTtHUnNvREY7Q0FDRjtBT3QxREM7RStCbkNEO0k5QnlQRTtJQUNBO0dSb29EQTtDQUNGO0FPNTFEQztFK0JuQ0Q7SUFRSTtJQUNBO0d0QzIzREY7Q0FDRjs7QXNDeDNEQTtFQUNFO0VBQ0E7RUFDQTtDdEMyM0RGO0FPeDJEQztFK0J0QkQ7SUFNSTtHdEM0M0RGO0NBQ0Y7QU83MkRDO0UrQnRCRDtJQVNJO0d0QzgzREY7Q0FDRjs7QU9sM0RDO0UrQlREO0lBRUk7SUFDQTtHdEM4M0RGO0NBQ0Y7O0FzQzMzREE7RWhDTE07RUFSQTtFZ0NlSjtDdEMrM0RGOztBc0M1M0RBO0VoQ1ZNO0VBUkE7RWdDb0JKO0N0Q2c0REY7O0FzQzUzREE7RWhDaEJNO0VBUkE7RWdDMEJKO0N0Q2c0REY7O0F1Q2w3REE7RUFDQztFQUNBO0N2Q3E3REQ7O0F1Q2o3REE7RUFDQztFQUFBO0VBQ0E7RUFBQTtFQUNBO0VBQUE7RUFDQTtDdkNvN0REOztBdUNoN0RBO0VqQ2tCTTtFQVJBO0VpQ1JMO0VBQUE7RUFDQTtFQUFBO0VBQ0E7TUFBQTtVQUFBO0VBQ0E7RUFDQTtDdkNvN0REOztBdUNoN0RBO0VBQ0M7RUFBQTtFQUNBO0VBQUE7RUFDQTtNQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0N2Q203REQ7QXVDajdEQztFQUNDO0N2Q203REY7QXVDaDdEQztFQUNDO0N2Q2s3REY7O0F1Qzc2REE7RUFDQztFQUFBO0VBQ0E7RUFBQTtFQUNBO01BQUE7RUFDQTtFQUNBO0N2Q2c3REQ7O0F1QzU2REE7RUFFQztFQUNBO0VBQ0E7Q3ZDODZERDtBT2o4REM7RWdDZUQ7SUFPRTtHdkMrNkRBO0NBQ0Y7O0F3Q3orREE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0N4QzQrREQ7O0F3Q3grREE7RUFDQztFQUNBO0VBQ0E7RUFDQSxtQkFoQm9CO0VBaUJwQjtDeEMyK0REOztBd0N2K0RBO0VoQ21NQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VnQ3JNQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3hDOCtERDtBT3ArREM7RWlDakJEO0lBVUU7R3hDKytEQTtDQUNGOztBd0MzK0RBO0VBQ0M7Q3hDOCtERDs7QXdDMStEQTtFQUNDO0N4QzYrREQ7O0F3Q3orREE7RWxDZk07RUFSQTtFa0N5Qkw7RUFDQTtDeEM2K0REOztBd0N6K0RBO0VsQ3RCTTtFQVJBO0VrQ2dDTDtDeEM2K0REOztBeUNyaUVBO0VuQ2dDTTtFQVJBO0VtQ3RCTDtDekN5aUVEOztBeUN0aUVBO0VBQ0M7RUFDQTtFQUNBO0N6Q3lpRUQ7QXlDdmlFQztFQUNDO0VBQ0E7Q3pDeWlFRjs7QTBDcmpFQTs7R0FBQTtBQUlBO0VwQzRCTTtFQVJBO0VvQ2xCSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzFDd2pFRjtBMEN0akVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUFVO0MxQ3lqRWQ7O0EyQ3RqRUE7RUFDQztFQUNBO0VBQ0E7QzNDeWpFRDs7QTJDdGpFQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDM0N5akVEO0EyQ3ZqRUM7RUFDQztDM0N5akVGO0EyQ3RqRUM7RUFDQztDM0N3akVGO0EyQ3JqRUM7RUFDQztDM0N1akVGO0EyQ3BqRUM7RUFDQztFQUNBO0MzQ3NqRUY7QTJDbmpFQztFQUNDO0VBQ0E7QzNDcWpFRjs7QTJDampFQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDM0NvakVEO0EyQ2xqRUM7RUFDQztDM0NvakVGO0EyQ2pqRUM7RUFFQztDM0NrakVGO0EyQy9pRUM7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQztDM0MraUVIO0EyQzNpRUM7RUFFQyw0QkFEUztFQUVULDhCQUZTO0VBR1QsK0JBSFM7RUFJVCw2QkFKUztFQUtUO0MzQzRpRUY7QTJDemlFQztFQUVDLDZCQURTO0VBRVQsK0JBRlM7RUFHVCxnQ0FIUztFQUlULDhCQUpTO0VBS1Q7RUFDQTtFQUNBO0MzQzBpRUY7QTJDdGlFRTtFQUNDO0VBQ0E7RUFDQTtDM0N3aUVIO0EyQ3JpRUU7RUFDQztFQUNBO0MzQ3VpRUg7QTJDbmlFQztFQUNDO0MzQ3FpRUY7QTJDbmlFRTtFQUVDO0MzQ29pRUg7QTJDamlFRTtFQUVDO0MzQ2tpRUg7O0E0QzNwRUE7RUFDQztDNUM4cEVEOztBNEMxcEVBO0VBQ0M7RUFDQTtDNUM2cEVEO0FPMW9FQztFcUNyQkQ7SUFLRTtHNUM4cEVBO0NBQ0Y7O0E0QzFwRUE7RUFDQztDNUM2cEVEOztBNEN6cEVBO0VBQ0M7RUFDQTtFQUNBO0M1QzRwRUQ7O0E0Q3hwRUE7RUFDQztDNUMycEVEOztBNEN2cEVBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzVDeXBFRDtBUTMrREM7RUFFQztDUjQrREY7QTRDMXBFQztFQUNDO0M1QzRwRUY7QTRDenBFQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0M1QzJwRUY7QTRDeHBFQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzVDMHBFRjtBNEN4cEVFO0VBQ0M7RUFDQTtDNUMwcEVIOztBNENwcEVBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0M1Q3VwRUQ7QTRDcnBFQztFQUNDO0VBQ0E7RUFDQTtDNUN1cEVGOztBNENocEVDO0VBQ0M7RUFDQTtDNUNtcEVGO0E0Q2pwRUU7RUFDQztFQUNBO0M1Q21wRUg7QTRDL29FQztFQUNDO0M1Q2lwRUY7O0E2Q3h2RUE7OztHQUFBO0FBS0E7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUF3QztFQUN4QztFQUFZO0VBQ1o7RUFBK0I7RUFDL0I7RUFBYztFQUNkO0VBQ0E7RUFDQTtDN0M2dkVEO0FRcGpFQztFQUVDO0NScWpFRjtBNkM5dkVDO0VBQ0M7QzdDZ3dFRjtBNkM5dkVDO0VBQ0M7RUFDQTtDN0Nnd0VGO0E2Qzl2RUM7RUFDQztFQUNBO0VBQ0E7RUFDQTtDN0Nnd0VGOztBNkM1dkVBO0V2Q1hNO0VBUkE7Q05veEVOOztBNkM3dkVBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QzdDZ3dFRDtBNkM5dkVDO0VBQ0M7QzdDZ3dFRjtBNkM3dkVDO0VBQ0M7QzdDK3ZFRjs7QTZDenZFQztFQUFzQjtDN0M2dkV2QjtBNkM1dkVDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDN0M4dkVGO0E2QzV2RUM7RUFDQztDN0M4dkVGOztBOENoMEVBO0VBQ0M7RUFDQTtDOUNtMEVEOztBOEMvekVBO0V0QzZKRTtFc0MxSkQ7QzlDaTBFRDtBUW5vRUM7RUFDQyxpQnNDak1ZO0M5Q3MwRWQ7O0E4Q2gwRUE7RUFDQztFQUNBLG1CQXBCbUI7QzlDdTFFcEI7QThDajBFQztFQUNDO0M5Q20wRUY7O0E4Qzl6RUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzlDaTBFRDtBOEMvekVDO0VBQ0M7QzlDaTBFRjtBOEM5ekVDO0VBQVM7QzlDaTBFVjtBOEM5ekVFO0VBQVM7QzlDaTBFWDtBOENoMEVFO0VBQVU7QzlDbTBFWjtBOENoMEVDO0VBQ0M7RUFDQTtDOUNrMEVGO0E4Q2gwRUU7RUFDQztDOUNrMEVIO0E4Qzl6RUM7RUFDQyxlQTdEcUI7QzlDNjNFdkI7O0E4QzN6RUE7RXhDdENNO0VBUkE7RXdDZ0RMO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzlDK3pFRDtBOEM3ekVDO0VBQ0MsZUEzRXFCO0M5QzA0RXZCOztBOEMxekVBO0VBQ0M7RUFDQTtFQUNBLG1CQXJGbUI7RUFzRm5CLG9CQXJGb0I7RUFzRnBCO0VBQ0E7QzlDNnpFRDtBOEMzekVDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QzlDNnpFRjs7QStDcDVFQTtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Qy9DczVFRDtBUWxzRUM7RUFFQztDUm1zRUY7QStDdjVFQztFQUNDO0MvQ3k1RUY7QStDdDVFQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0MvQ3c1RUY7O0ErQ3A1RUE7RUFDQztFQUNBO0MvQ3U1RUQ7O0ErQ3A1RUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0MvQ3U1RUQ7QStDcjVFQztFQUNDO0MvQ3U1RUY7O0FnRGo4RUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtDaERvOEVEOztBZ0RoOEVBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDaERtOEVEO0FnRGo4RUM7RUFDQztDaERtOEVGOztBZ0Q5N0VBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDaERpOEVEOztBaUQzOUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDakQ4OUVGOztBaUQzOUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDakQ4OUVGOztBQTU3RUE7OytEQUFBO0FrRC9DQTs7OEVBQUE7QUNvQkE7RTNDNE5DO0VBQ0E7RUFDQTtDUnF3RUQ7QU9oOUVDO0U0Q25CRDtJM0NrT0k7R1Jxd0VGO0NBQ0Y7QU9yOUVDO0U0Q25CRDtJM0N5T0U7SUFDQTtHUm13RUE7Q0FDRjs7QW1EMStFQTtFM0NrSkU7RTJDL0lEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NuRDQrRUQ7QVEvekVDO0VBQ0MsaUIyQ3RMWTtDbkR1L0VkO0FtRDcrRUM7RUFDQztDbkQrK0VGOztBbUQzK0VBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NuRDgrRUQ7QU94L0VDO0U0Q0NEO0lBWUU7R25EKytFQTtDQUNGO0FPNy9FQztFNENDRDtJQWVFO0duRGkvRUE7Q0FDRjtBbUQ5K0VDO0VBQ0M7Q25EZy9FRjs7QW1ENStFQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q25EKytFRDtBT3RoRkM7RTRDeUJEO0lBaUJFO0duRGcvRUE7Q0FDRjtBTzNoRkM7RTRDeUJEO0lBb0JFO0duRGsvRUE7Q0FDRjtBbURoL0VDO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDbkRpL0VGO0FtRDcrRUU7RUFDQztDbkQrK0VIO0FtRDMrRUM7RUFDQztDbkQ2K0VGO0FtRDMrRUU7RUFDQztDbkQ2K0VIOztBbUR4K0VBO0U3Q3JGTTtFQVJBO0U2QytGTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q25ENCtFRDtBT2prRkM7RTRDOEVEO0k3Q3JGTTtJQVJBO0dOcWxGSjtDQUNGOztBbUQzK0VBO0FBQ0E7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtDbkQ0K0VEO0FRbDdFQztFQUNDLG1CQUYyQjtDUnM3RTdCO0FPcmxGQztFNEM2RkQ7SUFZRTtHbkRnL0VBO0NBQ0Y7QU8xbEZDO0U0QzZGRDtJQWVFO0duRGsvRUE7Q0FDRjtBbURoL0VDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtDbkRpL0VGOztBT3ptRkM7RTZDbkNEO0k1Q29HTTtJQUFBO0dSOGlGSjtDQUNGO0FPaG5GQztFNkNuQ0Q7STVDMkhNO0lBQUE7R1I2aEZKO0NBQ0Y7QU90bkZDO0U2Q25DRDtJNUNnSU07SUFBQTtHUjhoRko7Q0FDRjtBTzVuRkM7RTZDbkNEO0k1Q3FJTTtJQUFBO0dSK2hGSjtDQUNGOztBb0Q5cEZBO0VBQ0M7RUFDQTtDcERpcUZEOztBT3ZvRkM7RTZDdEJEO0lBRUU7R3BEZ3FGQTtDQUNGOztBTzdvRkM7RTZDZkQ7SUFFRTtJQUNBLG9CQTFCWTtHcER5ckZaO0NBQ0Y7O0FvRDNwRkE7RUFDQztDcEQ4cEZEO0FPeHBGQztFNkNQRDtJQUlFO0lBQ0E7R3BEK3BGQTtDQUNGOztBUXYvRUM7RUFDQyxpQjRDcEtZO0NwRDhwRmQ7O0FPbHFGQztFNkNRRDtJQUVFO0dwRDZwRkE7Q0FDRjs7QW9EenBGQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0NwRDRwRkQ7O0FvRHpwRkE7RUFDQztDcEQ0cEZEOztBT25yRkM7RThDdkNEO0k3Q3dHTTtHUnVuRko7Q0FDRjtBT3pyRkM7RThDdkNEO0k3QytITTtHUnFtRko7Q0FDRjtBTzlyRkM7RThDdkNEO0k3Q29JTTtHUnFtRko7Q0FDRjtBT25zRkM7RThDdkNEO0k3Q3lJTTtHUnFtRko7Q0FDRjtBT3hzRkM7RThDakNBO0k3Q2tHSztHUjJvRko7Q0FDRjtBTzdzRkM7RThDakNBO0k3Q3lISztHUnluRko7Q0FDRjtBT2x0RkM7RThDakNBO0k3QzhISztHUnluRko7Q0FDRjtBT3Z0RkM7RThDakNBO0k3Q21JSztHUnluRko7Q0FDRjs7QXNEbndGQzs7O0VBQUE7QUFNRDtFN0NtQkM7RTZDakJBO0VBQ0E7Q3REb3dGRDs7QXVEbHdGQTtFL0M4TUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFK0NoTkE7RUFDQTtFQUNFO0N2RHl3Rkg7O0F1RHR3RkE7RS9DOE5DO0VBQ0E7RUFDQTtDUjRpRkQ7QU92dkZDO0VnRHJCRDtJL0NvT0k7R1I0aUZGO0NBQ0Y7QU81dkZDO0VnRHJCRDtJL0MyT0U7SUFDQTtHUjBpRkE7Q0FDRjtBT2x3RkM7RWdEckJEO0kvQ3NGTTtJQUFBO0dSc3NGSjtDQUNGO0FPeHdGQztFZ0RyQkQ7SS9DNkdNO0lBQUE7R1JxckZKO0NBQ0Y7QU85d0ZDO0VnRHJCRDtJL0NrSE07SUFBQTtHUnNyRko7Q0FDRjtBT3B4RkM7RWdEckJEO0kvQ3VITTtJQUFBO0dSdXJGSjtDQUNGO0FPMXhGQztFZ0RiQTtJL0M4RUs7R1I2dEZKO0NBQ0Y7QU8veEZDO0VnRGJBO0kvQ3FHSztHUjJzRko7Q0FDRjtBT3B5RkM7RWdEYkE7SS9DMEdLO0dSMnNGSjtDQUNGO0FPenlGQztFZ0RiQTtJL0MrR0s7R1Iyc0ZKO0NBQ0Y7O0F1RG56RkE7RUFDQztDdkRzekZEOztBdURsekZBO0VqRFBNO0VBUkE7Q05zMEZOOztBd0Q5MUZBOzs7R0FBQTtBakR1Q0M7RWlEeEJEO0lBRUk7SUFDQTtHeERzMUZGO0NBQ0Y7O0FPbDBGQztFaURiRztJQUNFO0d4RG0xRko7Q0FDRjtBT3gwRkM7RWlEakJEO0lBV0k7SUFDQTtHeERrMUZGO0NBQ0Y7QU85MEZDO0VpRGpCRDtJQWlCSTtJQUVBO0lBQ0E7R3hEaTFGRjtFd0QvMEZFO0lBQ0U7R3hEaTFGSjtFd0Q5MEZFO0lBQ0U7R3hEZzFGSjtDQUNGO0FPMzFGQztFaURqQkQ7SUFpQ0k7SUFFQTtJQUNBO0d4RDgwRkY7RXdENTBGRTtJQUNFO0d4RDgwRko7RXdEMzBGRTtJQUNFLGlCQXpEa0I7R3hEczRGdEI7Q0FDRjs7QXlEcjRGQTtFQUNDO0VBQ0E7Q3pEdzRGRDtBTzcyRkM7RWtEN0JEO0lBS0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtHekR5NEZBO0NBQ0Y7O0F5RHI0RkE7RUFHQztFQUNBLGtCdkRTd0I7RXVEUnhCLG1CdkRRd0I7Q0Y4M0Z6QjtBTzUzRkM7RWtEZkQ7SWpEa1BFO0lBQ0E7R1I2cEZBO0NBQ0Y7QU9sNEZDO0VrRGZEO0lqRGtQRTtJQUNBO0dSbXFGQTtDQUNGO0FPeDRGQztFa0RmRDtJQVNFO0lBQ0E7SUFDQTtJQUNBO0d6RGs1RkE7Q0FDRjs7QXlELzRGQTtFQUdDO0VBQ0E7RUFDQTtDekRnNUZEO0FPdDVGQztFa0RDRDtJakRrT0U7SUFDQTtHUnVyRkE7Q0FDRjtBTzU1RkM7RWtEQ0Q7SWpEa09FO0lBQ0E7R1I2ckZBO0NBQ0Y7QU9sNkZDO0VrRENEO0lBUUU7SUFDQTtJQUNBO0d6RDY1RkE7Q0FDRjs7QXlEMTVGQTtFakRtS0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFRjdMSztFQVJBO0VtRGlDTDtFQUNBO0N6RGs2RkQ7O0F5RC81RkE7RUFDQztDekRrNkZEOztBeUQvNUZBO0VBQ0M7Q3pEazZGRDs7QXlELzVGQTtFQUNDO0N6RGs2RkQ7O0EwRGgrRkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYXhEd0IyQjtFd0R2QjNCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDMURtK0ZEO0EwRGgrRkM7RWpERUE7RWlEQUM7RUFDQTtFQUNBO0MxRGsrRkY7QTBELzlGQztFQUNDO0VBQ0E7RUFDQTtDMURpK0ZGOztBMEQ3OUZBO0VBQ0M7RUFDQTtFQUNBO0MxRGcrRkQ7QU9qK0ZDO0VtREZEO0lBTUU7RzFEaStGQTtDQUNGOztBMEQ5OUZBO0VBQ0M7RUFDQTtDMURpK0ZEO0FPMytGQztFbURRRDtJcERmTTtJQVJBO0dOKy9GSjtDQUNGOztBMERoK0ZBO0VBQ0M7RUFDQTtDMURtK0ZEO0EwRGorRkM7RUFDQztDMURtK0ZGOztBMEQvOUZBO0VBQ0M7RUFDQTtDMURrK0ZEO0FPOS9GQztFbUQwQkQ7SUFLRTtHMURtK0ZBO0NBQ0Y7O0EyRDFpR0E7Ozs7b0ZBQUE7QUFRQTtFQUNDO0VBQ0E7QzNEMGlHRDtBTzdnR0M7RW9EL0JEO0lBT0U7RzNEeWlHQTtDQUNGOztBMkRyaUdBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QzNEd2lHRDtBT3poR0M7RW9EbkJEO0lBT0U7SUFDQTtJQUNBO0czRHlpR0E7RTJEdmlHQTtJQUNDO0czRHlpR0Q7Q0FDRjs7QTJEcGlHQTtFQUNDO0VBQ0E7QzNEdWlHRDs7QTJEbGlHQztFQUNDO0MzRHFpR0Y7QTJEbmlHRTtFQUNDO0VBQ0E7QzNEcWlHSDs7QTREdmxHQTs7OztvRkFBQTtBQU9BO0VBQ0M7RUFDQTtFQUNBO0M1RHdsR0Q7QU8zakdDO0VxRGhDRDtJQU9FO0c1RHdsR0E7Q0FDRjs7QU9oa0dDO0VxRHBCRDtJQUdFO0c1RHNsR0E7Q0FDRjtBT3RrR0M7RXFEZEE7SUFFRTtJQUNBO0c1RHNsR0Q7Q0FDRjtBTzVrR0M7RXFEZEE7SUFNRTtHNUR3bEdEO0NBQ0Y7QU9qbEdDO0VxREpBO0lwRHFFSztHUm9oR0o7Q0FDRjtBT3RsR0M7RXFESkE7SUFNRTtHNUR3bEdEO0NBQ0Y7QU8zbEdDO0VxREpBO0lBU0U7SUFDQTtHNUQwbEdEO0NBQ0Y7O0FPam1HQztFc0QvQkQ7SUFFRTtHN0Rtb0dBO0NBQ0Y7O0E2RC9uR0E7RXJEaU9DO0VBQ0E7RUFDQTtFcURqT0E7RUFDQTtDN0Rvb0dEO0FPL21HQztFc0R4QkQ7SXJEdU9JO0dSbzZGRjtDQUNGO0FPcG5HQztFc0R4QkQ7SXJEOE9FO0lBQ0E7R1JrNkZBO0NBQ0Y7QU8xbkdDO0VzRHhCRDtJQU1FO0c3RGdwR0E7Q0FDRjs7QU8vbkdDO0VzRGJEO0lBRUU7RzdEK29HQTtDQUNGO0FPcm9HQztFc0RiRDtJQU1FO0lBQ0E7RzdEZ3BHQTtDQUNGOztBTzNvR0M7RXNERkQ7SUFFRTtHN0RncEdBO0NBQ0Y7O0E2RDdvR0E7RXZEWE07RUFSQTtFdURxQkw7RUFDQTtDN0RpcEdEOztBNkQ3b0dBO0VBQ0M7RUFDQTtDN0RncEdEOztBNkQ1b0dBO0VBRUM7RUFDQTtFQUNBO0M3RDhvR0Q7QVE1L0ZDO0VBQ0MsaUJxRHRKWTtDN0RvcEdkO0E2RC9vR0M7RUFJQztFQUNBO0VBQ0E7RUFDQTtFQUNBLFlBUFE7RUFRUixhQVBTO0VBUVQ7RUFDQTtDN0Q4b0dGOztBT2hyR0M7RXVEdkNEO0lBRUk7SUFDQTtHOUQwdEdGO0NBQ0Y7O0FPdnJHQztFdURoQ0Q7SUFFSTtHOUQwdEdGO0NBQ0Y7O0E4RHZ0R0E7RUFDRTtFQUNBO0VBQ0E7QzlEMHRHRjtBT25zR0M7RXVEMUJEO0lBTUk7RzlEMnRHRjtDQUNGO0FPeHNHQztFdUQxQkQ7SUFVSTtJQUNBO0c5RDR0R0Y7Q0FDRjtBTzlzR0M7RXVEMUJEO0lBY0k7SUFDQTtHOUQ4dEdGO0NBQ0Y7QThENXRHRTtFQUNFO0M5RDh0R0o7O0FPdnRHQztFdURIRDtJQUdJO0c5RDR0R0Y7Q0FDRjtBTzd0R0M7RXVESEQ7SUFPSTtHOUQ2dEdGO0NBQ0Y7QU9sdUdDO0V1REhEO0lBV0k7RzlEOHRHRjtDQUNGO0FPdnVHQztFdURIRDtJQWNJO0c5RGd1R0Y7Q0FDRjs7QStEM3dHQTtFQUVDO0VBQUE7RUFDQTtFQUNBO0VBQUE7RUFDQTtFQUFBO2NBQ0EsbUNBQ0M7Qy9ENHdHRjtBUXJnR0U7RXdEdFJGO0VBQUE7RXhEdVJHLGdCdUQ5UUY7RXZEK1FFO0NSdWdHSDtBUXpnR0U7RXdEdFJGO0VBQUE7RXhEdVJHLGdCdUQ5UUY7RXZEK1FFO0NSMmdHSDtBTzV2R0M7RXdEL0JEO0lBV0U7SUFBQTtJQUNBO0lBQ0E7Z0JBQ0E7Ry9Eb3hHQTtFUXBoR0E7SXdEdFJGO0lBQUE7R2hFK3hHQTtFUXpnR0U7SXdEdFJGO0lBQUE7R2hFbXlHQTtDQVFBOztBT3B3R0M7RXdEWkQ7SUFFRSxrQkEzQjBCO0cvRDh5RzFCO0NBQ0Y7QU8xd0dDO0V3RFpEO0lBTUUsa0JBOUIwQjtHL0RrekcxQjtDQUNGOztBK0RoeEdBO0VBQ0Msa0JBckMyQjtFQXNDM0IscUJBdEMyQjtFQXVDM0I7Qy9EbXhHRDtBT3J4R0M7RXdEREQ7SUFNRTtJQUNBO0lBQ0E7SUFDQTtHL0RveEdBO0NBQ0Y7QU83eEdDO0V3REREO0lBYUU7SUFDQTtHL0RxeEdBO0NBQ0Y7QU9ueUdDO0V3REREO0lBa0JFLGtCQXJEMEI7SUFzRDFCO0lBQ0E7SUFDQTtHL0RzeEdBO0NBQ0Y7O0ErRGx4R0E7RUFFQztFQUNBO0VBQ0E7Qy9Eb3hHRDtBK0RseEdDO0VBQ0MsYUFOVTtFQU9WO0VBQ0E7RUFDQTtDL0RveEdGO0ErRGx4R0M7RXZENklBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXVEL0lDO0MvRHd4R0Y7O0ErRG54R0E7RUFDQztFQUNBO0MvRHN4R0Q7O0ErRGx4R0E7RUFDQztDL0RxeEdEOztBaUUvMkdBOzs7R0FBQTtBMUR1Q0M7RTBEdkJEO0lBRUk7SUFDQTtHakVzMkdGO0NBQ0Y7O0FPbjFHQztFMERaRztJQUNFO0dqRW0yR0o7Q0FDRjtBT3oxR0M7RTBEaEJEO0lBV0k7SUFDQTtHakVrMkdGO0NBQ0Y7QU8vMUdDO0UwRGhCRDtJQWlCSTtJQUVBO0lBQ0E7R2pFaTJHRjtFaUUvMUdFO0lBQ0U7R2pFaTJHSjtFaUU5MUdFO0lBQ0U7R2pFZzJHSjtDQUNGO0FPNTJHQztFMERoQkQ7SUFrQ0k7SUFFQTtJQUNBO0dqRTYxR0Y7RWlFMzFHRTtJQUNFO0dqRTYxR0o7RWlFMTFHRTtJQUNFO0dqRTQxR0o7Q0FDRjtBT3ozR0M7RTBEaEJEO0lBbURJO0lBRUE7SUFDQTtHakV5MUdGO0VpRXYxR0U7SUFDRTtHakV5MUdKO0VpRXQxR0U7SUFDRSxpQkEvRWdCO0dqRXU2R3BCO0NBQ0Y7O0FrRWg2R0E7RXpEWUM7RXlEVkE7RUFDQTtFQUNBO0NsRW02R0Q7O0FrRS81R0E7RTFEMk5DO0VBQ0E7RUFDQTtDUndzR0Q7QU9uNUdDO0UyRGxCRDtJMURpT0k7R1J3c0dGO0NBQ0Y7QU94NUdDO0UyRGxCRDtJMUR3T0U7SUFDQTtHUnNzR0E7Q0FDRjtBTzk1R0M7RTJEbEJEO0kxRG1GTTtJQUFBO0dSazJHSjtDQUNGO0FPcDZHQztFMkRsQkQ7STFEMEdNO0lBQUE7R1JpMUdKO0NBQ0Y7QU8xNkdDO0UyRGxCRDtJMUQrR007SUFBQTtHUmsxR0o7Q0FDRjtBT2g3R0M7RTJEbEJEO0kxRG9ITTtJQUFBO0dSbTFHSjtDQUNGOztBT3Q3R0M7RTJEVEQ7SUFFRTtHbEVrOEdBO0NBQ0Y7O0FrRTk3R0E7RUFJQztFQUNBO0NsRTg3R0Q7QU9qOEdDO0UyREZEO0kxRG1FTTtHUm80R0o7Q0FDRjtBT3Q4R0M7RTJERkQ7STFEMEZNO0dSazNHSjtDQUNGO0FPMzhHQztFMkRGRDtJMUQrRk07R1JrM0dKO0NBQ0Y7QU9oOUdDO0UyREZEO0kxRG9HTTtHUmszR0o7Q0FDRjtBa0VoOUdDO0VBQ0M7Q2xFazlHRjs7QWtFNzhHQTtFQUNDO0NsRWc5R0Q7O0FrRTM4R0E7RUFFQztDbEU2OEdEO0FRaDBHQztFQUNDLGlCMEQvSXFCO0NsRWk5R3ZCO0FPbitHQztFMkRpQkQ7SUFLRTtHbEVpOUdBO0NBQ0Y7QU94K0dDO0UyRGlCRDtJQVFFO0dsRW05R0E7Q0FDRjs7QU83K0dDO0UyRCtCRDtJMURrQ007R1JpN0dKO0NBQ0Y7QU9uL0dDO0UyRCtCRDtJQUtFO0dsRW05R0E7Q0FDRjtBT3gvR0M7RTJEK0JEO0lBUUU7R2xFcTlHQTtDQUNGOztBa0VsOUdBO0VBQ0M7RUFDQTtDbEVxOUdEOztBa0VqOUdBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q2xFbTlHRDtBUWgxR0M7RUFFQztDUmkxR0Y7QWtFcDlHQztFMURxRUM7RTBEbkVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q2xFczlHRjtBa0VuOUdDO0VBQ0M7Q2xFcTlHRjtBa0VuOUdFO0VBQ0M7Q2xFcTlHSDtBa0VqOUdDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7Q2xFbTlHRjs7QWtFOThHQTtFQUNDO0VBQ0E7RUFDQTtDbEVpOUdEOztBa0U3OEdBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NsRWc5R0Q7O0FrRTU4R0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDbEUrOEdEO0FrRTc4R0M7RUFDQztFQUNBO0NsRSs4R0Y7QWtFNzhHQztFQUNDO0NsRSs4R0Y7QWtFNzhHQztFQUNDO0VBQ0E7Q2xFKzhHRjtBa0U3OEdDO0VBQ0M7RUFDQTtDbEUrOEdGO0FrRTU4R0M7RUFDQztDbEU4OEdGO0FrRTM4R0M7RUFDQztDbEU2OEdGOztBbUU1bkhBO0VBQ0M7Q25FK25IRDs7QW1FMW5IQTtFQUNDO0NuRTZuSEQ7O0FtRXpuSEM7RUFDQztDbkU0bkhGOztBbUV2bkhBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q25FMG5IRDs7QW9FanBIQTs7RUFBQTtBQUlBO0UzRGtCQztFMkRoQkE7RUFDQTtFQUNBO0NwRW1wSEQ7QW9FanBIQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3BFbXBIRjtBT3ZvSEM7RTZEMUJBO0lBaUJFO0dwRW9wSEQ7Q0FDRjtBb0VscEhFO0VBQ0M7RUFDQTtFQUNBO0NwRW9wSEg7O0FvRS9vSEE7RTVEdU1DO0VBQ0E7RUFDQTtFNER2TUE7RUFDQTtFQUNBO0VBQ0E7Q3BFb3BIRDtBTzNwSEM7RTZERUQ7STVENk1JO0dSZzlHRjtDQUNGO0FPaHFIQztFNkRFRDtJNURvTkU7SUFDQTtHUjg4R0E7Q0FDRjs7QW9FNXBIQTtFQUNDO0VBQ0E7Q3BFK3BIRDtBTzNxSEM7RTZEVUQ7SUFLRTtHcEVncUhBO0NBQ0Y7O0FvRTdwSEE7RUFDQztFQUNBO0NwRWdxSEQ7QU9yckhDO0U2RG1CRDtJQUtFO0dwRWlxSEE7Q0FDRjs7QW9FOXBIQTtFQUVDO0NwRWdxSEQ7QVFsZ0hDO0VBRUM7Q1JtZ0hGO0FvRWpxSEM7RUFDQztFQUNBO0VBQ0E7RUFDQTtDcEVtcUhGOztBb0UvcEhBO0VBQ0M7Q3BFa3FIRDs7QU8zc0hDO0U2RDRDRDtJQUVFO0dwRWtxSEE7Q0FDRjs7QXFFcHZIQTtFQUNDO0VBQ0E7RUFDQTtDckV1dkhEO0FPdnRIQztFOERuQ0Q7STdEb0dNO0dSMHBISjtDQUNGO0FPNXRIQztFOERuQ0Q7STdEMkhNO0dSd29ISjtDQUNGO0FPanVIQztFOERuQ0Q7STdEZ0lNO0dSd29ISjtDQUNGO0FPdHVIQztFOERuQ0Q7STdEcUlNO0dSd29ISjtDQUNGOztBcUVod0hBO0VBQ0M7Q3JFbXdIRDtBTy91SEM7RThEckJEO0k3RHNGTTtHUmtySEo7Q0FDRjtBT3B2SEM7RThEckJEO0k3RDZHTTtHUmdxSEo7Q0FDRjtBT3p2SEM7RThEckJEO0k3RGtITTtHUmdxSEo7Q0FDRjtBTzl2SEM7RThEckJEO0k3RHVITTtHUmdxSEo7Q0FDRjtBT253SEM7RThEYkM7SUFDQztJQUNBO0lBQ0E7R3JFbXhIRDtDQUNGO0FPMXdIQztFOERMQztJQUNDO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7R3JFa3hIRDtFcUVoeEhDO0lBQ0M7R3JFa3hIRjtDQUNGOztBcUU1d0hBO0VBQ0M7RUFDQTtDckUrd0hEO0FPOXhIQztFOERhRDtJQUtFO0dyRWd4SEE7Q0FDRjtBT255SEM7RThEYUQ7SUFTRTtJQUNBO0lBQ0E7SUFDQTtHckVpeEhBO0NBQ0Y7O0FxRTd3SEE7O0VBRUM7Q3JFZ3hIRDtBT2h6SEM7RThEOEJEOztJQUtFO0lBQ0E7SUFDQTtHckVreEhBO0NBQ0Y7QU94ekhDO0U4RDhCRDs7SUFXRTtHckVveEhBO0NBQ0Y7O0FxRWh4SEE7RUFDQztFQUNBO0NyRW14SEQ7QU9uMEhDO0U4RDhDRDtJQUtFO0lBQ0E7R3JFb3hIQTtDQUNGO0FPejBIQztFOEQ4Q0Q7SUFVRTtJQUNBO0dyRXF4SEE7Q0FDRjs7QXFFanhIQTtFQUNDO0VBQ0Esa0JuRWxFd0I7RW1FbUV4QixtQm5FbkV3QjtDRnUxSHpCO0FPcjFIQztFOEQ4REQ7SUFNRTtJQUNBO0dyRXF4SEE7Q0FDRjtBTzMxSEM7RThEOEREO0lBV0U7R3JFc3hIQTtDQUNGOztBcUVseEhBOztFQUVDO0NyRXF4SEQ7O0FxRWp4SEE7RUFDQztDckVveEhEOztBc0UzNEhBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDdEU4NEhEO0FPajNIQztFK0RsQ0Q7SUFRRTtHdEUrNEhBO0NBQ0Y7O0FzRTU0SEE7RUFDQztFQUNBLGdCQW5CeUI7Q3RFazZIMUI7QU8zM0hDO0UrRHRCRDtJQUtFO0d0RWc1SEE7Q0FDRjtBT2g0SEM7RStEdEJEO0lBUUU7R3RFazVIQTtDQUNGO0FPcjRIQztFK0R0QkQ7SUFXRTtHdEVvNUhBO0NBQ0Y7QU8xNEhDO0UrRHRCRDtJQWNFO0lBQ0EsYUEvQnVCO0d0RXE3SHZCO0NBQ0Y7O0FzRW41SEE7RUFDQztDdEVzNUhEOztBc0VuNUhBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3RFczVIRDs7QXVFajhIRTtFQUNDO0N2RW84SEg7O0F3RTk3SEE7RWhFcU9DO0VBQ0E7RUFDQTtDUjZ0SEQ7QU94NkhDO0VpRTVCRDtJaEUyT0k7R1I2dEhGO0NBQ0Y7QU83NkhDO0VpRTVCRDtJaEVrUEU7SUFDQTtHUjJ0SEE7Q0FDRjs7QXdFMzhIQTtFbEVpQk07RUFSQTtFa0VQTDtDeEUrOEhEOztBd0U1OEhBO0VBRUM7Q3hFODhIRDtBUXR4SEM7RUFDQyxpQmdFMUxZO0N4RWs5SGQ7O0F3RTk4SEE7RUFFQztFQUNBO0VBQ0E7RUFDQTtDeEVnOUhEO0FRM3dIQztFQUVDO0NSNHdIRjtBd0VqOUhDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0N4RW05SEY7QXdFaDlIQztFQUVDO0N4RWk5SEY7QXdFLzhIRTtFQUNDO0N4RWk5SEg7QXdFNzhIQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0N4RSs4SEY7QU9qK0hDO0VpRWREO0lBb0NFO0lBQ0E7SUFDQTtHeEUrOEhBO0NBQ0Y7O0F3RTU4SEE7RUFDQztFQUNBLGF0RWhDd0I7Q0YrK0h6QjtBTzcrSEM7RWlFNEJEO0lBS0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtHeEVnOUhBO0NBQ0Y7QU90L0hDO0VpRTRCRDtJQWFFO0d4RWk5SEE7Q0FDRjs7QXdFOThIQTtFQUNDO0VBQ0E7RUFDQTtDeEVpOUhEO0FPamdJQztFaUU2Q0Q7SUFNRTtJQUNBO0lBQ0E7SUFDQTtHeEVrOUhBO0NBQ0Y7O0F3RS84SEE7RUFDQztFQUNBO0VBQ0E7RUFDQSxTdEVoRXdCO0VzRWlFeEIsV3RFakV3QjtFc0VrRXhCO0VBQ0E7Q3hFazlIRDtBT25oSUM7RWlFMEREO0lBVUU7SUFDQTtJQUNBO0lBQ0E7R3hFbTlIQTtDQUNGOztBd0U5OEhBO0VBQ0M7Q3hFaTlIRDs7QXdFOThIQTtFQUNDO0VBQ0E7RUFDQTtDeEVpOUhEOztBd0U5OEhBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDeEVpOUhEOztBd0U5OEhBO0VBQ0M7Q3hFaTlIRDs7QXdFOThIQTtFQUNDO0VBQ0E7Q3hFaTlIRDs7QXlFOWtJQTtFaEVVQztFZ0VSQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0N6RStrSUQ7QXlFNWtJQztFQUNDO0VBQ0E7RUFDQTtDekU4a0lGO0F5RTFrSUM7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0N6RTRrSUY7QXlFMWtJRTtFQUNDO0VBQ0E7Q3pFNGtJSDtBeUV2a0lDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDekV5a0lGO0FPM21JQztFa0V4QkQ7SUErREU7R3pFd2tJQTtDQUNGOztBeUVwa0lBO0VqRTZKQztFQUNBO0VBQ0E7RWlFN0pBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3pFeWtJRDtBTzNuSUM7RWtFNENEO0lqRW1LSTtHUmc3SEY7Q0FDRjtBT2hvSUM7RWtFNENEO0lqRTBLRTtJQUNBO0dSODZIQTtDQUNGOztBeUVobElBO0VBQ0M7Q3pFbWxJRDs7QXlFL2tJQTtFQUNDO0VBQ0E7RUFDQTtDekVrbElEO0F5RWhsSUM7RUFDQztDekVrbElGOztBeUU3a0lBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDekVnbElEOztBeUU1a0lBO0VBQ0M7RUFDQTtDekUra0lEOztBeUUza0lBO0VuRTVGTTtFQVJBO0VtRXNHTDtFQUNBO0VBQ0E7RUFDQTtDekUra0lEO0F5RTdrSUM7RUFDQztDekUra0lGO0F5RTVrSUM7RUFDQztFQUNBO0N6RThrSUY7QXlFM2tJQztFQUNDO0VBQ0E7RUFDQTtDekU2a0lGO0F5RTNrSUU7RUFDSTtFQUNIO0VBQ0c7RUFDQTtFQUNIO0N6RTZrSUg7O0EwRW51SUE7RWxFZ1BDO0VBQ0E7RUFDQTtDUnUvSEQ7QU9sc0lDO0VtRXZDRDtJbEVzUEk7R1J1L0hGO0NBQ0Y7QU92c0lDO0VtRXZDRDtJbEU2UEU7SUFDQTtHUnEvSEE7Q0FDRjs7QU83c0lDO0VtRW5DRDtJQUVFO0cxRW12SUE7Q0FDRjs7QU9udElDO0VtRTdCRDtJQUVFO0cxRW12SUE7Q0FDRjtBT3p0SUM7RW1FN0JEO0lBTUU7SUFDQTtHMUVvdklBO0NBQ0Y7O0EwRWp2SUE7RUFDQztDMUVvdklEO0FPbnVJQztFbUVsQkQ7SUFJRTtHMUVxdklBO0NBQ0Y7QU94dUlDO0VtRWxCRDtJQVFFO0lBQ0E7RzFFc3ZJQTtDQUNGO0FPOXVJQztFbUVsQkQ7SUFZRTtJQUNBO0lBQ0E7RzFFd3ZJQTtDQUNGOztBMEVydklBO0VBQ0M7RUFDQTtDMUV3dklEOztBMEVydklBO0VwRVpNO0VBUkE7RW9Fc0JMO0MxRXl2SUQ7QTBFdnZJQztFQUFZO0MxRTB2SWI7QTBFenZJQztFQUFZO0MxRTR2SWI7O0EwRXp2SUE7RUFDQztFQUNBO0MxRTR2SUQ7O0EwRXp2SUE7RXBFekJNO0VBUkE7RW9FbUNMO0MxRTZ2SUQ7O0EwRTF2SUE7RXBFOUJNO0VBUkE7RW9Fd0NMO0MxRTh2SUQ7O0EyRS95SUE7RUFDQztFQUNBO0VBQ0E7QzNFa3pJRDs7QTJFL3lJQTtFbkVrSkU7RW1FaEpEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG9MQUNDO0MzRWl6SUY7QU94eUlDO0VvRWxCRDtJQWdCRTtHM0U4eUlBO0NBQ0Y7O0EyRTN5SUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0MzRTh5SUQ7O0EyRTN5SUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0MzRTh5SUQ7O0EyRTN5SUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtDM0U4eUlEOztBMkUzeUlBO0VBQ0M7QzNFOHlJRDs7QTJFM3lJQTtFckVwQ007RUFSQTtFcUU4Q0w7RUFDQTtDM0UreUlEOztBMkU1eUlBO0VBQ0M7QzNFK3lJRDs7QTRFNzJJQTtFbkVZQztFbUVWQTtFQUNBO0VBQ0EscUIxRXFCMkI7RTBFcEIzQjtDNUVnM0lEO0E0RTkySUM7RUFDQztDNUVnM0lGOztBNEUzMklBO0VwRXNOQztFQUNBO0VBQ0E7RUZsTks7RUFSQTtFc0VLTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzVFaTNJRDtBTzUySUM7RXFFYkQ7SXBFNE5JO0dSaXFJRjtDQUNGO0FPajNJQztFcUViRDtJcEVtT0U7SUFDQTtHUitwSUE7Q0FDRjs7QTRFeDNJQTtFQUNDO0VBQ0E7RUFDRTtFQUNBO0VBQ0Y7QzVFMjNJRDs7QTRFdjNJQTtFQUNDO0VBQ0E7RUFDQTtDNUUwM0lEOztBNEV0M0lBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QzVFeTNJRDs7QTRFcjNJQTtFQUNDO0VBQ0E7QzVFdzNJRDs7QTRFcDNJQTtFQUVDO0VBQ0E7RUFDQTtDNUVzM0lEO0FRM3RJQztFQUVDO0NSNHRJRjtBNEV2M0lDO0VBQ0M7QzVFeTNJRjtBNEV0M0lDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QzVFdzNJRjs7QTRFbjNJQTtFQUNDO0VBQ0E7QzVFczNJRDs7QTZFbDhJQTs7OztHQUFBO0FBT0E7RXJFNE5DO0VBQ0E7RUFDQTtDUnd1SUQ7QU9uN0lDO0VzRW5CRDtJckVrT0k7R1J3dUlGO0NBQ0Y7QU94N0lDO0VzRW5CRDtJckV5T0U7SUFDQTtHUnN1SUE7Q0FDRjs7QTZFMzhJQTtFckVnSkU7RXFFOUlEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzdFODhJRDtBNkU1OElDO0VBQ0M7RUFDQTtDN0U4OElGO0E2RTM4SUM7RUFDQztFQUNBO0VBQ0E7QzdFNjhJRjtBNkUxOElDO0VBQ0M7RUFDQTtDN0U0OElGO0E2RTE4SUU7RUFDQztDN0U0OElIOztBTzE5SUM7RXNFbUJEO0lBRUU7RzdFMDhJQTtDQUNGO0FPaCtJQztFc0VtQkQ7SUFNRTtJQUNBO0lBQ0E7RzdFMjhJQTtDQUNGO0FPditJQztFc0VtQkQ7SUFZRTtJQUNBO0c3RTQ4SUE7Q0FDRjs7QTZFejhJQTtFQUNDO0M3RTQ4SUQ7O0E2RXo4SUE7RUFDQztDN0U0OElEOztBT3IvSUM7RXNFNENEO0lBRUU7RzdFNDhJQTtDQUNGO0FPMy9JQztFc0U0Q0Q7SUFNRTtHN0U2OElBO0NBQ0Y7O0E2RXo4SUE7RXZFOURNO0VBUkE7RXVFd0VMO0VBQ0E7RUFDQTtDN0U2OElEOztBT3hnSkM7RXNFOEREO0lBRUU7SUFBQTtJQUNBO0lBQUE7SUFDQTtJQUFBO0lBQ0E7RzdFNjhJQTtDQUNGOztBT2poSkM7RXNFd0VBO0lyRVBLO0dScTlJSjtDQUNGO0FPdmhKQztFc0V1RUQ7SUFRRTtJQUFBO0lBQ0E7SUFBQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RzdFNDhJQTtFNkUxOElBO0lBQ0M7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RzdFNDhJRDtDQUNGOztBNkV4OElBO0V2RTdHTTtFQVJBO0V1RXVITDtFQUNBO0VBQ0E7RUFDQTtDN0U0OElEO0FPdmpKQztFc0VzR0Q7SUFRRTtHN0U2OElBO0NBQ0Y7O0E4RW5tSkE7RXRFZ1BDO0VBQ0E7RUFDQTtDUnUzSUQ7QU9sa0pDO0V1RXZDRDtJdEVzUEk7R1J1M0lGO0NBQ0Y7QU92a0pDO0V1RXZDRDtJdEU2UEU7SUFDQTtHUnEzSUE7Q0FDRjtBTzdrSkM7RXVFdkNEO0l0RXdHTTtJQUFBO0dSaWhKSjtDQUNGO0FPbmxKQztFdUV2Q0Q7SXRFK0hNO0lBQUE7R1JnZ0pKO0NBQ0Y7QU96bEpDO0V1RXZDRDtJdEVvSU07SUFBQTtHUmlnSko7Q0FDRjtBTy9sSkM7RXVFdkNEO0l0RXlJTTtJQUFBO0dSa2dKSjtDQUNGOztBT3JtSkM7RXVFL0JEO0lBRUk7SUFDQTtJQUNBO0c5RXVvSkY7Q0FDRjs7QThFcG9KQTtFQUNFO0VBQ0E7RUFDQTtDOUV1b0pGO0FPbm5KQztFdUV2QkQ7SUFNSTtJQUNBO0lBQ0E7SUFDQTtHOUV3b0pGO0NBQ0Y7QU8zbkpDO0V1RXZCRDtJQWFJO0c5RXlvSkY7Q0FDRjtBT2hvSkM7RXVFdkJEO0lBaUJJO0c5RTBvSkY7Q0FDRjs7QStFeHFKQTtFdkU0T0M7RUFDQTtFQUNBO0NSZzhJRDtBTzNvSkM7RXdFbkNEO0l2RWtQSTtHUmc4SUY7Q0FDRjtBT2hwSkM7RXdFbkNEO0l2RXlQRTtJQUNBO0dSODdJQTtDQUNGO0FPdHBKQztFd0VuQ0Q7SXZFb0dNO0dSeWxKSjtDQUNGO0FPM3BKQztFd0VuQ0Q7SXZFMkhNO0dSdWtKSjtDQUNGO0FPaHFKQztFd0VuQ0Q7SXZFZ0lNO0dSdWtKSjtDQUNGO0FPcnFKQztFd0VuQ0Q7SXZFcUlNO0dSdWtKSjtDQUNGO0FPMXFKQztFd0VuQ0Q7SUFPRTtHL0Uwc0pBO0NBQ0Y7O0FPL3FKQztFd0V2QkQ7SUFFRTtJQUNBLG9CQWxCYTtHL0UydEpiO0NBQ0Y7O0ErRXJzSkE7RUFDQztDL0V3c0pEO0FPMXJKQztFd0VmRDtJQUlFO0lBQ0E7Ry9FeXNKQTtDQUNGOztBT2hzSkM7RXlFNUJEO0lBRUU7R2hGK3RKQTtDQUNGOztBT3RzSkM7RXlFdEJEO0lBRUU7R2hGK3RKQTtDQUNGOztBZ0Y1dEpBO0VBQ0M7RUFDQTtFQUNBO0NoRit0SkQ7QU9sdEpDO0V5RWhCRDtJQU1FO0lBRUM7SUFDQTtJQUNBO0lBQ0E7R2hGK3RKRDtDQUNGO0FPM3RKQztFeUVoQkQ7SUFnQkU7SUFDQTtHaEYrdEpBO0NBQ0Y7O0FnRjV0SkE7RUFDQztFQUNBO0NoRit0SkQ7QU90dUpDO0V5RUtEO0lBS0U7SUFDQTtJQUNBO0lBQ0E7R2hGZ3VKQTtDQUNGO0FPOXVKQztFeUVLRDtJQVlFO0lBQ0E7R2hGaXVKQTtDQUNGO0FPcHZKQztFeUVLRDtJQWlCRTtHaEZrdUpBO0NBQ0Y7O0FnRi90SkE7RTFFakNNO0VBUkE7RTBFMkNMO0VBQ0E7Q2hGbXVKRDs7QWdGaHVKQTtFQUNDO0VBQ0E7Q2hGbXVKRDs7QWdGaHVKQTtFQUVDO0VBQ0E7Q2hGa3VKRDtBUW5tSkM7RUFDQyxpQndFbElZO0NoRnV1SmQ7QWdGbnVKQztFQUlDO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWUFQUTtFQVFSLGFBUFM7RUFRVDtFQUNBO0NoRmt1SkY7O0FnRjl0SkE7RUFDQztDaEZpdUpEOztBZ0Y5dEpBO0VBQ0M7RUFDQTtDaEZpdUpEOztBaUZ2MEpBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7Q2pGMDBKRDtBaUZ4MEpDO0VBQ0M7Q2pGMDBKRjs7QWlGcjBKQTtFekU4SkU7RXlFNUpEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NqRncwSkQ7QWlGdDBKQztFQUNDO0VBQ0E7RUFDQTtDakZ3MEpGOztBaUZuMEpBO0VBQ0M7Q2pGczBKRDs7QWlGbDBKQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NqRnEwSkQ7QWlGbjBKQztFQUNDO0NqRnEwSkY7O0FpRmgwSkE7RTNFckJNO0VBUkE7RTJFK0JMO0VBQ0E7Q2pGbzBKRDs7QWlGaDBKQTtFM0U1Qk07RUFSQTtFMkVzQ0w7RUFDQTtDakZvMEpEOztBaUZoMEpBO0VBQ0M7Q2pGbTBKRDs7QWtGcjRKQTtFQUNDO0VBQ0E7Q2xGdzRKRDtBT3IySkM7RTJFckNEO0kxRThPQztJQUNBO0lBQ0E7R1JncUpDO0NBQ0Y7QU81MkpDO0UyRXJDRDtJMUVvUEk7R1JpcUpGO0NBQ0Y7QU9qM0pDO0UyRXJDRDtJMUUyUEU7SUFDQTtHUitwSkE7Q0FDRjtBa0ZwNUpDO0VBQ0M7RUFDQTtFQUNHO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDSDtDbEZzNUpGOztBa0ZsNUpBO0VBQ0M7RUFDQTtDbEZxNUpEOztBa0ZqNUpBO0UxRW9OQztFQUNBO0VBQ0E7RTBFcE5BO0NsRnM1SkQ7QU83NEpDO0UyRVhEO0kxRTBOSTtHUmtzSkY7Q0FDRjtBT2w1SkM7RTJFWEQ7STFFaU9FO0lBQ0E7R1Jnc0pBO0NBQ0Y7O0FBeDRKQTs7K0RBQUE7QW1GdkRBOzs4RUFBQTtBbkYrREE7OytEQUFBO0FvRi9EQTtFQUNDO0VBQ0E7Q3BGMjhKRDtBb0Z6OEpDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7Q3BGMjhKRjtBb0Z6OEpFO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3BGMjhKSDtBb0Z2OEpDO0U5RVdLO0VBUkE7Q053OEpOO0FvRnY4Skc7RUFDQztDcEZ5OEpKOztBcUZuK0pBOztHQUFBO0FBT0M7RUFDQztDckZrK0pGO0FxRjk5SkM7RUFDQztDckZnK0pGO0FxRjU5SkM7RUFDQztDckY4OUpGO0FxRjM5SkM7RUFDQztDckY2OUpGO0FxRjE5SkM7RUFDQztDckY0OUpGO0FxRjE5SkU7RUFDQztFQUNBO0VBQ0E7Q3JGNDlKSDtBcUYxOUpHO0UvRURHO0VBUkE7RStFV0Y7RUFDQTtFQUNBO0VBQ0E7Q3JGNjlKSjtBcUZ4OUpDO0VBQ0M7RUFDQTtDckYwOUpGO0FxRng5SkU7RUFDQztFQUNBO0VBQ0E7RUFDQTtDckYwOUpIO0FxRng5Skc7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3JGMDlKSjs7QUE5OEpBOzs7K0RBQUE7QXNGdkVBOzt5RkFBQTtBQUtBOzs7Ozs7Ozs7Ozs7OztHQUFBO0FBMEJHO0VBQ0M7Q3RGK2dLSjs7QXNGN2dLRztFQUNDO0N0RmdoS0o7O0FzRnBoS0c7RUFDQztDdEZ1aEtKOztBc0ZyaEtHO0VBQ0M7Q3RGd2hLSjs7QXNGNWhLRztFQUNDO0N0RitoS0o7O0FzRjdoS0c7RUFDQztDdEZnaUtKOztBc0ZwaUtHO0VBQ0M7Q3RGdWlLSjs7QXNGcmlLRztFQUNDO0N0RndpS0o7O0FzRjVpS0c7RUFDQztDdEYraUtKOztBc0Y3aUtHO0VBQ0M7Q3RGZ2pLSjs7QXNGcGpLRztFQUNDO0N0RnVqS0o7O0FzRnJqS0c7RUFDQztDdEZ3aktKOztBc0Y1aktHO0VBQ0M7Q3RGK2pLSjs7QXNGN2pLRztFQUNDO0N0RmdrS0o7O0FzRnBrS0c7RUFDQztDdEZ1a0tKOztBc0Zya0tHO0VBQ0M7Q3RGd2tLSjs7QXNGNWtLRztFQUNDO0N0RitrS0o7O0FzRjdrS0c7RUFDQztDdEZnbEtKOztBc0ZwbEtHO0VBQ0M7Q3RGdWxLSjs7QXNGcmxLRztFQUNDO0N0RndsS0o7O0FzRjVsS0c7RUFDQztDdEYrbEtKOztBc0Y3bEtHO0VBQ0M7Q3RGZ21LSjs7QXNGcG1LRztFQUNDO0N0RnVtS0o7O0FzRnJtS0c7RUFDQztDdEZ3bUtKOztBc0Y1bUtHO0VBQ0M7Q3RGK21LSjs7QXNGN21LRztFQUNDO0N0RmduS0o7O0FzRnBuS0c7RUFDQztDdEZ1bktKOztBc0ZybktHO0VBQ0M7Q3RGd25LSjs7QXNGNW5LRztFQUNDO0N0RituS0o7O0FzRjduS0c7RUFDQztDdEZnb0tKOztBc0Zwb0tHO0VBQ0M7Q3RGdW9LSjs7QXNGcm9LRztFQUNDO0N0RndvS0o7O0FzRjVvS0c7RUFDQztDdEYrb0tKOztBc0Y3b0tHO0VBQ0M7Q3RGZ3BLSjs7QXNGcHBLRztFQUNDO0N0RnVwS0o7O0FzRnJwS0c7RUFDQztDdEZ3cEtKOztBc0Y1cEtHO0VBQ0M7Q3RGK3BLSjs7QXNGN3BLRztFQUNDO0N0RmdxS0o7O0FzRnBxS0c7RUFDQztDdEZ1cUtKOztBc0ZycUtHO0VBQ0M7Q3RGd3FLSjs7QXVGM3NLQTs7eUZBQUE7QUFLQTs7Ozs7Ozs7R0FBQTtBQWNHO0VqRmFHO0VBUkE7Q05vc0tOOztBdUZ6c0tHO0VqRmFHO0VBUkE7Q055c0tOOztBdUY5c0tHO0VqRmFHO0VBUkE7Q044c0tOOztBdUZudEtHO0VqRmFHO0VBUkE7Q05tdEtOOztBdUZ4dEtHO0VqRmFHO0VBUkE7Q053dEtOOztBdUY3dEtHO0VqRmFHO0VBUkE7Q042dEtOOztBdUZsdUtHO0VqRmFHO0VBUkE7Q05rdUtOOztBdUZ2dUtHO0VqRmFHO0VBUkE7Q051dUtOOztBdUY1dUtHO0VqRmFHO0VBUkE7Q040dUtOOztBdUZqdktHO0VqRmFHO0VBUkE7Q05pdktOOztBdUZ0dktHO0VqRmFHO0VBUkE7Q05zdktOOztBdUYzdktHO0VqRmFHO0VBUkE7Q04ydktOOztBdUZod0tHO0VqRmFHO0VBUkE7Q05nd0tOOztBdUZyd0tHO0VqRmFHO0VBUkE7Q05xd0tOOztBdUYxd0tHO0VqRmFHO0VBUkE7Q04wd0tOOztBdUYvd0tHO0VqRmFHO0VBUkE7Q04rd0tOOztBdUZweEtHO0VqRmFHO0VBUkE7Q05veEtOOztBdUZ6eEtHO0VqRmFHO0VBUkE7Q055eEtOOztBdUZyeEtBOzs7Ozs7OztHQUFBO0FDNUJBO0VBQ0M7Q3hGNnpLRDs7QXdGMXpLQTtFQUNDO0VBQ0E7RUFDQTtDeEY2ektEOztBd0YxektBO0VBQ0M7Q3hGNnpLRDs7QXdGMXpLQTtFQUNDO0N4RjZ6S0Q7O0F3RjF6S0E7RUFDQztDeEY2ektEOztBeUZoMUtBOzs7RUFBQTtBQ0VDO0VBQXlCO0MxRnMxSzFCOztBMEZyMUtDO0VBQXlCO0MxRnkxSzFCOztBMEZ4MUtDO0VBQXlCO0MxRjQxSzFCOztBMEYzMUtDO0VBQXlCO0MxRisxSzFCOztBMEY1MUtDO0VBQXlCO0MxRmcySzFCOztBMEYvMUtDO0VBQXlCO0MxRm0ySzFCOztBMEZsMktDO0VBQXlCO0MxRnMySzFCOztBMEZyMktDO0VBQXlCO0MxRnkySzFCOztBMEZsM0tDO0VBQXlCO0MxRnMzSzFCOztBMEZyM0tDO0VBQXlCO0MxRnkzSzFCOztBMEZ4M0tDO0VBQXlCO0MxRjQzSzFCOztBMEYzM0tDO0VBQXlCO0MxRiszSzFCOztBMEY1M0tDO0VBQXlCO0MxRmc0SzFCOztBMEYvM0tDO0VBQXlCO0MxRm00SzFCOztBMEZsNEtDO0VBQXlCO0MxRnM0SzFCOztBMEZyNEtDO0VBQXlCO0MxRnk0SzFCOztBMEZsNUtDO0VBQXlCO0MxRnM1SzFCOztBMEZyNUtDO0VBQXlCO0MxRnk1SzFCOztBMEZ4NUtDO0VBQXlCO0MxRjQ1SzFCOztBMEYzNUtDO0VBQXlCO0MxRis1SzFCOztBMEY1NUtDO0VBQXlCO0MxRmc2SzFCOztBMEYvNUtDO0VBQXlCO0MxRm02SzFCOztBMEZsNktDO0VBQXlCO0MxRnM2SzFCOztBMEZyNktDO0VBQXlCO0MxRnk2SzFCOztBMEZsN0tDO0VBQXlCO0MxRnM3SzFCOztBMEZyN0tDO0VBQXlCO0MxRnk3SzFCOztBMEZ4N0tDO0VBQXlCO0MxRjQ3SzFCOztBMEYzN0tDO0VBQXlCO0MxRis3SzFCOztBMEY1N0tDO0VBQXlCO0MxRmc4SzFCOztBMEYvN0tDO0VBQXlCO0MxRm04SzFCOztBMEZsOEtDO0VBQXlCO0MxRnM4SzFCOztBMEZyOEtDO0VBQXlCO0MxRnk4SzFCOztBMEZsOUtDO0VBQXlCO0MxRnM5SzFCOztBMEZyOUtDO0VBQXlCO0MxRnk5SzFCOztBMEZ4OUtDO0VBQXlCO0MxRjQ5SzFCOztBMEYzOUtDO0VBQXlCO0MxRis5SzFCOztBMEY1OUtDO0VBQXlCO0MxRmcrSzFCOztBMEYvOUtDO0VBQXlCO0MxRm0rSzFCOztBMEZsK0tDO0VBQXlCO0MxRnMrSzFCOztBMEZyK0tDO0VBQXlCO0MxRnkrSzFCOztBMEZsL0tDO0VBQXlCO0MxRnMvSzFCOztBMEZyL0tDO0VBQXlCO0MxRnkvSzFCOztBMEZ4L0tDO0VBQXlCO0MxRjQvSzFCOztBMEYzL0tDO0VBQXlCO0MxRisvSzFCOztBMEY1L0tDO0VBQXlCO0MxRmdnTDFCOztBMEYvL0tDO0VBQXlCO0MxRm1nTDFCOztBMEZsZ0xDO0VBQXlCO0MxRnNnTDFCOztBMEZyZ0xDO0VBQXlCO0MxRnlnTDFCOztBMEZsaExDO0VBQXlCO0MxRnNoTDFCOztBMEZyaExDO0VBQXlCO0MxRnloTDFCOztBMEZ4aExDO0VBQXlCO0MxRjRoTDFCOztBMEYzaExDO0VBQXlCO0MxRitoTDFCOztBMEY1aExDO0VBQXlCO0MxRmdpTDFCOztBMEYvaExDO0VBQXlCO0MxRm1pTDFCOztBMEZsaUxDO0VBQXlCO0MxRnNpTDFCOztBMEZyaUxDO0VBQXlCO0MxRnlpTDFCOztBMEZsakxDO0VBQXlCO0MxRnNqTDFCOztBMEZyakxDO0VBQXlCO0MxRnlqTDFCOztBMEZ4akxDO0VBQXlCO0MxRjRqTDFCOztBMEYzakxDO0VBQXlCO0MxRitqTDFCOztBMEY1akxDO0VBQXlCO0MxRmdrTDFCOztBMEYvakxDO0VBQXlCO0MxRm1rTDFCOztBMEZsa0xDO0VBQXlCO0MxRnNrTDFCOztBMEZya0xDO0VBQXlCO0MxRnlrTDFCOztBMEZsbExDO0VBQXlCO0MxRnNsTDFCOztBMEZybExDO0VBQXlCO0MxRnlsTDFCOztBMEZ4bExDO0VBQXlCO0MxRjRsTDFCOztBMEYzbExDO0VBQXlCO0MxRitsTDFCOztBMEY1bExDO0VBQXlCO0MxRmdtTDFCOztBMEYvbExDO0VBQXlCO0MxRm1tTDFCOztBMEZsbUxDO0VBQXlCO0MxRnNtTDFCOztBMEZybUxDO0VBQXlCO0MxRnltTDFCOztBTzdrTEM7RW1GekJEO0lsRjBGTTtJQUFBO0dSa2hMSjtDQUNGO0FPcGxMQztFbUZ6QkQ7SWxGaUhNO0lBQUE7R1JpZ0xKO0NBQ0Y7QU8xbExDO0VtRnpCRDtJbEZzSE07SUFBQTtHUmtnTEo7Q0FDRjtBT2htTEM7RW1GekJEO0lsRjJITTtJQUFBO0dSbWdMSjtDQUNGOztBT3RtTEM7RW1GakJBO0lBQ0M7RzFGMm5MQTtDQUNGO0EyRm5wTEE7Ozs7Z0ZBQUE7QUF5QkE7RWxGQUM7RUR1TkE7RUFDQTtFQUNBO0VtRnROQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7QzNGa29MRDtBTzduTEM7RW9GZEQ7SW5GNk5JO0dSazdLRjtDQUNGO0FPbG9MQztFb0ZkRDtJbkZvT0U7SUFDQTtHUmc3S0E7Q0FDRjtBT3hvTEM7RW9GZEQ7SUFtQkU7RzNGdW9MQTtDQUNGOztBMkZub0xBO0VBQ0M7RUFFQTtDM0Zxb0xEO0FPbHBMQztFb0ZVRDtJQVlFO0czRmdvTEE7Q0FDRjtBT3ZwTEM7RW9GVUQ7SUFxQkU7RzNGNG5MQSIsImZpbGUiOiJjc3Mvc3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyogIDEgLSBTRVRUSU5HU1xuICogIEdsb2JhbCB2YXJpYWJsZXMsIHNpdGUtd2lkZSBzZXR0aW5ncyxcbiAqICBjb25maWcgc3dpdGNoZXMgZXRjLlxuICpcbiAqICBUaGUgb3JkZXIgaW4gd2hpY2ggdGhlc2UgU2FzcyBmaWxlc1xuICogIGFyZSBsb2FkZWQgaXMgY3JpdGljYWwhXG4gKiAgU28gcGxlYXNlIGJlIGNhcmVmdWwgd2hlbiBlZGl0aW5nXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE9yZ2FuaXplIGNvbG9yIHZhcmlhYmxlcyBpbiBhIFNhc3MgTWFwLlxuICAgVGhpcyB3YXksIHRoZSBjb2xvcnMgY2FuIGJlIGl0ZXJhdGVkLCBhcmUgbW9yZSBvcmdhbml6ZWQsXG4gICBhbmQgYXJlIG1vcmUgaW50dWl0aXZlIHRvIHJlZmVyZW5jZS5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKlx0QSBzaW1wbGUgZnVuY3Rpb24gZm9yIGFjY2Vzc2luZyB0aGUgY29sb3JzIGZyb20gb3VyIG1hcHBpbmdcbiAqXHRUbyBhY2Nlc3MgY29sb3JzIGluIG91ciBwYWxldHRlLCB3ZSB1c2UgYSB2ZXJ5IHNpbXBsZSBjdXN0b20gU2FzcyBmdW5jdGlvblxuICogIFRoaXMgZnVuY3Rpb24gaXMgcGxhY2VkIGhlcmUsIChhbmQgbm90IGluIHRoZSB0b29sYm94KVxuICogIGJlY2F1c2Ugd2Ugd2FudCB0byB1c2UgaXQgaW4gb3VyIG90aGVyIHNldHRpbmcgZmlsZXNcblxuXHRVU0FHRTpcblxuXHQuZGVtbyB7XG5cdFx0Y29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNTAwKTtcblx0fVxuXG4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbmZpZyBzZXR0aW5nc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcblx0WzFdXHRcdExvZ28gZGFyayBvciBsaWdodCBjYW4gYmUgc2V0IGluIGhlYWRlci5ibGFkZS5waHAgLyBmb290ZXIuYmxhZGUucGhwICZcblx0WzJdIFx0U2V0IHRoaXMgdG8gdHJ1ZSB3aGVuIGJnQ29sb3IgZ2V0cyBhIGRhcmsgY29sb3IgdGhhdCBjb250cmFzdCB0aGUgYm9keSBiZyBjb2xvclxuKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBcdCBEZWZpbmVzIHRoZSB0eXBvZ3JhcGhpYyBiYXNlbGluZS5cbiAgIFdlIGRlZmluZSBldmVyeSBzaXplIGluIHBpeGVscywgdGhlIHVuZGVybHlpbmcgc3lzdGVtXG4gICBjb252ZXJ0cyB0aGUgcmVzcGVjdGl2ZSB1bml0cyB0byB0aGUgcmVzcG9uc2l2ZSBSRU0gdmFsdWUuXG4gXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBPdXIgYmFzZSBmb250LXNpemUgYW5kIGxpbmUtaGVpZ2h0XG4gKi9cbi8qKlxuICpcdEhlcmUgd2UgYXNzaWduIHNob3J0IG5hbWVzIGZvciB0aGUgZm9udCBmYW1pbGllc1xuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRGVmaW5lIGJyZWFrcG9pbnRzIGZvciBnaXZlbiBmb3JtYXRzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogIDIgLSBUT09MU1xuICogIFNpdGUgd2lkZSBtaXhpbnMgYW5kIGZ1bmN0aW9uc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBGdW5jdGlvbnMgdXNlZCBpbiBncmlkIGNhbGN1bGF0aW9uXG4gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgKiBSZXR1cm4gcGVyY2VudGFnZSBiYXNlZCBvbiBhbW91bnQgb2YgY29sdW1uc1xuICAqIFVzZSBwYXJlbnQgY29sdW1uIHNpemUgdG8gYWRqdXN0IHRoZSBvcmlnaW5cbiAgKi9cbi8qKlxuICAqIERlZmF1bHQgZnVuY3Rpb24gZm9yIGNvbHVtbnNcbiAgKiBSZXR1cm4gYXMgcGVyY2VudGFnZVxuICAqL1xuLyoqXG4gICogUmV0dXJuIGFzIHZpZXdwb3J0IHdpZHRoXG4gICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogRm9udCByZWxhdGVkIGZ1bmN0aW9uc1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogIE1peGluIGZvciBzZXR0aW5nIGZvbnQtc2l6ZSBpbiBSRU0gdGhyb3VnaCBhIFNhc3MgTWFwIHdpdGggYWxsIGF2YWlsYWJsZSBzaXplc1xuXG4gICAgVVNBR0U6XG5cbiAgICAubXlDbGFzcyB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSh4bCk7XG4gICAgfVxuXG4gKi9cbi8qIE1lZGlhIHF1ZXJ5IG1peGluIGZvciB3cml0aW5nIE1vYmlsZSBGaXJzdFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFRvb2xib3ggZnVuY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogIE1hdGhzIGhlbHBlcnMuXG4gKiAgSGFsdmUgYW5kIGRvdWJsZSBudW1iZXJzLCByZXR1cm5pbmcgcm91bmRlZCBpbnRlZ2Vycy5cblxuICAgIFVTQUdFOlxuXG4gICAgLmZvbyB7XG4gICAgICAgIHBhZGRpbmc6IGhhbHZlKDMwcHgpO1xuICAgIH1cblxuICovXG4vKipcbiAqICBSZW1vdmUgdGhlIHVuaXQgb2YgYSBsZW5ndGhcbiAqICBAcGFyYW0ge051bWJlcn0gJG51bWJlciAtIE51bWJlciB0byByZW1vdmUgdW5pdCBmcm9tXG4gKiAgQHJldHVybiB7TnVtYmVyfSAtIFVuaXRsZXNzIG51bWJlclxuICovXG4vKiBDaGVjayBpZiB2YWx1ZSBpcyBudW1iZXIgKi9cbi8qIFZhbHVlIHRvIEVtICovXG4vKiBWYWx1ZSB0byBSZW0gKi9cbi8qXG4gKiBTZXQgdmVydGljYWwgc3BhY2luZyBvbmx5IGZvciBtb2JpbGUgdmlld3BvcnRcblxuIFVTQUdFOlxuXG4gLmV4YW1wbGUge1xuXHQgQGluY2x1ZGUgdnNwYWNpbmctcyhcblx0XHRcdFx0J21hcmdpbi10b3AnIDFcblx0XHQpO1xuICB9XG5cbiAqL1xuLypcbiAqIFNldCB2ZXJ0aWNhbCBzcGFjaW5nIGZvciB2aWV3cG9ydCBsYXJnZXIgdGhhbiBtb2JpbGVcbiAqIEluIGZsZXhpYmxlIHVuaXRzICh2dykgYW5kIG9uIG1heCB2aWV3cG9ydCBpbiBhIGZpeGVkIGFtb3VudCAocHgpXG5cbiBVU0FHRTpcblxuIC5leGFtcGxlIHtcblx0IEBpbmNsdWRlIHZzcGFjaW5nLW0tdXAoXG5cdFx0XHRcdCdwYWRkaW5nLXRvcCcgMC4zMyxcblx0XHRcdFx0J21hcmdpbi1ib3R0b20nIDAuNVxuXHRcdCk7XG4gIH1cblxuICovXG4vKlxuICogRnJvbSB2YWx1ZXMgZ2l2ZW4gcmV0dXJuIHRoZSBjb3JyZWN0IHYtc3BhY2luZyBmb3IgZWFjaCBicmVha3BvaW50XG4gKi9cbi8qKlxuICpcdEEgc2ltcGxlIGZ1bmN0aW9uIGZvciBzZXR0aW5nIGEgY29uc2lzdGVudCBib3JkZXItcmFkaXVzXG5cblx0VVNBR0U6XG5cblx0LmNhcmQge1xuXHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXM7XG5cdH1cblxuXHQuY2FyZC0tYWx0IHtcblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKGwpO1xuXHR9XG5cbiAqL1xuLyoqXG4gKiBMb2JvdG9taXplZCBPd2wgU2VsZWN0b3IgbWl4aW46XG4gKiAtIFNldCBzcGFjaW5nIGZvciBjb25zZWN1dGl2ZSBpdGVtcyB3aXRoIG1hcmdpbi10b3Agb24gYWxsIGJ1dCB0aGUgZmlyc3QgaXRlbVxuXG5cdFVTQUdFOlxuXG5cdC5ib3gge1xuXHRcdEBpbmNsdWRlIG93bC1jaGlsZHJlbjtcblx0fVxuXG5cdC5jYXJkX19pdGVtIHtcblx0XHRAaW5jbHVkZSBvd2w7XG5cdH1cblxuICovXG4vKlxuICogTG9ib3RvbWl6ZWQgb3dsIHNlbGVjdG9yLlxuICogLSBHaXZlcyB0aGUgY2hpbGRyZW4gb2YgdGhlIGVsZW1lbnQgc3BhY2luZ1xuICogLSBodHRwczovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvYXhpb21hdGljLWNzcy1hbmQtbG9ib3RvbWl6ZWQtb3dsc1xuICovXG4vKipcbiAqICBTaG93IGh5cGhlbnMgZm9yIGV2ZXJ5IGJyb3dzZXIgc3VwcG9ydGluZyBpdFxuICogIGFuZCB3aWxsIGJyZWFrIGxpbmVzIGluIGV2ZXJ5IG90aGVyIGJyb3dzZXJcbiAqL1xuLypcbiAqICBSZXN0cmljdCBhbiBlbGVtZW50IHRvIGEgbWF4LXdpZHRoIGZvciBjcmVhdGluZyBndXR0ZXJzIG9uIHRoZSBzaWRlXG4gKi9cbi8qXG4gKlx0QSBtaXhpbiB0byBzZXQgZWxlbWVudHMgdG8gaXRzIG93biBuYW1lZCBncmlkLWFyZWFcbiAqL1xuLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqICBUaGUgJ3otaW5kZXgtbWFwJyBpcyB1c2VkIGZvciBtYW5hZ2luZyB0aGUgZWxlbWVudHMgc3RhY2tpbmcgb3JkZXIgaW4gdGhlICdyb290JyBzdGFja2luZyBjb250ZXh0XG4gKiAgVGhpcyB3YXkgd2UgaGF2ZSBhIG92ZXJ2aWV3IG9mIGFsbCB0aGUgei1pbmRleCB2YWx1ZXMgdGhhdCBhcmUgdXNlZCBhY3Jvc3MgdGhlIHByb2plY3QuXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgVVNBR0U6XG5cbiAgICBAaW5jbHVkZSB6KHotbW9kYWwpO1xuXG4gKi9cbi8qICAzIC0gRUxFTUVOVFNcbiAqICBQbGFpbiBvbGQgc2ltcGxlIEhUTUwgZWxlbWVudHMgd2l0aG91dCBhIGNsYXNzICh0eXBlIHNlbGVjdG9ycylcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIEJhc2ljIGVsZW1lbnRzIChubyBjbGFzcyBzZWxlY3RvcnMgYWxsb3dlZClcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFNldCB1cCB0aGUgaHRtbFxuICpcbiAqIDEuIE1ha2VzIHN1cmUgdGhhdCBzb21lIGZvbnRzIGFyZSBiZXR0ZXIgcmVuZGVyZWRcbiAqIDIuIFNldCBmb250IHRvIGxpbmluZyBmaWd1cmVzXG4gKlxuICogMy4gQXZvaWQgdGhlIElFIDEwLTExIGBtaW4taGVpZ2h0YCBidWcuXG4gKiA0LiBVc2UgYCVgIGluc3RlYWQgb2YgYHZoYCBzaW5jZSBgdmhgIGlzIGJ1Z2d5IGluIG9sZGVyIG1vYmlsZSBTYWZhcmkuXG4gKi9cbmh0bWwge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImxudW1cIjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG5ib2R5IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjNjU2NTY1O1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGhlaWdodDogMTAwJTtcbiAgLyogMywgNCAqL1xufVxuXG5mb290ZXIge1xuICBmbGV4OiAxIDAgYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLyoqXG4gKiBbMV0gTWFrZSBzdXJlIGVsZW1lbnRzIGxpa2UgaW5wdXQgYW5kIHRleHRhcmVhIGluaGVyaXQgc29tZSBiYXNlIHByb3BlcnRpZXNcbiAqICAgICBodHRwczovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE2LzExL2Nzcy1pbmhlcml0YW5jZS1jYXNjYWRlLWdsb2JhbC1zY29wZS1uZXctb2xkLXdvcnN0LWJlc3QtZnJpZW5kcy9cbiAqXG4gKiBbMl0gU2V0dGluZyBib3gtc2l6aW5nIHRoZSBiZXN0IHdheSBwZXI6XG4gKiAgICAgaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9pbmhlcml0aW5nLWJveC1zaXppbmctcHJvYmFibHktc2xpZ2h0bHktYmV0dGVyLWJlc3QtcHJhY3RpY2UvXG4gKi9cbioge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuKiwgKjpiZWZvcmUsICo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG4vKipcbiAqIFsxXSBUdXJuIG9mZiB0ZXh0LXNoYWRvdyB3aGVuIHNlbGVjdGluZyB0ZXh0IGZvciBiZXR0ZXIgcmVhZGFiaWxpdHlcbiAqL1xuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiAjNERBNkE3O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIC8qIFsxXSAqL1xufVxuXG4vKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gYXJvdW5kIGZpZ3VyZVxuICovXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogWzFdIFNldHRpbmcgJ3ZlcnRpY2FsLWFsaWduJyByZW1vdmVzIHRoZSB3aGl0ZXNwYWNlIHRoYXQgYXBwZWFycyB1bmRlciAnaW1nJ1xuICpcdCAgIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgZHJvcHBlZCBpbnRvIGEgcGFnZSBhcy1pcy4gU2FmZXIgYWx0ZXJuYXRpdmUgdG9cbiAqXHQgICB1c2luZyAnZGlzcGxheTogYmxvY2s7Jy5cbiAqIFsyXSBSZW1vdmUgYm9yZGVyIC8gZXNwZWNpYWxseSBvbiBvbGRlciBicm93c2Vyc1xuICovXG5pbWcsIHN2ZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC8qWzFdKi9cbiAgYm9yZGVyOiBub25lO1xuICAvKlsyXSovXG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyoqXG4gKiAgTmVlZGVkIGZvciBpT1MgdG8gcHJldmVudCBpbnB1dCB6b29taW5nXG4gKiAgaHR0cHM6Ly91eGNlbGxlbmNlLmNvbS8yMDE0LzAxLzE1L3F1aWNrLWZpeC1pbmNyZWFzZS1mb250LXNpemUtdG8tMTZweC10by1maXgtaW5wdXQtem9vbVxuICovXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG5hOm5vdChbY2xhc3NdKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICM0MDc5Qjg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBhdXRvO1xufVxuYTpub3QoW2NsYXNzXSk6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZDogIzQwNzlCODtcbiAgY29udGVudDogXCJcIjtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuM3MsIG9wYWNpdHkgMC4zcywgdHJhbnNmb3JtIDAuM3M7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbn1cbmE6bm90KFtjbGFzc10pOmhvdmVyOjphZnRlciB7XG4gIGhlaWdodDogMnB4O1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgaGdyb3VwLFxudWwsIG9sLCBkZCxcbnAsIGZpZ3VyZSxcbnByZSwgdGFibGUsIGZpZWxkc2V0LCBociB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbmgzIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMzMzMzMzMzMzM7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbmg0IHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG5oNSwgaDYge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogIExpc3RzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKlx0RGVmYXVsdCBpbmRlbnRhdGlvbiB2YWx1ZSBmb3IgbGlzdHNcbiAqL1xudWwsXG5vbCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWxlZnQ6IDEuMTI1ZW07XG59XG5cbmRkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi8qKlxuICpcdFJlbW92ZSBleHRyYSB2ZXJ0aWNhbCBzcGFjaW5nIHdoZW4gbmVzdGluZyBsaXN0cy5cbiAqL1xubGkgPiB1bCxcbmxpID4gb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiAgNCAtIExheW91dCBlbGVtZW50c1xuICogIERlc2lnbiBwYXR0ZXJucyAoZS5nLiBncmlkcyBvciBtZWRpYSBvYmplY3QpXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIENvbnRhaW5cbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ubC1jb250YWluIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEydncpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLmwtY29udGFpbiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxMCkgKiA4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5sLWNvbnRhaW4ge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICAgIG1heC13aWR0aDogMTE1MnB4O1xuICB9XG59XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogU3BsaXQgbGF5b3V0IGluIDIgZXF1YWwgY29sdW1uc1xuICpcbiAqIFVudGlsIHZpZXdwb3J0IGlzIHdpZGUgZW5vdWdoIHRoZSBjb2x1bW5zIGFyZSBzdGFja2VkIHZlcnRpY2FsbHlcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmwtc3BsaXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5sLXNwbGl0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbi8qKlxuICogU3BlY2lhbCBjb250YWluIHZlcnNpb24gZm9yIHNwbGl0LlxuICogRG9lc24ndCByZXN0cmFpbiBjb250ZW50IG9uIG1lZGl1bSB2aWV3cG9ydFxuICovXG4ubC1zcGxpdC0tY29udGFpbiB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMnZ3KTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5sLXNwbGl0LS1jb250YWluIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5sLXNwbGl0LS1jb250YWluIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDE0KSAqIDEyKTtcbiAgICBtYXgtd2lkdGg6IDExNTJweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmwtc3BsaXRfX2NvbHVtbiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmwtc3BsaXRfX2NvbHVtbjpmaXJzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDYyLjUlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEyLjUlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmwtc3BsaXRfX2NvbHVtbjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5sLXNwbGl0X19jb2x1bW46bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogNnZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAubC1zcGxpdF9fY29sdW1uOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAzNy41JTtcbiAgfVxufVxuLmwtc3BsaXQtLWlzLXJldmVyc2VkIC5sLXNwbGl0X19jb2x1bW46Zmlyc3QtY2hpbGQge1xuICBvcmRlcjogMjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5sLXNwbGl0LS1pcy1yZXZlcnNlZCAubC1zcGxpdF9fY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEyLjUlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAubC1zcGxpdC0taXMtcmV2ZXJzZWQgLmwtc3BsaXRfX2NvbHVtbjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5sLXNwbGl0LS1icmVha291dC1vbi1tIC5sLXNwbGl0X19jb2x1bW46Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiA2MCU7XG4gICAgcGFkZGluZy1sZWZ0OiAxMCU7XG4gICAgcGFkZGluZy1yaWdodDogMTAlO1xuICB9XG4gIC5sLXNwbGl0LS1icmVha291dC1vbi1tIC5sLXNwbGl0X19jb2x1bW46bGFzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDQwJTtcbiAgfVxufVxuLyoqXG4gKiBXaGVuIHRoZXJlIGlzIG9ubHkgMSBjb2x1bW4sIGFsaWduIGl0IHRvIHRoZSBtaWRkbGUgYW5kIGNvbnRhaW4gdGhlIHdpZHRoXG4gKiBPbmx5IG9uZSBjb2x1bW4gaXMgdXNlZCBlLmcuIGluIHRoZSB0YWJzbGlkZXIgd2hlbiB0aGVyZSBpcyBubyBpbWFnZSBzZXRcbiAqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLmwtc3BsaXRfX2NvbHVtbjpvbmx5LWNoaWxkIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogNzUlO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmwtc3BsaXRfX2NvbHVtbjpvbmx5LWNoaWxkIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5sLXNwbGl0X19jb2x1bW4tLXZwYWQge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLmwtc3BsaXRfX2NvbHVtbi0tdnBhZCB7XG4gICAgbWFyZ2luLXRvcDogODBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAubC1zcGxpdF9fY29sdW1uLS1sZWZ0cGFkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbn1cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFJlc3RyaWN0XG4gKlxuICogV2hlbiBhIGJsb2NrIHNob3VsZG4ndCB0YWtlIHVwIHRoZSB3aG9sZSB3aWR0aCBvZiB0aGUgY29udGFpbmVyXG4gKiB3ZSBjYW4gcmVzdHJpY3QgdGhlIG1heGltdW0gd2lkdGhcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAubC1yZXN0cmljdC1uYXJyb3cge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB3aWR0aDogNzUlO1xuICAgIG1heC13aWR0aDogMzhlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5sLXJlc3RyaWN0LW5hcnJvdyB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAubC1yZXN0cmljdC13aWRlIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDg3LjUlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmwtcmVzdHJpY3Qtd2lkZSB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG59XG5cbi8qICA1IC0gQ09NUE9ORU5UU1xuICogIERpc2NyZXRlIGNvbXBsZXRlIGNodW5rcyBvZiBVSS5cbiAqICBEZXNpZ25lZCBjb21wb25lbnRzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogQ29tcG9uZW50c1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uYy1icmVhZGNydW1iIHtcbiAgcGFkZGluZy1ib3R0b206IDRweDtcbn1cblxuLmMtYnJlYWRjcnVtYl9fbGlzdCB7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4uYy1icmVhZGNydW1iX19pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5jLWJyZWFkY3J1bWJfX2l0ZW06bnRoLWNoaWxkKG4rMikgLmMtYnJlYWRjcnVtYl9faWNvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBtYXJnaW4tbGVmdDogOHB4O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuICBjb2xvcjogIzFEMUQxRDtcbn1cblxuLmMtYnJlYWRjcnVtYl9fbGluayB7XG4gIGNvbG9yOiAjNjU2NTY1O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYy1icmVhZGNydW1iX19pdGVtLS1sYXN0IC5jLWJyZWFkY3J1bWJfX2xpbmsge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmMtYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xNDI4NTcxNDI5O1xuICBmb250LXdlaWdodDogNTAwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNERBNkE3O1xuICB0ZXh0LXNoYWRvdzogMCAwIDRweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMTZweCAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmMtYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNGRkZGRkYsIDAgMCA1cHggMnB4ICM0REE2QTc7XG59XG4uYy1idXR0b246YWN0aXZlOm5vdCg6ZGlzYWJsZWQpIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi5jLWJ1dHRvbjpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5jLWJ1dHRvbjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIHRvcDogY2FsYyg1MCUgLSAycHgpO1xuICBsZWZ0OiBjYWxjKDUwJSAtIDJweCk7XG4gIHdpZHRoOiA0cHg7XG4gIGhlaWdodDogNHB4O1xuICBvcGFjaXR5OiAwO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6ICMzZTg1ODY7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XG59XG4uYy1idXR0b246aG92ZXI6bm90KDpkaXNhYmxlZCk6OmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxMDApO1xufVxuXG4uYy1idXR0b25fX3RleHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHBhZGRpbmc6IDAgMjRweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmMtYnV0dG9uLS1pY29uIC5jLWJ1dHRvbl9fdGV4dCB7XG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG59XG5cbi5jLWJ1dHRvbl9faWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgdG9wOiAtMXB4O1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xufVxuLmMtYnV0dG9uOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIC5jLWJ1dHRvbl9faWNvbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpO1xufVxuLmMtYnV0dG9uX19pY29uOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMTVweDtcbn1cbi5jLWJ1dHRvbi0taWNvbiAuYy1idXR0b25fX2ljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDE2cHg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBEZWZhdWx0IGJ1dHRvblxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5jLWdob3N0YnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xNDI4NTcxNDI5O1xuICBmb250LXdlaWdodDogNTAwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IDAgMCA0cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3JkZXI6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIHBhZGRpbmc6IDE2cHggMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5jLWdob3N0YnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm94LXNoYWRvdzogMCAwIDRweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLmMtZ2hvc3RidXR0b246YWN0aXZlOm5vdCg6ZGlzYWJsZWQpIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuLmMtZ2hvc3RidXR0b246ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4uYy1naG9zdGJ1dHRvbjo6YWZ0ZXIge1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTFweDtcbiAgYm90dG9tOiAtMXB4O1xuICByaWdodDogLTFweDtcbiAgbGVmdDogLTFweDtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xufVxuLmMtZ2hvc3RidXR0b246aG92ZXI6bm90KDpkaXNhYmxlZCk6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zNXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbn1cblxuLmMtZ2hvc3RidXR0b25fX3RleHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHBhZGRpbmc6IDAgMjRweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmMtYnV0dG9uLS1pY29uIC5jLWdob3N0YnV0dG9uX190ZXh0IHtcbiAgcGFkZGluZy1yaWdodDogMTZweDtcbn1cblxuLmMtZ2hvc3RidXR0b25fX2ljb24ge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHRvcDogLTFweDtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcbn1cbi5jLWdob3N0YnV0dG9uOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIC5jLWdob3N0YnV0dG9uX19pY29uIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCk7XG59XG4uYy1naG9zdGJ1dHRvbi0taWNvbiAuYy1naG9zdGJ1dHRvbl9faWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTZweDtcbn1cbi5jLWdob3N0YnV0dG9uX19pY29uOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMTVweDtcbn1cblxuLmMtY2FyZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGhlaWdodDogMTAwJTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qXG4gKiBDYXJkIHRoYXQgZG9lcyBzb21lIGFuaW1hdGlvbnMgb24gaG92ZXJcbiAqL1xuLmMtY2FyZC0taGFzLWFjdGlvbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDA7XG59XG4uYy1jYXJkLS1oYXMtYWN0aW9uOmhvdmVyLCAuYy1jYXJkLS1oYXMtYWN0aW9uOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5jLWNhcmQtLWhhcy1hY3Rpb246OmJlZm9yZSwgLmMtY2FyZC0taGFzLWFjdGlvbjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uYy1jYXJkLS1oYXMtYWN0aW9uOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOTIpO1xuICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQocmdiYSgwLCAwLCAwLCAwLjgpIDAlLCByZ2JhKDAsIDAsIDAsIDAuOTIpIDEwMCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEzNSUpIHJvdGF0ZSgtMTFkZWcpIHNjYWxlKDEuMyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAzMDBtcztcbiAgdHJhbnNpdGlvbi1kZWxheTogMTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NSwgMC4xLCAwLjMsIDEpO1xufVxuLmMtY2FyZC0taGFzLWFjdGlvbjo6YWZ0ZXIge1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMjVweDtcbiAgbWFyZ2luOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHZpZXdCb3g9JzAgMCAxNiAxMicgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZmlsbD0nJTIzNERBNkE3JyBkPSdNMTMuNCA2Ljc4M0guNzYyQS43NzIuNzcyIDAgMCAxIDAgNmMwLS40MzIuMzQxLS43ODMuNzYyLS43ODNIMTMuNEw5LjYyMyAxLjMzNmEuNzk4Ljc5OCAwIDAgMSAwLTEuMTA3Ljc0Ny43NDcgMCAwIDEgMS4wNzcgMGw1LjA3NyA1LjIxOGEuNzk4Ljc5OCAwIDAgMSAwIDEuMTA2TDEwLjcgMTEuNzcxYS43NDcuNzQ3IDAgMCAxLTEuMDc3IDAgLjc5OC43OTggMCAwIDEgMC0xLjEwN0wxMy40IDYuNzgzeicvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNzUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDIwMG1zO1xufVxuLmMtY2FyZC0taGFzLWFjdGlvbjpob3ZlcjpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjkyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTFkZWcpIHNjYWxlKDEuMyk7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDQwMG1zO1xuICB0cmFuc2l0aW9uLWRlbGF5OiA1MG1zO1xufVxuLmMtY2FyZC0taGFzLWFjdGlvbjpob3ZlcjphZnRlciB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNDAwbXM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zO1xufVxuLmMtY2FyZC0taGFzLWFjdGlvbjpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6ICMwMDAwMDA7XG4gIG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICBvdXRsaW5lLXdpZHRoOiAycHg7XG59XG5cbi5jLWNhcmRfX3BpY3R1cmUge1xuICB3aWR0aDogMTAwJTtcbiAgZmxleDogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmMtY2FyZF9faW1nIHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5jLWNhcmRfX2xpbmtlZC1pbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcGFkZGluZzogOHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uYy1jYXJkX19saW5rZWQtaW4taWNvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgd2lkdGg6IDI4cHg7XG4gIGhlaWdodDogMjhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI3NjdiMTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9zb2NpYWwvbGlua2VkaW4uc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE4cHggMThweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBib3gtc2hhZG93OiAwIDAgOHB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG59XG4uYy1jYXJkX19saW5rZWQtaW46aG92ZXIgLmMtY2FyZF9fbGlua2VkLWluLWljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNERBNkE3O1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG5cbi5jLWNhcmRfX2xhYmVsIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTQyODU3MTQyOTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAxNHB4IDEwcHggMTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXdlaWdodDogbWVkaXVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNDAwbXM7XG59XG4uYy1jYXJkLS1oYXMtYWN0aW9uOmhvdmVyIC5jLWNhcmRfX2xhYmVsIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uYy1jYXJkX19sYWJlbDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNERBNkE3O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwMCUpIHJvdGF0ZSgxMWRlZykgc2NhbGUoMS41LCAzKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDMwMG1zO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyMDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ1LCAwLjEsIDAuMywgMSk7XG59XG4uYy1jYXJkLS1oYXMtYWN0aW9uOmhvdmVyIC5jLWNhcmRfX2xhYmVsOjpiZWZvcmUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKSBzY2FsZSgyKTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMzAwbXM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBtcztcbn1cblxuLmMtY2FyZF9faW5mbyB7XG4gIGZsZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmc6IDE2cHggMzJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y4RjhGODtcbn1cblxuLmMtY2FyZF9faGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjc3Nzc3Nzc3Nzg7XG4gIGNvbG9yOiAjMUYyODgzO1xufVxuXG4uYy1jYXJkX19zdWJoZWFkaW5nIHtcbiAgY29sb3I6ICM5OTk5OTk7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbn1cblxuLmMtY2FyZF9fdGV4dGxpbmUge1xuICBjb2xvcjogIzk5OTk5OTtcbn1cbio6bm90KC5jLWNhcmRfX3RleHRsaW5lKSArIC5jLWNhcmRfX3RleHRsaW5lIHtcbiAgbWFyZ2luLXRvcDogMTZweDtcbn1cblxuLmMtY2FyZF9fYWN0aW9ucyB7XG4gIHBhZGRpbmctdG9wOiAxNnB4O1xuICBtYXJnaW4tdG9wOiBhdXRvO1xufVxuXG4uYy1jYXJkX19saW5rIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTQyODU3MTQyOTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBtYXJnaW4tdG9wOiBhdXRvO1xuICBjb2xvcjogIzY1NjU2NTtcbn1cblxuLmMtY2xvc2Uge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTgwbXMgZWFzZS1vdXQ7XG59XG4uYy1jbG9zZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAzcHggMnB4ICNGRkZGRkY7XG59XG4uYy1jbG9zZTphZnRlciwgLmMtY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDIwcHg7XG4gIHJpZ2h0OiAyMCU7XG4gIGxlZnQ6IDIwJTtcbiAgaGVpZ2h0OiAzcHg7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG4uYy1jbG9zZTpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG4uYy1jbG9zZTphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG4uYy1jbG9zZTpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbn1cblxuLmMtY29ubmVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLmMtY29ubmVjdCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxufVxuXG4uYy1jb25uZWN0X19waG9uZSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjc3Nzc3Nzc3Nzg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjMkMyQzJDO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zO1xufVxuLmMtY29ubmVjdF9fcGhvbmU6aG92ZXIsIC5jLWNvbm5lY3RfX3Bob25lOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5jLWNvbm5lY3RfX3Bob25lOmhvdmVyIHtcbiAgb3BhY2l0eTogMC43O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5jLWNvbm5lY3RfX3Bob25lOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuICBvdXRsaW5lLXN0eWxlOiBzb2xpZDtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgb3V0bGluZS13aWR0aDogMnB4O1xufVxuXG4uYy1jb25uZWN0X19vciB7XG4gIG1hcmdpbjogMCAxNnB4O1xuICBjb2xvcjogIzY1NjU2NTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5jLWNvbm5lY3RfX29yIHtcbiAgICBtYXJnaW46IDhweCAwIDE2cHg7XG4gIH1cbn1cblxuLmMtZGF0YSB7XG4gIG1hcmdpbjogMTZweCAwO1xufVxuXG4uYy1kYXRhX19saW5lIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLmMtZGF0YV9fbGFiZWwge1xuICBtaW4td2lkdGg6IDY0cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogIzJDMkMyQztcbn1cblxuLmMtZGF0YV9fdmFsdWUge1xuICBjb2xvcjogIzY1NjU2NTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmMtZGF0YV9fdmFsdWVbaHJlZl06aG92ZXIsIC5jLWRhdGFfX3ZhbHVlW2hyZWZdOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5jLWRhdGFfX3ZhbHVlW2hyZWZdOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uYy1kYXRhX192YWx1ZVtocmVmXTpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgb3V0bGluZS1zdHlsZTogc29saWQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAxcHg7XG4gIG91dGxpbmUtd2lkdGg6IDJweDtcbn1cblxuLmMtZGF0ZS1sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogNHB4IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uYy1kYXRlLWxhYmVsLS1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNERBNkE3O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLmMtZGF0ZS1sYWJlbF9fZGF5IHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMzMzMzMzMzMzM7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmMtZGF0ZS1sYWJlbF9fbW9udGgge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS43Nzc3Nzc3Nzc4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5jLWRvd25sb2FkLWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbi5jLWRvd25sb2FkLWxpc3RfX2l0ZW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0M4QzhDODtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4ycywgYmFja2dyb3VuZC1jb2xvciAwLjJzO1xufVxuLmMtZG93bmxvYWQtbGlzdF9faXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjAwLCAyMDAsIDIwMCwgMC4yKTtcbn1cblxuLmMtZG93bmxvYWQtbGlzdF9fbGluayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDhweCAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5jLWRvd25sb2FkLWxpc3RfX2ljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxNnB4O1xufVxuLmMtZG93bmxvYWQtbGlzdF9faWNvbiBzdmcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmMtZG93bmxvYWQtbGlzdF9fdGV4dCB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxNnB4KTtcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG59XG4uYy1kb3dubG9hZC1saXN0X19pdGVtOmhvdmVyIC5jLWRvd25sb2FkLWxpc3RfX3RleHQge1xuICBjb2xvcjogIzFEMUQxRDtcbn1cblxuLmMtZXZlbnQtY2FyZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGhlaWdodDogMTAwJTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDA7XG59XG4uYy1ldmVudC1jYXJkOmhvdmVyLCAuYy1ldmVudC1jYXJkOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5jLWV2ZW50LWNhcmQ6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiAjNERBNkE3O1xuICBvdXRsaW5lLXN0eWxlOiBzb2xpZDtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgb3V0bGluZS13aWR0aDogMnB4O1xufVxuXG4uYy1ldmVudC1jYXJkX19waWN0dXJlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsZXg6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYy1ldmVudC1jYXJkX19waWN0dXJlOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDA7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGxpbmVhcjtcbn1cbi5jLWV2ZW50LWNhcmQ6aG92ZXIgLmMtZXZlbnQtY2FyZF9fcGljdHVyZTo6YmVmb3JlIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmMtZXZlbnQtY2FyZF9faW1nIHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5jLWV2ZW50LWNhcmRfX2RhdGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzREQTZBNztcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgbGluZWFyO1xufVxuLmMtZXZlbnQtY2FyZDpob3ZlciAuYy1ldmVudC1jYXJkX19kYXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzREQTZBNztcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG59XG5cbi5jLWV2ZW50LWNhcmRfX2luZm8ge1xuICBmbGV4OiAxO1xuICBwYWRkaW5nOiAxNnB4IDI0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGxpbmVhcjtcbn1cbi5jLWV2ZW50LWNhcmQ6aG92ZXIgLmMtZXZlbnQtY2FyZF9faW5mbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0REE2QTc7XG59XG5cbi5jLWV2ZW50LWNhcmRfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogIzJDMkMyQztcbiAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGxpbmVhcjtcbn1cbi5jLWV2ZW50LWNhcmQ6aG92ZXIgLmMtZXZlbnQtY2FyZF9fdGl0bGUge1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4uYy1ldmVudC1jYXJkX19zdWJ0aXRsZSB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIGNvbG9yOiAjOTk5OTk5O1xuICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgbGluZWFyO1xufVxuLmMtZXZlbnQtY2FyZDpob3ZlciAuYy1ldmVudC1jYXJkX19zdWJ0aXRsZSB7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi5jLWV2ZW50LWNhcmRfX3R5cGUge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIGNvbG9yOiAjQzhDOEM4O1xuICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgbGluZWFyO1xufVxuLmMtZXZlbnQtY2FyZDpob3ZlciAuYy1ldmVudC1jYXJkX190eXBlIHtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLmMtZmlsZS11cGxvYWRfX21haW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jLWZpbGUtdXBsb2FkX19pbnB1dCB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xufVxuXG4uYy1maWxlLXVwbG9hZF9fYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xNDI4NTcxNDI5O1xuICBmb250LXdlaWdodDogNTAwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiAjMUQxRDFEO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXI6IDFweCBzb2xpZCAjNjU2NTY1O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgcGFkZGluZzogMTZweCAyNHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMTUwbXM7XG59XG4uYy1maWxlLXVwbG9hZF9fYnV0dG9uOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1nL2FkZC5zdmcpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBtYXJnaW4tbGVmdDogMTZweDtcbn1cbi5jLWZpbGUtdXBsb2FkX19idXR0b246aG92ZXIge1xuICBvcGFjaXR5OiAwLjc7XG59XG5cbi5jLWZpbGUtdXBsb2FkX19saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uYy1maWxlLXVwbG9hZF9fbGlzdCA+IGxpIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0M4QzhDODtcbiAgcGFkZGluZzogNHB4IDA7XG4gIGFuaW1hdGlvbjogZXhwYW5kIDAuNXMgZWFzZS1pbi1vdXQ7XG59XG4uYy1maWxlLXVwbG9hZF9fbGlzdCA+IGxpOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIGJhY2tncm91bmQ6IHVybChcIi9pbWcvZmlsZS5zdmdcIikgbm8tcmVwZWF0O1xufVxuLmMtZmlsZS11cGxvYWRfX2xpc3QgPiBsaSA+IGJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdXRsaW5lOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAxNTBtcyBsaW5lYXI7XG59XG4uYy1maWxlLXVwbG9hZF9fbGlzdCA+IGxpID4gYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6IHJlZDtcbn1cbi5jLWZpbGUtdXBsb2FkX19saXN0ID4gbGkgPiBidXR0b246OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiw5dcIjtcbn1cblxuLmMtZmlsZS11cGxvYWRfX25vdGUge1xuICBjb2xvcjogIzk5OTk5OTtcbn1cblxuQGtleWZyYW1lcyBleHBhbmQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGJhY2tncm91bmQ6ICM0MDc5Qjg7XG4gIH1cbn1cbi5jLWZvcm0tZ3JvdXBfX2xhYmVsIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA0cHggMDtcbiAgY29sb3I6ICM5OTk5OTk7XG59XG5cbi5jLWZvcm0tZ3JvdXBfX2Vycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5oYXMtZXJyb3IgLmMtZm9ybS1ncm91cF9fZXJyb3I6bm90KDplbXB0eSkge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xNDI4NTcxNDI5O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogOHB4O1xuICBjb2xvcjogIzQwNzlCODtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg2NCwgMTIxLCAxODQsIDAuMSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM0MDc5Qjg7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4O1xufVxuXG4uYy1mb3JtLWZlZWRiYWNrIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgbWFyZ2luOiAwIDAgOHB4O1xuICBwYWRkaW5nOiAyNHB4IDMycHg7XG4gIGNvbG9yOiAjMkMyQzJDO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjExLCA1OCwgMC4yKTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZDMzYTtcbn1cbi5jLWZvcm0tZmVlZGJhY2s6bm90KDplbXB0eSkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5jLWZvcm0tZmVlZGJhY2s6YmVmb3JlIHtcbiAgY29udGVudDogYXR0cihkYXRhLWZlZWRiYWNrKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogLTE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbi5jLWZvcm0tZmVlZGJhY2sgbGk6OmZpcnN0LWxldHRlciB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jLWhhbWJ1cmdlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgcGFkZGluZzogMDtcbiAgY29sb3I6ICNFREVERUQ7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmMtaGFtYnVyZ2VyOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuICBvdXRsaW5lLXN0eWxlOiBzb2xpZDtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgb3V0bGluZS13aWR0aDogMnB4O1xufVxuLmMtaGFtYnVyZ2VyID4gc3BhbiwgLmMtaGFtYnVyZ2VyOmFmdGVyLCAuYy1oYW1idXJnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDIwcHg7XG4gIHJpZ2h0OiAyMCU7XG4gIGxlZnQ6IDIwJTtcbiAgaGVpZ2h0OiAzcHg7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTUwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbi1kZWxheTogMTAwbXM7XG59XG4uYy1oYW1idXJnZXI6YmVmb3JlIHtcbiAgdG9wOiAxMnB4O1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwLjgpO1xufVxuLmMtaGFtYnVyZ2VyOmFmdGVyIHtcbiAgdG9wOiAyOHB4O1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwLjUpO1xufVxuLmMtaGFtYnVyZ2VyOmhvdmVyID4gc3BhbiB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDAuOCk7XG59XG4uYy1oYW1idXJnZXI6aG92ZXI6YWZ0ZXIsIC5jLWhhbWJ1cmdlcjpob3ZlcjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbn1cbi5pcy1vdmVybGF5LW1lbnUtYWN0aXZlIC5jLWhhbWJ1cmdlciA+IHNwYW4ge1xuICB0cmFuc2Zvcm06IHNjYWxlWCgxKSAhaW1wb3J0YW50O1xufVxuLmlzLW92ZXJsYXktbWVudS1hY3RpdmUgLmMtaGFtYnVyZ2VyOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzcHgpIHNjYWxlWCgxKSAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbn1cbi5pcy1vdmVybGF5LW1lbnUtYWN0aXZlIC5jLWhhbWJ1cmdlcjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KSBzY2FsZVgoMSkgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG59XG5cbi5jLWhlYWRpbmcge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBtYXJnaW46IDQwcHggMDtcbiAgY29sb3I6ICMyQzJDMkM7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuYy1oZWFkaW5nLS1pbmRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuYy1oZXJvIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMTJ2dyk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5jLWhlcm8ge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTApICogOCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5jLWhlcm8ge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICAgIG1heC13aWR0aDogMTE1MnB4O1xuICB9XG59XG5cbi5jLWhlcm9fX21haW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG59XG5cbi5jLWhlcm9fX3NsaWRlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDU1LjU1NiU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuYy1oZXJvX19zbGlkZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MCU7XG4gIH1cbn1cblxuLmMtaGVyb19fcGljdHVyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCBmaWx0ZXI7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBmaWx0ZXI6IGJsdXIoNXB4KTtcbn1cbi5jLWhlcm9fX3BpY3R1cmUuaXMtYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHNjYWxlKDEpO1xuICBmaWx0ZXI6IG5vbmU7XG59XG5cbi5jLWhlcm9fX2ltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jLWhlcm9fX2NhcHRpb24ge1xuICBmb250LXNpemU6IGNhbGMoMTZweCArIDF2dyk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDI0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjksIDI5LCAyOSwgMC42KTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5jLWhlcm9fX2NhcHRpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgcGFkZGluZzogMzJweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC5jLWhlcm9fX2NhcHRpb246OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogLTEwMHZ3O1xuICAgIGxlZnQ6IC0xMDB2dztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNEOTNEMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMzQzcHgpIHtcbiAgLmMtaGVyb19fY2FwdGlvbiB7XG4gICAgcGFkZGluZzogMi42dnc7XG4gICAgZm9udC1zaXplOiAzdnc7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM0NHB4KSB7XG4gIC5jLWhlcm9fX2NhcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgIHBhZGRpbmctbGVmdDogNC4xNjY2NjY2NjY3JTtcbiAgfVxufVxuXG4uYy1oZXJvX19jb250cm9scyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDhweDtcbn1cbi5jLWhlcm9fX2NvbnRyb2xzOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiA0OHB4O1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgYmxhY2ssIHRyYW5zcGFyZW50KTtcbiAgb3BhY2l0eTogMC4zO1xufVxuXG4uYy1oZXJvX19zY3JvbGwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgcGFkZGluZzogMTBweDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0REE2QTc7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDUwJSkgcm90YXRlKDAuMjV0dXJuKTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5jLWhlcm9fX3Njcm9sbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmMtaGVyb19fc2Nyb2xsID4gc3ZnIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zO1xufVxuLmMtaGVyb19fc2Nyb2xsOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiAjNDE4ZDhlO1xufVxuLmMtaGVyb19fc2Nyb2xsOmhvdmVyID4gc3ZnIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCk7XG59XG4uYy1oZXJvX19zY3JvbGw6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjNDU5NTk2O1xuICBib3gtc2hhZG93OiAwIDAgMCAzcHggI2M4ZTVlNjtcbn1cblxuLmMtaW5mbyB7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDEycHggMTZweDtcbiAgY29sb3I6ICMzZWNmOGU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNjIsIDIwNywgMTQyLCAwLjEpO1xuICBib3JkZXI6IDFweCBzb2xpZCAjM2VjZjhlO1xufVxuXG4uYy1pbnB1dCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogN3B4IDE2cHg7XG4gIGNvbG9yOiAjMkMyQzJDO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXI6IDFweCBzb2xpZCAjQzhDOEM4O1xuICBvdXRsaW5lOiBub25lO1xufVxuLmhhcy1lcnJvciAuYy1pbnB1dCB7XG4gIGJveC1zaGFkb3c6IDAgMCA3cHggLTNweCAjZmZkMzNhO1xuICBib3JkZXItY29sb3I6ICNmZmQzM2E7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyMTEsIDU4LCAwLjA1KTtcbn1cbi5jLWlucHV0OmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDdweCAtM3B4ICMxRDFEMUQ7XG4gIGJvcmRlci1jb2xvcjogIzFEMUQxRDtcbn1cbnRleHRhcmVhLmMtaW5wdXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTZweDtcbiAgbWluLWhlaWdodDogMTU4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG4uYy1sYW5ndWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmMtbGFuZ3VhZ2VfX2J1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDhweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiByZ2JhKDIzNywgMjM3LCAyMzcsIDAuNSk7XG4gIGJvcmRlcjogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cywgYm94LXNoYWRvdyAwLjE1cztcbn1cbi5jLWxhbmd1YWdlX19idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uYy1sYW5ndWFnZV9faWNvbiB7XG4gIGZsZXg6IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uYy1sYW5ndWFnZV9fbGFiZWwge1xuICBtYXJnaW4tbGVmdDogNHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmMtbGFuZ3VhZ2VfX2Ryb3Bkb3duIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAxMDAlO1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgb3BhY2l0eTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2hhZG93OiAwIDAgMTJweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcywgdHJhbnNmb3JtIDAuM3M7XG59XG4uYy1sYW5ndWFnZTpob3ZlciAuYy1sYW5ndWFnZV9fZHJvcGRvd24ge1xuICBvcGFjaXR5OiAxO1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uYy1sYW5ndWFnZV9faXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uYy1sYW5ndWFnZV9faXRlbTpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xufVxuLmMtbGFuZ3VhZ2VfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbn1cbi5jLWxhbmd1YWdlX19pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbn1cbi5jLWxhbmd1YWdlX19pdGVtOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5jLWxhbmd1YWdlX19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDRweCA4cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICM2NTY1NjU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcztcbn1cbi5jLWxhbmd1YWdlX19saW5rOmhvdmVyIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0REE2QTc7XG59XG5cbi8qXG5cdENvbG9ycyBnZXQgZGVmaW5lZCBpbiBfc2V0dGluZ3MuY29uZmlnLnNjc3NcbiovXG4uYy1uYXYge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5jLW5hdl9fbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uYy1uYXZfX2l0ZW0ge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1hcmdpbi1yaWdodDogMiU7XG59XG4uYy1uYXZfX2l0ZW06bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLmMtbmF2X19saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA0cHg7XG4gIGNvbG9yOiAjRURFREVEO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDE1MG1zIGxpbmVhcjtcbn1cbi5jLW5hdl9fbGluazpob3ZlciwgLmMtbmF2X19saW5rOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5jLW5hdl9fbGluazo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG4gIGxlZnQ6IDRweDtcbiAgYm90dG9tOiAxcHg7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA4cHgpO1xuICBoZWlnaHQ6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNERBNkE3O1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIHJpZ2h0O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXMgY3ViaWMtYmV6aWVyKDAuODYsIDAsIDAuMDcsIDEpO1xufVxuLmMtbmF2X19saW5rOmhvdmVyIHtcbiAgY29sb3I6ICNFREVERUQ7XG59XG4uYy1uYXZfX2xpbms6aG92ZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbn1cbi5jLW5hdl9fbGluay5pcy1hY3RpdmUge1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5jLW5hdl9fbGluay5pcy1hY3RpdmU6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VERURFRDtcbn1cbi5jLW5hdl9fbGluazpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgb3V0bGluZS1zdHlsZTogc29saWQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAxcHg7XG4gIG91dGxpbmUtd2lkdGg6IDJweDtcbn1cblxuLmMtcGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjQzhDOEM4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmMtcGFnaW5hdGlvbl9faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODM5cHgpIHtcbiAgLmMtcGFnaW5hdGlvbl9faXRlbSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYy1wYWdpbmF0aW9uX19pdGVtOmZpcnN0LWNoaWxkLCAuYy1wYWdpbmF0aW9uX19pdGVtOmxhc3QtY2hpbGQsIC5jLXBhZ2luYXRpb25fX2l0ZW0uaXMtbGFzdC1wYWdlLCAuYy1wYWdpbmF0aW9uX19pdGVtLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAuYy1wYWdpbmF0aW9uX19pdGVtLmlzLWxhc3QtcGFnZSB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cbi5jLXBhZ2luYXRpb25fX2l0ZW0gKyAuYy1wYWdpbmF0aW9uX19pdGVtIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xufVxuXG4uYy1wYWdpbmF0aW9uX190ZXh0LFxuLmMtcGFnaW5hdGlvbl9fbGluayxcbi5jLXBhZ2luYXRpb25fX3ByZXYsXG4uYy1wYWdpbmF0aW9uX19uZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi13aWR0aDogNDhweDtcbiAgbWluLWhlaWdodDogNDhweDtcbiAgcGFkZGluZzogOHB4O1xufVxuXG4uYy1wYWdpbmF0aW9uX190ZXh0IHtcbiAgY29sb3I6ICMyQzJDMkM7XG4gIG9wYWNpdHk6IDAuMzU7XG59XG5cbi5jLXBhZ2luYXRpb25fX2xpbmsge1xuICBjb2xvcjogIzJDMkMyQztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG59XG4uYy1wYWdpbmF0aW9uX19saW5rOmhvdmVyIHtcbiAgY29sb3I6ICMxZjFmMWY7XG4gIGJhY2tncm91bmQ6ICNGOEY4Rjg7XG59XG4uaXMtYWN0aXZlID4gLmMtcGFnaW5hdGlvbl9fbGluayB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxMHB4IC01cHggIzNEOTNEMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjM0Q5M0QwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5jLXBhZ2luYXRpb25fX3ByZXYsXG4uYy1wYWdpbmF0aW9uX19uZXh0IHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwLjc1dHVybik7XG59XG4uYy1wYWdpbmF0aW9uX19wcmV2LmlzLWluYWN0aXZlLFxuLmMtcGFnaW5hdGlvbl9fbmV4dC5pcy1pbmFjdGl2ZSB7XG4gIGNvbG9yOiByZ2JhKDQ0LCA0NCwgNDQsIDAuNCk7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4uYy1wYWdpbmF0aW9uX19wcmV2IHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC4yNXR1cm4pO1xufVxuXG4vKlxuICogUGFnZSB0aXRsZVxuICovXG4uYy1wYWdlLXRpdGxlIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEydncpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgLW1zLWh5cGhlbnM6IGF1dG87XG4gIGh5cGhlbnM6IGF1dG87XG4gIHBhZGRpbmctdG9wOiAxNnB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgY29sb3I6ICMyQzJDMkM7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuYy1wYWdlLXRpdGxlIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDEwKSAqIDgpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmMtcGFnZS10aXRsZSB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gICAgbWF4LXdpZHRoOiAxMTUycHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5jLXBhZ2UtdGl0bGUge1xuICAgIHBhZGRpbmctdG9wOiA0OHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0OHB4O1xuICB9XG59XG5cbi5jLXBhZ2UtdGl0bGUtLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5jLXBhZ2UtdGl0bGUtLWNlbnRlciB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5jLXBhZ2UtdGl0bGUtLWNlbnRlciB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5jLXBhZ2UtdGl0bGVfX3ByZWhlYWRpbmcge1xuICAgIG1hcmdpbi10b3A6IC04cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICB9XG59XG5cbi5jLXBhZ2UtdGl0bGVfX2hlYWRpbmcge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG5cbi5jLXBhZ2UtdGl0bGVfX2hlYWRpbmctc21hbGwge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYy1wYWdlLXRpdGxlX19zdWJoZWFkaW5nIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzk5OTk5OTtcbn1cblxuLmMtcHJvamVjdG9yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5jLXByb2plY3Rvcl9fZmlndXJlIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5jLXByb2plY3Rvcl9fY2FwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBncmlkLWNvbHVtbjogMTtcbiAgZ3JpZC1yb3c6IDI7XG4gIHVzZXItc2VsZWN0OiB0ZXh0O1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIGNvbG9yOiAjOTk5OTk5O1xufVxuXG4uYy1wcm9qZWN0b3JfX3BpY3R1cmUge1xuICBncmlkLWNvbHVtbjogMTtcbiAgZ3JpZC1yb3c6IDE7XG4gIGFsaWduLXNlbGY6IGVuZDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAzNjBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjg7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cztcbn1cbi5pZSAuYy1wcm9qZWN0b3ItLXNpbmdsZS1pbWFnZSAuYy1wcm9qZWN0b3JfX3BpY3R1cmUge1xuICBtaW4taGVpZ2h0OiA0MDBweDtcbn1cbi5jLXByb2plY3Rvcl9fcGljdHVyZS5pcy1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uYy1wcm9qZWN0b3JfX2NvbnRyb2wge1xuICBncmlkLWNvbHVtbjogMTtcbiAgZ3JpZC1yb3c6IDE7XG4gIGFsaWduLXNlbGY6IGVuZDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cblxuLmMtcHJvamVjdG9yX19pbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5jLXByb2plY3Rvcl9faW1nIHtcbiAgICBtYXgtaGVpZ2h0OiA3OHZoO1xuICB9XG59XG5cbi5jLXNlcnZpY2Vwb2ludCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uYy1zZXJ2aWNlcG9pbnRfX2ltYWdlIHtcbiAgZmxleDogMDtcbiAgbWluLXdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDE5NHB4O1xuICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG59XG5cbi5jLXNlcnZpY2Vwb2ludF9fY29udGVudCB7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICAtbXMtaHlwaGVuczogYXV0bztcbiAgaHlwaGVuczogYXV0bztcbiAgbWluLXdpZHRoOiA1MCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICBmbGV4LWJhc2lzOiBjYWxjKGNhbGMoNDIwcHggLSAxMDAlKSAqIDk5OSk7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmMtc2VydmljZXBvaW50X19jb250ZW50IHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG59XG5cbi5jLXNlcnZpY2Vwb2ludF9fYm9keSB7XG4gIG1hcmdpbi10b3A6IDhweDtcbn1cblxuLmMtc2VydmljZXBvaW50X19mb290ZXIge1xuICBtYXJnaW4tdG9wOiA4cHg7XG59XG5cbi5jLXNlcnZpY2Vwb2ludF9faGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICM2NTY1NjU7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG59XG5cbi5jLXNlcnZpY2Vwb2ludF9fc3ViaGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzk5OTk5OTtcbn1cblxuLmMtc2l0ZW1hcF9faXRlbSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMzMzMzMzMzMzO1xuICBjb2xvcjogIzY1NjU2NTtcbn1cblxuLmMtc2l0ZW1hcF9fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA0cHggMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmMtc2l0ZW1hcF9fbGluazpob3ZlciB7XG4gIGNvbG9yOiAjM0Q5M0QwO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLypcbiAqIFNraXAgTGlua1xuICovXG4uYy1za2lwLWxpbmsge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IC0xMDB2aDtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIGNvbG9yOiAjNDA3OUI4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYy1za2lwLWxpbms6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICBvdXRsaW5lLXdpZHRoOiAycHg7XG4gIHRvcDogNXB4O1xuICAvKiBOb3cgdGhlIGxpbmsgd2lsbCBhcHBlYXIgKi9cbn1cblxuLmMtc2xpZGUtaW5kaWNhdG9yIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmMtc2xpZGUtaW5kaWNhdG9yX19idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzREQTZBNztcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGhlaWdodDogNDBweDtcbiAgd2lkdGg6IDQwcHg7XG59XG4uYy1zbGlkZS1pbmRpY2F0b3JfX2J1dHRvbiArIC5jLXNsaWRlLWluZGljYXRvcl9fYnV0dG9uIHtcbiAgbWFyZ2luLWxlZnQ6IDhweDtcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fYnV0dG9uW2FyaWEtbGFiZWw9cHJldmlvdXNdID4gc3ZnIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuLmMtc2xpZGUtaW5kaWNhdG9yX19idXR0b25bYXJpYS1sYWJlbD1uZXh0XSA+IHN2ZyB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG59XG4uYy1zbGlkZS1pbmRpY2F0b3JfX2J1dHRvbjpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ1OTU5Njtcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ1OTU5Njtcbn1cblxuLmMtc2xpZGUtaW5kaWNhdG9yX19kb3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLCBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcztcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fZG90OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fZG90OmhvdmVyOm5vdCguaXMtYWN0aXZlKSwgLmMtc2xpZGUtaW5kaWNhdG9yX19kb3Q6Zm9jdXM6bm90KC5pcy1hY3RpdmUpIHtcbiAgb3BhY2l0eTogMC41O1xufVxuLmMtc2xpZGUtaW5kaWNhdG9yX19kb3Q6YmVmb3JlLCAuYy1zbGlkZS1pbmRpY2F0b3JfX2RvdDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1jbGlwOiBjb250ZW50LWJveDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBiYWNrZ3JvdW5kLWNvbG9yLCBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG59XG4uYy1zbGlkZS1pbmRpY2F0b3JfX2RvdDpiZWZvcmUge1xuICB0b3A6IGNhbGMoKDMwcHggLSA4cHgpIC8gMik7XG4gIHJpZ2h0OiBjYWxjKCgzMHB4IC0gOHB4KSAvIDIpO1xuICBib3R0b206IGNhbGMoKDMwcHggLSA4cHgpIC8gMik7XG4gIGxlZnQ6IGNhbGMoKDMwcHggLSA4cHgpIC8gMik7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG59XG4uYy1zbGlkZS1pbmRpY2F0b3JfX2RvdDphZnRlciB7XG4gIHRvcDogY2FsYygoMzBweCAtIDEycHgpIC8gMik7XG4gIHJpZ2h0OiBjYWxjKCgzMHB4IC0gMTJweCkgLyAyKTtcbiAgYm90dG9tOiBjYWxjKCgzMHB4IC0gMTJweCkgLyAyKTtcbiAgbGVmdDogY2FsYygoMzBweCAtIDEycHgpIC8gMik7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGRkZGRkY7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS40KTtcbiAgb3BhY2l0eTogMDtcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fZG90LmlzLWFjdGl2ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTtcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fZG90LmlzLWFjdGl2ZTphZnRlciB7XG4gIG9wYWNpdHk6IDAuOTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fZG90OmZvY3VzIHtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xufVxuLmMtc2xpZGUtaW5kaWNhdG9yX19kb3Q6Zm9jdXM6YmVmb3JlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4IGJsYWNrLCAwIDAgMTBweCAxcHggd2hpdGU7XG59XG4uYy1zbGlkZS1pbmRpY2F0b3JfX2RvdDpmb2N1czphZnRlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCBibGFjaywgMCAwIDEwcHggMXB4IHdoaXRlO1xufVxuXG4uYy1zdWJuYXYge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5jLXN1Ym5hdi0tYm94ZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4O1xuICBwYWRkaW5nOiA4MHB4IDZ2dztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5jLXN1Ym5hdi0tYm94ZWQge1xuICAgIHBhZGRpbmctbGVmdDogMjUlO1xuICB9XG59XG5cbi5jLXN1Ym5hdl9faGVhZGVyIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uYy1zdWJuYXZfX2xpc3Qge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uYy1zdWJuYXZfX2l0ZW0tLWJhY2sge1xuICBtYXJnaW4tdG9wOiAyNHB4O1xufVxuXG4uYy1zdWJuYXZfX2xpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDhweCAwO1xuICBjb2xvcjogIzY1NjU2NTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGNvbG9yIDI1MG1zO1xufVxuLmMtc3VibmF2X19saW5rOmhvdmVyLCAuYy1zdWJuYXZfX2xpbms6YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuLmMtc3VibmF2X19saW5rOmhvdmVyIHtcbiAgY29sb3I6ICM0MDc5Qjg7XG59XG4uYy1zdWJuYXZfX2xpbms6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICBvdXRsaW5lLXdpZHRoOiAycHg7XG59XG4uYy1zdWJuYXZfX2xpbms6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNDOEM4Qzg7XG59XG4uYy1zdWJuYXZfX2l0ZW0uaXMtYWN0aXZlIC5jLXN1Ym5hdl9fbGluazo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjM0Q5M0QwO1xuICBib3JkZXItd2lkdGg6IDJweDtcbn1cblxuLmMtc3VibmF2X19pY29uIHtcbiAgb3BhY2l0eTogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IDE2cHg7XG4gIGNvbG9yOiAjQzhDOEM4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE2cHgpO1xuICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1vdXQ7XG59XG4uYy1zdWJuYXZfX2xpbms6aG92ZXIgLmMtc3VibmF2X19pY29uIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiBub25lO1xuICBjb2xvcjogIzQwNzlCODtcbn1cblxuLmMtc3VibmF2X19pdGVtLmlzLWFjdGl2ZSAuYy1zdWJuYXZfX2xpbmsge1xuICBjb2xvcjogIzNEOTNEMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4uYy1zdWJuYXZfX2l0ZW0uaXMtYWN0aXZlIC5jLXN1Ym5hdl9fbGluazo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjM0Q5M0QwO1xuICBib3JkZXItd2lkdGg6IDJweDtcbn1cbi5jLXN1Ym5hdl9faXRlbS5pcy1hY3RpdmUgLmMtc3VibmF2X19pY29uIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLyoqXG4gKiAxLiBDb2xvciBnZXRzIGluaGVyaXRlZCBhbmQgdXNlZCBmb3IgbmVzdGVkIGVsZW1lbnRzIHdpdGggJ2N1cnJlbnRDb2xvcicgcHJvcGVydHlcbiAqIDIuIFJlc2V0IGRlZmF1bHQgYnV0dG9uIHN0eWxpbmdcbiAqL1xuLmMtdGV4dGJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICM0MDc5Qjg7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogMiAqL1xuICBib3JkZXI6IG5vbmU7XG4gIC8qIDIgKi9cbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3M7XG59XG4uYy10ZXh0YnV0dG9uOmhvdmVyLCAuYy10ZXh0YnV0dG9uOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5jLXRleHRidXR0b246aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICBjb2xvcjogIzI2NDk2ZTtcbn1cbi5jLXRleHRidXR0b246ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4uYy10ZXh0YnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuICBvdXRsaW5lLXN0eWxlOiBzb2xpZDtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgb3V0bGluZS13aWR0aDogMnB4O1xufVxuXG4uYy10ZXh0YnV0dG9uX190ZXh0IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4uYy10ZXh0YnV0dG9uX19pY29uIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogOHB4O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcbn1cbi5jLXRleHRidXR0b246aG92ZXI6bm90KDpkaXNhYmxlZCkgLmMtdGV4dGJ1dHRvbl9faWNvbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpO1xufVxuLmMtdGV4dGJ1dHRvbi0taWNvbiAuYy10ZXh0YnV0dG9uX19pY29uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jLXRleHRidXR0b24tLWlzLXJldmVyc2VkIC5jLXRleHRidXR0b25fX3RleHQge1xuICBvcmRlcjogMjtcbn1cbi5jLXRleHRidXR0b24tLWlzLXJldmVyc2VkIC5jLXRleHRidXR0b25fX2ljb24ge1xuICBvcmRlcjogMTtcbiAgdG9wOiAxcHg7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC41dHVybik7XG59XG4uYy10ZXh0YnV0dG9uLS1pcy1yZXZlcnNlZDpob3Zlcjpub3QoOmRpc2FibGVkKSAuYy10ZXh0YnV0dG9uX19pY29uIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC41dHVybikgdHJhbnNsYXRlWCgzcHgpO1xufVxuXG4uYy10b2dnbGUge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmMtdG9nZ2xlX19pdGVtIHtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjQzhDOEM4O1xufVxuLmMtdG9nZ2xlX19pdGVtICsgLmMtdG9nZ2xlX19pdGVtIHtcbiAgbWFyZ2luLXRvcDogMTZweDtcbn1cblxuLmMtdG9nZ2xlX190aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiA5NnB4O1xufVxuLmMtdG9nZ2xlX190aXRsZVtkYXRhLXRvZ2dsZS1pZF0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jLXRvZ2dsZV9faWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxOHB4O1xuICBsZWZ0OiBjYWxjKDQ4cHgpO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBjb2xvcjogIzFGMjg4MztcbiAgYm9yZGVyOiAycHggc29saWQgY3VycmVudENvbG9yO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHRyYW5zaXRpb246IGFsbCAxNTBtcyBsaW5lYXI7XG59XG4uYy10b2dnbGVfX2ljb24gPiBzdmcge1xuICB3aWR0aDogMTBweDtcbn1cbi5jLXRvZ2dsZV9faWNvbi5wbHVzIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5jLXRvZ2dsZV9fdGl0bGUuaXMtYWN0aXZlIC5jLXRvZ2dsZV9faWNvbi5wbHVzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5jLXRvZ2dsZV9fdGl0bGUuaXMtYWN0aXZlIC5jLXRvZ2dsZV9faWNvbi5taW51cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uYy10b2dnbGVfX2ljb24uY2hlY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBib3JkZXI6IG5vbmU7XG59XG4uYy10b2dnbGVfX2ljb24uY2hlY2sgPiBzdmcge1xuICB3aWR0aDogMjRweDtcbn1cbi5jLXRvZ2dsZV9fdGl0bGVbZGF0YS10b2dnbGUtaWRdOm5vdCguaXMtYWN0aXZlKTpob3ZlciAuYy10b2dnbGVfX2ljb24ge1xuICBjb2xvcjogIzFEMUQxRDtcbn1cblxuLmMtdG9nZ2xlX19sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMTZweCAwO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICMxRjI4ODM7XG4gIHRyYW5zaXRpb246IGFsbCAxNTBtcyBsaW5lYXI7XG59XG4uYy10b2dnbGVfX3RpdGxlW2RhdGEtdG9nZ2xlLWlkXTpub3QoLmlzLWFjdGl2ZSk6aG92ZXIgLmMtdG9nZ2xlX19sYWJlbCB7XG4gIGNvbG9yOiAjMUQxRDFEO1xufVxuXG4uYy10b2dnbGVfX2NvbnRlbnQge1xuICBtYXgtaGVpZ2h0OiAwO1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDk2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDQ4cHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1pbi1vdXQ7XG59XG4uaXMtYWN0aXZlIH4gLmMtdG9nZ2xlX19jb250ZW50IHtcbiAgcGFkZGluZy1ib3R0b206IDE2cHg7XG4gIG1heC1oZWlnaHQ6IDEwMDBweDtcbiAgb3BhY2l0eTogMTtcbiAgcG9pbnRlci1ldmVudHM6IGFsbDtcbn1cblxuLmMtdHJhZGVtYXJrIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDIwMG1zO1xufVxuLmMtdHJhZGVtYXJrOmhvdmVyLCAuYy10cmFkZW1hcms6YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuLmMtdHJhZGVtYXJrOmhvdmVyIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uYy10cmFkZW1hcms6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICBvdXRsaW5lLXdpZHRoOiAycHg7XG59XG5cbi5jLXRyYWRlbWFya19fdGV4dCB7XG4gIG1hcmdpbi1yaWdodDogN3B4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uYy10cmFkZW1hcmtfX2ljb24ge1xuICB3aWR0aDogMTAwcHg7XG4gIG1heC1oZWlnaHQ6IDMycHg7XG4gIG9wYWNpdHk6IDAuNTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xufVxuLmMtdHJhZGVtYXJrOmhvdmVyIC5jLXRyYWRlbWFya19faWNvbiB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5jLXZhY2FuY3ktcHJvcGVydGllcyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5jLXZhY2FuY3ktcHJvcGVydGllc19faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAjNDA3OUI4O1xuICBtYXJnaW4tdG9wOiA0cHg7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbn1cbi5jLXZhY2FuY3ktcHJvcGVydGllc19faXRlbTpudGgtbGFzdC1jaGlsZChuKzIpIHtcbiAgbWFyZ2luLXJpZ2h0OiAzMnB4O1xufVxuXG4uYy12YWNhbmN5LXByb3BlcnRpZXNfX2ljb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cblxuLmMtdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFREVERUQ7XG59XG5cbi5jLXZpZGVvX19pZnJhbWUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLyogIDYgLSBPUkdBTklTTVNcbiAqICBMYXJnZSBibG9ja3MgY29tcG9zZWQgb2YgbXVsdGlwbGUgY29tcG9uZW50cy5cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBPcmdhbmlzbXNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLm8tYWNjb3JkaW9uIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEydncpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tYWNjb3JkaW9uIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDEwKSAqIDgpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tYWNjb3JkaW9uIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDE0KSAqIDEyKTtcbiAgICBtYXgtd2lkdGg6IDExNTJweDtcbiAgfVxufVxuXG4uby1hY2NvcmRpb25fX2l0ZW0ge1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1jb2xvcjogI0M4QzhDODtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm9yZGVyO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcztcbn1cbi5vLWFjY29yZGlvbl9faXRlbSArIC5vLWFjY29yZGlvbl9faXRlbSB7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG59XG4uby1hY2NvcmRpb25fX2l0ZW06bm90KC5pcy1hY3RpdmUpOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjM0Q5M0QwO1xufVxuXG4uby1hY2NvcmRpb25fX3RpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLXRvcDogMTZweDtcbiAgcGFkZGluZy1yaWdodDogMjRweDtcbiAgcGFkZGluZy1ib3R0b206IDE2cHg7XG4gIHBhZGRpbmctbGVmdDogNDhweDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWFjY29yZGlvbl9fdGl0bGUge1xuICAgIHBhZGRpbmctbGVmdDogMTIuNSU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1hY2NvcmRpb25fX3RpdGxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbn1cbi5vLWFjY29yZGlvbl9faXRlbTpub3QoLmlzLWFjdGl2ZSkgLm8tYWNjb3JkaW9uX190aXRsZTpob3ZlciB7XG4gIGNvbG9yOiAjM0Q5M0QwO1xufVxuXG4uby1hY2NvcmRpb25fX2ljb24ge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGF1dG87XG4gIGxlZnQ6IDE0cHg7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1hY2NvcmRpb25fX2ljb24ge1xuICAgIGxlZnQ6IGNhbGMoNi4yNSUgLSAxMHB4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLWFjY29yZGlvbl9faWNvbiB7XG4gICAgbGVmdDogY2FsYyg0LjE2NjY2NjY2NjclIC0gMTBweCk7XG4gIH1cbn1cbi5vLWFjY29yZGlvbl9faWNvbjo6YmVmb3JlLCAuby1hY2NvcmRpb25fX2ljb246OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAycHg7XG4gIHdpZHRoOiAxMHB4O1xuICBsZWZ0OiAzcHg7XG4gIHRvcDogY2FsYyg1MCUgLSAxcHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IsIHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXMsIDQwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZSwgY3ViaWMtYmV6aWVyKDAuODYsIDAsIDAuMDcsIDEpO1xufVxuLm8tYWNjb3JkaW9uX19pdGVtLmlzLWFjdGl2ZSAuby1hY2NvcmRpb25fX2ljb246OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDApIHJvdGF0ZSgwLjI1dHVybik7XG59XG4uby1hY2NvcmRpb25fX2ljb246OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC4yNXR1cm4pO1xufVxuLm8tYWNjb3JkaW9uX19pdGVtLmlzLWFjdGl2ZSAuby1hY2NvcmRpb25fX2ljb246OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC41dHVybik7XG59XG5cbi5vLWFjY29yZGlvbl9faGVhZGVyIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tYWNjb3JkaW9uX19oZWFkZXIge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjMzMzMzMzMzMzM7XG4gIH1cbn1cblxuLyogSGlkZGVuIGJ5IGRlZmF1bHQqL1xuLm8tYWNjb3JkaW9uX19jb250ZW50IHtcbiAgb3BhY2l0eTogMDtcbiAgbWF4LWhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1sZWZ0OiA0OHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyNHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG4uby1hY2NvcmRpb25fX2NvbnRlbnQgPiAqICsgKiB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWFjY29yZGlvbl9fY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMi41JTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLWFjY29yZGlvbl9fY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG59XG4uby1hY2NvcmRpb25fX2l0ZW0uaXMtYWN0aXZlIC5vLWFjY29yZGlvbl9fY29udGVudCB7XG4gIG9wYWNpdHk6IDE7XG4gIG1heC1oZWlnaHQ6IDQwMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzJweDtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBhbGw7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDQwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLWFwcGx5IHtcbiAgICBwYWRkaW5nLXRvcDogNnZ3O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMnZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuby1hcHBseSB7XG4gICAgcGFkZGluZy10b3A6IDV2dztcbiAgICBwYWRkaW5nLWJvdHRvbTogMTB2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSBhbmQgKG1heC13aWR0aDogMTM0M3B4KSB7XG4gIC5vLWFwcGx5IHtcbiAgICBwYWRkaW5nLXRvcDogMy41NzE0Mjg1NzE0dnc7XG4gICAgcGFkZGluZy1ib3R0b206IDcuMTQyODU3MTQyOXZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzQ0cHgpIHtcbiAgLm8tYXBwbHkge1xuICAgIHBhZGRpbmctdG9wOiA0OHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA5NnB4O1xuICB9XG59XG5cbi5vLWFwcGx5X19oZWFkaW5nIHtcbiAgcGFkZGluZy1ib3R0b206IDQ4cHg7XG4gIGNvbG9yOiAjMUQxRDFEO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3MDBweCkge1xuICAuby1hcHBseV9fYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3MDBweCkge1xuICAuby1hcHBseV9fbGVmdCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlICsgNDhweCk7XG4gICAgcGFkZGluZy1yaWdodDogNDhweDtcbiAgfVxufVxuXG4uby1hcHBseV9fcmlnaHQge1xuICBtYXJnaW4tdG9wOiAxNnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzAwcHgpIHtcbiAgLm8tYXBwbHlfX3JpZ2h0IHtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLm8tYXBwbHlfX3JvdyArIC5vLWFwcGx5X19yb3cge1xuICBtYXJnaW4tdG9wOiAxNnB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3MDBweCkge1xuICAuby1hcHBseV9fZmlsZXVwbG9hZCB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgfVxufVxuXG4uby1hcHBseV9fZm9vdGVyIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNDOEM4Qzg7XG4gIG1hcmdpbi10b3A6IDQ4cHg7XG4gIHBhZGRpbmctdG9wOiA0OHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5vLWFwcGx5X19mZWVkYmFjayB7XG4gIG1hcmdpbi10b3A6IDMycHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuby1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTB2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSBhbmQgKG1heC13aWR0aDogMTM0M3B4KSB7XG4gIC5vLWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiA3LjE0Mjg1NzE0Mjl2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM0NHB4KSB7XG4gIC5vLWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiA5NnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAuby1ibG9jayArIC5vLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAxMnZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuby1ibG9jayArIC5vLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAxMHZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIGFuZCAobWF4LXdpZHRoOiAxMzQzcHgpIHtcbiAgLm8tYmxvY2sgKyAuby1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogNy4xNDI4NTcxNDI5dnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNDRweCkge1xuICAuby1ibG9jayArIC5vLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiA5NnB4O1xuICB9XG59XG5cbi8qXG4qIFdyYXBwZXIgb2YgdGhlIG1haW4gYm9keVxuKiAoYmV0d2VlbiB0aGUgaGVhZGVyIGFuZCB0aGUgZm9vdGVyKVxuKi9cbi5vLWJvZHkge1xuICB6LWluZGV4OiA0MDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAwIDAgYXV0bztcbn1cblxuLm8tY2FsbG91dC1iYXIge1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgLW1zLWh5cGhlbnM6IGF1dG87XG4gIGh5cGhlbnM6IGF1dG87XG4gIGNvbG9yOiAjMkMyQzJDO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5vLWNhbGxvdXQtYmFyX19tYWluIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEydncpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tY2FsbG91dC1iYXJfX21haW4ge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTApICogOCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1jYWxsb3V0LWJhcl9fbWFpbiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gICAgbWF4LXdpZHRoOiAxMTUycHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLWNhbGxvdXQtYmFyX19tYWluIHtcbiAgICBwYWRkaW5nLXRvcDogMTJ2dztcbiAgICBwYWRkaW5nLWJvdHRvbTogMTJ2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLm8tY2FsbG91dC1iYXJfX21haW4ge1xuICAgIHBhZGRpbmctdG9wOiAxMHZ3O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIGFuZCAobWF4LXdpZHRoOiAxMzQzcHgpIHtcbiAgLm8tY2FsbG91dC1iYXJfX21haW4ge1xuICAgIHBhZGRpbmctdG9wOiA3LjE0Mjg1NzE0Mjl2dztcbiAgICBwYWRkaW5nLWJvdHRvbTogNy4xNDI4NTcxNDI5dnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNDRweCkge1xuICAuby1jYWxsb3V0LWJhcl9fbWFpbiB7XG4gICAgcGFkZGluZy10b3A6IDk2cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDk2cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLWNhbGxvdXQtYmFyX19tYWluID4gKiArICoge1xuICAgIG1hcmdpbi10b3A6IDZ2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLm8tY2FsbG91dC1iYXJfX21haW4gPiAqICsgKiB7XG4gICAgbWFyZ2luLXRvcDogNXZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIGFuZCAobWF4LXdpZHRoOiAxMzQzcHgpIHtcbiAgLm8tY2FsbG91dC1iYXJfX21haW4gPiAqICsgKiB7XG4gICAgbWFyZ2luLXRvcDogMy41NzE0Mjg1NzE0dnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNDRweCkge1xuICAuby1jYWxsb3V0LWJhcl9fbWFpbiA+ICogKyAqIHtcbiAgICBtYXJnaW4tdG9wOiA0OHB4O1xuICB9XG59XG5cbi5vLWNhbGxvdXQtYmFyX19ib2R5IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uby1jYWxsb3V0LWJhcl9faGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG59XG5cbi8qXG4gKiBDYXJkIGdyaWRcbiAqXG4gKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gIC5vLWNhcmQtZ3JpZF9fbWFpbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgLm8tY2FyZC1ncmlkX19pdGVtICsgLm8tY2FyZC1ncmlkX19pdGVtIHtcbiAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1OTlweCkge1xuICAuby1jYXJkLWdyaWRfX2l0ZW0ge1xuICAgIG1heC13aWR0aDogMzQ0cHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5vLWNhcmQtZ3JpZF9faXRlbSB7XG4gICAgZmxleDogMDtcbiAgICBmbGV4LWJhc2lzOiBjYWxjKDUwJSAtICgoMiAtIDEpIC8gMiAqIDMycHgpKTtcbiAgICBtYXJnaW4tbGVmdDogMzJweDtcbiAgfVxuICAuby1jYXJkLWdyaWRfX2l0ZW06bnRoLWNoaWxkKDJuKzEpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAuby1jYXJkLWdyaWRfX2l0ZW06bnRoLWNoaWxkKG4rMykge1xuICAgIG1hcmdpbi10b3A6IDMycHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1jYXJkLWdyaWRfX2l0ZW0ge1xuICAgIGZsZXg6IDA7XG4gICAgZmxleC1iYXNpczogY2FsYygzMy4zMzMzMzMzMzMzJSAtICgoMyAtIDEpIC8gMyAqIDMycHgpKTtcbiAgICBtYXJnaW4tbGVmdDogMzJweDtcbiAgfVxuICAuby1jYXJkLWdyaWRfX2l0ZW06bnRoLWNoaWxkKDNuKzEpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAuby1jYXJkLWdyaWRfX2l0ZW06bnRoLWNoaWxkKG4rNCkge1xuICAgIG1hcmdpbi10b3A6IDMycHg7XG4gIH1cbn1cblxuLm8tY29udGFjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNDBweCkge1xuICAuby1jb250YWN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICAgIG1heC13aWR0aDogMTE1MnB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuXG4uby1jb250YWN0X19pbmZvIHtcbiAgcGFkZGluZy10b3A6IDMycHg7XG4gIHBhZGRpbmctbGVmdDogNnZ3O1xuICBwYWRkaW5nLXJpZ2h0OiA2dnc7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1jb250YWN0X19pbmZvIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMCU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1jb250YWN0X19pbmZvIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDcuMTQyODU3MTQyOSU7XG4gICAgcGFkZGluZy1yaWdodDogNy4xNDI4NTcxNDI5JTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA0MHB4KSB7XG4gIC5vLWNvbnRhY3RfX2luZm8ge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcGFkZGluZy10b3A6IDQ4cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDQ4cHg7XG4gICAgcGFkZGluZy1yaWdodDogOHB4O1xuICB9XG59XG5cbi5vLWNvbnRhY3RfX2Zvcm0ge1xuICBtYXJnaW4tdG9wOiAzMnB4O1xuICBwYWRkaW5nOiAzMnB4IDZ2dztcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y4RjhGODtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWNvbnRhY3RfX2Zvcm0ge1xuICAgIHBhZGRpbmctbGVmdDogMTAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLWNvbnRhY3RfX2Zvcm0ge1xuICAgIHBhZGRpbmctbGVmdDogNy4xNDI4NTcxNDI5JTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA3LjE0Mjg1NzE0MjklO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDQwcHgpIHtcbiAgLm8tY29udGFjdF9fZm9ybSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctdG9wOiA0OHB4O1xuICB9XG59XG5cbi5vLWNvbnRhY3RfX2hlYWRlciB7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICAtbXMtaHlwaGVuczogYXV0bztcbiAgaHlwaGVuczogYXV0bztcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgY29sb3I6ICMyQzJDMkM7XG59XG5cbi5vLWNvbnRhY3RfX2NhcmQge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuXG4uby1jb250YWN0X19hZGRyZXNzIHtcbiAgbWFyZ2luLXRvcDogMjRweDtcbn1cblxuLm8tY29udGFjdF9fbnVtYmVycyB7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG59XG5cbi5vLWNvb2tpZS1iYXIge1xuICB6LWluZGV4OiAtMTtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogNjRweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxRDFEMUQ7XG4gIG9wYWNpdHk6IDE7XG4gIGJveC1zaGFkb3c6IDAgLTRweCA2cHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cywgdHJhbnNmb3JtIDAuNnM7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cbi5vLWNvb2tpZS1iYXI6bm90KC5pcy1hY2NlcHRlZCkge1xuICB6LWluZGV4OiA5OTk5O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uby1jb29raWUtYmFyLmlzLXRyYW5zaXRpb25pbmctb3V0IHtcbiAgei1pbmRleDogLTE7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xufVxuXG4uby1jb29raWUtYmFyX19tYWluIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzNweCkge1xuICAuby1jb29raWUtYmFyX19tYWluIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gIH1cbn1cblxuLm8tY29va2llLWJhcl9fdGV4dCB7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICM5OTk5OTk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzRweCkge1xuICAuby1jb29raWUtYmFyX190ZXh0IHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE0Mjg1NzE0Mjk7XG4gIH1cbn1cblxuLm8tY29va2llLWJhcl9fbGluayB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzO1xufVxuLm8tY29va2llLWJhcl9fbGluazpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDE1MywgMTUzLCAxNTMsIDAuNzUpO1xufVxuXG4uby1jb29raWUtYmFyX19idXR0b24ge1xuICBmbGV4OiBub25lO1xuICBtYXJnaW4tbGVmdDogNDBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLWNvb2tpZS1iYXJfX2J1dHRvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2cHg7XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBEb3VibGUgaW1hZ2UgaW4gMiBlcXVhbCBjb2x1bW5zXG4gKlxuICogVW50aWwgdmlld3BvcnQgaXMgd2lkZSBlbm91Z2ggdGhlIHBpY3R1cmVzIGFyZSBzdGFja2VkIHZlcnRpY2FsbHlcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLm8tZG91YmxlLWltYWdlIHtcbiAgbWFyZ2luOiAtMXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgLm8tZG91YmxlLWltYWdlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbi5vLWRvdWJsZS1pbWFnZV9fcGljdHVyZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDFweDtcbiAgb3JkZXI6IDE7XG4gIG1pbi1oZWlnaHQ6IDM2MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gIC5vLWRvdWJsZS1pbWFnZV9fcGljdHVyZSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbiAgLm8tZG91YmxlLWltYWdlX19waWN0dXJlOmxhc3QtY2hpbGQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxufVxuXG4uby1kb3VibGUtaW1hZ2VfX2ltZyB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBtYXgtaGVpZ2h0OiA4NXZoO1xufVxuXG4uby1kb3VibGUtaW1hZ2UtLWlzLXJldmVyc2VkIC5vLWRvdWJsZS1pbWFnZV9fcGljdHVyZSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5vLWRvdWJsZS1pbWFnZS0taXMtcmV2ZXJzZWQgLm8tZG91YmxlLWltYWdlX19waWN0dXJlOmxhc3QtY2hpbGQge1xuICBvcmRlcjogMDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBEb3VibGUgbGF5b3V0IGluIDIgZXF1YWwgY29sdW1uc1xuICpcbiAqIFVudGlsIHZpZXdwb3J0IGlzIHdpZGUgZW5vdWdoIHRoZSBjb2x1bW5zIGFyZSBzdGFja2VkIHZlcnRpY2FsbHlcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLm8tZG91YmxlLXRleHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWRvdWJsZS10ZXh0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1kb3VibGUtdGV4dF9fY29sdW1uIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuby1kb3VibGUtdGV4dF9fY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgICB3aWR0aDogNjIuNSU7XG4gICAgcGFkZGluZy1yaWdodDogMTIuNSU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1kb3VibGUtdGV4dF9fY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLWRvdWJsZS10ZXh0X19jb2x1bW46bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogNnZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuby1kb3VibGUtdGV4dF9fY29sdW1uOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAzNy41JTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLWRvdWJsZS10ZXh0X19jb2x1bW46bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5vLWRvdWJsZS11c3Age1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzRDkzRDA7XG4gIH1cbn1cblxuLm8tZG91YmxlLXVzcF9fbWFpbiB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMnZ3KTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcGFkZGluZy10b3A6IDQ4cHg7XG4gIHBhZGRpbmctYm90dG9tOiA0OHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tZG91YmxlLXVzcF9fbWFpbiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxMCkgKiA4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLWRvdWJsZS11c3BfX21haW4ge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICAgIG1heC13aWR0aDogMTE1MnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1kb3VibGUtdXNwX19tYWluIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLWRvdWJsZS11c3BfX2xlZnQge1xuICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWRvdWJsZS11c3BfX2xlZnQge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWRvdWJsZS11c3BfX3JpZ2h0IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5cbi5vLWRvdWJsZS11c3BfX2hlYWRpbmcge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLm8tZG91YmxlLXVzcF9fbGlzdCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDE2cHg7XG59XG5cbi5vLWRvdWJsZS11c3BfX2l0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uby1kb3VibGUtdXNwX19pdGVtICsgLm8tZG91YmxlLXVzcF9faXRlbSB7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG59XG4uby1kb3VibGUtdXNwX19pdGVtOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNXB4O1xuICBsZWZ0OiAtMTZweDtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTJweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWcvY2hlY2svY2hlY2tlZC5zdmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTJweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tZG93bmxvYWRzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1kb3dubG9hZHMtLWlzLXJldmVyc2VkIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbn1cblxuLm8tZG93bmxvYWRzX19tYWluIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA3MnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tZG93bmxvYWRzX19tYWluIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLm8tZG93bmxvYWRzX19tYWluIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYuMjUlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDYuMjUlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tZG93bmxvYWRzX19tYWluIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gICAgcGFkZGluZy1yaWdodDogOC4zMzMzMzMzMzMzJTtcbiAgfVxufVxuLm8tZG93bmxvYWRzX19tYWluIC5jLWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAuby1kb3dubG9hZHNfX3NlcnZpY2UtcG9pbnQge1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWRvd25sb2Fkc19fc2VydmljZS1wb2ludCB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLm8tZG93bmxvYWRzX19zZXJ2aWNlLXBvaW50IHtcbiAgICB3aWR0aDogMzcuNSU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1kb3dubG9hZHNfX3NlcnZpY2UtcG9pbnQge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxufVxuXG4uby1ldmVudCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtcm93LWdhcDogNjRweDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDIsIGF1dG8pO1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImRhdGFcIiBcImZvcm1cIjtcbn1cbi5vLWV2ZW50X19kYXRhIHtcbiAgZ3JpZC1hcmVhOiBkYXRhO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5vLWV2ZW50X19mb3JtIHtcbiAgZ3JpZC1hcmVhOiBmb3JtO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAuby1ldmVudCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA2ZnIgNWZyO1xuICAgIGdyaWQtcm93LWdhcDogMDtcbiAgICBncmlkLWNvbHVtbi1nYXA6IDguMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJmb3JtIGRhdGFcIjtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAwcHgpIHtcbiAgLm8tZXZlbnRfX2RhdGEge1xuICAgIHBhZGRpbmctdG9wOiAzMnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tZXZlbnRfX2RhdGEge1xuICAgIHBhZGRpbmctdG9wOiA0OHB4O1xuICB9XG59XG5cbi5vLWV2ZW50X19mb3JtIHtcbiAgcGFkZGluZy10b3A6IDMycHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODM5cHgpIHtcbiAgLm8tZXZlbnRfX2Zvcm0ge1xuICAgIG1hcmdpbi1sZWZ0OiAtOC4zMzMzMzMzMzMzJTtcbiAgICBtYXJnaW4tcmlnaHQ6IC04LjMzMzMzMzMzMzMlO1xuICAgIHBhZGRpbmctbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1ldmVudF9fZm9ybSB7XG4gICAgcGFkZGluZy1sZWZ0OiA0OHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDQ4cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1ldmVudF9fZm9ybSB7XG4gICAgcGFkZGluZy10b3A6IDQ4cHg7XG4gICAgcGFkZGluZy1sZWZ0OiA5NnB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDk2cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gIH1cbn1cblxuLm8tZXZlbnRfX2luZm8tbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luOiAwIDAgNjRweDtcbn1cbi5vLWV2ZW50X19pbmZvLWxpc3QgZHQge1xuICB3aWR0aDogMTEwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5vLWV2ZW50X19pbmZvLWxpc3QgZGQge1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgLW1zLWh5cGhlbnM6IGF1dG87XG4gIGh5cGhlbnM6IGF1dG87XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMTBweCk7XG59XG5cbi5vLWV2ZW50X19oZWFkaW5nIHtcbiAgY29sb3I6ICMxRDFEMUQ7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7XG59XG5cbi5vLWV2ZW50X19zZXJ2aWNlcG9pbnQtaGVhZGluZyB7XG4gIG1hcmdpbi10b3A6IDY0cHg7XG59XG5cbi8qXG4gKiBFdmVudHNcbiAqXG4gKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gIC5vLWV2ZW50c19fbWFpbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgLm8tZXZlbnRzX19pdGVtICsgLm8tZXZlbnRzX19pdGVtIHtcbiAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1OTlweCkge1xuICAuby1ldmVudHNfX2l0ZW0ge1xuICAgIG1heC13aWR0aDogMzQ0cHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgLm8tZXZlbnRzX19pdGVtIHtcbiAgICBmbGV4OiAwO1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoNTAlIC0gKCgyIC0gMSkgLyAyICogMzJweCkpO1xuICAgIG1hcmdpbi1sZWZ0OiAzMnB4O1xuICB9XG4gIC5vLWV2ZW50c19faXRlbTpudGgtY2hpbGQoMm4rMSkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5vLWV2ZW50c19faXRlbTpudGgtY2hpbGQobiszKSB7XG4gICAgbWFyZ2luLXRvcDogMzJweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLm8tZXZlbnRzX19pdGVtIHtcbiAgICBmbGV4OiAwO1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAoKDMgLSAxKSAvIDMgKiAzMnB4KSk7XG4gICAgbWFyZ2luLWxlZnQ6IDMycHg7XG4gIH1cbiAgLm8tZXZlbnRzX19pdGVtOm50aC1jaGlsZCgzbisxKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLm8tZXZlbnRzX19pdGVtOm50aC1jaGlsZChuKzQpIHtcbiAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm8tZXZlbnRzX19pdGVtIHtcbiAgICBmbGV4OiAwO1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoMjUlIC0gKCg0IC0gMSkgLyA0ICogMzJweCkpO1xuICAgIG1hcmdpbi1sZWZ0OiAzMnB4O1xuICB9XG4gIC5vLWV2ZW50c19faXRlbTpudGgtY2hpbGQoNG4rMSkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5vLWV2ZW50c19faXRlbTpudGgtY2hpbGQobis1KSB7XG4gICAgbWFyZ2luLXRvcDogMzJweDtcbiAgfVxufVxuXG4uby1mb290ZXIge1xuICB6LWluZGV4OiAyMDtcbiAgY29sb3I6ICNFREVERUQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxRjI4ODM7XG4gIGZsZXg6IDEgMCBhdXRvO1xufVxuXG4uby1mb290ZXJfX21haW4ge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTJ2dyk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1mb290ZXJfX21haW4ge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTApICogOCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1mb290ZXJfX21haW4ge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICAgIG1heC13aWR0aDogMTE1MnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAuby1mb290ZXJfX21haW4ge1xuICAgIHBhZGRpbmctdG9wOiA2dnc7XG4gICAgcGFkZGluZy1ib3R0b206IDZ2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLm8tZm9vdGVyX19tYWluIHtcbiAgICBwYWRkaW5nLXRvcDogNXZ3O1xuICAgIHBhZGRpbmctYm90dG9tOiA1dnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkgYW5kIChtYXgtd2lkdGg6IDEzNDNweCkge1xuICAuby1mb290ZXJfX21haW4ge1xuICAgIHBhZGRpbmctdG9wOiAzLjU3MTQyODU3MTR2dztcbiAgICBwYWRkaW5nLWJvdHRvbTogMy41NzE0Mjg1NzE0dnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNDRweCkge1xuICAuby1mb290ZXJfX21haW4ge1xuICAgIHBhZGRpbmctdG9wOiA0OHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0OHB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWZvb3Rlcl9fY29sdW1ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG4uby1mb290ZXJfX2JyYW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zIGxpbmVhcjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLWZvb3Rlcl9fYnJhbmQge1xuICAgIG1hcmdpbi1ib3R0b206IDMuOTZ2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLm8tZm9vdGVyX19icmFuZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMy4zdnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkgYW5kIChtYXgtd2lkdGg6IDEzNDNweCkge1xuICAuby1mb290ZXJfX2JyYW5kIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjM1NzE0Mjg1NzF2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM0NHB4KSB7XG4gIC5vLWZvb3Rlcl9fYnJhbmQge1xuICAgIG1hcmdpbi1ib3R0b206IDMxLjY4cHg7XG4gIH1cbn1cbi5vLWZvb3Rlcl9fYnJhbmQ6aG92ZXIge1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5vLWZvb3Rlcl9fbG9nbyB7XG4gIGhlaWdodDogNjRweDtcbn1cblxuLm8tZm9vdGVyX19pbmZvIHtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cbi5vLWZvb3Rlcl9faW5mbyA+ICogKyAqIHtcbiAgbWFyZ2luLXRvcDogMzJweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWZvb3Rlcl9faW5mbyB7XG4gICAgd2lkdGg6IDQwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLWZvb3Rlcl9faW5mbyB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLWZvb3Rlcl9fbmF2IHtcbiAgICBtYXJnaW4tdG9wOiA2dnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWZvb3Rlcl9fbmF2IHtcbiAgICBtYXJnaW4tbGVmdDogMTAlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tZm9vdGVyX19uYXYge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG59XG5cbi5vLWZvb3Rlcl9fbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbn1cblxuLm8tZm9vdGVyX19saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIGNvbG9yOiAjRURFREVEO1xuICBsaW5lLWhlaWdodDogMS41O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5vLWZvb3Rlcl9fbGluazpob3ZlciwgLm8tZm9vdGVyX19saW5rOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5vLWZvb3Rlcl9fbGluazo6YmVmb3JlIHtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBvcGFjaXR5OiAwO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IC04cHg7XG4gIHJpZ2h0OiAtOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE4LCAxOCwgMTgsIDAuMTgpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGxpbmVhcjtcbn1cbi5vLWZvb3Rlcl9fbGluazpob3ZlciB7XG4gIGNvbG9yOiAjRURFREVEO1xufVxuLm8tZm9vdGVyX19saW5rOmhvdmVyOjpiZWZvcmUge1xuICBvcGFjaXR5OiAxO1xufVxuLm8tZm9vdGVyX19saW5rOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuICBvdXRsaW5lLXN0eWxlOiBzb2xpZDtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgb3V0bGluZS13aWR0aDogMnB4O1xufVxuXG4uby1mb290ZXJfX3NvY2lhbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMzJweCAwIDA7XG59XG5cbi5vLWZvb3Rlcl9fY2hhbm5lbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG59XG5cbi5vLWZvb3Rlcl9faWNvbiB7XG4gIGZsZXg6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbn1cbi5mYWNlYm9vayAuby1mb290ZXJfX2ljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL3NvY2lhbC9mYWNlYm9vay5zdmdcIik7XG4gIGhlaWdodDogMjFweDtcbn1cbi5pbnN0YWdyYW0gLm8tZm9vdGVyX19pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9zb2NpYWwvaW5zdGFncmFtLnN2Z1wiKTtcbn1cbi50d2l0dGVyIC5vLWZvb3Rlcl9faWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvc29jaWFsL3R3aXR0ZXIuc3ZnXCIpO1xuICBoZWlnaHQ6IDIwcHg7XG59XG4ubGlua2VkaW4gLm8tZm9vdGVyX19pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9zb2NpYWwvbGlua2VkaW4uc3ZnXCIpO1xuICBoZWlnaHQ6IDE4cHg7XG59XG4uby1mb290ZXJfX2ljb246aG92ZXIge1xuICBvcGFjaXR5OiAwLjU7XG59XG4uby1mb290ZXJfX2ljb246Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiAjNDA3OUI4O1xufVxuXG4uby1mb3JtX19oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuXG4uby1mb3JtX19mb290ZXIge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuXG4uby1mb3JtX19yb3cgKyAuby1mb3JtX19yb3cge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4uby1mb3JtX19wb3Qge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgei1pbmRleDogLTE7XG59XG5cbi8qXG5cdENvbG9ycyBnZXQgZGVmaW5lZCBpbiBfc2V0dGluZ3MuY29uZmlnLnNjc3NcbiovXG4uby1oZWFkZXIge1xuICB6LWluZGV4OiA1MDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFGMjg4MztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAzMnB4IDA7XG59XG4uby1oZWFkZXIuaXMtc3RpY2t5IHtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA1MDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6IDMycHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMnB4O1xuICBib3gtc2hhZG93OiAwIC01cHggMzBweCBibGFjaztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAzMDBtcztcbiAgdHJhbnNpdGlvbi1kZWxheTogMHMsIDMwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExMDBweCkge1xuICAuby1oZWFkZXIuaXMtc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uaXMtc3RpY2t5LWhlYWRlci12aXNpYmxlIC5vLWhlYWRlci5pcy1zdGlja3kge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xufVxuXG4uby1oZWFkZXJfX21haW4ge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTJ2dyk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8taGVhZGVyX19tYWluIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDEwKSAqIDgpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8taGVhZGVyX19tYWluIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDE0KSAqIDEyKTtcbiAgICBtYXgtd2lkdGg6IDExNTJweDtcbiAgfVxufVxuXG4uby1oZWFkZXJfX25hdiB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tbGVmdDogNDhweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwOTlweCkge1xuICAuby1oZWFkZXJfX25hdiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uby1oZWFkZXJfX2xhbmd1YWdlIHtcbiAgZmxleDogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDE2cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDk5cHgpIHtcbiAgLm8taGVhZGVyX19sYW5ndWFnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbn1cblxuLm8taGVhZGVyX19sb2dvIHtcbiAgZmxleDogbm9uZTtcbn1cbi5vLWhlYWRlcl9fbG9nbzpob3ZlciwgLm8taGVhZGVyX19sb2dvOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5vLWhlYWRlcl9fbG9nbzpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgb3V0bGluZS1zdHlsZTogc29saWQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAxcHg7XG4gIG91dGxpbmUtd2lkdGg6IDJweDtcbn1cblxuLm8taGVhZGVyX19pbWcge1xuICBoZWlnaHQ6IDY0cHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExMDBweCkge1xuICAuby1oZWFkZXJfX3RvZ2dsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uby1pbnRybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFGMjg4Mztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLWludHJvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuby1pbnRybyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTB2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSBhbmQgKG1heC13aWR0aDogMTM0M3B4KSB7XG4gIC5vLWludHJvIHtcbiAgICBtYXJnaW4tYm90dG9tOiA3LjE0Mjg1NzE0Mjl2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM0NHB4KSB7XG4gIC5vLWludHJvIHtcbiAgICBtYXJnaW4tYm90dG9tOiA5NnB4O1xuICB9XG59XG5cbi5vLWludHJvX19ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODM5cHgpIHtcbiAgLm8taW50cm9fX2JvZHkge1xuICAgIG1hcmdpbi1ib3R0b206IDEydnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5vLWludHJvX19ib2R5IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIGFuZCAobWF4LXdpZHRoOiAxMzQzcHgpIHtcbiAgLm8taW50cm9fX2JvZHkge1xuICAgIG1hcmdpbi1ib3R0b206IDcuMTQyODU3MTQyOXZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzQ0cHgpIHtcbiAgLm8taW50cm9fX2JvZHkge1xuICAgIG1hcmdpbi1ib3R0b206IDk2cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLWludHJvLS1tb2JpbGUtYnJlYWstb3V0IC5vLWludHJvX19ib2R5IHtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWludHJvX19ib2R5OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDA7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNEOTNEMDtcbiAgfVxuICAuby1pbnRyby0tYm90dG9tLWJhci1oaWRkZW4gLm8taW50cm9fX2JvZHk6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uby1pbnRyb19fY29udGVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWludHJvX19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8taW50cm9fX2NvbnRlbnQge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICAgIG1heC13aWR0aDogMTE1MnB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuXG4uby1pbnRyb19fbmF2LFxuLm8taW50cm9fX2ltYWdlIHtcbiAgbWFyZ2luLXRvcDogMzJweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWludHJvX19uYXYsXG4uby1pbnRyb19faW1hZ2Uge1xuICAgIG9yZGVyOiAtMTtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLWludHJvX19uYXYsXG4uby1pbnRyb19faW1hZ2Uge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLm8taW50cm9fX25hdiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjg7XG4gIHBhZGRpbmc6IDMycHggNnZ3O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8taW50cm9fX25hdiB7XG4gICAgcGFkZGluZzogODBweCA0LjE2NjY2NjY2NjclO1xuICAgIHBhZGRpbmctbGVmdDogMTAlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8taW50cm9fX25hdiB7XG4gICAgcGFkZGluZy1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbn1cblxuLm8taW50cm9fX3RleHQge1xuICBwYWRkaW5nLXRvcDogMzJweDtcbiAgcGFkZGluZy1sZWZ0OiA2dnc7XG4gIHBhZGRpbmctcmlnaHQ6IDZ2dztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWludHJvX190ZXh0IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gICAgcGFkZGluZzogODBweCA4LjMzMzMzMzMzMzMlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8taW50cm9fX3RleHQge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLm8taW50cm9fX3RpdGxlLFxuLm8taW50cm9fX2hlYWRpbmcge1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4uby1pbnRyb19fYnV0dG9uIHtcbiAgY29sb3I6ICM0REE2QTcgIWltcG9ydGFudDtcbn1cblxuLm8tbG9nb3NfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW46IC0yLjM4MnZ3O1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzQ0cHgpIHtcbiAgLm8tbG9nb3NfX2xpc3Qge1xuICAgIG1hcmdpbjogLTMycHg7XG4gIH1cbn1cblxuLm8tbG9nb3NfX2l0ZW0ge1xuICBmbGV4OiAwIDEgMTAwJTtcbiAgbWFyZ2luOiAyLjM4MnZ3O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzg0cHgpIHtcbiAgLm8tbG9nb3NfX2l0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoNTAlIC0gNXZ3KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tbG9nb3NfX2l0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSA1dncpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tbG9nb3NfX2l0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoMjUlIC0gNXZ3KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM0NHB4KSB7XG4gIC5vLWxvZ29zX19pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiBjYWxjKDI1JSAtIDY0cHgpO1xuICAgIG1hcmdpbjogMzJweDtcbiAgfVxufVxuXG4uby1sb2dvc19fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uby1sb2dvc19faW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbn1cblxuLm8tbWFwIGE6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uby1uZXdzIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEydncpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tbmV3cyB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxMCkgKiA4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLW5ld3Mge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICAgIG1heC13aWR0aDogMTE1MnB4O1xuICB9XG59XG5cbi5vLW5ld3NfX2hlYWRpbmcge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBjb2xvcjogIzJDMkMyQztcbn1cblxuLm8tbmV3c19fYXJ0aWNsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5vLW5ld3NfX2FydGljbGUgKyAuby1uZXdzX19hcnRpY2xlIHtcbiAgbWFyZ2luLXRvcDogMzJweDtcbn1cblxuLm8tbmV3c19fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxNTBtcyBsaW5lYXI7XG59XG4uby1uZXdzX19saW5rOmhvdmVyLCAuby1uZXdzX19saW5rOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5vLW5ld3NfX2xpbms6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0M4QzhDODtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBsaW5lYXI7XG59XG4uby1uZXdzX19saW5rOmhvdmVyLCAuby1uZXdzX19saW5rOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y4RjhGODtcbn1cbi5vLW5ld3NfX2xpbms6aG92ZXI6OmJlZm9yZSwgLm8tbmV3c19fbGluazpmb2N1czo6YmVmb3JlIHtcbiAgb3BhY2l0eTogMDtcbn1cbi5vLW5ld3NfX2xpbms6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICBvdXRsaW5lLXdpZHRoOiAycHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1uZXdzX19saW5rIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxufVxuXG4uby1uZXdzX19ib2R5IHtcbiAgZmxleC1ncm93OiAxO1xuICBwYWRkaW5nOiA2dnc7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1uZXdzX19ib2R5IHtcbiAgICBvcmRlcjogMTtcbiAgICBwYWRkaW5nLXRvcDogNDhweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDhweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEyLjUlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEyLjUlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tbmV3c19fYm9keSB7XG4gICAgcGFkZGluZy1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG59XG5cbi5vLW5ld3NfX2ltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDU1JTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLW5ld3NfX2ltYWdlIHtcbiAgICBmbGV4OiBub25lO1xuICAgIG9yZGVyOiAyO1xuICAgIHdpZHRoOiAyNSU7XG4gICAgcGFkZGluZy1ib3R0b206IDI1JTtcbiAgfVxufVxuXG4uby1uZXdzX19iZy1pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgdG9wOiA2dnc7XG4gIHJpZ2h0OiA2dnc7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMnZ3KTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA2dncpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tbmV3c19fYmctaW1hZ2Uge1xuICAgIHRvcDogOHB4O1xuICAgIHJpZ2h0OiA4cHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE2cHgpO1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMTZweCk7XG4gIH1cbn1cblxuLm8tbmV3c19faW50cm8ge1xuICBtYXJnaW4tdG9wOiAyNHB4O1xufVxuXG4uby1uZXdzX190aW1lc3RhbXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMTZweDtcbiAgY29sb3I6ICM5OTk5OTk7XG59XG5cbi5vLW5ld3NfX2FjdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBjb2xvcjogIzQwNzlCODtcbn1cblxuLm8tbmV3c19fcmVhZG1vcmUge1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cblxuLm8tbmV3c19fZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogMzJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uby1vdmVybGF5LW1lbnUge1xuICB6LWluZGV4OiAxMDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM0Q5M0QwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEyMHZ3KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA0MDBtcywgMjAwbXM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzLCA0MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAuMTUsIDAuMSwgMSksIGxpbmVhcjtcbn1cbi5pcy1vdmVybGF5LW1lbnUtYWN0aXZlIC5vLW92ZXJsYXktbWVudSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMjAwbXMsIDBzO1xufVxuLm8tb3ZlcmxheS1tZW51OjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAtMTIwdnc7XG4gIHdpZHRoOiAxMjB2dztcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyMDBtcztcbiAgdHJhbnNpdGlvbi1kZWxheTogNDAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG59XG4uaXMtb3ZlcmxheS1tZW51LWFjdGl2ZSAuby1vdmVybGF5LW1lbnU6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xufVxuLm8tb3ZlcmxheS1tZW51OjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IC0yMCU7XG4gIHdpZHRoOiAyMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KC04NmRlZywgdHJhbnNwYXJlbnQgNTAlLCAjM0Q5M0QwIDUwJSk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgLm8tb3ZlcmxheS1tZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5vLW92ZXJsYXktbWVudV9fYmFyIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEydncpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAzMnB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzJweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLW92ZXJsYXktbWVudV9fYmFyIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDEwKSAqIDgpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tb3ZlcmxheS1tZW51X19iYXIge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICAgIG1heC13aWR0aDogMTE1MnB4O1xuICB9XG59XG5cbi5vLW92ZXJsYXktbWVudV9faW1nIHtcbiAgaGVpZ2h0OiA0OHB4O1xufVxuXG4uby1vdmVybGF5LW1lbnVfX3RvZ2dsZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjV0dXJuKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDYwMG1zIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyMDBtcztcbn1cbi5pcy1vdmVybGF5LW1lbnUtYWN0aXZlIC5vLW92ZXJsYXktbWVudV9fdG9nZ2xlIHtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuXG4uby1vdmVybGF5LW1lbnVfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uby1vdmVybGF5LW1lbnVfX2l0ZW0ge1xuICBwYWRkaW5nOiA4cHggNy4xNDI4NTcxNDI5JTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbn1cblxuLm8tb3ZlcmxheS1tZW51X19saW5rIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMzMzMzMzMzMzM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zIGxpbmVhcjtcbn1cbi5vLW92ZXJsYXktbWVudV9fbGluazpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4uby1vdmVybGF5LW1lbnVfX2xpbms6Zm9jdXMge1xuICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICBvdXRsaW5lLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG59XG4uby1vdmVybGF5LW1lbnVfX2xpbmsuaXMtYWN0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvcGFjaXR5OiAxO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5vLW92ZXJsYXktbWVudV9fbGluay5pcy1hY3RpdmU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4p6UXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA2cHg7XG4gIGxlZnQ6IC0xLjI1ZW07XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLm8tcXVvdGUge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTJ2dyk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1xdW90ZSB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxMCkgKiA4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLXF1b3RlIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDE0KSAqIDEyKTtcbiAgICBtYXgtd2lkdGg6IDExNTJweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1xdW90ZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1xdW90ZV9fYm9keSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLXF1b3RlX19ib2R5IHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbn1cblxuLm8tcXVvdGVfX3BpY3R1cmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLXF1b3RlX19waWN0dXJlIHtcbiAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1xdW90ZV9fcGljdHVyZSB7XG4gICAgd2lkdGg6IDM3LjUlO1xuICAgIG1hcmdpbi1sZWZ0OiAxMi41JTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLXF1b3RlX19waWN0dXJlIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gICAgbWFyZ2luLXJpZ2h0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG59XG5cbi5vLXF1b3RlX19pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5vLXF1b3RlX190ZXh0IHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzc3Nzc3Nzc3ODtcbiAgcXVvdGVzOiBcIuKAnFwiIFwi4oCdXCI7XG59XG4uby1xdW90ZV9fdGV4dDo6YmVmb3JlIHtcbiAgY29udGVudDogb3Blbi1xdW90ZTtcbn1cbi5vLXF1b3RlX190ZXh0OjphZnRlciB7XG4gIGNvbnRlbnQ6IGNsb3NlLXF1b3RlO1xufVxuXG4uby1xdW90ZV9fYXV0aG9yIHtcbiAgbWFyZ2luLXRvcDogMjRweDtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG59XG5cbi5vLXF1b3RlX19oZWFkaW5nIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzY1NjU2NTtcbn1cblxuLm8tcXVvdGVfX3N1YmhlYWRpbmcge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICM5OTk5OTk7XG59XG5cbi5vLXJlZmVyZW5jZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbjogLTMycHg7XG59XG5cbi5vLXJlZmVyZW5jZXNfX2l0ZW0ge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGZsZXg6IDAgMSAxMDAlO1xuICBtYXJnaW46IDMycHg7XG4gIHBhZGRpbmctdG9wOiAyNHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgYm9yZGVyOiAwcHggc29saWQgI0M4QzhDODtcbiAgYm94LXNoYWRvdzogMCAyLjRweCAzOS40cHggLTE2cHggcmdiYSgwLCAwLCAwLCAwLjAyNCksIDAgNi44cHggNDUuNXB4IC0xNnB4IHJnYmEoMCwgMCwgMCwgMC4wMzUpLCAwIDE2LjNweCA1MS40cHggLTE2cHggcmdiYSgwLCAwLCAwLCAwLjA0NiksIDAgNTRweCA4MHB4IC0xNnB4IHJnYmEoMCwgMCwgMCwgMC4wNyk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MDBweCkge1xuICAuby1yZWZlcmVuY2VzX19pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiBjYWxjKDUwJSAtIDY0cHggLSAwcHgpO1xuICB9XG59XG5cbi5vLXJlZmVyZW5jZXNfX2JvZHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAyNHB4O1xufVxuXG4uby1yZWZlcmVuY2VzX19waWN0dXJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXgtZ3JvdzogMTtcbiAgZmxleC1iYXNpczogMjUlO1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICBtYXJnaW4tbGVmdDogMjRweDtcbn1cblxuLm8tcmVmZXJlbmNlc19fY29udGVudCB7XG4gIGZsZXgtZ3JvdzogOTk5OTtcbiAgZmxleC1iYXNpczogMThlbTtcbiAgbWFyZ2luLWxlZnQ6IDI0cHg7XG4gIGNvbG9yOiAjNjU2NTY1O1xufVxuXG4uby1yZWZlcmVuY2VzX19hdXRob3Ige1xuICBtYXJnaW4tdG9wOiAyNHB4O1xufVxuXG4uby1yZWZlcmVuY2VzX19oZWFkaW5nIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzY1NjU2NTtcbn1cblxuLm8tcmVmZXJlbmNlc19fc3ViaGVhZGluZyB7XG4gIGNvbG9yOiAjOTk5OTk5O1xufVxuXG4uby1zdWJmb290ZXIge1xuICB6LWluZGV4OiAxMDtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNEOTNEMDtcbiAgcGFkZGluZy1ib3R0b206IDY0cHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMC42cztcbn1cbi5pcy1jb29raWVzLWFjY2VwdGVkIC5vLXN1YmZvb3RlciB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uby1zdWJmb290ZXJfX21haW4ge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTJ2dyk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDhweDtcbiAgcGFkZGluZy1ib3R0b206IDhweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXN1YmZvb3Rlcl9fbWFpbiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxMCkgKiA4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLXN1YmZvb3Rlcl9fbWFpbiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gICAgbWF4LXdpZHRoOiAxMTUycHg7XG4gIH1cbn1cblxuLm8tc3ViZm9vdGVyX19jb3B5cmlnaHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBtYXJnaW4tcmlnaHQ6IDMycHg7XG59XG5cbi5vLXN1YmZvb3Rlcl9fbmF2IHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbn1cblxuLm8tc3ViZm9vdGVyX19saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbn1cblxuLm8tc3ViZm9vdGVyX19pdGVtIHtcbiAgbWFyZ2luLXJpZ2h0OiAzMnB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uby1zdWJmb290ZXJfX2xpbmsge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDIwMG1zO1xufVxuLm8tc3ViZm9vdGVyX19saW5rOmhvdmVyLCAuby1zdWJmb290ZXJfX2xpbms6YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuLm8tc3ViZm9vdGVyX19saW5rOmhvdmVyIHtcbiAgY29sb3I6IHdoaXRlO1xufVxuLm8tc3ViZm9vdGVyX19saW5rOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuICBvdXRsaW5lLXN0eWxlOiBzb2xpZDtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgb3V0bGluZS13aWR0aDogMnB4O1xufVxuXG4uby1zdWJmb290ZXJfX3RyYWRlbWFyayB7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuXG4vKlxuICogT24gc21hbGwgc2NyZWVucyB0aGUgY29udGVudCBpcyBzdGFja2VkLCB3aXRob3V0IGNvbnRyb2xzXG4gKiBXaGVuIHRoZSBzY3JlZW4gaXMgd2lkZSBlbm91Z2ggd2UgYWRkIHRoZSBjb250cm9sc1xuICogYW5kIHNob3cgb25seSB0aGUgY2hvc2VuICdzbGlkZSBjb250ZW50J1xuICovXG4uby10YWJzbGlkZXIge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTJ2dyk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby10YWJzbGlkZXIge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTApICogOCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby10YWJzbGlkZXIge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICAgIG1heC13aWR0aDogMTE1MnB4O1xuICB9XG59XG5cbi5vLXRhYnNsaWRlcl9fYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBtaW4taGVpZ2h0OiA0OHB4O1xuICBjb2xvcjogIzJDMkMyQztcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgYm9yZGVyOiAxcHggc29saWQgI0M4QzhDODtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYm9yZGVyO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcztcbn1cbi5vLXRhYnNsaWRlcl9fYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICMzRDkzRDA7XG4gIGJvcmRlci1jb2xvcjogIzNEOTNEMDtcbn1cbi5vLXRhYnNsaWRlcl9fYnV0dG9uLmlzLWFjdGl2ZSB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM0Q5M0QwO1xuICBib3JkZXItY29sb3I6ICMzRDkzRDA7XG59XG4uby10YWJzbGlkZXJfX2J1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogIzNEOTNEMDtcbn1cbi5vLXRhYnNsaWRlcl9fYnV0dG9uOmZvY3VzOm5vdCguaXMtYWN0aXZlKTpub3QoOmFjdGl2ZSkge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI0ZGRkZGRiwgMCAwIDVweCAzcHggcmdiYSg0NCwgNDQsIDQ0LCAwLjEpO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAuby10YWJzbGlkZXJfX2NvbnRyb2xzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby10YWJzbGlkZXJfX2NvbnRyb2xzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tdGFic2xpZGVyX19jb250cm9scyB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gICAgbWFyZ2luLXJpZ2h0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG59XG5cbi5vLXRhYnNsaWRlcl9fc3RlcCB7XG4gIHdpZHRoOiA0OHB4O1xufVxuXG4uby10YWJzbGlkZXJfX3N0ZXAtLXByZXYge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwLjV0dXJuKTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tdGFic2xpZGVyX190YWJzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzQ0cHgpIHtcbiAgLm8tdGFic2xpZGVyX190YWJzIHtcbiAgICBtYXJnaW46IC04cHggOHB4O1xuICB9XG59XG5cbi5vLXRhYnNsaWRlcl9fdGFiIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTQyODU3MTQyOTtcbiAgbWFyZ2luOiA4cHg7XG4gIHBhZGRpbmc6IDdweCAxNnB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby10YWJzbGlkZXJfX2NvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcbiAgICBtYXJnaW4tdG9wOiA0OHB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLXRhYnNsaWRlcl9fY29udGVudCArIC5vLXRhYnNsaWRlcl9fY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMTJ2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tdGFic2xpZGVyX19jb250ZW50IHtcbiAgICBncmlkLXJvdzogMTtcbiAgICBncmlkLWNvbHVtbjogMTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjAwbXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cbiAgLm8tdGFic2xpZGVyX19jb250ZW50LmlzLWFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgfVxufVxuXG4uby10YWJzbGlkZXJfX2xhYmVsIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTQyODU3MTQyOTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctYm90dG9tOiA4cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjMkMyQzJDO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tdGFic2xpZGVyX19sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uby10ZWFtIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEydncpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tdGVhbSB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxMCkgKiA4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLXRlYW0ge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICAgIG1heC13aWR0aDogMTE1MnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAuby10ZWFtIHtcbiAgICBtYXJnaW4tdG9wOiAxMnZ3O1xuICAgIG1hcmdpbi1ib3R0b206IDEydnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5vLXRlYW0ge1xuICAgIG1hcmdpbi10b3A6IDEwdnc7XG4gICAgbWFyZ2luLWJvdHRvbTogMTB2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSBhbmQgKG1heC13aWR0aDogMTM0M3B4KSB7XG4gIC5vLXRlYW0ge1xuICAgIG1hcmdpbi10b3A6IDcuMTQyODU3MTQyOXZ3O1xuICAgIG1hcmdpbi1ib3R0b206IDcuMTQyODU3MTQyOXZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzQ0cHgpIHtcbiAgLm8tdGVhbSB7XG4gICAgbWFyZ2luLXRvcDogOTZweDtcbiAgICBtYXJnaW4tYm90dG9tOiA5NnB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU2MHB4KSB7XG4gIC5vLXRlYW1fX21hdHJpeCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luOiAtMTZweDtcbiAgfVxufVxuXG4uby10ZWFtX19pdGVtIHtcbiAgbWFyZ2luOiAwIGF1dG8gMzJweDtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbiAgbWluLXdpZHRoOiAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTYwcHgpIHtcbiAgLm8tdGVhbV9faXRlbSB7XG4gICAgbWFyZ2luOiAxNnB4O1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBmbGV4OiBub25lO1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoNTAlIC0gMzJweCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSB7XG4gIC5vLXRlYW1fX2l0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoMzMuMzMlIC0gMzJweCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuby10ZWFtX19pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiBjYWxjKDI1JSAtIDMycHgpO1xuICB9XG59XG5cbi5vLXRoYW5rcyB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMnZ3KTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXRoYW5rcyB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxMCkgKiA4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLXRoYW5rcyB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gICAgbWF4LXdpZHRoOiAxMTUycHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLXRoYW5rcyB7XG4gICAgcGFkZGluZy1ib3R0b206IDEydnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5vLXRoYW5rcyB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwdnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkgYW5kIChtYXgtd2lkdGg6IDEzNDNweCkge1xuICAuby10aGFua3Mge1xuICAgIHBhZGRpbmctYm90dG9tOiA3LjE0Mjg1NzE0Mjl2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM0NHB4KSB7XG4gIC5vLXRoYW5rcyB7XG4gICAgcGFkZGluZy1ib3R0b206IDk2cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExMTBweCkge1xuICAuby10aGFua3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTExMHB4KSB7XG4gIC5vLXRoYW5rc19fbGVmdCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlICsgNDhweCk7XG4gICAgcGFkZGluZy1yaWdodDogNDhweDtcbiAgfVxufVxuXG4uby10aGFua3NfX3JpZ2h0IHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExMTBweCkge1xuICAuby10aGFua3NfX3JpZ2h0IHtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5vLXVzcCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNEOTNEMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby11c3BfX21haW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuLm8tdXNwX190ZXh0IHtcbiAgcGFkZGluZzogMzJweCAwO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNEOTNEMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXVzcF9fdGV4dCB7XG4gICAgd2lkdGg6IDYyLjUlO1xuICAgIHBhZGRpbmctdG9wOiA2LjI1JTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNi4yNSU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEyLjUlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tdXNwX190ZXh0IHtcbiAgICB3aWR0aDogNTAlO1xuICAgIHBhZGRpbmc6IDQuMTY2NjY2NjY2NyUgOC4zMzMzMzMzMzMzJTtcbiAgfVxufVxuXG4uby11c3BfX2ltYWdlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLXVzcF9faW1hZ2Uge1xuICAgIG1hcmdpbi1sZWZ0OiAtNnZ3O1xuICAgIG1hcmdpbi1yaWdodDogLTZ2dztcbiAgICBwYWRkaW5nLWJvdHRvbTogNjUlO1xuICAgIG1pbi1oZWlnaHQ6IDM2MHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuby11c3BfX2ltYWdlIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1hcmdpbi1yaWdodDogLTEyLjUlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tdXNwX19pbWFnZSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuXG4uby11c3BfX2hlYWRpbmcge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLm8tdXNwX19saXN0IHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMTZweDtcbn1cblxuLm8tdXNwX19pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG59XG4uby11c3BfX2l0ZW0gKyAuby11c3BfX2l0ZW0ge1xuICBtYXJnaW4tdG9wOiAxNnB4O1xufVxuLm8tdXNwX19pdGVtOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNXB4O1xuICBsZWZ0OiAtMTZweDtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTJweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWcvY2hlY2svY2hlY2tlZC5zdmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTJweDtcbn1cblxuLm8tdXNwX19hY3Rpb24ge1xuICBtYXJnaW4tdG9wOiA0OHB4O1xufVxuXG4uby11c3BfX2ltYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y4RjhGODtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLm8tdmFjYW5jaWVzIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLm8tdmFjYW5jaWVzID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAxNnB4O1xufVxuXG4uby12YWNhbmNpZXNfX2xpbmsge1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDMycHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNDOEM4Qzg7XG4gIGNvbG9yOiAjMUQxRDFEO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAxNTBtcyBsaW5lYXI7XG59XG4uby12YWNhbmNpZXNfX2xpbms6aG92ZXIge1xuICBjb2xvcjogIzQwNzlCODtcbiAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxcHggMXB4IGN1cnJlbnRDb2xvcjtcbn1cblxuLm8tdmFjYW5jaWVzX19jb250ZW50IHtcbiAgZmxleDogYXV0bztcbn1cblxuLm8tdmFjYW5jaWVzX19pY29uIHtcbiAgZmxleDogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0REE2QTc7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRyYW5zaXRpb246IGFsbCAxNTBtcyBsaW5lYXI7XG59XG4uby12YWNhbmNpZXNfX2xpbms6aG92ZXIgLm8tdmFjYW5jaWVzX19pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQwNzliODtcbn1cblxuLm8tdmFjYW5jaWVzX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMzMzMzMzMzMzO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cblxuLm8tdmFjYW5jaWVzX19zdWJ0aXRsZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICM5OTk5OTk7XG59XG5cbi5vLXZhY2FuY2llc19fcHJvcGVydGllcyB7XG4gIG1hcmdpbi10b3A6IDMycHg7XG59XG5cbi5vLXZhY2FuY3lfX2hlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tdmFjYW5jeV9faGVybyB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEydncpO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tdmFjYW5jeV9faGVybyB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxMCkgKiA4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLXZhY2FuY3lfX2hlcm8ge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICAgIG1heC13aWR0aDogMTE1MnB4O1xuICB9XG59XG4uby12YWNhbmN5X19oZXJvOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IC0xO1xuICBjb250ZW50OiBcIlwiO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IC01MHZ3O1xuICBsZWZ0OiAtNTB2dztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFGMjg4Mztcbn1cblxuLm8tdmFjYW5jeV9faGVyby1pbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uby12YWNhbmN5X19wcm9wZXJ0aWVzIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEydncpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAtMTZweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXZhY2FuY3lfX3Byb3BlcnRpZXMge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTApICogOCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby12YWNhbmN5X19wcm9wZXJ0aWVzIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDE0KSAqIDEyKTtcbiAgICBtYXgtd2lkdGg6IDExNTJweDtcbiAgfVxufVxuXG4vKiAgNyAtIFRlbXBsYXRlc1xuICogIE92ZXJyaWRlIHN0eWxpbmcgZm9yIGEgc3BlY2lmaWMgdGVtcGxhdGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBUZW1wbGF0ZXNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLyogIDggLSBTQ09QRVNcbiAqICBFbGVtZW50cyBhbmQgY2xhc3NlcyB0aGF0IGFyZSBzY29wZWQgYnkgYSBwYXJlbnQgY2xhc3NcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnMtY2hlY2tsaXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4ucy1jaGVja2xpc3QgbGkge1xuICBkaXNwbGF5OiBmbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ1O1xufVxuLnMtY2hlY2tsaXN0IGxpOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltZy9jaGVjay9jaGVja2VkLnN2Zyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDEycHg7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoN3B4KTtcbn1cbi5jaGVja2xpc3QtaGFzLXgtc21hbGwtZm9udCAucy1jaGVja2xpc3Qge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xNDI4NTcxNDI5O1xufVxuLmNoZWNrbGlzdC1oYXMteC1zbWFsbC1mb250IC5zLWNoZWNrbGlzdCBsaTo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDVweCk7XG59XG5cbi8qKlxuICogQWxsIHRleHQgZWxlbWVudHMgdGhhdCBjYW4gYmUgYWRkZWQgYnkgdGhlIHVzZXIgdGhyb3VnaCBhIENNU1xuICovXG4ucy10ZXh0IGgyLCAucy10ZXh0IGgzLCAucy10ZXh0IGg0IHtcbiAgY29sb3I6ICMyQzJDMkM7XG59XG4ucy10ZXh0ID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAzMnB4O1xufVxuLnMtdGV4dCA+IDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cbi5zLXRleHQgPiAqICsgLmMtYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cbi5zLXRleHQgPiB1bDpub3QoW2NsYXNzXSkge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLnMtdGV4dCA+IHVsOm5vdChbY2xhc3NdKSA+IGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogLTEuMTI1ZW07XG4gIHBhZGRpbmctbGVmdDogMS4xMjVlbTtcbn1cbi5zLXRleHQgPiB1bDpub3QoW2NsYXNzXSkgPiBsaTo6YmVmb3JlIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMzMzMzMzMzMzM7XG4gIGNvbnRlbnQ6IFwi4oCiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNHB4O1xuICBsZWZ0OiAwO1xufVxuLnMtdGV4dCA+IG9sOm5vdChbY2xhc3NdKSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGNvdW50ZXItcmVzZXQ6IG9sLWNvdW50ZXI7XG59XG4ucy10ZXh0ID4gb2w6bm90KFtjbGFzc10pID4gbGkge1xuICBjb3VudGVyLWluY3JlbWVudDogb2wtY291bnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogLTEuMTI1ZW07XG4gIHBhZGRpbmctbGVmdDogMS44ZW07XG59XG4ucy10ZXh0ID4gb2w6bm90KFtjbGFzc10pID4gbGk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGNvdW50ZXIob2wtY291bnRlcikgXCIuIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEuMjc1ZW07XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4vKiAgOSAtIFVUSUxJVElFU1xuICogIEhpZ2gtc3BlY2lmaWNpdHksIHZlcnkgZXhwbGljaXQgc2VsZWN0b3JzLlxuICogIE92ZXJyaWRlcyBhbmQgaGVscGVyIGNsYXNzZXMuXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiAgQ29sb3JcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEhlcmUgd2UgcHJpbnQgb3V0IGFsbCBvdXIgaGVscGVyIGNsYXNzZXMgZm9yIG91ciBkZWZpbmVkIGNvbG9yc1xuICogQmFzZWQgb24gdGhlc2UgYXJ0aWNsZXM6XG4gKiAtIGh0dHA6Ly9lcnNraW5lZGVzaWduLmNvbS9ibG9nL2ZyaWVuZGxpZXItY29sb3VyLW5hbWVzLXNhc3MtbWFwcy9cbiAqIC0gaHR0cHM6Ly9ibG9nLmF0ZWNobWVkaWEuY29tL2Nzcy1mb3ItbXVsdGlwbGUtdGhlbWVzL1xuICogT3V0cHV0IGlzIGluIHRoZSBmb3JtIG9mOlxuXG4gICAudS1jb2xvci1wcmltYXJ5IHtcbiAgICAgIGNvbG9yOiAjYmFkYTU1O1xuICAgfVxuXG4gIC51LWJnLW5ldXRyYWwtLTkwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RlY2FmZjtcbiAgfVxuICovXG4udS1jb2xvci1wcmltYXJ5LS01MDAge1xuICBjb2xvcjogIzNEOTNEMDtcbn1cblxuLnUtYmctcHJpbWFyeS0tNTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNEOTNEMDtcbn1cblxuLnUtY29sb3ItcHJpbWFyeS0tNzAwIHtcbiAgY29sb3I6ICMxRjI4ODM7XG59XG5cbi51LWJnLXByaW1hcnktLTcwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxRjI4ODM7XG59XG5cbi51LWNvbG9yLXNlY29uZGFyeS0tNTAwIHtcbiAgY29sb3I6ICM0REE2QTc7XG59XG5cbi51LWJnLXNlY29uZGFyeS0tNTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzREQTZBNztcbn1cblxuLnUtY29sb3ItbmV1dHJhbC0tMCB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4udS1iZy1uZXV0cmFsLS0wIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cblxuLnUtY29sb3ItbmV1dHJhbC0tMTAwIHtcbiAgY29sb3I6ICNGOEY4Rjg7XG59XG5cbi51LWJnLW5ldXRyYWwtLTEwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjg7XG59XG5cbi51LWNvbG9yLW5ldXRyYWwtLTIwMCB7XG4gIGNvbG9yOiAjRURFREVEO1xufVxuXG4udS1iZy1uZXV0cmFsLS0yMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRURFREVEO1xufVxuXG4udS1jb2xvci1uZXV0cmFsLS0zMDAge1xuICBjb2xvcjogI0M4QzhDODtcbn1cblxuLnUtYmctbmV1dHJhbC0tMzAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0M4QzhDODtcbn1cblxuLnUtY29sb3ItbmV1dHJhbC0tNDAwIHtcbiAgY29sb3I6ICM5OTk5OTk7XG59XG5cbi51LWJnLW5ldXRyYWwtLTQwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTk5OTk7XG59XG5cbi51LWNvbG9yLW5ldXRyYWwtLTUwMCB7XG4gIGNvbG9yOiAjNjU2NTY1O1xufVxuXG4udS1iZy1uZXV0cmFsLS01MDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjU2NTY1O1xufVxuXG4udS1jb2xvci1uZXV0cmFsLS04MDAge1xuICBjb2xvcjogIzJDMkMyQztcbn1cblxuLnUtYmctbmV1dHJhbC0tODAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJDMkMyQztcbn1cblxuLnUtY29sb3ItbmV1dHJhbC0tOTAwIHtcbiAgY29sb3I6ICMxRDFEMUQ7XG59XG5cbi51LWJnLW5ldXRyYWwtLTkwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxRDFEMUQ7XG59XG5cbi51LWNvbG9yLW5ldXRyYWwtLTEwMDAge1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuLnUtYmctbmV1dHJhbC0tMTAwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG59XG5cbi51LWNvbG9yLWZlZWRiYWNrLS1hY3Rpb24ge1xuICBjb2xvcjogIzQwNzlCODtcbn1cblxuLnUtYmctZmVlZGJhY2stLWFjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0MDc5Qjg7XG59XG5cbi51LWNvbG9yLWZlZWRiYWNrLS13YXJuaW5nIHtcbiAgY29sb3I6ICNmZmQzM2E7XG59XG5cbi51LWJnLWZlZWRiYWNrLS13YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZDMzYTtcbn1cblxuLnUtY29sb3ItZmVlZGJhY2stLWFsZXJ0IHtcbiAgY29sb3I6ICNmZjgxMDA7XG59XG5cbi51LWJnLWZlZWRiYWNrLS1hbGVydCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjgxMDA7XG59XG5cbi51LWNvbG9yLWZlZWRiYWNrLS1uZWdhdGl2ZSB7XG4gIGNvbG9yOiAjY2YzZTNlO1xufVxuXG4udS1iZy1mZWVkYmFjay0tbmVnYXRpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2YzZTNlO1xufVxuXG4udS1jb2xvci1mZWVkYmFjay0tcG9zaXRpdmUge1xuICBjb2xvcjogIzNlY2Y4ZTtcbn1cblxuLnUtYmctZmVlZGJhY2stLXBvc2l0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNlY2Y4ZTtcbn1cblxuLnUtY29sb3ItYm9yZGVyLS0wIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi51LWJnLWJvcmRlci0tMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi51LWNvbG9yLWJvcmRlci0tMzAwIHtcbiAgY29sb3I6ICNDOEM4Qzg7XG59XG5cbi51LWJnLWJvcmRlci0tMzAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0M4QzhDODtcbn1cblxuLnUtY29sb3ItYm9yZGVyLS01MDAge1xuICBjb2xvcjogIzY1NjU2NTtcbn1cblxuLnUtYmctYm9yZGVyLS01MDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjU2NTY1O1xufVxuXG4vKiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogIEZvbnRzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBIZXJlIHdlIHByaW50IG91dCBhbGwgb3VyIGhlbHBlciBjbGFzc2VzIGZvciBvdXIgZGVmaW5lZCAkZm9udC1zaXplcyBtYXBcbiAqIE91dHB1dCBvZiB0aGUgY2xhc3NlcyBpbiB0aGUgdGhpcyBmb3JtOlxuXG4gICAudS1mcy1tIHt9XG4gICAudS1mcy14bCB7fVxuICAgLi4uIGV0Y1xuXG4gKi9cbi51LWZzLXhzIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTQyODU3MTQyOTtcbn1cblxuLnUtZnMteHMge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xNDI4NTcxNDI5O1xufVxuXG4udS1mcy1zIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbi51LWZzLXMge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLnUtZnMtYmFzZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLnUtZnMtYmFzZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLnUtZnMtbSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjc3Nzc3Nzc3Nzg7XG59XG5cbi51LWZzLW0ge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS43Nzc3Nzc3Nzc4O1xufVxuXG4udS1mcy1sIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4udS1mcy1sIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4udS1mcy14bCB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMzMzMzMzMzMzO1xufVxuXG4udS1mcy14bCB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMzMzMzMzMzMzO1xufVxuXG4udS1mcy14eGwge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuXG4udS1mcy14eGwge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuXG4udS1mcy14eHhsIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4udS1mcy14eHhsIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4udS1mcy14eHh4bCB7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi51LWZzLXh4eHhsIHtcbiAgZm9udC1zaXplOiAzcmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLyoqXG4gKiBIZXJlIHdlIHByaW50IG91dCBhbGwgb3VyIGhlbHBlciBjbGFzc2VzIGZvciBvdXIgZGVmaW5lZCAkZm9udC13ZWlnaHRzIG1hcFxuICogT3V0cHV0IG9mIHRoZSBjbGFzc2VzIGluIHRoZSB0aGlzIGZvcm06XG5cbiAgIC51LWZ3LXJlZ3VsYXIge31cbiAgIC51LWZ3LXNlbWlCb2xkIHt9XG4gICAuLi4gZXRjXG5cbiAqL1xuLnUtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udS1wbGFjZWhvbGRlci1pbWFnZSB7XG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBvYmplY3QtZml0OiBjb3ZlciAhaW1wb3J0YW50O1xufVxuXG4udS10ZXh0LWFsaWduLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4ubm93cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnUtbWF4LWNvbnRlbnQge1xuICBtYXgtd2lkdGg6IDQwZW07XG59XG5cbi8qXG4qIElmIHlvdSBuZWVkIHRvIG1ha2UgYSBxdWljayBmaXgsIHlvdSBjYW4gZG8gaXQgaGVyZS5cbiogTGF0ZXIgd2hlbiB5b3UgaGF2ZSB0aGUgdGltZSwgeW91IGNhbiBtb3ZlIHRoZSBmaXggaW50byB0aGUgY29ycmVjdCBwbGFjZSBpbiB0aGUgc3RydWN0dXJlXG4qL1xuLnUtc3BhY2luZy1tdDAge1xuICBtYXJnaW4tdG9wOiAwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tcjAge1xuICBtYXJnaW4tcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1iMCB7XG4gIG1hcmdpbi1ib3R0b206IDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1sMCB7XG4gIG1hcmdpbi1sZWZ0OiAwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wdDAge1xuICBwYWRkaW5nLXRvcDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHIwIHtcbiAgcGFkZGluZy1yaWdodDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGIwIHtcbiAgcGFkZGluZy1ib3R0b206IDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBsMCB7XG4gIHBhZGRpbmctbGVmdDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXQxIHtcbiAgbWFyZ2luLXRvcDogOHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXIxIHtcbiAgbWFyZ2luLXJpZ2h0OiA4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tYjEge1xuICBtYXJnaW4tYm90dG9tOiA4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tbDEge1xuICBtYXJnaW4tbGVmdDogOHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHQxIHtcbiAgcGFkZGluZy10b3A6IDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXByMSB7XG4gIHBhZGRpbmctcmlnaHQ6IDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBiMSB7XG4gIHBhZGRpbmctYm90dG9tOiA4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wbDEge1xuICBwYWRkaW5nLWxlZnQ6IDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW10MiB7XG4gIG1hcmdpbi10b3A6IDE2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tcjIge1xuICBtYXJnaW4tcmlnaHQ6IDE2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tYjIge1xuICBtYXJnaW4tYm90dG9tOiAxNnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbWwyIHtcbiAgbWFyZ2luLWxlZnQ6IDE2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wdDIge1xuICBwYWRkaW5nLXRvcDogMTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXByMiB7XG4gIHBhZGRpbmctcmlnaHQ6IDE2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wYjIge1xuICBwYWRkaW5nLWJvdHRvbTogMTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBsMiB7XG4gIHBhZGRpbmctbGVmdDogMTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW10MyB7XG4gIG1hcmdpbi10b3A6IDI0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tcjMge1xuICBtYXJnaW4tcmlnaHQ6IDI0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tYjMge1xuICBtYXJnaW4tYm90dG9tOiAyNHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbWwzIHtcbiAgbWFyZ2luLWxlZnQ6IDI0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wdDMge1xuICBwYWRkaW5nLXRvcDogMjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXByMyB7XG4gIHBhZGRpbmctcmlnaHQ6IDI0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wYjMge1xuICBwYWRkaW5nLWJvdHRvbTogMjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBsMyB7XG4gIHBhZGRpbmctbGVmdDogMjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW10NCB7XG4gIG1hcmdpbi10b3A6IDMycHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tcjQge1xuICBtYXJnaW4tcmlnaHQ6IDMycHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tYjQge1xuICBtYXJnaW4tYm90dG9tOiAzMnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbWw0IHtcbiAgbWFyZ2luLWxlZnQ6IDMycHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wdDQge1xuICBwYWRkaW5nLXRvcDogMzJweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXByNCB7XG4gIHBhZGRpbmctcmlnaHQ6IDMycHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wYjQge1xuICBwYWRkaW5nLWJvdHRvbTogMzJweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBsNCB7XG4gIHBhZGRpbmctbGVmdDogMzJweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW10NSB7XG4gIG1hcmdpbi10b3A6IDQwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tcjUge1xuICBtYXJnaW4tcmlnaHQ6IDQwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tYjUge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbWw1IHtcbiAgbWFyZ2luLWxlZnQ6IDQwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wdDUge1xuICBwYWRkaW5nLXRvcDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXByNSB7XG4gIHBhZGRpbmctcmlnaHQ6IDQwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wYjUge1xuICBwYWRkaW5nLWJvdHRvbTogNDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBsNSB7XG4gIHBhZGRpbmctbGVmdDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW10NiB7XG4gIG1hcmdpbi10b3A6IDQ4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tcjYge1xuICBtYXJnaW4tcmlnaHQ6IDQ4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tYjYge1xuICBtYXJnaW4tYm90dG9tOiA0OHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbWw2IHtcbiAgbWFyZ2luLWxlZnQ6IDQ4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wdDYge1xuICBwYWRkaW5nLXRvcDogNDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXByNiB7XG4gIHBhZGRpbmctcmlnaHQ6IDQ4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wYjYge1xuICBwYWRkaW5nLWJvdHRvbTogNDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBsNiB7XG4gIHBhZGRpbmctbGVmdDogNDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW10NyB7XG4gIG1hcmdpbi10b3A6IDU2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tcjcge1xuICBtYXJnaW4tcmlnaHQ6IDU2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tYjcge1xuICBtYXJnaW4tYm90dG9tOiA1NnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbWw3IHtcbiAgbWFyZ2luLWxlZnQ6IDU2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wdDcge1xuICBwYWRkaW5nLXRvcDogNTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXByNyB7XG4gIHBhZGRpbmctcmlnaHQ6IDU2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wYjcge1xuICBwYWRkaW5nLWJvdHRvbTogNTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBsNyB7XG4gIHBhZGRpbmctbGVmdDogNTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW10OCB7XG4gIG1hcmdpbi10b3A6IDY0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tcjgge1xuICBtYXJnaW4tcmlnaHQ6IDY0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tYjgge1xuICBtYXJnaW4tYm90dG9tOiA2NHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbWw4IHtcbiAgbWFyZ2luLWxlZnQ6IDY0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wdDgge1xuICBwYWRkaW5nLXRvcDogNjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXByOCB7XG4gIHBhZGRpbmctcmlnaHQ6IDY0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wYjgge1xuICBwYWRkaW5nLWJvdHRvbTogNjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBsOCB7XG4gIHBhZGRpbmctbGVmdDogNjRweCAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAudS1zcGFjaW5nLXB2IHtcbiAgICBwYWRkaW5nLXRvcDogMTJ2dztcbiAgICBwYWRkaW5nLWJvdHRvbTogMTJ2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLnUtc3BhY2luZy1wdiB7XG4gICAgcGFkZGluZy10b3A6IDEwdnc7XG4gICAgcGFkZGluZy1ib3R0b206IDEwdnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkgYW5kIChtYXgtd2lkdGg6IDEzNDNweCkge1xuICAudS1zcGFjaW5nLXB2IHtcbiAgICBwYWRkaW5nLXRvcDogNy4xNDI4NTcxNDI5dnc7XG4gICAgcGFkZGluZy1ib3R0b206IDcuMTQyODU3MTQyOXZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzQ0cHgpIHtcbiAgLnUtc3BhY2luZy1wdiB7XG4gICAgcGFkZGluZy10b3A6IDk2cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDk2cHg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC51LXNwYWNpbmctcHIwXFxAbCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG59XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVGhpcyBncmlkIGNhbiBiZSB0dXJuZWQgb24gYW5kIG9mZiB3aGVuIHlvdSB3YW50IHRvIGNoZWNrXG4gKiBpZiBldmVyeXRoaW5nIGlzIG5pY2UgaW4gcGxhY2UuXG4gKiBTZXQgZmxhZyAnc2hvd0dyaWQnIHRvIHRydWUgaW4gc2l0ZS5waHBcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udS12aXNpYmxlLWdyaWQge1xuICB6LWluZGV4OiAxMDAwMDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEydncpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC8qIDggcG9pbnQgZ3JpZCBsaW5lcyAqL1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLnUtdmlzaWJsZS1ncmlkIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDEwKSAqIDgpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLnUtdmlzaWJsZS1ncmlkIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDE0KSAqIDEyKTtcbiAgICBtYXgtd2lkdGg6IDExNTJweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLnUtdmlzaWJsZS1ncmlkIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi51LXZpc2libGUtZ3JpZF9fbWFpbiB7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgNDMsIDI1NSwgMC4wNyksIHJnYmEoMCwgNDMsIDI1NSwgMC4wNykgMjUlLCByZ2JhKDAsIDQzLCAyNTUsIDAuMDQpIDI1JSwgcmdiYSgwLCA0MywgMjU1LCAwLjA0KSA1MCUpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLnUtdmlzaWJsZS1ncmlkX19tYWluIHtcbiAgICBiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDQzLCAyNTUsIDAuMDcpLCByZ2JhKDAsIDQzLCAyNTUsIDAuMDcpIDEyLjUlLCByZ2JhKDAsIDQzLCAyNTUsIDAuMDQpIDEyLjUlLCByZ2JhKDAsIDQzLCAyNTUsIDAuMDQpIDI1JSk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAudS12aXNpYmxlLWdyaWRfX21haW4ge1xuICAgIGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgNDMsIDI1NSwgMC4wNyksIHJnYmEoMCwgNDMsIDI1NSwgMC4wNykgOC4zMzMzMzMzMzMzJSwgcmdiYSgwLCA0MywgMjU1LCAwLjA0KSA4LjMzMzMzMzMzMzMlLCByZ2JhKDAsIDQzLCAyNTUsIDAuMDQpIDE2LjY2NjY2NjY2NjclKTtcbiAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgT3JnYW5pemUgY29sb3IgdmFyaWFibGVzIGluIGEgU2FzcyBNYXAuXG4gICBUaGlzIHdheSwgdGhlIGNvbG9ycyBjYW4gYmUgaXRlcmF0ZWQsIGFyZSBtb3JlIG9yZ2FuaXplZCxcbiAgIGFuZCBhcmUgbW9yZSBpbnR1aXRpdmUgdG8gcmVmZXJlbmNlLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuJHBhbGV0dGVzOiAoXG5cbiAgJ3ByaW1hcnknOiAoXG4gICAgNTAwOiAjM0Q5M0QwLFxuICAgIDcwMDogIzFGMjg4MyxcbiAgKSxcblxuICAnc2Vjb25kYXJ5JzogKFxuICAgIDUwMDogIzREQTZBNyxcbiAgKSxcblxuICAnbmV1dHJhbCc6IChcbiAgICAwOiAgICNGRkZGRkYsXG4gICAgMTAwOiAjRjhGOEY4LFxuICAgIDIwMDogI0VERURFRCxcbiAgICAzMDA6ICNDOEM4QzgsXG4gICAgNDAwOiAjOTk5OTk5LFxuICAgIDUwMDogIzY1NjU2NSxcbiAgICA4MDA6ICMyQzJDMkMsXG4gICAgOTAwOiAjMUQxRDFELFxuICAgIDEwMDA6ICMwMDAwMDAsXG4gICksXG5cbiAgJ2ZlZWRiYWNrJzogKFxuICAgIGFjdGlvbjogIzQwNzlCOCxcbiAgICB3YXJuaW5nOiAjZmZkMzNhLFxuICAgIGFsZXJ0OiAjZmY4MTAwLFxuICAgIG5lZ2F0aXZlOiAjY2YzZTNlLFxuICAgIHBvc2l0aXZlOiAjM2VjZjhlLFxuICApLFxuXG4gICdib3JkZXInOiAoXG4gICAgMDogICAjZmZmLFxuICAgIDMwMDogI0M4QzhDOCxcbiAgICA1MDA6ICM2NTY1NjUsXG4gICksXG4pO1xuXG5cbi8qKlxuICpcdEEgc2ltcGxlIGZ1bmN0aW9uIGZvciBhY2Nlc3NpbmcgdGhlIGNvbG9ycyBmcm9tIG91ciBtYXBwaW5nXG4gKlx0VG8gYWNjZXNzIGNvbG9ycyBpbiBvdXIgcGFsZXR0ZSwgd2UgdXNlIGEgdmVyeSBzaW1wbGUgY3VzdG9tIFNhc3MgZnVuY3Rpb25cbiAqICBUaGlzIGZ1bmN0aW9uIGlzIHBsYWNlZCBoZXJlLCAoYW5kIG5vdCBpbiB0aGUgdG9vbGJveClcbiAqICBiZWNhdXNlIHdlIHdhbnQgdG8gdXNlIGl0IGluIG91ciBvdGhlciBzZXR0aW5nIGZpbGVzXG5cblx0VVNBR0U6XG5cblx0LmRlbW8ge1xuXHRcdGNvbG9yOiBwYWxldHRlKHByaW1hcnksIDUwMCk7XG5cdH1cblxuICovXG5cbkBmdW5jdGlvbiBwYWxldHRlKCRwYWxldHRlLCAkbGV2ZWw6IDEpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRwYWxldHRlcywgJHBhbGV0dGUpIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkobWFwLWdldCgkcGFsZXR0ZXMsICRwYWxldHRlKSwgJGxldmVsKSB7XG4gICAgICBAcmV0dXJuIG1hcC1nZXQobWFwLWdldCgkcGFsZXR0ZXMsICRwYWxldHRlKSwgJGxldmVsKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIElmIGxldmVsIGRvZXNuJ3QgZXhpc3QgaW4gbWFwLCBnaXZlIHRoZSBmaXJzdCB2YWx1ZSBvZiB0aGUgcGFsZXR0ZVxuICAgICAgQHJldHVybiBudGgobnRoKG1hcC1nZXQoJHBhbGV0dGVzLCAkcGFsZXR0ZSksIDEpLCAyKTtcbiAgICB9XG4gIH1cblxuICBAd2FybiBcIlVua25vd24gY29sb3I6IGAjeyRwYWxldHRlfWAgaW4gJHBhbGV0dGUuIFwiO1xuICBAcmV0dXJuIGhvdHBpbms7XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29uZmlnIHNldHRpbmdzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG5cdFsxXVx0XHRMb2dvIGRhcmsgb3IgbGlnaHQgY2FuIGJlIHNldCBpbiBoZWFkZXIuYmxhZGUucGhwIC8gZm9vdGVyLmJsYWRlLnBocCAmXG5cdFsyXSBcdFNldCB0aGlzIHRvIHRydWUgd2hlbiBiZ0NvbG9yIGdldHMgYSBkYXJrIGNvbG9yIHRoYXQgY29udHJhc3QgdGhlIGJvZHkgYmcgY29sb3JcbiovXG5cbiRzaXRlLWhlYWRlcjogKFxuXHQnYmdDb2xvcic6XHRcdFx0XHRcdHBhbGV0dGUocHJpbWFyeSwgNzAwKSxcblx0J3RleHRDb2xvcic6XHRcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDIwMCksXG5cdCd0ZXh0Q29sb3JIb3Zlcic6XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAyMDApLFxuXHQndGV4dENvbG9yQWN0aXZlJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQnZGVjb3JhdGlvbkNvbG9yJzpcdFx0XHRwYWxldHRlKHNlY29uZGFyeSwgNTAwKSxcblx0J2RlY29yYXRpb25Db2xvckFjdGl2ZSc6XHRwYWxldHRlKG5ldXRyYWwsIDIwMCksXG5cdCdsb2dvLWhlaWdodCc6XHRcdFx0XHQ2NHB4LFxuKTtcblxuXG4kc2l0ZS1pbnRybzogKFxuXHQnaXNEYXJrJzpcdFx0XHRcdFx0dHJ1ZSwgLy8gWzJdXG5cdCdiZ0NvbG9yJzpcdFx0XHRcdFx0cGFsZXR0ZShwcmltYXJ5LCA3MDApLFxuXHQnYmFyQ29sb3InOlx0XHRcdFx0XHRwYWxldHRlKHByaW1hcnksIDUwMCksXG5cdCdjb2xvcic6XHRcdFx0XHRcdHBhbGV0dGUobmV1dHJhbCwgMCksXG5cdCdsaW5rQ29sb3InOlx0XHRcdFx0cGFsZXR0ZShzZWNvbmRhcnksIDUwMCksXG5cdCdzdWJuYXZCZ0NvbG9yJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDEwMCksXG4pO1xuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTb21lIGdsb2JhbCBzZXR0aW5ncyB0aGF0IHdlIHByb2JhYmx5IGRvbid0IG5lZWQgdG8gY2hhbmdlXG5cbiRzaXRlLWNvbHVtbnMtczpcdFx0XHQ0O1xuJHNpdGUtY29sdW1ucy1tOlx0XHRcdDg7XG4kc2l0ZS1jb2x1bW5zLWw6XHRcdFx0MTI7XG4kc2l0ZS1jb2x1bW4tc2l6ZTpcdFx0ICAgIDk2OyAvLyBTaXplIG9mIGEgc2luZ2xlIGNvbHVtbiB3aGVuIHZpZXdwb3J0IGlzIGF0IGl0cyBtYXggd2lkdGggKHVzZWQgZm9yIGNhbGN1bGF0aW5nIG1heC13aWR0aCkuXG4kc2l0ZS1ndXR0ZXItd2lkdGg6IFx0ICAgIDZ2dzsgLy8gVXNlZCBvbmx5IGZvciBzbWFsbCBzY3JlZW5zLiBNdXN0IGJlIFt2d10gb3IgW3B4XSwgTk9UIFslXS5cbiRzaXRlLWNvb2tpZUJhci1oZWlnaHQ6ICAgICA2NHB4OyAvLyBGaXhlZCBzaXplIHNvIHdlIGNhbiBvZmZzZXQgcGFkZGluZy1ib3R0b20gb24gdGhlIGJvZHlcblxuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ2FsY3VsYXRpb25zIHRoYXQgYXJlIGRvbmUgd2l0aCBzb21lIG9mIHRoZSBnaXZlbiB2YWx1ZXMgYWJvdmUgdGhpcyBsaW5lXG5cbiRzaXRlLW1heC13aWR0aDogJHNpdGUtY29sdW1uLXNpemUgKiAkc2l0ZS1jb2x1bW5zLWw7IC8vIE1haW4gY29udGFpbmVyIG1heC13aWR0aCAod2l0aG91dCBndXR0ZXIpXG5cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUaGUgZGVmYXVsdCBib3JkZXItcmFkaXVzIHZhbHVlcyB1c2VkIGluIHRoZSBib3JkZXIgbWl4aW5cblxuJGJvcmRlci1yYWRpdXM6IChcblx0czogNHB4LFxuXHRtOiA4cHgsXG5cdGw6IDE2cHhcbik7IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIFx0IERlZmluZXMgdGhlIHR5cG9ncmFwaGljIGJhc2VsaW5lLlxuICAgV2UgZGVmaW5lIGV2ZXJ5IHNpemUgaW4gcGl4ZWxzLCB0aGUgdW5kZXJseWluZyBzeXN0ZW1cbiAgIGNvbnZlcnRzIHRoZSByZXNwZWN0aXZlIHVuaXRzIHRvIHRoZSByZXNwb25zaXZlIFJFTSB2YWx1ZS5cbiBcdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogT3VyIGJhc2UgZm9udC1zaXplIGFuZCBsaW5lLWhlaWdodFxuICovXG4kYmFzZS1mb250LXNpemU6ICAgXHQxNiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHQhZGVmYXVsdDtcbiRiYXNlLWxpbmUtaGVpZ2h0OiBcdDI0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcdCFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXJhdGlvOlx0JGJhc2UtbGluZS1oZWlnaHQvJGJhc2UtZm9udC1zaXplICAgIWRlZmF1bHQ7XG5cbiRmb250LXNpemVzOiAoXG5cdCd4cyc6IFx0XHRcdChcblx0XHRmb250LXNpemU6IFx0XHQxNCxcblx0XHRsaW5lLWhlaWdodDogXHQxNlxuXHQpLFxuXHQncyc6IFx0XHRcdFx0KFxuXHRcdGZvbnQtc2l6ZTogXHRcdDE1LFxuXHRcdGxpbmUtaGVpZ2h0OiBcdDI0XG5cdCksXG5cdCdiYXNlJzogXHRcdChcblx0XHRmb250LXNpemU6IFx0XHQkYmFzZS1mb250LXNpemUsXG5cdFx0bGluZS1oZWlnaHQ6IFx0JGJhc2UtbGluZS1oZWlnaHRcblx0KSxcblx0J20nOiBcdFx0XHRcdChcblx0XHRmb250LXNpemU6IFx0XHQxOCxcblx0XHRsaW5lLWhlaWdodDogXHQzMlxuXHQpLFxuXHQnbCc6IFx0XHRcdFx0KFxuXHRcdGZvbnQtc2l6ZTogXHRcdDIwLFxuXHRcdGxpbmUtaGVpZ2h0OiBcdDMyXG5cdCksXG5cdCd4bCc6IFx0XHRcdFx0KFxuXHRcdGZvbnQtc2l6ZTogXHRcdDI0LFxuXHRcdGxpbmUtaGVpZ2h0OiBcdDMyXG5cdCksXG5cdCd4eGwnOiBcdFx0XHQoXG5cdFx0Zm9udC1zaXplOiBcdFx0MzIsXG5cdFx0bGluZS1oZWlnaHQ6IFx0NDBcblx0KSxcblx0J3h4eGwnOiBcdFx0XHQoXG5cdFx0Zm9udC1zaXplOiBcdFx0NDAsXG5cdFx0bGluZS1oZWlnaHQ6IFx0NDBcblx0KSxcblx0J3h4eHhsJzogXHRcdChcblx0XHRmb250LXNpemU6IFx0XHQ0OCxcblx0XHRsaW5lLWhlaWdodDogXHQ0OFxuXHQpLFxuKTtcblxuXG4vKipcbiAqXHRIZXJlIHdlIGFzc2lnbiBzaG9ydCBuYW1lcyBmb3IgdGhlIGZvbnQgZmFtaWxpZXNcbiAqL1xuXG4kZm9udC1zeXN0ZW06XHRcdC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiO1xuJGZvbnQtcm9ib3RvOiBcdCdSb2JvdG8nLCBzYW5zLXNlcmlmOyIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBEZWZpbmUgYnJlYWtwb2ludHMgZm9yIGdpdmVuIGZvcm1hdHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuLy8gRGVmYXVsdCBicmVha3BvaW50c1xuJGJyZWFrcG9pbnRzOiAoXG5cdHM6IDM4NCxcblx0bTogODQwLFxuXHRsOiAxMTUyLFxuKTtcblxuLy8gRGV0ZXJtaW5lIGF0IHdoaWNoIHZpZXdwb3J0IHNpemUgd2UgY2FuIGZpdCBpbiBhIGhvcml6b250YWwgbWVudSBpbnN0ZWFkIG9mIHRoZSBoYW1idXJnZXIgbWVudSB0b2dnbGVcbiRicC1oZWFkZXItbGFyZ2U6IDExMDA7XG5cblxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENhbGN1bGF0ZSB2aWV3cG9ydCBzaXplIHdoZW4gY29udGFpbmVyIGNhbid0IGdyb3cgYW55bW9yZVxuJGJwLW1heDogJHNpdGUtbWF4LXdpZHRoICsgKCgkc2l0ZS1tYXgtd2lkdGggLyAkc2l0ZS1jb2x1bW5zLWwpICogMik7IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgRnVuY3Rpb25zIHVzZWQgaW4gZ3JpZCBjYWxjdWxhdGlvblxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAgKiBSZXR1cm4gcGVyY2VudGFnZSBiYXNlZCBvbiBhbW91bnQgb2YgY29sdW1uc1xuICAqIFVzZSBwYXJlbnQgY29sdW1uIHNpemUgdG8gYWRqdXN0IHRoZSBvcmlnaW5cbiAgKi9cbkBmdW5jdGlvbiBjYWxjdWxhdGVDb2x1bW5TaXplKCRjb2x1bW5Db3VudCA6IDEsICRvcmlnaW4gOiAkc2l0ZS1jb2x1bW5zLWwpIHtcblx0Ly8gQ2FsY3VsYXRlIHRoZSB3aWR0aCBmb3IgYSBzaW5nbGUgY29sdW1uIG9uIGEgZnVsbCBncmlkXG5cdCRzaW5nbGVDb2x1bW5TaXplOiAxMDAgLyAkc2l0ZS1jb2x1bW5zLWw7XG5cblx0Ly8gR2V0IHRoZSBvcmlnaW4gc2l6ZSBpbiBwZXJjZW50YWdlIGZyb20gdGhlIGZ1bGwgZ3JpZFxuXHQkb3JpZ2luUGVyY2VudGFnZTogJG9yaWdpbiAvICRzaXRlLWNvbHVtbnMtbCAqIDEwMDtcblxuXHQvLyBDYWxjdWxhdGUgc2luZ2xlIGNvbHVtbiBmcm9tIG5ldyBvcmlnaW5cblx0JG5ld1NpbmdsZUNvbHVtblNpemU6ICRzaW5nbGVDb2x1bW5TaXplIC8gJG9yaWdpblBlcmNlbnRhZ2UgKiAxMDA7XG5cblx0Ly8gUmV0dXJuIGFtb3VudCBvZiBjb2x1bW5zIGFzIHBlcmNlbnRhZ2Vcblx0QHJldHVybiAoJG5ld1NpbmdsZUNvbHVtblNpemUgKiAkY29sdW1uQ291bnQpO1xufVxuXG4vKipcbiAgKiBEZWZhdWx0IGZ1bmN0aW9uIGZvciBjb2x1bW5zXG4gICogUmV0dXJuIGFzIHBlcmNlbnRhZ2VcbiAgKi9cbkBmdW5jdGlvbiBjb2x1bW4oJGNvbHVtbkNvdW50IDogMSwgJG9yaWdpbiA6ICRzaXRlLWNvbHVtbnMtbCkge1xuXHRAcmV0dXJuIGNhbGN1bGF0ZUNvbHVtblNpemUoJGNvbHVtbkNvdW50LCAkb3JpZ2luKSAqIDElO1xufVxuXG4vKipcbiAgKiBSZXR1cm4gYXMgdmlld3BvcnQgd2lkdGhcbiAgKi9cbkBmdW5jdGlvbiBjb2x1bW5WdygkY29sdW1uQ291bnQgOiAxLCAkb3JpZ2luIDogJHNpdGUtY29sdW1ucy1sKSB7XG5cdEByZXR1cm4gY2FsY3VsYXRlQ29sdW1uU2l6ZSgkY29sdW1uQ291bnQsICRvcmlnaW4pICogMXZ3O1xufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBGb250IHJlbGF0ZWQgZnVuY3Rpb25zXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qKlxuICogIE1peGluIGZvciBzZXR0aW5nIGZvbnQtc2l6ZSBpbiBSRU0gdGhyb3VnaCBhIFNhc3MgTWFwIHdpdGggYWxsIGF2YWlsYWJsZSBzaXplc1xuXG4gICAgVVNBR0U6XG5cbiAgICAubXlDbGFzcyB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSh4bCk7XG4gICAgfVxuXG4gKi9cblxuXG5AbWl4aW4gZm9udC1zaXplKCRmcywgJGxoOiBudWxsKSB7XG4gIC8vIEdldCBjb3JyZWN0IGtleSB3aXRoIGZvbnQtc2l6ZSBhbmQgbGluZS1oZWlnaHQgcHggdmFsdWVcbiAgJGZvbnQtc2l6ZS1wcm9wZXJ0aWVzOiBtYXAtZ2V0KCRmb250LXNpemVzLCAkZnMpO1xuICBAaWYgJGZvbnQtc2l6ZS1wcm9wZXJ0aWVzIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUobWFwLWdldCgkZm9udC1zaXplLXByb3BlcnRpZXMsIGZvbnQtc2l6ZSkpO1xuXG4gICAgQGlmKCRsaCA9PSBudWxsKXtcbiAgICAgIGxpbmUtaGVpZ2h0OiBtYXAtZ2V0KCRmb250LXNpemUtcHJvcGVydGllcywgbGluZS1oZWlnaHQpIC8gbWFwLWdldCgkZm9udC1zaXplLXByb3BlcnRpZXMsIGZvbnQtc2l6ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBsaW5lLWhlaWdodDogJGxoIC8gbWFwLWdldCgkZm9udC1zaXplLXByb3BlcnRpZXMsIGZvbnQtc2l6ZSk7XG4gICAgfVxuICB9XG4gIC8vIFdoZW4gbWFwcGluZyBpc24ndCBmb3VuZCBjYWxjdWxhdGUgYXMgaWYgUFgtdmFsdWUgd2FzIGdpdmVuIGFuZCByZXR1cm4gUkVNIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAaWYgaXMtbnVtYmVyKCRmcykge1xuICAgICAgZm9udC1zaXplOiB2YWx1ZVRvUmVtKCRmcyk7XG5cbiAgICAgIEBpZigkbGggIT0gbnVsbCl7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGggLyAkZnM7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuIFwiIGAjeyRmc31gIGlzIG5vdCBhIHZhbGlkIHZhbHVlLiBJdCBtdXN0IGJlIG9uZSBvZiB0aGUgZm9sbG93aW5nOiBgI3skZm9udC1zaXplc31gXCI7XG4gICAgfVxuICB9XG59XG5cblxuLy9UT0RPOiByZW1vdmUgZnVuY3Rpb24gYW5kIHVzZXNcbkBtaXhpbiBmb250KCRzaXplLCAkbGg6IG51bGwsICR3ZWlnaHQ6IG51bGwpIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzaXplLCAkbGgpO1xufSIsIi8qIE1lZGlhIHF1ZXJ5IG1peGluIGZvciB3cml0aW5nIE1vYmlsZSBGaXJzdFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBmdW5jdGlvbiBjb252ZXJ0QnJlYWtwb2ludEtleVRvVmFsdWUoJGJyZWFrcG9pbnQpIHtcblxuXHRAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkge1xuXHRcdEByZXR1cm4gbWFwLWdldCgkYnJlYWtwb2ludHMsICRicmVha3BvaW50KTtcblx0fVxuXG5cdEB3YXJuIFwiVW5rbm93biBicmVha3BvaW50OiBgI3skYnJlYWtwb2ludH1gIGluICRicmVha3BvaW50cy5cIjtcblx0QHJldHVybiBudWxsO1xufVxuXG5AbWl4aW4gbXEoJG1pbjogbnVsbCwgJG1heDogbnVsbCkge1xuXHQkcXVlcnk6IFwiYWxsXCIgIWRlZmF1bHQ7XG5cblx0Ly8gVHJ5IHRvIGNvbnZlcnQgJG1pbiB2YWx1ZSBpZiBub3QgbnVtYmVyIG9yIG51bGxcblx0QGlmKHR5cGUtb2YoJG1pbikgIT0gbnVtYmVyIGFuZCAkbWluICE9IG51bGwpe1xuXHRcdCRtaW46IGNvbnZlcnRCcmVha3BvaW50S2V5VG9WYWx1ZSgkbWluKTtcblx0fVxuXG5cdC8vIFRyeSB0byBjb252ZXJ0ICRtYXggdmFsdWUgaWYgbm90IG51bWJlciBvciBudWxsXG5cdEBpZih0eXBlLW9mKCRtYXgpICE9IG51bWJlciBhbmQgJG1heCAhPSBudWxsKXtcblx0XHQkbWF4OiBjb252ZXJ0QnJlYWtwb2ludEtleVRvVmFsdWUoJG1heCk7XG5cdH1cblxuXHQvLyBzZXQgYm90aCBtaW4gYW5kIG1heFxuXHRAaWYgKCRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsKSB7XG5cdFx0JHF1ZXJ5OiBcIihtaW4td2lkdGg6ICN7JG1pbn1weCkgYW5kIChtYXgtd2lkdGg6ICN7JG1heCAtIDF9cHgpXCI7XG5cdH1cblx0Ly8gc2V0IGp1c3QgbWluXG5cdEBlbHNlIGlmICgkbWluICE9IG51bGwgYW5kICRtYXggPT0gbnVsbCkge1xuXHRcdCRxdWVyeTogXCIobWluLXdpZHRoOiAjeyRtaW59cHgpXCI7XG5cdH1cblx0Ly8gc2V0IGp1c3QgbWF4XG5cdEBlbHNlIGlmICgkbWluID09IG51bGwgYW5kICRtYXggIT0gbnVsbCkge1xuXHRcdCRxdWVyeTogXCIobWF4LXdpZHRoOiAjeyRtYXggLSAxfXB4KVwiO1xuXHR9XG5cblx0QG1lZGlhIHNjcmVlbiBhbmQgI3skcXVlcnl9IHtcblx0XHRAY29udGVudDtcblx0fVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVG9vbGJveCBmdW5jdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qKlxuICogIE1hdGhzIGhlbHBlcnMuXG4gKiAgSGFsdmUgYW5kIGRvdWJsZSBudW1iZXJzLCByZXR1cm5pbmcgcm91bmRlZCBpbnRlZ2Vycy5cblxuICAgIFVTQUdFOlxuXG4gICAgLmZvbyB7XG4gICAgICAgIHBhZGRpbmc6IGhhbHZlKDMwcHgpO1xuICAgIH1cblxuICovXG5cbkBmdW5jdGlvbiBxdWFydGVyKCRudW1iZXIpIHtcblx0QHJldHVybiByb3VuZCgkbnVtYmVyIC8gNCk7XG59XG5cbkBmdW5jdGlvbiBoYWx2ZSgkbnVtYmVyKSB7XG5cdEByZXR1cm4gcm91bmQoJG51bWJlciAvIDIpO1xufVxuXG5AZnVuY3Rpb24gZG91YmxlKCRudW1iZXIpIHtcblx0QHJldHVybiByb3VuZCgkbnVtYmVyICogMik7XG59XG5cbkBmdW5jdGlvbiB0cmlwbGUoJG51bWJlcikge1xuXHRAcmV0dXJuIHJvdW5kKCRudW1iZXIgKiAzKTtcbn1cblxuQGZ1bmN0aW9uIHF1YWRydXBsZSgkbnVtYmVyKSB7XG5cdEByZXR1cm4gcm91bmQoJG51bWJlciAqIDQpO1xufVxuXG5cbi8qKlxuICogIFJlbW92ZSB0aGUgdW5pdCBvZiBhIGxlbmd0aFxuICogIEBwYXJhbSB7TnVtYmVyfSAkbnVtYmVyIC0gTnVtYmVyIHRvIHJlbW92ZSB1bml0IGZyb21cbiAqICBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG4gKi9cblxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bWJlcikge1xuXHRAaWYgdHlwZS1vZigkbnVtYmVyKSA9PSAnbnVtYmVyJyBhbmQgbm90IHVuaXRsZXNzKCRudW1iZXIpIHtcblx0XHRAcmV0dXJuICRudW1iZXIgLyAoJG51bWJlciAqIDAgKyAxKTtcblx0fVxuXG5cdEByZXR1cm4gJG51bWJlcjtcbn1cblxuXG4vKiBDaGVjayBpZiB2YWx1ZSBpcyBudW1iZXIgKi9cblxuQGZ1bmN0aW9uIGlzLW51bWJlcigkdmFsdWUpIHtcblx0QHJldHVybiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcic7XG59XG5cblxuLyogVmFsdWUgdG8gRW0gKi9cblxuQGZ1bmN0aW9uIHZhbHVlVG9SZW0oJHZhbHVlKSB7XG5cdCRub1VuaXRzOiBzdHJpcC11bml0KCR2YWx1ZSk7XG5cdEByZXR1cm4gI3skbm9Vbml0cyAvIDE2ICogMXJlbX07XG59XG5cbi8qIFZhbHVlIHRvIFJlbSAqL1xuXG5AZnVuY3Rpb24gdmFsdWVUb0VtKCR2YWx1ZSkge1xuXHQkbm9Vbml0czogc3RyaXAtdW5pdCgkdmFsdWUpO1xuXHRAcmV0dXJuICN7JG5vVW5pdHMgLyAxNiAqIDFlbX07XG59XG5cblxuXG5cbi8vIFNldCBhIGZpeGVkIHNwYWNlIGJhc2VkIG9uIHRoZSA4cHQgZ3JpZFxuLy8gSnVzdCBwYXNzIHRoZSBmdW5jdGlvbiBhIG51bWJlciBlcXVhbCB0byB0aGUgbnVtYmVyIG9mICg4KXBvaW50cyB5b3UgbmVlZFxuQGZ1bmN0aW9uIHNwYWNlKCRzaXplOiAnMScpIHtcbiAgQHJldHVybiA4cHggKiAkc2l6ZTtcbn1cblxuXG5cbi8qXG4gKiBTZXQgdmVydGljYWwgc3BhY2luZyBvbmx5IGZvciBtb2JpbGUgdmlld3BvcnRcblxuIFVTQUdFOlxuXG4gLmV4YW1wbGUge1xuXHQgQGluY2x1ZGUgdnNwYWNpbmctcyhcblx0XHRcdFx0J21hcmdpbi10b3AnIDFcblx0XHQpO1xuICB9XG5cbiAqL1xuXG5cblxuQG1peGluIHZzcGFjaW5nLXMoJHZhbHVlcy4uLikge1xuICBAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG4gICAgQGVhY2ggJGkgaW4gJHZhbHVlcyB7XG4gICAgICAvLyBCeSBzZXR0aW5nIGd1dHRlciBzaXplIGFzIGEgaGFsdmUgY29sdW1uIHdpZHRoIHdlIGNhbiBtYWtlICdzcXVhcmVzJyBvbiBtb2JpbGVcbiAgICAgICN7bnRoKCRpLCAxKX06ICN7KCRzaXRlLWd1dHRlci13aWR0aCAqIDIpICogbnRoKCRpLCAyKX07XG4gICAgfVxuICB9XG59XG5cbi8qXG4gKiBTZXQgdmVydGljYWwgc3BhY2luZyBmb3Igdmlld3BvcnQgbGFyZ2VyIHRoYW4gbW9iaWxlXG4gKiBJbiBmbGV4aWJsZSB1bml0cyAodncpIGFuZCBvbiBtYXggdmlld3BvcnQgaW4gYSBmaXhlZCBhbW91bnQgKHB4KVxuXG4gVVNBR0U6XG5cbiAuZXhhbXBsZSB7XG5cdCBAaW5jbHVkZSB2c3BhY2luZy1tLXVwKFxuXHRcdFx0XHQncGFkZGluZy10b3AnIDAuMzMsXG5cdFx0XHRcdCdtYXJnaW4tYm90dG9tJyAwLjVcblx0XHQpO1xuICB9XG5cbiAqL1xuXG5AbWl4aW4gdnNwYWNpbmctbS11cCgkdmFsdWVzLi4uKSB7XG4gIEBpbmNsdWRlIG1xKG0sIGwpIHtcbiAgICBAZWFjaCAkaSBpbiAkdmFsdWVzIHtcbiAgICAgICN7bnRoKCRpLCAxKX06ICN7KDEgLyAoJHNpdGUtY29sdW1ucy1tICsgMikgKiAxMDApICogbnRoKCRpLCAyKX12dztcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgbXEobCwgJGJwLW1heCkge1xuICAgIEBlYWNoICRpIGluICR2YWx1ZXMge1xuICAgICAgI3tudGgoJGksIDEpfTogI3soMSAvICgkc2l0ZS1jb2x1bW5zLWwgKyAyKSAqIDEwMCkgKiBudGgoJGksIDIpfXZ3O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBtcSgkYnAtbWF4KSB7XG4gICAgQGVhY2ggJGkgaW4gJHZhbHVlcyB7XG4gICAgICAje250aCgkaSwgMSl9OiAjeygkc2l0ZS1tYXgtd2lkdGggLyAkc2l0ZS1jb2x1bW5zLWwpICogbnRoKCRpLCAyKX1weDtcbiAgICB9XG4gIH1cbn1cblxuLypcbiAqIEZyb20gdmFsdWVzIGdpdmVuIHJldHVybiB0aGUgY29ycmVjdCB2LXNwYWNpbmcgZm9yIGVhY2ggYnJlYWtwb2ludFxuICovXG5AbWl4aW4gdnNwYWNpbmcoJHZhbHVlcy4uLikge1xuXHRAaW5jbHVkZSB2c3BhY2luZy1zKCR2YWx1ZXMuLi4pO1xuXHRAaW5jbHVkZSB2c3BhY2luZy1tLXVwKCR2YWx1ZXMuLi4pO1xufVxuXG5cbi8qKlxuICpcdEEgc2ltcGxlIGZ1bmN0aW9uIGZvciBzZXR0aW5nIGEgY29uc2lzdGVudCBib3JkZXItcmFkaXVzXG5cblx0VVNBR0U6XG5cblx0LmNhcmQge1xuXHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXM7XG5cdH1cblxuXHQuY2FyZC0tYWx0IHtcblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKGwpO1xuXHR9XG5cbiAqL1xuQG1peGluIGJvcmRlci1yYWRpdXMoJHR5cGU6IHMpIHtcblx0QGlmICgkdHlwZSA9PSAncycpIHtcblx0XHRib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKTtcblx0fVxuXHRAaWYgKCR0eXBlID09ICdtJykge1xuXHRcdGJvcmRlci1yYWRpdXM6IG1hcC1nZXQoJGJvcmRlci1yYWRpdXMsIG0pO1xuXHR9XG5cdEBpZiAoJHR5cGUgPT0gJ2wnKSB7XG5cdFx0Ym9yZGVyLXJhZGl1czogbWFwLWdldCgkYm9yZGVyLXJhZGl1cywgbCk7XG5cdH1cbn1cblxuLyoqXG4gKiBMb2JvdG9taXplZCBPd2wgU2VsZWN0b3IgbWl4aW46XG4gKiAtIFNldCBzcGFjaW5nIGZvciBjb25zZWN1dGl2ZSBpdGVtcyB3aXRoIG1hcmdpbi10b3Agb24gYWxsIGJ1dCB0aGUgZmlyc3QgaXRlbVxuXG5cdFVTQUdFOlxuXG5cdC5ib3gge1xuXHRcdEBpbmNsdWRlIG93bC1jaGlsZHJlbjtcblx0fVxuXG5cdC5jYXJkX19pdGVtIHtcblx0XHRAaW5jbHVkZSBvd2w7XG5cdH1cblxuICovXG5cbi8qXG4gKiBMb2JvdG9taXplZCBvd2wgc2VsZWN0b3IuXG4gKiAtIEdpdmVzIHRoZSBjaGlsZHJlbiBvZiB0aGUgZWxlbWVudCBzcGFjaW5nXG4gKiAtIGh0dHBzOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9heGlvbWF0aWMtY3NzLWFuZC1sb2JvdG9taXplZC1vd2xzXG4gKi9cbkBtaXhpbiBvd2wtY2hpbGRyZW4oJG1hcmdpbjogI3skbGluZS1oZWlnaHQtcmF0aW99cmVtKSB7XG5cdCYgPiAqICsgKiB7XG5cdFx0bWFyZ2luLXRvcDogJG1hcmdpbjtcblx0fVxufVxuXG4vLyBHaXZlcyB0aGUgZWxlbWVudCBpdHNlbGYgc3BhY2luZ1xuQG1peGluIG93bCgkbWFyZ2luOiAjeyRsaW5lLWhlaWdodC1yYXRpb31yZW0pIHtcblx0JiArICYge1xuXHRcdG1hcmdpbi10b3A6ICRtYXJnaW47XG5cdH1cbn1cblxuLyoqXG4gKiAgU2hvdyBoeXBoZW5zIGZvciBldmVyeSBicm93c2VyIHN1cHBvcnRpbmcgaXRcbiAqICBhbmQgd2lsbCBicmVhayBsaW5lcyBpbiBldmVyeSBvdGhlciBicm93c2VyXG4gKi9cblxuQG1peGluIGh5cGhlbmF0ZSB7XG5cdG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG5cdHdvcmQtd3JhcDogYnJlYWstd29yZDtcblx0LXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuXHQtbXMtaHlwaGVuczogYXV0bztcblx0aHlwaGVuczogYXV0bztcbn1cblxuXG4vLyB3aGVuIGhvdmVyIG9yIGFjdGl2ZSBkaXNhYmxlIG91dGxpbmUgc3R5bGluZ1xuQG1peGluIGRpc2FibGVPdXRsaW5lRm9yTW91c2Uge1xuXHQmOmhvdmVyLFxuXHQmOmFjdGl2ZSB7XG5cdFx0b3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG59XG5cblxuXG4vKlxuICogIFJlc3RyaWN0IGFuIGVsZW1lbnQgdG8gYSBtYXgtd2lkdGggZm9yIGNyZWF0aW5nIGd1dHRlcnMgb24gdGhlIHNpZGVcbiAqL1xuXG5AbWl4aW4gY29udGFpbigkb25NZWRpdW06IHRydWUpIHtcblx0d2lkdGg6IGNhbGMoMTAwJSAtICN7ZG91YmxlKCRzaXRlLWd1dHRlci13aWR0aCl9KTsgLy8gTWFraW5nIHN1cmUgaXQgZG9lc27igJl0IGdldCB0byBzbWFsbCB3aXRoIGxpdHRsZSBjb250ZW50XG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdEBpZigkb25NZWRpdW0gPT0gdHJ1ZSkge1xuXHRcdFx0XHR3aWR0aDogY2FsYygoMTAwJSAvICN7JHNpdGUtY29sdW1ucy1tICsgMn0pICogI3skc2l0ZS1jb2x1bW5zLW19KTtcbiAgICB9IEBlbHNlIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cbiAgfVxuXG5cdEBpbmNsdWRlIG1xKGwpIHtcblx0XHR3aWR0aDogY2FsYygoMTAwJSAvICN7JHNpdGUtY29sdW1ucy1sICsgMn0pICogI3skc2l0ZS1jb2x1bW5zLWx9KTtcblx0XHRtYXgtd2lkdGg6ICN7JHNpdGUtbWF4LXdpZHRofXB4O1xuXHR9XG59XG5cblxuQG1peGluIGd1dHRlclBhZGRpbmcoJG1xKXtcblx0JGNvbHVtbkNvdW50OiAkc2l0ZS1jb2x1bW5zLXM7XG5cblx0QGlmKCRtcSA9PSBtKSB7ICRjb2x1bW5Db3VudDogJHNpdGUtY29sdW1ucy1tOyB9XG5cdEBpZigkbXEgPT0gbCkgeyAkY29sdW1uQ291bnQ6ICRzaXRlLWNvbHVtbnMtbDsgfVxuXG5cdEBpbmNsdWRlIG1xKCRtcSkge1xuXHRcdHBhZGRpbmctbGVmdDogcGVyY2VudGFnZSgxIC8gKCRjb2x1bW5Db3VudCArIDIpKTtcblx0XHRwYWRkaW5nLXJpZ2h0OiBwZXJjZW50YWdlKDEgLyAoJGNvbHVtbkNvdW50ICsgMikpO1xuXHR9XG59XG5cblxuLypcbiAqXHRBIG1peGluIHRvIHNldCBlbGVtZW50cyB0byBpdHMgb3duIG5hbWVkIGdyaWQtYXJlYVxuICovXG5cbkBtaXhpbiB0ZW1wbGF0ZSgkZWxlbWVudHMuLi4pIHtcblx0QGVhY2ggJGVsZW1lbnQgaW4gJGVsZW1lbnRzIHtcblx0XHQmX18jeyRlbGVtZW50fSB7XG5cdFx0XHRncmlkLWFyZWE6ICRlbGVtZW50O1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7IC8vIEluIElFIGdyaWQgaXRlbXMgY2FuJ3QgYmUgaW5saW5lXG5cdFx0fVxuXHR9XG59XG4iLCIvKiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogIFRoZSAnei1pbmRleC1tYXAnIGlzIHVzZWQgZm9yIG1hbmFnaW5nIHRoZSBlbGVtZW50cyBzdGFja2luZyBvcmRlciBpbiB0aGUgJ3Jvb3QnIHN0YWNraW5nIGNvbnRleHRcbiAqICBUaGlzIHdheSB3ZSBoYXZlIGEgb3ZlcnZpZXcgb2YgYWxsIHRoZSB6LWluZGV4IHZhbHVlcyB0aGF0IGFyZSB1c2VkIGFjcm9zcyB0aGUgcHJvamVjdC5cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuJHotaW5kZXg6IChcblx0ei12aXNpYmxlLWdyaWQ6XHRcdFx0MTAwMDAsXG5cdHotY29va2llOlx0XHQgXHRcdFx0XHQ5OTk5LFxuXHR6LW92ZXJsYXktbWVudTpcdFx0XHQxMDAsXG5cdHotaGVhZGVyOiBcdFx0XHRcdFx0NTAsXG5cdHotYm9keTpcdFx0XHRcdFx0XHRcdDQwLFxuXHR6LWZvb3RlcjpcdFx0XHRcdCBcdFx0MjAsXG5cdHotc3ViZm9vdGVyOlx0XHRcdFx0MTAsXG4pO1xuXG5cbi8qKlxuICAgIFVTQUdFOlxuXG4gICAgQGluY2x1ZGUgeih6LW1vZGFsKTtcblxuICovXG5cbkBtaXhpbiB6KCRsYWJlbCkge1xuXHR6LWluZGV4OiBtYXAtZ2V0KCR6LWluZGV4LCRsYWJlbCk7XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIEJhc2ljIGVsZW1lbnRzIChubyBjbGFzcyBzZWxlY3RvcnMgYWxsb3dlZClcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogU2V0IHVwIHRoZSBodG1sXG4gKlxuICogMS4gTWFrZXMgc3VyZSB0aGF0IHNvbWUgZm9udHMgYXJlIGJldHRlciByZW5kZXJlZFxuICogMi4gU2V0IGZvbnQgdG8gbGluaW5nIGZpZ3VyZXNcbiAqXG4gKiAzLiBBdm9pZCB0aGUgSUUgMTAtMTEgYG1pbi1oZWlnaHRgIGJ1Zy5cbiAqIDQuIFVzZSBgJWAgaW5zdGVhZCBvZiBgdmhgIHNpbmNlIGB2aGAgaXMgYnVnZ3kgaW4gb2xkZXIgbW9iaWxlIFNhZmFyaS5cbiAqL1xuXG5odG1sIHtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJsbnVtXCI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuYm9keSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShiYXNlKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXJhdGlvO1xuICBmb250LWZhbWlseTogJGZvbnQtcm9ib3RvO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDUwMCk7XG4gIGJhY2tncm91bmQ6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgaGVpZ2h0OiAxMDAlOyAvKiAzLCA0ICovXG59XG5cbmZvb3RlciB7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG5cbi8qKlxuICogWzFdIE1ha2Ugc3VyZSBlbGVtZW50cyBsaWtlIGlucHV0IGFuZCB0ZXh0YXJlYSBpbmhlcml0IHNvbWUgYmFzZSBwcm9wZXJ0aWVzXG4gKiAgICAgaHR0cHM6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNi8xMS9jc3MtaW5oZXJpdGFuY2UtY2FzY2FkZS1nbG9iYWwtc2NvcGUtbmV3LW9sZC13b3JzdC1iZXN0LWZyaWVuZHMvXG4gKlxuICogWzJdIFNldHRpbmcgYm94LXNpemluZyB0aGUgYmVzdCB3YXkgcGVyOlxuICogICAgIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlL1xuICovXG4qIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcblxuICAmLFxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgfVxufVxuXG4vKipcbiAqIFsxXSBUdXJuIG9mZiB0ZXh0LXNoYWRvdyB3aGVuIHNlbGVjdGluZyB0ZXh0IGZvciBiZXR0ZXIgcmVhZGFiaWxpdHlcbiAqL1xuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiBwYWxldHRlKHNlY29uZGFyeSwgNTAwKTtcbiAgY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG4gIHRleHQtc2hhZG93OiBub25lOyAvKiBbMV0gKi9cbn1cblxuLyogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIGFyb3VuZCBmaWd1cmVcbiAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFsxXSBTZXR0aW5nICd2ZXJ0aWNhbC1hbGlnbicgcmVtb3ZlcyB0aGUgd2hpdGVzcGFjZSB0aGF0IGFwcGVhcnMgdW5kZXIgJ2ltZydcbiAqXHQgICBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGRyb3BwZWQgaW50byBhIHBhZ2UgYXMtaXMuIFNhZmVyIGFsdGVybmF0aXZlIHRvXG4gKlx0ICAgdXNpbmcgJ2Rpc3BsYXk6IGJsb2NrOycuXG4gKiBbMl0gUmVtb3ZlIGJvcmRlciAvIGVzcGVjaWFsbHkgb24gb2xkZXIgYnJvd3NlcnNcbiAqL1xuaW1nLCBzdmcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvKlsxXSovXG4gIGJvcmRlcjogbm9uZTsgLypbMl0qL1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8qKlxuICogIE5lZWRlZCBmb3IgaU9TIHRvIHByZXZlbnQgaW5wdXQgem9vbWluZ1xuICogIGh0dHBzOi8vdXhjZWxsZW5jZS5jb20vMjAxNC8wMS8xNS9xdWljay1maXgtaW5jcmVhc2UtZm9udC1zaXplLXRvLTE2cHgtdG8tZml4LWlucHV0LXpvb21cbiAqL1xuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuXG4vLyBMaW5rcyB3aXRoIG5vIGNsYXNzIGdldCBhIGRlZmF1bHQgaG92ZXJcbmE6bm90KFtjbGFzc10pIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogcGFsZXR0ZShmZWVkYmFjaywgYWN0aW9uKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IGF1dG87IC8vIHByZXR0eSB1bmRlcmxpbmluZyBsaW5rc1xuXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYmFja2dyb3VuZDogcGFsZXR0ZShmZWVkYmFjaywgYWN0aW9uKTtcbiAgICBjb250ZW50OiAnJztcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjNzLCBvcGFjaXR5IDAuM3MsIHRyYW5zZm9ybSAwLjNzO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRPRE86IElzIHRoaXMgdGhlIHJpZ2h0IHdheSB0byByZXNldCBhbGwgbWFyZ2luPz9cbi8vIFJlc2V0IGFsbCB0b3AgbWFyZ2luc1xuaDEsaDIsaDMsaDQsaDUsaDYsaGdyb3VwLFxudWwsb2wsZGQsXG5wLGZpZ3VyZSxcbnByZSx0YWJsZSxmaWVsZHNldCxociB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59IiwiaDEge1xuXHRAaW5jbHVkZSBmb250LXNpemUoeHh4bCk7XG59XG5cbmgyIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHh4bCk7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbmgzIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHhsKTtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuaDQge1xuXHRAaW5jbHVkZSBmb250LXNpemUobCk7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbmg1LCBoNiB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZShiYXNlKTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG59IiwiLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqICBMaXN0c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4vKipcbiAqXHREZWZhdWx0IGluZGVudGF0aW9uIHZhbHVlIGZvciBsaXN0c1xuICovXG5cbnVsLFxub2x7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogMDtcblx0bWFyZ2luLWxlZnQ6IDEuMTI1ZW07XG59XG5cbmRke1xuXHRtYXJnaW4tbGVmdDogMDtcbn1cblxuXG5cbi8qKlxuICpcdFJlbW92ZSBleHRyYSB2ZXJ0aWNhbCBzcGFjaW5nIHdoZW4gbmVzdGluZyBsaXN0cy5cbiAqL1xuXG5saSB7XG5cdD4gdWwsXG5cdD4gb2wge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cbn0iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBDb250YWluXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi5sLWNvbnRhaW4ge1xuICBAaW5jbHVkZSBjb250YWluO1xufSIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogU3BsaXQgbGF5b3V0IGluIDIgZXF1YWwgY29sdW1uc1xuICpcbiAqIFVudGlsIHZpZXdwb3J0IGlzIHdpZGUgZW5vdWdoIHRoZSBjb2x1bW5zIGFyZSBzdGFja2VkIHZlcnRpY2FsbHlcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi5sLXNwbGl0IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDApO1xuXHRoZWlnaHQ6IDEwMCU7IC8vIHN0cmV0Y2ggaXQgb3V0IGluIGl0cyBjb250YWluZXJcblxuXHQvLyBTZXQgc2lkZSBieSBzaWRlIGZyb20gbWVkaXVtIHZpZXdwb3J0cyBhbmQgdXBcblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdH1cbn1cblxuXG4vKipcbiAqIFNwZWNpYWwgY29udGFpbiB2ZXJzaW9uIGZvciBzcGxpdC5cbiAqIERvZXNuJ3QgcmVzdHJhaW4gY29udGVudCBvbiBtZWRpdW0gdmlld3BvcnRcbiAqL1xuXG4ubC1zcGxpdC0tY29udGFpbiB7XG5cdEBpbmNsdWRlIGNvbnRhaW4oJG9uTWVkaXVtOiBmYWxzZSk7XG59XG5cblxuLmwtc3BsaXRfX2NvbHVtbiB7XG5cblx0Ly8gT24gZGVza3RvcCBjb2x1bW5zIGFyZSA1MC81MFxuXHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig2LCAxMik7XG5cdH1cblxuXHQvLyBNYWluIGNvbnRlbnQgZ29lcyBmaXJzdCwgdXN1YWxseSB0ZXh0XG5cdCY6Zmlyc3QtY2hpbGQge1xuXHRcdEBpbmNsdWRlIG1xKG0sIGwpIHtcblx0XHRcdHdpZHRoOiBjb2x1bW4oNSwgOCk7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiBjb2x1bW4oMSwgOCk7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIG1xKGwpIHtcblx0XHRcdHBhZGRpbmctbGVmdDogY29sdW1uKDEsIDEyKTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IGNvbHVtbigxLCAxMik7XG5cdFx0fVxuXHR9XG5cblx0Ly8gc2Vjb25kYXJ5IGNvbnRlbnQgZ29lcyBsYXN0LCB1c3VhbGx5IGFuIGltYWdlIG9yIGFzaWRlIHRleHRcblx0JjpsYXN0LWNoaWxkIHtcblx0XHQvLyBDcmVhdGUgdmVydGljYWwgc3BhY2luZyBvbiBtb2JpbGVcblx0XHRAaW5jbHVkZSB2c3BhY2luZy1zKFxuXHRcdFx0XHQnbWFyZ2luLXRvcCcgMC41XG5cdFx0KTtcblx0XHRAaW5jbHVkZSBtcShtLCBsKSB7XG5cdFx0XHR3aWR0aDogY29sdW1uKDMsIDgpO1xuXHRcdH1cblx0fVxuXG5cdC8vIFZpc3VhbGx5IHN3aXRjaCBjb2x1bW5zIG9uIG1lZGl1bSAmIGxhcmdlIHZpZXdwb3J0c1xuXHQubC1zcGxpdC0taXMtcmV2ZXJzZWQgJiB7XG5cdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRvcmRlcjogMjtcblxuXHRcdFx0QGluY2x1ZGUgbXEobSwgbCkge1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IGNvbHVtbigxLCA4KTtcblx0XHRcdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIG1xKGwpIHtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiBjb2x1bW4oMSwgMTIpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5AaW5jbHVkZSBtcShtLCBsKSB7XG5cdC5sLXNwbGl0LS1icmVha291dC1vbi1tIHtcblx0XHQubC1zcGxpdF9fY29sdW1uIHtcblx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHR3aWR0aDogY29sdW1uKDYsIDEwKTtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiBjb2x1bW4oMSwgMTApO1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiBjb2x1bW4oMSwgMTApO1xuXHRcdFx0fVxuXHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0d2lkdGg6IGNvbHVtbig0LCAxMCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cblxuLyoqXG4gKiBXaGVuIHRoZXJlIGlzIG9ubHkgMSBjb2x1bW4sIGFsaWduIGl0IHRvIHRoZSBtaWRkbGUgYW5kIGNvbnRhaW4gdGhlIHdpZHRoXG4gKiBPbmx5IG9uZSBjb2x1bW4gaXMgdXNlZCBlLmcuIGluIHRoZSB0YWJzbGlkZXIgd2hlbiB0aGVyZSBpcyBubyBpbWFnZSBzZXRcbiAqL1xuLmwtc3BsaXRfX2NvbHVtbjpvbmx5LWNoaWxkIHtcblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdHdpZHRoOiBjb2x1bW4oNiwgOCk7XG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cdH1cblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNiwgMTIpO1xuXHRcdHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuXHR9XG59XG5cblxuLy8gQ29sdW1ucyB0aGF0IGhhdmUgdGV4dCBpbnN0ZWFkIG9mIGFuIGltYWdlIG5lZWQgc29tZSBwYWRkaW5nIG9uIHRvcFxuLy8gdG8gYWxpZ24gdGhlbSB3aXRoIHRoZSBvdGhlciBjb2x1bW4gdGhhdCBoYXMgcGFkZGluZy10b3AgdG9vXG4ubC1zcGxpdF9fY29sdW1uLS12cGFkIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoNSk7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDUpO1xuXG5cdEBpbmNsdWRlIG1xKG0pe1xuXHRcdG1hcmdpbi10b3A6IHNwYWNlKDEwKTtcblx0XHRtYXJnaW4tYm90dG9tOiBzcGFjZSgxMCk7XG5cdH1cbn1cblxuXG4vLyBDcmVhdGUgYSBjb2x1bW4gZXh0cmEgd2hpdGUgc3BhY2UgdG8gdGhlIGxlZnQgKG9uIGxhcmdlIHZpZXdwb3J0cylcbkBpbmNsdWRlIG1xKGwpIHtcblx0Lmwtc3BsaXRfX2NvbHVtbi0tbGVmdHBhZCB7XG5cdFx0cGFkZGluZy1sZWZ0OiBjb2x1bW4oMSwxMik7XG5cdH1cbn0iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBSZXN0cmljdFxuICpcbiAqIFdoZW4gYSBibG9jayBzaG91bGRuJ3QgdGFrZSB1cCB0aGUgd2hvbGUgd2lkdGggb2YgdGhlIGNvbnRhaW5lclxuICogd2UgY2FuIHJlc3RyaWN0IHRoZSBtYXhpbXVtIHdpZHRoXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi5sLXJlc3RyaWN0LW5hcnJvdyB7XG4gIEBpbmNsdWRlIG1xKG0pIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IGNvbHVtbig2LDgpO1xuICAgIG1heC13aWR0aDogMzhlbTtcbiAgfVxuICBAaW5jbHVkZSBtcShsKXtcbiAgICB3aWR0aDogY29sdW1uKDYsMTIpO1xuICB9XG59XG5cbi5sLXJlc3RyaWN0LXdpZGUge1xuICBAaW5jbHVkZSBtcShtKXtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IGNvbHVtbig3LDgpO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEobCl7XG4gICAgd2lkdGg6IGNvbHVtbig4LDEyKTtcbiAgfVxufSIsIi8qKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogQ29tcG9uZW50c1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbkBpbXBvcnQgXCJjb21wb25lbnRzLmJyZWFkY3J1bWJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmJ1dHRvblwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuZ2hvc3RidXR0b25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmNhcmRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmNsb3NlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5jb25uZWN0XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5kYXRhXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5kYXRlTGFiZWxcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmRvd25sb2FkTGlzdFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuZXZlbnRDYXJkXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5maWxlVXBsb2FkXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5mb3JtR3JvdXBcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmZvcm1GZWVkYmFja1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuaGFtYnVyZ2VyXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5oZWFkaW5nXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5oZXJvXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5pbmZvXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5pbnB1dFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMubGFuZ3VhZ2VcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLm5hdlwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMucGFnaW5hdGlvblwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMucGFnZVRpdGxlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5wcm9qZWN0b3JcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnNlcnZpY2VQb2ludFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuc2l0ZW1hcFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuc2tpcExpbmtcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnNsaWRlLWluZGljYXRvclwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuc3VibmF2XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy50ZXh0LWJ1dHRvblwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMudG9nZ2xlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy50cmFkZW1hcmtcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnZhY2FuY3lQcm9wZXJ0aWVzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy52aWRlb1wiOyIsIi5jLWJyZWFkY3J1bWIge1xuXHRwYWRkaW5nLWJvdHRvbTogNHB4OyAvLyBtYWtlIHN1cmUgdG90YWwgaGVpZ2h0IHdpbGwgYmUgZGl2aXNpYmxlIGJ5IDhcbiB9XG5cbi5jLWJyZWFkY3J1bWJfX2xpc3Qge1xuXHRtYXJnaW46IDA7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcbn1cblxuXG4uYy1icmVhZGNydW1iX19pdGVtIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHQmOm50aC1jaGlsZChuKzIpIHtcblx0XHQmIC5jLWJyZWFkY3J1bWJfX2ljb24ge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdHdpZHRoOiBzcGFjZSgzKTtcblx0XHRcdGhlaWdodDogc3BhY2UoMyk7XG5cdFx0XHRtYXJnaW4tbGVmdDogc3BhY2UoMSk7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IHNwYWNlKDEpO1xuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuXHRcdFx0Ly9jb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA1MDApO1xuXHRcdFx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgOTAwKTtcblx0XHR9XG5cdH1cbn1cblxuLmMtYnJlYWRjcnVtYl9fbGluayB7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDUwMCk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHQuYy1icmVhZGNydW1iX19pdGVtLS1sYXN0ICYge1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHR9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBCdXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kYy1idXR0b246IChcblx0J2NvbG9yJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQnYmdjb2xvcic6XHRcdFx0cGFsZXR0ZShzZWNvbmRhcnksIDUwMCksXG5cdCdiZ2NvbG9yLWhvdmVyJzpcdHNjYWxlLWNvbG9yKHBhbGV0dGUoc2Vjb25kYXJ5LCA1MDApLCAkbGlnaHRuZXNzOiAtMjAlKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5jLWJ1dHRvbiB7XG5cdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMobSk7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSh4cyk7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0Y29sb3I6IG1hcC1nZXQoJGMtYnV0dG9uLCAnY29sb3InKTtcblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1idXR0b24sICdiZ2NvbG9yJyk7XG5cdHRleHQtc2hhZG93OiAwIDAgNHB4IHJnYmEoMCwwLDAsMC4yKTtcblx0Ym9yZGVyOiBub25lO1xuXHRwYWRkaW5nOiBzcGFjZSgyKSAwO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDAgMXB4IHBhbGV0dGUobmV1dHJhbCwgMCksIDAgMCA1cHggMnB4IG1hcC1nZXQoJGMtYnV0dG9uLCAnYmdjb2xvcicpO1xuXHR9XG5cdCY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHRcdGJveC1zaGFkb3c6IG5vbmU7XG5cdH1cblx0JjpkaXNhYmxlZCB7XG5cdFx0b3BhY2l0eTogMC41O1xuXHRcdGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cdH1cblxuXHQvLyBQc2V1ZG8gZWxlbWVudCBmb3IgYW5pbWF0aW5nIGhvdmVyXG5cdCY6OmFmdGVyIHtcblx0XHRjb250ZW50OiBcIlwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdHRvcDogY2FsYyg1MCUgLSAycHgpO1xuXHRcdGxlZnQ6IGNhbGMoNTAlIC0gMnB4KTtcblx0XHR3aWR0aDogNHB4O1xuXHRcdGhlaWdodDogNHB4O1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdGJhY2tncm91bmQ6IG1hcC1nZXQoJGMtYnV0dG9uLCAnYmdjb2xvci1ob3ZlcicpO1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xuXHR9XG5cblx0Jjpob3Zlcjpub3QoOmRpc2FibGVkKTo6YWZ0ZXIge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxMDApO1xuXHR9XG59XG5cbi5jLWJ1dHRvbl9fdGV4dCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMjtcblx0cGFkZGluZzogMCBzcGFjZSgzKTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdC5jLWJ1dHRvbi0taWNvbiAmIHtcblx0XHRwYWRkaW5nLXJpZ2h0OiBzcGFjZSgyKTtcblx0fVxufVxuXG4uYy1idXR0b25fX2ljb24ge1xuXHRkaXNwbGF5OiBub25lOyAvLyBCeSBkZWZhdWx0IGljb24gaXMgaGlkZGVuXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMjtcblx0dG9wOiAtMXB4O1xuXHRtYXJnaW4tcmlnaHQ6IDE1cHg7XG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuXG5cdC5jLWJ1dHRvbjpob3Zlcjpub3QoOmRpc2FibGVkKSAmIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTtcblx0fVxuXG5cdC8vIFdoZW4gaWNvbiBjb21lcyBiZWZvcmUgdGhlIHRleHQgKGluIHRoZSBET00pIHN3aXRjaCB0aGUgbWFyZ2luXG5cdCY6Zmlyc3QtY2hpbGQge1xuXHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRtYXJnaW4tbGVmdDogMTVweDtcblx0fVxuXG5cdC5jLWJ1dHRvbi0taWNvbiAmIHtcblx0XHRkaXNwbGF5OiBibG9jazsgLy8gU2hvdyB3aGVuIGhhcyBpY29uIG1vZGlmaWVyXG5cdFx0d2lkdGg6IDE2cHg7XG5cdH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogRGVmYXVsdCBidXR0b25cbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiRjLWdob3N0LWJ1dHRvbjogKFxuXHQnY29sb3InOlx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcbik7XG5cblxuLmMtZ2hvc3RidXR0b24ge1xuXHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKG0pO1xuXHRAaW5jbHVkZSBmb250LXNpemUoeHMpO1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGNvbG9yOiBtYXAtZ2V0KCRjLWdob3N0LWJ1dHRvbiwgJ2NvbG9yJyk7XG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHR0ZXh0LXNoYWRvdzogMCAwIDRweCByZ2JhKDAsMCwwLDAuMik7XG5cdGJvcmRlcjogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcblx0cGFkZGluZzogc3BhY2UoMikgMDtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHRcdGJveC1zaGFkb3c6IDAgMCA0cHggMnB4IHJnYmEobWFwLWdldCgkYy1naG9zdC1idXR0b24sICdjb2xvcicpLCAwLjUpO1xuXG5cdH1cblx0JjphY3RpdmU6bm90KDpkaXNhYmxlZCkge1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0Ym94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG5cdCY6ZGlzYWJsZWQge1xuXHRcdG9wYWNpdHk6IDAuNTtcblx0XHRjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXHR9XG5cblx0Ly8gQm9yZGVyIHdpdGggcHNldWRvIGVsZW1lbnQgZm9yIGFuaW1hdGlvblxuXHQmOjphZnRlciB7XG5cdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhtKTtcblx0XHRib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKHBhbGV0dGUobmV1dHJhbCwgMTAwMCksIDAuMDcpO1xuXHRcdGJhY2tncm91bmQtY2xpcDogY29udGVudC1ib3g7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAtMXB4O1xuXHRcdGJvdHRvbTogLTFweDtcblx0XHRyaWdodDogLTFweDtcblx0XHRsZWZ0OiAtMXB4O1xuXHRcdHRyYW5zZm9ybTogc2NhbGVYKDApO1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0dHJhbnNpdGlvbi1kdXJhdGlvbjogLjVzO1xuXHR9XG5cblx0Jjpob3Zlcjpub3QoOmRpc2FibGVkKSB7XG5cdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZVgoMSk7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xuXHRcdFx0dHJhbnNpdGlvbi1kdXJhdGlvbjogLjM1cztcblx0XHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKTtcblx0XHR9XG5cdH1cbn1cblxuLmMtZ2hvc3RidXR0b25fX3RleHQge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDI7XG5cdHBhZGRpbmc6IDAgc3BhY2UoMyk7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHQuYy1idXR0b24tLWljb24gJiB7XG5cdFx0cGFkZGluZy1yaWdodDogc3BhY2UoMik7XG5cdH1cbn1cblxuLmMtZ2hvc3RidXR0b25fX2ljb24ge1xuXHRkaXNwbGF5OiBub25lOyAvLyBCeSBkZWZhdWx0IGljb24gaXMgaGlkZGVuXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMjtcblx0dG9wOiAtMXB4O1xuXHRtYXJnaW4tcmlnaHQ6IDE1cHg7XG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuXG5cdC5jLWdob3N0YnV0dG9uOmhvdmVyOm5vdCg6ZGlzYWJsZWQpICYge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpO1xuXHR9XG5cblx0LmMtZ2hvc3RidXR0b24tLWljb24gJiB7XG5cdFx0ZGlzcGxheTogYmxvY2s7IC8vIFNob3cgd2hlbiBoYXMgaWNvbiBtb2RpZmllclxuXHRcdHdpZHRoOiAxNnB4O1xuXHR9XG5cblx0Ly8gV2hlbiBpY29uIGNvbWVzIGJlZm9yZSB0aGUgdGV4dCAoaW4gdGhlIERPTSkgc3dpdGNoIHRoZSBtYXJnaW5cblx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdG1hcmdpbi1sZWZ0OiAxNXB4O1xuXHR9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBDYXJkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtY2FyZDogKFxuXHQnbGFiZWwtYmdjb2xvcic6XHRcdHBhbGV0dGUobmV1dHJhbCwgMTAwMCksXG5cdCdsYWJlbC1jb2xvcic6XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2xhYmVsLWJnY29sb3ItaG92ZXInOlx0cGFsZXR0ZShzZWNvbmRhcnksIDUwMCksXG5cdCdsYWJlbC1jb2xvci1ob3Zlcic6XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQnYXJyb3ctY29sb3ItaG92ZXInOlx0cGFsZXR0ZShzZWNvbmRhcnksIDUwMCksXG5cdCdiZ2NvbG9yLWhvdmVyJzpcdFx0cGFsZXR0ZShuZXV0cmFsLCAxMDAwKSxcblx0J2luZm8tYmdjb2xvcic6XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAxMDApLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmMtY2FyZCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGhlaWdodDogMTAwJTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qXG4gKiBDYXJkIHRoYXQgZG9lcyBzb21lIGFuaW1hdGlvbnMgb24gaG92ZXJcbiAqL1xuLmMtY2FyZC0taGFzLWFjdGlvbiB7XG5cdEBpbmNsdWRlIGRpc2FibGVPdXRsaW5lRm9yTW91c2U7XG5cdG92ZXJmbG93OiBoaWRkZW47IC8vIGJlY2F1c2Ugb2YgcHNldWRvIGVsZW1lbnRcblx0ei1pbmRleDogMDtcblxuXHQmOjpiZWZvcmUsXG5cdCY6OmFmdGVyIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogMTtcblx0XHR0b3A6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0b3BhY2l0eTogMDtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0fVxuXG5cdC8vIFNoYWRlZCBiYWNrZ3JvdW5kIChISURERU4gYnkgZGVmYXVsdClcblx0Jjo6YmVmb3JlIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKG1hcC1nZXQoJGMtY2FyZCwnYmdjb2xvci1ob3ZlcicpLCAwLjkyKTtcblx0XHRiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQocmdiYShtYXAtZ2V0KCRjLWNhcmQsJ2JnY29sb3ItaG92ZXInKSwwLjgpIDAlLCByZ2JhKG1hcC1nZXQoJGMtY2FyZCwnYmdjb2xvci1ob3ZlcicpLDAuOTIpIDEwMCUpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTM1JSkgcm90YXRlKC0xMWRlZykgc2NhbGUoMS4zKTtcblx0XHR0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG5cdFx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDMwMG1zO1xuXHRcdHRyYW5zaXRpb24tZGVsYXk6IDEwMG1zO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NSwgMC4xLCAwLjMsIDEpO1xuXHR9XG5cblx0Ly8gQXJyb3cgKEhJRERFTiBieSBkZWZhdWx0KVxuXHQvLyBDb250YWlucyBhbiBTVkcgYXJyb3cgaWNvbiBpbiB0aGUgYmFja2dyb3VuZC1pbWFnZVxuXHQmOjphZnRlciB7XG5cdFx0ei1pbmRleDogMjtcblx0XHR3aWR0aDogMjVweDtcblx0XHRtYXJnaW46IGF1dG87XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogc3ZnLXVybCgnPHN2ZyB2aWV3Qm94PVwiMCAwIDE2IDEyXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPjxwYXRoIGZpbGw9XCIje21hcC1nZXQoJGMtY2FyZCwnYXJyb3ctY29sb3ItaG92ZXInKX1cIiBkPVwiTTEzLjQgNi43ODNILjc2MkEuNzcyLjc3MiAwIDAgMSAwIDZjMC0uNDMyLjM0MS0uNzgzLjc2Mi0uNzgzSDEzLjRMOS42MjMgMS4zMzZhLjc5OC43OTggMCAwIDEgMC0xLjEwNy43NDcuNzQ3IDAgMCAxIDEuMDc3IDBsNS4wNzcgNS4yMThhLjc5OC43OTggMCAwIDEgMCAxLjEwNkwxMC43IDExLjc3MWEuNzQ3Ljc0NyAwIDAgMS0xLjA3NyAwIC43OTguNzk4IDAgMCAxIDAtMS4xMDdMMTMuNCA2Ljc4M3pcIi8+PC9zdmc+Jyk7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjc1KTtcblx0XHR0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm07XG5cdFx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMjAwbXM7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHQvLyBTaGFkZWQgYmFja2dyb3VuZCAoVklTSUJMRSB3aGVuIGhvdmVyZWQpXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0b3BhY2l0eTogMC45Mjtcblx0XHRcdHRyYW5zZm9ybTogcm90YXRlKC0xMWRlZykgc2NhbGUoMS4zKTtcblx0XHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDQwMG1zO1xuXHRcdFx0dHJhbnNpdGlvbi1kZWxheTogNTBtcztcblx0XHR9XG5cdFx0Ly8gQXJyb3cgKFZJU0lCTEUgd2hlbiBob3ZlcmVkKVxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDQwMG1zO1xuXHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMjAwbXM7XG5cdFx0fVxuXHR9XG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtY29sb3I6IG1hcC1nZXQoJGMtY2FyZCwnYmdjb2xvci1ob3ZlcicpO1xuXHRcdG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAxcHg7XG5cdFx0b3V0bGluZS13aWR0aDogMnB4O1xuXHR9XG59XG5cbi5jLWNhcmRfX3BpY3R1cmUge1xuXHR3aWR0aDogMTAwJTtcblx0ZmxleDogbm9uZTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmMtY2FyZF9faW1nIHtcblx0b2JqZWN0LWZpdDogY292ZXI7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG87XG59XG5cblxuLmMtY2FyZF9fbGlua2VkLWluIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRyaWdodDogMDtcblx0Ym90dG9tOiAwO1xuXHRwYWRkaW5nOiBzcGFjZSgxKTtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cblxuXG4uYy1jYXJkX19saW5rZWQtaW4taWNvbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0d2lkdGg6IDI4cHg7XG5cdGhlaWdodDogMjhweDtcblx0YmFja2dyb3VuZC1jb2xvcjogIzI3NjdiMTtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9zb2NpYWwvbGlua2VkaW4uc3ZnXCIpO1xuXHRiYWNrZ3JvdW5kLXNpemU6IDE4cHggMThweDtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRib3gtc2hhZG93OiAwIDAgOHB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuXHR0cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG5cblx0LmMtY2FyZF9fbGlua2VkLWluOmhvdmVyICYge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA1MDApO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcblx0fVxufVxuXG5cbi5jLWNhcmRfX2xhYmVsIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHhzKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAzO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAxNHB4IDEwcHggMTVweDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRmb250LXdlaWdodDogbWVkaXVtO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRjb2xvcjogbWFwLWdldCgkYy1jYXJkLCdsYWJlbC1jb2xvcicpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLWNhcmQsJ2xhYmVsLWJnY29sb3InKTtcblx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZDtcblx0dHJhbnNpdGlvbi1kdXJhdGlvbjogNDAwbXM7XG5cblx0LmMtY2FyZC0taGFzLWFjdGlvbjpob3ZlciAmIHtcblx0XHRjb2xvcjogbWFwLWdldCgkYy1jYXJkLCdsYWJlbC1jb2xvci1ob3ZlcicpO1xuXHR9XG5cblx0Ly8gQ29sb3JlZCBiYWNrZ3JvdW5kIGJlaGluZCBsYWJlbCAoSElEREVOIGJ5IGRlZmF1bHQpXG5cdCY6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IC0xO1xuXHRcdHRvcDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0bGVmdDogMDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLWNhcmQsJ2xhYmVsLWJnY29sb3ItaG92ZXInKTtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHQvL3RyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAlKSByb3RhdGUoNWRlZykgc2NhbGUoMik7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwMCUpIHJvdGF0ZSgxMWRlZykgc2NhbGUoMS41LCAzKTtcblx0XHR0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG5cdFx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDMwMG1zO1xuXHRcdHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NSwgMC4xLCAwLjMsIDEpO1xuXG5cdFx0LmMtY2FyZC0taGFzLWFjdGlvbjpob3ZlciAmIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKSBzY2FsZSgyKTtcblx0XHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDMwMG1zO1xuXHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMG1zO1xuXHRcdH1cblx0fVxufVxuXG4uYy1jYXJkX19pbmZvIHtcblx0ZmxleDogMTtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0cGFkZGluZzogc3BhY2UoMikgc3BhY2UoNCk7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGMtY2FyZCwnaW5mby1iZ2NvbG9yJyk7XG59XG5cblxuLmMtY2FyZF9faGVhZGluZyB7XG5cdEBpbmNsdWRlIGZvbnQobSk7XG5cdGNvbG9yOiBwYWxldHRlKHByaW1hcnksIDcwMCk7XG59XG5cblxuLmMtY2FyZF9fc3ViaGVhZGluZyB7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDQwMCk7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDAuNSk7XG59XG5cblxuLmMtY2FyZF9fdGV4dGxpbmUge1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA0MDApO1xuXG5cdC8vIFdoZW4gaXQgZm9sbG93cyBhbiBlbGVtZW50IHRoYXQncyBub3QgbGlrZSBpdHNlbGZcblx0Kjpub3QoI3smfSkgKyAmIHtcblx0XHRtYXJnaW4tdG9wOiBzcGFjZSgyKTtcblx0fVxufVxuXG5cbi5jLWNhcmRfX2FjdGlvbnMge1xuXHRwYWRkaW5nLXRvcDogc3BhY2UoMik7XG5cdG1hcmdpbi10b3A6IGF1dG87XG59XG5cblxuLmMtY2FyZF9fbGluayB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSh4cyk7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblx0bWFyZ2luLXRvcDogYXV0bztcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgNTAwKTtcbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IENsb3NlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtY2xvc2U6IChcblx0J2NvbG9yJzogIHBhbGV0dGUobmV1dHJhbCwgMCksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uYy1jbG9zZSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1zZWxmOiBjZW50ZXI7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IHNwYWNlKDUpO1xuXHRoZWlnaHQ6IHNwYWNlKDUpO1xuXHRwYWRkaW5nOiAwO1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRib3JkZXI6IG5vbmU7XG5cdG91dGxpbmU6IG5vbmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDE4MG1zIGVhc2Utb3V0O1xuXG5cdCY6Zm9jdXMge1xuXHRcdGJveC1zaGFkb3c6IDAgMCAzcHggMnB4IG1hcC1nZXQoJGMtY2xvc2UsICdjb2xvcicpO1xuXHR9XG5cblx0JjphZnRlcixcblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDIwcHg7XG5cdFx0cmlnaHQ6IDIwJTtcblx0XHRsZWZ0OiAyMCU7XG5cdFx0aGVpZ2h0OiAzcHg7XG5cdFx0bWFyZ2luLXRvcDogLTJweDtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjLWNsb3NlLCAnY29sb3InKTtcblx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdH1cblx0JjpiZWZvcmUge1xuXHRcdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcblx0fVxuXHQmOmFmdGVyIHtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xuXHR9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBDb25uZWN0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtY29ubmVjdDogKFxuXHQnY29sb3InOlx0XHRwYWxldHRlKG5ldXRyYWwsIDgwMCksXG5cdCdjb2xvci1hbHQnOlx0cGFsZXR0ZShuZXV0cmFsLCA1MDApLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuXG4uYy1jb25uZWN0IHtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cblx0QGluY2x1ZGUgbXEobSl7XG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0fVxufVxuXG5cbi5jLWNvbm5lY3RfX3Bob25lIHtcblx0QGluY2x1ZGUgZGlzYWJsZU91dGxpbmVGb3JNb3VzZTtcblx0QGluY2x1ZGUgZm9udChtKTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0Y29sb3I6IG1hcC1nZXQoJGMtY29ubmVjdCwgJ2NvbG9yJyk7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXM7XG5cblx0Jjpob3ZlciB7XG5cdFx0b3BhY2l0eTogMC43O1xuXHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuXHRcdG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAxcHg7XG5cdFx0b3V0bGluZS13aWR0aDogMnB4O1xuXHR9XG59XG5cblxuLmMtY29ubmVjdF9fb3Ige1xuXHRtYXJnaW46IDAgc3BhY2UoMik7XG5cdGNvbG9yOiBtYXAtZ2V0KCRjLWNvbm5lY3QsICdjb2xvci1hbHQnKTtcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG5cdFx0bWFyZ2luOiBzcGFjZSgxKSAwIHNwYWNlKDIpO1xuXHR9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBEYXRhXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtZGF0YTogKFxuICAnY29sb3InOlx0XHRcdHBhbGV0dGUobmV1dHJhbCwgODAwKSxcbiAgJ2NvbG9yLWFsdCc6XHRcdHBhbGV0dGUobmV1dHJhbCwgNTAwKSxcbiAgJ2JnY29sb3ItaG92ZXInOlx0c2NhbGUtY29sb3IocGFsZXR0ZShzZWNvbmRhcnksIDUwMCksICRsaWdodG5lc3M6IC0yMCUpLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5jLWRhdGEge1xuXHRtYXJnaW46IHNwYWNlKDIpIDA7XG59XG5cbi5jLWRhdGFfX2xpbmUge1xuXHRkaXNwbGF5OiBmbGV4O1xufVxuXG4uYy1kYXRhX19sYWJlbCB7XG5cdG1pbi13aWR0aDogc3BhY2UoOCk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRjb2xvcjogbWFwLWdldCgkYy1kYXRhLCAnY29sb3InKTtcbn1cblxuLmMtZGF0YV9fdmFsdWUge1xuICAgIGNvbG9yOiBtYXAtZ2V0KCRjLWRhdGEsICdjb2xvci1hbHQnKTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdCZbaHJlZl0ge1xuXHRcdEBpbmNsdWRlIGRpc2FibGVPdXRsaW5lRm9yTW91c2U7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdH1cblx0XHQmOmZvY3VzIHtcblx0XHRcdG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0XHRcdG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuXHRcdFx0b3V0bGluZS1vZmZzZXQ6IDFweDtcblx0XHRcdG91dGxpbmUtd2lkdGg6IDJweDtcblx0XHR9XG5cdH1cbn0iLCIuYy1kYXRlLWxhYmVsIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwYWRkaW5nOiBzcGFjZSgwLjUpIHNwYWNlKDMpO1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cblxuXG4uYy1kYXRlLWxhYmVsLS1zZWNvbmRhcnkge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNTAwKTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG59XG5cblxuLmMtZGF0ZS1sYWJlbF9fZGF5IHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHhsKTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyB0aW1lIGVsZW1lbnQgZG9lc24ndCBzZWVtIHRvIGhhdmUgYSBkZWZhdWx0XG59XG5cblxuLmMtZGF0ZS1sYWJlbF9fbW9udGgge1xuXHRAaW5jbHVkZSBmb250LXNpemUobSk7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jazsgLy8gdGltZSBlbGVtZW50IGRvZXNuJ3Qgc2VlbSB0byBoYXZlIGEgZGVmYXVsdFxufSIsIi5jLWRvd25sb2FkLWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbi5jLWRvd25sb2FkLWxpc3RfX2l0ZW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcGFsZXR0ZShuZXV0cmFsLCAzMDApO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShwYWxldHRlKG5ldXRyYWwsIDMwMCksIDAuMik7XG4gIH1cbn1cblxuLmMtZG93bmxvYWQtbGlzdF9fbGluayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IHNwYWNlKDEpIDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmMtZG93bmxvYWQtbGlzdF9faWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDE2cHg7XG5cbiAgc3ZnIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uYy1kb3dubG9hZC1saXN0X190ZXh0IHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDE2cHgpO1xuICBwYWRkaW5nLWxlZnQ6IHNwYWNlKDEpO1xuXG4gIC5jLWRvd25sb2FkLWxpc3RfX2l0ZW06aG92ZXIgJiB7XG4gICAgY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgOTAwKTtcbiAgfVxufVxuIiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBDYXJkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtZXZlbnQtY2FyZDogKFxuXHQnYmdjb2xvci1ob3Zlcic6XHRcdHBhbGV0dGUoc2Vjb25kYXJ5LCA1MDApLFxuXHQnY29sb3ItaG92ZXInOlx0XHQgICAgcGFsZXR0ZShuZXV0cmFsLCAwKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5jLWV2ZW50LWNhcmQge1xuXHRAaW5jbHVkZSBkaXNhYmxlT3V0bGluZUZvck1vdXNlO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRvdmVyZmxvdzogaGlkZGVuOyAvLyBiZWNhdXNlIG9mIHBzZXVkbyBlbGVtZW50XG5cdHotaW5kZXg6IDA7XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZS1jb2xvcjogbWFwLWdldCgkYy1ldmVudC1jYXJkLCdiZ2NvbG9yLWhvdmVyJyk7XG5cdFx0b3V0bGluZS1zdHlsZTogc29saWQ7XG5cdFx0b3V0bGluZS1vZmZzZXQ6IDFweDtcblx0XHRvdXRsaW5lLXdpZHRoOiAycHg7XG5cdH1cbn1cblxuXG4uYy1ldmVudC1jYXJkX19waWN0dXJlIHtcblx0d2lkdGg6IDEwMCU7XG5cdGZsZXg6IG5vbmU7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0Jjo6YmVmb3JlIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogMDtcblx0XHR0b3A6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYShibGFjaywgMC42MCk7XG5cdFx0b3BhY2l0eTogMDtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHR0cmFuc2l0aW9uOiBhbGwgMjAwbXMgbGluZWFyO1xuXHR9XG5cblx0LmMtZXZlbnQtY2FyZDpob3ZlciAmIHtcblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHR9XG5cdH1cbn1cblxuXG4uYy1ldmVudC1jYXJkX19pbWcge1xuXHRvYmplY3QtZml0OiBjb3Zlcjtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogYXV0bztcbn1cblxuXG4uYy1ldmVudC1jYXJkX19kYXRlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR6LWluZGV4OiAxO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IDA7XG5cdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA1MDApO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcblx0dHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG5cdHRyYW5zaXRpb246IGFsbCAyMDBtcyBsaW5lYXI7XG5cblx0LmMtZXZlbnQtY2FyZDpob3ZlciAmIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLWV2ZW50LWNhcmQsICdiZ2NvbG9yLWhvdmVyJyk7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJGMtZXZlbnQtY2FyZCwgJ2NvbG9yLWhvdmVyJyk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcblxuXHR9XG59XG5cblxuLmMtZXZlbnQtY2FyZF9faW5mbyB7XG5cdGZsZXg6IDE7XG5cdHBhZGRpbmc6IHNwYWNlKDIpIHNwYWNlKDMpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDEwMCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dHJhbnNpdGlvbjogYWxsIDIwMG1zIGxpbmVhcjtcblxuXHQuYy1ldmVudC1jYXJkOmhvdmVyICYge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGMtZXZlbnQtY2FyZCwnYmdjb2xvci1ob3ZlcicpO1xuXHR9XG59XG5cblxuLmMtZXZlbnQtY2FyZF9fdGl0bGUge1xuXHRAaW5jbHVkZSBmb250LXNpemUoYmFzZSk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMjtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDgwMCk7XG5cdHRyYW5zaXRpb246IGFsbCAyMDBtcyBsaW5lYXI7XG5cblx0LmMtZXZlbnQtY2FyZDpob3ZlciAmIHtcblx0XHRjb2xvcjogbWFwLWdldCgkYy1ldmVudC1jYXJkLCAnY29sb3ItaG92ZXInKSAhaW1wb3J0YW50O1xuXHR9XG59XG5cblxuLmMtZXZlbnQtY2FyZF9fc3VidGl0bGUge1xuXHRAaW5jbHVkZSBmb250LXNpemUocyk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMjtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgNDAwKTtcblx0dHJhbnNpdGlvbjogYWxsIDIwMG1zIGxpbmVhcjtcblxuXHQuYy1ldmVudC1jYXJkOmhvdmVyICYge1xuXHRcdGNvbG9yOiBtYXAtZ2V0KCRjLWV2ZW50LWNhcmQsICdjb2xvci1ob3ZlcicpICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuXG4uYy1ldmVudC1jYXJkX190eXBlIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHMpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDI7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDEpO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAzMDApO1xuXHR0cmFuc2l0aW9uOiBhbGwgMjAwbXMgbGluZWFyO1xuXG5cdC5jLWV2ZW50LWNhcmQ6aG92ZXIgJiB7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJGMtZXZlbnQtY2FyZCwgJ2NvbG9yLWhvdmVyJykgIWltcG9ydGFudDtcblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogZmlsZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRjLWZpbGUtdXBsb2FkOiAoXG5cdCdjb2xvcic6XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCA5MDApLFxuXHQnYmdjb2xvcic6XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2JnY29sb3ItaG92ZXInOlx0c2NhbGUtY29sb3IocGFsZXR0ZShzZWNvbmRhcnkpLCAkbGlnaHRuZXNzOiAtMjAlKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5jLWZpbGUtdXBsb2FkX19tYWluIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5cbi5jLWZpbGUtdXBsb2FkX19pbnB1dCB7XG5cdG9wYWNpdHk6IDA7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xufVxuXG5cbi5jLWZpbGUtdXBsb2FkX19idXR0b24ge1xuXHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKG0pO1xuXHRAaW5jbHVkZSBmb250LXNpemUoeHMpO1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGNvbG9yOiBtYXAtZ2V0KCRjLWZpbGUtdXBsb2FkLCAnY29sb3InKTtcblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1maWxlLXVwbG9hZCwgJ2JnY29sb3InKTtcblx0Ym9yZGVyOiAxcHggc29saWQgcGFsZXR0ZShuZXV0cmFsLCA1MDApO1xuXHRtYXJnaW4tcmlnaHQ6IHNwYWNlKDEpO1xuXHRwYWRkaW5nOiBzcGFjZSgyKSBzcGFjZSgzKTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogYWxsIDE1MG1zO1xuXG5cdCY6OmFmdGVyIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltZy9hZGQuc3ZnKTtcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdHdpZHRoOiAxNnB4O1xuXHRcdGhlaWdodDogMTZweDtcblx0XHRtYXJnaW4tbGVmdDogc3BhY2UoMik7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHRvcGFjaXR5OiAwLjc7XG5cdH1cbn1cblxuXG4uYy1maWxlLXVwbG9hZF9fbGlzdCB7XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXHRtYXJnaW4tYm90dG9tOiBzcGFjZSgzKTtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHQmID4gbGkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHBhbGV0dGUobmV1dHJhbCwgMzAwKTtcblx0XHRwYWRkaW5nOiBzcGFjZSgwLjUpIDA7XG5cdFx0YW5pbWF0aW9uOiBleHBhbmQgLjVzIGVhc2UtaW4tb3V0O1xuXG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdHdpZHRoOiAxNnB4O1xuXHRcdFx0aGVpZ2h0OiAxNnB4O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiBzcGFjZSgxKTtcblx0XHRcdGJhY2tncm91bmQ6IHVybChcIi9pbWcvZmlsZS5zdmdcIikgbm8tcmVwZWF0O1xuXHRcdH1cblxuXHRcdC8vIGRlbGV0ZSBidXR0b25cblx0XHQmID4gYnV0dG9uIHtcblx0XHRcdGZvbnQtc2l6ZTogMjRweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxNnB4O1xuXHRcdFx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMTAwMCk7XG5cdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0b3V0bGluZTogbm9uZTtcblx0XHRcdHRyYW5zaXRpb246IGNvbG9yIDE1MG1zIGxpbmVhcjtcblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGNvbG9yOiByZWQ7XG5cdFx0XHR9XG5cblx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6ICdcXDAwRDcnO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cbi5jLWZpbGUtdXBsb2FkX19ub3RlIHtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgNDAwKTtcbn1cblxuXG5Aa2V5ZnJhbWVzIGV4cGFuZCB7XG5cdGZyb20ge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG5cdFx0dHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0YmFja2dyb3VuZDogcGFsZXR0ZShmZWVkYmFjaywgYWN0aW9uKTtcblx0fVxufVxuIiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBGb3JtIGdyb3VwXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtZm9ybS1ncm91cDogKFxuICAnY29sb3InOlx0XHRcdFx0XHQgICAgcGFsZXR0ZShuZXV0cmFsLCA0MDApLFxuICAnZXJyb3ItY29sb3InOlx0XHRcdFx0cGFsZXR0ZShmZWVkYmFjaywgYWN0aW9uKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5jLWZvcm0tZ3JvdXBfX2xhYmVsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHMpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogc3BhY2UoMC41KSAwO1xuICBjb2xvcjogbWFwLWdldCgkYy1mb3JtLWdyb3VwLCAnY29sb3InKTtcbn1cblxuLmMtZm9ybS1ncm91cF9fZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuXG4gIC5oYXMtZXJyb3IgJjpub3QoOmVtcHR5KSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKHhzKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiBzcGFjZSgxKTtcbiAgICBjb2xvcjogbWFwLWdldCgkYy1mb3JtLWdyb3VwLCAnZXJyb3ItY29sb3InKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKG1hcC1nZXQoJGMtZm9ybS1ncm91cCwgJ2Vycm9yLWNvbG9yJyksIDAuMSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkYy1mb3JtLWdyb3VwLCAnZXJyb3ItY29sb3InKTtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKSBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKTtcbiAgfVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogRm9ybSBmZWVkYmFja1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRjLWZvcm0tZmVlZGJhY2s6IChcbiAgJ2NvbG9yJzpcdFx0cGFsZXR0ZShuZXV0cmFsLCA4MDApLFxuICAnYmdjb2xvcic6XHRyZ2JhKHBhbGV0dGUoZmVlZGJhY2ssIHdhcm5pbmcpLCAwLjIpLFxuICAnYm9yZGVyJzogXHRwYWxldHRlKGZlZWRiYWNrLCB3YXJuaW5nKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5jLWZvcm0tZmVlZGJhY2sge1xuICBAaW5jbHVkZSBmb250LXNpemUocyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMocyk7XG4gIG1hcmdpbjogMCAwIHNwYWNlKDEpO1xuICBwYWRkaW5nOiBzcGFjZSgzKSBzcGFjZSg0KTtcbiAgY29sb3I6IG1hcC1nZXQoJGMtZm9ybS1mZWVkYmFjaywgJ2NvbG9yJyk7XG4gIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGMtZm9ybS1mZWVkYmFjaywgJ2JnY29sb3InKTtcbiAgYm9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkYy1mb3JtLWZlZWRiYWNrLCAnYm9yZGVyJyk7XG5cbiAgJjpub3QoOmVtcHR5KSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmOmJlZm9yZXtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtZmVlZGJhY2spO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogc3BhY2UoLTIpO1xuICAgIG1hcmdpbi1ib3R0b206IHNwYWNlKDEpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cblxuICBsaTo6Zmlyc3QtbGV0dGVyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBIYW1idXJnZXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmMtaGFtYnVyZ2VyIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGFsaWduLXNlbGY6IGNlbnRlcjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogc3BhY2UoNSk7XG5cdGhlaWdodDogc3BhY2UoNSk7XG5cdHBhZGRpbmc6IDA7XG5cdGNvbG9yOiBtYXAtZ2V0KCRzaXRlLWhlYWRlciwgJ3RleHRDb2xvcicpO1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRib3JkZXI6IG5vbmU7XG5cdG91dGxpbmU6IG5vbmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG5cdFx0b3V0bGluZS1zdHlsZTogc29saWQ7XG5cdFx0b3V0bGluZS1vZmZzZXQ6IDFweDtcblx0XHRvdXRsaW5lLXdpZHRoOiAycHg7XG5cdH1cblxuXHQmID4gc3Bhbixcblx0JjphZnRlcixcblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDIwcHg7XG5cdFx0cmlnaHQ6IDIwJTtcblx0XHRsZWZ0OiAyMCU7XG5cdFx0aGVpZ2h0OiAzcHg7XG5cdFx0bWFyZ2luLXRvcDogLTJweDtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG5cdFx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRcdHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuXHRcdHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAxNTBtcztcblx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG5cdFx0dHJhbnNpdGlvbi1kZWxheTogMTAwbXM7XG5cdH1cblxuXHQmOmJlZm9yZSB7XG5cdFx0dG9wOiAxMnB4O1xuXHRcdHRyYW5zZm9ybTogc2NhbGVYKDAuOCk7XG5cdH1cblxuXHQmOmFmdGVyIHtcblx0XHR0b3A6IDI4cHg7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZVgoMC41KTtcblx0fVxuXG5cdCY6aG92ZXIge1xuXHRcdCYgPiBzcGFuIHtcblx0XHRcdHRyYW5zZm9ybTogc2NhbGVYKDAuOCk7XG5cdFx0fVxuXHRcdCY6YWZ0ZXIsXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZVgoMSk7XG5cdFx0fVxuXHR9XG5cblx0LmlzLW92ZXJsYXktbWVudS1hY3RpdmUgJiB7XG5cdFx0JiA+IHNwYW4ge1xuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZVgoMSkgIWltcG9ydGFudDtcblx0XHR9XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDNweCkgc2NhbGVYKDEpICFpbXBvcnRhbnQ7XG5cdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwcztcblx0XHR9XG5cdFx0JjphZnRlciB7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCkgc2NhbGVYKDEpICFpbXBvcnRhbnQ7XG5cdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwcztcblx0XHR9XG5cdH1cbn0iLCIuYy1oZWFkaW5nIHtcblx0QGluY2x1ZGUgZm9udCh4eGwpO1xuXHRtYXJnaW46IHNwYWNlKDUpIDA7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDgwMCk7XG59XG5cbi5jLWhlYWRpbmctLWluZGVudCB7XG5cdEBpbmNsdWRlIG1xKGwpIHtcblx0XHRwYWRkaW5nLWxlZnQ6IGNvbHVtbigxLCAxMik7XG5cdH1cbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IEhlcm9cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kYy1oZXJvOiAoXG5cdCdjYXB0aW9uLWJnY29sb3InOlx0XHRyZ2JhKHBhbGV0dGUobmV1dHJhbCwgOTAwKSwgMC42KSxcblx0J2NhcHRpb24tY29sb3InOlx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmMtaGVybyB7XG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRAaW5jbHVkZSBjb250YWluO1xuXHR9XG59XG5cbi5jLWhlcm9fX21haW4ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG59XG5cbi5jLWhlcm9fX3NsaWRlciB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1ib3R0b206IDU1LjU1NiU7IC8vIFJhdGlvIHVzZWQgZm9yIG1vYmlsZSBpbWFnZVxuXG5cdEBpbmNsdWRlIG1xKG0sIGwpIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogNTAlOyAvLyBSYXRpbyB1c2VkIGZvciBpbWFnZVxuXHR9XG59XG5cbi5jLWhlcm9fX3BpY3R1cmUge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0b3BhY2l0eTogMDtcblx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgZmlsdGVyO1xuXHR0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcblx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcblx0ZmlsdGVyOiBibHVyKDVweCk7XG5cblx0Ji5pcy1hY3RpdmUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHNjYWxlKDEpO1xuXHRcdGZpbHRlcjogbm9uZTtcblx0fVxufVxuXG4uYy1oZXJvX19pbWFnZSB7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4uYy1oZXJvX19jYXB0aW9uIHtcblx0Ly9AaW5jbHVkZSBoeXBoZW5hdGU7XG5cdGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgMXZ3KTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZzogc3BhY2UoMyk7XG5cdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0Y29sb3I6IG1hcC1nZXQoJGMtaGVybywgJ2NhcHRpb24tY29sb3InKTtcblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1oZXJvLCAnY2FwdGlvbi1iZ2NvbG9yJyk7XG5cblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRib3R0b206IDA7XG5cdFx0bWF4LXdpZHRoOiBjb2x1bW4oNiwxMik7XG5cdFx0cGFkZGluZzogc3BhY2UoNCk7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblxuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHotaW5kZXg6IC0xO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0cmlnaHQ6IC0xMDB2dztcblx0XHRcdGxlZnQ6IC0xMDB2dztcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJHNpdGUtaW50cm8sICdiYXJDb2xvcicpO1xuXHRcdH1cblx0fVxuXG5cdC8vIEZvbnQtbG9jayB0byBzY2FsZSBmb250LXNpemUgcHJvcG9ydGlvbmFsbHlcblx0QGluY2x1ZGUgbXEobSwgJGJwLW1heCkge1xuXHRcdHBhZGRpbmc6IDIuNnZ3OyAvLyBNYWdpYyB2YWx1ZSBzbyB0ZXh0IHNjYWxlcyBuaWNlbHlcblx0XHRmb250LXNpemU6IDMuMHZ3OyAvLyBNYWdpYyB2YWx1ZSBzbyB0ZXh0IHNjYWxlcyBuaWNlbHlcblx0XHRsaW5lLWhlaWdodDogMS4yO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEoJGJwLW1heCkge1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSh4eHhsKTtcblx0XHRsaW5lLWhlaWdodDogMS4yNTtcblx0XHRwYWRkaW5nLWxlZnQ6IGNvbHVtbigwLjUpO1xuXHR9XG59XG5cbi5jLWhlcm9fX2NvbnRyb2xzIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDA7XG5cdHJpZ2h0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0cGFkZGluZzogc3BhY2UoMSk7XG5cblx0Jjo6YmVmb3JlIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0aGVpZ2h0OiBzcGFjZSg2KTtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCBibGFjaywgdHJhbnNwYXJlbnQpO1xuXHRcdG9wYWNpdHk6IDAuMztcblx0fVxufVxuXG5cbi8vIEJ1dHRvbiB3aXRoIGFycm93IHRoYXQgc2Nyb2xscyBkb3duXG4uYy1oZXJvX19zY3JvbGwge1xuXHRAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJvdHRvbTogMDtcblx0bGVmdDogNTAlO1xuXHR3aWR0aDogNDBweDtcblx0aGVpZ2h0OiA0MHB4O1xuXHRwYWRkaW5nOiAxMHB4O1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDUwMCk7XG5cdGJvcmRlci1yYWRpdXM6IDEwMCU7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDUwJSkgcm90YXRlKDAuMjV0dXJuKTtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcztcblxuXHQmID4gc3ZnIHtcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXM7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0YmFja2dyb3VuZDogc2NhbGVfY29sb3IocGFsZXR0ZShzZWNvbmRhcnksIDUwMCksICRsaWdodG5lc3M6IC0xNSUpO1xuXG5cdFx0JiA+IHN2ZyB7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTtcblx0XHR9XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHRcdGJhY2tncm91bmQ6IHNjYWxlX2NvbG9yKHBhbGV0dGUoc2Vjb25kYXJ5LCA1MDApLCAkbGlnaHRuZXNzOiAtMTAlKTtcblx0XHRib3gtc2hhZG93OiAwIDAgMCAzcHggc2NhbGVfY29sb3IocGFsZXR0ZShzZWNvbmRhcnksIDUwMCksICRsaWdodG5lc3M6IDcwJSk7XG5cdH1cbn0iLCIuYy1pbmZvIHtcblx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhzKTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdHBhZGRpbmc6IHNwYWNlKDEuNSkgc3BhY2UoMik7XG5cdGNvbG9yOiBwYWxldHRlKGZlZWRiYWNrLCBwb3NpdGl2ZSk7XG5cdGJhY2tncm91bmQtY29sb3I6IHJnYmEocGFsZXR0ZShmZWVkYmFjaywgcG9zaXRpdmUpLCAwLjEpO1xuXHRib3JkZXI6IDFweCBzb2xpZCBwYWxldHRlKGZlZWRiYWNrLCBwb3NpdGl2ZSk7XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBJbnB1dFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRjLWlucHV0OiAoXG5cdCdjb2xvcic6XHRcdHBhbGV0dGUobmV1dHJhbCwgODAwKSxcblx0J2JnY29sb3InOlx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQnYm9yZGVyJzpcdFx0cGFsZXR0ZShuZXV0cmFsLCAzMDApLFxuXHQnZm9jdXMnOlx0XHRwYWxldHRlKG5ldXRyYWwsIDkwMCksXG5cdCdlcnJvcic6XHRcdHBhbGV0dGUoZmVlZGJhY2ssIHdhcm5pbmcpLFxuXHQnYm9yZGVyLXNpemUnOlx0MXB4LFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmMtaW5wdXQge1xuXHRAaW5jbHVkZSBmb250LXNpemUocyk7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiAoc3BhY2UoMSkgLSBtYXAtZ2V0KCRjLWlucHV0LCAnYm9yZGVyLXNpemUnKSkgc3BhY2UoMik7XG5cdGNvbG9yOiBtYXAtZ2V0KCRjLWlucHV0LCAnY29sb3InKTtcblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1pbnB1dCwgJ2JnY29sb3InKTtcblx0Ym9yZGVyOiBtYXAtZ2V0KCRjLWlucHV0LCAnYm9yZGVyLXNpemUnKSBzb2xpZCBtYXAtZ2V0KCRjLWlucHV0LCAnYm9yZGVyJyk7XG5cdG91dGxpbmU6IG5vbmU7XG5cblx0Lmhhcy1lcnJvciAmIHtcblx0XHRib3gtc2hhZG93OiAwIDAgN3B4IC0zcHggbWFwLWdldCgkYy1pbnB1dCwgJ2Vycm9yJyk7XG5cdFx0Ym9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRjLWlucHV0LCAnZXJyb3InKTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKG1hcC1nZXQoJGMtaW5wdXQsICdlcnJvcicpLCAwLjA1KTtcblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdGJveC1zaGFkb3c6IDAgMCA3cHggLTNweCBtYXAtZ2V0KCRjLWlucHV0LCAnZm9jdXMnKTtcblx0XHRib3JkZXItY29sb3I6IG1hcC1nZXQoJGMtaW5wdXQsICdmb2N1cycpO1xuXHR9XG5cblx0QGF0LXJvb3QgdGV4dGFyZWEjeyZ9IHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwYWRkaW5nOiBzcGFjZSgyKTtcblx0XHRtaW4taGVpZ2h0OiBzcGFjZSgyMCkgLSBkb3VibGUobWFwLWdldCgkYy1pbnB1dCwgJ2JvcmRlci1zaXplJykpO1xuXHRcdGxpbmUtaGVpZ2h0OiBzcGFjZSgzKTtcblx0XHRyZXNpemU6IHZlcnRpY2FsO1xuXHR9XG59XG5cblxuIiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBMYW5ndWFnZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRjLWxhbmd1YWdlOiAoXG5cdCdiZ2NvbG9yJzpcdFx0XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2JnY29sb3ItYWx0JzpcdFx0XHQgIFx0ZGFya2VuKHBhbGV0dGUobmV1dHJhbCwgMCksIDUlKSxcblx0J2NvbG9yJzpcdFx0XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCA1MDApLFxuXHQnY29sb3ItaG92ZXInOlx0XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2JnY29sb3ItaG92ZXInOlx0XHRcdHBhbGV0dGUoc2Vjb25kYXJ5LCA1MDApLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmMtbGFuZ3VhZ2Uge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jLWxhbmd1YWdlX19idXR0b24ge1xuXHRAaW5jbHVkZSBmb250KHMpO1xuXHRAaW5jbHVkZSBib3JkZXItcmFkaXVzO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiBzcGFjZSgxKTtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdGNvbG9yOiByZ2JhKG1hcC1nZXQoJHNpdGUtaGVhZGVyLCAndGV4dENvbG9yJyksIDAuNSk7XG5cdGJvcmRlcjogbm9uZTtcblx0YXBwZWFyYW5jZTogbm9uZTtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cywgYm94LXNoYWRvdyAwLjE1cztcblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHR9XG5cblx0Ly8uYy1sYW5ndWFnZTpob3ZlciAmIHtcblx0Ly9cdGNvbG9yOiBtYXAtZ2V0KCRzaXRlLWhlYWRlciwgJ3RleHRDb2xvcicpO1xuXHQvL31cbn1cblxuLmMtbGFuZ3VhZ2VfX2ljb24ge1xuXHRmbGV4OiBub25lO1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmMtbGFuZ3VhZ2VfX2xhYmVsIHtcblx0bWFyZ2luLWxlZnQ6IHNwYWNlKDAuNSk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uYy1sYW5ndWFnZV9fZHJvcGRvd24ge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiAwO1xuXHR0b3A6IDEwMCU7XG5cdG1pbi13aWR0aDogMTAwJTtcblx0bWFyZ2luOiAwO1xuXHRvcGFjaXR5OiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKTtcblx0Ym94LXNoYWRvdzogMCAwIDEycHggMXB4IHJnYmEocGFsZXR0ZShuZXV0cmFsLCAxMDAwKSwgMC4xNSk7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MsIHRyYW5zZm9ybSAwLjNzO1xuXG5cdC5jLWxhbmd1YWdlOmhvdmVyICYge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0cG9pbnRlci1ldmVudHM6IGFsbDtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcblx0fVxufVxuXG4uYy1sYW5ndWFnZV9faXRlbSB7XG5cdGJhY2tncm91bmQtY29sb3I6bWFwLWdldCgkYy1sYW5ndWFnZSwgJ2JnY29sb3InKTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHQmOm50aC1jaGlsZChldmVuKSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1sYW5ndWFnZSwgJ2JnY29sb3ItYWx0Jyk7XG5cdH1cblxuXHQmOmZpcnN0LWNoaWxkIHtcblx0XHRib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKSBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKSAwIDA7XG5cdH1cblxuXHQmOmxhc3QtY2hpbGQge1xuXHRcdGJvcmRlci1yYWRpdXM6IDAgMCBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKSBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKTtcblx0fVxuXG5cdCY6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG5cdFx0Ym9yZGVyLXJhZGl1czogbWFwLWdldCgkYm9yZGVyLXJhZGl1cywgcyk7XG5cdH1cbn1cblxuLmMtbGFuZ3VhZ2VfX2xpbmsge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZzogc3BhY2UoMC41KSBzcGFjZSgxKTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRjb2xvcjogbWFwLWdldCgkYy1sYW5ndWFnZSwgJ2NvbG9yJyk7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcztcblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogbWFwLWdldCgkYy1sYW5ndWFnZSwgJ2NvbG9yLWhvdmVyJyk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1sYW5ndWFnZSwgJ2JnY29sb3ItaG92ZXInKTtcblx0fVxufVxuXG4iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IE5hdlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLypcblx0Q29sb3JzIGdldCBkZWZpbmVkIGluIF9zZXR0aW5ncy5jb25maWcuc2Nzc1xuKi9cblxuJGMtbmF2OiAoXG5cdCdsaW5rLXBhZGRpbmcnOiA0cHgsXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uYy1uYXYge1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHBhZGRpbmc6IDA7XG59XG5cbi5jLW5hdl9fbGlzdCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xufVxuXG5cbi5jLW5hdl9faXRlbSB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZShiYXNlKTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0bWFyZ2luLXJpZ2h0OiAyJTtcblxuXHQmOmxhc3QtY2hpbGQge1xuXHRcdG1hcmdpbi1yaWdodDogMDtcblx0fVxufVxuXG5cbi5jLW5hdl9fbGluayB7XG5cdEBpbmNsdWRlIGRpc2FibGVPdXRsaW5lRm9yTW91c2U7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZzogbWFwLWdldCgkYy1uYXYsICdsaW5rLXBhZGRpbmcnKTtcblx0Y29sb3I6IG1hcC1nZXQoJHNpdGUtaGVhZGVyLCAndGV4dENvbG9yJyk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogY29sb3IgMTUwbXMgbGluZWFyO1xuXG5cdCY6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IC0xO1xuXHRcdGxlZnQ6IG1hcC1nZXQoJGMtbmF2LCAnbGluay1wYWRkaW5nJyk7XG5cdFx0Ym90dG9tOiAxcHg7XG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtICN7ZG91YmxlKG1hcC1nZXQoJGMtbmF2LCAnbGluay1wYWRkaW5nJykpfSk7XG5cdFx0aGVpZ2h0OiAycHg7XG5cdFx0Ym9yZGVyLXJhZGl1czogMXB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJHNpdGUtaGVhZGVyLCAnZGVjb3JhdGlvbkNvbG9yJyk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZVgoMCk7XG5cdFx0dHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIHJpZ2h0O1xuXHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcyBjdWJpYy1iZXppZXIoMC44NiwgMCwgMC4wNywgMSk7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogbWFwLWdldCgkc2l0ZS1oZWFkZXIsICd0ZXh0Q29sb3JIb3ZlcicpO1xuXG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuXHRcdFx0dHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGxlZnQ7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRzaXRlLWhlYWRlciwgJ2RlY29yYXRpb25Db2xvckhvdmVyJyk7XG5cdFx0fVxuXHR9XG5cblx0Ji5pcy1hY3RpdmUge1xuXHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJHNpdGUtaGVhZGVyLCAndGV4dENvbG9yQWN0aXZlJyk7XG5cblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZVgoMSk7XG5cdFx0XHR0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJHNpdGUtaGVhZGVyLCAnZGVjb3JhdGlvbkNvbG9yQWN0aXZlJyk7XG5cdFx0fVxuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuXHRcdG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAxcHg7XG5cdFx0b3V0bGluZS13aWR0aDogMnB4O1xuXHR9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBQYWdpbmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtcGFnaW5hdGlvbjogKFxuXHQnY29sb3InOlx0XHRcdHBhbGV0dGUobmV1dHJhbCwgODAwKSxcblx0J2FjdGl2ZS1jb2xvcic6XHRcdHBhbGV0dGUocHJpbWFyeSwgNTAwKSxcblx0J2JvcmRlci1jb2xvcic6XHRcdHBhbGV0dGUoYm9yZGVyLCAzMDApLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmMtcGFnaW5hdGlvbiB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhtKTtcblx0Ym9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkYy1wYWdpbmF0aW9uLCAnYm9yZGVyLWNvbG9yJyk7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYy1wYWdpbmF0aW9uX19pdGVtIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cblx0Ly8gT24gc21hbGwgc2NyZWVucyBoaWRlIGFsbCBpdGVtcyBidXQgdGhlIGFycm93cywgZmlyc3QgcGFnZSwgbGFzdCBwYWdlIGFuZCBhY3RpdmVcblx0QGluY2x1ZGUgbXEoJG1heDogbSl7XG5cdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdCY6Zmlyc3QtY2hpbGQsXG5cdFx0JjpsYXN0LWNoaWxkLFxuXHRcdCYuaXMtbGFzdC1wYWdlLFxuXHRcdCYuaXMtYWN0aXZlIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0fVxuXG5cdFx0Ji5pcy1sYXN0LXBhZ2Uge1xuXHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0JiArICYge1xuXHRcdGJvcmRlci1sZWZ0OiAxcHggc29saWQ7XG5cdFx0Ym9yZGVyLWNvbG9yOiBpbmhlcml0O1xuXHR9XG59XG5cbi5jLXBhZ2luYXRpb25fX3RleHQsXG4uYy1wYWdpbmF0aW9uX19saW5rLFxuLmMtcGFnaW5hdGlvbl9fcHJldixcbi5jLXBhZ2luYXRpb25fX25leHR7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRtaW4td2lkdGg6IHNwYWNlKDYpO1xuXHRtaW4taGVpZ2h0OiBzcGFjZSg2KTtcblx0cGFkZGluZzogc3BhY2UoMSk7XG59XG5cbi5jLXBhZ2luYXRpb25fX3RleHQge1xuXHRjb2xvcjogbWFwLWdldCgkYy1wYWdpbmF0aW9uLCAnY29sb3InKTtcblx0b3BhY2l0eTogMC4zNTtcbn1cblxuLmMtcGFnaW5hdGlvbl9fbGluayB7XG5cdGNvbG9yOiBtYXAtZ2V0KCRjLXBhZ2luYXRpb24sICdjb2xvcicpO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRyYW5zaXRpb246IGNvbG9yIDAuMnMsIGJhY2tncm91bmQtY29sb3IgMC4ycztcblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogc2NhbGUtY29sb3IobWFwLWdldCgkYy1wYWdpbmF0aW9uLCAnY29sb3InKSwgJGxpZ2h0bmVzczogLTMwJSk7XG5cdFx0YmFja2dyb3VuZDogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuXHR9XG5cblx0LmlzLWFjdGl2ZSA+ICYge1xuXHRcdGJveC1zaGFkb3c6IGluc2V0IDAgMCAxMHB4IC01cHggbWFwLWdldCgkYy1wYWdpbmF0aW9uLCAnYWN0aXZlLWNvbG9yJyk7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJGMtcGFnaW5hdGlvbiwgJ2FjdGl2ZS1jb2xvcicpO1xuXHRcdGN1cnNvcjogZGVmYXVsdDtcblx0fVxufVxuXG4uYy1wYWdpbmF0aW9uX19wcmV2LFxuLmMtcGFnaW5hdGlvbl9fbmV4dCB7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycztcblx0dHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuXG5cdCYuaXMtaW5hY3RpdmUge1xuXHRcdGNvbG9yOiByZ2JhKG1hcC1nZXQoJGMtcGFnaW5hdGlvbiwgJ2NvbG9yJyksIDAuNCk7XG5cdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdH1cbn1cblxuLmMtcGFnaW5hdGlvbl9fcHJldiB7XG5cdHRyYW5zZm9ybTogcm90YXRlKDAuMjV0dXJuKTtcbn0iLCIvKlxuICogUGFnZSB0aXRsZVxuICovXG5cbi5jLXBhZ2UtdGl0bGUge1xuICBAaW5jbHVkZSBjb250YWluO1xuICBAaW5jbHVkZSBoeXBoZW5hdGU7XG4gIHBhZGRpbmctdG9wOiBzcGFjZSgyKTtcbiAgcGFkZGluZy1ib3R0b206IHNwYWNlKDIpO1xuICBjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA4MDApO1xuXG4gIEBpbmNsdWRlIG1xKG0pIHtcbiAgICBwYWRkaW5nLXRvcDogc3BhY2UoNik7XG4gICAgcGFkZGluZy1ib3R0b206IHNwYWNlKDYpO1xuICB9XG59XG5cbi5jLXBhZ2UtdGl0bGUtLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcblxuICBAaW5jbHVkZSBtcShtKSB7XG4gICAgd2lkdGg6IGNvbHVtbig2LCA4KTtcbiAgfVxuICBAaW5jbHVkZSBtcShsKSB7XG4gICAgd2lkdGg6IGNvbHVtbig4LCAxMik7XG4gIH1cbn1cblxuLmMtcGFnZS10aXRsZV9fcHJlaGVhZGluZyB7XG4gIEBpbmNsdWRlIG1xKG0pIHtcbiAgICBtYXJnaW4tdG9wOiBzcGFjZSgtMSk7XG4gICAgbWFyZ2luLWJvdHRvbTogc3BhY2UoMSk7XG4gIH1cbn1cblxuLmMtcGFnZS10aXRsZV9faGVhZGluZyB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh4eHhsKTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuLmMtcGFnZS10aXRsZV9faGVhZGluZy1zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShsKTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cblxuLmMtcGFnZS10aXRsZV9fc3ViaGVhZGluZyB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShiYXNlKTtcbiAgY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgNDAwKTtcbn0iLCIuYy1wcm9qZWN0b3Ige1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGhlaWdodDogMTAwJTtcbn1cblxuXG4uYy1wcm9qZWN0b3JfX2ZpZ3VyZSB7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtcm93czogMWZyO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblx0aGVpZ2h0OiAxMDAlO1xufVxuXG5cbi5jLXByb2plY3Rvcl9fY2FwdGlvbiB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZShzKTtcblx0Z3JpZC1jb2x1bW46IDE7XG5cdGdyaWQtcm93OiAyO1xuXHR1c2VyLXNlbGVjdDogdGV4dDtcblx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDQwMCk7XG59XG5cblxuLmMtcHJvamVjdG9yX19waWN0dXJlIHtcblx0Z3JpZC1jb2x1bW46IDE7XG5cdGdyaWQtcm93OiAxO1xuXHRhbGlnbi1zZWxmOiBlbmQ7XG5cdGhlaWdodDogMTAwJTtcblx0bWluLWhlaWdodDogMzYwcHg7IC8vIG5lZWRlZCBmb3IgSUVcblx0ZGlzcGxheTogYmxvY2s7IC8vIE5lZWRlZCBmb3IgSUVcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXM7XG5cblx0LmllIC5jLXByb2plY3Rvci0tc2luZ2xlLWltYWdlICYge1xuXHRcdG1pbi1oZWlnaHQ6IDQwMHB4O1xuXHR9XG5cblx0Ji5pcy1hY3RpdmUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cblxuXG4uYy1wcm9qZWN0b3JfX2NvbnRyb2wge1xuXHRncmlkLWNvbHVtbjogMTtcblx0Z3JpZC1yb3c6IDE7XG5cdGFsaWduLXNlbGY6IGVuZDtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMSk7XG5cdG1hcmdpbi1yaWdodDogc3BhY2UoMSk7XG59XG5cblxuLmMtcHJvamVjdG9yX19pbWcge1xuXHQvLyBtYWtlIHN1cmUgaXQgc3RyZXRjaGVzIHRoZSBjb250YWluZXJcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblx0b2JqZWN0LWZpdDogY292ZXI7IC8vIEZhbGxiYWNrIGZvciBJRSB2aWEgSlMgcG9seWZpbGwsIG1pbi1oZWlnaHQgaXMgc2V0IG9uIHRoZSB3cmFwcGVyXG5cblx0QGluY2x1ZGUgbXEoJG1heDogbSkge1xuXHRcdG1heC1oZWlnaHQ6IDc4dmg7IC8vIE1ha2Ugc3VyZSBpbWFnZXMgYXJlIHZpc2libGUgZW50aXJlbHkgb24gc21hbGwgZGV2aWNlcyBpbiBsYW5kc2NhcGUpXG5cdH1cbn0iLCIkYy1zZXJ2aWNlcG9pbnQtYnAtd2lkdGg6IDQyMHB4OyAvLyBzaXplIG9mIGNvbXBvbmVudCB3aGVuIHdlIHN3aXRjaCBmcm9tIHN0YWNrZWQgdG8gcm93IHZpZXdcbiRjLXNlcnZpY2Vwb2ludC1nYXA6IHNwYWNlKDIpO1xuXG5cbi5jLXNlcnZpY2Vwb2ludCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHR0ZXh0LWFsaWduOiBsZWZ0OyAvLyBuZWVkZWQgZm9yIHdoZW4gYSBwYXJlbnQgZWxlbWVudCBoYXMgdGV4dC1hbGlnbiBjZW50ZXJcbn1cblxuXG4uYy1zZXJ2aWNlcG9pbnRfX2ltYWdlIHtcblx0ZmxleDogMDtcblx0bWluLXdpZHRoOiBhdXRvO1xuXHRtYXgtd2lkdGg6IDE3OHB4ICsgJGMtc2VydmljZXBvaW50LWdhcDtcblx0bWFyZ2luLXJpZ2h0OiAkYy1zZXJ2aWNlcG9pbnQtZ2FwO1xuXHRib3JkZXItcmFkaXVzOiAxMDAlO1xufVxuXG5cbi5jLXNlcnZpY2Vwb2ludF9fY29udGVudCB7XG5cdEBpbmNsdWRlIGh5cGhlbmF0ZTtcblx0bWluLXdpZHRoOiA1MCU7IC8vIEhhcyB0byBiZSBtaW5pbWFsIGhhbGYgdGhlIHNpemUgb2YgdGhlIGNvbnRhaW5lclxuXHRtYXgtd2lkdGg6IDEwMCU7XG5cdGZsZXgtZ3JvdzogMTtcblx0ZmxleC1iYXNpczogY2FsYyhjYWxjKCN7JGMtc2VydmljZXBvaW50LWJwLXdpZHRofSAtIDEwMCUpICogOTk5KTsgLy8gQmFzZWQgb24gdGhpcyBtZXRob2Q6IGh0dHBzOi8vaGV5ZG9ud29ya3MuY29tL2FydGljbGUvdGhlLWZsZXhib3gtaG9seS1hbGJhdHJvc3MvXG5cdG1hcmdpbi10b3A6IHNwYWNlKDIpO1xuXHRtYXJnaW4tYm90dG9tOiBzcGFjZSgyKTtcblxuXHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0ZmxleC1iYXNpczogYXV0bztcblx0fVxufVxuXG5cbi5jLXNlcnZpY2Vwb2ludF9fYm9keSB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDEpO1xufVxuXG5cbi5jLXNlcnZpY2Vwb2ludF9fZm9vdGVyIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG59XG5cblxuLmMtc2VydmljZXBvaW50X19oZWFkaW5nIHtcblx0QGluY2x1ZGUgZm9udChiYXNlKTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgNTAwKTtcblx0Ym9yZGVyLXJhZGl1czogMTAwJTtcbn1cblxuXG4uYy1zZXJ2aWNlcG9pbnRfX3N1YmhlYWRpbmcge1xuXHRAaW5jbHVkZSBmb250KHMpO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA0MDApO1xufSIsIi5jLXNpdGVtYXBfX2l0ZW0ge1xuXHRAaW5jbHVkZSBmb250LXNpemUoeGwpO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA1MDApO1xufVxuXG4uYy1zaXRlbWFwX19saW5rIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmc6IHNwYWNlKDAuNSkgMDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdCY6aG92ZXIge1xuXHRcdGNvbG9yOiBwYWxldHRlKHByaW1hcnksIDUwMCk7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdH1cbn0iLCIvKlxuICogU2tpcCBMaW5rXG4gKi9cblxuLmMtc2tpcC1saW5rIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHMpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogLTEwMHZoO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgY29sb3I6IHBhbGV0dGUoZmVlZGJhY2ssIGFjdGlvbik7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgb3V0bGluZS1zdHlsZTogc29saWQ7XG4gICAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgICBvdXRsaW5lLXdpZHRoOiAycHg7XG4gICAgdG9wOiA1cHg7IC8qIE5vdyB0aGUgbGluayB3aWxsIGFwcGVhciAqL1xuICB9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBTbGlkZSBpbmRpY2F0b3Jcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kYy1zbGlkZS1pbmRpY2F0b3I6IChcblx0J2RvdC1jb2xvcic6XHRcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQnZG90LWNvbG9yLWFjdGl2ZSc6XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAxMDAwKSxcblx0J2RvdC1yaW5nLWNvbG9yLWFjdGl2ZSc6XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQnZG90LXNpemUnOlx0XHRcdFx0XHQ4cHgsXG5cdCdkb3Qtc2l6ZS1hY3RpdmUnOlx0XHRcdDZweCxcblx0J2RvdC1yaW5nLXNpemUtYWN0aXZlJzpcdFx0MTJweCxcblx0J2RvdC1zaXplLXRhcmdldGJveCc6XHRcdDMwcHgsXG5cdCdkb3QtaXMtcm91bmRlZCc6XHRcdFx0dHJ1ZSxcblx0J2J1dHRvbi1pY29uLWNvbG9yJzpcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2J1dHRvbi1iZy1jb2xvcic6XHRcdFx0cGFsZXR0ZShzZWNvbmRhcnksIDUwMCksXG5cdCdidXR0b24tYmctY29sb3ItaG92ZXInOlx0c2NhbGVfY29sb3IocGFsZXR0ZShzZWNvbmRhcnksIDUwMCksICRsaWdodG5lc3M6IC0xMCUpLFxuXHQnYnV0dG9uLXNpemUnOlx0XHRcdFx0NDBweCxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5jLXNsaWRlLWluZGljYXRvciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5jLXNsaWRlLWluZGljYXRvcl9fYnV0dG9uIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRib3JkZXI6IG5vbmU7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnYnV0dG9uLWJnLWNvbG9yJyk7XG5cdGNvbG9yOiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2J1dHRvbi1pY29uLWNvbG9yJyk7XG5cdGhlaWdodDogbWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdidXR0b24tc2l6ZScpO1xuXHR3aWR0aDogbWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdidXR0b24tc2l6ZScpO1xuXG5cdCYgKyAmIHtcblx0XHRtYXJnaW4tbGVmdDogOHB4O1xuXHR9XG5cblx0JlthcmlhLWxhYmVsPSdwcmV2aW91cyddID4gc3ZnIHtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG5cdH1cblxuXHQmW2FyaWEtbGFiZWw9J25leHQnXSA+IHN2ZyB7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcblx0fVxuXG5cdCY6aG92ZXIge1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2J1dHRvbi1iZy1jb2xvci1ob3ZlcicpO1xuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZTogbm9uZTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2J1dHRvbi1iZy1jb2xvci1ob3ZlcicpO1xuXHR9XG59XG5cbi5jLXNsaWRlLWluZGljYXRvcl9fZG90IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHdpZHRoOiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1zaXplLXRhcmdldGJveCcpO1xuXHRoZWlnaHQ6IG1hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnZG90LXNpemUtdGFyZ2V0Ym94Jyk7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRib3JkZXI6IG5vbmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciwgb3BhY2l0eTtcblx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZTogbm9uZTtcblx0fVxuXG5cdCY6aG92ZXI6bm90KC5pcy1hY3RpdmUpLFxuXHQmOmZvY3VzOm5vdCguaXMtYWN0aXZlKSB7XG5cdFx0b3BhY2l0eTogMC41O1xuXHR9XG5cblx0JjpiZWZvcmUsXG5cdCY6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xuXHRcdHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgYmFja2dyb3VuZC1jb2xvciwgb3BhY2l0eTtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcblx0XHRAaWYgKG1hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnZG90LWlzLXJvdW5kZWQnKSA9PSB0cnVlKSB7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAxMDAlO1xuXHRcdH1cblx0fVxuXG5cdCY6YmVmb3JlIHtcblx0XHQkb2Zmc2V0OiBjYWxjKCgje21hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnZG90LXNpemUtdGFyZ2V0Ym94Jyl9IC0gI3ttYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1zaXplJyl9KSAvIDIpO1xuXHRcdHRvcDogJG9mZnNldDtcblx0XHRyaWdodDogJG9mZnNldDtcblx0XHRib3R0b206ICRvZmZzZXQ7XG5cdFx0bGVmdDogJG9mZnNldDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1jb2xvcicpO1xuXHR9XG5cblx0JjphZnRlciB7XG5cdFx0JG9mZnNldDogY2FsYygoI3ttYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1zaXplLXRhcmdldGJveCcpfSAtICN7bWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdkb3QtcmluZy1zaXplLWFjdGl2ZScpfSkgLyAyKTtcblx0XHR0b3A6ICRvZmZzZXQ7XG5cdFx0cmlnaHQ6ICRvZmZzZXQ7XG5cdFx0Ym90dG9tOiAkb2Zmc2V0O1xuXHRcdGxlZnQ6ICRvZmZzZXQ7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdkb3QtcmluZy1jb2xvci1hY3RpdmUnKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuNCk7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxuXG5cdCYuaXMtYWN0aXZlIHtcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1jb2xvci1hY3RpdmUnKTtcblx0XHRcdGJvcmRlci1jb2xvcjogcmdiYShtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1yaW5nLWNvbG9yLWFjdGl2ZScpLCAwLjkpO1xuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZShzdHJpcC11bml0KG1hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnZG90LXNpemUtYWN0aXZlJykpIC8gc3RyaXAtdW5pdChtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1zaXplJykpKTtcblx0XHR9XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdG9wYWNpdHk6IDAuOTtcblx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0fVxuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3BhY2l0eTogMSAhaW1wb3J0YW50O1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Ly9iYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNTAwKTtcblx0XHRcdGJveC1zaGFkb3c6IDAgMCAwIDJweCBibGFjaywgMCAwIDEwcHggMXB4IHdoaXRlO1xuXHRcdH1cblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Ly9iYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNTAwKTtcblx0XHRcdGJveC1zaGFkb3c6IDAgMCAwIDJweCBibGFjaywgMCAwIDEwcHggMXB4IHdoaXRlO1xuXHRcdH1cblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogU3VibmF2XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtc3VibmF2OiAoXG5cdCdib3JkZXItY29sb3InOiBcdFx0cGFsZXR0ZShib3JkZXIsIDMwMCksXG5cdCdjb2xvcic6XHRcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDUwMCksXG5cdCdob3Zlci1jb2xvcic6XHRcdFx0cGFsZXR0ZShmZWVkYmFjaywgYWN0aW9uKSxcblx0J2FjdGl2ZS1jb2xvcic6XHRcdFx0cGFsZXR0ZShwcmltYXJ5LCA1MDApLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmMtc3VibmF2IHtcblx0aGVpZ2h0OiAxMDAlO1xufVxuXG5cbi5jLXN1Ym5hdi0tYm94ZWQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRzaXRlLWludHJvLCAnc3VibmF2QmdDb2xvcicpO1xuXHRwYWRkaW5nOiBzcGFjZSgxMCkgJHNpdGUtZ3V0dGVyLXdpZHRoO1xuXG5cdEBpbmNsdWRlIG1xKG0sIGwpe1xuXHRcdHBhZGRpbmctbGVmdDogMjUlO1xuXHR9XG59XG5cblxuLmMtc3VibmF2X19oZWFkZXIge1xuXHRtYXJnaW46IDA7XG59XG5cblxuLmMtc3VibmF2X19saXN0IHtcblx0bWFyZ2luLXRvcDogc3BhY2UoNSk7XG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblx0bWFyZ2luLWxlZnQ6IDA7XG59XG5cblxuLmMtc3VibmF2X19pdGVtLS1iYWNrIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoMyk7XG59XG5cblxuLmMtc3VibmF2X19saW5rIHtcblx0QGluY2x1ZGUgZGlzYWJsZU91dGxpbmVGb3JNb3VzZTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRwYWRkaW5nOiBzcGFjZSgxKSAwO1xuXHRjb2xvcjogbWFwLWdldCgkYy1zdWJuYXYsICdjb2xvcicpO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogY29sb3IgMjUwbXM7XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJGMtc3VibmF2LCAnaG92ZXItY29sb3InKTtcblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0XHRvdXRsaW5lLXN0eWxlOiBzb2xpZDtcblx0XHRvdXRsaW5lLW9mZnNldDogMXB4O1xuXHRcdG91dGxpbmUtd2lkdGg6IDJweDtcblx0fVxuXG5cdCY6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgbWFwLWdldCgkYy1zdWJuYXYsICdib3JkZXItY29sb3InKTtcblxuXHRcdC5jLXN1Ym5hdl9faXRlbS5pcy1hY3RpdmUgJiB7XG5cdFx0XHRib3JkZXItY29sb3I6IG1hcC1nZXQoJGMtc3VibmF2LCAnYWN0aXZlLWNvbG9yJyk7XG5cdFx0XHRib3JkZXItd2lkdGg6IDJweDtcblx0XHR9XG5cdH1cbn1cblxuXG4uYy1zdWJuYXZfX2ljb24ge1xuXHRvcGFjaXR5OiAwO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRtYXJnaW4tbGVmdDogc3BhY2UoMik7XG5cdGNvbG9yOiBtYXAtZ2V0KCRjLXN1Ym5hdiwgJ2JvcmRlci1jb2xvcicpO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoI3tzcGFjZSgtMil9KTtcblx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2Utb3V0O1xuXG5cdC5jLXN1Ym5hdl9fbGluazpob3ZlciAmIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHRjb2xvcjogbWFwLWdldCgkYy1zdWJuYXYsICdob3Zlci1jb2xvcicpO1xuXHR9XG59XG5cblxuLy8gQWN0aXZlIHN0YXRlIG9mIHRoZSBzdWJuYXYgaXRlbVxuLmMtc3VibmF2X19pdGVtLmlzLWFjdGl2ZSB7XG5cdC5jLXN1Ym5hdl9fbGluayB7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJGMtc3VibmF2LCAnYWN0aXZlLWNvbG9yJyk7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRjLXN1Ym5hdiwgJ2FjdGl2ZS1jb2xvcicpO1xuXHRcdFx0Ym9yZGVyLXdpZHRoOiAycHg7XG5cdFx0fVxuXHR9XG5cblx0LmMtc3VibmF2X19pY29uIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBUZXh0IEJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRjLXRleHRidXR0b246IChcblx0J2NvbG9yJzpcdFx0XHRwYWxldHRlKGZlZWRiYWNrLCBhY3Rpb24pLFxuXHQnY29sb3JBbHQnOlx0XHRcdHBhbGV0dGUobmV1dHJhbCwgMCksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLyoqXG4gKiAxLiBDb2xvciBnZXRzIGluaGVyaXRlZCBhbmQgdXNlZCBmb3IgbmVzdGVkIGVsZW1lbnRzIHdpdGggJ2N1cnJlbnRDb2xvcicgcHJvcGVydHlcbiAqIDIuIFJlc2V0IGRlZmF1bHQgYnV0dG9uIHN0eWxpbmdcbiAqL1xuXG4uYy10ZXh0YnV0dG9uIHtcblx0QGluY2x1ZGUgZGlzYWJsZU91dGxpbmVGb3JNb3VzZTtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRjb2xvcjogbWFwLWdldCgkYy10ZXh0YnV0dG9uLCAnY29sb3InKTsgLyogMSAqL1xuXHRwYWRkaW5nOiAwOyAvKiAyICovXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAyICovXG5cdGJvcmRlcjogbm9uZTsgLyogMiAqL1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogY29sb3IgMC4zcztcblxuXHQmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcblx0XHRjb2xvcjogc2NhbGUtY29sb3IobWFwLWdldCgkYy10ZXh0YnV0dG9uLCAnY29sb3InKSwgJGxpZ2h0bmVzczogLTQwJSk7XG5cdH1cblx0JjpkaXNhYmxlZCB7XG5cdFx0b3BhY2l0eTogMC41O1xuXHRcdGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cdH1cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuXHRcdG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAxcHg7XG5cdFx0b3V0bGluZS13aWR0aDogMnB4O1xuXHR9XG59XG5cbi5jLXRleHRidXR0b25fX3RleHQge1xuXHRAaW5jbHVkZSBmb250LXNpemUoYmFzZSk7XG59XG5cbi5jLXRleHRidXR0b25fX2ljb24ge1xuXHRkaXNwbGF5OiBub25lOyAvLyBCeSBkZWZhdWx0IGljb24gaXMgaGlkZGVuXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWFyZ2luLWxlZnQ6IHNwYWNlKDEpO1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcblxuXHQuYy10ZXh0YnV0dG9uOmhvdmVyOm5vdCg6ZGlzYWJsZWQpICYge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpO1xuXHR9XG5cblx0LmMtdGV4dGJ1dHRvbi0taWNvbiAme1xuXHRcdGRpc3BsYXk6IGJsb2NrOyAvLyBTaG93IHdoZW4gaGFzIGljb24gbW9kaWZpZXJcblx0fVxufVxuXG4vLyBDaGFuZ2UgZGlyZWN0aW9uIG9mIGljb24gKGFycm93KVxuLmMtdGV4dGJ1dHRvbi0taXMtcmV2ZXJzZWQge1xuXHQuYy10ZXh0YnV0dG9uX190ZXh0IHsgb3JkZXI6IDI7XHR9XG5cdC5jLXRleHRidXR0b25fX2ljb24ge1xuXHRcdG9yZGVyOiAxO1xuXHRcdHRvcDogMXB4O1xuXHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdG1hcmdpbi1yaWdodDogc3BhY2UoMSk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMC41dHVybik7XG5cdH1cblx0Jjpob3Zlcjpub3QoOmRpc2FibGVkKSAuYy10ZXh0YnV0dG9uX19pY29uIHtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgwLjV0dXJuKSB0cmFuc2xhdGVYKDNweCk7XG5cdH1cbn0iLCIkYy10b2dnbGUtdHJhbnNpdGlvbi1zcGVlZDogMjUwbXM7XG4kYy10b2dnbGUtdHJhbnNpdGlvbi1lYXNlOiBlYXNlLWluLW91dDtcbiRjLXRvZ2dsZS1sZWZ0LXBhZDogc3BhY2UoMTIpO1xuJGMtdG9nZ2xlLXJpZ2h0LXBhZDogc3BhY2UoNik7XG4kYy10b2dnbGUtaG92ZXItY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgOTAwKTtcblxuXG4uYy10b2dnbGUge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRtYXJnaW4tbGVmdDogMDtcbn1cblxuXG4uYy10b2dnbGVfX2l0ZW0ge1xuXHRAaW5jbHVkZSBvd2woc3BhY2UoMikpO1xuXHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKG0pO1xuXHRib3JkZXI6IDFweCBzb2xpZCBwYWxldHRlKG5ldXRyYWwsIDMwMCk7XG59XG5cblxuLmMtdG9nZ2xlX190aXRsZSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1sZWZ0OiAkYy10b2dnbGUtbGVmdC1wYWQ7XG5cblx0JltkYXRhLXRvZ2dsZS1pZF0ge1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0fVxufVxuXG5cbi5jLXRvZ2dsZV9faWNvbiB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAxOHB4O1xuXHRsZWZ0OiBjYWxjKCN7aGFsdmUoJGMtdG9nZ2xlLWxlZnQtcGFkKX0pO1xuXHR3aWR0aDogMjBweDtcblx0aGVpZ2h0OiAyMHB4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRjb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA3MDApO1xuXHRib3JkZXI6IDJweCBzb2xpZCBjdXJyZW50Q29sb3I7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblx0dHJhbnNpdGlvbjogYWxsIDE1MG1zIGxpbmVhcjtcblxuXHQmID4gc3ZnIHtcblx0XHR3aWR0aDogMTBweDtcblx0fVxuXG5cdCYucGx1cyB7IGRpc3BsYXk6IGZsZXg7IH1cblxuXHQuYy10b2dnbGVfX3RpdGxlLmlzLWFjdGl2ZSAmIHtcblx0XHQmLnBsdXMgeyBkaXNwbGF5OiBub25lOyB9XG5cdFx0Ji5taW51cyB7IGRpc3BsYXk6IGZsZXg7IH1cblx0fVxuXG5cdCYuY2hlY2sge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0Ym9yZGVyOiBub25lO1xuXG5cdFx0JiA+IHN2ZyB7XG5cdFx0XHR3aWR0aDogMjRweDtcblx0XHR9XG5cdH1cblxuXHQuYy10b2dnbGVfX3RpdGxlW2RhdGEtdG9nZ2xlLWlkXTpub3QoLmlzLWFjdGl2ZSk6aG92ZXIgJiB7XG5cdFx0Y29sb3I6ICRjLXRvZ2dsZS1ob3Zlci1jb2xvcjtcblx0fVxufVxuXG5cbi5jLXRvZ2dsZV9fbGFiZWwge1xuXHRAaW5jbHVkZSBmb250LXNpemUoYmFzZSk7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdHBhZGRpbmc6IHNwYWNlKDIpIDA7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRjb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA3MDApO1xuXHR0cmFuc2l0aW9uOiBhbGwgMTUwbXMgbGluZWFyO1xuXG5cdC5jLXRvZ2dsZV9fdGl0bGVbZGF0YS10b2dnbGUtaWRdOm5vdCguaXMtYWN0aXZlKTpob3ZlciAmIHtcblx0XHRjb2xvcjogJGMtdG9nZ2xlLWhvdmVyLWNvbG9yO1xuXHR9XG59XG5cblxuLmMtdG9nZ2xlX19jb250ZW50IHtcblx0bWF4LWhlaWdodDogMDtcblx0b3BhY2l0eTogMDtcblx0cGFkZGluZy1sZWZ0OiAkYy10b2dnbGUtbGVmdC1wYWQ7XG5cdHBhZGRpbmctcmlnaHQ6ICRjLXRvZ2dsZS1yaWdodC1wYWQ7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lOyAvLyBOZWVkZWQgc28gd2UgZG9uJ3QgY2xpY2sgb24gaXQgd2hlbiBpdCBpcyBoaWRkZW5cblx0dHJhbnNpdGlvbjogYWxsICRjLXRvZ2dsZS10cmFuc2l0aW9uLXNwZWVkICRjLXRvZ2dsZS10cmFuc2l0aW9uLWVhc2U7XG5cblx0LmlzLWFjdGl2ZSB+ICYge1xuXHRcdHBhZGRpbmctYm90dG9tOiBzcGFjZSgyKTtcblx0XHRtYXgtaGVpZ2h0OiAxMDAwcHg7XG5cdFx0b3BhY2l0eTogMTtcblx0XHRwb2ludGVyLWV2ZW50czogYWxsO1xuXHR9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBUcmFkZW1hcmtcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kby10cmFkZW1hcms6IChcblx0J2xvZ28td2lkdGgnOlx0XHQxMDBweFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5jLXRyYWRlbWFyayB7XG5cdEBpbmNsdWRlIGRpc2FibGVPdXRsaW5lRm9yTW91c2U7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0cmFuc2l0aW9uOiBjb2xvciAyMDBtcyA7XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG5cdFx0b3V0bGluZS1zdHlsZTogc29saWQ7XG5cdFx0b3V0bGluZS1vZmZzZXQ6IDFweDtcblx0XHRvdXRsaW5lLXdpZHRoOiAycHg7XG5cdH1cbn1cblxuLmMtdHJhZGVtYXJrX190ZXh0IHtcblx0bWFyZ2luLXJpZ2h0OiA3cHg7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5jLXRyYWRlbWFya19faWNvbiB7XG5cdHdpZHRoOiBtYXAtZ2V0KCRvLXRyYWRlbWFyaywgJ2xvZ28td2lkdGgnKTtcblx0bWF4LWhlaWdodDogMzJweDtcblx0b3BhY2l0eTogLjU7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXM7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcblxuXHQuYy10cmFkZW1hcms6aG92ZXIgJiB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxufSIsIi5jLXZhY2FuY3ktcHJvcGVydGllcyB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0bWFyZ2luLWxlZnQ6IDA7XG59XG5cblxuLmMtdmFjYW5jeS1wcm9wZXJ0aWVzX19pdGVtIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Y29sb3I6IHBhbGV0dGUoZmVlZGJhY2ssIGFjdGlvbik7XG5cdG1hcmdpbi10b3A6IDRweDtcblx0bWFyZ2luLWJvdHRvbTogNHB4O1xuXG5cdCY6bnRoLWxhc3QtY2hpbGQobisyKSB7XG5cdFx0bWFyZ2luLXJpZ2h0OiBzcGFjZSg0KTtcblx0fVxufVxuXG5cbi5jLXZhY2FuY3ktcHJvcGVydGllc19faWNvbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHdpZHRoOiAyNHB4O1xuXHRoZWlnaHQ6IDI0cHg7XG5cdG1hcmdpbi1yaWdodDogc3BhY2UoMSk7XG59IiwiLmMtdmlkZW97XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgLy8gQXNwZWN0IFJhdGlvOiAxNjo5XG4gIGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMjAwKTtcbn1cblxuLmMtdmlkZW9fX2lmcmFtZXtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59IiwiLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBPcmdhbmlzbXNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG5AaW1wb3J0IFwib3JnYW5pc21zLmFjY29yZGlvblwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5hcHBseVwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5ibG9ja1wiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5ib2R5XCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmNhbGxvdXRCYXJcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuY2FyZC1ncmlkXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmNvbnRhY3RcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuY29va2llQmFyXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmRvdWJsZUltYWdlXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmRvdWJsZVRleHRcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuZG91YmxlVXNwXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmRvd25sb2Fkc1wiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5ldmVudFwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5ldmVudHNcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuZm9vdGVyXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmZvcm1cIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuaGVhZGVyXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmludHJvXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmxvZ29zXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLm1hcFwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5uZXdzXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLm92ZXJsYXlNZW51XCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLnF1b3RlXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLnJlZmVyZW5jZXNcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuc3ViZm9vdGVyXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLnRhYnNsaWRlclwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy50ZWFtXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLnRoYW5rc1wiO1xuLy9AaW1wb3J0IFwib3JnYW5pc21zLnRvcC1iYXJcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMudXNwXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLnZhY2FuY2llc1wiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy52YWNhbmN5XCI7XG4iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IEFjY29yZGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRvLWFjY29yZGlvbjogKFxuXHQnYm9yZGVyLXdpZHRoJzpcdFx0XHQxcHgsXG5cdCdib3JkZXItY29sb3InOlx0XHRcdHBhbGV0dGUoYm9yZGVyLCAzMDApLFxuXHQnaGVhZGVyLWNvbG9yJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDEwMDApLFxuXHQnaG92ZXItY29sb3InOiBcdFx0XHRwYWxldHRlKHByaW1hcnksIDUwMCksXG5cdCdpY29uLWNvbG9yJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDEwMDApLFxuXHQnaWNvbi1ib3JkZXItc2l6ZSc6IFx0MnB4LFxuXHQnaWNvbi1zaXplJzpcdFx0XHQyMHB4LFxuXHQnaWNvbi1zdHJpcGUtaGVpZ2h0JzpcdDJweCxcblx0J2ljb24tc3RyaXBlLXdpZHRoJzogIFx0MTBweCxcblx0J3RyYW5zaXRpb24tZHVyYXRpb24nOlx0NDAwbXMsXG5cdCd0cmFuc2l0aW9uLWVhc2luZyc6XHRjdWJpYy1iZXppZXIoMC44NiwgMCwgMC4wNywgMSksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uby1hY2NvcmRpb24ge1xuXHRAaW5jbHVkZSBjb250YWluO1xufVxuXG4uby1hY2NvcmRpb25fX2l0ZW0ge1xuXHRAaW5jbHVkZSBvd2woc3BhY2UoMikpO1xuXHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKG0pO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGJvcmRlci1zdHlsZTogc29saWQ7XG5cdGJvcmRlci13aWR0aDogbWFwLWdldCgkby1hY2NvcmRpb24sICdib3JkZXItd2lkdGgnKTtcblx0Ym9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2JvcmRlci1jb2xvcicpO1xuXHR0cmFuc2l0aW9uLXByb3BlcnR5OiBib3JkZXI7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zO1xuXG5cdCY6bm90KC5pcy1hY3RpdmUpOmhvdmVyIHtcblx0XHRib3JkZXItY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNTAwKTtcblx0fVxufVxuXG4uby1hY2NvcmRpb25fX3RpdGxlIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRwYWRkaW5nLXRvcDogc3BhY2UoMik7XG5cdHBhZGRpbmctcmlnaHQ6IHNwYWNlKDMpO1xuXHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoMik7XG5cdHBhZGRpbmctbGVmdDogc3BhY2UoNik7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2hlYWRlci1jb2xvcicpO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cblx0QGluY2x1ZGUgbXEobSl7XG5cdFx0cGFkZGluZy1sZWZ0OiBjb2x1bW4oMSw4KTtcblx0fVxuXHRAaW5jbHVkZSBtcShsKXtcblx0XHRwYWRkaW5nLWxlZnQ6IGNvbHVtbigxLDEyKTtcblx0fVxuXG5cdC8vIE9ubHkgc2V0IGhvdmVyIGNvbG9yIHdoZW4gbm90IGFjdGl2ZVxuXHQuby1hY2NvcmRpb25fX2l0ZW06bm90KC5pcy1hY3RpdmUpICY6aG92ZXIge1xuXHRcdGNvbG9yOiBtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2hvdmVyLWNvbG9yJyk7XG5cdH1cbn1cblxuLm8tYWNjb3JkaW9uX19pY29uIHtcblx0ZmxleDogMCAwIGF1dG87XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiBhdXRvO1xuXHRsZWZ0OiAoc3BhY2UoMykgLSBoYWx2ZShtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2ljb24tc2l6ZScpKSk7XG5cdHdpZHRoOiBtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2ljb24tc2l6ZScpO1xuXHRoZWlnaHQ6IG1hcC1nZXQoJG8tYWNjb3JkaW9uLCAnaWNvbi1zaXplJyk7XG5cdGNvbG9yOiBpbmhlcml0O1xuXHRib3JkZXItY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0Ym9yZGVyLXdpZHRoOiBtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2ljb24tYm9yZGVyLXNpemUnKTtcblx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcblx0Ym9yZGVyLXJhZGl1czogMTAwJTtcblx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zO1xuXHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcblxuXHRAaW5jbHVkZSBtcShtKXtcblx0XHRsZWZ0OiBjYWxjKCN7Y29sdW1uKDAuNSwgOCl9IC0gI3toYWx2ZShtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2ljb24tc2l6ZScpKX0pO1xuXHR9XG5cdEBpbmNsdWRlIG1xKGwpe1xuXHRcdGxlZnQ6IGNhbGMoI3tjb2x1bW4oMC41LCAxMil9IC0gI3toYWx2ZShtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2ljb24tc2l6ZScpKX0pO1xuXHR9XG5cblx0Jjo6YmVmb3JlLFxuXHQmOjphZnRlciB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGhlaWdodDogbWFwLWdldCgkby1hY2NvcmRpb24sICdpY29uLXN0cmlwZS1oZWlnaHQnKTtcblx0XHR3aWR0aDogbWFwLWdldCgkby1hY2NvcmRpb24sICdpY29uLXN0cmlwZS13aWR0aCcpO1xuXHRcdGxlZnQ6IGhhbHZlKG1hcC1nZXQoJG8tYWNjb3JkaW9uLCAnaWNvbi1zaXplJykgLSBtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2ljb24tc3RyaXBlLXdpZHRoJykgLSAoZG91YmxlKG1hcC1nZXQoJG8tYWNjb3JkaW9uLCAnaWNvbi1ib3JkZXItc2l6ZScpKSkpO1xuXHRcdHRvcDogY2FsYyg1MCUgLSAje2hhbHZlKG1hcC1nZXQoJG8tYWNjb3JkaW9uLCAnaWNvbi1ib3JkZXItc2l6ZScpKX0pO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0XHR0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLCB0cmFuc2Zvcm07XG5cdFx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXMsIG1hcC1nZXQoJG8tYWNjb3JkaW9uLCAndHJhbnNpdGlvbi1kdXJhdGlvbicpO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLCBtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ3RyYW5zaXRpb24tZWFzaW5nJyk7XG5cdH1cblxuXHQmOjpiZWZvcmUge1xuXHRcdC5vLWFjY29yZGlvbl9faXRlbS5pcy1hY3RpdmUgJiB7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlWCgwKSByb3RhdGUoMC4yNXR1cm4pO1xuXHRcdH1cblx0fVxuXG5cdCY6OmFmdGVyIHtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgwLjI1dHVybik7XG5cblx0XHQuby1hY2NvcmRpb25fX2l0ZW0uaXMtYWN0aXZlICYge1xuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMC41dHVybik7XG5cdFx0fVxuXHR9XG59XG5cbi5vLWFjY29yZGlvbl9faGVhZGVyIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKGJhc2UpO1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRjb2xvcjogaW5oZXJpdDtcblx0dGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuXHR0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjtcblx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG5cdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoeGwpO1xuXHR9XG59XG5cbi8qIEhpZGRlbiBieSBkZWZhdWx0Ki9cbi5vLWFjY29yZGlvbl9fY29udGVudCB7XG5cdEBpbmNsdWRlIG93bC1jaGlsZHJlbjtcblx0b3BhY2l0eTogMDtcblx0bWF4LWhlaWdodDogMDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cGFkZGluZy1sZWZ0OiBzcGFjZSg2KTtcblx0cGFkZGluZy1yaWdodDogc3BhY2UoMyk7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuXHQvLyBDbG9zZSBhbmltYXRpb25cblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG5cblx0QGluY2x1ZGUgbXEobSl7XG5cdFx0cGFkZGluZy1sZWZ0OiBjb2x1bW4oMSw4KTtcblx0fVxuXHRAaW5jbHVkZSBtcShsKXtcblx0XHRwYWRkaW5nLWxlZnQ6IGNvbHVtbigxLDEyKTtcblx0fVxuXG5cdC5vLWFjY29yZGlvbl9faXRlbS5pcy1hY3RpdmUgJiB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHRtYXgtaGVpZ2h0OiA0MDBweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoNCk7XG5cdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdC8vIE9wZW4gYW5pbWF0aW9uICh3aXRoIHRoZSBzYW1lIGRlbGF5IGFzIGNsb3NlIGR1cmF0aW9uKVxuXHRcdHRyYW5zaXRpb24tcHJvcGVydHk6IGFsbDtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ3RyYW5zaXRpb24tZHVyYXRpb24nKTtcblx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG5cdFx0dHJhbnNpdGlvbi1kZWxheTogMC4ycztcblx0fVxufSIsIiRvLWFwcGx5LWJwMTogNzAwO1xuJG8tYXBwbHktZ2FwOiBzcGFjZSg2KTtcblxuXG4uby1hcHBseSB7XG5cdEBpbmNsdWRlIHZzcGFjaW5nKFxuXHRcdCdwYWRkaW5nLXRvcCcgMC41LFxuXHRcdCdwYWRkaW5nLWJvdHRvbScgMVxuXHQpO1xufVxuXG4uby1hcHBseV9faGVhZGluZyB7XG5cdHBhZGRpbmctYm90dG9tOiBzcGFjZSg2KTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgOTAwKTtcbn1cblxuXG4uby1hcHBseV9fYm9keSB7XG5cdEBpbmNsdWRlIG1xKCRvLWFwcGx5LWJwMSkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdH1cbn1cblxuXG4uby1hcHBseV9fbGVmdCB7XG5cdEBpbmNsdWRlIG1xKCRvLWFwcGx5LWJwMSkge1xuXHRcdHdpZHRoOiBjYWxjKCN7Y29sdW1uKDYsMTIpfSArICN7JG8tYXBwbHktZ2FwfSk7XG5cdFx0cGFkZGluZy1yaWdodDogJG8tYXBwbHktZ2FwO1xuXHR9XG59XG5cblxuLm8tYXBwbHlfX3JpZ2h0IHtcblx0bWFyZ2luLXRvcDogc3BhY2UoMik7XG5cblx0QGluY2x1ZGUgbXEoJG8tYXBwbHktYnAxKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig2LDEyKTtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHR9XG59XG5cblxuLm8tYXBwbHlfX3JvdyB7XG5cdEBpbmNsdWRlIG93bChzcGFjZSgyKSk7XG59XG5cblxuLm8tYXBwbHlfX2ZpbGV1cGxvYWQge1xuXHRAaW5jbHVkZSBtcSgkby1hcHBseS1icDEpIHtcblx0XHRtYXJnaW4tdG9wOiBzcGFjZSg1KTtcblx0fVxufVxuXG5cbi5vLWFwcGx5X19mb290ZXIge1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgcGFsZXR0ZShuZXV0cmFsLCAzMDApO1xuXHRtYXJnaW4tdG9wOiBzcGFjZSg2KTtcblx0cGFkZGluZy10b3A6IHNwYWNlKDYpO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5vLWFwcGx5X19mZWVkYmFjayB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDQpO1xufSIsIi5vLWJsb2NrIHtcblx0QGluY2x1ZGUgdnNwYWNpbmcoXG5cdFx0XHQnbWFyZ2luLWJvdHRvbScgMVxuXHQpO1xuXG5cdC8vIFRvcCBtYXJnaW4gb25seSBvbiBjb25zZWN1dGl2ZSBibG9ja3Ncblx0JiArICYge1xuXHRcdEBpbmNsdWRlIHZzcGFjaW5nKFxuXHRcdFx0XHQnbWFyZ2luLXRvcCcgMVxuXHRcdCk7XG5cdH1cbn0iLCIgLypcbiAqIFdyYXBwZXIgb2YgdGhlIG1haW4gYm9keVxuICogKGJldHdlZW4gdGhlIGhlYWRlciBhbmQgdGhlIGZvb3RlcilcbiAqL1xuXG5cbi5vLWJvZHkge1xuXHRAaW5jbHVkZSB6KHotYm9keSk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZmxleDogMCAwIGF1dG87XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBDYWxsb3V0IGJhclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRvLWNhbGxvdXQtYmFyOiAoXG5cdCdjb2xvcic6ICBcdFx0cGFsZXR0ZShuZXV0cmFsLCA4MDApLFxuXHQnYmdjb2xvcic6ICBcdHBhbGV0dGUobmV1dHJhbCwgMTAwKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5vLWNhbGxvdXQtYmFyIHtcblx0QGluY2x1ZGUgaHlwaGVuYXRlO1xuXHRjb2xvcjogbWFwLWdldCgkby1jYWxsb3V0LWJhciwgJ2NvbG9yJyk7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG8tY2FsbG91dC1iYXIsICdiZ2NvbG9yJyk7XG4gIFx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uby1jYWxsb3V0LWJhcl9fbWFpbiB7XG5cdEBpbmNsdWRlIGNvbnRhaW47XG4gICAgQGluY2x1ZGUgdnNwYWNpbmcoXG4gICAgICAgICdwYWRkaW5nLXRvcCcgMSxcbiAgICAgICAgJ3BhZGRpbmctYm90dG9tJyAxXG4gICAgKTtcblxuXHQvLyBWZXJ0aWNhbCBzcGFjaW5nIGZvciBlbGVtZW50cyB0aGF0IHByb2NlZWQgYW5vdGhlciBlbGVtZW50XG5cdCYgPiAqICsgKiB7XG5cdFx0QGluY2x1ZGUgdnNwYWNpbmcoXG5cdFx0XHQnbWFyZ2luLXRvcCcgMC41XG5cdFx0KTtcblx0fVxufVxuXG5cbi5vLWNhbGxvdXQtYmFyX19ib2R5IHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5cbi5vLWNhbGxvdXQtYmFyX19oZWFkaW5nIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHh4bCk7XG59IiwiLypcbiAqIENhcmQgZ3JpZFxuICpcbiAqL1xuXG4kby1jYXJkLWdyaWQtaXRlbXMtbTogICAyOyAvLyBOdW1iZXIgb2YgY2FyZHMgd2hlbiBpbiBtZWRpdW0gdmlld3BvcnRcbiRvLWNhcmQtZ3JpZC1pdGVtcy1sOiAgIDM7IC8vIE51bWJlciBvZiBjYXJkcyB3aGVuIGluIGxhcmdlIHZpZXdwb3J0XG4kby1jYXJkLWdyaWQtbS1icDogICAgICA2MDA7IC8vIEN1c3RvbSBicmVha3BvaW50IHdoZW4gc3dpdGNoaW5nIGZyb20gc3RhY2tlZCBjYXJkcyB0byByb3dzXG4kby1jYXJkLWdyaWQtc3BhY2luZzogICBzcGFjZSg0KTtcblxuJG8tY2FyZC1ncmlkLXNpemUtbTogICAgcGVyY2VudGFnZSgxLyRvLWNhcmQtZ3JpZC1pdGVtcy1tKTtcbiRvLWNhcmQtZ3JpZC1zaXplLWw6ICAgIHBlcmNlbnRhZ2UoMS8kby1jYXJkLWdyaWQtaXRlbXMtbCk7XG5cblxuXG4uby1jYXJkLWdyaWRfX21haW4ge1xuICBAaW5jbHVkZSBtcSgkby1jYXJkLWdyaWQtbS1icCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG59XG5cbi5vLWNhcmQtZ3JpZF9faXRlbSB7XG5cbiAgLy8gQ3JlYXRlIG5pY2UgdmVydGljYWwgc3BhY2luZyBvbiBtb2JpbGVcbiAgQGluY2x1ZGUgbXEoJG1heDogJG8tY2FyZC1ncmlkLW0tYnApe1xuICAgICYgKyAmIHtcbiAgICAgIG1hcmdpbi10b3A6IHNwYWNlKDQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNpbmdsZSBjb2x1bW4gKHN0YWNrZWQpXG4gIEBpbmNsdWRlIG1xKCRtYXg6ICRvLWNhcmQtZ3JpZC1tLWJwKSB7XG4gICAgbWF4LXdpZHRoOiAzNDRweDsgLy8gY29uc3RyYWluIHRoZSB3aWR0aCBvZiB0aGUgY2FyZCBpbnNpZGVcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gIC8vIFR3byBjb2x1bW5zXG4gIEBpbmNsdWRlIG1xKCRvLWNhcmQtZ3JpZC1tLWJwLCAkbWF4OiBsKSB7XG4gICAgZmxleDogMDtcbiAgICAvLyBXZSBjYWxjdWxhdGUgdGhlIHNpemUgb2YgdGhlIGl0ZW0gYmFzZWQgb24gdGhlIHNldHRpbmdzIGFuZCBwdXQgaXQgaW4gYSBsb25naGFuZCBmbGV4IHZhbHVlIGJlY2F1c2Ugb2YgSUUgc3VwcG9ydFxuICAgIGZsZXgtYmFzaXM6IGNhbGMoI3skby1jYXJkLWdyaWQtc2l6ZS1tfSAtICgoI3skby1jYXJkLWdyaWQtaXRlbXMtbX0gLSAxKSAvICN7JG8tY2FyZC1ncmlkLWl0ZW1zLW19ICogI3skby1jYXJkLWdyaWQtc3BhY2luZ30pKTtcbiAgICBtYXJnaW4tbGVmdDogI3skby1jYXJkLWdyaWQtc3BhY2luZ307XG5cbiAgICAmOm50aC1jaGlsZCgjeyRvLWNhcmQtZ3JpZC1pdGVtcy1tfW4gKyAxKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZChuICsgI3skby1jYXJkLWdyaWQtaXRlbXMtbSArIDF9KSB7XG4gICAgICBtYXJnaW4tdG9wOiAjeyRvLWNhcmQtZ3JpZC1zcGFjaW5nfTtcbiAgICB9XG4gIH1cblxuICAvLyBGb3VyIGNvbHVtbnNcbiAgQGluY2x1ZGUgbXEobCkge1xuICAgIGZsZXg6IDA7XG4gICAgLy8gV2UgY2FsY3VsYXRlIHRoZSBzaXplIG9mIHRoZSBpdGVtIGJhc2VkIG9uIHRoZSBzZXR0aW5ncyBhbmQgcHV0IGl0IGluIGEgbG9uZ2hhbmQgZmxleCB2YWx1ZSBiZWNhdXNlIG9mIElFIHN1cHBvcnRcbiAgICBmbGV4LWJhc2lzOiBjYWxjKCN7JG8tY2FyZC1ncmlkLXNpemUtbH0gLSAoKCN7JG8tY2FyZC1ncmlkLWl0ZW1zLWx9IC0gMSkgLyAjeyRvLWNhcmQtZ3JpZC1pdGVtcy1sfSAqICN7JG8tY2FyZC1ncmlkLXNwYWNpbmd9KSk7XG4gICAgbWFyZ2luLWxlZnQ6ICN7JG8tY2FyZC1ncmlkLXNwYWNpbmd9O1xuXG4gICAgJjpudGgtY2hpbGQoI3skby1jYXJkLWdyaWQtaXRlbXMtbH1uICsgMSkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQobiArICN7JG8tY2FyZC1ncmlkLWl0ZW1zLWwgKyAxfSkge1xuICAgICAgbWFyZ2luLXRvcDogJG8tY2FyZC1ncmlkLXNwYWNpbmc7XG4gICAgfVxuICB9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBDb250YWN0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJG8tY29udGFjdDogKFxuXHQnYmdjb2xvci1mb3JtJzpcdFx0cGFsZXR0ZShuZXV0cmFsLCAxMDApLFxuXHQnYnAtbGFyZ2UnOlx0XHRcdDEwNDBcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uby1jb250YWN0IHtcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdEBpbmNsdWRlIG1xKG1hcC1nZXQoJG8tY29udGFjdCwgJ2JwLWxhcmdlJykpIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdHdpZHRoOiBjYWxjKCgxMDAlIC8gI3skc2l0ZS1jb2x1bW5zLWwgKyAyfSkgKiAjeyRzaXRlLWNvbHVtbnMtbH0pO1xuXHRcdG1heC13aWR0aDogI3skc2l0ZS1tYXgtd2lkdGh9cHg7XG5cdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHR9XG59XG5cblxuLm8tY29udGFjdF9faW5mbyB7XG5cdEBpbmNsdWRlIGd1dHRlclBhZGRpbmcobSk7XG5cdEBpbmNsdWRlIGd1dHRlclBhZGRpbmcobCk7XG5cdHBhZGRpbmctdG9wOiBzcGFjZSg0KTtcblx0cGFkZGluZy1sZWZ0OiAkc2l0ZS1ndXR0ZXItd2lkdGg7XG5cdHBhZGRpbmctcmlnaHQ6ICRzaXRlLWd1dHRlci13aWR0aDtcblxuXG5cdEBpbmNsdWRlIG1xKG1hcC1nZXQoJG8tY29udGFjdCwgJ2JwLWxhcmdlJykpIHtcblx0XHR3aWR0aDogY29sdW1uKDYsMTIpO1xuXHRcdHBhZGRpbmctdG9wOiBzcGFjZSg2KTtcblx0XHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoNik7XG5cdFx0cGFkZGluZy1yaWdodDogc3BhY2UoMSk7XG5cdH1cbn1cblxuLm8tY29udGFjdF9fZm9ybSB7XG5cdEBpbmNsdWRlIGd1dHRlclBhZGRpbmcobSk7XG5cdEBpbmNsdWRlIGd1dHRlclBhZGRpbmcobCk7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDQpO1xuXHRwYWRkaW5nOiBzcGFjZSg0KSAkc2l0ZS1ndXR0ZXItd2lkdGg7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG8tY29udGFjdCwgJ2JnY29sb3ItZm9ybScpO1xuXG5cdEBpbmNsdWRlIG1xKG1hcC1nZXQoJG8tY29udGFjdCwgJ2JwLWxhcmdlJykpIHtcblx0XHR3aWR0aDogY29sdW1uKDYsMTIpO1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0cGFkZGluZy10b3A6IHNwYWNlKDYpO1xuXHR9XG59XG5cbi5vLWNvbnRhY3RfX2hlYWRlciB7XG5cdEBpbmNsdWRlIGh5cGhlbmF0ZTtcblx0QGluY2x1ZGUgZm9udC1zaXplKHh4bCk7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDQpO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA4MDApO1xufVxuXG4uby1jb250YWN0X19jYXJkIHtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoNSk7XG59XG5cbi5vLWNvbnRhY3RfX2FkZHJlc3Mge1xuXHRtYXJnaW4tdG9wOiBzcGFjZSgzKTtcbn1cblxuLm8tY29udGFjdF9fbnVtYmVycyB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDIpO1xufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogQ29va2llYmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJG8tY29va2llLWJhcjogKFxuXHQnYmdjb2xvcic6XHRcdHBhbGV0dGUobmV1dHJhbCwgOTAwKSxcblx0J2NvbG9yJzpcdFx0cGFsZXR0ZShuZXV0cmFsLCA0MDApLFxuKTtcblxuLm8tY29va2llLWJhciB7XG5cdHotaW5kZXg6IC0xOyAvLyBub3Qgc2VsZWN0YWJsZVxuXHRkaXNwbGF5OiBub25lOyAvLyBoaWRlIGJ5IGRlZmF1bHRcblx0cG9zaXRpb246IGZpeGVkO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IDA7XG5cdGhlaWdodDogJHNpdGUtY29va2llQmFyLWhlaWdodDtcblx0d2lkdGg6IDEwMCU7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG8tY29va2llLWJhciwgJ2JnY29sb3InKTtcblx0b3BhY2l0eTogMTtcblx0Ym94LXNoYWRvdzogMCAtNHB4IDZweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzLCB0cmFuc2Zvcm0gMC42cztcblx0dHJhbnNmb3JtOiBub25lO1xuXG5cdC8vIFdoZW4gY29va2llcyBhcmUgbm90IHlldCBhY2NlcHRlZCwgc2hvdyBjb29raWViYXJcblx0Jjpub3QoLmlzLWFjY2VwdGVkKSB7XG5cdFx0QGluY2x1ZGUgeih6LWNvb2tpZSk7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0fVxuXG5cdCYuaXMtdHJhbnNpdGlvbmluZy1vdXQge1xuXHRcdHotaW5kZXg6IC0xOyAvLyBub3Qgc2VsZWN0YWJsZVxuXHRcdG9wYWNpdHk6IDA7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSk7XG5cdH1cbn1cblxuLm8tY29va2llLWJhcl9fbWFpbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXG5cdEBpbmNsdWRlIG1xKCRtYXg6IDM3NCkge1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMC45KTtcblx0fVxufVxuXG4uby1jb29raWUtYmFyX190ZXh0IHtcblx0bWFyZ2luOiAwO1xuXHRjb2xvcjogbWFwLWdldCgkby1jb29raWUtYmFyLCAnY29sb3InKTtcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiAzNzUpIHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoeHMpO1xuXHR9XG59XG5cbi5vLWNvb2tpZS1iYXJfX2xpbmsge1xuXHRjb2xvcjogaW5oZXJpdDtcblx0dHJhbnNpdGlvbjogY29sb3IgMC4zcztcblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogcmdiYShtYXAtZ2V0KCRvLWNvb2tpZS1iYXIsICdjb2xvcicpLCAwLjc1KTtcblx0fVxufVxuXG4uby1jb29raWUtYmFyX19idXR0b24ge1xuXHRmbGV4OiBub25lO1xuXHRtYXJnaW4tbGVmdDogc3BhY2UoNSk7XG5cblx0QGluY2x1ZGUgbXEoJG1heDogbSkge1xuXHRcdG1hcmdpbi1sZWZ0OiBzcGFjZSgyKTtcblx0fVxufSIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogRG91YmxlIGltYWdlIGluIDIgZXF1YWwgY29sdW1uc1xuICpcbiAqIFVudGlsIHZpZXdwb3J0IGlzIHdpZGUgZW5vdWdoIHRoZSBwaWN0dXJlcyBhcmUgc3RhY2tlZCB2ZXJ0aWNhbGx5XG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuJG8tZG91YmxlLWltYWdlLWJwMTogMTEwMDtcblxuLm8tZG91YmxlLWltYWdlIHtcblx0bWFyZ2luOiAtMXB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblxuXHQvLyBTZXQgc2lkZSBieSBzaWRlIGZyb20gbWVkaXVtIHZpZXdwb3J0cyBhbmQgdXBcblx0QGluY2x1ZGUgbXEoJG8tZG91YmxlLWltYWdlLWJwMSkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdH1cbn1cblxuXG4uby1kb3VibGUtaW1hZ2VfX3BpY3R1cmUge1xuXHRkaXNwbGF5OiBibG9jaztcblx0bWFyZ2luOiAxcHg7XG5cdG9yZGVyOiAxO1xuXHRtaW4taGVpZ2h0OiAzNjBweDsgLy8gbmVlZGVkIGZvciBJRVxuXG5cdEBpbmNsdWRlIG1xKCRvLWRvdWJsZS1pbWFnZS1icDEpIHtcblx0XHR3aWR0aDogY29sdW1uKDYsIDEyKTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRcdH1cblx0fVxufVxuXG5cbi5vLWRvdWJsZS1pbWFnZV9faW1nIHtcblx0b2JqZWN0LWZpdDogY292ZXI7IC8vIEZhbGxiYWNrIGZvciBJRSB2aWEgSlMgcG9seWZpbGwsIG1pbi1oZWlnaHQgY2FuIGJlIG5lZWRlZC4uXG5cdG1heC1oZWlnaHQ6IDg1dmg7XG59XG5cblxuLm8tZG91YmxlLWltYWdlLS1pcy1yZXZlcnNlZCB7XG5cdCYgLm8tZG91YmxlLWltYWdlX19waWN0dXJlIHtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0b3JkZXI6IDA7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXHRcdH1cblx0fVxufSIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogRG91YmxlIGxheW91dCBpbiAyIGVxdWFsIGNvbHVtbnNcbiAqXG4gKiBVbnRpbCB2aWV3cG9ydCBpcyB3aWRlIGVub3VnaCB0aGUgY29sdW1ucyBhcmUgc3RhY2tlZCB2ZXJ0aWNhbGx5XG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4uby1kb3VibGUtdGV4dCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcblx0aGVpZ2h0OiAxMDAlOyAvLyBzdHJldGNoIGl0IG91dCBpbiBpdHMgY29udGFpbmVyXG5cblx0Ly8gU2V0IHNpZGUgYnkgc2lkZSBmcm9tIG1lZGl1bSB2aWV3cG9ydHMgYW5kIHVwXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHR9XG59XG5cblxuLm8tZG91YmxlLXRleHRfX2NvbHVtbiB7XG5cblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNiwgMTIpO1xuXHR9XG5cblx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0QGluY2x1ZGUgbXEobSwgbCkge1xuXHRcdFx0d2lkdGg6IGNvbHVtbig1LCA4KTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IGNvbHVtbigxLCA4KTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgbXEobCkge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiBjb2x1bW4oMSwgMTIpO1xuXHRcdH1cblx0fVxuXG5cdCY6bGFzdC1jaGlsZCB7XG5cdFx0Ly8gQ3JlYXRlIHZlcnRpY2FsIHNwYWNpbmcgb24gbW9iaWxlXG5cdFx0QGluY2x1ZGUgdnNwYWNpbmctcyhcblx0XHRcdCdtYXJnaW4tdG9wJyAwLjVcblx0XHQpO1xuXHRcdEBpbmNsdWRlIG1xKG0sIGwpIHtcblx0XHRcdHdpZHRoOiBjb2x1bW4oMywgOCk7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIG1xKGwpIHtcblx0XHRcdHBhZGRpbmctbGVmdDogY29sdW1uKDEsIDEyKTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IGNvbHVtbigxLCAxMik7XG5cdFx0fVxuXHR9XG59IiwiJG8tZG91YmxlLXVzcDogKFxuXHQnYmFja2dyb3VuZC1jb2xvcic6ICBcdHBhbGV0dGUocHJpbWFyeSksXG5cdCd0ZXh0LWNvbG9yJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLm8tZG91YmxlLXVzcCB7XG5cdEBpbmNsdWRlIG1xKCRtYXg6IGwpIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRvLWRvdWJsZS11c3AsICdiYWNrZ3JvdW5kLWNvbG9yJyk7XG5cdH1cbn1cblxuXG4uby1kb3VibGUtdXNwX19tYWluIHtcblx0QGluY2x1ZGUgY29udGFpbjtcblx0cGFkZGluZy10b3A6IHNwYWNlKDYpO1xuXHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoNik7XG5cblx0QGluY2x1ZGUgbXEobSl7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxufVxuXG5cbi5vLWRvdWJsZS11c3BfX2xlZnQge1xuXHRAaW5jbHVkZSBtcSgkbWF4OiBtKXtcblx0XHRtYXJnaW4tYm90dG9tOiBzcGFjZSg2KTtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKG0pe1xuXHRcdHdpZHRoOiBjb2x1bW4oNywgMTIpO1xuXHRcdHBhZGRpbmctcmlnaHQ6IGNvbHVtbigxLCAxMik7XG5cdH1cbn1cblxuLm8tZG91YmxlLXVzcF9fcmlnaHR7XG5cdEBpbmNsdWRlIG1xKG0pe1xuXHRcdHdpZHRoOiBjb2x1bW4oNiwgMTIpO1xuXHR9XG59XG5cbi5vLWRvdWJsZS11c3BfX2hlYWRpbmcge1xuXHRAaW5jbHVkZSBmb250LXNpemUoeHhsKTtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMyk7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLWRvdWJsZS11c3AsICd0ZXh0LWNvbG9yJyk7XG59XG5cblxuLm8tZG91YmxlLXVzcF9fbGlzdCB7XG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblx0bWFyZ2luLWxlZnQ6IDE2cHg7XG59XG5cblxuLm8tZG91YmxlLXVzcF9faXRlbSB7XG5cdEBpbmNsdWRlIG93bChzcGFjZSgyKSk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1sZWZ0OiBzcGFjZSgyKTtcblx0Y29sb3I6IG1hcC1nZXQoJG8tZG91YmxlLXVzcCwgJ3RleHQtY29sb3InKTtcblxuXHQmOjpiZWZvcmUge1xuXHRcdCR3aWR0aDogMTZweDtcblx0XHQkaGVpZ2h0OiAxMnB4O1xuXG5cdFx0Y29udGVudDonJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1cHg7XG5cdFx0bGVmdDogLSN7JHdpZHRofTtcblx0XHR3aWR0aDogJHdpZHRoO1xuXHRcdGhlaWdodDogJGhlaWdodDtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltZy9jaGVjay9jaGVja2VkLnN2Zyk7XG5cdFx0YmFja2dyb3VuZC1zaXplOiAkd2lkdGggJGhlaWdodDtcblx0fVxufSIsIi5vLWRvd25sb2FkcyB7XG4gIEBpbmNsdWRlIG1xKG0pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuXG4uby1kb3dubG9hZHMtLWlzLXJldmVyc2VkIHtcbiAgQGluY2x1ZGUgbXEobSkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxufVxuXG4uby1kb3dubG9hZHNfX21haW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDEpO1xuICBwYWRkaW5nLXRvcDogc3BhY2UoNSk7XG4gIHBhZGRpbmctYm90dG9tOiBzcGFjZSg5KTtcblxuICBAaW5jbHVkZSBtcShtKSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKCRtYXg6IGwpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNvbHVtbigwLjUsIDgpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGNvbHVtbigwLjUsIDgpO1xuICB9XG4gIEBpbmNsdWRlIG1xKGwpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNvbHVtbigxLCAxMik7XG4gICAgcGFkZGluZy1yaWdodDogY29sdW1uKDEsIDEyKTtcbiAgfVxuXG4gIC5jLWhlYWRpbmcge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLm8tZG93bmxvYWRzX19zZXJ2aWNlLXBvaW50IHtcblxuICBAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG4gICAgbWFyZ2luLXRvcDogc3BhY2UoMTApO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEobSkge1xuICAgIG1hcmdpbi10b3A6IHNwYWNlKDUpO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEobSwgbCkge1xuICAgIHdpZHRoOiBjb2x1bW4oMywgOClcbiAgfVxuICBAaW5jbHVkZSBtcShsKSB7XG4gICAgd2lkdGg6IGNvbHVtbig1LCAxMik7XG4gIH1cbn0iLCIkby1ldmVudC1icDE6IDEwMDA7XG4kby1ldmVudC1icDI6IGw7XG4kby1ldmVudC1wYWRkaW5nLXRvcC1zbWFsbDogc3BhY2UoNCk7XG4kby1ldmVudC1wYWRkaW5nLXRvcC1sYXJnZTogc3BhY2UoNik7XG5cblxuXG5cbi5vLWV2ZW50IHtcblx0QGluY2x1ZGUgdGVtcGxhdGUoZGF0YSwgZm9ybSk7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtcm93LWdhcDogc3BhY2UoOCk7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXHRncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgyLCBhdXRvKTtcblx0Z3JpZC10ZW1wbGF0ZS1hcmVhczpcblx0XHRcImRhdGFcIlxuXHRcdFwiZm9ybVwiO1xuXG5cdEBpbmNsdWRlIG1xKCRvLWV2ZW50LWJwMSkge1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogNmZyIDVmcjtcblx0XHRncmlkLXJvdy1nYXA6IDA7XG5cdFx0Z3JpZC1jb2x1bW4tZ2FwOiBjb2x1bW4oMSwxMik7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1hcmVhczogXCJmb3JtIGRhdGFcIjtcblx0fVxufVxuXG5cbi5vLWV2ZW50X19kYXRhIHtcblx0QGluY2x1ZGUgbXEoJG8tZXZlbnQtYnAxKSB7XG5cdFx0cGFkZGluZy10b3A6ICRvLWV2ZW50LXBhZGRpbmctdG9wLXNtYWxsO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEoJG8tZXZlbnQtYnAyKSB7XG5cdFx0cGFkZGluZy10b3A6ICRvLWV2ZW50LXBhZGRpbmctdG9wLWxhcmdlO1xuXHR9XG59XG5cblxuLm8tZXZlbnRfX2Zvcm0ge1xuXHRwYWRkaW5nLXRvcDogJG8tZXZlbnQtcGFkZGluZy10b3Atc21hbGw7XG5cdHBhZGRpbmctYm90dG9tOiAkby1ldmVudC1wYWRkaW5nLXRvcC1zbWFsbDtcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuXG5cdEBpbmNsdWRlIG1xKCRtYXg6IG0pIHtcblx0XHRtYXJnaW4tbGVmdDogY29sdW1uKC0xLDEyKTtcblx0XHRtYXJnaW4tcmlnaHQ6IGNvbHVtbigtMSwxMik7XG5cdFx0cGFkZGluZy1sZWZ0OiBjb2x1bW4oMSwxMik7XG5cdFx0cGFkZGluZy1yaWdodDogY29sdW1uKDEsMTIpO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdHBhZGRpbmctbGVmdDogc3BhY2UoNik7XG5cdFx0cGFkZGluZy1yaWdodDogc3BhY2UoNik7XG5cdH1cblxuXHRAaW5jbHVkZSBtcSgkby1ldmVudC1icDIpIHtcblx0XHRwYWRkaW5nLXRvcDogJG8tZXZlbnQtcGFkZGluZy10b3AtbGFyZ2U7XG5cdFx0cGFkZGluZy1sZWZ0OiBzcGFjZSgxMik7XG5cdFx0cGFkZGluZy1yaWdodDogc3BhY2UoMTIpO1xuXHRcdHBhZGRpbmctYm90dG9tOiBzcGFjZSgxMCk7XG5cdH1cbn1cblxuXG4uby1ldmVudF9faW5mby1saXN0IHtcblx0JGR0LXdpZHRoOiAxMTBweDtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC13cmFwOiB3cmFwO1xuXHRtYXJnaW46IDAgMCBzcGFjZSg4KTtcblxuXHRkdCB7XG5cdFx0d2lkdGg6ICRkdC13aWR0aDtcblx0XHR0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblx0XHRhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHR9XG5cdGRkIHtcblx0XHRAaW5jbHVkZSBoeXBoZW5hdGU7XG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtICN7JGR0LXdpZHRofSk7XG5cdH1cbn1cblxuXG4uby1ldmVudF9faGVhZGluZyB7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDkwMCk7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDQpXG59XG5cblxuLm8tZXZlbnRfX3NlcnZpY2Vwb2ludC1oZWFkaW5nIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoOCk7XG59IixudWxsLCIvKlxuICogRXZlbnRzXG4gKlxuICovXG5cbiRvLWV2ZW50cy1zcGFjaW5nOiAgICBzcGFjZSg0KTtcblxuJG8tZXZlbnRzLWl0ZW1zLXM6ICAgIDI7XG4kby1ldmVudHMtaXRlbXMtbTogICAgMztcbiRvLWV2ZW50cy1pdGVtcy1sOiAgICA0O1xuXG4kby1ldmVudHMtcm93LWJwLXM6ICAgNjAwO1xuJG8tZXZlbnRzLXJvdy1icC1tOiAgIDkwMDtcbiRvLWV2ZW50cy1yb3ctYnAtbDogICAxMjAwO1xuXG5cbi5vLWV2ZW50c19fbWFpbiB7XG4gIEBpbmNsdWRlIG1xKCRvLWV2ZW50cy1yb3ctYnAtcykge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG59XG5cbi5vLWV2ZW50c19faXRlbSB7XG5cbiAgLy8gQ3JlYXRlIG5pY2UgdmVydGljYWwgc3BhY2luZyBvbiBtb2JpbGVcbiAgQGluY2x1ZGUgbXEoJG1heDogJG8tZXZlbnRzLXJvdy1icC1zKXtcbiAgICAmICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiBzcGFjZSg0KTtcbiAgICB9XG4gIH1cblxuICAvLyBTaW5nbGUgY29sdW1uIChzdGFja2VkKVxuICBAaW5jbHVkZSBtcSgkbWF4OiAkby1ldmVudHMtcm93LWJwLXMpIHtcbiAgICBtYXgtd2lkdGg6IDM0NHB4OyAvLyBjb25zdHJhaW4gdGhlIHdpZHRoIG9mIHRoZSBjYXJkIGluc2lkZVxuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgLy8gVHdvIGNvbHVtbnNcbiAgQGluY2x1ZGUgbXEoJG8tZXZlbnRzLXJvdy1icC1zLCAkbWF4OiAkby1ldmVudHMtcm93LWJwLW0pIHtcbiAgICBmbGV4OiAwO1xuICAgIC8vIFdlIGNhbGN1bGF0ZSB0aGUgc2l6ZSBvZiB0aGUgaXRlbSBiYXNlZCBvbiB0aGUgc2V0dGluZ3MgYW5kIHB1dCBpdCBpbiBhIGxvbmdoYW5kIGZsZXggdmFsdWUgYmVjYXVzZSBvZiBJRSBzdXBwb3J0XG4gICAgZmxleC1iYXNpczogY2FsYygje3BlcmNlbnRhZ2UoMS8kby1ldmVudHMtaXRlbXMtcyl9IC0gKCgjeyRvLWV2ZW50cy1pdGVtcy1zfSAtIDEpIC8gI3skby1ldmVudHMtaXRlbXMtc30gKiAjeyRvLWV2ZW50cy1zcGFjaW5nfSkpO1xuICAgIG1hcmdpbi1sZWZ0OiAjeyRvLWV2ZW50cy1zcGFjaW5nfTtcblxuICAgICY6bnRoLWNoaWxkKCN7JG8tZXZlbnRzLWl0ZW1zLXN9biArIDEpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKG4gKyAjeyRvLWV2ZW50cy1pdGVtcy1zICsgMX0pIHtcbiAgICAgIG1hcmdpbi10b3A6ICN7JG8tZXZlbnRzLXNwYWNpbmd9O1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gVGhyZWUgY29sdW1uc1xuICBAaW5jbHVkZSBtcSgkby1ldmVudHMtcm93LWJwLW0sICRtYXg6ICRvLWV2ZW50cy1yb3ctYnAtbCkge1xuICAgIGZsZXg6IDA7XG4gICAgLy8gV2UgY2FsY3VsYXRlIHRoZSBzaXplIG9mIHRoZSBpdGVtIGJhc2VkIG9uIHRoZSBzZXR0aW5ncyBhbmQgcHV0IGl0IGluIGEgbG9uZ2hhbmQgZmxleCB2YWx1ZSBiZWNhdXNlIG9mIElFIHN1cHBvcnRcbiAgICBmbGV4LWJhc2lzOiBjYWxjKCN7cGVyY2VudGFnZSgxLyRvLWV2ZW50cy1pdGVtcy1tKX0gLSAoKCN7JG8tZXZlbnRzLWl0ZW1zLW19IC0gMSkgLyAjeyRvLWV2ZW50cy1pdGVtcy1tfSAqICN7JG8tZXZlbnRzLXNwYWNpbmd9KSk7XG4gICAgbWFyZ2luLWxlZnQ6ICN7JG8tZXZlbnRzLXNwYWNpbmd9O1xuXG4gICAgJjpudGgtY2hpbGQoI3skby1ldmVudHMtaXRlbXMtbX1uICsgMSkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQobiArICN7JG8tZXZlbnRzLWl0ZW1zLW0gKyAxfSkge1xuICAgICAgbWFyZ2luLXRvcDogI3skby1ldmVudHMtc3BhY2luZ307XG4gICAgfVxuICB9XG5cblxuICAvLyBGb3VyIGNvbHVtbnNcbiAgQGluY2x1ZGUgbXEoJG8tZXZlbnRzLXJvdy1icC1sKSB7XG4gICAgZmxleDogMDtcbiAgICAvLyBXZSBjYWxjdWxhdGUgdGhlIHNpemUgb2YgdGhlIGl0ZW0gYmFzZWQgb24gdGhlIHNldHRpbmdzIGFuZCBwdXQgaXQgaW4gYSBsb25naGFuZCBmbGV4IHZhbHVlIGJlY2F1c2Ugb2YgSUUgc3VwcG9ydFxuICAgIGZsZXgtYmFzaXM6IGNhbGMoI3twZXJjZW50YWdlKDEvJG8tZXZlbnRzLWl0ZW1zLWwpfSAtICgoI3skby1ldmVudHMtaXRlbXMtbH0gLSAxKSAvICN7JG8tZXZlbnRzLWl0ZW1zLWx9ICogI3skby1ldmVudHMtc3BhY2luZ30pKTtcbiAgICBtYXJnaW4tbGVmdDogI3skby1ldmVudHMtc3BhY2luZ307XG5cbiAgICAmOm50aC1jaGlsZCgjeyRvLWV2ZW50cy1pdGVtcy1sfW4gKyAxKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZChuICsgI3skby1ldmVudHMtaXRlbXMtbCArIDF9KSB7XG4gICAgICBtYXJnaW4tdG9wOiAkby1ldmVudHMtc3BhY2luZztcbiAgICB9XG4gIH1cbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IEZvb3RlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRvLWZvb3RlcjogKFxuXHQnYmdDb2xvcic6ICBcdHBhbGV0dGUocHJpbWFyeSwgNzAwKSxcblx0J2NvbG9yJzogIFx0ICAgIHBhbGV0dGUobmV1dHJhbCwgMjAwKSxcblx0J2NvbG9yLWhvdmVyJzogIHBhbGV0dGUobmV1dHJhbCwgMjAwKSxcblx0J2xvZ29IZWlnaHQnOiAgXHQ2NHB4LFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLm8tZm9vdGVyIHtcblx0QGluY2x1ZGUgeih6LWZvb3Rlcik7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLWZvb3RlciwgJ2NvbG9yJyk7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG8tZm9vdGVyLCAnYmdDb2xvcicpO1xuXHRmbGV4OiAxIDAgYXV0bztcbn1cblxuXG4uby1mb290ZXJfX21haW4ge1xuXHRAaW5jbHVkZSBjb250YWluO1xuXHRAaW5jbHVkZSB2c3BhY2luZyhcblx0XHQncGFkZGluZy10b3AnIDAuNSxcblx0XHQncGFkZGluZy1ib3R0b20nIDAuNVxuXHQpO1xufVxuXG5cbi5vLWZvb3Rlcl9fY29sdW1ucyB7XG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHR9XG59XG5cblxuLm8tZm9vdGVyX19icmFuZCB7XG5cdEBpbmNsdWRlIHZzcGFjaW5nKFxuXHRcdCdtYXJnaW4tYm90dG9tJyAwLjMzXG5cdCk7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBsaW5lYXI7XG5cblx0Jjpob3ZlciB7XG5cdFx0b3BhY2l0eTogMC41O1xuXHR9XG59XG5cblxuLm8tZm9vdGVyX19sb2dvIHtcblx0aGVpZ2h0OiBtYXAtZ2V0KCRvLWZvb3RlciwgJ2xvZ29IZWlnaHQnKTtcbn1cblxuXG4vLyBMZWZ0IGNvbHVtblxuLm8tZm9vdGVyX19pbmZvIHtcblx0QGluY2x1ZGUgb3dsLWNoaWxkcmVuKHNwYWNlKDQpKTtcblx0bGluZS1oZWlnaHQ6IDEuNjtcblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig0LCAxMCk7XG5cdH1cblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNSwgMTIpO1xuXHR9XG59XG5cblxuLy8gUmlnaHQgY29sdW1uXG4uby1mb290ZXJfX25hdiB7XG5cdEBpbmNsdWRlIHZzcGFjaW5nLXMoXG5cdFx0J21hcmdpbi10b3AnIDAuNVxuXHQpO1xuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0bWFyZ2luLWxlZnQ6IGNvbHVtbigxLCAxMCk7XG5cdH1cblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdG1hcmdpbi1sZWZ0OiBjb2x1bW4oMSwgMTIpO1xuXHR9XG59XG5cbi5vLWZvb3Rlcl9fbGlzdCB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdG1hcmdpbjogMDtcbn1cblxuXG4uby1mb290ZXJfX2xpbmsge1xuXHRAaW5jbHVkZSBkaXNhYmxlT3V0bGluZUZvck1vdXNlO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMDtcblx0Y29sb3I6IG1hcC1nZXQoJG8tZm9vdGVyLCAnY29sb3InKTtcblx0bGluZS1oZWlnaHQ6IDEuNTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cblx0Jjo6YmVmb3JlIHtcblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKHMpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IC0xO1xuXHRcdHRvcDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0bGVmdDogc3BhY2UoLTEpO1xuXHRcdHJpZ2h0OiBzcGFjZSgtMSk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYShpbnZlcnQobWFwLWdldCgkby1mb290ZXIsICdjb2xvcicpKSwgMC4xOCk7XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBsaW5lYXI7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogbWFwLWdldCgkby1mb290ZXIsICdjb2xvci1ob3ZlcicpO1xuXG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0fVxuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuXHRcdG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAxcHg7XG5cdFx0b3V0bGluZS13aWR0aDogMnB4O1xuXHR9XG59XG5cblxuLm8tZm9vdGVyX19zb2NpYWwge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRtYXJnaW46IHNwYWNlKDQpIDAgMDtcbn1cblxuXG4uby1mb290ZXJfX2NoYW5uZWwge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0d2lkdGg6IDI0cHg7XG5cdGhlaWdodDogMjRweDtcblx0bWFyZ2luLXJpZ2h0OiBzcGFjZSgyKTtcbn1cblxuXG4uby1mb290ZXJfX2ljb24ge1xuXHRmbGV4OiBhdXRvO1xuXHRkaXNwbGF5OiBibG9jaztcblx0aGVpZ2h0OiAxMDAlO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG5cblx0LmZhY2Vib29rICYge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvc29jaWFsL2ZhY2Vib29rLnN2Z1wiKTtcblx0XHRoZWlnaHQ6IDIxcHg7XG5cdH1cblx0Lmluc3RhZ3JhbSAmIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL3NvY2lhbC9pbnN0YWdyYW0uc3ZnXCIpO1xuXHR9XG5cdC50d2l0dGVyICYge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvc29jaWFsL3R3aXR0ZXIuc3ZnXCIpO1xuXHRcdGhlaWdodDogMjBweDtcblx0fVxuXHQubGlua2VkaW4gJiB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9zb2NpYWwvbGlua2VkaW4uc3ZnXCIpO1xuXHRcdGhlaWdodDogMThweDtcblx0fVxuXG5cdCY6aG92ZXIge1xuXHRcdG9wYWNpdHk6IDAuNTtcblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtY29sb3I6IHBhbGV0dGUoZmVlZGJhY2ssIGFjdGlvbik7XG5cdH1cbn0iLCIuby1mb3JtIHt9XG5cbi5vLWZvcm1fX2hlYWRlciB7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDUpO1xufVxuXG4uby1mb3JtX19ib2R5IHt9XG5cbi5vLWZvcm1fX2Zvb3RlciB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDUpO1xufVxuXG4uby1mb3JtX19yb3cge1xuXHQmICsgJiB7XG5cdFx0bWFyZ2luLXRvcDogMjBweDtcblx0fVxufVxuXG4vLyBBIGhpZGRlbiB3cmFwcGVyIGZvciBob25leSBwb3Qgc3R1ZmZcbi5vLWZvcm1fX3BvdCB7XG5cdG9wYWNpdHk6IDA7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRoZWlnaHQ6IDA7XG5cdHdpZHRoOiAwO1xuXHR6LWluZGV4OiAtMTtcbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IEhlYWRlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8qXG5cdENvbG9ycyBnZXQgZGVmaW5lZCBpbiBfc2V0dGluZ3MuY29uZmlnLnNjc3NcbiovXG5cbi5vLWhlYWRlciB7XG5cdEBpbmNsdWRlIHooei1oZWFkZXIpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRzaXRlLWhlYWRlciwgJ2JnQ29sb3InKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nOiBzcGFjZSg0KSAwO1xuXG5cdCYuaXMtc3RpY2t5IHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHR6LWluZGV4OiA1MDtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRwYWRkaW5nLXRvcDogc3BhY2UoNCk7XG5cdFx0cGFkZGluZy1ib3R0b206IHNwYWNlKDQpO1xuXHRcdGJveC1zaGFkb3c6IDAgLTVweCAzMHB4IGJsYWNrO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG5cdFx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDMwMG1zO1xuXHRcdHRyYW5zaXRpb24tZGVsYXk6IDBzLCAzMDBtcztcblx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKTtcblxuXHRcdEBpbmNsdWRlIG1xKCRicC1oZWFkZXItbGFyZ2UpIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXG5cdFx0LmlzLXN0aWNreS1oZWFkZXItdmlzaWJsZSAmIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwcztcblx0XHR9XG5cdH1cbn1cblxuLm8taGVhZGVyX19tYWluIHtcblx0QGluY2x1ZGUgY29udGFpbjtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5vLWhlYWRlcl9fbmF2IHtcblx0d2lkdGg6IDEwMCU7XG5cdG1hcmdpbi1sZWZ0OiBzcGFjZSg2KTtcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiAkYnAtaGVhZGVyLWxhcmdlKSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG4uby1oZWFkZXJfX2xhbmd1YWdlIHtcblx0ZmxleDogbm9uZTtcblx0bWFyZ2luLWxlZnQ6IHNwYWNlKDIpO1xuXG5cdEBpbmNsdWRlIG1xKCRtYXg6ICRicC1oZWFkZXItbGFyZ2UpIHtcblx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0fVxufVxuXG4uby1oZWFkZXJfX2xvZ28ge1xuXHRAaW5jbHVkZSBkaXNhYmxlT3V0bGluZUZvck1vdXNlO1xuXHRmbGV4OiBub25lO1xuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0XHRvdXRsaW5lLXN0eWxlOiBzb2xpZDtcblx0XHRvdXRsaW5lLW9mZnNldDogMXB4O1xuXHRcdG91dGxpbmUtd2lkdGg6IDJweDtcblx0fVxufVxuXG4uby1oZWFkZXJfX2ltZyB7XG5cdGhlaWdodDogbWFwLWdldCgkc2l0ZS1oZWFkZXIsICdsb2dvLWhlaWdodCcpO1xufVxuXG4uby1oZWFkZXJfX3RvZ2dsZSB7XG5cdEBpbmNsdWRlIG1xKCRicC1oZWFkZXItbGFyZ2UpIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBJbnRyb1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLm8taW50cm8ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDA7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJHNpdGUtaW50cm8sICdiZ0NvbG9yJyk7XG5cblx0Ly8gV2hlbiBpbnRybyBpcyBkYXJrZXIgdGhlbiBib2R5IHdlIG5lZWQgdG8gYWRkIGV4dHJhIG1hcmdpblxuXHRAaWYgbWFwLWdldCgkc2l0ZS1pbnRybywgJ2lzRGFyaycpe1xuXHRcdEBpbmNsdWRlIHZzcGFjaW5nKFxuXHRcdFx0J21hcmdpbi1ib3R0b20nIDFcblx0XHQpO1xuXHR9XG59XG5cblxuLm8taW50cm9fX2JvZHkge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0QGluY2x1ZGUgdnNwYWNpbmcoXG5cdFx0J21hcmdpbi1ib3R0b20nIDFcblx0KTtcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG5cdFx0Lm8taW50cm8tLW1vYmlsZS1icmVhay1vdXQgJiB7XG5cdFx0XHR3aWR0aDogMTAwdnc7XG5cdFx0XHRtYXJnaW4tbGVmdDogNTAlO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR6LWluZGV4OiAwO1xuXHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRzaXRlLWludHJvLCAnYmFyQ29sb3InKTtcblxuXHRcdFx0Lm8taW50cm8tLWJvdHRvbS1iYXItaGlkZGVuICYge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cbi5vLWludHJvX19jb250ZW50IHtcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHR9XG5cblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdHdpZHRoOiBjYWxjKCgxMDAlIC8gI3skc2l0ZS1jb2x1bW5zLWwgKyAyfSkgKiAjeyRzaXRlLWNvbHVtbnMtbH0pO1xuXHRcdG1heC13aWR0aDogI3skc2l0ZS1tYXgtd2lkdGh9cHg7XG5cdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHR9XG59XG5cblxuLm8taW50cm9fX25hdixcbi5vLWludHJvX19pbWFnZSB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDQpO1xuXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRvcmRlcjogLTE7XG5cdFx0d2lkdGg6IGNvbHVtbig1LDEyKTtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNiwxMik7XG5cdH1cbn1cblxuXG4uby1pbnRyb19fbmF2IHtcblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkc2l0ZS1pbnRybywgJ3N1Ym5hdkJnQ29sb3InKTtcblx0cGFkZGluZzogc3BhY2UoNCkgJHNpdGUtZ3V0dGVyLXdpZHRoO1xuXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRwYWRkaW5nOiBzcGFjZSgxMCkgY29sdW1uKDAuNSwxMik7XG5cdFx0cGFkZGluZy1sZWZ0OiBwZXJjZW50YWdlKDEgLyAoOCArIDIpKTtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKGwpIHtcblx0XHRwYWRkaW5nLWxlZnQ6IHBlcmNlbnRhZ2UoMSAvICgxMCArIDIpKTtcblx0XHRwYWRkaW5nLXJpZ2h0OiBwZXJjZW50YWdlKDEgLyAoMTAgKyAyKSk7XG5cdH1cbn1cblxuXG4uby1pbnRyb19fdGV4dCB7XG5cdHBhZGRpbmctdG9wOiBzcGFjZSg0KTtcblx0cGFkZGluZy1sZWZ0OiAkc2l0ZS1ndXR0ZXItd2lkdGg7XG5cdHBhZGRpbmctcmlnaHQ6ICRzaXRlLWd1dHRlci13aWR0aDtcblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig3LDEyKTtcblx0XHRwYWRkaW5nOiBzcGFjZSgxMCkgY29sdW1uKDEsMTIpO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNiwxMik7XG5cdH1cbn1cblxuXG4uby1pbnRyb19fdGl0bGUsXG4uby1pbnRyb19faGVhZGluZyB7XG5cdGNvbG9yOiBtYXAtZ2V0KCRzaXRlLWludHJvLCAnY29sb3InKSAhaW1wb3J0YW50O1xufVxuXG5cbi5vLWludHJvX19idXR0b24ge1xuXHRjb2xvcjogbWFwLWdldCgkc2l0ZS1pbnRybywgJ2xpbmtDb2xvcicpICFpbXBvcnRhbnQ7XG59IiwiJG8tbG9nb3Mtc3BhY2luZy1keW5hbWljOiAyLjM4MnZ3O1xuJG8tbG9nb3Mtc3BhY2luZy1maXhlZDogXHRzcGFjZSg0KTtcblxuLm8tbG9nb3Mge31cblxuLm8tbG9nb3NfX2xpc3Qge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdG1hcmdpbi1sZWZ0OiAwOyAvLyByZXNldFxuXHRtYXJnaW46IC0jeyRvLWxvZ29zLXNwYWNpbmctZHluYW1pY307XG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuXHRAaW5jbHVkZSBtcSgkYnAtbWF4KXtcblx0XHRtYXJnaW46IC0jeyRvLWxvZ29zLXNwYWNpbmctZml4ZWR9O1xuXHR9XG59XG5cbi5vLWxvZ29zX19pdGVtIHtcblx0ZmxleDogMCAxIDEwMCU7XG5cdG1hcmdpbjogJG8tbG9nb3Mtc3BhY2luZy1keW5hbWljO1xuXG5cdEBpbmNsdWRlIG1xKHMpe1xuXHRcdGZsZXgtYmFzaXM6IGNhbGMoI3twZXJjZW50YWdlKDEvMil9IC0gI3tkb3VibGUoJG8tbG9nb3Mtc3BhY2luZy1keW5hbWljKX0pO1xuXHR9XG5cdEBpbmNsdWRlIG1xKG0pe1xuXHRcdGZsZXgtYmFzaXM6IGNhbGMoI3twZXJjZW50YWdlKDEvMyl9IC0gI3tkb3VibGUoJG8tbG9nb3Mtc3BhY2luZy1keW5hbWljKX0pO1xuXHR9XG5cdEBpbmNsdWRlIG1xKGwpe1xuXHRcdGZsZXgtYmFzaXM6IGNhbGMoI3twZXJjZW50YWdlKDEvNCl9IC0gI3tkb3VibGUoJG8tbG9nb3Mtc3BhY2luZy1keW5hbWljKX0pO1xuXHR9XG5cdEBpbmNsdWRlIG1xKCRicC1tYXgpe1xuXHRcdGZsZXgtYmFzaXM6IGNhbGMoI3twZXJjZW50YWdlKDEvNCl9IC0gI3tkb3VibGUoJG8tbG9nb3Mtc3BhY2luZy1maXhlZCl9KTtcblx0XHRtYXJnaW46ICRvLWxvZ29zLXNwYWNpbmctZml4ZWQ7XG5cdH1cbn1cblxuLm8tbG9nb3NfX2xpbmsge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLm8tbG9nb3NfX2ltZyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAwO1xuXHRwYWRkaW5nLWJvdHRvbTogMTAwJTsgLy8gQXNwZWN0IHJhdGlvXG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xufSIsIi5vLW1hcCB7XG5cblx0Ly8gUmVzZXQgc29tZSBzdHlsaW5nIGZvciBnb29nbGUgbWFwc1xuXHRhIHtcblx0XHQmOmFmdGVyIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBOZXdzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8kby1uZXdzOiAoXG4vL1x0J2hvdmVyLWJnY29sb3InOiAgXHRcdHBhbGV0dGUobmV1dHJhbCwgMTAwKSxcbi8vXHQndGV4dC1jb2xvcic6XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcbi8vKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLm8tbmV3cyB7XG5cdEBpbmNsdWRlIGNvbnRhaW47XG59XG5cbi5vLW5ld3NfX2hlYWRpbmcge1xuXHRAaW5jbHVkZSBmb250LXNpemUoeHhsKTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgODAwKTtcbn1cblxuLm8tbmV3c19fYXJ0aWNsZSB7XG5cdEBpbmNsdWRlIG93bChzcGFjZSg0KSk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm8tbmV3c19fbGluayB7XG5cdEBpbmNsdWRlIGRpc2FibGVPdXRsaW5lRm9yTW91c2U7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxNTBtcyBsaW5lYXI7XG5cblx0Jjo6YmVmb3JlIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkIHBhbGV0dGUoYm9yZGVyLCAzMDApO1xuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgbGluZWFyO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuXG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0fVxuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuXHRcdG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAxcHg7XG5cdFx0b3V0bGluZS13aWR0aDogMnB4O1xuXHR9XG5cblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHR9XG59XG5cbi5vLW5ld3NfX2JvZHkge1xuXHRmbGV4LWdyb3c6IDE7XG5cdHBhZGRpbmc6ICRzaXRlLWd1dHRlci13aWR0aDtcblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0b3JkZXI6IDE7XG5cdFx0cGFkZGluZy10b3A6IHNwYWNlKDYpO1xuXHRcdHBhZGRpbmctYm90dG9tOiBzcGFjZSg2KTtcblx0XHRwYWRkaW5nLWxlZnQ6IGNvbHVtbigxLDgpO1xuXHRcdHBhZGRpbmctcmlnaHQ6IGNvbHVtbigxLDgpO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdHBhZGRpbmctbGVmdDogY29sdW1uKDEsMTIpO1xuXHR9XG59XG5cbi5vLW5ld3NfX2ltYWdlIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogMTAwJTtcblx0cGFkZGluZy1ib3R0b206IDU1JTtcblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0ZmxleDogbm9uZTtcblx0XHRvcmRlcjogMjtcblx0XHR3aWR0aDogY29sdW1uKDIsOCk7XG5cdFx0cGFkZGluZy1ib3R0b206IGNvbHVtbigyLDgpO1xuXHR9XG59XG5cbi5vLW5ld3NfX2JnLWltYWdlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHR0b3A6ICRzaXRlLWd1dHRlci13aWR0aDtcblx0cmlnaHQ6ICRzaXRlLWd1dHRlci13aWR0aDtcblx0d2lkdGg6IGNhbGMoMTAwJSAtICN7ZG91YmxlKCRzaXRlLWd1dHRlci13aWR0aCl9KTtcblx0aGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRzaXRlLWd1dHRlci13aWR0aH0pO1xuXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHR0b3A6IHNwYWNlKDEpO1xuXHRcdHJpZ2h0OiBzcGFjZSgxKTtcblx0XHR3aWR0aDogY2FsYygxMDAlIC0gI3tzcGFjZSgyKX0pO1xuXHRcdGhlaWdodDogY2FsYygxMDAlIC0gI3tzcGFjZSgyKX0pO1xuXHR9XG59XG5cblxuLy8gQm9keSBjb250ZW50OlxuLm8tbmV3c19faW50cm8ge1xuXHRtYXJnaW4tdG9wOiBzcGFjZSgzKTtcbn1cblxuLm8tbmV3c19fdGltZXN0YW1wIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDIpO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA0MDApO1xufVxuXG4uby1uZXdzX19hY3Rpb24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDEpO1xuXHRjb2xvcjogcGFsZXR0ZShmZWVkYmFjaywgYWN0aW9uKTtcbn1cblxuLm8tbmV3c19fcmVhZG1vcmUge1xuXHRtYXJnaW4tcmlnaHQ6IHNwYWNlKDEpO1xufVxuXG4uby1uZXdzX19mb290ZXIge1xuXHRtYXJnaW4tdG9wOiBzcGFjZSg0KTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogT3ZlcmxheSBtZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJG8tb3ZlcmxheS1tZW51OiAoXG5cdCdiZ2NvbG9yJzogICAgICAgICAgcGFsZXR0ZShwcmltYXJ5LCA1MDApLFxuXHQnY29sb3InOiAgICAgICAgICAgIHBhbGV0dGUobmV1dHJhbCwgMCksXG5cdCdob3Zlci1jb2xvcic6ICAgICAgcmdiYShwYWxldHRlKG5ldXRyYWwsIDApLCAwLjcpLFxuXHQnc2hhZGVyLWNvbG9yJzogICAgIHJnYmEoMCwgMCwgMCwgMC42KSxcblx0J21vdmUtc3BlZWQnOiAgICAgICA0MDBtcyxcblx0J29wYWNpdHktc3BlZWQnOiAgICAyMDBtcyxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5vLW92ZXJsYXktbWVudSB7XG5cdEBpbmNsdWRlIHooei1vdmVybGF5LW1lbnUpO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRvcGFjaXR5OiAwO1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdGhlaWdodDogMTAwJTtcblx0d2lkdGg6IDEwMCU7XG5cdGxlZnQ6IDA7XG5cdHRvcDogMDtcblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkby1vdmVybGF5LW1lbnUsICdiZ2NvbG9yJyk7XG5cblx0Ly8gV2hlbiBpdCBkaXNhcHBlYXJzIG91dCBvZiB2aWV3XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTIwdncpO1xuXHR0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnbW92ZS1zcGVlZCcpLCBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ29wYWNpdHktc3BlZWQnKTtcblx0dHJhbnNpdGlvbi1kZWxheTogMHMsIG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnbW92ZS1zcGVlZCcpO1xuXHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMC4xNSwgMC4xLCAxKSwgbGluZWFyO1xuXG5cdC8vIFdoZW4gaXQgY29tZXMgaW50byB2aWV3XG5cdC5pcy1vdmVybGF5LW1lbnUtYWN0aXZlICYge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdHRyYW5zaXRpb24tZGVsYXk6IG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnb3BhY2l0eS1zcGVlZCcpLCAwcztcblx0fVxuXG5cdC8vIFNoYWRlclxuXHQmOjpiZWZvcmUge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0cmlnaHQ6IC0xMjB2dztcblx0XHR3aWR0aDogMTIwdnc7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdGJhY2tncm91bmQ6IG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnc2hhZGVyLWNvbG9yJyk7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0b3BhY2l0eTogMDtcblx0XHR0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnb3BhY2l0eS1zcGVlZCcpO1xuXHRcdHRyYW5zaXRpb24tZGVsYXk6IG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnbW92ZS1zcGVlZCcpO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG5cblx0XHQuaXMtb3ZlcmxheS1tZW51LWFjdGl2ZSAmIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwcztcblx0XHR9XG5cdH1cblxuXHQvLyBEaWFnb25hbCBzaGFwZSBvbiB0aGUgcmlnaHRcblx0Jjo6YWZ0ZXIge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0cmlnaHQ6IC0yMCU7XG5cdFx0d2lkdGg6IDIwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KC04NmRlZywgdHJhbnNwYXJlbnQgNTAlLCBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ2JnY29sb3InKSA1MCUpO1xuXHR9XG5cblx0Ly8gSGlkZSBvdmVybGF5IG1lbnUgb24gbGFyZ2VyIHZpZXdwb3J0c1xuXHRAaW5jbHVkZSBtcSgkYnAtaGVhZGVyLWxhcmdlKSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG5cbi5vLW92ZXJsYXktbWVudV9fYmFyIHtcblx0QGluY2x1ZGUgY29udGFpbjtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRwYWRkaW5nLXRvcDogc3BhY2UoNCk7XG5cdHBhZGRpbmctYm90dG9tOiBzcGFjZSg0KTtcbn1cblxuXG4uby1vdmVybGF5LW1lbnVfX2ltZyB7XG5cdGhlaWdodDogc3BhY2UoNik7XG59XG5cblxuLm8tb3ZlcmxheS1tZW51X190b2dnbGUge1xuXHR0cmFuc2Zvcm06IHJvdGF0ZSgtMC41dHVybik7XG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSA2MDBtcyBlYXNlLW91dDtcblx0dHJhbnNpdGlvbi1kZWxheTogMjAwbXM7XG5cblx0LmlzLW92ZXJsYXktbWVudS1hY3RpdmUgJiB7XG5cdFx0dHJhbnNmb3JtOiBub25lO1xuXHR9XG59XG5cblxuLm8tb3ZlcmxheS1tZW51X19saXN0IHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRtYXJnaW4tbGVmdDogMDtcblx0bGlzdC1zdHlsZTogbm9uZTtcbn1cblxuXG4uby1vdmVybGF5LW1lbnVfX2l0ZW0ge1xuXHRwYWRkaW5nOiBzcGFjZSgxKSBjb2x1bW4oMSwxNCk7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnY29sb3InKSwgMC4zKTtcbn1cblxuXG4uby1vdmVybGF5LW1lbnVfX2xpbmsge1xuXHRAaW5jbHVkZSBmb250LXNpemUoeGwpO1xuXHRkaXNwbGF5OiBibG9jaztcblx0Y29sb3I6IG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnY29sb3InKTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zIGxpbmVhcjtcblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogbWFwLWdldCgkby1vdmVybGF5LW1lbnUsICdob3Zlci1jb2xvcicpO1xuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZS1vZmZzZXQ6IDJweDtcblx0XHRvdXRsaW5lLWNvbG9yOiByZ2JhKG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnY29sb3InKSwgMC4zKTtcblx0fVxuXG5cdCYuaXMtYWN0aXZlIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0b3BhY2l0eTogMTtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblxuXHRcdCY6OmJlZm9yZSB7XG5cdFx0ICAgIGNvbnRlbnQ6ICdcXDI3OTQnO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdCAgICB0b3A6IDZweDtcblx0XHQgICAgbGVmdDogLTEuMjVlbTtcblx0XHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHR9XG5cdH1cbn0iLCIuby1xdW90ZSB7XG5cdEBpbmNsdWRlIGNvbnRhaW47XG59XG5cbi5vLXF1b3RlIHtcblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdH1cbn1cblxuLm8tcXVvdGVfX2JvZHkge1xuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig0LDgpO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdG1hcmdpbi1sZWZ0OiBjb2x1bW4oMSwxMik7XG5cdFx0d2lkdGg6IGNvbHVtbig4LDEyKTtcblx0fVxufVxuXG4uby1xdW90ZV9fcGljdHVyZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXG5cdEBpbmNsdWRlIG1xKCRtYXg6IG0pIHtcblx0XHRtYXJnaW4tdG9wOiBzcGFjZSg0KTtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHR3aWR0aDogY29sdW1uKDMsOCk7XG5cdFx0bWFyZ2luLWxlZnQ6IGNvbHVtbigxLDgpO1xuXHR9XG5cdEBpbmNsdWRlIG1xKGwpIHtcblx0XHR3aWR0aDogY29sdW1uKDQsMTIpO1xuXHRcdG1hcmdpbi1sZWZ0OiBjb2x1bW4oMSwxMik7XG5cdFx0bWFyZ2luLXJpZ2h0OiBjb2x1bW4oMSwxMik7XG5cdH1cbn1cblxuLm8tcXVvdGVfX2ltZyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW46IDAgYXV0bztcbn1cblxuLm8tcXVvdGVfX3RleHQge1xuXHRAaW5jbHVkZSBmb250KG0pO1xuXHRxdW90ZXM6ICdcXDIwMWMnICdcXDIwMWQnO1xuXG5cdCY6OmJlZm9yZSB7IGNvbnRlbnQ6IG9wZW4tcXVvdGU7IH1cblx0Jjo6YWZ0ZXIgIHsgY29udGVudDogY2xvc2UtcXVvdGU7IH1cbn1cblxuLm8tcXVvdGVfX2F1dGhvciB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDMpO1xuXHRtYXJnaW4tbGVmdDogY29sdW1uKDAuNSwgNik7XG59XG5cbi5vLXF1b3RlX19oZWFkaW5nIHtcblx0QGluY2x1ZGUgZm9udChiYXNlKTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgNTAwKTtcbn1cblxuLm8tcXVvdGVfX3N1YmhlYWRpbmcge1xuXHRAaW5jbHVkZSBmb250KHMpO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA0MDApO1xufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogUmVmZXJlbmNlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRvLXJlZmVyZW5jZXM6IChcblx0J2dhcCc6XHRcdFx0XHRzcGFjZSg0KSxcblx0J3BhZGRpbmcnOlx0XHRcdHNwYWNlKDMpLFxuXHQnYm9yZGVyLXNpemUnOlx0XHQwcHgsXG5cdCdib3JkZXItY29sb3InIDpcdHBhbGV0dGUoYm9yZGVyLCAzMDApLFxuXHQnYmdjb2xvcicgOlx0XHRcdHBhbGV0dGUobmV1dHJhbCwgMCksXG5cdCdjb2xvcicgOlx0XHRcdHBhbGV0dGUobmV1dHJhbCwgNTAwKSxcblx0J2NvbG9yU3ViJyA6XHRcdHBhbGV0dGUobmV1dHJhbCwgNDAwKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uby1yZWZlcmVuY2VzIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC13cmFwOiB3cmFwO1xuXHRtYXJnaW46IG1hcC1nZXQoJG8tcmVmZXJlbmNlcywgJ2dhcCcpICogLTE7XG59XG5cbi5vLXJlZmVyZW5jZXNfX2l0ZW0ge1xuXHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKHMpO1xuXHRmbGV4OiAwIDEgMTAwJTtcblx0bWFyZ2luOiBtYXAtZ2V0KCRvLXJlZmVyZW5jZXMsICdnYXAnKTtcblx0cGFkZGluZy10b3A6IG1hcC1nZXQoJG8tcmVmZXJlbmNlcywgJ3BhZGRpbmcnKTtcblx0cGFkZGluZy1ib3R0b206IG1hcC1nZXQoJG8tcmVmZXJlbmNlcywgJ3BhZGRpbmcnKTtcblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkby1yZWZlcmVuY2VzLCAnYmdjb2xvcicpO1xuXHRib3JkZXI6IG1hcC1nZXQoJG8tcmVmZXJlbmNlcywgJ2JvcmRlci1zaXplJykgc29saWQgbWFwLWdldCgkby1yZWZlcmVuY2VzLCAnYm9yZGVyLWNvbG9yJyk7XG5cdGJveC1zaGFkb3c6XG5cdFx0MCAyLjRweCAzOS40cHggLTE2cHggcmdiYSgwLCAwLCAwLCAwLjAyNCksXG5cdFx0MCA2LjhweCA0NS41cHggLTE2cHggcmdiYSgwLCAwLCAwLCAwLjAzNSksXG5cdFx0MCAxNi4zcHggNTEuNHB4IC0xNnB4IHJnYmEoMCwgMCwgMCwgMC4wNDYpLFxuXHRcdDAgNTRweCA4MHB4IC0xNnB4IHJnYmEoMCwgMCwgMCwgMC4wNyk7XG5cblxuXHRAaW5jbHVkZSBtcSg4MDApe1xuXHRcdGZsZXgtYmFzaXM6IGNhbGMoNTAlIC0gI3tkb3VibGUobWFwLWdldCgkby1yZWZlcmVuY2VzLCAnZ2FwJykpfSAtICN7ZG91YmxlKG1hcC1nZXQoJG8tcmVmZXJlbmNlcywgJ2JvcmRlci1zaXplJykpfSk7XG5cdH1cbn1cblxuLm8tcmVmZXJlbmNlc19fYm9keSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdG1hcmdpbi10b3A6IDA7XG5cdHBhZGRpbmctcmlnaHQ6IG1hcC1nZXQoJG8tcmVmZXJlbmNlcywgJ3BhZGRpbmcnKTtcbn1cblxuLm8tcmVmZXJlbmNlc19fcGljdHVyZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRmbGV4LWdyb3c6IDE7XG5cdGZsZXgtYmFzaXM6IDI1JTtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMyk7XG5cdG1hcmdpbi1sZWZ0OiBtYXAtZ2V0KCRvLXJlZmVyZW5jZXMsICdwYWRkaW5nJyk7XG59XG5cbi5vLXJlZmVyZW5jZXNfX2NvbnRlbnQge1xuXHRmbGV4LWdyb3c6IDk5OTk7XG5cdGZsZXgtYmFzaXM6IDE4ZW07XG5cdG1hcmdpbi1sZWZ0OiBtYXAtZ2V0KCRvLXJlZmVyZW5jZXMsICdwYWRkaW5nJyk7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLXJlZmVyZW5jZXMsICdjb2xvcicpO1xufVxuXG4uby1yZWZlcmVuY2VzX19hdXRob3Ige1xuXHRtYXJnaW4tdG9wOiBtYXAtZ2V0KCRvLXJlZmVyZW5jZXMsICdwYWRkaW5nJyk7XG59XG5cbi5vLXJlZmVyZW5jZXNfX2hlYWRpbmcge1xuXHRAaW5jbHVkZSBmb250LXNpemUoYmFzZSk7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLXJlZmVyZW5jZXMsICdjb2xvcicpO1xufVxuXG4uby1yZWZlcmVuY2VzX19zdWJoZWFkaW5nIHtcblx0Y29sb3I6IG1hcC1nZXQoJG8tcmVmZXJlbmNlcywgJ2NvbG9yU3ViJyk7XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBTdWIgRm9vdGVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJG8tc3ViZm9vdGVyOiAoXG5cdCdiZ2NvbG9yJzogIFx0XHRcdHBhbGV0dGUocHJpbWFyeSwgNTAwKSxcblx0J2NvbG9yJzogIFx0XHRcdFx0cmdiYShwYWxldHRlKG5ldXRyYWwsIDApLCAwLjcpLFxuXHQnY29sb3ItaG92ZXInOiAgXHRcdHJnYmEocGFsZXR0ZShuZXV0cmFsLCAwKSwgMSksXG5cdCdzcGFjaW5nLWhvcml6b250YWwnOlx0c3BhY2UoNCksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uby1zdWJmb290ZXIge1xuXHRAaW5jbHVkZSB6KHotc3ViZm9vdGVyKTtcblx0Y29sb3I6IG1hcC1nZXQoJG8tc3ViZm9vdGVyLCAnY29sb3InKTtcblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkby1zdWJmb290ZXIsICdiZ2NvbG9yJyk7XG5cdHBhZGRpbmctYm90dG9tOiAkc2l0ZS1jb29raWVCYXItaGVpZ2h0O1xuXHR0cmFuc2l0aW9uOiBwYWRkaW5nIDAuNnM7XG5cblx0LmlzLWNvb2tpZXMtYWNjZXB0ZWQgJiB7XG5cdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdH1cbn1cblxuXG4uby1zdWJmb290ZXJfX21haW4ge1xuXHRAaW5jbHVkZSBjb250YWluO1xuXHRAaW5jbHVkZSBmb250KHMpO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZy10b3A6IHNwYWNlKDEpO1xuXHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoMSk7XG59XG5cblxuLm8tc3ViZm9vdGVyX19jb3B5cmlnaHQge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG4gIFx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG4gIFx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMSk7XG5cdG1hcmdpbi1yaWdodDogbWFwLWdldCgkby1zdWJmb290ZXIsICdzcGFjaW5nLWhvcml6b250YWwnKTtcbn1cblxuXG4uby1zdWJmb290ZXJfX25hdiB7XG5cdG1hcmdpbi1yaWdodDogYXV0bztcblx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDEpO1xufVxuXG5cbi5vLXN1YmZvb3Rlcl9fbGlzdCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRtYXJnaW46IDA7XG59XG5cblxuLm8tc3ViZm9vdGVyX19pdGVtIHtcblx0bWFyZ2luLXJpZ2h0OiBtYXAtZ2V0KCRvLXN1YmZvb3RlciwgJ3NwYWNpbmctaG9yaXpvbnRhbCcpO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG5cbi5vLXN1YmZvb3Rlcl9fbGluayB7XG5cdEBpbmNsdWRlIGRpc2FibGVPdXRsaW5lRm9yTW91c2U7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLXN1YmZvb3RlciwgJ2NvbG9yJyk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogY29sb3IgMjAwbXM7XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJG8tc3ViZm9vdGVyLCAnY29sb3ItaG92ZXInKTtcblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0XHRvdXRsaW5lLXN0eWxlOiBzb2xpZDtcblx0XHRvdXRsaW5lLW9mZnNldDogMXB4O1xuXHRcdG91dGxpbmUtd2lkdGg6IDJweDtcblx0fVxufVxuXG5cbi5vLXN1YmZvb3Rlcl9fdHJhZGVtYXJrIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDEpO1xufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogVGFic2xpZGVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJG8tdGFic2xpZGVyOiAoXG5cdCdiZ2NvbG9yJzpcdFx0XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2NvbG9yJzpcdFx0XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCA4MDApLFxuXHQnYWN0aXZlLWNvbG9yJzpcdFx0XHRcdHBhbGV0dGUobmV1dHJhbCwgMCksXG5cdCdhY3RpdmUtYmdjb2xvcic6XHRcdFx0cGFsZXR0ZShwcmltYXJ5LCA1MDApLFxuXHQnYm9yZGVyLWNvbG9yJzogXHRcdFx0cGFsZXR0ZShib3JkZXIsIDMwMCksXG5cdCdhY3RpdmUtYm9yZGVyLWNvbG9yJzogXHRcdHBhbGV0dGUocHJpbWFyeSwgNTAwKSxcblx0J3RhYi1nYXAnOiAgXHRcdFx0XHRzcGFjZSgxKSxcbik7XG5cbi8qXG4gKiBPbiBzbWFsbCBzY3JlZW5zIHRoZSBjb250ZW50IGlzIHN0YWNrZWQsIHdpdGhvdXQgY29udHJvbHNcbiAqIFdoZW4gdGhlIHNjcmVlbiBpcyB3aWRlIGVub3VnaCB3ZSBhZGQgdGhlIGNvbnRyb2xzXG4gKiBhbmQgc2hvdyBvbmx5IHRoZSBjaG9zZW4gJ3NsaWRlIGNvbnRlbnQnXG4gKi9cblxuXG4uby10YWJzbGlkZXIge1xuXHRAaW5jbHVkZSBjb250YWluO1xufVxuXG5cbi8vIFNoYXJlZCBzdHlsaW5nIGZvciB0YWItIGFuZCBzdGVwLWJ1dHRvbnNcbi5vLXRhYnNsaWRlcl9fYnV0dG9uIHtcblx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhtKTtcblx0bWluLWhlaWdodDogc3BhY2UoNik7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ2NvbG9yJyk7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG8tdGFic2xpZGVyLCAnYmdjb2xvcicpO1xuXHRib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ2JvcmRlci1jb2xvcicpO1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yLCBib3JkZXI7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zO1xuXG5cdCY6aG92ZXIge1xuXHRcdGNvbG9yOiBtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ2FjdGl2ZS1iZ2NvbG9yJyk7XG5cdFx0Ym9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ2FjdGl2ZS1iZ2NvbG9yJyk7XG5cdH1cblxuXHQmLmlzLWFjdGl2ZSB7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJG8tdGFic2xpZGVyLCAnYWN0aXZlLWNvbG9yJyk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkby10YWJzbGlkZXIsICdhY3RpdmUtYmdjb2xvcicpO1xuXHRcdGJvcmRlci1jb2xvcjogbWFwLWdldCgkby10YWJzbGlkZXIsICdhY3RpdmUtYm9yZGVyLWNvbG9yJyk7XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHRcdGJvcmRlci1jb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA1MDApO1xuXG5cdFx0Jjpub3QoLmlzLWFjdGl2ZSk6bm90KDphY3RpdmUpIHtcblx0XHRcdGJveC1zaGFkb3c6IDAgMCAwIDFweCBtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ2JnY29sb3InKSwgMCAwIDVweCAzcHggcmdiYShtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ2NvbG9yJyksIDAuMSk7XG5cdFx0fVxuXHR9XG59XG5cbi5vLXRhYnNsaWRlcl9fY29udHJvbHMge1xuXHRAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdG1hcmdpbi1sZWZ0OiBjb2x1bW4oMSwxMik7XG5cdFx0bWFyZ2luLXJpZ2h0OiBjb2x1bW4oMSwxMik7XG5cdH1cbn1cblxuLm8tdGFic2xpZGVyX19zdGVwIHtcblx0d2lkdGg6IHNwYWNlKDYpO1xufVxuXG4uby10YWJzbGlkZXJfX3N0ZXAtLXByZXYge1xuXHR0cmFuc2Zvcm06IHJvdGF0ZSgwLjV0dXJuKTtcbn1cblxuLm8tdGFic2xpZGVyX190YWJzIHtcblx0QGluY2x1ZGUgbXEobSl7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKCRicC1tYXgpIHtcblx0XHRtYXJnaW46IChtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ3RhYi1nYXAnKSAqIC0xKSBtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ3RhYi1nYXAnKTtcblx0fVxufVxuXG5cbi5vLXRhYnNsaWRlcl9fdGFiIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHhzKTtcblx0bWFyZ2luOiBtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ3RhYi1nYXAnKTtcblx0cGFkZGluZzogKHNwYWNlKDEpIC0gMXB4KSBzcGFjZSgyKTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLm8tdGFic2xpZGVyX19jb250YWluZXIge1xuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblx0XHRncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcblx0XHRtYXJnaW4tdG9wOiBzcGFjZSg2KTtcblx0fVxufVxuXG4uby10YWJzbGlkZXJfX2NvbnRlbnQge1xuXHQmICsgJiB7XG5cdFx0QGluY2x1ZGUgdnNwYWNpbmctcyhcblx0XHRcdCdtYXJnaW4tdG9wJyAxXG5cdFx0KTtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRncmlkLXJvdzogMTtcblx0XHRncmlkLWNvbHVtbjogMTtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHotaW5kZXg6IDA7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0dHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcblx0XHR0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm07XG5cdFx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMjAwbXM7XG5cdFx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG5cblx0XHQmLmlzLWFjdGl2ZSB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0ei1pbmRleDogMTtcblx0XHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHRcdHBvaW50ZXItZXZlbnRzOiBhbGw7XG5cdFx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcblx0XHRcdHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zO1xuXHRcdFx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuXHRcdH1cblx0fVxufVxuXG4uby10YWJzbGlkZXJfX2xhYmVsIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHhzKTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmctYm90dG9tOiBzcGFjZSgxKTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgODAwKTtcblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuIiwiLm8tdGVhbSB7XG4gIEBpbmNsdWRlIGNvbnRhaW47XG4gIEBpbmNsdWRlIHZzcGFjaW5nKFxuICAgICAgJ21hcmdpbi10b3AnIDEsXG4gICAgICAnbWFyZ2luLWJvdHRvbScgMVxuICApO1xufVxuXG4uby10ZWFtX19tYXRyaXgge1xuICBAaW5jbHVkZSBtcSg1NjApIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IHNwYWNlKDIpICogLTE7XG4gIH1cbn1cblxuLm8tdGVhbV9faXRlbSB7XG4gIG1hcmdpbjogMCBhdXRvIHNwYWNlKDQpO1xuICBtYXgtd2lkdGg6IDMwMHB4O1xuICBtaW4td2lkdGg6IDA7IC8vIG5lZWRlZCBzbyB3ZSBjYW4gdXNlIGVsbGlwc2lzIGluc2lkZVxuXG4gIEBpbmNsdWRlIG1xKDU2MCkge1xuICAgIG1hcmdpbjogc3BhY2UoMik7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGZsZXg6IG5vbmU7XG4gICAgZmxleC1iYXNpczogY2FsYyg1MCUgLSAje3NwYWNlKDQpfSk7IC8vIExvbmdoYW5kIG5lZWRlZCBmb3IgSUVcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKDkwMCkge1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoMzMuMzMlIC0gI3tzcGFjZSg0KX0pO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEoMTIwMCkge1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoMjUlIC0gI3tzcGFjZSg0KX0pO1xuICB9XG59IiwiJG8tdGhhbmtzLWJwMTogMTExMDtcbiRvLXRoYW5rcy1nYXA6IHNwYWNlKDYpO1xuXG5cbi5vLXRoYW5rcyB7XG5cdEBpbmNsdWRlIGNvbnRhaW47XG5cdEBpbmNsdWRlIHZzcGFjaW5nKFxuXHRcdCdwYWRkaW5nLWJvdHRvbScgMVxuXHQpO1xuXG5cdEBpbmNsdWRlIG1xKCRvLXRoYW5rcy1icDEpIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHR9XG59XG5cblxuLm8tdGhhbmtzX19sZWZ0IHtcblx0QGluY2x1ZGUgbXEoJG8tdGhhbmtzLWJwMSkge1xuXHRcdHdpZHRoOiBjYWxjKCN7Y29sdW1uKDYsMTIpfSArICN7JG8tdGhhbmtzLWdhcH0pO1xuXHRcdHBhZGRpbmctcmlnaHQ6ICRvLXRoYW5rcy1nYXA7XG5cdH1cbn1cblxuXG4uby10aGFua3NfX3JpZ2h0IHtcblx0bWFyZ2luLXRvcDogc3BhY2UoNSk7XG5cblx0QGluY2x1ZGUgbXEoJG8tdGhhbmtzLWJwMSkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNiwxMik7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogVVNQXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJG8tdXNwOiAoXG5cdCdiYWNrZ3JvdW5kLWNvbG9yJzogIFx0cGFsZXR0ZShwcmltYXJ5LCA1MDApLFxuXHQndGV4dC1jb2xvcic6XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5vLXVzcCB7XG5cdEBpbmNsdWRlIG1xKCRtYXg6IGwpIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRvLXVzcCwgJ2JhY2tncm91bmQtY29sb3InKTtcblx0fVxufVxuXG4uby11c3BfX21haW4ge1xuXHRAaW5jbHVkZSBtcShtKXtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHR9XG59XG5cbi5vLXVzcF9fdGV4dCB7XG5cdHBhZGRpbmc6IHNwYWNlKDQpIDA7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLXVzcCwgJ3RleHQtY29sb3InKTtcblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkby11c3AsICdiYWNrZ3JvdW5kLWNvbG9yJyk7XG5cblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNSwgOCk7XG5cdFx0cGFkZGluZzoge1xuXHRcdFx0dG9wOiBjb2x1bW4oMC41LCA4KTtcblx0XHRcdGJvdHRvbTogY29sdW1uKDAuNSwgOCk7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0cmlnaHQ6IGNvbHVtbigxLCA4KTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig2KTtcblx0XHRwYWRkaW5nOiBjb2x1bW4oMC41KSBjb2x1bW4oMSk7XG5cdH1cbn1cblxuLm8tdXNwX19pbWFnZSB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG5cdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cblx0QGluY2x1ZGUgbXEoJG1heDogbSkge1xuXHRcdG1hcmdpbi1sZWZ0OiAtJHNpdGUtZ3V0dGVyLXdpZHRoO1xuXHRcdG1hcmdpbi1yaWdodDogLSRzaXRlLWd1dHRlci13aWR0aDtcblx0XHRwYWRkaW5nLWJvdHRvbTogNjUlO1xuXHRcdG1pbi1oZWlnaHQ6IDM2MHB4O1xuXHR9XG5cblx0QGluY2x1ZGUgbXEobSwgbCkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNCwgOCk7XG5cdFx0bWFyZ2luLXJpZ2h0OiBjb2x1bW4oLTEsIDgpO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNik7XG5cdH1cbn1cblxuLm8tdXNwX19oZWFkaW5nIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHh4bCk7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDMpO1xuXHRjb2xvcjogbWFwLWdldCgkby11c3AsICd0ZXh0LWNvbG9yJyk7XG59XG5cbi5vLXVzcF9fbGlzdCB7XG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblx0bWFyZ2luLWxlZnQ6IDE2cHg7XG59XG5cbi5vLXVzcF9faXRlbSB7XG5cdEBpbmNsdWRlIG93bChzcGFjZSgyKSk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1sZWZ0OiBzcGFjZSgyKTtcblxuXHQmOjpiZWZvcmUge1xuXHRcdCR3aWR0aDogMTZweDtcblx0XHQkaGVpZ2h0OiAxMnB4O1xuXG5cdFx0Y29udGVudDonJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1cHg7XG5cdFx0bGVmdDogLSN7JHdpZHRofTtcblx0XHR3aWR0aDogJHdpZHRoO1xuXHRcdGhlaWdodDogJGhlaWdodDtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltZy9jaGVjay9jaGVja2VkLnN2Zyk7XG5cdFx0YmFja2dyb3VuZC1zaXplOiAkd2lkdGggJGhlaWdodDtcblx0fVxufVxuXG4uby11c3BfX2FjdGlvbiB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDYpO1xufVxuXG4uby11c3BfX2ltYWdlIHtcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufSIsIi5vLXZhY2FuY2llcyB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0bGluZS1oZWlnaHQ6IDEuNDtcblx0bGlzdC1zdHlsZTogbm9uZTtcblxuXHQ+ICogKyAqIHtcblx0XHRtYXJnaW4tdG9wOiBzcGFjZSgyKTtcblx0fVxufVxuXG5cbi5vLXZhY2FuY2llc19fbGluayB7XG5cdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMobSk7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHBhZGRpbmc6IHNwYWNlKDQpO1xuXHRib3JkZXI6IDFweCBzb2xpZCBwYWxldHRlKG5ldXRyYWwsIDMwMCk7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDkwMCk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogYWxsIDE1MG1zIGxpbmVhcjtcblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogcGFsZXR0ZShmZWVkYmFjaywgYWN0aW9uKTtcblx0XHRib3JkZXItY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0XHRib3gtc2hhZG93OiBpbnNldCAwIDAgMXB4IDFweCBjdXJyZW50Q29sb3I7XG5cdH1cbn1cblxuXG4uby12YWNhbmNpZXNfX2NvbnRlbnQge1xuXHRmbGV4OiBhdXRvO1xufVxuXG5cbi5vLXZhY2FuY2llc19faWNvbiB7XG5cdGZsZXg6IG5vbmU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHR3aWR0aDogNDBweDtcblx0aGVpZ2h0OiA0MHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNTAwKTtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcblx0dHJhbnNpdGlvbjogYWxsIDE1MG1zIGxpbmVhcjtcblxuXHQuby12YWNhbmNpZXNfX2xpbms6aG92ZXIgJiB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogc2NhbGVfY29sb3IocGFsZXR0ZShmZWVkYmFjaywgYWN0aW9uKSwgJGxpZ2h0bmVzczogMCUpO1xuXHR9XG59XG5cblxuLm8tdmFjYW5jaWVzX190aXRsZSB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSh4bCk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRjb2xvcjogY3VycmVudENvbG9yO1xufVxuXG5cbi5vLXZhY2FuY2llc19fc3VidGl0bGUge1xuXHRAaW5jbHVkZSBmb250LXNpemUoYmFzZSk7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDQwMCk7XG59XG5cblxuLm8tdmFjYW5jaWVzX19wcm9wZXJ0aWVzIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoNCk7XG59IiwiJG8tdmFjYW5jeS1wcm9wZXJ0aWVzLXB1bGwtdXAtc2l6ZTogc3BhY2UoMik7XG5cbi5vLXZhY2FuY3lfX2hlcm8ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDIpICsgJG8tdmFjYW5jeS1wcm9wZXJ0aWVzLXB1bGwtdXAtc2l6ZTtcblxuXHRAaW5jbHVkZSBtcShsKSB7XG5cdCAgICBAaW5jbHVkZSBjb250YWluO1xuXHR9XG5cblx0Jjo6YmVmb3JlIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogLTE7XG5cdCAgICBjb250ZW50OiAnJztcblx0ICAgIHRvcDogMDtcblx0ICAgIGJvdHRvbTogMDtcblx0ICAgIHJpZ2h0OiAtNTB2dztcblx0ICAgIGxlZnQ6IC01MHZ3O1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNzAwKTtcblx0fVxufVxuXG4uby12YWNhbmN5X19oZXJvLWltZyB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG87XG59XG5cblxuLm8tdmFjYW5jeV9fcHJvcGVydGllcyB7XG5cdEBpbmNsdWRlIGNvbnRhaW47XG5cdG1hcmdpbi10b3A6IC0kby12YWNhbmN5LXByb3BlcnRpZXMtcHVsbC11cC1zaXplO1xufSIsIi8qKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVGVtcGxhdGVzXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuIiwiLnMtY2hlY2tsaXN0IHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bWFyZ2luLWxlZnQ6IDA7XG5cblx0bGkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRtYXJnaW4tdG9wOiA1cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNDU7XG5cblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltZy9jaGVjay9jaGVja2VkLnN2Zyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDEycHg7XG5cdFx0XHRoZWlnaHQ6IDEycHg7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDhweDtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3cHgpO1xuXHRcdH1cblx0fVxuXG5cdC5jaGVja2xpc3QtaGFzLXgtc21hbGwtZm9udCAme1xuXHRcdEBpbmNsdWRlIGZvbnQoeHMpO1xuXG5cdFx0bGkge1xuXHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDVweCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cbn0iLCIvKipcbiAqIEFsbCB0ZXh0IGVsZW1lbnRzIHRoYXQgY2FuIGJlIGFkZGVkIGJ5IHRoZSB1c2VyIHRocm91Z2ggYSBDTVNcbiAqL1xuXG5cbi5zLXRleHQge1xuXG5cdGgyLCBoMywgaDQge1xuXHRcdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDgwMCk7XG5cdH1cblxuXHQvLyBGaXJzdCB0aGUgb3dsIHNlbGVjdG9yIGZvciBzZXR0aW5nIGEgZGVmYXVsdCB2ZXJ0aWNhbCByaHl0aG1cblx0JiA+ICogKyAqIHtcblx0XHRtYXJnaW4tdG9wOiBzcGFjZSg0KTtcblx0fVxuXG5cdC8vIE1ha2Ugc3VyZSBmaXJzdCBpdGVtIGluIHNjb3BlZCB0ZXh0IGhhcyBubyBtYXJnaW4gb24gdG9wXG5cdCYgPiA6Zmlyc3QtY2hpbGQge1xuXHRcdG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcblx0fVxuXG5cdCYgPiAqICsgLmMtYnV0dG9uIHtcblx0XHRtYXJnaW4tdG9wOiBzcGFjZSg1KTtcblx0fVxuXG5cdCYgPiB1bDpub3QoW2NsYXNzXSkge1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cblx0XHQmID4gbGkge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IC0xLjEyNWVtO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAxLjEyNWVtO1xuXG5cdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoeGwpO1xuXHRcdFx0XHRjb250ZW50OiBcIlxcMjAyMlwiO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogLTRweDtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmID4gb2w6bm90KFtjbGFzc10pIHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdGNvdW50ZXItcmVzZXQ6IG9sLWNvdW50ZXI7XG5cblx0XHQmID4gbGkge1xuXHRcdFx0Y291bnRlci1pbmNyZW1lbnQ6IG9sLWNvdW50ZXI7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRtYXJnaW4tbGVmdDogLTEuMTI1ZW07XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDEuOGVtO1xuXG5cdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRjb250ZW50OiBjb3VudGVyKG9sLWNvdW50ZXIpIFwiLiBcIjtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdHdpZHRoOiAxLjI3NWVtO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIvKiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogIENvbG9yXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qKlxuICogSGVyZSB3ZSBwcmludCBvdXQgYWxsIG91ciBoZWxwZXIgY2xhc3NlcyBmb3Igb3VyIGRlZmluZWQgY29sb3JzXG4gKiBCYXNlZCBvbiB0aGVzZSBhcnRpY2xlczpcbiAqIC0gaHR0cDovL2Vyc2tpbmVkZXNpZ24uY29tL2Jsb2cvZnJpZW5kbGllci1jb2xvdXItbmFtZXMtc2Fzcy1tYXBzL1xuICogLSBodHRwczovL2Jsb2cuYXRlY2htZWRpYS5jb20vY3NzLWZvci1tdWx0aXBsZS10aGVtZXMvXG4gKiBPdXRwdXQgaXMgaW4gdGhlIGZvcm0gb2Y6XG5cbiAgIC51LWNvbG9yLXByaW1hcnkge1xuICAgICAgY29sb3I6ICNiYWRhNTU7XG4gICB9XG5cbiAgLnUtYmctbmV1dHJhbC0tOTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVjYWZmO1xuICB9XG4gKi9cblxuQGVhY2ggJGxldmVsLCAkcGFsZXR0ZSBpbiAkcGFsZXR0ZXMge1xuXHRAZWFjaCAkdHlwZSwgJGNvbG9yIGluICRwYWxldHRlIHtcblx0XHRAaWYoJHR5cGUgPT0gJ2Jhc2UnKXtcblx0XHRcdC51LWNvbG9yLSN7JGxldmVsfSB7XG5cdFx0XHRcdGNvbG9yOiAjeyRjb2xvcn07XG5cdFx0XHR9XG5cdFx0XHQudS1iZy0jeyRsZXZlbH0ge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjeyRjb2xvcn07XG5cdFx0XHR9XG5cdFx0fSBAZWxzZSB7XG5cdFx0XHQudS1jb2xvci0jeyRsZXZlbH0tLSN7JHR5cGV9IHtcblx0XHRcdFx0Y29sb3I6ICN7JGNvbG9yfTtcblx0XHRcdH1cblx0XHRcdC51LWJnLSN7JGxldmVsfS0tI3skdHlwZX0ge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjeyRjb2xvcn07XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqICBGb250c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4vKipcbiAqIEhlcmUgd2UgcHJpbnQgb3V0IGFsbCBvdXIgaGVscGVyIGNsYXNzZXMgZm9yIG91ciBkZWZpbmVkICRmb250LXNpemVzIG1hcFxuICogT3V0cHV0IG9mIHRoZSBjbGFzc2VzIGluIHRoZSB0aGlzIGZvcm06XG5cbiAgIC51LWZzLW0ge31cbiAgIC51LWZzLXhsIHt9XG4gICAuLi4gZXRjXG5cbiAqL1xuXG5cbkBpZiB2YXJpYWJsZS1leGlzdHMoZm9udC1zaXplcykge1xuXHRAZWFjaCAkdmFsLCAkc2l6ZSBpbiAkZm9udC1zaXplcyB7XG5cdFx0QGVhY2ggJHR5cGUsICRjb2xvciBpbiAkc2l6ZSB7XG5cdFx0XHQudS1mcy0jeyR2YWx9IHtcblx0XHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKCR2YWwpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cblxuLyoqXG4gKiBIZXJlIHdlIHByaW50IG91dCBhbGwgb3VyIGhlbHBlciBjbGFzc2VzIGZvciBvdXIgZGVmaW5lZCAkZm9udC13ZWlnaHRzIG1hcFxuICogT3V0cHV0IG9mIHRoZSBjbGFzc2VzIGluIHRoZSB0aGlzIGZvcm06XG5cbiAgIC51LWZ3LXJlZ3VsYXIge31cbiAgIC51LWZ3LXNlbWlCb2xkIHt9XG4gICAuLi4gZXRjXG5cbiAqL1xuXG5AaWYgdmFyaWFibGUtZXhpc3RzKGZvbnQtd2VpZ2h0cykge1xuXHRAZWFjaCAkbmFtZSwgJHNpemUgaW4gJGZvbnQtd2VpZ2h0cyB7XG5cdFx0LnUtZnctI3skbmFtZX0ge1xuXHRcdFx0QGluY2x1ZGUgZm9udC13ZWlnaHQoJG5hbWUpO1xuXHRcdH1cblx0fVxufVxuXG4iLCIudS1oaWRkZW4ge1xuXHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnRcbn1cblxuLnUtcGxhY2Vob2xkZXItaW1hZ2Uge1xuXHRoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcblx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0b2JqZWN0LWZpdDogY292ZXIgIWltcG9ydGFudDtcbn1cblxuLnUtdGV4dC1hbGlnbi1jZW50ZXIge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXIhaW1wb3J0YW50O1xufVxuXG4ubm93cmFwIHtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnUtbWF4LWNvbnRlbnQge1xuXHRtYXgtd2lkdGg6IDQwZW07XG59IiwiLypcbiogSWYgeW91IG5lZWQgdG8gbWFrZSBhIHF1aWNrIGZpeCwgeW91IGNhbiBkbyBpdCBoZXJlLlxuKiBMYXRlciB3aGVuIHlvdSBoYXZlIHRoZSB0aW1lLCB5b3UgY2FuIG1vdmUgdGhlIGZpeCBpbnRvIHRoZSBjb3JyZWN0IHBsYWNlIGluIHRoZSBzdHJ1Y3R1cmVcbiovXG5cblxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBOb3RoaW5nIGhlcmUgeWV0LCBHb29kIGpvYiEhIiwiQGZvciAkaSBmcm9tIDAgdGhyb3VnaCA4IHtcblx0Ly8gTWFyZ2luXG5cdC51LXNwYWNpbmctbXQjeyRpfSAgICAgeyBtYXJnaW4tdG9wOiBcdHNwYWNlKCRpKSAhaW1wb3J0YW50OyB9XG5cdC51LXNwYWNpbmctbXIjeyRpfSAgICAgeyBtYXJnaW4tcmlnaHQ6IFx0c3BhY2UoJGkpICFpbXBvcnRhbnQ7IH1cblx0LnUtc3BhY2luZy1tYiN7JGl9ICAgICB7IG1hcmdpbi1ib3R0b206IHNwYWNlKCRpKSAhaW1wb3J0YW50OyB9XG5cdC51LXNwYWNpbmctbWwjeyRpfSAgICAgeyBtYXJnaW4tbGVmdDogXHRzcGFjZSgkaSkgIWltcG9ydGFudDsgfVxuXG5cdC8vIFBhZGRpbmdcblx0LnUtc3BhY2luZy1wdCN7JGl9ICAgICB7IHBhZGRpbmctdG9wOiBcdHNwYWNlKCRpKSAhaW1wb3J0YW50OyB9XG5cdC51LXNwYWNpbmctcHIjeyRpfSAgICAgeyBwYWRkaW5nLXJpZ2h0OiBzcGFjZSgkaSkgIWltcG9ydGFudDsgfVxuXHQudS1zcGFjaW5nLXBiI3skaX0gICAgIHsgcGFkZGluZy1ib3R0b206c3BhY2UoJGkpICFpbXBvcnRhbnQ7IH1cblx0LnUtc3BhY2luZy1wbCN7JGl9ICAgICB7IHBhZGRpbmctbGVmdDogXHRzcGFjZSgkaSkgIWltcG9ydGFudDsgfVxufVxuXG4udS1zcGFjaW5nLXB2IHtcblx0QGluY2x1ZGUgdnNwYWNpbmcoXG5cdFx0J3BhZGRpbmctdG9wJyAxLFxuXHRcdCdwYWRkaW5nLWJvdHRvbScgMVxuXHQpXG59XG5cbkBpbmNsdWRlIG1xKGwpIHtcblx0LnUtc3BhY2luZy1wcjBcXEBsIHtcblx0XHRwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG5cdH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVGhpcyBncmlkIGNhbiBiZSB0dXJuZWQgb24gYW5kIG9mZiB3aGVuIHlvdSB3YW50IHRvIGNoZWNrXG4gKiBpZiBldmVyeXRoaW5nIGlzIG5pY2UgaW4gcGxhY2UuXG4gKiBTZXQgZmxhZyAnc2hvd0dyaWQnIHRvIHRydWUgaW4gc2l0ZS5waHBcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuXG4vLyBDb2xvcjogU2V0IGEgaHVlIHZhbHVlIHRoYXQgaGFzIGVub3VnaCBjb250cmFzdFxuJHZnLWh1ZTogXHRcdFx0XHRcdDIzMDsgLy8gMC0zNjBcblxuLy8gQ29sdW1uczogTnVtYmVyIG9mIGNvbHVtbnMgcGVyIHZpZXdwb3J0XG4kdmctY29sdW1uLWNvdW50LXM6IFx0XHQkc2l0ZS1jb2x1bW5zLXM7XG4kdmctY29sdW1uLWNvdW50LW06IFx0XHQkc2l0ZS1jb2x1bW5zLW07XG4kdmctY29sdW1uLWNvdW50LWw6IFx0XHQkc2l0ZS1jb2x1bW5zLWw7XG5cblxuLy8gRG8gc29tZSBjYWxjdWxhdGlvbnMgYW5kIHB1dCB0aGVtIGluIHZhcmlhYmxlcyBmb3IgcmV1c2VcbiR2Zy1jb2x1bW4td2lkdGgtczogcGVyY2VudGFnZSgxIC8gJHZnLWNvbHVtbi1jb3VudC1zKTtcbiR2Zy1jb2x1bW4td2lkdGgtbTogcGVyY2VudGFnZSgxIC8gJHZnLWNvbHVtbi1jb3VudC1tKTtcbiR2Zy1jb2x1bW4td2lkdGgtbDogcGVyY2VudGFnZSgxIC8gJHZnLWNvbHVtbi1jb3VudC1sKTtcbiR2Zy1jb2xvci0xOiBoc2xhKCR2Zy1odWUsIDEwMCwgNTAsIDAuMDcpO1xuJHZnLWNvbG9yLTI6IGhzbGEoJHZnLWh1ZSwgMTAwLCA1MCwgMC4wNCk7XG5cblxuLnUtdmlzaWJsZS1ncmlkIHtcblx0QGluY2x1ZGUgeih6LXZpc2libGUtZ3JpZCk7XG5cdEBpbmNsdWRlIGNvbnRhaW47XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0bGVmdDogMDtcblx0cmlnaHQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcblxuXHQvKiA4IHBvaW50IGdyaWQgbGluZXMgKi9cblx0Ly9iYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KFxuXHQvL1x0dG8gYm90dG9tLFxuXHQvL1x0aHNsYSgwLCAxMDAsIDUwLCAwLjg0KSAwLFxuXHQvL1x0aHNsYSgwLCAxMDAsIDUwLCAwKSAxcHgsXG5cdC8vXHRoc2xhKDAsIDEwMCwgNTAsIDApIDhweCxcblx0Ly9cdGhzbGEoMjAwLCAxMDAsIDUwLCAwLjA0KSA4cHhcblx0Ly8pO1xuXG5cdEBpbmNsdWRlIG1xKG0sIGwpIHtcblx0XHRwYWRkaW5nOiAwO1xuXHR9XG5cbn1cblxuLnUtdmlzaWJsZS1ncmlkX19tYWluIHtcblx0aGVpZ2h0OiAxMDB2aDtcblxuXHRiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KFxuXHRcdFx0dG8gcmlnaHQsXG5cdFx0XHQkdmctY29sb3ItMSxcblx0XHRcdCR2Zy1jb2xvci0xICR2Zy1jb2x1bW4td2lkdGgtcyxcblx0XHRcdCR2Zy1jb2xvci0yICR2Zy1jb2x1bW4td2lkdGgtcyxcblx0XHRcdCR2Zy1jb2xvci0yICgkdmctY29sdW1uLXdpZHRoLXMgKiAyKVxuXHQpO1xuXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KFxuXHRcdFx0XHR0byByaWdodCxcblx0XHRcdFx0JHZnLWNvbG9yLTEsXG5cdFx0XHRcdCR2Zy1jb2xvci0xICR2Zy1jb2x1bW4td2lkdGgtbSxcblx0XHRcdFx0JHZnLWNvbG9yLTIgJHZnLWNvbHVtbi13aWR0aC1tLFxuXHRcdFx0XHQkdmctY29sb3ItMiAoJHZnLWNvbHVtbi13aWR0aC1tICogMilcblx0XHQpO1xuXHR9XG5cdEBpbmNsdWRlIG1xKGwpIHtcblx0XHRiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KFxuXHRcdFx0XHR0byByaWdodCxcblx0XHRcdFx0JHZnLWNvbG9yLTEsXG5cdFx0XHRcdCR2Zy1jb2xvci0xICR2Zy1jb2x1bW4td2lkdGgtbCxcblx0XHRcdFx0JHZnLWNvbG9yLTIgJHZnLWNvbHVtbi13aWR0aC1sLFxuXHRcdFx0XHQkdmctY29sb3ItMiAoJHZnLWNvbHVtbi13aWR0aC1sICogMilcblx0XHQpO1xuXHR9XG59XG4iXSwic291cmNlUm9vdCI6IiJ9*/