File: D:/HostingSpaces/SBogers10/boomdekwekerij.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: #BE1E2D;
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: #BE1E2D;
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 #BE1E2D;
}
.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: #981824;
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(62, 72, 82, 0.92);
background: radial-gradient(rgba(62, 72, 82, 0.8) 0%, rgba(62, 72, 82, 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='%23BE1E2D' 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: #3E4852;
outline-style: solid;
outline-offset: 1px;
outline-width: 2px;
}
.c-card__picture {
width: 100%;
flex: auto;
display: block;
}
.c-card__img {
object-fit: cover;
width: 100%;
height: 100%;
}
.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: #3E4852;
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: #BE1E2D;
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 {
padding: 16px 32px;
background-color: #F8F8F8;
}
.c-card__heading {
font-size: 1rem;
line-height: 1.5;
color: #656565;
}
.c-card__subheading {
color: #999999;
}
.c-card__textline {
color: #999999;
}
*:not(.c-card__textline) + .c-card__textline {
margin-top: 16px;
}
.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: #BE1E2D;
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: #BE1E2D;
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: #BE1E2D;
color: #FFFFFF;
transform-origin: left bottom;
transition: all 200ms linear;
}
.c-event-card:hover .c-event-card__date {
background-color: #BE1E2D;
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: #BE1E2D;
}
.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: #656565;
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: #BE1E2D;
}
}
@media screen and (min-width: 840px) and (max-width: 1343px) {
.c-hero__caption {
padding: 2.5vw;
font-size: 2.5vw;
line-height: 1.2;
}
}
@media screen and (min-width: 1344px) {
.c-hero__caption {
font-size: 2rem;
line-height: 1.25;
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: #BE1E2D;
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: #a21a26;
}
.c-hero__scroll:hover > svg {
transform: translateX(3px);
}
.c-hero__scroll:focus {
outline: none;
background: #ab1b29;
box-shadow: 0 0 0 3px #f3b4ba;
}
.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(101, 101, 101, 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: #BE1E2D;
}
/*
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: #656565;
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: #C8C8C8;
transform: scaleX(0);
transform-origin: bottom right;
transition: transform 300ms cubic-bezier(0.86, 0, 0.07, 1);
}
.c-nav__link:hover {
color: #BE1E2D;
}
.c-nav__link:hover::before {
transform: scaleX(1);
transform-origin: bottom left;
}
.c-nav__link.is-active {
font-weight: 500;
color: #3E4852;
}
.c-nav__link.is-active::before {
transform: scaleX(1);
transform-origin: bottom left;
background-color: #5B6978;
}
.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 #5B6978;
font-weight: bold;
color: #5B6978;
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: #5B6978;
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: #BE1E2D;
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: #ab1b29;
}
.c-slide-indicator__button:focus {
outline: none;
background-color: #ab1b29;
}
.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: #BE1E2D;
}
.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: #3E4852;
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: #BE1E2D;
}
.c-subnav__item.is-active .c-subnav__link {
color: #3E4852;
font-weight: bold;
}
.c-subnav__item.is-active .c-subnav__link::before {
border-color: #3E4852;
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;
color: #BE1E2D;
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: #3E4852;
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: #3E4852;
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: #F5F5F5;
}
.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: #5B6978;
}
.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: #5B6978;
}
.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;
}
@media screen and (min-width: 495px) {
.o-contact__card {
margin-bottom: 24px;
}
}
.o-contact__address {
margin-top: 24px;
}
.o-contact__numbers {
margin-top: 16px;
}
.o-contact__table {
border-collapse: collapse;
width: 100%;
}
.o-contact__table td:first-child {
font-weight: 600;
color: #2C2C2C;
}
.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: #FFFFFF;
}
@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(255, 255, 255, 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: #5B6978;
}
}
.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-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: #FFFFFF;
background-color: #3E4852;
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: 56px;
}
.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: #FFFFFF;
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(0, 0, 0, 0.15);
transition: opacity 150ms linear;
}
.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: #FFFFFF;
position: relative;
padding: 12px 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: 88px;
}
@media screen and (min-width: 1100px) {
.o-header__toggle {
display: none;
}
}
.o-intro {
position: relative;
z-index: 0;
background-color: #D5D8DB;
}
@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: #BE1E2D;
}
.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: #3E4852 !important;
}
.o-intro__button {
color: #656565 !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: #5B6978;
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%, #5B6978 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: #FFFFFF;
background-color: #BE1E2D;
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: #FFFFFF;
text-decoration: none;
transition: color 200ms;
}
.o-subfooter__link:hover, .o-subfooter__link:active {
outline: none !important;
}
.o-subfooter__link:hover {
color: rgba(255, 255, 255, 0.7);
}
.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: #5B6978;
border-color: #5B6978;
}
.o-tabslider__button.is-active {
color: #FFFFFF;
background-color: #5B6978;
border-color: #5B6978;
}
.o-tabslider__button:focus {
outline: none;
border-color: #5B6978;
}
.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;
}
@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: #3E4852;
}
}
@media screen and (min-width: 840px) {
.o-usp__main {
display: flex;
}
}
.o-usp__text {
padding: 32px 0;
color: #FFFFFF;
background-color: #3E4852;
}
@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: #BE1E2D;
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: #3E4852;
}
.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: #5B6978;
}
.u-bg-primary--500 {
background-color: #5B6978;
}
.u-color-primary--700 {
color: #3E4852;
}
.u-bg-primary--700 {
background-color: #3E4852;
}
.u-color-secondary--500 {
color: #BE1E2D;
}
.u-bg-secondary--500 {
background-color: #BE1E2D;
}
.u-color-tertiary--500 {
color: #D5D8DB;
}
.u-bg-tertiary--500 {
background-color: #D5D8DB;
}
.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: #F5F5F5;
}
.u-bg-neutral--200 {
background-color: #F5F5F5;
}
.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;
}
/*
* 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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy9zdHlsZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzEtU2V0dGluZ3MvX3NldHRpbmdzLmNvbG9ycy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzEtU2V0dGluZ3MvX3NldHRpbmdzLmNvbmZpZy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzEtU2V0dGluZ3MvX3NldHRpbmdzLnR5cG9ncmFwaHkuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy8xLVNldHRpbmdzL19zZXR0aW5ncy5icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzItVG9vbHMvX3Rvb2xzLmNvbHVtbi5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzItVG9vbHMvX3Rvb2xzLmZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvMi1Ub29scy9fdG9vbHMubWVkaWFRdWVyaWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvMi1Ub29scy9fdG9vbHMudG9vbGJveC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzItVG9vbHMvX3Rvb2xzLnppbmRleC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzMtRWxlbWVudHMvX2VsZW1lbnRzLmJhc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy8zLUVsZW1lbnRzL19lbGVtZW50cy5oZWFkaW5ncy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzMtRWxlbWVudHMvX2VsZW1lbnRzLmxpc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNC1MYXlvdXRzL19sYXlvdXRzLmNvbnRhaW4uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy80LUxheW91dHMvX2xheW91dHMuc3BsaXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy80LUxheW91dHMvX2xheW91dHMucmVzdHJpY3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5idXR0b24uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuZ2hvc3RidXR0b24uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuY2FyZC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5jbG9zZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5jb25uZWN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmRhdGEuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuZGF0ZUxhYmVsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmRvd25sb2FkTGlzdC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5ldmVudENhcmQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuZmlsZVVwbG9hZC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5mb3JtR3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuZm9ybUZlZWRiYWNrLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmhhbWJ1cmdlci5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5oZWFkaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLmhlcm8uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuaW5wdXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMubGFuZ3VhZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMubmF2LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLnBhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMucGFnZVRpdGxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLnByb2plY3Rvci5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5zZXJ2aWNlUG9pbnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuc2l0ZW1hcC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5za2lwTGluay5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy5zbGlkZS1pbmRpY2F0b3Iuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMuc3VibmF2LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLnRleHQtYnV0dG9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNS1Db21wb25lbnRzL19jb21wb25lbnRzLnRvZ2dsZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzUtQ29tcG9uZW50cy9fY29tcG9uZW50cy50cmFkZW1hcmsuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMudmFjYW5jeVByb3BlcnRpZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy81LUNvbXBvbmVudHMvX2NvbXBvbmVudHMudmlkZW8uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5hY2NvcmRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmFwcGx5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5ibG9jay5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuYm9keS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuY2FsbG91dEJhci5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuY2FyZC1ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5jb250YWN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5jb29raWVCYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmRvdWJsZUltYWdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5kb3VibGVUZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5kb3VibGVVc3Auc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmRvd25sb2Fkcy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuZXZlbnQuc2NzcyIsIndlYnBhY2s6Ly8vLi88bm8gc291cmNlPiIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmV2ZW50cy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMuZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5mb3JtLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5oZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLmludHJvLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5sb2dvcy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMubWFwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5uZXdzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy5vdmVybGF5TWVudS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMucXVvdGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLnJlZmVyZW5jZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLnN1YmZvb3Rlci5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMudGFic2xpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy50ZWFtLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy50aGFua3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy82LU9yZ2FuaXNtcy9fb3JnYW5pc21zLnVzcC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzYtT3JnYW5pc21zL19vcmdhbmlzbXMudmFjYW5jaWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNi1PcmdhbmlzbXMvX29yZ2FuaXNtcy52YWNhbmN5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvNy1UZW1wbGF0ZXMvX3RlbXBsYXRlcy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzgtU2NvcGVzL19zY29wZXMuY2hlY2tsaXN0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvOC1TY29wZXMvX3Njb3Blcy50ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvOS1VdGlsaXRpZXMvX3V0aWxpdGllcy5jb2xvcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy85LVV0aWxpdGllcy9fdXRpbGl0aWVzLmZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvOS1VdGlsaXRpZXMvX3V0aWxpdGllcy5oZWxwZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvOS1VdGlsaXRpZXMvX3V0aWxpdGllcy5zaGFtZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzktVXRpbGl0aWVzL191dGlsaXRpZXMuc3BhY2luZy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzLzktVXRpbGl0aWVzL191dGlsaXRpZXMudmlzaWJsZUdyaWQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBZ0I7QUFDaEI7Ozs7Ozs7Z0VBQUE7QUNEQTs7OzsrREFBQTtBQWtEQTs7Ozs7Ozs7Ozs7O0dBQUE7QUNsREE7OzhDQUFBO0FBSUE7OztFQUFBO0FDSkE7Ozs7Z0VBQUE7QUFNQTs7R0FBQTtBQStDQTs7R0FBQTtBQ3JEQTs7a0RBQUE7QUpjQTs7K0RBQUE7QUtkQTs7K0VBQUE7QUFJQTs7O0lBQUE7QUFrQkE7OztJQUFBO0FBUUE7O0lBQUE7QUM5QkE7O2dGQUFBO0FBS0E7Ozs7Ozs7OztHQUFBO0FDTEE7Z0RBQUE7QUNBQTs7c0RBQUE7QUFLQTs7Ozs7Ozs7OztHQUFBO0FBaUNBOzs7O0dBQUE7QUFlQTtBQU9BO0FBT0E7QUFrQkE7Ozs7Ozs7Ozs7O0dBQUE7QUF3QkE7Ozs7Ozs7Ozs7Ozs7R0FBQTtBQWlDQTs7R0FBQTtBQVNBOzs7Ozs7Ozs7Ozs7O0dBQUE7QUEwQkE7Ozs7Ozs7Ozs7Ozs7O0dBQUE7QUFnQkE7Ozs7R0FBQTtBQWtCQTs7O0dBQUE7QUF3QkE7O0dBQUE7QUFxQ0E7O0dBQUE7QUNoUkE7Ozt3R0FBQTtBQWlCQTs7Ozs7R0FBQTtBVEtBOzsrREFBQTtBVXRCQTs7Z0ZBQUE7QUFJQTs7Ozs7Ozs7R0FBQTtBQVVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NWMkxGOztBVXhMQTtFSlNNO0VBUkE7RUlDSjtFQUNBLGlCUGZrQjtFT2dCbEIsa0NQK0JhO0VPOUJiO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQWM7Q1Y2TGhCOztBVTFMQTtFQUNFO0VBQ0E7RUFDQTtDVjZMRjs7QVV6TEE7Ozs7OztHQUFBO0FBT0E7RUFDRTtFQUNBO0VBQ0E7Q1Y0TEY7QVUxTEU7RUFHRTtDVjBMSjs7QVV0TEE7O0dBQUE7QUFHQTtFQUNFO0VBQ0E7RUFDQTtFQUFtQjtDVjBMckI7O0FVdkxBO0dBQUE7QUFFQTtFQUNFO0NWMExGOztBVXZMQTs7Ozs7R0FBQTtBQU1BO0VBQ0U7RUFBd0I7RUFDeEI7RUFBYztFQUNkO0NWNExGOztBVXpMQTs7O0dBQUE7QUFJQTs7O0VBR0U7Q1Y0TEY7O0FVdkxBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7VUFBQTtDVjBMRjtBVXhMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NWMExKO0FVdExJO0VBQ0U7RUFDQTtFQUNBO0NWd0xOOztBVWhMQTs7OztFQUlFO0VBQ0E7Q1ZtTEY7O0FXN1RBO0VMZ0NNO0VBUkE7Q04wU047O0FXOVRBO0VMNEJNO0VBUkE7RUtsQkw7Q1hrVUQ7O0FXL1RBO0VMdUJNO0VBUkE7RUtiTDtDWG1VRDs7QVdoVUE7RUxrQk07RUFSQTtFS1JMO0NYb1VEOztBV2pVQTtFTGFNO0VBUkE7RUtITDtDWHFVRDs7QVkxVkE7O3lGQUFBO0FBS0E7O0dBQUE7QUFJQTs7RUFFQztFQUNBO0VBQ0E7Q1owVkQ7O0FZdlZBO0VBQ0M7Q1owVkQ7O0FZclZBOztHQUFBO0FBS0M7O0VBRUM7Q1pzVkY7O0FBclZBOzsrREFBQTtBYTlCQTs7Z0ZBQUE7QUFLQTtFTDJPQztFQUNBO0VBQ0E7Q1I2SUQ7QU94VkM7RU1sQ0Q7SUxpUEk7R1I2SUY7Q0FDRjtBTzdWQztFTWxDRDtJTHdQRTtJQUNBO0dSMklBO0NBQ0Y7O0FjMVlBOzs7O29GQUFBO0FBT0E7RUFDQztFQUNBO0VBQ0E7Q2QyWUQ7QU85V0M7RU9oQ0Q7SUFPRTtHZDJZQTtDQUNGOztBY3ZZQTs7O0dBQUE7QUFLQTtFTndOQztFQUNBO0VBQ0E7Q1JrTEQ7QU83WEM7RU9mRDtJTmdPRztHUmdMRDtDQUNGO0FPbFlDO0VPZkQ7SU5xT0U7SUFDQTtHUmdMQTtDQUNGOztBT3hZQztFT1ZEO0lBSUU7R2RtWkE7Q0FDRjtBTzlZQztFT0ZBO0lBRUU7SUFDQTtHZGtaRDtDQUNGO0FPcFpDO0VPRkE7SUFNRTtJQUNBO0dkb1pEO0NBQ0Y7QU8xWkM7RU9VQTtJTnVESztHUjZWSjtDQUNGO0FPL1pDO0VPVUE7SUFNRTtHZG1aRDtDQUNGO0FjOVlFO0VBQ0M7Q2RnWkg7QU92YUM7RU9zQkM7SUFJRTtJQUNBO0dkaVpGO0NBQ0Y7QU83YUM7RU9zQkM7SUFRRTtHZG1aRjtDQUNGOztBT2xiQztFT3VDRTtJQUNDO0lBQ0E7SUFDQTtHZCtZRjtFYzdZQztJQUNDO0dkK1lGO0NBQ0Y7QWN6WUE7OztHQUFBO0FQcERDO0VPd0REO0lBRUU7SUFDQTtJQUNBO0lBQ0E7R2QyWUE7Q0FDRjtBT3pjQztFT3dERDtJQVFFO0lBQ0E7R2Q2WUE7Q0FDRjs7QWN2WUE7RUFDQztFQUNBO0NkMFlEO0FPcGRDO0VPd0VEO0lBS0U7SUFDQTtHZDJZQTtDQUNGOztBTzFkQztFT3FGQTtJQUNDO0dkeVlBO0NBQ0Y7QWV2Z0JBOzs7OztnRkFBQTtBUnVDQztFUS9CRDtJQUVJO0lBQ0E7SUFDQTtJQUNBO0dmdWdCRjtDQUNGO0FPOWVDO0VRL0JEO0lBUUk7R2Z5Z0JGO0NBQ0Y7O0FPbmZDO0VRbkJEO0lBRUk7SUFDQTtJQUNBO0dmeWdCRjtDQUNGO0FPM2ZDO0VRbkJEO0lBUUk7R2YwZ0JGO0NBQ0Y7O0FBamdCQTs7OytEQUFBO0FnQnRDQTs7OEVBQUE7QUNBQTtFQUNDO0NqQmlqQkQ7O0FpQjlpQkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtDakJpakJEOztBaUI3aUJBO0VBQ0M7RUFDQTtDakJnakJEO0FpQjdpQkU7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7Q2pCOGlCSDs7QWlCemlCQTtFQUNDO0VBQ0E7Q2pCNGlCRDtBaUIxaUJDO0VBQ0M7Q2pCNGlCRjs7QWtCcmtCQTtFVjhKRTtFRjFJSTtFQVJBO0VZVEw7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDbEJ5a0JEO0FrQnZrQkM7RUFDQztFQUNBO0NsQnlrQkY7QWtCdmtCQztFQUNDO0VBQ0E7Q2xCeWtCRjtBa0J2a0JDO0VBQ0M7RUFDQTtDbEJ5a0JGO0FrQnJrQkM7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDbEJ1a0JGO0FrQnBrQkM7RUFDQztFQUNBO0NsQnNrQkY7O0FrQmxrQkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtDbEJxa0JEO0FrQm5rQkM7RUFDQztDbEJxa0JGOztBa0Jqa0JBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NsQm9rQkQ7QWtCbGtCQztFQUNDO0NsQm9rQkY7QWtCaGtCQztFQUNDO0VBQ0E7Q2xCa2tCRjtBa0IvakJDO0VBQ0M7RUFDQTtDbEJpa0JGOztBbUJscUJBOztnRkFBQTtBQVNBO0VYaUtFO0VGMUlJO0VBUkE7RWFaTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDbkJncUJEO0FtQjlwQkM7RUFDQztFQUNBO0NuQmdxQkY7QW1CN3BCQztFQUNDO0VBQ0E7Q25CK3BCRjtBbUI3cEJDO0VBQ0M7RUFDQTtDbkIrcEJGO0FtQjNwQkM7RVhpSUM7RVcvSEE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q25CNnBCRjtBbUJ6cEJFO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDbkIycEJIOztBbUJ0cEJBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7Q25CeXBCRDtBbUJ2cEJDO0VBQ0M7Q25CeXBCRjs7QW1CcnBCQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDbkJ3cEJEO0FtQnRwQkM7RUFDQztDbkJ3cEJGO0FtQnJwQkM7RUFDQztFQUNBO0NuQnVwQkY7QW1CbnBCQztFQUNDO0VBQ0E7Q25CcXBCRjs7QW9CenVCQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3BCNHVCRDs7QW9CenVCQTs7R0FBQTtBQUdBO0VBRUM7RUFDQTtDcEIydUJEO0FRdGlCQztFQUVDO0NSdWlCRjtBb0I1dUJDO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NwQjZ1QkY7QW9CenVCQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3BCMnVCRjtBb0J0dUJDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NwQnd1QkY7QW9CbnVCRTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0NwQnF1Qkg7QW9CbHVCRTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0NwQm91Qkg7QW9CanVCQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0NwQm11QkY7O0FvQi90QkE7RUFDQztFQUNBO0VBQ0E7Q3BCa3VCRDs7QW9CL3RCQTtFQUNDO0VBQ0E7RUFDQTtDcEJrdUJEOztBb0IvdEJBO0VkM0VNO0VBUkE7RWNxRkw7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDcEJtdUJEO0FvQmp1QkM7RUFDQztDcEJtdUJGO0FvQi90QkM7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3BCZ3VCRjtBb0I5dEJFO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7Q3BCZ3VCSDs7QW9CM3RCQTtFQUNDO0VBQ0E7Q3BCOHRCRDs7QW9CNXRCQTtFZDdITTtFQVJBO0VjdUlMO0NwQmd1QkQ7O0FvQjl0QkE7RUFDQztDcEJpdUJEOztBb0IvdEJBO0VBQ0M7Q3BCa3VCRDtBb0IvdEJDO0VBQ0M7Q3BCaXVCRjs7QXFCaDRCQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NyQm00QkQ7QXFCajRCQztFQUNDO0NyQm00QkY7QXFCaDRCQztFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NyQmk0QkY7QXFCLzNCQztFQUNDO0NyQmk0QkY7QXFCLzNCQztFQUNDO0NyQmk0QkY7QXFCOTNCQztFQUNDO0NyQmc0QkY7O0FzQnQ2QkE7RUFDQztFQUNBO0VBQ0E7Q3RCeTZCRDtBT2o1QkM7RWUzQkQ7SUFNRTtHdEIwNkJBO0NBQ0Y7O0FzQnQ2QkE7RWhCU007RUFSQTtFZ0JFTDtFQUNBO0VBQ0E7RUFDQTtDdEJ5NkJEO0FRbnVCQztFQUVDO0NSb3VCRjtBc0IxNkJDO0VBQ0M7RUFDQTtDdEI0NkJGO0FzQno2QkM7RUFDQztFQUNBO0VBQ0E7RUFDQTtDdEIyNkJGOztBc0J0NkJBO0VBQ0M7RUFDQTtDdEJ5NkJEO0FPajdCQztFZU1EO0lBS0U7R3RCMDZCQTtDQUNGOztBdUJsOUJBO0VBQ0M7Q3ZCcTlCRDs7QXVCbDlCQTtFQUNDO0N2QnE5QkQ7O0F1Qmw5QkE7RUFDQztFQUNBO0VBQ0E7Q3ZCcTlCRDs7QXVCbDlCQTtFQUNJO0VBQ0g7Q3ZCcTlCRDtBUTd3QkM7RUFFQztDUjh3QkY7QXVCbjlCRTtFQUNDO0N2QnE5Qkg7QXVCbjlCRTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0N2QnE5Qkg7O0F3QjUvQkE7RUFDQztFQUNBO0VBQ0E7Q3hCKy9CRDs7QXdCMy9CQTtFQUNDO0VBQ0E7Q3hCOC9CRDs7QXdCMS9CQTtFbEJtQk07RUFSQTtFa0JUTDtDeEI4L0JEOztBd0IxL0JBO0VsQmFNO0VBUkE7RWtCSEw7Q3hCOC9CRDs7QXlCbmhDQTtFQUNFO0VBQ0E7RUFDQTtDekJzaENGOztBeUJuaENBO0VBQ0U7RUFDQTtDekJzaENGO0F5QnBoQ0U7RUFDRTtDekJzaENKOztBeUJsaENBO0VBQ0U7RUFDQTtFQUNBO0N6QnFoQ0Y7O0F5QmxoQ0E7RUFDRTtFQUNBO0N6QnFoQ0Y7QXlCbmhDRTtFQUNFO0N6QnFoQ0o7O0F5QmpoQ0E7RUFDRTtFQUNBO0N6Qm9oQ0Y7QXlCbGhDRTtFQUNFO0N6Qm9oQ0o7O0EwQjVpQ0E7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDMUI4aUNEO0FROTFCQztFQUVDO0NSKzFCRjtBMEIvaUNDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QzFCaWpDRjs7QTBCNWlDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0MxQitpQ0Q7QTBCN2lDQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzFCK2lDRjtBMEIzaUNFO0VBQ0M7QzFCNmlDSDs7QTBCdmlDQTtFQUNDO0VBQ0E7RUFDQTtDMUIwaUNEOztBMEJ0aUNBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDMUJ5aUNEO0EwQnZpQ0M7RUFDQztFQUNBO0VBQ0E7QzFCeWlDRjs7QTBCbmlDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzFCc2lDRDtBMEJwaUNDO0VBQ0M7QzFCc2lDRjs7QTBCamlDQTtFcEJqRU07RUFSQTtFb0IyRUw7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDMUJxaUNEO0EwQm5pQ0M7RUFDQztDMUJxaUNGOztBMEJoaUNBO0VwQi9FTTtFQVJBO0VvQnlGTDtFQUNBO0VBQ0E7RUFDQTtDMUJvaUNEO0EwQmxpQ0M7RUFDQztDMUJvaUNGOztBMEIvaENBO0VwQjVGTTtFQVJBO0VvQnNHTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0MxQm1pQ0Q7QTBCamlDQztFQUNDO0MxQm1pQ0Y7O0EyQjVwQ0E7RUFDQztDM0IrcENEOztBMkIzcENBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QzNCOHBDRDs7QTJCMXBDQTtFbkJpSkU7RUYxSUk7RUFSQTtFcUJJTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzNCOHBDRDtBMkI1cENDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0MzQjhwQ0Y7QTJCM3BDQztFQUNDO0MzQjZwQ0Y7O0EyQnhwQ0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtDM0IycENEO0EyQnpwQ0M7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzNCMnBDRjtBMkJ6cENFO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDM0IycENIO0EyQnZwQ0U7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzNCeXBDSDtBMkJ2cENHO0VBQ0M7QzNCeXBDSjtBMkJ0cENHO0VBQ0M7QzNCd3BDSjs7QTJCanBDQTtFQUNDO0MzQm9wQ0Q7O0EyQmhwQ0E7RUFDQztJQUNDO0lBQ0E7SUFDQTtJQUNBO0czQm1wQ0E7Q0FDRjtBNEIvdkNBO0V0QnFCTTtFQVJBO0VzQlhKO0VBQ0E7RUFDQTtDNUJrd0NGOztBNEIvdkNBO0VBQ0U7QzVCa3dDRjtBNEJod0NFO0V0QldJO0VBUkE7RXNCREY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzVCbXdDSjs7QTZCcHhDQTtFdkJvQk07RUFSQTtFRStJSjtFcUJ4SkE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDN0J3eENGO0E2QnR4Q0U7RUFDRTtDN0J3eENKO0E2QnJ4Q0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0M3QnV4Q0o7QTZCcHhDRTtFQUNFO0M3QnN4Q0o7O0E4Qm56Q0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDOUJzekNEO0E4QnB6Q0M7RUFDQztFQUNBO0VBQ0E7RUFDQTtDOUJzekNGO0E4Qm56Q0M7RUFHQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzlCbXpDRjtBOEJoekNDO0VBQ0M7RUFDQTtDOUJrekNGO0E4Qi95Q0M7RUFDQztFQUNBO0M5Qml6Q0Y7QThCN3lDRTtFQUNDO0M5Qit5Q0g7QThCN3lDRTtFQUVDO0M5Qjh5Q0g7QThCenlDRTtFQUNDO0M5QjJ5Q0g7QThCenlDRTtFQUNDO0VBQ0E7QzlCMnlDSDtBOEJ6eUNFO0VBQ0M7RUFDQTtDOUIyeUNIOztBK0J4M0NBO0V6QmdDTTtFQVJBO0V5QnRCTDtFQUNBO0MvQjQzQ0Q7O0FPeDFDQztFd0JqQ0Q7SUFFRTtHL0I0M0NBO0NBQ0Y7O0FPOTFDQztFeUI1QkQ7SXhCcU9DO0lBQ0E7SUFDQTtHUjBwQ0M7Q0FDRjtBT3QyQ0M7RXlCNUJEO0l4QjJPSTtHUjJwQ0Y7Q0FDRjtBTzMyQ0M7RXlCNUJEO0l4QmtQRTtJQUNBO0dSeXBDQTtDQUNGOztBZ0N2NENBO0VBQ0M7RUFDQTtDaEMwNENEOztBZ0N2NENBO0VBQ0M7RUFDQTtFQUNBO0NoQzA0Q0Q7QU81M0NDO0V5QmpCRDtJQU1FO0doQzI0Q0E7Q0FDRjs7QWdDeDRDQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q2hDMjRDRDtBZ0N6NENDO0VBQ0M7RUFDQTtFQUNBO0NoQzI0Q0Y7O0FnQ3Y0Q0E7RUFDQztDaEMwNENEOztBZ0N2NENBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDaEN5NENEO0FPaDZDQztFeUJjRDtJQVlFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7R2hDMDRDQTtFZ0N4NENBO0lBQ0M7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0doQzA0Q0Q7Q0FDRjtBT3A3Q0M7RXlCY0Q7SUFpQ0U7SUFDQTtJQUNBO0doQ3k0Q0E7Q0FDRjtBTzM3Q0M7RXlCY0Q7STFCckJNO0lBUkE7STBCcUVKO0lBQ0E7R2hDMjRDQTtDQUNGOztBZ0N4NENBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDaEMyNENEO0FnQ3o0Q0M7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NoQzI0Q0Y7O0FnQ3I0Q0E7RUFLQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NoQ280Q0Q7QU90K0NDO0V5QmdGRDtJQUVFO0doQ3c1Q0E7Q0FDRjtBZ0N2NENDO0VBQ0M7Q2hDeTRDRjtBZ0N0NENDO0VBQ0M7RUFDQTtDaEN3NENGO0FnQ3Q0Q0U7RUFDQztDaEN3NENIO0FnQ3A0Q0M7RUFDQztFQUNBO0VBQ0E7Q2hDczRDRjs7QWlDbGhEQTtFM0JpQk07RUFSQTtFMkJQTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q2pDc2hERDtBaUNwaERDO0VBQ0M7RUFDQTtFQUNBO0NqQ3NoREY7QWlDbmhEQztFQUNDO0VBQ0E7Q2pDcWhERjtBaUNsaERVO0VBQ1I7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDakNvaERGOztBa0M5aURBO0VBQ0M7Q2xDaWpERDs7QWtDOWlEQTtFNUJjTTtFQVJBO0VFK0lKO0UwQmxKRDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7VUFBQTtFQUNBO0NsQ2tqREQ7QWtDaGpEQztFQUNDO0NsQ2tqREY7O0FrQzFpREE7RUFDQztFQUNBO0NsQzZpREQ7O0FrQzFpREE7RUFDQztFQUNBO0NsQzZpREQ7O0FrQzFpREE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q2xDNmlERDtBa0MzaURDO0VBQ0M7RUFDQTtFQUNBO0NsQzZpREY7O0FrQ3ppREE7RUFDQztFQUNBO0NsQzRpREQ7QWtDMWlEQztFQUNDO0NsQzRpREY7QWtDemlEQztFQUNDO0NsQzJpREY7QWtDeGlEQztFQUNDO0NsQzBpREY7QWtDdmlEQztFQUNDO0NsQ3lpREY7O0FrQ3JpREE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDbEN3aUREO0FrQ3RpREM7RUFDQztFQUNBO0NsQ3dpREY7O0FtQzVvREE7O0VBQUE7QUFXQTtFQUNDO0VBQ0E7Q25DdW9ERDs7QW1DcG9EQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDbkN1b0REOztBbUNub0RBO0U3QkVNO0VBUkE7RTZCUUw7RUFDQTtDbkN1b0REO0FtQ3JvREM7RUFDQztDbkN1b0RGOztBbUNsb0RBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDbkNvb0REO0FRaDlDQztFQUVDO0NSaTlDRjtBbUNyb0RDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q25DdW9ERjtBbUNwb0RDO0VBQ0M7Q25Dc29ERjtBbUNwb0RFO0VBQ0M7RUFDQTtDbkNzb0RIO0FtQ2pvREM7RUFDQztFQUNBO0NuQ21vREY7QW1Dam9ERTtFQUNDO0VBQ0E7RUFDQTtDbkNtb0RIO0FtQy9uREM7RUFDQztFQUNBO0VBQ0E7RUFDQTtDbkNpb0RGOztBb0Mvc0RBO0VBQ0M7RUFDQTtFQUNBO0U1QjJKQztFNEJ6SkQ7RUFDQTtFQUNBO0VBQ0E7Q3BDa3RERDs7QW9DL3NEQTtFQUNDO0VBQ0E7RUFDQTtDcENrdEREO0FPcnNEQztFNkJoQkQ7SUFPRTtHcENrdERBO0VvQ2h0REE7SUFJQztHcEMrc0REO0VvQzVzREE7SUFDQztHcEM4c0REO0NBQ0Y7QW9DM3NEQztFQUNDO0VBQ0E7Q3BDNnNERjs7QW9DenNEQTs7OztFQUlDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDcEM0c0REOztBb0N6c0RBO0VBQ0M7RUFDQTtDcEM0c0REOztBb0N6c0RBO0VBQ0M7RUFDQTtFQUNBO0NwQzRzREQ7QW9DMXNEQztFQUNDO0VBQ0E7Q3BDNHNERjtBb0N6c0RDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7Q3BDMnNERjs7QW9DdnNEQTs7RUFFQztFQUNBO0NwQzBzREQ7QW9DeHNEQzs7RUFDQztFQUNBO0NwQzJzREY7O0FvQ3ZzREE7RUFDQztDcEMwc0REOztBcUMzeURBOztHQUFBO0FBSUE7RTdCNE9DO0VBQ0E7RUFDQTtFQXpCQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U2QnROQztFQUNBO0VBQ0E7Q3JDbXpERjtBT3J4REM7RThCbkNEO0k3QmtQSTtHUjBrREY7Q0FDRjtBTzF4REM7RThCbkNEO0k3QnlQRTtJQUNBO0dSd2tEQTtDQUNGO0FPaHlEQztFOEJuQ0Q7SUFRSTtJQUNBO0dyQyt6REY7Q0FDRjs7QXFDNXpEQTtFQUNFO0VBQ0E7RUFDQTtDckMrekRGO0FPNXlEQztFOEJ0QkQ7SUFNSTtHckNnMERGO0NBQ0Y7QU9qekRDO0U4QnRCRDtJQVNJO0dyQ2swREY7Q0FDRjs7QU90ekRDO0U4QlREO0lBRUk7SUFDQTtHckNrMERGO0NBQ0Y7O0FxQy96REE7RS9CTE07RUFSQTtFK0JlSjtDckNtMERGOztBcUNoMERBO0UvQlZNO0VBUkE7RStCb0JKO0NyQ28wREY7O0FxQ2gwREE7RS9CaEJNO0VBUkE7RStCMEJKO0NyQ28wREY7O0FzQ3QzREE7RUFDQztFQUNBO0N0Q3kzREQ7O0FzQ3IzREE7RUFDQztFQUFBO0VBQ0E7RUFBQTtFQUNBO0VBQUE7RUFDQTtDdEN3M0REOztBc0NwM0RBO0VoQ2tCTTtFQVJBO0VnQ1JMO0VBQUE7RUFDQTtFQUFBO0VBQ0E7TUFBQTtVQUFBO0VBQ0E7RUFDQTtDdEN3M0REOztBc0NwM0RBO0VBQ0M7RUFBQTtFQUNBO0VBQUE7RUFDQTtNQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0N0Q3UzREQ7QXNDcjNEQztFQUNDO0N0Q3UzREY7QXNDcDNEQztFQUNDO0N0Q3MzREY7O0FzQ2ozREE7RUFDQztFQUFBO0VBQ0E7RUFBQTtFQUNBO01BQUE7RUFDQTtFQUNBO0N0Q28zREQ7O0FzQ2gzREE7RUFFQztFQUNBO0VBQ0E7Q3RDazNERDtBT3I0REM7RStCZUQ7SUFPRTtHdENtM0RBO0NBQ0Y7O0F1Qzc2REE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0N2Q2c3REQ7O0F1QzU2REE7RUFDQztFQUNBO0VBQ0E7RUFDQSxtQkFoQm9CO0VBaUJwQjtDdkMrNkREOztBdUMzNkRBO0UvQm1NQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0UrQnJNQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3ZDazdERDtBT3g2REM7RWdDakJEO0lBVUU7R3ZDbTdEQTtDQUNGOztBdUMvNkRBO0VBQ0M7Q3ZDazdERDs7QXVDOTZEQTtFQUNDO0N2Q2k3REQ7O0F1Qzc2REE7RWpDZk07RUFSQTtFaUN5Qkw7RUFDQTtDdkNpN0REOztBdUM3NkRBO0VqQ3RCTTtFQVJBO0VpQ2dDTDtDdkNpN0REOztBd0N6K0RBO0VsQ2dDTTtFQVJBO0VrQ3RCTDtDeEM2K0REOztBd0MxK0RBO0VBQ0M7RUFDQTtFQUNBO0N4QzYrREQ7QXdDMytEQztFQUNDO0VBQ0E7Q3hDNitERjs7QXlDei9EQTs7R0FBQTtBQUlBO0VuQzRCTTtFQVJBO0VtQ2xCSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3pDNC9ERjtBeUMxL0RFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUFVO0N6QzYvRGQ7O0EwQzEvREE7RUFDQztFQUNBO0VBQ0E7QzFDNi9ERDs7QTBDMS9EQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDMUM2L0REO0EwQzMvREM7RUFDQztDMUM2L0RGO0EwQzEvREM7RUFDQztDMUM0L0RGO0EwQ3ovREM7RUFDQztDMUMyL0RGO0EwQ3gvREM7RUFDQztFQUNBO0MxQzAvREY7QTBDdi9EQztFQUNDO0VBQ0E7QzFDeS9ERjs7QTBDci9EQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDMUN3L0REO0EwQ3QvREM7RUFDQztDMUN3L0RGO0EwQ3IvREM7RUFFQztDMUNzL0RGO0EwQ24vREM7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQztDMUNtL0RIO0EwQy8rREM7RUFFQyw0QkFEUztFQUVULDhCQUZTO0VBR1QsK0JBSFM7RUFJVCw2QkFKUztFQUtUO0MxQ2cvREY7QTBDNytEQztFQUVDLDZCQURTO0VBRVQsK0JBRlM7RUFHVCxnQ0FIUztFQUlULDhCQUpTO0VBS1Q7RUFDQTtFQUNBO0MxQzgrREY7QTBDMStERTtFQUNDO0VBQ0E7RUFDQTtDMUM0K0RIO0EwQ3orREU7RUFDQztFQUNBO0MxQzIrREg7QTBDditEQztFQUNDO0MxQ3krREY7QTBDditERTtFQUVDO0MxQ3crREg7QTBDcitERTtFQUVDO0MxQ3MrREg7O0EyQy9sRUE7RUFDQztDM0NrbUVEOztBMkM5bEVBO0VBQ0M7RUFDQTtDM0NpbUVEO0FPOWtFQztFb0NyQkQ7SUFLRTtHM0NrbUVBO0NBQ0Y7O0EyQzlsRUE7RUFDQztDM0NpbUVEOztBMkM3bEVBO0VBQ0M7RUFDQTtFQUNBO0MzQ2dtRUQ7O0EyQzVsRUE7RUFDQztDM0MrbEVEOztBMkMzbEVBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzNDNmxFRDtBUS82REM7RUFFQztDUmc3REY7QTJDOWxFQztFQUNDO0MzQ2dtRUY7QTJDN2xFQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0MzQytsRUY7QTJDNWxFQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzNDOGxFRjtBMkM1bEVFO0VBQ0M7RUFDQTtDM0M4bEVIOztBMkN4bEVBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0MzQzJsRUQ7QTJDemxFQztFQUNDO0VBQ0E7RUFDQTtDM0MybEVGOztBMkNwbEVDO0VBQ0M7RUFDQTtDM0N1bEVGO0EyQ3JsRUU7RUFDQztFQUNBO0MzQ3VsRUg7QTJDbmxFQztFQUNDO0MzQ3FsRUY7O0E0QzVyRUE7OztHQUFBO0FBS0E7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUF3QztFQUN4QztFQUFZO0VBQ1o7RUFBK0I7RUFDL0I7RUFBYztFQUNkO0VBQ0E7RUFDQTtDNUNpc0VEO0FReC9EQztFQUVDO0NSeS9ERjtBNENsc0VDO0VBQ0M7QzVDb3NFRjtBNENsc0VDO0VBQ0M7RUFDQTtDNUNvc0VGO0E0Q2xzRUM7RUFDQztFQUNBO0VBQ0E7RUFDQTtDNUNvc0VGOztBNENoc0VBO0V0Q1hNO0VBUkE7Q053dEVOOztBNENqc0VBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDNUNvc0VEO0E0Q2xzRUM7RUFDQztDNUNvc0VGO0E0Q2pzRUM7RUFDQztDNUNtc0VGOztBNEM3ckVDO0VBQXNCO0M1Q2lzRXZCO0E0Q2hzRUM7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0M1Q2tzRUY7QTRDaHNFQztFQUNDO0M1Q2tzRUY7O0E2Q3J3RUE7RUFDQztFQUNBO0M3Q3d3RUQ7O0E2Q3B3RUE7RXJDNkpFO0VxQzFKRDtDN0Nzd0VEO0FReGtFQztFQUNDLGlCcUNqTVk7QzdDMndFZDs7QTZDcndFQTtFQUNDO0VBQ0EsbUJBcEJtQjtDN0M0eEVwQjtBNkN0d0VDO0VBQ0M7QzdDd3dFRjs7QTZDbndFQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDN0Nzd0VEO0E2Q3B3RUM7RUFDQztDN0Nzd0VGO0E2Q253RUM7RUFBUztDN0Nzd0VWO0E2Q253RUU7RUFBUztDN0Nzd0VYO0E2Q3J3RUU7RUFBVTtDN0N3d0VaO0E2Q3J3RUM7RUFDQztFQUNBO0M3Q3V3RUY7QTZDcndFRTtFQUNDO0M3Q3V3RUg7QTZDbndFQztFQUNDLGVBN0RxQjtDN0NrMEV2Qjs7QTZDaHdFQTtFdkN0Q007RUFSQTtFdUNnREw7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDN0Nvd0VEO0E2Q2x3RUM7RUFDQyxlQTNFcUI7QzdDKzBFdkI7O0E2Qy92RUE7RUFDQztFQUNBO0VBQ0EsbUJBckZtQjtFQXNGbkIsb0JBckZvQjtFQXNGcEI7RUFDQTtDN0Nrd0VEO0E2Q2h3RUM7RUFDQztFQUNBO0VBQ0E7RUFDQTtDN0Nrd0VGOztBOEN6MUVBO0VBRUM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDOUMyMUVEO0FRdm9FQztFQUVDO0NSd29FRjtBOEM1MUVDO0VBQ0M7QzlDODFFRjtBOEMzMUVDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QzlDNjFFRjs7QThDejFFQTtFQUNDO0VBQ0E7QzlDNDFFRDs7QThDejFFQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzlDNDFFRDtBOEMxMUVDO0VBQ0M7QzlDNDFFRjs7QStDdDRFQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0MvQ3k0RUQ7O0ErQ3I0RUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0MvQ3c0RUQ7QStDdDRFQztFQUNDO0MvQ3c0RUY7O0ErQ240RUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0MvQ3M0RUQ7O0FnRGg2RUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NoRG02RUY7O0FnRGg2RUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NoRG02RUY7O0FBajRFQTs7K0RBQUE7QWlEL0NBOzs4RUFBQTtBQ29CQTtFMUM0TkM7RUFDQTtFQUNBO0NSMHNFRDtBT3I1RUM7RTJDbkJEO0kxQ2tPSTtHUjBzRUY7Q0FDRjtBTzE1RUM7RTJDbkJEO0kxQ3lPRTtJQUNBO0dSd3NFQTtDQUNGOztBa0QvNkVBO0UxQ2tKRTtFMEMvSUQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q2xEaTdFRDtBUXB3RUM7RUFDQyxpQjBDdExZO0NsRDQ3RWQ7QWtEbDdFQztFQUNDO0NsRG83RUY7O0FrRGg3RUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q2xEbTdFRDtBTzc3RUM7RTJDQ0Q7SUFZRTtHbERvN0VBO0NBQ0Y7QU9sOEVDO0UyQ0NEO0lBZUU7R2xEczdFQTtDQUNGO0FrRG43RUM7RUFDQztDbERxN0VGOztBa0RqN0VBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDbERvN0VEO0FPMzlFQztFMkN5QkQ7SUFpQkU7R2xEcTdFQTtDQUNGO0FPaCtFQztFMkN5QkQ7SUFvQkU7R2xEdTdFQTtDQUNGO0FrRHI3RUM7RUFFQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NsRHM3RUY7QWtEbDdFRTtFQUNDO0NsRG83RUg7QWtEaDdFQztFQUNDO0NsRGs3RUY7QWtEaDdFRTtFQUNDO0NsRGs3RUg7O0FrRDc2RUE7RTVDckZNO0VBUkE7RTRDK0ZMO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDbERpN0VEO0FPdGdGQztFMkM4RUQ7STVDckZNO0lBUkE7R04waEZKO0NBQ0Y7O0FrRGg3RUE7QUFDQTtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0NsRGk3RUQ7QVF2M0VDO0VBQ0MsbUJBRjJCO0NSMjNFN0I7QU8xaEZDO0UyQzZGRDtJQVlFO0dsRHE3RUE7Q0FDRjtBTy9oRkM7RTJDNkZEO0lBZUU7R2xEdTdFQTtDQUNGO0FrRHI3RUM7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0NsRHM3RUY7O0FPOWlGQztFNENuQ0Q7STNDb0dNO0lBQUE7R1JtL0VKO0NBQ0Y7QU9yakZDO0U0Q25DRDtJM0MySE07SUFBQTtHUmsrRUo7Q0FDRjtBTzNqRkM7RTRDbkNEO0kzQ2dJTTtJQUFBO0dSbStFSjtDQUNGO0FPamtGQztFNENuQ0Q7STNDcUlNO0lBQUE7R1JvK0VKO0NBQ0Y7O0FtRG5tRkE7RUFDQztFQUNBO0NuRHNtRkQ7O0FPNWtGQztFNEN0QkQ7SUFFRTtHbkRxbUZBO0NBQ0Y7O0FPbGxGQztFNENmRDtJQUVFO0lBQ0Esb0JBMUJZO0duRDhuRlo7Q0FDRjs7QW1EaG1GQTtFQUNDO0NuRG1tRkQ7QU83bEZDO0U0Q1BEO0lBSUU7SUFDQTtHbkRvbUZBO0NBQ0Y7O0FRNTdFQztFQUNDLGlCMkNwS1k7Q25EbW1GZDs7QU92bUZDO0U0Q1FEO0lBRUU7R25Ea21GQTtDQUNGOztBbUQ5bEZBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7Q25EaW1GRDs7QW1EOWxGQTtFQUNDO0NuRGltRkQ7O0FPeG5GQztFNkN2Q0Q7STVDd0dNO0dSNGpGSjtDQUNGO0FPOW5GQztFNkN2Q0Q7STVDK0hNO0dSMGlGSjtDQUNGO0FPbm9GQztFNkN2Q0Q7STVDb0lNO0dSMGlGSjtDQUNGO0FPeG9GQztFNkN2Q0Q7STVDeUlNO0dSMGlGSjtDQUNGO0FPN29GQztFNkNqQ0E7STVDa0dLO0dSZ2xGSjtDQUNGO0FPbHBGQztFNkNqQ0E7STVDeUhLO0dSOGpGSjtDQUNGO0FPdnBGQztFNkNqQ0E7STVDOEhLO0dSOGpGSjtDQUNGO0FPNXBGQztFNkNqQ0E7STVDbUlLO0dSOGpGSjtDQUNGOztBcUR4c0ZDOzs7RUFBQTtBQU1EO0U1Q21CQztFNENqQkE7RUFDQTtDckR5c0ZEOztBc0R2c0ZBO0U5QzhNQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0U4Q2hOQTtFQUNBO0VBQ0U7Q3REOHNGSDs7QXNEM3NGQTtFOUM4TkM7RUFDQTtFQUNBO0NSaS9FRDtBTzVyRkM7RStDckJEO0k5Q29PSTtHUmkvRUY7Q0FDRjtBT2pzRkM7RStDckJEO0k5QzJPRTtJQUNBO0dSKytFQTtDQUNGO0FPdnNGQztFK0NyQkQ7STlDc0ZNO0lBQUE7R1Iyb0ZKO0NBQ0Y7QU83c0ZDO0UrQ3JCRDtJOUM2R007SUFBQTtHUjBuRko7Q0FDRjtBT250RkM7RStDckJEO0k5Q2tITTtJQUFBO0dSMm5GSjtDQUNGO0FPenRGQztFK0NyQkQ7STlDdUhNO0lBQUE7R1I0bkZKO0NBQ0Y7QU8vdEZDO0UrQ2JBO0k5QzhFSztHUmtxRko7Q0FDRjtBT3B1RkM7RStDYkE7STlDcUdLO0dSZ3BGSjtDQUNGO0FPenVGQztFK0NiQTtJOUMwR0s7R1JncEZKO0NBQ0Y7QU85dUZDO0UrQ2JBO0k5QytHSztHUmdwRko7Q0FDRjs7QXNEeHZGQTtFQUNDO0N0RDJ2RkQ7O0FzRHZ2RkE7RWhEUE07RUFSQTtDTjJ3Rk47O0F1RG55RkE7OztHQUFBO0FoRHVDQztFZ0R4QkQ7SUFFSTtJQUNBO0d2RDJ4RkY7Q0FDRjs7QU92d0ZDO0VnRGJHO0lBQ0U7R3ZEd3hGSjtDQUNGO0FPN3dGQztFZ0RqQkQ7SUFXSTtJQUNBO0d2RHV4RkY7Q0FDRjtBT254RkM7RWdEakJEO0lBaUJJO0lBRUE7SUFDQTtHdkRzeEZGO0V1RHB4RkU7SUFDRTtHdkRzeEZKO0V1RG54RkU7SUFDRTtHdkRxeEZKO0NBQ0Y7QU9oeUZDO0VnRGpCRDtJQWlDSTtJQUVBO0lBQ0E7R3ZEbXhGRjtFdURqeEZFO0lBQ0U7R3ZEbXhGSjtFdURoeEZFO0lBQ0UsaUJBekRrQjtHdkQyMEZ0QjtDQUNGOztBd0QxMEZBO0VBQ0M7RUFDQTtDeEQ2MEZEO0FPbHpGQztFaUQ3QkQ7SUFLRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0d4RDgwRkE7Q0FDRjs7QXdEMTBGQTtFQUdDO0VBQ0Esa0J0RFN3QjtFc0RSeEIsbUJ0RFF3QjtDRm0wRnpCO0FPajBGQztFaURmRDtJaERrUEU7SUFDQTtHUmttRkE7Q0FDRjtBT3YwRkM7RWlEZkQ7SWhEa1BFO0lBQ0E7R1J3bUZBO0NBQ0Y7QU83MEZDO0VpRGZEO0lBU0U7SUFDQTtJQUNBO0lBQ0E7R3hEdTFGQTtDQUNGOztBd0RwMUZBO0VBR0M7RUFDQTtFQUNBO0N4RHExRkQ7QU8zMUZDO0VpRENEO0loRGtPRTtJQUNBO0dSNG5GQTtDQUNGO0FPajJGQztFaURDRDtJaERrT0U7SUFDQTtHUmtvRkE7Q0FDRjtBT3YyRkM7RWlEQ0Q7SUFRRTtJQUNBO0lBQ0E7R3hEazJGQTtDQUNGOztBd0QvMUZBO0VoRG1LQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VGN0xLO0VBUkE7RWtEaUNMO0VBQ0E7Q3hEdTJGRDs7QU8xM0ZDO0VpRHNCRDtJQUlFO0d4RHEyRkE7Q0FDRjs7QXdEbDJGQTtFQUNDO0N4RHEyRkQ7O0F3RGwyRkE7RUFDQztDeERxMkZEOztBd0RqMkZBO0VBQ0M7RUFDQTtDeERvMkZEO0F3RGwyRkM7RUFDQztFQUNBO0N4RG8yRkY7O0F5RGg3RkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYXZEd0IyQjtFdUR2QjNCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDekRtN0ZEO0F5RGg3RkM7RWhERUE7RWdEQUM7RUFDQTtFQUNBO0N6RGs3RkY7QXlELzZGQztFQUNDO0VBQ0E7RUFDQTtDekRpN0ZGOztBeUQ3NkZBO0VBQ0M7RUFDQTtFQUNBO0N6RGc3RkQ7QU9qN0ZDO0VrREZEO0lBTUU7R3pEaTdGQTtDQUNGOztBeUQ5NkZBO0VBQ0M7RUFDQTtDekRpN0ZEO0FPMzdGQztFa0RRRDtJbkRmTTtJQVJBO0dOKzhGSjtDQUNGOztBeURoN0ZBO0VBQ0M7RUFDQTtDekRtN0ZEO0F5RGo3RkM7RUFDQztDekRtN0ZGOztBeUQvNkZBO0VBQ0M7RUFDQTtDekRrN0ZEO0FPOThGQztFa0QwQkQ7SUFLRTtHekRtN0ZBO0NBQ0Y7O0EwRDEvRkE7Ozs7b0ZBQUE7QUFRQTtFQUNDO0VBQ0E7QzFEMC9GRDtBTzc5RkM7RW1EL0JEO0lBT0U7RzFEeS9GQTtDQUNGOztBMERyL0ZBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QzFEdy9GRDtBT3orRkM7RW1EbkJEO0lBT0U7SUFDQTtJQUNBO0cxRHkvRkE7RTBEdi9GQTtJQUNDO0cxRHkvRkQ7Q0FDRjs7QTBEcC9GQTtFQUNDO0VBQ0E7QzFEdS9GRDs7QTBEbC9GQztFQUNDO0MxRHEvRkY7QTBEbi9GRTtFQUNDO0VBQ0E7QzFEcS9GSDs7QTJEdmlHQTs7OztvRkFBQTtBQU9BO0VBQ0M7RUFDQTtFQUNBO0MzRHdpR0Q7QU8zZ0dDO0VvRGhDRDtJQU9FO0czRHdpR0E7Q0FDRjs7QU9oaEdDO0VvRHBCRDtJQUdFO0czRHNpR0E7Q0FDRjtBT3RoR0M7RW9EZEE7SUFFRTtJQUNBO0czRHNpR0Q7Q0FDRjtBTzVoR0M7RW9EZEE7SUFNRTtHM0R3aUdEO0NBQ0Y7QU9qaUdDO0VvREpBO0luRHFFSztHUm8rRko7Q0FDRjtBT3RpR0M7RW9ESkE7SUFNRTtHM0R3aUdEO0NBQ0Y7QU8zaUdDO0VvREpBO0lBU0U7SUFDQTtHM0QwaUdEO0NBQ0Y7O0FPampHQztFcUQvQkQ7SUFFRTtHNURtbEdBO0NBQ0Y7O0E0RC9rR0E7RXBEaU9DO0VBQ0E7RUFDQTtFb0RqT0E7RUFDQTtDNURvbEdEO0FPL2pHQztFcUR4QkQ7SXBEdU9JO0dSbzNGRjtDQUNGO0FPcGtHQztFcUR4QkQ7SXBEOE9FO0lBQ0E7R1JrM0ZBO0NBQ0Y7QU8xa0dDO0VxRHhCRDtJQU1FO0c1RGdtR0E7Q0FDRjs7QU8va0dDO0VxRGJEO0lBRUU7RzVEK2xHQTtDQUNGO0FPcmxHQztFcURiRDtJQU1FO0lBQ0E7RzVEZ21HQTtDQUNGOztBTzNsR0M7RXFERkQ7SUFFRTtHNURnbUdBO0NBQ0Y7O0E0RDdsR0E7RXREWE07RUFSQTtFc0RxQkw7RUFDQTtDNURpbUdEOztBNEQ3bEdBO0VBQ0M7RUFDQTtDNURnbUdEOztBNEQ1bEdBO0VBRUM7RUFDQTtFQUNBO0M1RDhsR0Q7QVE1OEZDO0VBQ0MsaUJvRHRKWTtDNURvbUdkO0E0RC9sR0M7RUFJQztFQUNBO0VBQ0E7RUFDQTtFQUNBLFlBUFE7RUFRUixhQVBTO0VBUVQ7RUFDQTtDNUQ4bEdGOztBT2hvR0M7RXNEdkNEO0lBRUk7SUFDQTtHN0QwcUdGO0NBQ0Y7O0FPdm9HQztFc0RoQ0Q7SUFFSTtHN0QwcUdGO0NBQ0Y7O0E2RHZxR0E7RUFDRTtFQUNBO0VBQ0E7QzdEMHFHRjtBT25wR0M7RXNEMUJEO0lBTUk7RzdEMnFHRjtDQUNGO0FPeHBHQztFc0QxQkQ7SUFVSTtJQUNBO0c3RDRxR0Y7Q0FDRjtBTzlwR0M7RXNEMUJEO0lBY0k7SUFDQTtHN0Q4cUdGO0NBQ0Y7QTZENXFHRTtFQUNFO0M3RDhxR0o7O0FPdnFHQztFc0RIRDtJQUdJO0c3RDRxR0Y7Q0FDRjtBTzdxR0M7RXNESEQ7SUFPSTtHN0Q2cUdGO0NBQ0Y7QU9sckdDO0VzREhEO0lBV0k7RzdEOHFHRjtDQUNGO0FPdnJHQztFc0RIRDtJQWNJO0c3RGdyR0Y7Q0FDRjs7QThEM3RHQTtFQUVDO0VBQUE7RUFDQTtFQUNBO0VBQUE7RUFDQTtFQUFBO2NBQ0EsbUNBQ0M7QzlENHRHRjtBUXI5RkU7RXVEdFJGO0VBQUE7RXZEdVJHLGdCc0Q5UUY7RXREK1FFO0NSdTlGSDtBUXo5RkU7RXVEdFJGO0VBQUE7RXZEdVJHLGdCc0Q5UUY7RXREK1FFO0NSMjlGSDtBTzVzR0M7RXVEL0JEO0lBV0U7SUFBQTtJQUNBO2dCQUNBO0c5RG91R0E7RVFuK0ZBO0l1RHRSRjtJQUFBO0cvRCt1R0E7RVF6OUZFO0l1RHRSRjtJQUFBO0cvRG12R0E7Q0FPQTs7QU9udEdDO0V1RGJEO0lBRUUsa0JBMUIwQjtHOUQ2dkcxQjtDQUNGO0FPenRHQztFdURiRDtJQU1FLGtCQTdCMEI7RzlEaXdHMUI7Q0FDRjs7QThEaHVHQTtFQUNDLGtCQXBDMkI7RUFxQzNCLHFCQXJDMkI7RUFzQzNCO0M5RG11R0Q7QU9wdUdDO0V1REZEO0lBTUU7SUFDQTtJQUNBO0lBQ0E7RzlEb3VHQTtDQUNGO0FPNXVHQztFdURGRDtJQWFFO0lBQ0E7RzlEcXVHQTtDQUNGO0FPbHZHQztFdURGRDtJQWtCRSxrQkFwRDBCO0lBcUQxQjtJQUNBO0lBQ0E7RzlEc3VHQTtDQUNGOztBOERsdUdBO0VBRUM7RUFDQTtFQUNBO0M5RG91R0Q7QThEbHVHQztFQUNDLGFBTlU7RUFPVjtFQUNBO0VBQ0E7QzlEb3VHRjtBOERsdUdDO0V0RDhJQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VzRGhKQztDOUR3dUdGOztBOERudUdBO0VBQ0M7RUFDQTtDOURzdUdEOztBOERsdUdBO0VBQ0M7QzlEcXVHRDs7QWdFOXpHQTs7O0dBQUE7QXpEdUNDO0V5RHZCRDtJQUVJO0lBQ0E7R2hFcXpHRjtDQUNGOztBT2x5R0M7RXlEWkc7SUFDRTtHaEVrekdKO0NBQ0Y7QU94eUdDO0V5RGhCRDtJQVdJO0lBQ0E7R2hFaXpHRjtDQUNGO0FPOXlHQztFeURoQkQ7SUFpQkk7SUFFQTtJQUNBO0doRWd6R0Y7RWdFOXlHRTtJQUNFO0doRWd6R0o7RWdFN3lHRTtJQUNFO0doRSt5R0o7Q0FDRjtBTzN6R0M7RXlEaEJEO0lBa0NJO0lBRUE7SUFDQTtHaEU0eUdGO0VnRTF5R0U7SUFDRTtHaEU0eUdKO0VnRXp5R0U7SUFDRTtHaEUyeUdKO0NBQ0Y7QU94MEdDO0V5RGhCRDtJQW1ESTtJQUVBO0lBQ0E7R2hFd3lHRjtFZ0V0eUdFO0lBQ0U7R2hFd3lHSjtFZ0VyeUdFO0lBQ0UsaUJBL0VnQjtHaEVzM0dwQjtDQUNGOztBaUVoM0dBO0V4RGFDO0V3RFhBO0VBQ0E7RUFDQTtDakVtM0dEOztBaUUvMkdBO0V6RDROQztFQUNBO0VBQ0E7Q1J1cEdEO0FPbDJHQztFMERuQkQ7SXpEa09JO0dSdXBHRjtDQUNGO0FPdjJHQztFMERuQkQ7SXpEeU9FO0lBQ0E7R1JxcEdBO0NBQ0Y7QU83MkdDO0UwRG5CRDtJekRvRk07SUFBQTtHUml6R0o7Q0FDRjtBT24zR0M7RTBEbkJEO0l6RDJHTTtJQUFBO0dSZ3lHSjtDQUNGO0FPejNHQztFMERuQkQ7SXpEZ0hNO0lBQUE7R1JpeUdKO0NBQ0Y7QU8vM0dDO0UwRG5CRDtJekRxSE07SUFBQTtHUmt5R0o7Q0FDRjs7QU9yNEdDO0UwRFZEO0lBRUU7R2pFazVHQTtDQUNGOztBaUU5NEdBO0VBSUM7RUFDQTtDakU4NEdEO0FPaDVHQztFMERIRDtJekRvRU07R1JtMUdKO0NBQ0Y7QU9yNUdDO0UwREhEO0l6RDJGTTtHUmkwR0o7Q0FDRjtBTzE1R0M7RTBESEQ7SXpEZ0dNO0dSaTBHSjtDQUNGO0FPLzVHQztFMERIRDtJekRxR007R1JpMEdKO0NBQ0Y7QWlFaDZHQztFQUNDO0NqRWs2R0Y7O0FpRTc1R0E7RUFDQztDakVnNkdEOztBUTN3R0M7RUFDQyxpQnlEaEpxQjtDakU4NUd2QjtBTy82R0M7RTBEZ0JEO0lBSUU7R2pFKzVHQTtDQUNGO0FPcDdHQztFMERnQkQ7SUFPRTtHakVpNkdBO0NBQ0Y7O0FPejdHQztFMEQ2QkQ7SXpEb0NNO0dSNjNHSjtDQUNGO0FPLzdHQztFMEQ2QkQ7SUFLRTtHakVpNkdBO0NBQ0Y7QU9wOEdDO0UwRDZCRDtJQVFFO0dqRW02R0E7Q0FDRjs7QWlFaDZHQTtFQUNDO0VBQ0E7Q2pFbTZHRDs7QWlFLzVHQTtFQUVDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDakVpNkdEO0FRM3hHQztFQUVDO0NSNHhHRjtBaUVsNkdDO0V6RHdFQztFeUR0RUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDakVvNkdGO0FpRWg2R0U7RUFDQztDakVrNkdIO0FpRTk1R0M7RUFDQztFQUNBO0VBQ0E7RUFDQTtDakVnNkdGOztBaUUzNUdBO0VBQ0M7RUFDQTtFQUNBO0NqRTg1R0Q7O0FpRTE1R0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q2pFNjVHRDs7QWlFejVHQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NqRTQ1R0Q7QWlFMTVHQztFQUNDO0VBQ0E7Q2pFNDVHRjtBaUUxNUdDO0VBQ0M7Q2pFNDVHRjtBaUUxNUdDO0VBQ0M7RUFDQTtDakU0NUdGO0FpRTE1R0M7RUFDQztFQUNBO0NqRTQ1R0Y7QWlFejVHQztFQUNDO0NqRTI1R0Y7QWlFeDVHQztFQUNDO0NqRTA1R0Y7O0FrRXBrSEE7RUFDQztDbEV1a0hEOztBa0Vsa0hBO0VBQ0M7Q2xFcWtIRDs7QWtFamtIQztFQUNDO0NsRW9rSEY7O0FrRS9qSEE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDbEVra0hEOztBbUV6bEhBOztFQUFBO0FBSUE7RTFEa0JDO0UwRGhCQTtFQUNBO0VBQ0E7Q25FMmxIRDtBbUV6bEhDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDbkUybEhGO0FPL2tIQztFNEQxQkE7SUFpQkU7R25FNGxIRDtDQUNGO0FtRTFsSEU7RUFDQztFQUNBO0VBQ0E7Q25FNGxISDs7QW1FdmxIQTtFM0R1TUM7RUFDQTtFQUNBO0UyRHZNQTtFQUNBO0VBQ0E7RUFDQTtDbkU0bEhEO0FPbm1IQztFNERFRDtJM0Q2TUk7R1J3NUdGO0NBQ0Y7QU94bUhDO0U0REVEO0kzRG9ORTtJQUNBO0dSczVHQTtDQUNGOztBbUVwbUhBO0VBQ0M7RUFDQTtDbkV1bUhEO0FPbm5IQztFNERVRDtJQUtFO0duRXdtSEE7Q0FDRjs7QW1Fcm1IQTtFQUNDO0VBQ0E7Q25Fd21IRDtBTzduSEM7RTREbUJEO0lBS0U7R25FeW1IQTtDQUNGOztBbUV0bUhBO0VBRUM7Q25Fd21IRDtBUTE4R0M7RUFFQztDUjI4R0Y7QW1Fem1IQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0NuRTJtSEY7O0FtRXZtSEE7RUFDQztDbkUwbUhEOztBT25wSEM7RTRENENEO0lBRUU7R25FMG1IQTtDQUNGOztBb0U1ckhBO0VBQ0M7RUFDQTtFQUNBO0NwRStySEQ7QU8vcEhDO0U2RG5DRDtJNURvR007R1JrbUhKO0NBQ0Y7QU9wcUhDO0U2RG5DRDtJNUQySE07R1JnbEhKO0NBQ0Y7QU96cUhDO0U2RG5DRDtJNURnSU07R1JnbEhKO0NBQ0Y7QU85cUhDO0U2RG5DRDtJNURxSU07R1JnbEhKO0NBQ0Y7O0FvRXhzSEE7RUFDQztDcEUyc0hEO0FPdnJIQztFNkRyQkQ7STVEc0ZNO0dSMG5ISjtDQUNGO0FPNXJIQztFNkRyQkQ7STVENkdNO0dSd21ISjtDQUNGO0FPanNIQztFNkRyQkQ7STVEa0hNO0dSd21ISjtDQUNGO0FPdHNIQztFNkRyQkQ7STVEdUhNO0dSd21ISjtDQUNGO0FPM3NIQztFNkRiQztJQUNDO0lBQ0E7SUFDQTtHcEUydEhEO0NBQ0Y7QU9sdEhDO0U2RExDO0lBQ0M7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtHcEUwdEhEO0VvRXh0SEM7SUFDQztHcEUwdEhGO0NBQ0Y7O0FvRXB0SEE7RUFDQztFQUNBO0NwRXV0SEQ7QU90dUhDO0U2RGFEO0lBS0U7R3BFd3RIQTtDQUNGO0FPM3VIQztFNkRhRDtJQVNFO0lBQ0E7SUFDQTtJQUNBO0dwRXl0SEE7Q0FDRjs7QW9FcnRIQTs7RUFFQztDcEV3dEhEO0FPeHZIQztFNkQ4QkQ7O0lBS0U7SUFDQTtJQUNBO0dwRTB0SEE7Q0FDRjtBT2h3SEM7RTZEOEJEOztJQVdFO0dwRTR0SEE7Q0FDRjs7QW9FeHRIQTtFQUNDO0VBQ0E7Q3BFMnRIRDtBTzN3SEM7RTZEOENEO0lBS0U7SUFDQTtHcEU0dEhBO0NBQ0Y7QU9qeEhDO0U2RDhDRDtJQVVFO0lBQ0E7R3BFNnRIQTtDQUNGOztBb0V6dEhBO0VBQ0M7RUFDQSxrQmxFbEV3QjtFa0VtRXhCLG1CbEVuRXdCO0NGK3hIekI7QU83eEhDO0U2RDhERDtJQU1FO0lBQ0E7R3BFNnRIQTtDQUNGO0FPbnlIQztFNkQ4REQ7SUFXRTtHcEU4dEhBO0NBQ0Y7O0FvRTF0SEE7O0VBRUM7Q3BFNnRIRDs7QW9FenRIQTtFQUNDO0NwRTR0SEQ7O0FxRW4xSEE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0NyRXMxSEQ7QU96ekhDO0U4RGxDRDtJQVFFO0dyRXUxSEE7Q0FDRjs7QXFFcDFIQTtFQUNDO0VBQ0EsZ0JBbkJ5QjtDckUwMkgxQjtBT24wSEM7RThEdEJEO0lBS0U7R3JFdzFIQTtDQUNGO0FPeDBIQztFOER0QkQ7SUFRRTtHckUwMUhBO0NBQ0Y7QU83MEhDO0U4RHRCRDtJQVdFO0dyRTQxSEE7Q0FDRjtBT2wxSEM7RThEdEJEO0lBY0U7SUFDQSxhQS9CdUI7R3JFNjNIdkI7Q0FDRjs7QXFFMzFIQTtFQUNDO0NyRTgxSEQ7O0FxRTMxSEE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDckU4MUhEOztBc0V6NEhFO0VBQ0M7Q3RFNDRISDs7QXVFdDRIQTtFL0RxT0M7RUFDQTtFQUNBO0NScXFIRDtBT2gzSEM7RWdFNUJEO0kvRDJPSTtHUnFxSEY7Q0FDRjtBT3IzSEM7RWdFNUJEO0kvRGtQRTtJQUNBO0dSbXFIQTtDQUNGOztBdUVuNUhBO0VqRWlCTTtFQVJBO0VpRVBMO0N2RXU1SEQ7O0F1RXA1SEE7RUFFQztDdkVzNUhEO0FROXRIQztFQUNDLGlCK0QxTFk7Q3ZFMDVIZDs7QXVFdDVIQTtFQUVDO0VBQ0E7RUFDQTtFQUNBO0N2RXc1SEQ7QVFudEhDO0VBRUM7Q1JvdEhGO0F1RXo1SEM7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3ZFMjVIRjtBdUV4NUhDO0VBRUM7Q3ZFeTVIRjtBdUV2NUhFO0VBQ0M7Q3ZFeTVISDtBdUVyNUhDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7Q3ZFdTVIRjtBT3o2SEM7RWdFZEQ7SUFvQ0U7SUFDQTtJQUNBO0d2RXU1SEE7Q0FDRjs7QXVFcDVIQTtFQUNDO0VBQ0EsYXJFaEN3QjtDRnU3SHpCO0FPcjdIQztFZ0U0QkQ7SUFLRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0d2RXc1SEE7Q0FDRjtBTzk3SEM7RWdFNEJEO0lBYUU7R3ZFeTVIQTtDQUNGOztBdUV0NUhBO0VBQ0M7RUFDQTtFQUNBO0N2RXk1SEQ7QU96OEhDO0VnRTZDRDtJQU1FO0lBQ0E7SUFDQTtJQUNBO0d2RTA1SEE7Q0FDRjs7QXVFdjVIQTtFQUNDO0VBQ0E7RUFDQTtFQUNBLFNyRWhFd0I7RXFFaUV4QixXckVqRXdCO0VxRWtFeEI7RUFDQTtDdkUwNUhEO0FPMzlIQztFZ0UwREQ7SUFVRTtJQUNBO0lBQ0E7SUFDQTtHdkUyNUhBO0NBQ0Y7O0F1RXQ1SEE7RUFDQztDdkV5NUhEOztBdUV0NUhBO0VBQ0M7RUFDQTtFQUNBO0N2RXk1SEQ7O0F1RXQ1SEE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0N2RXk1SEQ7O0F1RXQ1SEE7RUFDQztDdkV5NUhEOztBdUV0NUhBO0VBQ0M7RUFDQTtDdkV5NUhEOztBd0V0aElBO0UvRFVDO0UrRFJBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3hFdWhJRDtBd0VwaElDO0VBQ0M7RUFDQTtFQUNBO0N4RXNoSUY7QXdFbGhJQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3hFb2hJRjtBd0VsaElFO0VBQ0M7RUFDQTtDeEVvaElIO0F3RS9nSUM7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0N4RWloSUY7QU9uaklDO0VpRXhCRDtJQStERTtHeEVnaElBO0NBQ0Y7O0F3RTVnSUE7RWhFNkpDO0VBQ0E7RUFDQTtFZ0U3SkE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDeEVpaElEO0FPbmtJQztFaUU0Q0Q7SWhFbUtJO0dSdzNIRjtDQUNGO0FPeGtJQztFaUU0Q0Q7SWhFMEtFO0lBQ0E7R1JzM0hBO0NBQ0Y7O0F3RXhoSUE7RUFDQztDeEUyaElEOztBd0V2aElBO0VBQ0M7RUFDQTtFQUNBO0N4RTBoSUQ7QXdFeGhJQztFQUNDO0N4RTBoSUY7O0F3RXJoSUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0N4RXdoSUQ7O0F3RXBoSUE7RUFDQztFQUNBO0N4RXVoSUQ7O0F3RW5oSUE7RWxFNUZNO0VBUkE7RWtFc0dMO0VBQ0E7RUFDQTtFQUNBO0N4RXVoSUQ7QXdFcmhJQztFQUNDO0N4RXVoSUY7QXdFcGhJQztFQUNDO0VBQ0E7Q3hFc2hJRjtBd0VuaElDO0VBQ0M7RUFDQTtFQUNBO0N4RXFoSUY7QXdFbmhJRTtFQUNJO0VBQ0g7RUFDRztFQUNBO0VBQ0g7Q3hFcWhJSDs7QXlFM3FJQTtFakVnUEM7RUFDQTtFQUNBO0NSKzdIRDtBTzFvSUM7RWtFdkNEO0lqRXNQSTtHUis3SEY7Q0FDRjtBTy9vSUM7RWtFdkNEO0lqRTZQRTtJQUNBO0dSNjdIQTtDQUNGOztBT3JwSUM7RWtFbkNEO0lBRUU7R3pFMnJJQTtDQUNGOztBTzNwSUM7RWtFN0JEO0lBRUU7R3pFMnJJQTtDQUNGO0FPanFJQztFa0U3QkQ7SUFNRTtJQUNBO0d6RTRySUE7Q0FDRjs7QXlFenJJQTtFQUNDO0N6RTRySUQ7QU8zcUlDO0VrRWxCRDtJQUlFO0d6RTZySUE7Q0FDRjtBT2hySUM7RWtFbEJEO0lBUUU7SUFDQTtHekU4cklBO0NBQ0Y7QU90cklDO0VrRWxCRDtJQVlFO0lBQ0E7SUFDQTtHekVnc0lBO0NBQ0Y7O0F5RTdySUE7RUFDQztFQUNBO0N6RWdzSUQ7O0F5RTdySUE7RW5FWk07RUFSQTtFbUVzQkw7Q3pFaXNJRDtBeUUvcklDO0VBQVk7Q3pFa3NJYjtBeUVqc0lDO0VBQVk7Q3pFb3NJYjs7QXlFanNJQTtFQUNDO0VBQ0E7Q3pFb3NJRDs7QXlFanNJQTtFbkV6Qk07RUFSQTtFbUVtQ0w7Q3pFcXNJRDs7QXlFbHNJQTtFbkU5Qk07RUFSQTtFbUV3Q0w7Q3pFc3NJRDs7QTBFdnZJQTtFQUNDO0VBQ0E7RUFDQTtDMUUwdklEOztBMEV2dklBO0VsRWtKRTtFa0VoSkQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esb0xBQ0M7QzFFeXZJRjtBT2h2SUM7RW1FbEJEO0lBZ0JFO0cxRXN2SUE7Q0FDRjs7QTBFbnZJQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzFFc3ZJRDs7QTBFbnZJQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QzFFc3ZJRDs7QTBFbnZJQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0MxRXN2SUQ7O0EwRW52SUE7RUFDQztDMUVzdklEOztBMEVudklBO0VwRXBDTTtFQVJBO0VvRThDTDtFQUNBO0MxRXV2SUQ7O0EwRXB2SUE7RUFDQztDMUV1dklEOztBMkVyeklBO0VsRVlDO0VrRVZBO0VBQ0E7RUFDQSxxQnpFcUIyQjtFeUVwQjNCO0MzRXd6SUQ7QTJFdHpJQztFQUNDO0MzRXd6SUY7O0EyRW56SUE7RW5Fc05DO0VBQ0E7RUFDQTtFRmxOSztFQVJBO0VxRUtMO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDM0V5eklEO0FPcHpJQztFb0ViRDtJbkU0Tkk7R1J5bUlGO0NBQ0Y7QU96eklDO0VvRWJEO0luRW1PRTtJQUNBO0dSdW1JQTtDQUNGOztBMkVoMElBO0VBQ0M7RUFDQTtFQUNFO0VBQ0E7RUFDRjtDM0VtMElEOztBMkUveklBO0VBQ0M7RUFDQTtFQUNBO0MzRWswSUQ7O0EyRTl6SUE7RUFDQztFQUNBO0VBQ0E7RUFDQTtDM0VpMElEOztBMkU3eklBO0VBQ0M7RUFDQTtDM0VnMElEOztBMkU1eklBO0VBRUM7RUFDQTtFQUNBO0MzRTh6SUQ7QVFucUlDO0VBRUM7Q1JvcUlGO0EyRS96SUM7RUFDQztDM0VpMElGO0EyRTl6SUM7RUFDQztFQUNBO0VBQ0E7RUFDQTtDM0VnMElGOztBMkUzeklBO0VBQ0M7RUFDQTtDM0U4eklEOztBNEUxNElBOzs7O0dBQUE7QUFPQTtFcEU0TkM7RUFDQTtFQUNBO0NSZ3JJRDtBTzMzSUM7RXFFbkJEO0lwRWtPSTtHUmdySUY7Q0FDRjtBT2g0SUM7RXFFbkJEO0lwRXlPRTtJQUNBO0dSOHFJQTtDQUNGOztBNEVuNUlBO0VwRWdKRTtFb0U5SUQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDNUVzNUlEO0E0RXA1SUM7RUFDQztFQUNBO0M1RXM1SUY7QTRFbjVJQztFQUNDO0VBQ0E7RUFDQTtDNUVxNUlGO0E0RWw1SUM7RUFDQztFQUNBO0M1RW81SUY7QTRFbDVJRTtFQUNDO0M1RW81SUg7O0FPbDZJQztFcUVtQkQ7SUFFRTtHNUVrNUlBO0NBQ0Y7QU94NklDO0VxRW1CRDtJQU1FO0lBQ0E7SUFDQTtHNUVtNUlBO0NBQ0Y7QU8vNklDO0VxRW1CRDtJQVlFO0lBQ0E7RzVFbzVJQTtDQUNGOztBNEVqNUlBO0VBQ0M7QzVFbzVJRDs7QTRFajVJQTtFQUNDO0M1RW81SUQ7O0FPNzdJQztFcUU0Q0Q7SUFFRTtHNUVvNUlBO0NBQ0Y7QU9uOElDO0VxRTRDRDtJQU1FO0c1RXE1SUE7Q0FDRjs7QTRFajVJQTtFdEU5RE07RUFSQTtFc0V3RUw7RUFDQTtFQUNBO0M1RXE1SUQ7O0FPaDlJQztFcUU4REQ7SUFFRTtJQUFBO0lBQ0E7SUFBQTtJQUNBO0lBQUE7SUFDQTtHNUVxNUlBO0NBQ0Y7O0FPejlJQztFcUV3RUE7SXBFUEs7R1I2NUlKO0NBQ0Y7QU8vOUlDO0VxRXVFRDtJQVFFO0lBQUE7SUFDQTtJQUFBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtHNUVvNUlBO0U0RWw1SUE7SUFDQztJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtHNUVvNUlEO0NBQ0Y7O0E0RWg1SUE7RXRFN0dNO0VBUkE7RXNFdUhMO0VBQ0E7RUFDQTtFQUNBO0M1RW81SUQ7QU8vL0lDO0VxRXNHRDtJQVFFO0c1RXE1SUE7Q0FDRjs7QTZFM2lKQTtFckVnUEM7RUFDQTtFQUNBO0NSK3pJRDtBTzFnSkM7RXNFdkNEO0lyRXNQSTtHUit6SUY7Q0FDRjtBTy9nSkM7RXNFdkNEO0lyRTZQRTtJQUNBO0dSNnpJQTtDQUNGO0FPcmhKQztFc0V2Q0Q7SXJFd0dNO0lBQUE7R1J5OUlKO0NBQ0Y7QU8zaEpDO0VzRXZDRDtJckUrSE07SUFBQTtHUnc4SUo7Q0FDRjtBT2ppSkM7RXNFdkNEO0lyRW9JTTtJQUFBO0dSeThJSjtDQUNGO0FPdmlKQztFc0V2Q0Q7SXJFeUlNO0lBQUE7R1IwOElKO0NBQ0Y7O0FPN2lKQztFc0UvQkQ7SUFFSTtJQUNBO0lBQ0E7RzdFK2tKRjtDQUNGOztBNkU1a0pBO0VBQ0U7RUFDQTtDN0Ura0pGO0FPMWpKQztFc0V2QkQ7SUFLSTtJQUNBO0lBQ0E7SUFDQTtHN0VnbEpGO0NBQ0Y7QU9sa0pDO0VzRXZCRDtJQVlJO0c3RWlsSkY7Q0FDRjtBT3ZrSkM7RXNFdkJEO0lBZ0JJO0c3RWtsSkY7Q0FDRjs7QThFL21KQTtFdEU0T0M7RUFDQTtFQUNBO0NSdTRJRDtBT2xsSkM7RXVFbkNEO0l0RWtQSTtHUnU0SUY7Q0FDRjtBT3ZsSkM7RXVFbkNEO0l0RXlQRTtJQUNBO0dScTRJQTtDQUNGO0FPN2xKQztFdUVuQ0Q7SXRFb0dNO0dSZ2lKSjtDQUNGO0FPbG1KQztFdUVuQ0Q7SXRFMkhNO0dSOGdKSjtDQUNGO0FPdm1KQztFdUVuQ0Q7SXRFZ0lNO0dSOGdKSjtDQUNGO0FPNW1KQztFdUVuQ0Q7SXRFcUlNO0dSOGdKSjtDQUNGO0FPam5KQztFdUVuQ0Q7SUFPRTtHOUVpcEpBO0NBQ0Y7O0FPdG5KQztFdUV2QkQ7SUFFRTtJQUNBLG9CQWxCYTtHOUVrcUpiO0NBQ0Y7O0E4RTVvSkE7RUFDQztDOUUrb0pEO0FPam9KQztFdUVmRDtJQUlFO0lBQ0E7RzlFZ3BKQTtDQUNGOztBT3ZvSkM7RXdFNUJEO0lBRUU7Ry9Fc3FKQTtDQUNGOztBTzdvSkM7RXdFdEJEO0lBRUU7Ry9Fc3FKQTtDQUNGOztBK0VucUpBO0VBQ0M7RUFDQTtFQUNBO0MvRXNxSkQ7QU96cEpDO0V3RWhCRDtJQU1FO0lBRUM7SUFDQTtJQUNBO0lBQ0E7Ry9Fc3FKRDtDQUNGO0FPbHFKQztFd0VoQkQ7SUFnQkU7SUFDQTtHL0VzcUpBO0NBQ0Y7O0ErRW5xSkE7RUFDQztFQUNBO0MvRXNxSkQ7QU83cUpDO0V3RUtEO0lBS0U7SUFDQTtJQUNBO0lBQ0E7Ry9FdXFKQTtDQUNGO0FPcnJKQztFd0VLRDtJQVlFO0lBQ0E7Ry9Fd3FKQTtDQUNGO0FPM3JKQztFd0VLRDtJQWlCRTtHL0V5cUpBO0NBQ0Y7O0ErRXRxSkE7RXpFakNNO0VBUkE7RXlFMkNMO0VBQ0E7Qy9FMHFKRDs7QStFdnFKQTtFQUNDO0VBQ0E7Qy9FMHFKRDs7QStFdnFKQTtFQUVDO0VBQ0E7Qy9FeXFKRDtBUTFpSkM7RUFDQyxpQnVFbElZO0MvRThxSmQ7QStFMXFKQztFQUlDO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsWUFQUTtFQVFSLGFBUFM7RUFRVDtFQUNBO0MvRXlxSkY7O0ErRXJxSkE7RUFDQztDL0V3cUpEOztBK0VycUpBO0VBQ0M7RUFDQTtDL0V3cUpEOztBZ0Y5d0pBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7Q2hGaXhKRDtBZ0Yvd0pDO0VBQ0M7Q2hGaXhKRjs7QWdGNXdKQTtFeEU4SkU7RXdFNUpEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NoRit3SkQ7QWdGN3dKQztFQUNDO0VBQ0E7RUFDQTtDaEYrd0pGOztBZ0Yxd0pBO0VBQ0M7Q2hGNndKRDs7QWdGendKQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NoRjR3SkQ7QWdGMXdKQztFQUNDO0NoRjR3SkY7O0FnRnZ3SkE7RTFFckJNO0VBUkE7RTBFK0JMO0VBQ0E7Q2hGMndKRDs7QWdGdndKQTtFMUU1Qk07RUFSQTtFMEVzQ0w7RUFDQTtDaEYyd0pEOztBZ0Z2d0pBO0VBQ0M7Q2hGMHdKRDs7QWlGNTBKQTtFQUNDO0VBQ0E7Q2pGKzBKRDtBTzV5SkM7RTBFckNEO0l6RThPQztJQUNBO0lBQ0E7R1J1bUpDO0NBQ0Y7QU9uekpDO0UwRXJDRDtJekVvUEk7R1J3bUpGO0NBQ0Y7QU94ekpDO0UwRXJDRDtJekUyUEU7SUFDQTtHUnNtSkE7Q0FDRjtBaUYzMUpDO0VBQ0M7RUFDQTtFQUNHO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDSDtDakY2MUpGOztBaUZ6MUpBO0VBQ0M7RUFDQTtDakY0MUpEOztBaUZ4MUpBO0V6RW9OQztFQUNBO0VBQ0E7RXlFcE5BO0NqRjYxSkQ7QU9wMUpDO0UwRVhEO0l6RTBOSTtHUnlvSkY7Q0FDRjtBT3oxSkM7RTBFWEQ7SXpFaU9FO0lBQ0E7R1J1b0pBO0NBQ0Y7O0FBLzBKQTs7K0RBQUE7QWtGdkRBOzs4RUFBQTtBbEYrREE7OytEQUFBO0FtRi9EQTtFQUNDO0VBQ0E7Q25GazVKRDtBbUZoNUpDO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7Q25GazVKRjtBbUZoNUpFO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q25GazVKSDtBbUY5NEpDO0U3RVdLO0VBUkE7Q04rNEpOO0FtRjk0Skc7RUFDQztDbkZnNUpKOztBb0YxNkpBOztHQUFBO0FBT0M7RUFDQztDcEZ5NkpGO0FvRnI2SkM7RUFDQztDcEZ1NkpGO0FvRm42SkM7RUFDQztDcEZxNkpGO0FvRmw2SkM7RUFDQztDcEZvNkpGO0FvRmo2SkM7RUFDQztDcEZtNkpGO0FvRmo2SkU7RUFDQztFQUNBO0VBQ0E7Q3BGbTZKSDtBb0ZqNkpHO0U5RURHO0VBUkE7RThFV0Y7RUFDQTtFQUNBO0VBQ0E7Q3BGbzZKSjtBb0YvNUpDO0VBQ0M7RUFDQTtDcEZpNkpGO0FvRi81SkU7RUFDQztFQUNBO0VBQ0E7RUFDQTtDcEZpNkpIO0FvRi81Skc7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q3BGaTZKSjs7QUFyNUpBOzs7K0RBQUE7QXFGdkVBOzt5RkFBQTtBQUtBOzs7Ozs7Ozs7Ozs7OztHQUFBO0FBMEJHO0VBQ0M7Q3JGczlKSjs7QXFGcDlKRztFQUNDO0NyRnU5Sko7O0FxRjM5Skc7RUFDQztDckY4OUpKOztBcUY1OUpHO0VBQ0M7Q3JGKzlKSjs7QXFGbitKRztFQUNDO0NyRnMrSko7O0FxRnArSkc7RUFDQztDckZ1K0pKOztBcUYzK0pHO0VBQ0M7Q3JGOCtKSjs7QXFGNStKRztFQUNDO0NyRisrSko7O0FxRm4vSkc7RUFDQztDckZzL0pKOztBcUZwL0pHO0VBQ0M7Q3JGdS9KSjs7QXFGMy9KRztFQUNDO0NyRjgvSko7O0FxRjUvSkc7RUFDQztDckYrL0pKOztBcUZuZ0tHO0VBQ0M7Q3JGc2dLSjs7QXFGcGdLRztFQUNDO0NyRnVnS0o7O0FxRjNnS0c7RUFDQztDckY4Z0tKOztBcUY1Z0tHO0VBQ0M7Q3JGK2dLSjs7QXFGbmhLRztFQUNDO0NyRnNoS0o7O0FxRnBoS0c7RUFDQztDckZ1aEtKOztBcUYzaEtHO0VBQ0M7Q3JGOGhLSjs7QXFGNWhLRztFQUNDO0NyRitoS0o7O0FxRm5pS0c7RUFDQztDckZzaUtKOztBcUZwaUtHO0VBQ0M7Q3JGdWlLSjs7QXFGM2lLRztFQUNDO0NyRjhpS0o7O0FxRjVpS0c7RUFDQztDckYraUtKOztBcUZuaktHO0VBQ0M7Q3JGc2pLSjs7QXFGcGpLRztFQUNDO0NyRnVqS0o7O0FxRjNqS0c7RUFDQztDckY4aktKOztBcUY1aktHO0VBQ0M7Q3JGK2pLSjs7QXFGbmtLRztFQUNDO0NyRnNrS0o7O0FxRnBrS0c7RUFDQztDckZ1a0tKOztBcUYza0tHO0VBQ0M7Q3JGOGtLSjs7QXFGNWtLRztFQUNDO0NyRitrS0o7O0FxRm5sS0c7RUFDQztDckZzbEtKOztBcUZwbEtHO0VBQ0M7Q3JGdWxLSjs7QXFGM2xLRztFQUNDO0NyRjhsS0o7O0FxRjVsS0c7RUFDQztDckYrbEtKOztBcUZubUtHO0VBQ0M7Q3JGc21LSjs7QXFGcG1LRztFQUNDO0NyRnVtS0o7O0FxRjNtS0c7RUFDQztDckY4bUtKOztBcUY1bUtHO0VBQ0M7Q3JGK21LSjs7QXFGbm5LRztFQUNDO0NyRnNuS0o7O0FxRnBuS0c7RUFDQztDckZ1bktKOztBc0YxcEtBOzt5RkFBQTtBQUtBOzs7Ozs7OztHQUFBO0FBY0c7RWhGYUc7RUFSQTtDTm1wS047O0FzRnhwS0c7RWhGYUc7RUFSQTtDTndwS047O0FzRjdwS0c7RWhGYUc7RUFSQTtDTjZwS047O0FzRmxxS0c7RWhGYUc7RUFSQTtDTmtxS047O0FzRnZxS0c7RWhGYUc7RUFSQTtDTnVxS047O0FzRjVxS0c7RWhGYUc7RUFSQTtDTjRxS047O0FzRmpyS0c7RWhGYUc7RUFSQTtDTmlyS047O0FzRnRyS0c7RWhGYUc7RUFSQTtDTnNyS047O0FzRjNyS0c7RWhGYUc7RUFSQTtDTjJyS047O0FzRmhzS0c7RWhGYUc7RUFSQTtDTmdzS047O0FzRnJzS0c7RWhGYUc7RUFSQTtDTnFzS047O0FzRjFzS0c7RWhGYUc7RUFSQTtDTjBzS047O0FzRi9zS0c7RWhGYUc7RUFSQTtDTitzS047O0FzRnB0S0c7RWhGYUc7RUFSQTtDTm90S047O0FzRnp0S0c7RWhGYUc7RUFSQTtDTnl0S047O0FzRjl0S0c7RWhGYUc7RUFSQTtDTjh0S047O0FzRm51S0c7RWhGYUc7RUFSQTtDTm11S047O0FzRnh1S0c7RWhGYUc7RUFSQTtDTnd1S047O0FzRnB1S0E7Ozs7Ozs7O0dBQUE7QUM1QkE7RUFDQztDdkY0d0tEOztBdUZ6d0tBO0VBQ0M7RUFDQTtFQUNBO0N2RjR3S0Q7O0F1Rnp3S0E7RUFDQztDdkY0d0tEOztBdUZ6d0tBO0VBQ0M7Q3ZGNHdLRDs7QXdGM3hLQTs7O0VBQUE7QUNFQztFQUF5QjtDekZpeUsxQjs7QXlGaHlLQztFQUF5QjtDekZveUsxQjs7QXlGbnlLQztFQUF5QjtDekZ1eUsxQjs7QXlGdHlLQztFQUF5QjtDekYweUsxQjs7QXlGdnlLQztFQUF5QjtDekYyeUsxQjs7QXlGMXlLQztFQUF5QjtDekY4eUsxQjs7QXlGN3lLQztFQUF5QjtDekZpeksxQjs7QXlGaHpLQztFQUF5QjtDekZveksxQjs7QXlGN3pLQztFQUF5QjtDekZpMEsxQjs7QXlGaDBLQztFQUF5QjtDekZvMEsxQjs7QXlGbjBLQztFQUF5QjtDekZ1MEsxQjs7QXlGdDBLQztFQUF5QjtDekYwMEsxQjs7QXlGdjBLQztFQUF5QjtDekYyMEsxQjs7QXlGMTBLQztFQUF5QjtDekY4MEsxQjs7QXlGNzBLQztFQUF5QjtDekZpMUsxQjs7QXlGaDFLQztFQUF5QjtDekZvMUsxQjs7QXlGNzFLQztFQUF5QjtDekZpMksxQjs7QXlGaDJLQztFQUF5QjtDekZvMksxQjs7QXlGbjJLQztFQUF5QjtDekZ1MksxQjs7QXlGdDJLQztFQUF5QjtDekYwMksxQjs7QXlGdjJLQztFQUF5QjtDekYyMksxQjs7QXlGMTJLQztFQUF5QjtDekY4MksxQjs7QXlGNzJLQztFQUF5QjtDekZpM0sxQjs7QXlGaDNLQztFQUF5QjtDekZvM0sxQjs7QXlGNzNLQztFQUF5QjtDekZpNEsxQjs7QXlGaDRLQztFQUF5QjtDekZvNEsxQjs7QXlGbjRLQztFQUF5QjtDekZ1NEsxQjs7QXlGdDRLQztFQUF5QjtDekYwNEsxQjs7QXlGdjRLQztFQUF5QjtDekYyNEsxQjs7QXlGMTRLQztFQUF5QjtDekY4NEsxQjs7QXlGNzRLQztFQUF5QjtDekZpNUsxQjs7QXlGaDVLQztFQUF5QjtDekZvNUsxQjs7QXlGNzVLQztFQUF5QjtDekZpNksxQjs7QXlGaDZLQztFQUF5QjtDekZvNksxQjs7QXlGbjZLQztFQUF5QjtDekZ1NksxQjs7QXlGdDZLQztFQUF5QjtDekYwNksxQjs7QXlGdjZLQztFQUF5QjtDekYyNksxQjs7QXlGMTZLQztFQUF5QjtDekY4NksxQjs7QXlGNzZLQztFQUF5QjtDekZpN0sxQjs7QXlGaDdLQztFQUF5QjtDekZvN0sxQjs7QXlGNzdLQztFQUF5QjtDekZpOEsxQjs7QXlGaDhLQztFQUF5QjtDekZvOEsxQjs7QXlGbjhLQztFQUF5QjtDekZ1OEsxQjs7QXlGdDhLQztFQUF5QjtDekYwOEsxQjs7QXlGdjhLQztFQUF5QjtDekYyOEsxQjs7QXlGMThLQztFQUF5QjtDekY4OEsxQjs7QXlGNzhLQztFQUF5QjtDekZpOUsxQjs7QXlGaDlLQztFQUF5QjtDekZvOUsxQjs7QXlGNzlLQztFQUF5QjtDekZpK0sxQjs7QXlGaCtLQztFQUF5QjtDekZvK0sxQjs7QXlGbitLQztFQUF5QjtDekZ1K0sxQjs7QXlGdCtLQztFQUF5QjtDekYwK0sxQjs7QXlGditLQztFQUF5QjtDekYyK0sxQjs7QXlGMStLQztFQUF5QjtDekY4K0sxQjs7QXlGNytLQztFQUF5QjtDekZpL0sxQjs7QXlGaC9LQztFQUF5QjtDekZvL0sxQjs7QXlGNy9LQztFQUF5QjtDekZpZ0wxQjs7QXlGaGdMQztFQUF5QjtDekZvZ0wxQjs7QXlGbmdMQztFQUF5QjtDekZ1Z0wxQjs7QXlGdGdMQztFQUF5QjtDekYwZ0wxQjs7QXlGdmdMQztFQUF5QjtDekYyZ0wxQjs7QXlGMWdMQztFQUF5QjtDekY4Z0wxQjs7QXlGN2dMQztFQUF5QjtDekZpaEwxQjs7QXlGaGhMQztFQUF5QjtDekZvaEwxQjs7QXlGN2hMQztFQUF5QjtDekZpaUwxQjs7QXlGaGlMQztFQUF5QjtDekZvaUwxQjs7QXlGbmlMQztFQUF5QjtDekZ1aUwxQjs7QXlGdGlMQztFQUF5QjtDekYwaUwxQjs7QXlGdmlMQztFQUF5QjtDekYyaUwxQjs7QXlGMWlMQztFQUF5QjtDekY4aUwxQjs7QXlGN2lMQztFQUF5QjtDekZpakwxQjs7QXlGaGpMQztFQUF5QjtDekZvakwxQjs7QU94aExDO0VrRnpCRDtJakYwRk07SUFBQTtHUjY5S0o7Q0FDRjtBTy9oTEM7RWtGekJEO0lqRmlITTtJQUFBO0dSNDhLSjtDQUNGO0FPcmlMQztFa0Z6QkQ7SWpGc0hNO0lBQUE7R1I2OEtKO0NBQ0Y7QU8zaUxDO0VrRnpCRDtJakYySE07SUFBQTtHUjg4S0o7Q0FDRjs7QU9qakxDO0VrRmpCQTtJQUNDO0d6RnNrTEE7Q0FDRjtBMEY5bExBOzs7O2dGQUFBO0FBeUJBO0VqRkFDO0VEdU5BO0VBQ0E7RUFDQTtFa0Z0TkE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0MxRjZrTEQ7QU94a0xDO0VtRmREO0lsRjZOSTtHUjYzS0Y7Q0FDRjtBTzdrTEM7RW1GZEQ7SWxGb09FO0lBQ0E7R1IyM0tBO0NBQ0Y7QU9ubExDO0VtRmREO0lBbUJFO0cxRmtsTEE7Q0FDRjs7QTBGOWtMQTtFQUNDO0VBRUE7QzFGZ2xMRDtBTzdsTEM7RW1GVUQ7SUFZRTtHMUYya0xBO0NBQ0Y7QU9sbUxDO0VtRlVEO0lBcUJFO0cxRnVrTEEiLCJmaWxlIjoiY3NzL3N0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qICAxIC0gU0VUVElOR1NcbiAqICBHbG9iYWwgdmFyaWFibGVzLCBzaXRlLXdpZGUgc2V0dGluZ3MsXG4gKiAgY29uZmlnIHN3aXRjaGVzIGV0Yy5cbiAqXG4gKiAgVGhlIG9yZGVyIGluIHdoaWNoIHRoZXNlIFNhc3MgZmlsZXNcbiAqICBhcmUgbG9hZGVkIGlzIGNyaXRpY2FsIVxuICogIFNvIHBsZWFzZSBiZSBjYXJlZnVsIHdoZW4gZWRpdGluZ1xuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBPcmdhbml6ZSBjb2xvciB2YXJpYWJsZXMgaW4gYSBTYXNzIE1hcC5cbiAgIFRoaXMgd2F5LCB0aGUgY29sb3JzIGNhbiBiZSBpdGVyYXRlZCwgYXJlIG1vcmUgb3JnYW5pemVkLFxuICAgYW5kIGFyZSBtb3JlIGludHVpdGl2ZSB0byByZWZlcmVuY2UuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICpcdEEgc2ltcGxlIGZ1bmN0aW9uIGZvciBhY2Nlc3NpbmcgdGhlIGNvbG9ycyBmcm9tIG91ciBtYXBwaW5nXG4gKlx0VG8gYWNjZXNzIGNvbG9ycyBpbiBvdXIgcGFsZXR0ZSwgd2UgdXNlIGEgdmVyeSBzaW1wbGUgY3VzdG9tIFNhc3MgZnVuY3Rpb25cbiAqICBUaGlzIGZ1bmN0aW9uIGlzIHBsYWNlZCBoZXJlLCAoYW5kIG5vdCBpbiB0aGUgdG9vbGJveClcbiAqICBiZWNhdXNlIHdlIHdhbnQgdG8gdXNlIGl0IGluIG91ciBvdGhlciBzZXR0aW5nIGZpbGVzXG5cblx0VVNBR0U6XG5cblx0LmRlbW8ge1xuXHRcdGNvbG9yOiBwYWxldHRlKHByaW1hcnksIDUwMCk7XG5cdH1cblxuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb25maWcgc2V0dGluZ3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG5cdFsxXVx0XHRMb2dvIGRhcmsgb3IgbGlnaHQgY2FuIGJlIHNldCBpbiBoZWFkZXIuYmxhZGUucGhwIC8gZm9vdGVyLmJsYWRlLnBocCAmXG5cdFsyXSBcdFNldCB0aGlzIHRvIHRydWUgd2hlbiBiZ0NvbG9yIGdldHMgYSBkYXJrIGNvbG9yIHRoYXQgY29udHJhc3QgdGhlIGJvZHkgYmcgY29sb3JcbiovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gXHQgRGVmaW5lcyB0aGUgdHlwb2dyYXBoaWMgYmFzZWxpbmUuXG4gICBXZSBkZWZpbmUgZXZlcnkgc2l6ZSBpbiBwaXhlbHMsIHRoZSB1bmRlcmx5aW5nIHN5c3RlbVxuICAgY29udmVydHMgdGhlIHJlc3BlY3RpdmUgdW5pdHMgdG8gdGhlIHJlc3BvbnNpdmUgUkVNIHZhbHVlLlxuIFx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogT3VyIGJhc2UgZm9udC1zaXplIGFuZCBsaW5lLWhlaWdodFxuICovXG4vKipcbiAqXHRIZXJlIHdlIGFzc2lnbiBzaG9ydCBuYW1lcyBmb3IgdGhlIGZvbnQgZmFtaWxpZXNcbiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIERlZmluZSBicmVha3BvaW50cyBmb3IgZ2l2ZW4gZm9ybWF0c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qICAyIC0gVE9PTFNcbiAqICBTaXRlIHdpZGUgbWl4aW5zIGFuZCBmdW5jdGlvbnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgRnVuY3Rpb25zIHVzZWQgaW4gZ3JpZCBjYWxjdWxhdGlvblxuICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICogUmV0dXJuIHBlcmNlbnRhZ2UgYmFzZWQgb24gYW1vdW50IG9mIGNvbHVtbnNcbiAgKiBVc2UgcGFyZW50IGNvbHVtbiBzaXplIHRvIGFkanVzdCB0aGUgb3JpZ2luXG4gICovXG4vKipcbiAgKiBEZWZhdWx0IGZ1bmN0aW9uIGZvciBjb2x1bW5zXG4gICogUmV0dXJuIGFzIHBlcmNlbnRhZ2VcbiAgKi9cbi8qKlxuICAqIFJldHVybiBhcyB2aWV3cG9ydCB3aWR0aFxuICAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIEZvbnQgcmVsYXRlZCBmdW5jdGlvbnNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqICBNaXhpbiBmb3Igc2V0dGluZyBmb250LXNpemUgaW4gUkVNIHRocm91Z2ggYSBTYXNzIE1hcCB3aXRoIGFsbCBhdmFpbGFibGUgc2l6ZXNcblxuICAgIFVTQUdFOlxuXG4gICAgLm15Q2xhc3Mge1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoeGwpO1xuICAgIH1cblxuICovXG4vKiBNZWRpYSBxdWVyeSBtaXhpbiBmb3Igd3JpdGluZyBNb2JpbGUgRmlyc3RcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUb29sYm94IGZ1bmN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqICBNYXRocyBoZWxwZXJzLlxuICogIEhhbHZlIGFuZCBkb3VibGUgbnVtYmVycywgcmV0dXJuaW5nIHJvdW5kZWQgaW50ZWdlcnMuXG5cbiAgICBVU0FHRTpcblxuICAgIC5mb28ge1xuICAgICAgICBwYWRkaW5nOiBoYWx2ZSgzMHB4KTtcbiAgICB9XG5cbiAqL1xuLyoqXG4gKiAgUmVtb3ZlIHRoZSB1bml0IG9mIGEgbGVuZ3RoXG4gKiAgQHBhcmFtIHtOdW1iZXJ9ICRudW1iZXIgLSBOdW1iZXIgdG8gcmVtb3ZlIHVuaXQgZnJvbVxuICogIEByZXR1cm4ge051bWJlcn0gLSBVbml0bGVzcyBudW1iZXJcbiAqL1xuLyogQ2hlY2sgaWYgdmFsdWUgaXMgbnVtYmVyICovXG4vKiBWYWx1ZSB0byBFbSAqL1xuLyogVmFsdWUgdG8gUmVtICovXG4vKlxuICogU2V0IHZlcnRpY2FsIHNwYWNpbmcgb25seSBmb3IgbW9iaWxlIHZpZXdwb3J0XG5cbiBVU0FHRTpcblxuIC5leGFtcGxlIHtcblx0IEBpbmNsdWRlIHZzcGFjaW5nLXMoXG5cdFx0XHRcdCdtYXJnaW4tdG9wJyAxXG5cdFx0KTtcbiAgfVxuXG4gKi9cbi8qXG4gKiBTZXQgdmVydGljYWwgc3BhY2luZyBmb3Igdmlld3BvcnQgbGFyZ2VyIHRoYW4gbW9iaWxlXG4gKiBJbiBmbGV4aWJsZSB1bml0cyAodncpIGFuZCBvbiBtYXggdmlld3BvcnQgaW4gYSBmaXhlZCBhbW91bnQgKHB4KVxuXG4gVVNBR0U6XG5cbiAuZXhhbXBsZSB7XG5cdCBAaW5jbHVkZSB2c3BhY2luZy1tLXVwKFxuXHRcdFx0XHQncGFkZGluZy10b3AnIDAuMzMsXG5cdFx0XHRcdCdtYXJnaW4tYm90dG9tJyAwLjVcblx0XHQpO1xuICB9XG5cbiAqL1xuLypcbiAqIEZyb20gdmFsdWVzIGdpdmVuIHJldHVybiB0aGUgY29ycmVjdCB2LXNwYWNpbmcgZm9yIGVhY2ggYnJlYWtwb2ludFxuICovXG4vKipcbiAqXHRBIHNpbXBsZSBmdW5jdGlvbiBmb3Igc2V0dGluZyBhIGNvbnNpc3RlbnQgYm9yZGVyLXJhZGl1c1xuXG5cdFVTQUdFOlxuXG5cdC5jYXJkIHtcblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzO1xuXHR9XG5cblx0LmNhcmQtLWFsdCB7XG5cdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhsKTtcblx0fVxuXG4gKi9cbi8qKlxuICogTG9ib3RvbWl6ZWQgT3dsIFNlbGVjdG9yIG1peGluOlxuICogLSBTZXQgc3BhY2luZyBmb3IgY29uc2VjdXRpdmUgaXRlbXMgd2l0aCBtYXJnaW4tdG9wIG9uIGFsbCBidXQgdGhlIGZpcnN0IGl0ZW1cblxuXHRVU0FHRTpcblxuXHQuYm94IHtcblx0XHRAaW5jbHVkZSBvd2wtY2hpbGRyZW47XG5cdH1cblxuXHQuY2FyZF9faXRlbSB7XG5cdFx0QGluY2x1ZGUgb3dsO1xuXHR9XG5cbiAqL1xuLypcbiAqIExvYm90b21pemVkIG93bCBzZWxlY3Rvci5cbiAqIC0gR2l2ZXMgdGhlIGNoaWxkcmVuIG9mIHRoZSBlbGVtZW50IHNwYWNpbmdcbiAqIC0gaHR0cHM6Ly9hbGlzdGFwYXJ0LmNvbS9hcnRpY2xlL2F4aW9tYXRpYy1jc3MtYW5kLWxvYm90b21pemVkLW93bHNcbiAqL1xuLyoqXG4gKiAgU2hvdyBoeXBoZW5zIGZvciBldmVyeSBicm93c2VyIHN1cHBvcnRpbmcgaXRcbiAqICBhbmQgd2lsbCBicmVhayBsaW5lcyBpbiBldmVyeSBvdGhlciBicm93c2VyXG4gKi9cbi8qXG4gKiAgUmVzdHJpY3QgYW4gZWxlbWVudCB0byBhIG1heC13aWR0aCBmb3IgY3JlYXRpbmcgZ3V0dGVycyBvbiB0aGUgc2lkZVxuICovXG4vKlxuICpcdEEgbWl4aW4gdG8gc2V0IGVsZW1lbnRzIHRvIGl0cyBvd24gbmFtZWQgZ3JpZC1hcmVhXG4gKi9cbi8qKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiAgVGhlICd6LWluZGV4LW1hcCcgaXMgdXNlZCBmb3IgbWFuYWdpbmcgdGhlIGVsZW1lbnRzIHN0YWNraW5nIG9yZGVyIGluIHRoZSAncm9vdCcgc3RhY2tpbmcgY29udGV4dFxuICogIFRoaXMgd2F5IHdlIGhhdmUgYSBvdmVydmlldyBvZiBhbGwgdGhlIHotaW5kZXggdmFsdWVzIHRoYXQgYXJlIHVzZWQgYWNyb3NzIHRoZSBwcm9qZWN0LlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgIFVTQUdFOlxuXG4gICAgQGluY2x1ZGUgeih6LW1vZGFsKTtcblxuICovXG4vKiAgMyAtIEVMRU1FTlRTXG4gKiAgUGxhaW4gb2xkIHNpbXBsZSBIVE1MIGVsZW1lbnRzIHdpdGhvdXQgYSBjbGFzcyAodHlwZSBzZWxlY3RvcnMpXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBCYXNpYyBlbGVtZW50cyAobm8gY2xhc3Mgc2VsZWN0b3JzIGFsbG93ZWQpXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBTZXQgdXAgdGhlIGh0bWxcbiAqXG4gKiAxLiBNYWtlcyBzdXJlIHRoYXQgc29tZSBmb250cyBhcmUgYmV0dGVyIHJlbmRlcmVkXG4gKiAyLiBTZXQgZm9udCB0byBsaW5pbmcgZmlndXJlc1xuICpcbiAqIDMuIEF2b2lkIHRoZSBJRSAxMC0xMSBgbWluLWhlaWdodGAgYnVnLlxuICogNC4gVXNlIGAlYCBpbnN0ZWFkIG9mIGB2aGAgc2luY2UgYHZoYCBpcyBidWdneSBpbiBvbGRlciBtb2JpbGUgU2FmYXJpLlxuICovXG5odG1sIHtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJsbnVtXCI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuYm9keSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzY1NjU2NTtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBoZWlnaHQ6IDEwMCU7XG4gIC8qIDMsIDQgKi9cbn1cblxuZm9vdGVyIHtcbiAgZmxleDogMSAwIGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi8qKlxuICogWzFdIE1ha2Ugc3VyZSBlbGVtZW50cyBsaWtlIGlucHV0IGFuZCB0ZXh0YXJlYSBpbmhlcml0IHNvbWUgYmFzZSBwcm9wZXJ0aWVzXG4gKiAgICAgaHR0cHM6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNi8xMS9jc3MtaW5oZXJpdGFuY2UtY2FzY2FkZS1nbG9iYWwtc2NvcGUtbmV3LW9sZC13b3JzdC1iZXN0LWZyaWVuZHMvXG4gKlxuICogWzJdIFNldHRpbmcgYm94LXNpemluZyB0aGUgYmVzdCB3YXkgcGVyOlxuICogICAgIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlL1xuICovXG4qIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbiosICo6YmVmb3JlLCAqOmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuLyoqXG4gKiBbMV0gVHVybiBvZmYgdGV4dC1zaGFkb3cgd2hlbiBzZWxlY3RpbmcgdGV4dCBmb3IgYmV0dGVyIHJlYWRhYmlsaXR5XG4gKi9cbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogI0JFMUUyRDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICAvKiBbMV0gKi9cbn1cblxuLyogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luIGFyb3VuZCBmaWd1cmVcbiAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFsxXSBTZXR0aW5nICd2ZXJ0aWNhbC1hbGlnbicgcmVtb3ZlcyB0aGUgd2hpdGVzcGFjZSB0aGF0IGFwcGVhcnMgdW5kZXIgJ2ltZydcbiAqXHQgICBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGRyb3BwZWQgaW50byBhIHBhZ2UgYXMtaXMuIFNhZmVyIGFsdGVybmF0aXZlIHRvXG4gKlx0ICAgdXNpbmcgJ2Rpc3BsYXk6IGJsb2NrOycuXG4gKiBbMl0gUmVtb3ZlIGJvcmRlciAvIGVzcGVjaWFsbHkgb24gb2xkZXIgYnJvd3NlcnNcbiAqL1xuaW1nLCBzdmcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAvKlsxXSovXG4gIGJvcmRlcjogbm9uZTtcbiAgLypbMl0qL1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8qKlxuICogIE5lZWRlZCBmb3IgaU9TIHRvIHByZXZlbnQgaW5wdXQgem9vbWluZ1xuICogIGh0dHBzOi8vdXhjZWxsZW5jZS5jb20vMjAxNC8wMS8xNS9xdWljay1maXgtaW5jcmVhc2UtZm9udC1zaXplLXRvLTE2cHgtdG8tZml4LWlucHV0LXpvb21cbiAqL1xuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuYTpub3QoW2NsYXNzXSkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAjNDA3OUI4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogYXV0bztcbn1cbmE6bm90KFtjbGFzc10pOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQ6ICM0MDc5Qjg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjNzLCBvcGFjaXR5IDAuM3MsIHRyYW5zZm9ybSAwLjNzO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG59XG5hOm5vdChbY2xhc3NdKTpob3Zlcjo6YWZ0ZXIge1xuICBoZWlnaHQ6IDJweDtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIGhncm91cCxcbnVsLCBvbCwgZGQsXG5wLCBmaWd1cmUsXG5wcmUsIHRhYmxlLCBmaWVsZHNldCwgaHIge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuaDIge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMzMzMzMzMzMzO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuaDUsIGg2IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqICBMaXN0c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICpcdERlZmF1bHQgaW5kZW50YXRpb24gdmFsdWUgZm9yIGxpc3RzXG4gKi9cbnVsLFxub2wge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1sZWZ0OiAxLjEyNWVtO1xufVxuXG5kZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vKipcbiAqXHRSZW1vdmUgZXh0cmEgdmVydGljYWwgc3BhY2luZyB3aGVuIG5lc3RpbmcgbGlzdHMuXG4gKi9cbmxpID4gdWwsXG5saSA+IG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogIDQgLSBMYXlvdXQgZWxlbWVudHNcbiAqICBEZXNpZ24gcGF0dGVybnMgKGUuZy4gZ3JpZHMgb3IgbWVkaWEgb2JqZWN0KVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBDb250YWluXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmwtY29udGFpbiB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMnZ3KTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5sLWNvbnRhaW4ge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTApICogOCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAubC1jb250YWluIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDE0KSAqIDEyKTtcbiAgICBtYXgtd2lkdGg6IDExNTJweDtcbiAgfVxufVxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFNwbGl0IGxheW91dCBpbiAyIGVxdWFsIGNvbHVtbnNcbiAqXG4gKiBVbnRpbCB2aWV3cG9ydCBpcyB3aWRlIGVub3VnaCB0aGUgY29sdW1ucyBhcmUgc3RhY2tlZCB2ZXJ0aWNhbGx5XG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5sLXNwbGl0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAubC1zcGxpdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG4vKipcbiAqIFNwZWNpYWwgY29udGFpbiB2ZXJzaW9uIGZvciBzcGxpdC5cbiAqIERvZXNuJ3QgcmVzdHJhaW4gY29udGVudCBvbiBtZWRpdW0gdmlld3BvcnRcbiAqL1xuLmwtc3BsaXQtLWNvbnRhaW4ge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTJ2dyk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAubC1zcGxpdC0tY29udGFpbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAubC1zcGxpdC0tY29udGFpbiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gICAgbWF4LXdpZHRoOiAxMTUycHg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5sLXNwbGl0X19jb2x1bW4ge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5sLXNwbGl0X19jb2x1bW46Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiA2Mi41JTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMi41JTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5sLXNwbGl0X19jb2x1bW46Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAubC1zcGxpdF9fY29sdW1uOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDZ2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLmwtc3BsaXRfX2NvbHVtbjpsYXN0LWNoaWxkIHtcbiAgICB3aWR0aDogMzcuNSU7XG4gIH1cbn1cbi5sLXNwbGl0LS1pcy1yZXZlcnNlZCAubC1zcGxpdF9fY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgb3JkZXI6IDI7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAubC1zcGxpdC0taXMtcmV2ZXJzZWQgLmwtc3BsaXRfX2NvbHVtbjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMi41JTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmwtc3BsaXQtLWlzLXJldmVyc2VkIC5sLXNwbGl0X19jb2x1bW46Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAubC1zcGxpdC0tYnJlYWtvdXQtb24tbSAubC1zcGxpdF9fY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgICB3aWR0aDogNjAlO1xuICAgIHBhZGRpbmctbGVmdDogMTAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwJTtcbiAgfVxuICAubC1zcGxpdC0tYnJlYWtvdXQtb24tbSAubC1zcGxpdF9fY29sdW1uOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiA0MCU7XG4gIH1cbn1cbi8qKlxuICogV2hlbiB0aGVyZSBpcyBvbmx5IDEgY29sdW1uLCBhbGlnbiBpdCB0byB0aGUgbWlkZGxlIGFuZCBjb250YWluIHRoZSB3aWR0aFxuICogT25seSBvbmUgY29sdW1uIGlzIHVzZWQgZS5nLiBpbiB0aGUgdGFic2xpZGVyIHdoZW4gdGhlcmUgaXMgbm8gaW1hZ2Ugc2V0XG4gKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5sLXNwbGl0X19jb2x1bW46b25seS1jaGlsZCB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgd2lkdGg6IDc1JTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5sLXNwbGl0X19jb2x1bW46b25seS1jaGlsZCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4ubC1zcGxpdF9fY29sdW1uLS12cGFkIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5sLXNwbGl0X19jb2x1bW4tLXZwYWQge1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmwtc3BsaXRfX2NvbHVtbi0tbGVmdHBhZCB7XG4gICAgcGFkZGluZy1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG59XG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBSZXN0cmljdFxuICpcbiAqIFdoZW4gYSBibG9jayBzaG91bGRuJ3QgdGFrZSB1cCB0aGUgd2hvbGUgd2lkdGggb2YgdGhlIGNvbnRhaW5lclxuICogd2UgY2FuIHJlc3RyaWN0IHRoZSBtYXhpbXVtIHdpZHRoXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLmwtcmVzdHJpY3QtbmFycm93IHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDc1JTtcbiAgICBtYXgtd2lkdGg6IDM4ZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAubC1yZXN0cmljdC1uYXJyb3cge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLmwtcmVzdHJpY3Qtd2lkZSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiA4Ny41JTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5sLXJlc3RyaWN0LXdpZGUge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxufVxuXG4vKiAgNSAtIENPTVBPTkVOVFNcbiAqICBEaXNjcmV0ZSBjb21wbGV0ZSBjaHVua3Mgb2YgVUkuXG4gKiAgRGVzaWduZWQgY29tcG9uZW50c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIENvbXBvbmVudHNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmMtYnJlYWRjcnVtYiB7XG4gIHBhZGRpbmctYm90dG9tOiA0cHg7XG59XG5cbi5jLWJyZWFkY3J1bWJfX2xpc3Qge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmMtYnJlYWRjcnVtYl9faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uYy1icmVhZGNydW1iX19pdGVtOm50aC1jaGlsZChuKzIpIC5jLWJyZWFkY3J1bWJfX2ljb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgY29sb3I6ICMxRDFEMUQ7XG59XG5cbi5jLWJyZWFkY3J1bWJfX2xpbmsge1xuICBjb2xvcjogIzY1NjU2NTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmMtYnJlYWRjcnVtYl9faXRlbS0tbGFzdCAuYy1icmVhZGNydW1iX19saW5rIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5jLWJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTQyODU3MTQyOTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0JFMUUyRDtcbiAgdGV4dC1zaGFkb3c6IDAgMCA0cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDE2cHggMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5jLWJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRkZGRkZGLCAwIDAgNXB4IDJweCAjQkUxRTJEO1xufVxuLmMtYnV0dG9uOmFjdGl2ZTpub3QoOmRpc2FibGVkKSB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4uYy1idXR0b246ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4uYy1idXR0b246OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICB0b3A6IGNhbGMoNTAlIC0gMnB4KTtcbiAgbGVmdDogY2FsYyg1MCUgLSAycHgpO1xuICB3aWR0aDogNHB4O1xuICBoZWlnaHQ6IDRweDtcbiAgb3BhY2l0eTogMDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiAjOTgxODI0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xufVxuLmMtYnV0dG9uOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOjphZnRlciB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogc2NhbGUoMTAwKTtcbn1cblxuLmMtYnV0dG9uX190ZXh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICBwYWRkaW5nOiAwIDI0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5jLWJ1dHRvbi0taWNvbiAuYy1idXR0b25fX3RleHQge1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xufVxuXG4uYy1idXR0b25fX2ljb24ge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHRvcDogLTFweDtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcbn1cbi5jLWJ1dHRvbjpob3Zlcjpub3QoOmRpc2FibGVkKSAuYy1idXR0b25fX2ljb24ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTtcbn1cbi5jLWJ1dHRvbl9faWNvbjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7XG59XG4uYy1idXR0b24tLWljb24gLmMtYnV0dG9uX19pY29uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxNnB4O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogRGVmYXVsdCBidXR0b25cbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uYy1naG9zdGJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTQyODU3MTQyOTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiAwIDAgNHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm9yZGVyOiAxcHggc29saWQgY3VycmVudENvbG9yO1xuICBwYWRkaW5nOiAxNnB4IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYy1naG9zdGJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMCA0cHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi5jLWdob3N0YnV0dG9uOmFjdGl2ZTpub3QoOmRpc2FibGVkKSB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5jLWdob3N0YnV0dG9uOmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC41O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLmMtZ2hvc3RidXR0b246OmFmdGVyIHtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA3KTtcbiAgYmFja2dyb3VuZC1jbGlwOiBjb250ZW50LWJveDtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0xcHg7XG4gIGJvdHRvbTogLTFweDtcbiAgcmlnaHQ6IC0xcHg7XG4gIGxlZnQ6IC0xcHg7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41cztcbn1cbi5jLWdob3N0YnV0dG9uOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMzVzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG5cbi5jLWdob3N0YnV0dG9uX190ZXh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICBwYWRkaW5nOiAwIDI0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5jLWJ1dHRvbi0taWNvbiAuYy1naG9zdGJ1dHRvbl9fdGV4dCB7XG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG59XG5cbi5jLWdob3N0YnV0dG9uX19pY29uIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICB0b3A6IC0xcHg7XG4gIG1hcmdpbi1yaWdodDogMTVweDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XG59XG4uYy1naG9zdGJ1dHRvbjpob3Zlcjpub3QoOmRpc2FibGVkKSAuYy1naG9zdGJ1dHRvbl9faWNvbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpO1xufVxuLmMtZ2hvc3RidXR0b24tLWljb24gLmMtZ2hvc3RidXR0b25fX2ljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDE2cHg7XG59XG4uYy1naG9zdGJ1dHRvbl9faWNvbjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7XG59XG5cbi5jLWNhcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vKlxuICogQ2FyZCB0aGF0IGRvZXMgc29tZSBhbmltYXRpb25zIG9uIGhvdmVyXG4gKi9cbi5jLWNhcmQtLWhhcy1hY3Rpb24ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiAwO1xufVxuLmMtY2FyZC0taGFzLWFjdGlvbjpob3ZlciwgLmMtY2FyZC0taGFzLWFjdGlvbjphY3RpdmUge1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG4uYy1jYXJkLS1oYXMtYWN0aW9uOjpiZWZvcmUsIC5jLWNhcmQtLWhhcy1hY3Rpb246OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmMtY2FyZC0taGFzLWFjdGlvbjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg2MiwgNzIsIDgyLCAwLjkyKTtcbiAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KHJnYmEoNjIsIDcyLCA4MiwgMC44KSAwJSwgcmdiYSg2MiwgNzIsIDgyLCAwLjkyKSAxMDAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMzUlKSByb3RhdGUoLTExZGVnKSBzY2FsZSgxLjMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMzAwbXM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDUsIDAuMSwgMC4zLCAxKTtcbn1cbi5jLWNhcmQtLWhhcy1hY3Rpb246OmFmdGVyIHtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDI1cHg7XG4gIG1hcmdpbjogYXV0bztcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB2aWV3Qm94PScwIDAgMTYgMTInIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGZpbGw9JyUyM0JFMUUyRCcgZD0nTTEzLjQgNi43ODNILjc2MkEuNzcyLjc3MiAwIDAgMSAwIDZjMC0uNDMyLjM0MS0uNzgzLjc2Mi0uNzgzSDEzLjRMOS42MjMgMS4zMzZhLjc5OC43OTggMCAwIDEgMC0xLjEwNy43NDcuNzQ3IDAgMCAxIDEuMDc3IDBsNS4wNzcgNS4yMThhLjc5OC43OTggMCAwIDEgMCAxLjEwNkwxMC43IDExLjc3MWEuNzQ3Ljc0NyAwIDAgMS0xLjA3NyAwIC43OTguNzk4IDAgMCAxIDAtMS4xMDdMMTMuNCA2Ljc4M3onLyUzRSUzQy9zdmclM0VcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjc1KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyMDBtcztcbn1cbi5jLWNhcmQtLWhhcy1hY3Rpb246aG92ZXI6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC45MjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTExZGVnKSBzY2FsZSgxLjMpO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA0MDBtcztcbiAgdHJhbnNpdGlvbi1kZWxheTogNTBtcztcbn1cbi5jLWNhcmQtLWhhcy1hY3Rpb246aG92ZXI6YWZ0ZXIge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDQwMG1zO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyMDBtcztcbn1cbi5jLWNhcmQtLWhhcy1hY3Rpb246Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiAjM0U0ODUyO1xuICBvdXRsaW5lLXN0eWxlOiBzb2xpZDtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgb3V0bGluZS13aWR0aDogMnB4O1xufVxuXG4uYy1jYXJkX19waWN0dXJlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsZXg6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYy1jYXJkX19pbWcge1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmMtY2FyZF9fbGFiZWwge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xNDI4NTcxNDI5O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDE0cHggMTBweCAxNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiBtZWRpdW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM0U0ODUyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA0MDBtcztcbn1cbi5jLWNhcmQtLWhhcy1hY3Rpb246aG92ZXIgLmMtY2FyZF9fbGFiZWwge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5jLWNhcmRfX2xhYmVsOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IC0xO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCRTFFMkQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzAwJSkgcm90YXRlKDExZGVnKSBzY2FsZSgxLjUsIDMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMzAwbXM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDUsIDAuMSwgMC4zLCAxKTtcbn1cbi5jLWNhcmQtLWhhcy1hY3Rpb246aG92ZXIgLmMtY2FyZF9fbGFiZWw6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogcm90YXRlKDVkZWcpIHNjYWxlKDIpO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAzMDBtcztcbiAgdHJhbnNpdGlvbi1kZWxheTogMG1zO1xufVxuXG4uYy1jYXJkX19pbmZvIHtcbiAgcGFkZGluZzogMTZweCAzMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4O1xufVxuXG4uYy1jYXJkX19oZWFkaW5nIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzY1NjU2NTtcbn1cblxuLmMtY2FyZF9fc3ViaGVhZGluZyB7XG4gIGNvbG9yOiAjOTk5OTk5O1xufVxuXG4uYy1jYXJkX190ZXh0bGluZSB7XG4gIGNvbG9yOiAjOTk5OTk5O1xufVxuKjpub3QoLmMtY2FyZF9fdGV4dGxpbmUpICsgLmMtY2FyZF9fdGV4dGxpbmUge1xuICBtYXJnaW4tdG9wOiAxNnB4O1xufVxuXG4uYy1jbG9zZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxODBtcyBlYXNlLW91dDtcbn1cbi5jLWNsb3NlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDNweCAycHggI0ZGRkZGRjtcbn1cbi5jLWNsb3NlOmFmdGVyLCAuYy1jbG9zZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjBweDtcbiAgcmlnaHQ6IDIwJTtcbiAgbGVmdDogMjAlO1xuICBoZWlnaHQ6IDNweDtcbiAgbWFyZ2luLXRvcDogLTJweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cbi5jLWNsb3NlOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cbi5jLWNsb3NlOmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbn1cbi5jLWNsb3NlOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xufVxuXG4uYy1jb25uZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuYy1jb25uZWN0IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG5cbi5jLWNvbm5lY3RfX3Bob25lIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzc3Nzc3Nzc3ODtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMyQzJDMkM7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXM7XG59XG4uYy1jb25uZWN0X19waG9uZTpob3ZlciwgLmMtY29ubmVjdF9fcGhvbmU6YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuLmMtY29ubmVjdF9fcGhvbmU6aG92ZXIge1xuICBvcGFjaXR5OiAwLjc7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLmMtY29ubmVjdF9fcGhvbmU6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICBvdXRsaW5lLXdpZHRoOiAycHg7XG59XG5cbi5jLWNvbm5lY3RfX29yIHtcbiAgbWFyZ2luOiAwIDE2cHg7XG4gIGNvbG9yOiAjNjU2NTY1O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODM5cHgpIHtcbiAgLmMtY29ubmVjdF9fb3Ige1xuICAgIG1hcmdpbjogOHB4IDAgMTZweDtcbiAgfVxufVxuXG4uYy1kYXRhIHtcbiAgbWFyZ2luOiAxNnB4IDA7XG59XG5cbi5jLWRhdGFfX2xpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uYy1kYXRhX19sYWJlbCB7XG4gIG1pbi13aWR0aDogNjRweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjMkMyQzJDO1xufVxuXG4uYy1kYXRhX192YWx1ZSB7XG4gIGNvbG9yOiAjNjU2NTY1O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYy1kYXRhX192YWx1ZVtocmVmXTpob3ZlciwgLmMtZGF0YV9fdmFsdWVbaHJlZl06YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuLmMtZGF0YV9fdmFsdWVbaHJlZl06aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5jLWRhdGFfX3ZhbHVlW2hyZWZdOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuICBvdXRsaW5lLXN0eWxlOiBzb2xpZDtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgb3V0bGluZS13aWR0aDogMnB4O1xufVxuXG4uYy1kYXRlLWxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiA0cHggMjRweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5jLWRhdGUtbGFiZWwtLXNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCRTFFMkQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4uYy1kYXRlLWxhYmVsX19kYXkge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzMzMzMzMzMzMztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uYy1kYXRlLWxhYmVsX19tb250aCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjc3Nzc3Nzc3Nzg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmMtZG93bmxvYWQtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuLmMtZG93bmxvYWQtbGlzdF9faXRlbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQzhDOEM4O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG59XG4uYy1kb3dubG9hZC1saXN0X19pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMDAsIDIwMCwgMjAwLCAwLjIpO1xufVxuXG4uYy1kb3dubG9hZC1saXN0X19saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogOHB4IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmMtZG93bmxvYWQtbGlzdF9faWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDE2cHg7XG59XG4uYy1kb3dubG9hZC1saXN0X19pY29uIHN2ZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYy1kb3dubG9hZC1saXN0X190ZXh0IHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDE2cHgpO1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbn1cbi5jLWRvd25sb2FkLWxpc3RfX2l0ZW06aG92ZXIgLmMtZG93bmxvYWQtbGlzdF9fdGV4dCB7XG4gIGNvbG9yOiAjMUQxRDFEO1xufVxuXG4uYy1ldmVudC1jYXJkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogMDtcbn1cbi5jLWV2ZW50LWNhcmQ6aG92ZXIsIC5jLWV2ZW50LWNhcmQ6YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuLmMtZXZlbnQtY2FyZDpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6ICNCRTFFMkQ7XG4gIG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICBvdXRsaW5lLXdpZHRoOiAycHg7XG59XG5cbi5jLWV2ZW50LWNhcmRfX3BpY3R1cmUge1xuICB3aWR0aDogMTAwJTtcbiAgZmxleDogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jLWV2ZW50LWNhcmRfX3BpY3R1cmU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgbGluZWFyO1xufVxuLmMtZXZlbnQtY2FyZDpob3ZlciAuYy1ldmVudC1jYXJkX19waWN0dXJlOjpiZWZvcmUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uYy1ldmVudC1jYXJkX19pbWcge1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmMtZXZlbnQtY2FyZF9fZGF0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQkUxRTJEO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gIHRyYW5zaXRpb246IGFsbCAyMDBtcyBsaW5lYXI7XG59XG4uYy1ldmVudC1jYXJkOmhvdmVyIC5jLWV2ZW50LWNhcmRfX2RhdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQkUxRTJEO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbn1cblxuLmMtZXZlbnQtY2FyZF9faW5mbyB7XG4gIGZsZXg6IDE7XG4gIHBhZGRpbmc6IDE2cHggMjRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y4RjhGODtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgbGluZWFyO1xufVxuLmMtZXZlbnQtY2FyZDpob3ZlciAuYy1ldmVudC1jYXJkX19pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0JFMUUyRDtcbn1cblxuLmMtZXZlbnQtY2FyZF9fdGl0bGUge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjMkMyQzJDO1xuICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgbGluZWFyO1xufVxuLmMtZXZlbnQtY2FyZDpob3ZlciAuYy1ldmVudC1jYXJkX190aXRsZSB7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi5jLWV2ZW50LWNhcmRfX3N1YnRpdGxlIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgY29sb3I6ICM5OTk5OTk7XG4gIHRyYW5zaXRpb246IGFsbCAyMDBtcyBsaW5lYXI7XG59XG4uYy1ldmVudC1jYXJkOmhvdmVyIC5jLWV2ZW50LWNhcmRfX3N1YnRpdGxlIHtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLmMtZXZlbnQtY2FyZF9fdHlwZSB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgY29sb3I6ICNDOEM4Qzg7XG4gIHRyYW5zaXRpb246IGFsbCAyMDBtcyBsaW5lYXI7XG59XG4uYy1ldmVudC1jYXJkOmhvdmVyIC5jLWV2ZW50LWNhcmRfX3R5cGUge1xuICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xufVxuXG4uYy1maWxlLXVwbG9hZF9fbWFpbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmMtZmlsZS11cGxvYWRfX2lucHV0IHtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG5cbi5jLWZpbGUtdXBsb2FkX19idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE0Mjg1NzE0Mjk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6ICMxRDFEMUQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM2NTY1NjU7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xuICBwYWRkaW5nOiAxNnB4IDI0cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAxNTBtcztcbn1cbi5jLWZpbGUtdXBsb2FkX19idXR0b246OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWcvYWRkLnN2Zyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIG1hcmdpbi1sZWZ0OiAxNnB4O1xufVxuLmMtZmlsZS11cGxvYWRfX2J1dHRvbjpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNztcbn1cblxuLmMtZmlsZS11cGxvYWRfX2xpc3Qge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5jLWZpbGUtdXBsb2FkX19saXN0ID4gbGkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQzhDOEM4O1xuICBwYWRkaW5nOiA0cHggMDtcbiAgYW5pbWF0aW9uOiBleHBhbmQgMC41cyBlYXNlLWluLW91dDtcbn1cbi5jLWZpbGUtdXBsb2FkX19saXN0ID4gbGk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgYmFja2dyb3VuZDogdXJsKFwiL2ltZy9maWxlLnN2Z1wiKSBuby1yZXBlYXQ7XG59XG4uYy1maWxlLXVwbG9hZF9fbGlzdCA+IGxpID4gYnV0dG9uIHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDE1MG1zIGxpbmVhcjtcbn1cbi5jLWZpbGUtdXBsb2FkX19saXN0ID4gbGkgPiBidXR0b246aG92ZXIge1xuICBjb2xvcjogcmVkO1xufVxuLmMtZmlsZS11cGxvYWRfX2xpc3QgPiBsaSA+IGJ1dHRvbjo6YmVmb3JlIHtcbiAgY29udGVudDogXCLDl1wiO1xufVxuXG4uYy1maWxlLXVwbG9hZF9fbm90ZSB7XG4gIGNvbG9yOiAjOTk5OTk5O1xufVxuXG5Aa2V5ZnJhbWVzIGV4cGFuZCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgYmFja2dyb3VuZDogIzQwNzlCODtcbiAgfVxufVxuLmMtZm9ybS1ncm91cF9fbGFiZWwge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDRweCAwO1xuICBjb2xvcjogIzk5OTk5OTtcbn1cblxuLmMtZm9ybS1ncm91cF9fZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xufVxuLmhhcy1lcnJvciAuYy1mb3JtLWdyb3VwX19lcnJvcjpub3QoOmVtcHR5KSB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE0Mjg1NzE0Mjk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA4cHg7XG4gIGNvbG9yOiAjNDA3OUI4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDY0LCAxMjEsIDE4NCwgMC4xKTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzQwNzlCODtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDRweCA0cHg7XG59XG5cbi5jLWZvcm0tZmVlZGJhY2sge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBtYXJnaW46IDAgMCA4cHg7XG4gIHBhZGRpbmc6IDI0cHggMzJweDtcbiAgY29sb3I6ICMyQzJDMkM7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyMTEsIDU4LCAwLjIpO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZkMzNhO1xufVxuLmMtZm9ybS1mZWVkYmFjazpub3QoOmVtcHR5KSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmMtZm9ybS1mZWVkYmFjazpiZWZvcmUge1xuICBjb250ZW50OiBhdHRyKGRhdGEtZmVlZGJhY2spO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAtMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBmb250LXdlaWdodDogNTAwO1xufVxuLmMtZm9ybS1mZWVkYmFjayBsaTo6Zmlyc3QtbGV0dGVyIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmMtaGFtYnVyZ2VyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogIzY1NjU2NTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uYy1oYW1idXJnZXI6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICBvdXRsaW5lLXdpZHRoOiAycHg7XG59XG4uYy1oYW1idXJnZXIgPiBzcGFuLCAuYy1oYW1idXJnZXI6YWZ0ZXIsIC5jLWhhbWJ1cmdlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjBweDtcbiAgcmlnaHQ6IDIwJTtcbiAgbGVmdDogMjAlO1xuICBoZWlnaHQ6IDNweDtcbiAgbWFyZ2luLXRvcDogLTJweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxNTBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxMDBtcztcbn1cbi5jLWhhbWJ1cmdlcjpiZWZvcmUge1xuICB0b3A6IDEycHg7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDAuOCk7XG59XG4uYy1oYW1idXJnZXI6YWZ0ZXIge1xuICB0b3A6IDI4cHg7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDAuNSk7XG59XG4uYy1oYW1idXJnZXI6aG92ZXIgPiBzcGFuIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMC44KTtcbn1cbi5jLWhhbWJ1cmdlcjpob3ZlcjphZnRlciwgLmMtaGFtYnVyZ2VyOmhvdmVyOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xufVxuLmlzLW92ZXJsYXktbWVudS1hY3RpdmUgLmMtaGFtYnVyZ2VyID4gc3BhbiB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDEpICFpbXBvcnRhbnQ7XG59XG4uaXMtb3ZlcmxheS1tZW51LWFjdGl2ZSAuYy1oYW1idXJnZXI6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDNweCkgc2NhbGVYKDEpICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xufVxuLmlzLW92ZXJsYXktbWVudS1hY3RpdmUgLmMtaGFtYnVyZ2VyOmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zcHgpIHNjYWxlWCgxKSAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbn1cblxuLmMtaGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIG1hcmdpbjogNDBweCAwO1xuICBjb2xvcjogIzJDMkMyQztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5jLWhlYWRpbmctLWluZGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5jLWhlcm8ge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMnZ3KTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLmMtaGVybyB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxMCkgKiA4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmMtaGVybyB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gICAgbWF4LXdpZHRoOiAxMTUycHg7XG4gIH1cbn1cblxuLmMtaGVyb19fbWFpbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cblxuLmMtaGVyb19fc2xpZGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogNTUuNTU2JTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5jLWhlcm9fX3NsaWRlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwJTtcbiAgfVxufVxuXG4uYy1oZXJvX19waWN0dXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIGZpbHRlcjtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIGZpbHRlcjogYmx1cig1cHgpO1xufVxuLmMtaGVyb19fcGljdHVyZS5pcy1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMSk7XG4gIGZpbHRlcjogbm9uZTtcbn1cblxuLmMtaGVyb19faW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmMtaGVyb19fY2FwdGlvbiB7XG4gIGZvbnQtc2l6ZTogY2FsYygxNnB4ICsgMXZ3KTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMjRweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyOSwgMjksIDI5LCAwLjYpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLmMtaGVyb19fY2FwdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICBwYWRkaW5nOiAzMnB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLmMtaGVyb19fY2FwdGlvbjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAtMTAwdnc7XG4gICAgbGVmdDogLTEwMHZ3O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQkUxRTJEO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDEzNDNweCkge1xuICAuYy1oZXJvX19jYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAyLjV2dztcbiAgICBmb250LXNpemU6IDIuNXZ3O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNDRweCkge1xuICAuYy1oZXJvX19jYXB0aW9uIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgcGFkZGluZy1sZWZ0OiA0LjE2NjY2NjY2NjclO1xuICB9XG59XG5cbi5jLWhlcm9fX2NvbnRyb2xzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogOHB4O1xufVxuLmMtaGVyb19fY29udHJvbHM6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDQ4cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCBibGFjaywgdHJhbnNwYXJlbnQpO1xuICBvcGFjaXR5OiAwLjM7XG59XG5cbi5jLWhlcm9fX3Njcm9sbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBwYWRkaW5nOiAxMHB4O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0JFMUUyRDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgNTAlKSByb3RhdGUoMC4yNXR1cm4pO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODM5cHgpIHtcbiAgLmMtaGVyb19fc2Nyb2xsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uYy1oZXJvX19zY3JvbGwgPiBzdmcge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXM7XG59XG4uYy1oZXJvX19zY3JvbGw6aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6ICNhMjFhMjY7XG59XG4uYy1oZXJvX19zY3JvbGw6aG92ZXIgPiBzdmcge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTtcbn1cbi5jLWhlcm9fX3Njcm9sbDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNhYjFiMjk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDNweCAjZjNiNGJhO1xufVxuXG4uYy1pbnB1dCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogN3B4IDE2cHg7XG4gIGNvbG9yOiAjMkMyQzJDO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXI6IDFweCBzb2xpZCAjQzhDOEM4O1xuICBvdXRsaW5lOiBub25lO1xufVxuLmhhcy1lcnJvciAuYy1pbnB1dCB7XG4gIGJveC1zaGFkb3c6IDAgMCA3cHggLTNweCAjZmZkMzNhO1xuICBib3JkZXItY29sb3I6ICNmZmQzM2E7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyMTEsIDU4LCAwLjA1KTtcbn1cbi5jLWlucHV0OmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDdweCAtM3B4ICMxRDFEMUQ7XG4gIGJvcmRlci1jb2xvcjogIzFEMUQxRDtcbn1cbnRleHRhcmVhLmMtaW5wdXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTZweDtcbiAgbWluLWhlaWdodDogMTU4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG4uYy1sYW5ndWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmMtbGFuZ3VhZ2VfX2J1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDhweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiByZ2JhKDEwMSwgMTAxLCAxMDEsIDAuNSk7XG4gIGJvcmRlcjogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cywgYm94LXNoYWRvdyAwLjE1cztcbn1cbi5jLWxhbmd1YWdlX19idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uYy1sYW5ndWFnZV9faWNvbiB7XG4gIGZsZXg6IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uYy1sYW5ndWFnZV9fbGFiZWwge1xuICBtYXJnaW4tbGVmdDogNHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmMtbGFuZ3VhZ2VfX2Ryb3Bkb3duIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAxMDAlO1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgb3BhY2l0eTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2hhZG93OiAwIDAgMTJweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcywgdHJhbnNmb3JtIDAuM3M7XG59XG4uYy1sYW5ndWFnZTpob3ZlciAuYy1sYW5ndWFnZV9fZHJvcGRvd24ge1xuICBvcGFjaXR5OiAxO1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uYy1sYW5ndWFnZV9faXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uYy1sYW5ndWFnZV9faXRlbTpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xufVxuLmMtbGFuZ3VhZ2VfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDAgMDtcbn1cbi5jLWxhbmd1YWdlX19pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbn1cbi5jLWxhbmd1YWdlX19pdGVtOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5jLWxhbmd1YWdlX19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDRweCA4cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICM2NTY1NjU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcztcbn1cbi5jLWxhbmd1YWdlX19saW5rOmhvdmVyIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCRTFFMkQ7XG59XG5cbi8qXG5cdENvbG9ycyBnZXQgZGVmaW5lZCBpbiBfc2V0dGluZ3MuY29uZmlnLnNjc3NcbiovXG4uYy1uYXYge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5jLW5hdl9fbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uYy1uYXZfX2l0ZW0ge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1hcmdpbi1yaWdodDogMiU7XG59XG4uYy1uYXZfX2l0ZW06bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLmMtbmF2X19saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA0cHg7XG4gIGNvbG9yOiAjNjU2NTY1O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDE1MG1zIGxpbmVhcjtcbn1cbi5jLW5hdl9fbGluazpob3ZlciwgLmMtbmF2X19saW5rOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5jLW5hdl9fbGluazo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG4gIGxlZnQ6IDRweDtcbiAgYm90dG9tOiAxcHg7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA4cHgpO1xuICBoZWlnaHQ6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzhDOEM4O1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIHJpZ2h0O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXMgY3ViaWMtYmV6aWVyKDAuODYsIDAsIDAuMDcsIDEpO1xufVxuLmMtbmF2X19saW5rOmhvdmVyIHtcbiAgY29sb3I6ICNCRTFFMkQ7XG59XG4uYy1uYXZfX2xpbms6aG92ZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbn1cbi5jLW5hdl9fbGluay5pcy1hY3RpdmUge1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogIzNFNDg1Mjtcbn1cbi5jLW5hdl9fbGluay5pcy1hY3RpdmU6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVCNjk3ODtcbn1cbi5jLW5hdl9fbGluazpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgb3V0bGluZS1zdHlsZTogc29saWQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAxcHg7XG4gIG91dGxpbmUtd2lkdGg6IDJweDtcbn1cblxuLmMtcGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjQzhDOEM4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmMtcGFnaW5hdGlvbl9faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODM5cHgpIHtcbiAgLmMtcGFnaW5hdGlvbl9faXRlbSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYy1wYWdpbmF0aW9uX19pdGVtOmZpcnN0LWNoaWxkLCAuYy1wYWdpbmF0aW9uX19pdGVtOmxhc3QtY2hpbGQsIC5jLXBhZ2luYXRpb25fX2l0ZW0uaXMtbGFzdC1wYWdlLCAuYy1wYWdpbmF0aW9uX19pdGVtLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAuYy1wYWdpbmF0aW9uX19pdGVtLmlzLWxhc3QtcGFnZSB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cbi5jLXBhZ2luYXRpb25fX2l0ZW0gKyAuYy1wYWdpbmF0aW9uX19pdGVtIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xufVxuXG4uYy1wYWdpbmF0aW9uX190ZXh0LFxuLmMtcGFnaW5hdGlvbl9fbGluayxcbi5jLXBhZ2luYXRpb25fX3ByZXYsXG4uYy1wYWdpbmF0aW9uX19uZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi13aWR0aDogNDhweDtcbiAgbWluLWhlaWdodDogNDhweDtcbiAgcGFkZGluZzogOHB4O1xufVxuXG4uYy1wYWdpbmF0aW9uX190ZXh0IHtcbiAgY29sb3I6ICMyQzJDMkM7XG4gIG9wYWNpdHk6IDAuMzU7XG59XG5cbi5jLXBhZ2luYXRpb25fX2xpbmsge1xuICBjb2xvcjogIzJDMkMyQztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG59XG4uYy1wYWdpbmF0aW9uX19saW5rOmhvdmVyIHtcbiAgY29sb3I6ICMxZjFmMWY7XG4gIGJhY2tncm91bmQ6ICNGOEY4Rjg7XG59XG4uaXMtYWN0aXZlID4gLmMtcGFnaW5hdGlvbl9fbGluayB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxMHB4IC01cHggIzVCNjk3ODtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjNUI2OTc4O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5jLXBhZ2luYXRpb25fX3ByZXYsXG4uYy1wYWdpbmF0aW9uX19uZXh0IHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwLjc1dHVybik7XG59XG4uYy1wYWdpbmF0aW9uX19wcmV2LmlzLWluYWN0aXZlLFxuLmMtcGFnaW5hdGlvbl9fbmV4dC5pcy1pbmFjdGl2ZSB7XG4gIGNvbG9yOiByZ2JhKDQ0LCA0NCwgNDQsIDAuNCk7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4uYy1wYWdpbmF0aW9uX19wcmV2IHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC4yNXR1cm4pO1xufVxuXG4vKlxuICogUGFnZSB0aXRsZVxuICovXG4uYy1wYWdlLXRpdGxlIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEydncpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgLW1zLWh5cGhlbnM6IGF1dG87XG4gIGh5cGhlbnM6IGF1dG87XG4gIHBhZGRpbmctdG9wOiAxNnB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgY29sb3I6ICMyQzJDMkM7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuYy1wYWdlLXRpdGxlIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDEwKSAqIDgpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmMtcGFnZS10aXRsZSB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gICAgbWF4LXdpZHRoOiAxMTUycHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5jLXBhZ2UtdGl0bGUge1xuICAgIHBhZGRpbmctdG9wOiA0OHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0OHB4O1xuICB9XG59XG5cbi5jLXBhZ2UtdGl0bGUtLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5jLXBhZ2UtdGl0bGUtLWNlbnRlciB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5jLXBhZ2UtdGl0bGUtLWNlbnRlciB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5jLXBhZ2UtdGl0bGVfX3ByZWhlYWRpbmcge1xuICAgIG1hcmdpbi10b3A6IC04cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICB9XG59XG5cbi5jLXBhZ2UtdGl0bGVfX2hlYWRpbmcge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG5cbi5jLXBhZ2UtdGl0bGVfX2hlYWRpbmctc21hbGwge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYy1wYWdlLXRpdGxlX19zdWJoZWFkaW5nIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzk5OTk5OTtcbn1cblxuLmMtcHJvamVjdG9yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5jLXByb2plY3Rvcl9fZmlndXJlIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5jLXByb2plY3Rvcl9fY2FwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBncmlkLWNvbHVtbjogMTtcbiAgZ3JpZC1yb3c6IDI7XG4gIHVzZXItc2VsZWN0OiB0ZXh0O1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIGNvbG9yOiAjOTk5OTk5O1xufVxuXG4uYy1wcm9qZWN0b3JfX3BpY3R1cmUge1xuICBncmlkLWNvbHVtbjogMTtcbiAgZ3JpZC1yb3c6IDE7XG4gIGFsaWduLXNlbGY6IGVuZDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAzNjBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjg7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cztcbn1cbi5pZSAuYy1wcm9qZWN0b3ItLXNpbmdsZS1pbWFnZSAuYy1wcm9qZWN0b3JfX3BpY3R1cmUge1xuICBtaW4taGVpZ2h0OiA0MDBweDtcbn1cbi5jLXByb2plY3Rvcl9fcGljdHVyZS5pcy1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uYy1wcm9qZWN0b3JfX2NvbnRyb2wge1xuICBncmlkLWNvbHVtbjogMTtcbiAgZ3JpZC1yb3c6IDE7XG4gIGFsaWduLXNlbGY6IGVuZDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cblxuLmMtcHJvamVjdG9yX19pbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5jLXByb2plY3Rvcl9faW1nIHtcbiAgICBtYXgtaGVpZ2h0OiA3OHZoO1xuICB9XG59XG5cbi5jLXNlcnZpY2Vwb2ludCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uYy1zZXJ2aWNlcG9pbnRfX2ltYWdlIHtcbiAgZmxleDogMDtcbiAgbWluLXdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDE5NHB4O1xuICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG59XG5cbi5jLXNlcnZpY2Vwb2ludF9fY29udGVudCB7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICAtbXMtaHlwaGVuczogYXV0bztcbiAgaHlwaGVuczogYXV0bztcbiAgbWluLXdpZHRoOiA1MCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZmxleC1ncm93OiAxO1xuICBmbGV4LWJhc2lzOiBjYWxjKGNhbGMoNDIwcHggLSAxMDAlKSAqIDk5OSk7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLmMtc2VydmljZXBvaW50X19jb250ZW50IHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG59XG5cbi5jLXNlcnZpY2Vwb2ludF9fYm9keSB7XG4gIG1hcmdpbi10b3A6IDhweDtcbn1cblxuLmMtc2VydmljZXBvaW50X19mb290ZXIge1xuICBtYXJnaW4tdG9wOiA4cHg7XG59XG5cbi5jLXNlcnZpY2Vwb2ludF9faGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICM2NTY1NjU7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG59XG5cbi5jLXNlcnZpY2Vwb2ludF9fc3ViaGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzk5OTk5OTtcbn1cblxuLmMtc2l0ZW1hcF9faXRlbSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMzMzMzMzMzMzO1xuICBjb2xvcjogIzY1NjU2NTtcbn1cblxuLmMtc2l0ZW1hcF9fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA0cHggMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmMtc2l0ZW1hcF9fbGluazpob3ZlciB7XG4gIGNvbG9yOiAjNUI2OTc4O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLypcbiAqIFNraXAgTGlua1xuICovXG4uYy1za2lwLWxpbmsge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IC0xMDB2aDtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIGNvbG9yOiAjNDA3OUI4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYy1za2lwLWxpbms6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICBvdXRsaW5lLXdpZHRoOiAycHg7XG4gIHRvcDogNXB4O1xuICAvKiBOb3cgdGhlIGxpbmsgd2lsbCBhcHBlYXIgKi9cbn1cblxuLmMtc2xpZGUtaW5kaWNhdG9yIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmMtc2xpZGUtaW5kaWNhdG9yX19idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0JFMUUyRDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGhlaWdodDogNDBweDtcbiAgd2lkdGg6IDQwcHg7XG59XG4uYy1zbGlkZS1pbmRpY2F0b3JfX2J1dHRvbiArIC5jLXNsaWRlLWluZGljYXRvcl9fYnV0dG9uIHtcbiAgbWFyZ2luLWxlZnQ6IDhweDtcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fYnV0dG9uW2FyaWEtbGFiZWw9cHJldmlvdXNdID4gc3ZnIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuLmMtc2xpZGUtaW5kaWNhdG9yX19idXR0b25bYXJpYS1sYWJlbD1uZXh0XSA+IHN2ZyB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG59XG4uYy1zbGlkZS1pbmRpY2F0b3JfX2J1dHRvbjpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FiMWIyOTtcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FiMWIyOTtcbn1cblxuLmMtc2xpZGUtaW5kaWNhdG9yX19kb3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLCBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcztcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fZG90OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fZG90OmhvdmVyOm5vdCguaXMtYWN0aXZlKSwgLmMtc2xpZGUtaW5kaWNhdG9yX19kb3Q6Zm9jdXM6bm90KC5pcy1hY3RpdmUpIHtcbiAgb3BhY2l0eTogMC41O1xufVxuLmMtc2xpZGUtaW5kaWNhdG9yX19kb3Q6YmVmb3JlLCAuYy1zbGlkZS1pbmRpY2F0b3JfX2RvdDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1jbGlwOiBjb250ZW50LWJveDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBiYWNrZ3JvdW5kLWNvbG9yLCBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG59XG4uYy1zbGlkZS1pbmRpY2F0b3JfX2RvdDpiZWZvcmUge1xuICB0b3A6IGNhbGMoKDMwcHggLSA4cHgpIC8gMik7XG4gIHJpZ2h0OiBjYWxjKCgzMHB4IC0gOHB4KSAvIDIpO1xuICBib3R0b206IGNhbGMoKDMwcHggLSA4cHgpIC8gMik7XG4gIGxlZnQ6IGNhbGMoKDMwcHggLSA4cHgpIC8gMik7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG59XG4uYy1zbGlkZS1pbmRpY2F0b3JfX2RvdDphZnRlciB7XG4gIHRvcDogY2FsYygoMzBweCAtIDEycHgpIC8gMik7XG4gIHJpZ2h0OiBjYWxjKCgzMHB4IC0gMTJweCkgLyAyKTtcbiAgYm90dG9tOiBjYWxjKCgzMHB4IC0gMTJweCkgLyAyKTtcbiAgbGVmdDogY2FsYygoMzBweCAtIDEycHgpIC8gMik7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGRkZGRkY7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS40KTtcbiAgb3BhY2l0eTogMDtcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fZG90LmlzLWFjdGl2ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTtcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fZG90LmlzLWFjdGl2ZTphZnRlciB7XG4gIG9wYWNpdHk6IDAuOTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cbi5jLXNsaWRlLWluZGljYXRvcl9fZG90OmZvY3VzIHtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xufVxuLmMtc2xpZGUtaW5kaWNhdG9yX19kb3Q6Zm9jdXM6YmVmb3JlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4IGJsYWNrLCAwIDAgMTBweCAxcHggd2hpdGU7XG59XG4uYy1zbGlkZS1pbmRpY2F0b3JfX2RvdDpmb2N1czphZnRlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCBibGFjaywgMCAwIDEwcHggMXB4IHdoaXRlO1xufVxuXG4uYy1zdWJuYXYge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5jLXN1Ym5hdi0tYm94ZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4O1xuICBwYWRkaW5nOiA4MHB4IDZ2dztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5jLXN1Ym5hdi0tYm94ZWQge1xuICAgIHBhZGRpbmctbGVmdDogMjUlO1xuICB9XG59XG5cbi5jLXN1Ym5hdl9faGVhZGVyIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uYy1zdWJuYXZfX2xpc3Qge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uYy1zdWJuYXZfX2l0ZW0tLWJhY2sge1xuICBtYXJnaW4tdG9wOiAyNHB4O1xufVxuXG4uYy1zdWJuYXZfX2xpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDhweCAwO1xuICBjb2xvcjogIzY1NjU2NTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGNvbG9yIDI1MG1zO1xufVxuLmMtc3VibmF2X19saW5rOmhvdmVyLCAuYy1zdWJuYXZfX2xpbms6YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuLmMtc3VibmF2X19saW5rOmhvdmVyIHtcbiAgY29sb3I6ICNCRTFFMkQ7XG59XG4uYy1zdWJuYXZfX2xpbms6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICBvdXRsaW5lLXdpZHRoOiAycHg7XG59XG4uYy1zdWJuYXZfX2xpbms6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNDOEM4Qzg7XG59XG4uYy1zdWJuYXZfX2l0ZW0uaXMtYWN0aXZlIC5jLXN1Ym5hdl9fbGluazo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjM0U0ODUyO1xuICBib3JkZXItd2lkdGg6IDJweDtcbn1cblxuLmMtc3VibmF2X19pY29uIHtcbiAgb3BhY2l0eTogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IDE2cHg7XG4gIGNvbG9yOiAjQzhDOEM4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE2cHgpO1xuICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1vdXQ7XG59XG4uYy1zdWJuYXZfX2xpbms6aG92ZXIgLmMtc3VibmF2X19pY29uIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiBub25lO1xuICBjb2xvcjogI0JFMUUyRDtcbn1cblxuLmMtc3VibmF2X19pdGVtLmlzLWFjdGl2ZSAuYy1zdWJuYXZfX2xpbmsge1xuICBjb2xvcjogIzNFNDg1MjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4uYy1zdWJuYXZfX2l0ZW0uaXMtYWN0aXZlIC5jLXN1Ym5hdl9fbGluazo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjM0U0ODUyO1xuICBib3JkZXItd2lkdGg6IDJweDtcbn1cbi5jLXN1Ym5hdl9faXRlbS5pcy1hY3RpdmUgLmMtc3VibmF2X19pY29uIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLyoqXG4gKiAxLiBDb2xvciBnZXRzIGluaGVyaXRlZCBhbmQgdXNlZCBmb3IgbmVzdGVkIGVsZW1lbnRzIHdpdGggJ2N1cnJlbnRDb2xvcicgcHJvcGVydHlcbiAqIDIuIFJlc2V0IGRlZmF1bHQgYnV0dG9uIHN0eWxpbmdcbiAqL1xuLmMtdGV4dGJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICM0MDc5Qjg7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogMiAqL1xuICBib3JkZXI6IG5vbmU7XG4gIC8qIDIgKi9cbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3M7XG59XG4uYy10ZXh0YnV0dG9uOmhvdmVyLCAuYy10ZXh0YnV0dG9uOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5jLXRleHRidXR0b246aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICBjb2xvcjogIzI2NDk2ZTtcbn1cbi5jLXRleHRidXR0b246ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4uYy10ZXh0YnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuICBvdXRsaW5lLXN0eWxlOiBzb2xpZDtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgb3V0bGluZS13aWR0aDogMnB4O1xufVxuXG4uYy10ZXh0YnV0dG9uX190ZXh0IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4uYy10ZXh0YnV0dG9uX19pY29uIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogOHB4O1xuICBjb2xvcjogI0JFMUUyRDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XG59XG4uYy10ZXh0YnV0dG9uOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIC5jLXRleHRidXR0b25fX2ljb24ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTtcbn1cbi5jLXRleHRidXR0b24tLWljb24gLmMtdGV4dGJ1dHRvbl9faWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYy10ZXh0YnV0dG9uLS1pcy1yZXZlcnNlZCAuYy10ZXh0YnV0dG9uX190ZXh0IHtcbiAgb3JkZXI6IDI7XG59XG4uYy10ZXh0YnV0dG9uLS1pcy1yZXZlcnNlZCAuYy10ZXh0YnV0dG9uX19pY29uIHtcbiAgb3JkZXI6IDE7XG4gIHRvcDogMXB4O1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNXR1cm4pO1xufVxuLmMtdGV4dGJ1dHRvbi0taXMtcmV2ZXJzZWQ6aG92ZXI6bm90KDpkaXNhYmxlZCkgLmMtdGV4dGJ1dHRvbl9faWNvbiB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNXR1cm4pIHRyYW5zbGF0ZVgoM3B4KTtcbn1cblxuLmMtdG9nZ2xlIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5jLXRvZ2dsZV9faXRlbSB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0M4QzhDODtcbn1cbi5jLXRvZ2dsZV9faXRlbSArIC5jLXRvZ2dsZV9faXRlbSB7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG59XG5cbi5jLXRvZ2dsZV9fdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogOTZweDtcbn1cbi5jLXRvZ2dsZV9fdGl0bGVbZGF0YS10b2dnbGUtaWRdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uYy10b2dnbGVfX2ljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMThweDtcbiAgbGVmdDogY2FsYyg0OHB4KTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29sb3I6ICMzRTQ4NTI7XG4gIGJvcmRlcjogMnB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMgbGluZWFyO1xufVxuLmMtdG9nZ2xlX19pY29uID4gc3ZnIHtcbiAgd2lkdGg6IDEwcHg7XG59XG4uYy10b2dnbGVfX2ljb24ucGx1cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uYy10b2dnbGVfX3RpdGxlLmlzLWFjdGl2ZSAuYy10b2dnbGVfX2ljb24ucGx1cyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYy10b2dnbGVfX3RpdGxlLmlzLWFjdGl2ZSAuYy10b2dnbGVfX2ljb24ubWludXMge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmMtdG9nZ2xlX19pY29uLmNoZWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYm9yZGVyOiBub25lO1xufVxuLmMtdG9nZ2xlX19pY29uLmNoZWNrID4gc3ZnIHtcbiAgd2lkdGg6IDI0cHg7XG59XG4uYy10b2dnbGVfX3RpdGxlW2RhdGEtdG9nZ2xlLWlkXTpub3QoLmlzLWFjdGl2ZSk6aG92ZXIgLmMtdG9nZ2xlX19pY29uIHtcbiAgY29sb3I6ICMxRDFEMUQ7XG59XG5cbi5jLXRvZ2dsZV9fbGFiZWwge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDE2cHggMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjM0U0ODUyO1xuICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMgbGluZWFyO1xufVxuLmMtdG9nZ2xlX190aXRsZVtkYXRhLXRvZ2dsZS1pZF06bm90KC5pcy1hY3RpdmUpOmhvdmVyIC5jLXRvZ2dsZV9fbGFiZWwge1xuICBjb2xvcjogIzFEMUQxRDtcbn1cblxuLmMtdG9nZ2xlX19jb250ZW50IHtcbiAgbWF4LWhlaWdodDogMDtcbiAgb3BhY2l0eTogMDtcbiAgcGFkZGluZy1sZWZ0OiA5NnB4O1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2UtaW4tb3V0O1xufVxuLmlzLWFjdGl2ZSB+IC5jLXRvZ2dsZV9fY29udGVudCB7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICBtYXgtaGVpZ2h0OiAxMDAwcHg7XG4gIG9wYWNpdHk6IDE7XG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7XG59XG5cbi5jLXRyYWRlbWFyayB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAyMDBtcztcbn1cbi5jLXRyYWRlbWFyazpob3ZlciwgLmMtdHJhZGVtYXJrOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5jLXRyYWRlbWFyazpob3ZlciB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmMtdHJhZGVtYXJrOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuICBvdXRsaW5lLXN0eWxlOiBzb2xpZDtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgb3V0bGluZS13aWR0aDogMnB4O1xufVxuXG4uYy10cmFkZW1hcmtfX3RleHQge1xuICBtYXJnaW4tcmlnaHQ6IDdweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmMtdHJhZGVtYXJrX19pY29uIHtcbiAgd2lkdGg6IDEwMHB4O1xuICBtYXgtaGVpZ2h0OiAzMnB4O1xuICBvcGFjaXR5OiAwLjU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbn1cbi5jLXRyYWRlbWFyazpob3ZlciAuYy10cmFkZW1hcmtfX2ljb24ge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uYy12YWNhbmN5LXByb3BlcnRpZXMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uYy12YWNhbmN5LXByb3BlcnRpZXNfX2l0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogIzQwNzlCODtcbiAgbWFyZ2luLXRvcDogNHB4O1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG59XG4uYy12YWNhbmN5LXByb3BlcnRpZXNfX2l0ZW06bnRoLWxhc3QtY2hpbGQobisyKSB7XG4gIG1hcmdpbi1yaWdodDogMzJweDtcbn1cblxuLmMtdmFjYW5jeS1wcm9wZXJ0aWVzX19pY29uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG59XG5cbi5jLXZpZGVvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGNUY1O1xufVxuXG4uYy12aWRlb19faWZyYW1lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8qICA2IC0gT1JHQU5JU01TXG4gKiAgTGFyZ2UgYmxvY2tzIGNvbXBvc2VkIG9mIG11bHRpcGxlIGNvbXBvbmVudHMuXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogT3JnYW5pc21zXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5vLWFjY29yZGlvbiB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMnZ3KTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWFjY29yZGlvbiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxMCkgKiA4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLWFjY29yZGlvbiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gICAgbWF4LXdpZHRoOiAxMTUycHg7XG4gIH1cbn1cblxuLm8tYWNjb3JkaW9uX19pdGVtIHtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICBib3JkZXItY29sb3I6ICNDOEM4Qzg7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGJvcmRlcjtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG59XG4uby1hY2NvcmRpb25fX2l0ZW0gKyAuby1hY2NvcmRpb25fX2l0ZW0ge1xuICBtYXJnaW4tdG9wOiAxNnB4O1xufVxuLm8tYWNjb3JkaW9uX19pdGVtOm5vdCguaXMtYWN0aXZlKTpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogIzVCNjk3ODtcbn1cblxuLm8tYWNjb3JkaW9uX190aXRsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDE2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDI0cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICBwYWRkaW5nLWxlZnQ6IDQ4cHg7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1hY2NvcmRpb25fX3RpdGxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEyLjUlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tYWNjb3JkaW9uX190aXRsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG59XG4uby1hY2NvcmRpb25fX2l0ZW06bm90KC5pcy1hY3RpdmUpIC5vLWFjY29yZGlvbl9fdGl0bGU6aG92ZXIge1xuICBjb2xvcjogIzVCNjk3ODtcbn1cblxuLm8tYWNjb3JkaW9uX19pY29uIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiAxNHB4O1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci13aWR0aDogMnB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tYWNjb3JkaW9uX19pY29uIHtcbiAgICBsZWZ0OiBjYWxjKDYuMjUlIC0gMTBweCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1hY2NvcmRpb25fX2ljb24ge1xuICAgIGxlZnQ6IGNhbGMoNC4xNjY2NjY2NjY3JSAtIDEwcHgpO1xuICB9XG59XG4uby1hY2NvcmRpb25fX2ljb246OmJlZm9yZSwgLm8tYWNjb3JkaW9uX19pY29uOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMnB4O1xuICB3aWR0aDogMTBweDtcbiAgbGVmdDogM3B4O1xuICB0b3A6IGNhbGMoNTAlIC0gMXB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLCB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zLCA0MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UsIGN1YmljLWJlemllcigwLjg2LCAwLCAwLjA3LCAxKTtcbn1cbi5vLWFjY29yZGlvbl9faXRlbS5pcy1hY3RpdmUgLm8tYWNjb3JkaW9uX19pY29uOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwKSByb3RhdGUoMC4yNXR1cm4pO1xufVxuLm8tYWNjb3JkaW9uX19pY29uOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuMjV0dXJuKTtcbn1cbi5vLWFjY29yZGlvbl9faXRlbS5pcy1hY3RpdmUgLm8tYWNjb3JkaW9uX19pY29uOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNXR1cm4pO1xufVxuXG4uby1hY2NvcmRpb25fX2hlYWRlciB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWFjY29yZGlvbl9faGVhZGVyIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4zMzMzMzMzMzMzO1xuICB9XG59XG5cbi8qIEhpZGRlbiBieSBkZWZhdWx0Ki9cbi5vLWFjY29yZGlvbl9fY29udGVudCB7XG4gIG9wYWNpdHk6IDA7XG4gIG1heC1oZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctbGVmdDogNDhweDtcbiAgcGFkZGluZy1yaWdodDogMjRweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuLm8tYWNjb3JkaW9uX19jb250ZW50ID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1hY2NvcmRpb25fX2NvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogMTIuNSU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1hY2NvcmRpb25fX2NvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxufVxuLm8tYWNjb3JkaW9uX19pdGVtLmlzLWFjdGl2ZSAuby1hY2NvcmRpb25fX2NvbnRlbnQge1xuICBvcGFjaXR5OiAxO1xuICBtYXgtaGVpZ2h0OiA0MDBweDtcbiAgcGFkZGluZy1ib3R0b206IDMycHg7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYWxsO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA0MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAuby1hcHBseSB7XG4gICAgcGFkZGluZy10b3A6IDZ2dztcbiAgICBwYWRkaW5nLWJvdHRvbTogMTJ2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLm8tYXBwbHkge1xuICAgIHBhZGRpbmctdG9wOiA1dnc7XG4gICAgcGFkZGluZy1ib3R0b206IDEwdnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkgYW5kIChtYXgtd2lkdGg6IDEzNDNweCkge1xuICAuby1hcHBseSB7XG4gICAgcGFkZGluZy10b3A6IDMuNTcxNDI4NTcxNHZ3O1xuICAgIHBhZGRpbmctYm90dG9tOiA3LjE0Mjg1NzE0Mjl2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM0NHB4KSB7XG4gIC5vLWFwcGx5IHtcbiAgICBwYWRkaW5nLXRvcDogNDhweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogOTZweDtcbiAgfVxufVxuXG4uby1hcHBseV9faGVhZGluZyB7XG4gIHBhZGRpbmctYm90dG9tOiA0OHB4O1xuICBjb2xvcjogIzFEMUQxRDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzAwcHgpIHtcbiAgLm8tYXBwbHlfX2JvZHkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzAwcHgpIHtcbiAgLm8tYXBwbHlfX2xlZnQge1xuICAgIHdpZHRoOiBjYWxjKDUwJSArIDQ4cHgpO1xuICAgIHBhZGRpbmctcmlnaHQ6IDQ4cHg7XG4gIH1cbn1cblxuLm8tYXBwbHlfX3JpZ2h0IHtcbiAgbWFyZ2luLXRvcDogMTZweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcwMHB4KSB7XG4gIC5vLWFwcGx5X19yaWdodCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5vLWFwcGx5X19yb3cgKyAuby1hcHBseV9fcm93IHtcbiAgbWFyZ2luLXRvcDogMTZweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzAwcHgpIHtcbiAgLm8tYXBwbHlfX2ZpbGV1cGxvYWQge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gIH1cbn1cblxuLm8tYXBwbHlfX2Zvb3RlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQzhDOEM4O1xuICBtYXJnaW4tdG9wOiA0OHB4O1xuICBwYWRkaW5nLXRvcDogNDhweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uby1hcHBseV9fZmVlZGJhY2sge1xuICBtYXJnaW4tdG9wOiAzMnB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAuby1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJ2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLm8tYmxvY2sge1xuICAgIG1hcmdpbi1ib3R0b206IDEwdnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkgYW5kIChtYXgtd2lkdGg6IDEzNDNweCkge1xuICAuby1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogNy4xNDI4NTcxNDI5dnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNDRweCkge1xuICAuby1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogOTZweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODM5cHgpIHtcbiAgLm8tYmxvY2sgKyAuby1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogMTJ2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLm8tYmxvY2sgKyAuby1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogMTB2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSBhbmQgKG1heC13aWR0aDogMTM0M3B4KSB7XG4gIC5vLWJsb2NrICsgLm8tYmxvY2sge1xuICAgIG1hcmdpbi10b3A6IDcuMTQyODU3MTQyOXZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzQ0cHgpIHtcbiAgLm8tYmxvY2sgKyAuby1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogOTZweDtcbiAgfVxufVxuXG4vKlxuKiBXcmFwcGVyIG9mIHRoZSBtYWluIGJvZHlcbiogKGJldHdlZW4gdGhlIGhlYWRlciBhbmQgdGhlIGZvb3RlcilcbiovXG4uby1ib2R5IHtcbiAgei1pbmRleDogNDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMCAwIGF1dG87XG59XG5cbi5vLWNhbGxvdXQtYmFyIHtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LWh5cGhlbnM6IGF1dG87XG4gIC1tcy1oeXBoZW5zOiBhdXRvO1xuICBoeXBoZW5zOiBhdXRvO1xuICBjb2xvcjogIzJDMkMyQztcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y4RjhGODtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uby1jYWxsb3V0LWJhcl9fbWFpbiB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMnZ3KTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWNhbGxvdXQtYmFyX19tYWluIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDEwKSAqIDgpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tY2FsbG91dC1iYXJfX21haW4ge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICAgIG1heC13aWR0aDogMTE1MnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAuby1jYWxsb3V0LWJhcl9fbWFpbiB7XG4gICAgcGFkZGluZy10b3A6IDEydnc7XG4gICAgcGFkZGluZy1ib3R0b206IDEydnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5vLWNhbGxvdXQtYmFyX19tYWluIHtcbiAgICBwYWRkaW5nLXRvcDogMTB2dztcbiAgICBwYWRkaW5nLWJvdHRvbTogMTB2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSBhbmQgKG1heC13aWR0aDogMTM0M3B4KSB7XG4gIC5vLWNhbGxvdXQtYmFyX19tYWluIHtcbiAgICBwYWRkaW5nLXRvcDogNy4xNDI4NTcxNDI5dnc7XG4gICAgcGFkZGluZy1ib3R0b206IDcuMTQyODU3MTQyOXZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzQ0cHgpIHtcbiAgLm8tY2FsbG91dC1iYXJfX21haW4ge1xuICAgIHBhZGRpbmctdG9wOiA5NnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA5NnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAuby1jYWxsb3V0LWJhcl9fbWFpbiA+ICogKyAqIHtcbiAgICBtYXJnaW4tdG9wOiA2dnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5vLWNhbGxvdXQtYmFyX19tYWluID4gKiArICoge1xuICAgIG1hcmdpbi10b3A6IDV2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSBhbmQgKG1heC13aWR0aDogMTM0M3B4KSB7XG4gIC5vLWNhbGxvdXQtYmFyX19tYWluID4gKiArICoge1xuICAgIG1hcmdpbi10b3A6IDMuNTcxNDI4NTcxNHZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzQ0cHgpIHtcbiAgLm8tY2FsbG91dC1iYXJfX21haW4gPiAqICsgKiB7XG4gICAgbWFyZ2luLXRvcDogNDhweDtcbiAgfVxufVxuXG4uby1jYWxsb3V0LWJhcl9fYm9keSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm8tY2FsbG91dC1iYXJfX2hlYWRpbmcge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuXG4vKlxuICogQ2FyZCBncmlkXG4gKlxuICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkge1xuICAuby1jYXJkLWdyaWRfX21haW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gIC5vLWNhcmQtZ3JpZF9faXRlbSArIC5vLWNhcmQtZ3JpZF9faXRlbSB7XG4gICAgbWFyZ2luLXRvcDogMzJweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgLm8tY2FyZC1ncmlkX19pdGVtIHtcbiAgICBtYXgtd2lkdGg6IDM0NHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuby1jYXJkLWdyaWRfX2l0ZW0ge1xuICAgIGZsZXg6IDA7XG4gICAgZmxleC1iYXNpczogY2FsYyg1MCUgLSAoKDIgLSAxKSAvIDIgKiAzMnB4KSk7XG4gICAgbWFyZ2luLWxlZnQ6IDMycHg7XG4gIH1cbiAgLm8tY2FyZC1ncmlkX19pdGVtOm50aC1jaGlsZCgybisxKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLm8tY2FyZC1ncmlkX19pdGVtOm50aC1jaGlsZChuKzMpIHtcbiAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tY2FyZC1ncmlkX19pdGVtIHtcbiAgICBmbGV4OiAwO1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAoKDMgLSAxKSAvIDMgKiAzMnB4KSk7XG4gICAgbWFyZ2luLWxlZnQ6IDMycHg7XG4gIH1cbiAgLm8tY2FyZC1ncmlkX19pdGVtOm50aC1jaGlsZCgzbisxKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLm8tY2FyZC1ncmlkX19pdGVtOm50aC1jaGlsZChuKzQpIHtcbiAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICB9XG59XG5cbi5vLWNvbnRhY3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDQwcHgpIHtcbiAgLm8tY29udGFjdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDE0KSAqIDEyKTtcbiAgICBtYXgtd2lkdGg6IDExNTJweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLm8tY29udGFjdF9faW5mbyB7XG4gIHBhZGRpbmctdG9wOiAzMnB4O1xuICBwYWRkaW5nLWxlZnQ6IDZ2dztcbiAgcGFkZGluZy1yaWdodDogNnZ3O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tY29udGFjdF9faW5mbyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMCU7XG4gICAgcGFkZGluZy1yaWdodDogMTAlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tY29udGFjdF9faW5mbyB7XG4gICAgcGFkZGluZy1sZWZ0OiA3LjE0Mjg1NzE0MjklO1xuICAgIHBhZGRpbmctcmlnaHQ6IDcuMTQyODU3MTQyOSU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNDBweCkge1xuICAuby1jb250YWN0X19pbmZvIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIHBhZGRpbmctdG9wOiA0OHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0OHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgfVxufVxuXG4uby1jb250YWN0X19mb3JtIHtcbiAgbWFyZ2luLXRvcDogMzJweDtcbiAgcGFkZGluZzogMzJweCA2dnc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1jb250YWN0X19mb3JtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMCU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1jb250YWN0X19mb3JtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDcuMTQyODU3MTQyOSU7XG4gICAgcGFkZGluZy1yaWdodDogNy4xNDI4NTcxNDI5JTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA0MHB4KSB7XG4gIC5vLWNvbnRhY3RfX2Zvcm0ge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLXRvcDogNDhweDtcbiAgfVxufVxuXG4uby1jb250YWN0X19oZWFkZXIge1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgLW1zLWh5cGhlbnM6IGF1dG87XG4gIGh5cGhlbnM6IGF1dG87XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7XG4gIGNvbG9yOiAjMkMyQzJDO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OTVweCkge1xuICAuby1jb250YWN0X19jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICB9XG59XG5cbi5vLWNvbnRhY3RfX2FkZHJlc3Mge1xuICBtYXJnaW4tdG9wOiAyNHB4O1xufVxuXG4uby1jb250YWN0X19udW1iZXJzIHtcbiAgbWFyZ2luLXRvcDogMTZweDtcbn1cblxuLm8tY29udGFjdF9fdGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbn1cbi5vLWNvbnRhY3RfX3RhYmxlIHRkOmZpcnN0LWNoaWxkIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMyQzJDMkM7XG59XG5cbi5vLWNvb2tpZS1iYXIge1xuICB6LWluZGV4OiAtMTtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogNjRweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxRDFEMUQ7XG4gIG9wYWNpdHk6IDE7XG4gIGJveC1zaGFkb3c6IDAgLTRweCA2cHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cywgdHJhbnNmb3JtIDAuNnM7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cbi5vLWNvb2tpZS1iYXI6bm90KC5pcy1hY2NlcHRlZCkge1xuICB6LWluZGV4OiA5OTk5O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uby1jb29raWUtYmFyLmlzLXRyYW5zaXRpb25pbmctb3V0IHtcbiAgei1pbmRleDogLTE7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xufVxuXG4uby1jb29raWUtYmFyX19tYWluIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzNweCkge1xuICAuby1jb29raWUtYmFyX19tYWluIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gIH1cbn1cblxuLm8tY29va2llLWJhcl9fdGV4dCB7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzRweCkge1xuICAuby1jb29raWUtYmFyX190ZXh0IHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE0Mjg1NzE0Mjk7XG4gIH1cbn1cblxuLm8tY29va2llLWJhcl9fbGluayB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzO1xufVxuLm8tY29va2llLWJhcl9fbGluazpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xufVxuXG4uby1jb29raWUtYmFyX19idXR0b24ge1xuICBmbGV4OiBub25lO1xuICBtYXJnaW4tbGVmdDogNDBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLWNvb2tpZS1iYXJfX2J1dHRvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2cHg7XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBEb3VibGUgaW1hZ2UgaW4gMiBlcXVhbCBjb2x1bW5zXG4gKlxuICogVW50aWwgdmlld3BvcnQgaXMgd2lkZSBlbm91Z2ggdGhlIHBpY3R1cmVzIGFyZSBzdGFja2VkIHZlcnRpY2FsbHlcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLm8tZG91YmxlLWltYWdlIHtcbiAgbWFyZ2luOiAtMXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgLm8tZG91YmxlLWltYWdlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbi5vLWRvdWJsZS1pbWFnZV9fcGljdHVyZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDFweDtcbiAgb3JkZXI6IDE7XG4gIG1pbi1oZWlnaHQ6IDM2MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gIC5vLWRvdWJsZS1pbWFnZV9fcGljdHVyZSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbiAgLm8tZG91YmxlLWltYWdlX19waWN0dXJlOmxhc3QtY2hpbGQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxufVxuXG4uby1kb3VibGUtaW1hZ2VfX2ltZyB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBtYXgtaGVpZ2h0OiA4NXZoO1xufVxuXG4uby1kb3VibGUtaW1hZ2UtLWlzLXJldmVyc2VkIC5vLWRvdWJsZS1pbWFnZV9fcGljdHVyZSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5vLWRvdWJsZS1pbWFnZS0taXMtcmV2ZXJzZWQgLm8tZG91YmxlLWltYWdlX19waWN0dXJlOmxhc3QtY2hpbGQge1xuICBvcmRlcjogMDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBEb3VibGUgbGF5b3V0IGluIDIgZXF1YWwgY29sdW1uc1xuICpcbiAqIFVudGlsIHZpZXdwb3J0IGlzIHdpZGUgZW5vdWdoIHRoZSBjb2x1bW5zIGFyZSBzdGFja2VkIHZlcnRpY2FsbHlcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLm8tZG91YmxlLXRleHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWRvdWJsZS10ZXh0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1kb3VibGUtdGV4dF9fY29sdW1uIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuby1kb3VibGUtdGV4dF9fY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgICB3aWR0aDogNjIuNSU7XG4gICAgcGFkZGluZy1yaWdodDogMTIuNSU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1kb3VibGUtdGV4dF9fY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLWRvdWJsZS10ZXh0X19jb2x1bW46bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogNnZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuby1kb3VibGUtdGV4dF9fY29sdW1uOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAzNy41JTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLWRvdWJsZS10ZXh0X19jb2x1bW46bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5vLWRvdWJsZS11c3Age1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1QjY5Nzg7XG4gIH1cbn1cblxuLm8tZG91YmxlLXVzcF9fbWFpbiB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMnZ3KTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcGFkZGluZy10b3A6IDQ4cHg7XG4gIHBhZGRpbmctYm90dG9tOiA0OHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tZG91YmxlLXVzcF9fbWFpbiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxMCkgKiA4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLWRvdWJsZS11c3BfX21haW4ge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICAgIG1heC13aWR0aDogMTE1MnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1kb3VibGUtdXNwX19tYWluIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLWRvdWJsZS11c3BfX2xlZnQge1xuICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWRvdWJsZS11c3BfX2xlZnQge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWRvdWJsZS11c3BfX3JpZ2h0IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5cbi5vLWRvdWJsZS11c3BfX2hlYWRpbmcge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLm8tZG91YmxlLXVzcF9fbGlzdCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDE2cHg7XG59XG5cbi5vLWRvdWJsZS11c3BfX2l0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uby1kb3VibGUtdXNwX19pdGVtICsgLm8tZG91YmxlLXVzcF9faXRlbSB7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG59XG4uby1kb3VibGUtdXNwX19pdGVtOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNXB4O1xuICBsZWZ0OiAtMTZweDtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTJweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWcvY2hlY2svY2hlY2tlZC5zdmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTJweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tZG93bmxvYWRzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1kb3dubG9hZHMtLWlzLXJldmVyc2VkIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbn1cblxuLm8tZG93bmxvYWRzX19tYWluIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA3MnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tZG93bmxvYWRzX19tYWluIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLm8tZG93bmxvYWRzX19tYWluIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYuMjUlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDYuMjUlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tZG93bmxvYWRzX19tYWluIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gICAgcGFkZGluZy1yaWdodDogOC4zMzMzMzMzMzMzJTtcbiAgfVxufVxuLm8tZG93bmxvYWRzX19tYWluIC5jLWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAuby1kb3dubG9hZHNfX3NlcnZpY2UtcG9pbnQge1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWRvd25sb2Fkc19fc2VydmljZS1wb2ludCB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLm8tZG93bmxvYWRzX19zZXJ2aWNlLXBvaW50IHtcbiAgICB3aWR0aDogMzcuNSU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1kb3dubG9hZHNfX3NlcnZpY2UtcG9pbnQge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxufVxuXG4uby1ldmVudCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtcm93LWdhcDogNjRweDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDIsIGF1dG8pO1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImRhdGFcIiBcImZvcm1cIjtcbn1cbi5vLWV2ZW50X19kYXRhIHtcbiAgZ3JpZC1hcmVhOiBkYXRhO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5vLWV2ZW50X19mb3JtIHtcbiAgZ3JpZC1hcmVhOiBmb3JtO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAuby1ldmVudCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA2ZnIgNWZyO1xuICAgIGdyaWQtY29sdW1uLWdhcDogOC4zMzMzMzMzMzMzJTtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImZvcm0gZGF0YVwiO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDBweCkge1xuICAuby1ldmVudF9fZGF0YSB7XG4gICAgcGFkZGluZy10b3A6IDMycHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1ldmVudF9fZGF0YSB7XG4gICAgcGFkZGluZy10b3A6IDQ4cHg7XG4gIH1cbn1cblxuLm8tZXZlbnRfX2Zvcm0ge1xuICBwYWRkaW5nLXRvcDogMzJweDtcbiAgcGFkZGluZy1ib3R0b206IDMycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAuby1ldmVudF9fZm9ybSB7XG4gICAgbWFyZ2luLWxlZnQ6IC04LjMzMzMzMzMzMzMlO1xuICAgIG1hcmdpbi1yaWdodDogLTguMzMzMzMzMzMzMyU7XG4gICAgcGFkZGluZy1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWV2ZW50X19mb3JtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDQ4cHg7XG4gICAgcGFkZGluZy1yaWdodDogNDhweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLWV2ZW50X19mb3JtIHtcbiAgICBwYWRkaW5nLXRvcDogNDhweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDk2cHg7XG4gICAgcGFkZGluZy1yaWdodDogOTZweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgfVxufVxuXG4uby1ldmVudF9faW5mby1saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IDAgMCA2NHB4O1xufVxuLm8tZXZlbnRfX2luZm8tbGlzdCBkdCB7XG4gIHdpZHRoOiAxMTBweDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLm8tZXZlbnRfX2luZm8tbGlzdCBkZCB7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICAtbXMtaHlwaGVuczogYXV0bztcbiAgaHlwaGVuczogYXV0bztcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDExMHB4KTtcbn1cblxuLm8tZXZlbnRfX2hlYWRpbmcge1xuICBjb2xvcjogIzFEMUQxRDtcbiAgbWFyZ2luLWJvdHRvbTogMzJweDtcbn1cblxuLm8tZXZlbnRfX3NlcnZpY2Vwb2ludC1oZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogNjRweDtcbn1cblxuLypcbiAqIEV2ZW50c1xuICpcbiAqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgLm8tZXZlbnRzX19tYWluIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1OTlweCkge1xuICAuby1ldmVudHNfX2l0ZW0gKyAuby1ldmVudHNfX2l0ZW0ge1xuICAgIG1hcmdpbi10b3A6IDMycHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gIC5vLWV2ZW50c19faXRlbSB7XG4gICAgbWF4LXdpZHRoOiAzNDRweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIGFuZCAobWF4LXdpZHRoOiA4OTlweCkge1xuICAuby1ldmVudHNfX2l0ZW0ge1xuICAgIGZsZXg6IDA7XG4gICAgZmxleC1iYXNpczogY2FsYyg1MCUgLSAoKDIgLSAxKSAvIDIgKiAzMnB4KSk7XG4gICAgbWFyZ2luLWxlZnQ6IDMycHg7XG4gIH1cbiAgLm8tZXZlbnRzX19pdGVtOm50aC1jaGlsZCgybisxKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLm8tZXZlbnRzX19pdGVtOm50aC1jaGlsZChuKzMpIHtcbiAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MDBweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAuby1ldmVudHNfX2l0ZW0ge1xuICAgIGZsZXg6IDA7XG4gICAgZmxleC1iYXNpczogY2FsYygzMy4zMzMzMzMzMzMzJSAtICgoMyAtIDEpIC8gMyAqIDMycHgpKTtcbiAgICBtYXJnaW4tbGVmdDogMzJweDtcbiAgfVxuICAuby1ldmVudHNfX2l0ZW06bnRoLWNoaWxkKDNuKzEpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAuby1ldmVudHNfX2l0ZW06bnRoLWNoaWxkKG4rNCkge1xuICAgIG1hcmdpbi10b3A6IDMycHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuby1ldmVudHNfX2l0ZW0ge1xuICAgIGZsZXg6IDA7XG4gICAgZmxleC1iYXNpczogY2FsYygyNSUgLSAoKDQgLSAxKSAvIDQgKiAzMnB4KSk7XG4gICAgbWFyZ2luLWxlZnQ6IDMycHg7XG4gIH1cbiAgLm8tZXZlbnRzX19pdGVtOm50aC1jaGlsZCg0bisxKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLm8tZXZlbnRzX19pdGVtOm50aC1jaGlsZChuKzUpIHtcbiAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICB9XG59XG5cbi5vLWZvb3RlciB7XG4gIHotaW5kZXg6IDIwO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNFNDg1MjtcbiAgZmxleDogMSAwIGF1dG87XG59XG5cbi5vLWZvb3Rlcl9fbWFpbiB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMnZ3KTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLWZvb3Rlcl9fbWFpbiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxMCkgKiA4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLWZvb3Rlcl9fbWFpbiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gICAgbWF4LXdpZHRoOiAxMTUycHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLWZvb3Rlcl9fbWFpbiB7XG4gICAgcGFkZGluZy10b3A6IDZ2dztcbiAgICBwYWRkaW5nLWJvdHRvbTogNnZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuby1mb290ZXJfX21haW4ge1xuICAgIHBhZGRpbmctdG9wOiA1dnc7XG4gICAgcGFkZGluZy1ib3R0b206IDV2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSBhbmQgKG1heC13aWR0aDogMTM0M3B4KSB7XG4gIC5vLWZvb3Rlcl9fbWFpbiB7XG4gICAgcGFkZGluZy10b3A6IDMuNTcxNDI4NTcxNHZ3O1xuICAgIHBhZGRpbmctYm90dG9tOiAzLjU3MTQyODU3MTR2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM0NHB4KSB7XG4gIC5vLWZvb3Rlcl9fbWFpbiB7XG4gICAgcGFkZGluZy10b3A6IDQ4cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDQ4cHg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tZm9vdGVyX19jb2x1bW5zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbi5vLWZvb3Rlcl9fYnJhbmQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgbGluZWFyO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODM5cHgpIHtcbiAgLm8tZm9vdGVyX19icmFuZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMy45NnZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuby1mb290ZXJfX2JyYW5kIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzLjN2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSBhbmQgKG1heC13aWR0aDogMTM0M3B4KSB7XG4gIC5vLWZvb3Rlcl9fYnJhbmQge1xuICAgIG1hcmdpbi1ib3R0b206IDIuMzU3MTQyODU3MXZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzQ0cHgpIHtcbiAgLm8tZm9vdGVyX19icmFuZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzEuNjhweDtcbiAgfVxufVxuLm8tZm9vdGVyX19icmFuZDpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLm8tZm9vdGVyX19sb2dvIHtcbiAgaGVpZ2h0OiA1NnB4O1xufVxuXG4uby1mb290ZXJfX2luZm8gPiAqICsgKiB7XG4gIG1hcmdpbi10b3A6IDMycHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1mb290ZXJfX2luZm8ge1xuICAgIHdpZHRoOiA0MCU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1mb290ZXJfX2luZm8ge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAuby1mb290ZXJfX25hdiB7XG4gICAgbWFyZ2luLXRvcDogNnZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1mb290ZXJfX25hdiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLWZvb3Rlcl9fbmF2IHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxufVxuXG4uby1mb290ZXJfX2xpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG59XG5cbi5vLWZvb3Rlcl9fbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uby1mb290ZXJfX2xpbms6aG92ZXIsIC5vLWZvb3Rlcl9fbGluazphY3RpdmUge1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG4uby1mb290ZXJfX2xpbms6OmJlZm9yZSB7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgb3BhY2l0eTogMDtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAtOHB4O1xuICByaWdodDogLThweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBsaW5lYXI7XG59XG4uby1mb290ZXJfX2xpbms6aG92ZXI6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG59XG4uby1mb290ZXJfX2xpbms6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICBvdXRsaW5lLXdpZHRoOiAycHg7XG59XG5cbi5vLWZvb3Rlcl9fc29jaWFsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAzMnB4IDAgMDtcbn1cblxuLm8tZm9vdGVyX19jaGFubmVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbn1cblxuLm8tZm9vdGVyX19pY29uIHtcbiAgZmxleDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xufVxuLmZhY2Vib29rIC5vLWZvb3Rlcl9faWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvc29jaWFsL2ZhY2Vib29rLnN2Z1wiKTtcbiAgaGVpZ2h0OiAyMXB4O1xufVxuLmluc3RhZ3JhbSAuby1mb290ZXJfX2ljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL3NvY2lhbC9pbnN0YWdyYW0uc3ZnXCIpO1xufVxuLnR3aXR0ZXIgLm8tZm9vdGVyX19pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9zb2NpYWwvdHdpdHRlci5zdmdcIik7XG4gIGhlaWdodDogMjBweDtcbn1cbi5saW5rZWRpbiAuby1mb290ZXJfX2ljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL3NvY2lhbC9saW5rZWRpbi5zdmdcIik7XG4gIGhlaWdodDogMThweDtcbn1cbi5vLWZvb3Rlcl9faWNvbjpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cbi5vLWZvb3Rlcl9faWNvbjpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6ICM0MDc5Qjg7XG59XG5cbi5vLWZvcm1fX2hlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG5cbi5vLWZvcm1fX2Zvb3RlciB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG5cbi5vLWZvcm1fX3JvdyArIC5vLWZvcm1fX3JvdyB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbi5vLWZvcm1fX3BvdCB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICB6LWluZGV4OiAtMTtcbn1cblxuLypcblx0Q29sb3JzIGdldCBkZWZpbmVkIGluIF9zZXR0aW5ncy5jb25maWcuc2Nzc1xuKi9cbi5vLWhlYWRlciB7XG4gIHotaW5kZXg6IDUwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEycHggMDtcbn1cbi5vLWhlYWRlci5pcy1zdGlja3kge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDUwO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogMzJweDtcbiAgcGFkZGluZy1ib3R0b206IDMycHg7XG4gIGJveC1zaGFkb3c6IDAgLTVweCAzMHB4IGJsYWNrO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDMwMG1zO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcywgMzAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gIC5vLWhlYWRlci5pcy1zdGlja3kge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5pcy1zdGlja3ktaGVhZGVyLXZpc2libGUgLm8taGVhZGVyLmlzLXN0aWNreSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG59XG5cbi5vLWhlYWRlcl9fbWFpbiB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMnZ3KTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1oZWFkZXJfX21haW4ge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTApICogOCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1oZWFkZXJfX21haW4ge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICAgIG1heC13aWR0aDogMTE1MnB4O1xuICB9XG59XG5cbi5vLWhlYWRlcl9fbmF2IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiA0OHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA5OXB4KSB7XG4gIC5vLWhlYWRlcl9fbmF2IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5vLWhlYWRlcl9fbGFuZ3VhZ2Uge1xuICBmbGV4OiBub25lO1xuICBtYXJnaW4tbGVmdDogMTZweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwOTlweCkge1xuICAuby1oZWFkZXJfX2xhbmd1YWdlIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuXG4uby1oZWFkZXJfX2xvZ28ge1xuICBmbGV4OiBub25lO1xufVxuLm8taGVhZGVyX19sb2dvOmhvdmVyLCAuby1oZWFkZXJfX2xvZ286YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuLm8taGVhZGVyX19sb2dvOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuICBvdXRsaW5lLXN0eWxlOiBzb2xpZDtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgb3V0bGluZS13aWR0aDogMnB4O1xufVxuXG4uby1oZWFkZXJfX2ltZyB7XG4gIGhlaWdodDogODhweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gIC5vLWhlYWRlcl9fdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5vLWludHJvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDVEOERCO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODM5cHgpIHtcbiAgLm8taW50cm8ge1xuICAgIG1hcmdpbi1ib3R0b206IDEydnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5vLWludHJvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIGFuZCAobWF4LXdpZHRoOiAxMzQzcHgpIHtcbiAgLm8taW50cm8ge1xuICAgIG1hcmdpbi1ib3R0b206IDcuMTQyODU3MTQyOXZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzQ0cHgpIHtcbiAgLm8taW50cm8ge1xuICAgIG1hcmdpbi1ib3R0b206IDk2cHg7XG4gIH1cbn1cblxuLm8taW50cm9fX2JvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MzlweCkge1xuICAuby1pbnRyb19fYm9keSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJ2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLm8taW50cm9fX2JvZHkge1xuICAgIG1hcmdpbi1ib3R0b206IDEwdnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkgYW5kIChtYXgtd2lkdGg6IDEzNDNweCkge1xuICAuby1pbnRyb19fYm9keSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNy4xNDI4NTcxNDI5dnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNDRweCkge1xuICAuby1pbnRyb19fYm9keSB7XG4gICAgbWFyZ2luLWJvdHRvbTogOTZweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODM5cHgpIHtcbiAgLm8taW50cm8tLW1vYmlsZS1icmVhay1vdXQgLm8taW50cm9fX2JvZHkge1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8taW50cm9fX2JvZHk6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQkUxRTJEO1xuICB9XG4gIC5vLWludHJvLS1ib3R0b20tYmFyLWhpZGRlbiAuby1pbnRyb19fYm9keTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5vLWludHJvX19jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8taW50cm9fX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1pbnRyb19fY29udGVudCB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gICAgbWF4LXdpZHRoOiAxMTUycHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5vLWludHJvX19uYXYsXG4uby1pbnRyb19faW1hZ2Uge1xuICBtYXJnaW4tdG9wOiAzMnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8taW50cm9fX25hdixcbi5vLWludHJvX19pbWFnZSB7XG4gICAgb3JkZXI6IC0xO1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8taW50cm9fX25hdixcbi5vLWludHJvX19pbWFnZSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuXG4uby1pbnRyb19fbmF2IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y4RjhGODtcbiAgcGFkZGluZzogMzJweCA2dnc7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1pbnRyb19fbmF2IHtcbiAgICBwYWRkaW5nOiA4MHB4IDQuMTY2NjY2NjY2NyU7XG4gICAgcGFkZGluZy1sZWZ0OiAxMCU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1pbnRyb19fbmF2IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gICAgcGFkZGluZy1yaWdodDogOC4zMzMzMzMzMzMzJTtcbiAgfVxufVxuXG4uby1pbnRyb19fdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAzMnB4O1xuICBwYWRkaW5nLWxlZnQ6IDZ2dztcbiAgcGFkZGluZy1yaWdodDogNnZ3O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8taW50cm9fX3RleHQge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgICBwYWRkaW5nOiA4MHB4IDguMzMzMzMzMzMzMyU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1pbnRyb19fdGV4dCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuXG4uby1pbnRyb19fdGl0bGUsXG4uby1pbnRyb19faGVhZGluZyB7XG4gIGNvbG9yOiAjM0U0ODUyICFpbXBvcnRhbnQ7XG59XG5cbi5vLWludHJvX19idXR0b24ge1xuICBjb2xvcjogIzY1NjU2NSAhaW1wb3J0YW50O1xufVxuXG4uby1sb2dvc19fbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbjogLTIuMzgydnc7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNDRweCkge1xuICAuby1sb2dvc19fbGlzdCB7XG4gICAgbWFyZ2luOiAtMzJweDtcbiAgfVxufVxuXG4uby1sb2dvc19faXRlbSB7XG4gIGZsZXg6IDAgMSAxMDAlO1xuICBtYXJnaW46IDIuMzgydnc7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzODRweCkge1xuICAuby1sb2dvc19faXRlbSB7XG4gICAgZmxleC1iYXNpczogY2FsYyg1MCUgLSA1dncpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1sb2dvc19faXRlbSB7XG4gICAgZmxleC1iYXNpczogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDV2dyk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1sb2dvc19faXRlbSB7XG4gICAgZmxleC1iYXNpczogY2FsYygyNSUgLSA1dncpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzQ0cHgpIHtcbiAgLm8tbG9nb3NfX2l0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoMjUlIC0gNjRweCk7XG4gICAgbWFyZ2luOiAzMnB4O1xuICB9XG59XG5cbi5vLWxvZ29zX19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5vLWxvZ29zX19pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xufVxuXG4uby1tYXAgYTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5vLW5ld3Mge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTJ2dyk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1uZXdzIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDEwKSAqIDgpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tbmV3cyB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gICAgbWF4LXdpZHRoOiAxMTUycHg7XG4gIH1cbn1cblxuLm8tbmV3c19faGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGNvbG9yOiAjMkMyQzJDO1xufVxuXG4uby1uZXdzX19hcnRpY2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLm8tbmV3c19fYXJ0aWNsZSArIC5vLW5ld3NfX2FydGljbGUge1xuICBtYXJnaW4tdG9wOiAzMnB4O1xufVxuXG4uby1uZXdzX19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDE1MG1zIGxpbmVhcjtcbn1cbi5vLW5ld3NfX2xpbms6aG92ZXIsIC5vLW5ld3NfX2xpbms6YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuLm8tbmV3c19fbGluazo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjQzhDOEM4O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGxpbmVhcjtcbn1cbi5vLW5ld3NfX2xpbms6aG92ZXIsIC5vLW5ld3NfX2xpbms6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4O1xufVxuLm8tbmV3c19fbGluazpob3Zlcjo6YmVmb3JlLCAuby1uZXdzX19saW5rOmZvY3VzOjpiZWZvcmUge1xuICBvcGFjaXR5OiAwO1xufVxuLm8tbmV3c19fbGluazpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgb3V0bGluZS1zdHlsZTogc29saWQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAxcHg7XG4gIG91dGxpbmUtd2lkdGg6IDJweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLW5ld3NfX2xpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG59XG5cbi5vLW5ld3NfX2JvZHkge1xuICBmbGV4LWdyb3c6IDE7XG4gIHBhZGRpbmc6IDZ2dztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLW5ld3NfX2JvZHkge1xuICAgIG9yZGVyOiAxO1xuICAgIHBhZGRpbmctdG9wOiA0OHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0OHB4O1xuICAgIHBhZGRpbmctbGVmdDogMTIuNSU7XG4gICAgcGFkZGluZy1yaWdodDogMTIuNSU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1uZXdzX19ib2R5IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbn1cblxuLm8tbmV3c19faW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogNTUlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tbmV3c19faW1hZ2Uge1xuICAgIGZsZXg6IG5vbmU7XG4gICAgb3JkZXI6IDI7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjUlO1xuICB9XG59XG5cbi5vLW5ld3NfX2JnLWltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICB0b3A6IDZ2dztcbiAgcmlnaHQ6IDZ2dztcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEydncpO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDZ2dyk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby1uZXdzX19iZy1pbWFnZSB7XG4gICAgdG9wOiA4cHg7XG4gICAgcmlnaHQ6IDhweDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMTZweCk7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNnB4KTtcbiAgfVxufVxuXG4uby1uZXdzX19pbnRybyB7XG4gIG1hcmdpbi10b3A6IDI0cHg7XG59XG5cbi5vLW5ld3NfX3RpbWVzdGFtcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAxNnB4O1xuICBjb2xvcjogIzk5OTk5OTtcbn1cblxuLm8tbmV3c19fYWN0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIGNvbG9yOiAjNDA3OUI4O1xufVxuXG4uby1uZXdzX19yZWFkbW9yZSB7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xufVxuXG4uby1uZXdzX19mb290ZXIge1xuICBtYXJnaW4tdG9wOiAzMnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5vLW92ZXJsYXktbWVudSB7XG4gIHotaW5kZXg6IDEwMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1QjY5Nzg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTIwdncpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDQwMG1zLCAyMDBtcztcbiAgdHJhbnNpdGlvbi1kZWxheTogMHMsIDQwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNSwgMC4xNSwgMC4xLCAxKSwgbGluZWFyO1xufVxuLmlzLW92ZXJsYXktbWVudS1hY3RpdmUgLm8tb3ZlcmxheS1tZW51IHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyMDBtcywgMHM7XG59XG4uby1vdmVybGF5LW1lbnU6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IC0xMjB2dztcbiAgd2lkdGg6IDEyMHZ3O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDIwMG1zO1xuICB0cmFuc2l0aW9uLWRlbGF5OiA0MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbn1cbi5pcy1vdmVybGF5LW1lbnUtYWN0aXZlIC5vLW92ZXJsYXktbWVudTo6YmVmb3JlIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG59XG4uby1vdmVybGF5LW1lbnU6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogLTIwJTtcbiAgd2lkdGg6IDIwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoLTg2ZGVnLCB0cmFuc3BhcmVudCA1MCUsICM1QjY5NzggNTAlKTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExMDBweCkge1xuICAuby1vdmVybGF5LW1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLm8tb3ZlcmxheS1tZW51X19iYXIge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTJ2dyk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDMycHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tb3ZlcmxheS1tZW51X19iYXIge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTApICogOCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby1vdmVybGF5LW1lbnVfX2JhciB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gICAgbWF4LXdpZHRoOiAxMTUycHg7XG4gIH1cbn1cblxuLm8tb3ZlcmxheS1tZW51X19pbWcge1xuICBoZWlnaHQ6IDQ4cHg7XG59XG5cbi5vLW92ZXJsYXktbWVudV9fdG9nZ2xlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNXR1cm4pO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNjAwbXMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zO1xufVxuLmlzLW92ZXJsYXktbWVudS1hY3RpdmUgLm8tb3ZlcmxheS1tZW51X190b2dnbGUge1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5vLW92ZXJsYXktbWVudV9fbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5vLW92ZXJsYXktbWVudV9faXRlbSB7XG4gIHBhZGRpbmc6IDhweCA3LjE0Mjg1NzE0MjklO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xufVxuXG4uby1vdmVybGF5LW1lbnVfX2xpbmsge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzMzMzMzMzMzMztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgbGluZWFyO1xufVxuLm8tb3ZlcmxheS1tZW51X19saW5rOmhvdmVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbn1cbi5vLW92ZXJsYXktbWVudV9fbGluazpmb2N1cyB7XG4gIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gIG91dGxpbmUtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbn1cbi5vLW92ZXJsYXktbWVudV9fbGluay5pcy1hY3RpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG9wYWNpdHk6IDE7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLm8tb3ZlcmxheS1tZW51X19saW5rLmlzLWFjdGl2ZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCLinpRcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDZweDtcbiAgbGVmdDogLTEuMjVlbTtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4uby1xdW90ZSB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMnZ3KTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXF1b3RlIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDEwKSAqIDgpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tcXVvdGUge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICAgIG1heC13aWR0aDogMTE1MnB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXF1b3RlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXF1b3RlX19ib2R5IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tcXVvdGVfX2JvZHkge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxufVxuXG4uby1xdW90ZV9fcGljdHVyZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODM5cHgpIHtcbiAgLm8tcXVvdGVfX3BpY3R1cmUge1xuICAgIG1hcmdpbi10b3A6IDMycHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXF1b3RlX19waWN0dXJlIHtcbiAgICB3aWR0aDogMzcuNSU7XG4gICAgbWFyZ2luLWxlZnQ6IDEyLjUlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tcXVvdGVfX3BpY3R1cmUge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbn1cblxuLm8tcXVvdGVfX2ltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLm8tcXVvdGVfX3RleHQge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS43Nzc3Nzc3Nzc4O1xuICBxdW90ZXM6IFwi4oCcXCIgXCLigJ1cIjtcbn1cbi5vLXF1b3RlX190ZXh0OjpiZWZvcmUge1xuICBjb250ZW50OiBvcGVuLXF1b3RlO1xufVxuLm8tcXVvdGVfX3RleHQ6OmFmdGVyIHtcbiAgY29udGVudDogY2xvc2UtcXVvdGU7XG59XG5cbi5vLXF1b3RlX19hdXRob3Ige1xuICBtYXJnaW4tdG9wOiAyNHB4O1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbn1cblxuLm8tcXVvdGVfX2hlYWRpbmcge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjNjU2NTY1O1xufVxuXG4uby1xdW90ZV9fc3ViaGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzk5OTk5OTtcbn1cblxuLm8tcmVmZXJlbmNlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luOiAtMzJweDtcbn1cblxuLm8tcmVmZXJlbmNlc19faXRlbSB7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZmxleDogMCAxIDEwMCU7XG4gIG1hcmdpbjogMzJweDtcbiAgcGFkZGluZy10b3A6IDI0cHg7XG4gIHBhZGRpbmctYm90dG9tOiAyNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXI6IDBweCBzb2xpZCAjQzhDOEM4O1xuICBib3gtc2hhZG93OiAwIDIuNHB4IDM5LjRweCAtMTZweCByZ2JhKDAsIDAsIDAsIDAuMDI0KSwgMCA2LjhweCA0NS41cHggLTE2cHggcmdiYSgwLCAwLCAwLCAwLjAzNSksIDAgMTYuM3B4IDUxLjRweCAtMTZweCByZ2JhKDAsIDAsIDAsIDAuMDQ2KSwgMCA1NHB4IDgwcHggLTE2cHggcmdiYSgwLCAwLCAwLCAwLjA3KTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gIC5vLXJlZmVyZW5jZXNfX2l0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoNTAlIC0gNjRweCAtIDBweCk7XG4gIH1cbn1cblxuLm8tcmVmZXJlbmNlc19fYm9keSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDI0cHg7XG59XG5cbi5vLXJlZmVyZW5jZXNfX3BpY3R1cmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleC1ncm93OiAxO1xuICBmbGV4LWJhc2lzOiAyNSU7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gIG1hcmdpbi1sZWZ0OiAyNHB4O1xufVxuXG4uby1yZWZlcmVuY2VzX19jb250ZW50IHtcbiAgZmxleC1ncm93OiA5OTk5O1xuICBmbGV4LWJhc2lzOiAxOGVtO1xuICBtYXJnaW4tbGVmdDogMjRweDtcbiAgY29sb3I6ICM2NTY1NjU7XG59XG5cbi5vLXJlZmVyZW5jZXNfX2F1dGhvciB7XG4gIG1hcmdpbi10b3A6IDI0cHg7XG59XG5cbi5vLXJlZmVyZW5jZXNfX2hlYWRpbmcge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjNjU2NTY1O1xufVxuXG4uby1yZWZlcmVuY2VzX19zdWJoZWFkaW5nIHtcbiAgY29sb3I6ICM5OTk5OTk7XG59XG5cbi5vLXN1YmZvb3RlciB7XG4gIHotaW5kZXg6IDEwO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0JFMUUyRDtcbiAgcGFkZGluZy1ib3R0b206IDY0cHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMC42cztcbn1cbi5pcy1jb29raWVzLWFjY2VwdGVkIC5vLXN1YmZvb3RlciB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uby1zdWJmb290ZXJfX21haW4ge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTJ2dyk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDhweDtcbiAgcGFkZGluZy1ib3R0b206IDhweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXN1YmZvb3Rlcl9fbWFpbiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxMCkgKiA4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLXN1YmZvb3Rlcl9fbWFpbiB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gICAgbWF4LXdpZHRoOiAxMTUycHg7XG4gIH1cbn1cblxuLm8tc3ViZm9vdGVyX19jb3B5cmlnaHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBtYXJnaW4tcmlnaHQ6IDMycHg7XG59XG5cbi5vLXN1YmZvb3Rlcl9fbmF2IHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbn1cblxuLm8tc3ViZm9vdGVyX19saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbn1cblxuLm8tc3ViZm9vdGVyX19pdGVtIHtcbiAgbWFyZ2luLXJpZ2h0OiAzMnB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uby1zdWJmb290ZXJfX2xpbmsge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAyMDBtcztcbn1cbi5vLXN1YmZvb3Rlcl9fbGluazpob3ZlciwgLm8tc3ViZm9vdGVyX19saW5rOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5vLXN1YmZvb3Rlcl9fbGluazpob3ZlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG4uby1zdWJmb290ZXJfX2xpbms6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICBvdXRsaW5lLXdpZHRoOiAycHg7XG59XG5cbi5vLXN1YmZvb3Rlcl9fdHJhZGVtYXJrIHtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG5cbi8qXG4gKiBPbiBzbWFsbCBzY3JlZW5zIHRoZSBjb250ZW50IGlzIHN0YWNrZWQsIHdpdGhvdXQgY29udHJvbHNcbiAqIFdoZW4gdGhlIHNjcmVlbiBpcyB3aWRlIGVub3VnaCB3ZSBhZGQgdGhlIGNvbnRyb2xzXG4gKiBhbmQgc2hvdyBvbmx5IHRoZSBjaG9zZW4gJ3NsaWRlIGNvbnRlbnQnXG4gKi9cbi5vLXRhYnNsaWRlciB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMnZ3KTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXRhYnNsaWRlciB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxMCkgKiA4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLXRhYnNsaWRlciB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gICAgbWF4LXdpZHRoOiAxMTUycHg7XG4gIH1cbn1cblxuLm8tdGFic2xpZGVyX19idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gIGNvbG9yOiAjMkMyQzJDO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXI6IDFweCBzb2xpZCAjQzhDOEM4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yLCBib3JkZXI7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zO1xufVxuLm8tdGFic2xpZGVyX19idXR0b246aG92ZXIge1xuICBjb2xvcjogIzVCNjk3ODtcbiAgYm9yZGVyLWNvbG9yOiAjNUI2OTc4O1xufVxuLm8tdGFic2xpZGVyX19idXR0b24uaXMtYWN0aXZlIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1QjY5Nzg7XG4gIGJvcmRlci1jb2xvcjogIzVCNjk3ODtcbn1cbi5vLXRhYnNsaWRlcl9fYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyLWNvbG9yOiAjNUI2OTc4O1xufVxuLm8tdGFic2xpZGVyX19idXR0b246Zm9jdXM6bm90KC5pcy1hY3RpdmUpOm5vdCg6YWN0aXZlKSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjRkZGRkZGLCAwIDAgNXB4IDNweCByZ2JhKDQ0LCA0NCwgNDQsIDAuMSk7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLXRhYnNsaWRlcl9fY29udHJvbHMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXRhYnNsaWRlcl9fY29udHJvbHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby10YWJzbGlkZXJfX2NvbnRyb2xzIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbn1cblxuLm8tdGFic2xpZGVyX19zdGVwIHtcbiAgd2lkdGg6IDQ4cHg7XG59XG5cbi5vLXRhYnNsaWRlcl9fc3RlcC0tcHJldiB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNXR1cm4pO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby10YWJzbGlkZXJfX3RhYnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNDRweCkge1xuICAuby10YWJzbGlkZXJfX3RhYnMge1xuICAgIG1hcmdpbjogLThweCA4cHg7XG4gIH1cbn1cblxuLm8tdGFic2xpZGVyX190YWIge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xNDI4NTcxNDI5O1xuICBtYXJnaW46IDhweDtcbiAgcGFkZGluZzogN3B4IDE2cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXRhYnNsaWRlcl9fY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogMWZyO1xuICAgIG1hcmdpbi10b3A6IDQ4cHg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODM5cHgpIHtcbiAgLm8tdGFic2xpZGVyX19jb250ZW50ICsgLm8tdGFic2xpZGVyX19jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAxMnZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby10YWJzbGlkZXJfX2NvbnRlbnQge1xuICAgIGdyaWQtcm93OiAxO1xuICAgIGdyaWQtY29sdW1uOiAxO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgei1pbmRleDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyMDBtcztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxuICAuby10YWJzbGlkZXJfX2NvbnRlbnQuaXMtYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHotaW5kZXg6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjAwbXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB9XG59XG5cbi5vLXRhYnNsaWRlcl9fbGFiZWwge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xNDI4NTcxNDI5O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICMyQzJDMkM7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby10YWJzbGlkZXJfX2xhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5vLXRlYW0ge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTJ2dyk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby10ZWFtIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDEwKSAqIDgpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tdGVhbSB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gICAgbWF4LXdpZHRoOiAxMTUycHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLXRlYW0ge1xuICAgIG1hcmdpbi10b3A6IDEydnc7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJ2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTUxcHgpIHtcbiAgLm8tdGVhbSB7XG4gICAgbWFyZ2luLXRvcDogMTB2dztcbiAgICBtYXJnaW4tYm90dG9tOiAxMHZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIGFuZCAobWF4LXdpZHRoOiAxMzQzcHgpIHtcbiAgLm8tdGVhbSB7XG4gICAgbWFyZ2luLXRvcDogNy4xNDI4NTcxNDI5dnc7XG4gICAgbWFyZ2luLWJvdHRvbTogNy4xNDI4NTcxNDI5dnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNDRweCkge1xuICAuby10ZWFtIHtcbiAgICBtYXJnaW4tdG9wOiA5NnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDk2cHg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTYwcHgpIHtcbiAgLm8tdGVhbV9fbWF0cml4IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IC0xNnB4O1xuICB9XG59XG5cbi5vLXRlYW1fX2l0ZW0ge1xuICBtYXJnaW46IDAgYXV0byAzMnB4O1xuICBtYXgtd2lkdGg6IDMwMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTYwcHgpIHtcbiAgLm8tdGVhbV9faXRlbSB7XG4gICAgbWFyZ2luOiAxNnB4O1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBmbGV4OiBub25lO1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoNTAlIC0gMzJweCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSB7XG4gIC5vLXRlYW1fX2l0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoMzMuMzMlIC0gMzJweCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuby10ZWFtX19pdGVtIHtcbiAgICBmbGV4LWJhc2lzOiBjYWxjKDI1JSAtIDMycHgpO1xuICB9XG59XG5cbi5vLXRoYW5rcyB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMnZ3KTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXRoYW5rcyB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxMCkgKiA4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLXRoYW5rcyB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxNCkgKiAxMik7XG4gICAgbWF4LXdpZHRoOiAxMTUycHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLXRoYW5rcyB7XG4gICAgcGFkZGluZy1ib3R0b206IDEydnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5vLXRoYW5rcyB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwdnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkgYW5kIChtYXgtd2lkdGg6IDEzNDNweCkge1xuICAuby10aGFua3Mge1xuICAgIHBhZGRpbmctYm90dG9tOiA3LjE0Mjg1NzE0Mjl2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM0NHB4KSB7XG4gIC5vLXRoYW5rcyB7XG4gICAgcGFkZGluZy1ib3R0b206IDk2cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExMTBweCkge1xuICAuby10aGFua3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTExMHB4KSB7XG4gIC5vLXRoYW5rc19fbGVmdCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlICsgNDhweCk7XG4gICAgcGFkZGluZy1yaWdodDogNDhweDtcbiAgfVxufVxuXG4uby10aGFua3NfX3JpZ2h0IHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExMTBweCkge1xuICAuby10aGFua3NfX3JpZ2h0IHtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE1MXB4KSB7XG4gIC5vLXVzcCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNFNDg1MjtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAuby11c3BfX21haW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuLm8tdXNwX190ZXh0IHtcbiAgcGFkZGluZzogMzJweCAwO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNFNDg1Mjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXVzcF9fdGV4dCB7XG4gICAgd2lkdGg6IDYyLjUlO1xuICAgIHBhZGRpbmctdG9wOiA2LjI1JTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNi4yNSU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEyLjUlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tdXNwX190ZXh0IHtcbiAgICB3aWR0aDogNTAlO1xuICAgIHBhZGRpbmc6IDQuMTY2NjY2NjY2NyUgOC4zMzMzMzMzMzMzJTtcbiAgfVxufVxuXG4uby11c3BfX2ltYWdlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC5vLXVzcF9faW1hZ2Uge1xuICAgIG1hcmdpbi1sZWZ0OiAtNnZ3O1xuICAgIG1hcmdpbi1yaWdodDogLTZ2dztcbiAgICBwYWRkaW5nLWJvdHRvbTogNjUlO1xuICAgIG1pbi1oZWlnaHQ6IDM2MHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAuby11c3BfX2ltYWdlIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1hcmdpbi1yaWdodDogLTEyLjUlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tdXNwX19pbWFnZSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuXG4uby11c3BfX2hlYWRpbmcge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLm8tdXNwX19saXN0IHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMTZweDtcbn1cblxuLm8tdXNwX19pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG59XG4uby11c3BfX2l0ZW0gKyAuby11c3BfX2l0ZW0ge1xuICBtYXJnaW4tdG9wOiAxNnB4O1xufVxuLm8tdXNwX19pdGVtOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNXB4O1xuICBsZWZ0OiAtMTZweDtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTJweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWcvY2hlY2svY2hlY2tlZC5zdmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTJweDtcbn1cblxuLm8tdXNwX19hY3Rpb24ge1xuICBtYXJnaW4tdG9wOiA0OHB4O1xufVxuXG4uby11c3BfX2ltYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y4RjhGODtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLm8tdmFjYW5jaWVzIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLm8tdmFjYW5jaWVzID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAxNnB4O1xufVxuXG4uby12YWNhbmNpZXNfX2xpbmsge1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDMycHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNDOEM4Qzg7XG4gIGNvbG9yOiAjMUQxRDFEO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAxNTBtcyBsaW5lYXI7XG59XG4uby12YWNhbmNpZXNfX2xpbms6aG92ZXIge1xuICBjb2xvcjogIzQwNzlCODtcbiAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxcHggMXB4IGN1cnJlbnRDb2xvcjtcbn1cblxuLm8tdmFjYW5jaWVzX19jb250ZW50IHtcbiAgZmxleDogYXV0bztcbn1cblxuLm8tdmFjYW5jaWVzX19pY29uIHtcbiAgZmxleDogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCRTFFMkQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRyYW5zaXRpb246IGFsbCAxNTBtcyBsaW5lYXI7XG59XG4uby12YWNhbmNpZXNfX2xpbms6aG92ZXIgLm8tdmFjYW5jaWVzX19pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQwNzliODtcbn1cblxuLm8tdmFjYW5jaWVzX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMzMzMzMzMzMzO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cblxuLm8tdmFjYW5jaWVzX19zdWJ0aXRsZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICM5OTk5OTk7XG59XG5cbi5vLXZhY2FuY2llc19fcHJvcGVydGllcyB7XG4gIG1hcmdpbi10b3A6IDMycHg7XG59XG5cbi5vLXZhY2FuY3lfX2hlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLm8tdmFjYW5jeV9faGVybyB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEydncpO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSBhbmQgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLm8tdmFjYW5jeV9faGVybyB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAxMCkgKiA4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC5vLXZhY2FuY3lfX2hlcm8ge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICAgIG1heC13aWR0aDogMTE1MnB4O1xuICB9XG59XG4uby12YWNhbmN5X19oZXJvOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IC0xO1xuICBjb250ZW50OiBcIlwiO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IC01MHZ3O1xuICBsZWZ0OiAtNTB2dztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNFNDg1Mjtcbn1cblxuLm8tdmFjYW5jeV9faGVyby1pbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uby12YWNhbmN5X19wcm9wZXJ0aWVzIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEydncpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAtMTZweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5vLXZhY2FuY3lfX3Byb3BlcnRpZXMge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTApICogOCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAuby12YWNhbmN5X19wcm9wZXJ0aWVzIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAvIDE0KSAqIDEyKTtcbiAgICBtYXgtd2lkdGg6IDExNTJweDtcbiAgfVxufVxuXG4vKiAgNyAtIFRlbXBsYXRlc1xuICogIE92ZXJyaWRlIHN0eWxpbmcgZm9yIGEgc3BlY2lmaWMgdGVtcGxhdGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBUZW1wbGF0ZXNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLyogIDggLSBTQ09QRVNcbiAqICBFbGVtZW50cyBhbmQgY2xhc3NlcyB0aGF0IGFyZSBzY29wZWQgYnkgYSBwYXJlbnQgY2xhc3NcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnMtY2hlY2tsaXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4ucy1jaGVja2xpc3QgbGkge1xuICBkaXNwbGF5OiBmbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ1O1xufVxuLnMtY2hlY2tsaXN0IGxpOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltZy9jaGVjay9jaGVja2VkLnN2Zyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDEycHg7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoN3B4KTtcbn1cbi5jaGVja2xpc3QtaGFzLXgtc21hbGwtZm9udCAucy1jaGVja2xpc3Qge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xNDI4NTcxNDI5O1xufVxuLmNoZWNrbGlzdC1oYXMteC1zbWFsbC1mb250IC5zLWNoZWNrbGlzdCBsaTo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDVweCk7XG59XG5cbi8qKlxuICogQWxsIHRleHQgZWxlbWVudHMgdGhhdCBjYW4gYmUgYWRkZWQgYnkgdGhlIHVzZXIgdGhyb3VnaCBhIENNU1xuICovXG4ucy10ZXh0IGgyLCAucy10ZXh0IGgzLCAucy10ZXh0IGg0IHtcbiAgY29sb3I6ICMyQzJDMkM7XG59XG4ucy10ZXh0ID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAzMnB4O1xufVxuLnMtdGV4dCA+IDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cbi5zLXRleHQgPiAqICsgLmMtYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cbi5zLXRleHQgPiB1bDpub3QoW2NsYXNzXSkge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLnMtdGV4dCA+IHVsOm5vdChbY2xhc3NdKSA+IGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogLTEuMTI1ZW07XG4gIHBhZGRpbmctbGVmdDogMS4xMjVlbTtcbn1cbi5zLXRleHQgPiB1bDpub3QoW2NsYXNzXSkgPiBsaTo6YmVmb3JlIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMzMzMzMzMzMzM7XG4gIGNvbnRlbnQ6IFwi4oCiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNHB4O1xuICBsZWZ0OiAwO1xufVxuLnMtdGV4dCA+IG9sOm5vdChbY2xhc3NdKSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGNvdW50ZXItcmVzZXQ6IG9sLWNvdW50ZXI7XG59XG4ucy10ZXh0ID4gb2w6bm90KFtjbGFzc10pID4gbGkge1xuICBjb3VudGVyLWluY3JlbWVudDogb2wtY291bnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogLTEuMTI1ZW07XG4gIHBhZGRpbmctbGVmdDogMS44ZW07XG59XG4ucy10ZXh0ID4gb2w6bm90KFtjbGFzc10pID4gbGk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGNvdW50ZXIob2wtY291bnRlcikgXCIuIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEuMjc1ZW07XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4vKiAgOSAtIFVUSUxJVElFU1xuICogIEhpZ2gtc3BlY2lmaWNpdHksIHZlcnkgZXhwbGljaXQgc2VsZWN0b3JzLlxuICogIE92ZXJyaWRlcyBhbmQgaGVscGVyIGNsYXNzZXMuXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiAgQ29sb3JcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEhlcmUgd2UgcHJpbnQgb3V0IGFsbCBvdXIgaGVscGVyIGNsYXNzZXMgZm9yIG91ciBkZWZpbmVkIGNvbG9yc1xuICogQmFzZWQgb24gdGhlc2UgYXJ0aWNsZXM6XG4gKiAtIGh0dHA6Ly9lcnNraW5lZGVzaWduLmNvbS9ibG9nL2ZyaWVuZGxpZXItY29sb3VyLW5hbWVzLXNhc3MtbWFwcy9cbiAqIC0gaHR0cHM6Ly9ibG9nLmF0ZWNobWVkaWEuY29tL2Nzcy1mb3ItbXVsdGlwbGUtdGhlbWVzL1xuICogT3V0cHV0IGlzIGluIHRoZSBmb3JtIG9mOlxuXG4gICAudS1jb2xvci1wcmltYXJ5IHtcbiAgICAgIGNvbG9yOiAjYmFkYTU1O1xuICAgfVxuXG4gIC51LWJnLW5ldXRyYWwtLTkwMCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RlY2FmZjtcbiAgfVxuICovXG4udS1jb2xvci1wcmltYXJ5LS01MDAge1xuICBjb2xvcjogIzVCNjk3ODtcbn1cblxuLnUtYmctcHJpbWFyeS0tNTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVCNjk3ODtcbn1cblxuLnUtY29sb3ItcHJpbWFyeS0tNzAwIHtcbiAgY29sb3I6ICMzRTQ4NTI7XG59XG5cbi51LWJnLXByaW1hcnktLTcwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzRTQ4NTI7XG59XG5cbi51LWNvbG9yLXNlY29uZGFyeS0tNTAwIHtcbiAgY29sb3I6ICNCRTFFMkQ7XG59XG5cbi51LWJnLXNlY29uZGFyeS0tNTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0JFMUUyRDtcbn1cblxuLnUtY29sb3ItdGVydGlhcnktLTUwMCB7XG4gIGNvbG9yOiAjRDVEOERCO1xufVxuXG4udS1iZy10ZXJ0aWFyeS0tNTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Q1RDhEQjtcbn1cblxuLnUtY29sb3ItbmV1dHJhbC0tMCB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4udS1iZy1uZXV0cmFsLS0wIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cblxuLnUtY29sb3ItbmV1dHJhbC0tMTAwIHtcbiAgY29sb3I6ICNGOEY4Rjg7XG59XG5cbi51LWJnLW5ldXRyYWwtLTEwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjg7XG59XG5cbi51LWNvbG9yLW5ldXRyYWwtLTIwMCB7XG4gIGNvbG9yOiAjRjVGNUY1O1xufVxuXG4udS1iZy1uZXV0cmFsLS0yMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGNUY1O1xufVxuXG4udS1jb2xvci1uZXV0cmFsLS0zMDAge1xuICBjb2xvcjogI0M4QzhDODtcbn1cblxuLnUtYmctbmV1dHJhbC0tMzAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0M4QzhDODtcbn1cblxuLnUtY29sb3ItbmV1dHJhbC0tNDAwIHtcbiAgY29sb3I6ICM5OTk5OTk7XG59XG5cbi51LWJnLW5ldXRyYWwtLTQwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTk5OTk7XG59XG5cbi51LWNvbG9yLW5ldXRyYWwtLTUwMCB7XG4gIGNvbG9yOiAjNjU2NTY1O1xufVxuXG4udS1iZy1uZXV0cmFsLS01MDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjU2NTY1O1xufVxuXG4udS1jb2xvci1uZXV0cmFsLS04MDAge1xuICBjb2xvcjogIzJDMkMyQztcbn1cblxuLnUtYmctbmV1dHJhbC0tODAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJDMkMyQztcbn1cblxuLnUtY29sb3ItbmV1dHJhbC0tOTAwIHtcbiAgY29sb3I6ICMxRDFEMUQ7XG59XG5cbi51LWJnLW5ldXRyYWwtLTkwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxRDFEMUQ7XG59XG5cbi51LWNvbG9yLW5ldXRyYWwtLTEwMDAge1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuLnUtYmctbmV1dHJhbC0tMTAwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG59XG5cbi51LWNvbG9yLWZlZWRiYWNrLS1hY3Rpb24ge1xuICBjb2xvcjogIzQwNzlCODtcbn1cblxuLnUtYmctZmVlZGJhY2stLWFjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0MDc5Qjg7XG59XG5cbi51LWNvbG9yLWZlZWRiYWNrLS13YXJuaW5nIHtcbiAgY29sb3I6ICNmZmQzM2E7XG59XG5cbi51LWJnLWZlZWRiYWNrLS13YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZDMzYTtcbn1cblxuLnUtY29sb3ItZmVlZGJhY2stLWFsZXJ0IHtcbiAgY29sb3I6ICNmZjgxMDA7XG59XG5cbi51LWJnLWZlZWRiYWNrLS1hbGVydCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjgxMDA7XG59XG5cbi51LWNvbG9yLWZlZWRiYWNrLS1uZWdhdGl2ZSB7XG4gIGNvbG9yOiAjY2YzZTNlO1xufVxuXG4udS1iZy1mZWVkYmFjay0tbmVnYXRpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2YzZTNlO1xufVxuXG4udS1jb2xvci1mZWVkYmFjay0tcG9zaXRpdmUge1xuICBjb2xvcjogIzNlY2Y4ZTtcbn1cblxuLnUtYmctZmVlZGJhY2stLXBvc2l0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNlY2Y4ZTtcbn1cblxuLnUtY29sb3ItYm9yZGVyLS0wIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi51LWJnLWJvcmRlci0tMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi51LWNvbG9yLWJvcmRlci0tMzAwIHtcbiAgY29sb3I6ICNDOEM4Qzg7XG59XG5cbi51LWJnLWJvcmRlci0tMzAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0M4QzhDODtcbn1cblxuLnUtY29sb3ItYm9yZGVyLS01MDAge1xuICBjb2xvcjogIzY1NjU2NTtcbn1cblxuLnUtYmctYm9yZGVyLS01MDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjU2NTY1O1xufVxuXG4vKiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogIEZvbnRzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBIZXJlIHdlIHByaW50IG91dCBhbGwgb3VyIGhlbHBlciBjbGFzc2VzIGZvciBvdXIgZGVmaW5lZCAkZm9udC1zaXplcyBtYXBcbiAqIE91dHB1dCBvZiB0aGUgY2xhc3NlcyBpbiB0aGUgdGhpcyBmb3JtOlxuXG4gICAudS1mcy1tIHt9XG4gICAudS1mcy14bCB7fVxuICAgLi4uIGV0Y1xuXG4gKi9cbi51LWZzLXhzIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTQyODU3MTQyOTtcbn1cblxuLnUtZnMteHMge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xNDI4NTcxNDI5O1xufVxuXG4udS1mcy1zIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbi51LWZzLXMge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLnUtZnMtYmFzZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLnUtZnMtYmFzZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLnUtZnMtbSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjc3Nzc3Nzc3Nzg7XG59XG5cbi51LWZzLW0ge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS43Nzc3Nzc3Nzc4O1xufVxuXG4udS1mcy1sIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4udS1mcy1sIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4udS1mcy14bCB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMzMzMzMzMzMzO1xufVxuXG4udS1mcy14bCB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMzMzMzMzMzMzO1xufVxuXG4udS1mcy14eGwge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuXG4udS1mcy14eGwge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuXG4udS1mcy14eHhsIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4udS1mcy14eHhsIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4udS1mcy14eHh4bCB7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi51LWZzLXh4eHhsIHtcbiAgZm9udC1zaXplOiAzcmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLyoqXG4gKiBIZXJlIHdlIHByaW50IG91dCBhbGwgb3VyIGhlbHBlciBjbGFzc2VzIGZvciBvdXIgZGVmaW5lZCAkZm9udC13ZWlnaHRzIG1hcFxuICogT3V0cHV0IG9mIHRoZSBjbGFzc2VzIGluIHRoZSB0aGlzIGZvcm06XG5cbiAgIC51LWZ3LXJlZ3VsYXIge31cbiAgIC51LWZ3LXNlbWlCb2xkIHt9XG4gICAuLi4gZXRjXG5cbiAqL1xuLnUtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udS1wbGFjZWhvbGRlci1pbWFnZSB7XG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBvYmplY3QtZml0OiBjb3ZlciAhaW1wb3J0YW50O1xufVxuXG4udS10ZXh0LWFsaWduLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4ubm93cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLypcbiogSWYgeW91IG5lZWQgdG8gbWFrZSBhIHF1aWNrIGZpeCwgeW91IGNhbiBkbyBpdCBoZXJlLlxuKiBMYXRlciB3aGVuIHlvdSBoYXZlIHRoZSB0aW1lLCB5b3UgY2FuIG1vdmUgdGhlIGZpeCBpbnRvIHRoZSBjb3JyZWN0IHBsYWNlIGluIHRoZSBzdHJ1Y3R1cmVcbiovXG4udS1zcGFjaW5nLW10MCB7XG4gIG1hcmdpbi10b3A6IDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1yMCB7XG4gIG1hcmdpbi1yaWdodDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbWIwIHtcbiAgbWFyZ2luLWJvdHRvbTogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbWwwIHtcbiAgbWFyZ2luLWxlZnQ6IDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXB0MCB7XG4gIHBhZGRpbmctdG9wOiAwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wcjAge1xuICBwYWRkaW5nLXJpZ2h0OiAwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wYjAge1xuICBwYWRkaW5nLWJvdHRvbTogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGwwIHtcbiAgcGFkZGluZy1sZWZ0OiAwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tdDEge1xuICBtYXJnaW4tdG9wOiA4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tcjEge1xuICBtYXJnaW4tcmlnaHQ6IDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1iMSB7XG4gIG1hcmdpbi1ib3R0b206IDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1sMSB7XG4gIG1hcmdpbi1sZWZ0OiA4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1wdDEge1xuICBwYWRkaW5nLXRvcDogOHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHIxIHtcbiAgcGFkZGluZy1yaWdodDogOHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGIxIHtcbiAgcGFkZGluZy1ib3R0b206IDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBsMSB7XG4gIHBhZGRpbmctbGVmdDogOHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXQyIHtcbiAgbWFyZ2luLXRvcDogMTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1yMiB7XG4gIG1hcmdpbi1yaWdodDogMTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1iMiB7XG4gIG1hcmdpbi1ib3R0b206IDE2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tbDIge1xuICBtYXJnaW4tbGVmdDogMTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXB0MiB7XG4gIHBhZGRpbmctdG9wOiAxNnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHIyIHtcbiAgcGFkZGluZy1yaWdodDogMTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBiMiB7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGwyIHtcbiAgcGFkZGluZy1sZWZ0OiAxNnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXQzIHtcbiAgbWFyZ2luLXRvcDogMjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1yMyB7XG4gIG1hcmdpbi1yaWdodDogMjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1iMyB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tbDMge1xuICBtYXJnaW4tbGVmdDogMjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXB0MyB7XG4gIHBhZGRpbmctdG9wOiAyNHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHIzIHtcbiAgcGFkZGluZy1yaWdodDogMjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBiMyB7XG4gIHBhZGRpbmctYm90dG9tOiAyNHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGwzIHtcbiAgcGFkZGluZy1sZWZ0OiAyNHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXQ0IHtcbiAgbWFyZ2luLXRvcDogMzJweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1yNCB7XG4gIG1hcmdpbi1yaWdodDogMzJweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1iNCB7XG4gIG1hcmdpbi1ib3R0b206IDMycHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tbDQge1xuICBtYXJnaW4tbGVmdDogMzJweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXB0NCB7XG4gIHBhZGRpbmctdG9wOiAzMnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHI0IHtcbiAgcGFkZGluZy1yaWdodDogMzJweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBiNCB7XG4gIHBhZGRpbmctYm90dG9tOiAzMnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGw0IHtcbiAgcGFkZGluZy1sZWZ0OiAzMnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXQ1IHtcbiAgbWFyZ2luLXRvcDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1yNSB7XG4gIG1hcmdpbi1yaWdodDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1iNSB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tbDUge1xuICBtYXJnaW4tbGVmdDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXB0NSB7XG4gIHBhZGRpbmctdG9wOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHI1IHtcbiAgcGFkZGluZy1yaWdodDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBiNSB7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGw1IHtcbiAgcGFkZGluZy1sZWZ0OiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXQ2IHtcbiAgbWFyZ2luLXRvcDogNDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1yNiB7XG4gIG1hcmdpbi1yaWdodDogNDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1iNiB7XG4gIG1hcmdpbi1ib3R0b206IDQ4cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tbDYge1xuICBtYXJnaW4tbGVmdDogNDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXB0NiB7XG4gIHBhZGRpbmctdG9wOiA0OHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHI2IHtcbiAgcGFkZGluZy1yaWdodDogNDhweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBiNiB7XG4gIHBhZGRpbmctYm90dG9tOiA0OHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGw2IHtcbiAgcGFkZGluZy1sZWZ0OiA0OHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXQ3IHtcbiAgbWFyZ2luLXRvcDogNTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1yNyB7XG4gIG1hcmdpbi1yaWdodDogNTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1iNyB7XG4gIG1hcmdpbi1ib3R0b206IDU2cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tbDcge1xuICBtYXJnaW4tbGVmdDogNTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXB0NyB7XG4gIHBhZGRpbmctdG9wOiA1NnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHI3IHtcbiAgcGFkZGluZy1yaWdodDogNTZweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBiNyB7XG4gIHBhZGRpbmctYm90dG9tOiA1NnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGw3IHtcbiAgcGFkZGluZy1sZWZ0OiA1NnB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctbXQ4IHtcbiAgbWFyZ2luLXRvcDogNjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1yOCB7XG4gIG1hcmdpbi1yaWdodDogNjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLW1iOCB7XG4gIG1hcmdpbi1ib3R0b206IDY0cHggIWltcG9ydGFudDtcbn1cblxuLnUtc3BhY2luZy1tbDgge1xuICBtYXJnaW4tbGVmdDogNjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXB0OCB7XG4gIHBhZGRpbmctdG9wOiA2NHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcHI4IHtcbiAgcGFkZGluZy1yaWdodDogNjRweCAhaW1wb3J0YW50O1xufVxuXG4udS1zcGFjaW5nLXBiOCB7XG4gIHBhZGRpbmctYm90dG9tOiA2NHB4ICFpbXBvcnRhbnQ7XG59XG5cbi51LXNwYWNpbmctcGw4IHtcbiAgcGFkZGluZy1sZWZ0OiA2NHB4ICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzOXB4KSB7XG4gIC51LXNwYWNpbmctcHYge1xuICAgIHBhZGRpbmctdG9wOiAxMnZ3O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMnZ3O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAudS1zcGFjaW5nLXB2IHtcbiAgICBwYWRkaW5nLXRvcDogMTB2dztcbiAgICBwYWRkaW5nLWJvdHRvbTogMTB2dztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSBhbmQgKG1heC13aWR0aDogMTM0M3B4KSB7XG4gIC51LXNwYWNpbmctcHYge1xuICAgIHBhZGRpbmctdG9wOiA3LjE0Mjg1NzE0Mjl2dztcbiAgICBwYWRkaW5nLWJvdHRvbTogNy4xNDI4NTcxNDI5dnc7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNDRweCkge1xuICAudS1zcGFjaW5nLXB2IHtcbiAgICBwYWRkaW5nLXRvcDogOTZweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogOTZweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTUycHgpIHtcbiAgLnUtc3BhY2luZy1wcjBcXEBsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBUaGlzIGdyaWQgY2FuIGJlIHR1cm5lZCBvbiBhbmQgb2ZmIHdoZW4geW91IHdhbnQgdG8gY2hlY2tcbiAqIGlmIGV2ZXJ5dGhpbmcgaXMgbmljZSBpbiBwbGFjZS5cbiAqIFNldCBmbGFnICdzaG93R3JpZCcgdG8gdHJ1ZSBpbiBzaXRlLnBocFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi51LXZpc2libGUtZ3JpZCB7XG4gIHotaW5kZXg6IDEwMDAwO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTJ2dyk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLyogOCBwb2ludCBncmlkIGxpbmVzICovXG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAudS12aXNpYmxlLWdyaWQge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTApICogOCk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNTJweCkge1xuICAudS12aXNpYmxlLWdyaWQge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMTQpICogMTIpO1xuICAgIG1heC13aWR0aDogMTE1MnB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDExNTFweCkge1xuICAudS12aXNpYmxlLWdyaWQge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLnUtdmlzaWJsZS1ncmlkX19tYWluIHtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZDogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCA0MywgMjU1LCAwLjA3KSwgcmdiYSgwLCA0MywgMjU1LCAwLjA3KSAyNSUsIHJnYmEoMCwgNDMsIDI1NSwgMC4wNCkgMjUlLCByZ2JhKDAsIDQzLCAyNTUsIDAuMDQpIDUwJSk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAudS12aXNpYmxlLWdyaWRfX21haW4ge1xuICAgIGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgNDMsIDI1NSwgMC4wNyksIHJnYmEoMCwgNDMsIDI1NSwgMC4wNykgMTIuNSUsIHJnYmEoMCwgNDMsIDI1NSwgMC4wNCkgMTIuNSUsIHJnYmEoMCwgNDMsIDI1NSwgMC4wNCkgMjUlKTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE1MnB4KSB7XG4gIC51LXZpc2libGUtZ3JpZF9fbWFpbiB7XG4gICAgYmFja2dyb3VuZDogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCA0MywgMjU1LCAwLjA3KSwgcmdiYSgwLCA0MywgMjU1LCAwLjA3KSA4LjMzMzMzMzMzMzMlLCByZ2JhKDAsIDQzLCAyNTUsIDAuMDQpIDguMzMzMzMzMzMzMyUsIHJnYmEoMCwgNDMsIDI1NSwgMC4wNCkgMTYuNjY2NjY2NjY2NyUpO1xuICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBPcmdhbml6ZSBjb2xvciB2YXJpYWJsZXMgaW4gYSBTYXNzIE1hcC5cbiAgIFRoaXMgd2F5LCB0aGUgY29sb3JzIGNhbiBiZSBpdGVyYXRlZCwgYXJlIG1vcmUgb3JnYW5pemVkLFxuICAgYW5kIGFyZSBtb3JlIGludHVpdGl2ZSB0byByZWZlcmVuY2UuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4kcGFsZXR0ZXM6IChcblxuXHQncHJpbWFyeSc6IChcblx0XHQ1MDA6ICM1QjY5NzgsXG5cdFx0NzAwOiAjM0U0ODUyLFxuXHQpLFxuXG5cdCdzZWNvbmRhcnknOiAoXG5cdFx0NTAwOiAjQkUxRTJELFxuXHQpLFxuXG5cdCd0ZXJ0aWFyeSc6IChcblx0XHQ1MDA6ICNENUQ4REIsXG5cdCksXG5cblx0J25ldXRyYWwnOiAoXG5cdFx0MDogICAjRkZGRkZGLFxuXHRcdDEwMDogI0Y4RjhGOCxcblx0XHQyMDA6ICNGNUY1RjUsXG5cdFx0MzAwOiAjQzhDOEM4LFxuXHRcdDQwMDogIzk5OTk5OSxcblx0XHQ1MDA6ICM2NTY1NjUsXG5cdFx0ODAwOiAjMkMyQzJDLFxuXHRcdDkwMDogIzFEMUQxRCxcblx0XHQxMDAwOiAjMDAwMDAwLFxuXHQpLFxuXG5cdCdmZWVkYmFjayc6IChcblx0XHRhY3Rpb246ICM0MDc5QjgsXG5cdFx0d2FybmluZzogI2ZmZDMzYSxcblx0XHRhbGVydDogI2ZmODEwMCxcblx0XHRuZWdhdGl2ZTogI2NmM2UzZSxcblx0XHRwb3NpdGl2ZTogIzNlY2Y4ZSxcblx0KSxcblxuXHQnYm9yZGVyJzogKFxuXHRcdDA6ICAgI2ZmZixcblx0XHQzMDA6ICNDOEM4QzgsXG5cdFx0NTAwOiAjNjU2NTY1LFxuXHQpLFxuKTtcblxuXG4vKipcbiAqXHRBIHNpbXBsZSBmdW5jdGlvbiBmb3IgYWNjZXNzaW5nIHRoZSBjb2xvcnMgZnJvbSBvdXIgbWFwcGluZ1xuICpcdFRvIGFjY2VzcyBjb2xvcnMgaW4gb3VyIHBhbGV0dGUsIHdlIHVzZSBhIHZlcnkgc2ltcGxlIGN1c3RvbSBTYXNzIGZ1bmN0aW9uXG4gKiAgVGhpcyBmdW5jdGlvbiBpcyBwbGFjZWQgaGVyZSwgKGFuZCBub3QgaW4gdGhlIHRvb2xib3gpXG4gKiAgYmVjYXVzZSB3ZSB3YW50IHRvIHVzZSBpdCBpbiBvdXIgb3RoZXIgc2V0dGluZyBmaWxlc1xuXG5cdFVTQUdFOlxuXG5cdC5kZW1vIHtcblx0XHRjb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA1MDApO1xuXHR9XG5cbiAqL1xuXG5AZnVuY3Rpb24gcGFsZXR0ZSgkcGFsZXR0ZSwgJGxldmVsOiAxKSB7XG5cdEBpZiBtYXAtaGFzLWtleSgkcGFsZXR0ZXMsICRwYWxldHRlKSB7XG5cdFx0QGlmIG1hcC1oYXMta2V5KG1hcC1nZXQoJHBhbGV0dGVzLCAkcGFsZXR0ZSksICRsZXZlbCkge1xuXHRcdFx0QHJldHVybiBtYXAtZ2V0KG1hcC1nZXQoJHBhbGV0dGVzLCAkcGFsZXR0ZSksICRsZXZlbCk7XG5cdFx0fSBAZWxzZSB7XG5cdFx0XHQvLyBJZiBsZXZlbCBkb2Vzbid0IGV4aXN0IGluIG1hcCwgZ2l2ZSB0aGUgZmlyc3QgdmFsdWUgb2YgdGhlIHBhbGV0dGVcblx0XHRcdEByZXR1cm4gbnRoKG50aChtYXAtZ2V0KCRwYWxldHRlcywgJHBhbGV0dGUpLCAxKSwgMik7XG5cdFx0fVxuXHR9XG5cblx0QHdhcm4gXCJVbmtub3duIGNvbG9yOiBgI3skcGFsZXR0ZX1gIGluICRwYWxldHRlLiBcIjtcblx0QHJldHVybiBob3RwaW5rO1xufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbmZpZyBzZXR0aW5nc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuXHRbMV1cdFx0TG9nbyBkYXJrIG9yIGxpZ2h0IGNhbiBiZSBzZXQgaW4gaGVhZGVyLmJsYWRlLnBocCAvIGZvb3Rlci5ibGFkZS5waHAgJlxuXHRbMl0gXHRTZXQgdGhpcyB0byB0cnVlIHdoZW4gYmdDb2xvciBnZXRzIGEgZGFyayBjb2xvciB0aGF0IGNvbnRyYXN0IHRoZSBib2R5IGJnIGNvbG9yXG4qL1xuXG4kc2l0ZS1oZWFkZXI6IChcblx0J2JnQ29sb3InOlx0XHRcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQndGV4dENvbG9yJzpcdFx0XHRcdHBhbGV0dGUobmV1dHJhbCwgNTAwKSxcblx0J3RleHRDb2xvckhvdmVyJzpcdFx0XHRwYWxldHRlKHNlY29uZGFyeSwgNTAwKSxcblx0J3RleHRDb2xvckFjdGl2ZSc6XHRcdFx0cGFsZXR0ZShwcmltYXJ5LCA3MDApLFxuXHQnZGVjb3JhdGlvbkNvbG9yJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDMwMCksXG5cdCdkZWNvcmF0aW9uQ29sb3JBY3RpdmUnOlx0cGFsZXR0ZShwcmltYXJ5LCA1MDApLFxuXHQnbG9nby1oZWlnaHQnOlx0XHRcdFx0ODhweCxcbik7XG5cblxuJHNpdGUtaW50cm86IChcblx0J2lzRGFyayc6XHRcdFx0XHRcdHRydWUsIC8vIFsyXVxuXHQnYmdDb2xvcic6XHRcdFx0XHRcdHBhbGV0dGUodGVydGlhcnksIDUwMCksXG5cdCdiYXJDb2xvcic6XHRcdFx0XHRcdHBhbGV0dGUoc2Vjb25kYXJ5LCA1MDApLFxuXHQnY29sb3InOlx0XHRcdFx0XHRwYWxldHRlKHByaW1hcnksIDcwMCksXG5cdCdsaW5rQ29sb3InOlx0XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCA1MDApLFxuXHQnc3VibmF2QmdDb2xvcic6XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAxMDApLFxuKTtcblxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU29tZSBnbG9iYWwgc2V0dGluZ3MgdGhhdCB3ZSBwcm9iYWJseSBkb24ndCBuZWVkIHRvIGNoYW5nZVxuXG4kc2l0ZS1jb2x1bW5zLXM6XHRcdFx0NDtcbiRzaXRlLWNvbHVtbnMtbTpcdFx0XHQ4O1xuJHNpdGUtY29sdW1ucy1sOlx0XHRcdDEyO1xuJHNpdGUtY29sdW1uLXNpemU6XHRcdCAgICA5NjsgLy8gU2l6ZSBvZiBhIHNpbmdsZSBjb2x1bW4gd2hlbiB2aWV3cG9ydCBpcyBhdCBpdHMgbWF4IHdpZHRoICh1c2VkIGZvciBjYWxjdWxhdGluZyBtYXgtd2lkdGgpLlxuJHNpdGUtZ3V0dGVyLXdpZHRoOiBcdCAgICA2dnc7IC8vIFVzZWQgb25seSBmb3Igc21hbGwgc2NyZWVucy4gTXVzdCBiZSBbdnddIG9yIFtweF0sIE5PVCBbJV0uXG4kc2l0ZS1jb29raWVCYXItaGVpZ2h0OiAgICAgNjRweDsgLy8gRml4ZWQgc2l6ZSBzbyB3ZSBjYW4gb2Zmc2V0IHBhZGRpbmctYm90dG9tIG9uIHRoZSBib2R5XG5cblxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENhbGN1bGF0aW9ucyB0aGF0IGFyZSBkb25lIHdpdGggc29tZSBvZiB0aGUgZ2l2ZW4gdmFsdWVzIGFib3ZlIHRoaXMgbGluZVxuXG4kc2l0ZS1tYXgtd2lkdGg6ICRzaXRlLWNvbHVtbi1zaXplICogJHNpdGUtY29sdW1ucy1sOyAvLyBNYWluIGNvbnRhaW5lciBtYXgtd2lkdGggKHdpdGhvdXQgZ3V0dGVyKVxuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGhlIGRlZmF1bHQgYm9yZGVyLXJhZGl1cyB2YWx1ZXMgdXNlZCBpbiB0aGUgYm9yZGVyIG1peGluXG5cbiRib3JkZXItcmFkaXVzOiAoXG5cdHM6IDRweCxcblx0bTogOHB4LFxuXHRsOiAxNnB4XG4pOyIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBcdCBEZWZpbmVzIHRoZSB0eXBvZ3JhcGhpYyBiYXNlbGluZS5cbiAgIFdlIGRlZmluZSBldmVyeSBzaXplIGluIHBpeGVscywgdGhlIHVuZGVybHlpbmcgc3lzdGVtXG4gICBjb252ZXJ0cyB0aGUgcmVzcGVjdGl2ZSB1bml0cyB0byB0aGUgcmVzcG9uc2l2ZSBSRU0gdmFsdWUuXG4gXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIE91ciBiYXNlIGZvbnQtc2l6ZSBhbmQgbGluZS1oZWlnaHRcbiAqL1xuJGJhc2UtZm9udC1zaXplOiAgIFx0MTYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFx0IWRlZmF1bHQ7XG4kYmFzZS1saW5lLWhlaWdodDogXHQyNCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHQhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1yYXRpbzpcdCRiYXNlLWxpbmUtaGVpZ2h0LyRiYXNlLWZvbnQtc2l6ZSAgICFkZWZhdWx0O1xuXG4kZm9udC1zaXplczogKFxuXHQneHMnOiBcdFx0XHQoXG5cdFx0Zm9udC1zaXplOiBcdFx0MTQsXG5cdFx0bGluZS1oZWlnaHQ6IFx0MTZcblx0KSxcblx0J3MnOiBcdFx0XHRcdChcblx0XHRmb250LXNpemU6IFx0XHQxNSxcblx0XHRsaW5lLWhlaWdodDogXHQyNFxuXHQpLFxuXHQnYmFzZSc6IFx0XHQoXG5cdFx0Zm9udC1zaXplOiBcdFx0JGJhc2UtZm9udC1zaXplLFxuXHRcdGxpbmUtaGVpZ2h0OiBcdCRiYXNlLWxpbmUtaGVpZ2h0XG5cdCksXG5cdCdtJzogXHRcdFx0XHQoXG5cdFx0Zm9udC1zaXplOiBcdFx0MTgsXG5cdFx0bGluZS1oZWlnaHQ6IFx0MzJcblx0KSxcblx0J2wnOiBcdFx0XHRcdChcblx0XHRmb250LXNpemU6IFx0XHQyMCxcblx0XHRsaW5lLWhlaWdodDogXHQzMlxuXHQpLFxuXHQneGwnOiBcdFx0XHRcdChcblx0XHRmb250LXNpemU6IFx0XHQyNCxcblx0XHRsaW5lLWhlaWdodDogXHQzMlxuXHQpLFxuXHQneHhsJzogXHRcdFx0KFxuXHRcdGZvbnQtc2l6ZTogXHRcdDMyLFxuXHRcdGxpbmUtaGVpZ2h0OiBcdDQwXG5cdCksXG5cdCd4eHhsJzogXHRcdFx0KFxuXHRcdGZvbnQtc2l6ZTogXHRcdDQwLFxuXHRcdGxpbmUtaGVpZ2h0OiBcdDQwXG5cdCksXG5cdCd4eHh4bCc6IFx0XHQoXG5cdFx0Zm9udC1zaXplOiBcdFx0NDgsXG5cdFx0bGluZS1oZWlnaHQ6IFx0NDhcblx0KSxcbik7XG5cblxuLyoqXG4gKlx0SGVyZSB3ZSBhc3NpZ24gc2hvcnQgbmFtZXMgZm9yIHRoZSBmb250IGZhbWlsaWVzXG4gKi9cblxuJGZvbnQtc3lzdGVtOlx0XHQtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIjtcbiRmb250LXJvYm90bzogXHQnUm9ib3RvJywgc2Fucy1zZXJpZjsiLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRGVmaW5lIGJyZWFrcG9pbnRzIGZvciBnaXZlbiBmb3JtYXRzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8vIERlZmF1bHQgYnJlYWtwb2ludHNcbiRicmVha3BvaW50czogKFxuXHRzOiAzODQsXG5cdG06IDg0MCxcblx0bDogMTE1Mixcbik7XG5cbi8vIERldGVybWluZSBhdCB3aGljaCB2aWV3cG9ydCBzaXplIHdlIGNhbiBmaXQgaW4gYSBob3Jpem9udGFsIG1lbnUgaW5zdGVhZCBvZiB0aGUgaGFtYnVyZ2VyIG1lbnUgdG9nZ2xlXG4kYnAtaGVhZGVyLWxhcmdlOiAxMTAwO1xuXG5cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDYWxjdWxhdGUgdmlld3BvcnQgc2l6ZSB3aGVuIGNvbnRhaW5lciBjYW4ndCBncm93IGFueW1vcmVcbiRicC1tYXg6ICRzaXRlLW1heC13aWR0aCArICgoJHNpdGUtbWF4LXdpZHRoIC8gJHNpdGUtY29sdW1ucy1sKSAqIDIpOyIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEZ1bmN0aW9ucyB1c2VkIGluIGdyaWQgY2FsY3VsYXRpb25cbiAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gICogUmV0dXJuIHBlcmNlbnRhZ2UgYmFzZWQgb24gYW1vdW50IG9mIGNvbHVtbnNcbiAgKiBVc2UgcGFyZW50IGNvbHVtbiBzaXplIHRvIGFkanVzdCB0aGUgb3JpZ2luXG4gICovXG5AZnVuY3Rpb24gY2FsY3VsYXRlQ29sdW1uU2l6ZSgkY29sdW1uQ291bnQgOiAxLCAkb3JpZ2luIDogJHNpdGUtY29sdW1ucy1sKSB7XG5cdC8vIENhbGN1bGF0ZSB0aGUgd2lkdGggZm9yIGEgc2luZ2xlIGNvbHVtbiBvbiBhIGZ1bGwgZ3JpZFxuXHQkc2luZ2xlQ29sdW1uU2l6ZTogMTAwIC8gJHNpdGUtY29sdW1ucy1sO1xuXG5cdC8vIEdldCB0aGUgb3JpZ2luIHNpemUgaW4gcGVyY2VudGFnZSBmcm9tIHRoZSBmdWxsIGdyaWRcblx0JG9yaWdpblBlcmNlbnRhZ2U6ICRvcmlnaW4gLyAkc2l0ZS1jb2x1bW5zLWwgKiAxMDA7XG5cblx0Ly8gQ2FsY3VsYXRlIHNpbmdsZSBjb2x1bW4gZnJvbSBuZXcgb3JpZ2luXG5cdCRuZXdTaW5nbGVDb2x1bW5TaXplOiAkc2luZ2xlQ29sdW1uU2l6ZSAvICRvcmlnaW5QZXJjZW50YWdlICogMTAwO1xuXG5cdC8vIFJldHVybiBhbW91bnQgb2YgY29sdW1ucyBhcyBwZXJjZW50YWdlXG5cdEByZXR1cm4gKCRuZXdTaW5nbGVDb2x1bW5TaXplICogJGNvbHVtbkNvdW50KTtcbn1cblxuLyoqXG4gICogRGVmYXVsdCBmdW5jdGlvbiBmb3IgY29sdW1uc1xuICAqIFJldHVybiBhcyBwZXJjZW50YWdlXG4gICovXG5AZnVuY3Rpb24gY29sdW1uKCRjb2x1bW5Db3VudCA6IDEsICRvcmlnaW4gOiAkc2l0ZS1jb2x1bW5zLWwpIHtcblx0QHJldHVybiBjYWxjdWxhdGVDb2x1bW5TaXplKCRjb2x1bW5Db3VudCwgJG9yaWdpbikgKiAxJTtcbn1cblxuLyoqXG4gICogUmV0dXJuIGFzIHZpZXdwb3J0IHdpZHRoXG4gICovXG5AZnVuY3Rpb24gY29sdW1uVncoJGNvbHVtbkNvdW50IDogMSwgJG9yaWdpbiA6ICRzaXRlLWNvbHVtbnMtbCkge1xuXHRAcmV0dXJuIGNhbGN1bGF0ZUNvbHVtblNpemUoJGNvbHVtbkNvdW50LCAkb3JpZ2luKSAqIDF2dztcbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogRm9udCByZWxhdGVkIGZ1bmN0aW9uc1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4vKipcbiAqICBNaXhpbiBmb3Igc2V0dGluZyBmb250LXNpemUgaW4gUkVNIHRocm91Z2ggYSBTYXNzIE1hcCB3aXRoIGFsbCBhdmFpbGFibGUgc2l6ZXNcblxuICAgIFVTQUdFOlxuXG4gICAgLm15Q2xhc3Mge1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoeGwpO1xuICAgIH1cblxuICovXG5cblxuQG1peGluIGZvbnQtc2l6ZSgkZnMsICRsaDogbnVsbCkge1xuICAvLyBHZXQgY29ycmVjdCBrZXkgd2l0aCBmb250LXNpemUgYW5kIGxpbmUtaGVpZ2h0IHB4IHZhbHVlXG4gICRmb250LXNpemUtcHJvcGVydGllczogbWFwLWdldCgkZm9udC1zaXplcywgJGZzKTtcbiAgQGlmICRmb250LXNpemUtcHJvcGVydGllcyB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKG1hcC1nZXQoJGZvbnQtc2l6ZS1wcm9wZXJ0aWVzLCBmb250LXNpemUpKTtcblxuICAgIEBpZigkbGggPT0gbnVsbCl7XG4gICAgICBsaW5lLWhlaWdodDogbWFwLWdldCgkZm9udC1zaXplLXByb3BlcnRpZXMsIGxpbmUtaGVpZ2h0KSAvIG1hcC1nZXQoJGZvbnQtc2l6ZS1wcm9wZXJ0aWVzLCBmb250LXNpemUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaCAvIG1hcC1nZXQoJGZvbnQtc2l6ZS1wcm9wZXJ0aWVzLCBmb250LXNpemUpO1xuICAgIH1cbiAgfVxuICAvLyBXaGVuIG1hcHBpbmcgaXNuJ3QgZm91bmQgY2FsY3VsYXRlIGFzIGlmIFBYLXZhbHVlIHdhcyBnaXZlbiBhbmQgcmV0dXJuIFJFTSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQGlmIGlzLW51bWJlcigkZnMpIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFsdWVUb1JlbSgkZnMpO1xuXG4gICAgICBAaWYoJGxoICE9IG51bGwpe1xuICAgICAgICBsaW5lLWhlaWdodDogJGxoIC8gJGZzO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiBcIiBgI3skZnN9YCBpcyBub3QgYSB2YWxpZCB2YWx1ZS4gSXQgbXVzdCBiZSBvbmUgb2YgdGhlIGZvbGxvd2luZzogYCN7JGZvbnQtc2l6ZXN9YFwiO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vVE9ETzogcmVtb3ZlIGZ1bmN0aW9uIGFuZCB1c2VzXG5AbWl4aW4gZm9udCgkc2l6ZSwgJGxoOiBudWxsLCAkd2VpZ2h0OiBudWxsKSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc2l6ZSwgJGxoKTtcbn0iLCIvKiBNZWRpYSBxdWVyeSBtaXhpbiBmb3Igd3JpdGluZyBNb2JpbGUgRmlyc3RcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AZnVuY3Rpb24gY29udmVydEJyZWFrcG9pbnRLZXlUb1ZhbHVlKCRicmVha3BvaW50KSB7XG5cblx0QGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJyZWFrcG9pbnQpIHtcblx0XHRAcmV0dXJuIG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCk7XG5cdH1cblxuXHRAd2FybiBcIlVua25vd24gYnJlYWtwb2ludDogYCN7JGJyZWFrcG9pbnR9YCBpbiAkYnJlYWtwb2ludHMuXCI7XG5cdEByZXR1cm4gbnVsbDtcbn1cblxuQG1peGluIG1xKCRtaW46IG51bGwsICRtYXg6IG51bGwpIHtcblx0JHF1ZXJ5OiBcImFsbFwiICFkZWZhdWx0O1xuXG5cdC8vIFRyeSB0byBjb252ZXJ0ICRtaW4gdmFsdWUgaWYgbm90IG51bWJlciBvciBudWxsXG5cdEBpZih0eXBlLW9mKCRtaW4pICE9IG51bWJlciBhbmQgJG1pbiAhPSBudWxsKXtcblx0XHQkbWluOiBjb252ZXJ0QnJlYWtwb2ludEtleVRvVmFsdWUoJG1pbik7XG5cdH1cblxuXHQvLyBUcnkgdG8gY29udmVydCAkbWF4IHZhbHVlIGlmIG5vdCBudW1iZXIgb3IgbnVsbFxuXHRAaWYodHlwZS1vZigkbWF4KSAhPSBudW1iZXIgYW5kICRtYXggIT0gbnVsbCl7XG5cdFx0JG1heDogY29udmVydEJyZWFrcG9pbnRLZXlUb1ZhbHVlKCRtYXgpO1xuXHR9XG5cblx0Ly8gc2V0IGJvdGggbWluIGFuZCBtYXhcblx0QGlmICgkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCkge1xuXHRcdCRxdWVyeTogXCIobWluLXdpZHRoOiAjeyRtaW59cHgpIGFuZCAobWF4LXdpZHRoOiAjeyRtYXggLSAxfXB4KVwiO1xuXHR9XG5cdC8vIHNldCBqdXN0IG1pblxuXHRAZWxzZSBpZiAoJG1pbiAhPSBudWxsIGFuZCAkbWF4ID09IG51bGwpIHtcblx0XHQkcXVlcnk6IFwiKG1pbi13aWR0aDogI3skbWlufXB4KVwiO1xuXHR9XG5cdC8vIHNldCBqdXN0IG1heFxuXHRAZWxzZSBpZiAoJG1pbiA9PSBudWxsIGFuZCAkbWF4ICE9IG51bGwpIHtcblx0XHQkcXVlcnk6IFwiKG1heC13aWR0aDogI3skbWF4IC0gMX1weClcIjtcblx0fVxuXG5cdEBtZWRpYSBzY3JlZW4gYW5kICN7JHF1ZXJ5fSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFRvb2xib3ggZnVuY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4vKipcbiAqICBNYXRocyBoZWxwZXJzLlxuICogIEhhbHZlIGFuZCBkb3VibGUgbnVtYmVycywgcmV0dXJuaW5nIHJvdW5kZWQgaW50ZWdlcnMuXG5cbiAgICBVU0FHRTpcblxuICAgIC5mb28ge1xuICAgICAgICBwYWRkaW5nOiBoYWx2ZSgzMHB4KTtcbiAgICB9XG5cbiAqL1xuXG5AZnVuY3Rpb24gcXVhcnRlcigkbnVtYmVyKSB7XG5cdEByZXR1cm4gcm91bmQoJG51bWJlciAvIDQpO1xufVxuXG5AZnVuY3Rpb24gaGFsdmUoJG51bWJlcikge1xuXHRAcmV0dXJuIHJvdW5kKCRudW1iZXIgLyAyKTtcbn1cblxuQGZ1bmN0aW9uIGRvdWJsZSgkbnVtYmVyKSB7XG5cdEByZXR1cm4gcm91bmQoJG51bWJlciAqIDIpO1xufVxuXG5AZnVuY3Rpb24gdHJpcGxlKCRudW1iZXIpIHtcblx0QHJldHVybiByb3VuZCgkbnVtYmVyICogMyk7XG59XG5cbkBmdW5jdGlvbiBxdWFkcnVwbGUoJG51bWJlcikge1xuXHRAcmV0dXJuIHJvdW5kKCRudW1iZXIgKiA0KTtcbn1cblxuXG4vKipcbiAqICBSZW1vdmUgdGhlIHVuaXQgb2YgYSBsZW5ndGhcbiAqICBAcGFyYW0ge051bWJlcn0gJG51bWJlciAtIE51bWJlciB0byByZW1vdmUgdW5pdCBmcm9tXG4gKiAgQHJldHVybiB7TnVtYmVyfSAtIFVuaXRsZXNzIG51bWJlclxuICovXG5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW1iZXIpIHtcblx0QGlmIHR5cGUtb2YoJG51bWJlcikgPT0gJ251bWJlcicgYW5kIG5vdCB1bml0bGVzcygkbnVtYmVyKSB7XG5cdFx0QHJldHVybiAkbnVtYmVyIC8gKCRudW1iZXIgKiAwICsgMSk7XG5cdH1cblxuXHRAcmV0dXJuICRudW1iZXI7XG59XG5cblxuLyogQ2hlY2sgaWYgdmFsdWUgaXMgbnVtYmVyICovXG5cbkBmdW5jdGlvbiBpcy1udW1iZXIoJHZhbHVlKSB7XG5cdEByZXR1cm4gdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInO1xufVxuXG5cbi8qIFZhbHVlIHRvIEVtICovXG5cbkBmdW5jdGlvbiB2YWx1ZVRvUmVtKCR2YWx1ZSkge1xuXHQkbm9Vbml0czogc3RyaXAtdW5pdCgkdmFsdWUpO1xuXHRAcmV0dXJuICN7JG5vVW5pdHMgLyAxNiAqIDFyZW19O1xufVxuXG4vKiBWYWx1ZSB0byBSZW0gKi9cblxuQGZ1bmN0aW9uIHZhbHVlVG9FbSgkdmFsdWUpIHtcblx0JG5vVW5pdHM6IHN0cmlwLXVuaXQoJHZhbHVlKTtcblx0QHJldHVybiAjeyRub1VuaXRzIC8gMTYgKiAxZW19O1xufVxuXG5cblxuXG4vLyBTZXQgYSBmaXhlZCBzcGFjZSBiYXNlZCBvbiB0aGUgOHB0IGdyaWRcbi8vIEp1c3QgcGFzcyB0aGUgZnVuY3Rpb24gYSBudW1iZXIgZXF1YWwgdG8gdGhlIG51bWJlciBvZiAoOClwb2ludHMgeW91IG5lZWRcbkBmdW5jdGlvbiBzcGFjZSgkc2l6ZTogJzEnKSB7XG4gIEByZXR1cm4gOHB4ICogJHNpemU7XG59XG5cblxuXG4vKlxuICogU2V0IHZlcnRpY2FsIHNwYWNpbmcgb25seSBmb3IgbW9iaWxlIHZpZXdwb3J0XG5cbiBVU0FHRTpcblxuIC5leGFtcGxlIHtcblx0IEBpbmNsdWRlIHZzcGFjaW5nLXMoXG5cdFx0XHRcdCdtYXJnaW4tdG9wJyAxXG5cdFx0KTtcbiAgfVxuXG4gKi9cblxuXG5cbkBtaXhpbiB2c3BhY2luZy1zKCR2YWx1ZXMuLi4pIHtcbiAgQGluY2x1ZGUgbXEoJG1heDogbSkge1xuICAgIEBlYWNoICRpIGluICR2YWx1ZXMge1xuICAgICAgLy8gQnkgc2V0dGluZyBndXR0ZXIgc2l6ZSBhcyBhIGhhbHZlIGNvbHVtbiB3aWR0aCB3ZSBjYW4gbWFrZSAnc3F1YXJlcycgb24gbW9iaWxlXG4gICAgICAje250aCgkaSwgMSl9OiAjeygkc2l0ZS1ndXR0ZXItd2lkdGggKiAyKSAqIG50aCgkaSwgMil9O1xuICAgIH1cbiAgfVxufVxuXG4vKlxuICogU2V0IHZlcnRpY2FsIHNwYWNpbmcgZm9yIHZpZXdwb3J0IGxhcmdlciB0aGFuIG1vYmlsZVxuICogSW4gZmxleGlibGUgdW5pdHMgKHZ3KSBhbmQgb24gbWF4IHZpZXdwb3J0IGluIGEgZml4ZWQgYW1vdW50IChweClcblxuIFVTQUdFOlxuXG4gLmV4YW1wbGUge1xuXHQgQGluY2x1ZGUgdnNwYWNpbmctbS11cChcblx0XHRcdFx0J3BhZGRpbmctdG9wJyAwLjMzLFxuXHRcdFx0XHQnbWFyZ2luLWJvdHRvbScgMC41XG5cdFx0KTtcbiAgfVxuXG4gKi9cblxuQG1peGluIHZzcGFjaW5nLW0tdXAoJHZhbHVlcy4uLikge1xuICBAaW5jbHVkZSBtcShtLCBsKSB7XG4gICAgQGVhY2ggJGkgaW4gJHZhbHVlcyB7XG4gICAgICAje250aCgkaSwgMSl9OiAjeygxIC8gKCRzaXRlLWNvbHVtbnMtbSArIDIpICogMTAwKSAqIG50aCgkaSwgMil9dnc7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIG1xKGwsICRicC1tYXgpIHtcbiAgICBAZWFjaCAkaSBpbiAkdmFsdWVzIHtcbiAgICAgICN7bnRoKCRpLCAxKX06ICN7KDEgLyAoJHNpdGUtY29sdW1ucy1sICsgMikgKiAxMDApICogbnRoKCRpLCAyKX12dztcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgbXEoJGJwLW1heCkge1xuICAgIEBlYWNoICRpIGluICR2YWx1ZXMge1xuICAgICAgI3tudGgoJGksIDEpfTogI3soJHNpdGUtbWF4LXdpZHRoIC8gJHNpdGUtY29sdW1ucy1sKSAqIG50aCgkaSwgMil9cHg7XG4gICAgfVxuICB9XG59XG5cbi8qXG4gKiBGcm9tIHZhbHVlcyBnaXZlbiByZXR1cm4gdGhlIGNvcnJlY3Qgdi1zcGFjaW5nIGZvciBlYWNoIGJyZWFrcG9pbnRcbiAqL1xuQG1peGluIHZzcGFjaW5nKCR2YWx1ZXMuLi4pIHtcblx0QGluY2x1ZGUgdnNwYWNpbmctcygkdmFsdWVzLi4uKTtcblx0QGluY2x1ZGUgdnNwYWNpbmctbS11cCgkdmFsdWVzLi4uKTtcbn1cblxuXG4vKipcbiAqXHRBIHNpbXBsZSBmdW5jdGlvbiBmb3Igc2V0dGluZyBhIGNvbnNpc3RlbnQgYm9yZGVyLXJhZGl1c1xuXG5cdFVTQUdFOlxuXG5cdC5jYXJkIHtcblx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzO1xuXHR9XG5cblx0LmNhcmQtLWFsdCB7XG5cdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhsKTtcblx0fVxuXG4gKi9cbkBtaXhpbiBib3JkZXItcmFkaXVzKCR0eXBlOiBzKSB7XG5cdEBpZiAoJHR5cGUgPT0gJ3MnKSB7XG5cdFx0Ym9yZGVyLXJhZGl1czogbWFwLWdldCgkYm9yZGVyLXJhZGl1cywgcyk7XG5cdH1cblx0QGlmICgkdHlwZSA9PSAnbScpIHtcblx0XHRib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBtKTtcblx0fVxuXHRAaWYgKCR0eXBlID09ICdsJykge1xuXHRcdGJvcmRlci1yYWRpdXM6IG1hcC1nZXQoJGJvcmRlci1yYWRpdXMsIGwpO1xuXHR9XG59XG5cbi8qKlxuICogTG9ib3RvbWl6ZWQgT3dsIFNlbGVjdG9yIG1peGluOlxuICogLSBTZXQgc3BhY2luZyBmb3IgY29uc2VjdXRpdmUgaXRlbXMgd2l0aCBtYXJnaW4tdG9wIG9uIGFsbCBidXQgdGhlIGZpcnN0IGl0ZW1cblxuXHRVU0FHRTpcblxuXHQuYm94IHtcblx0XHRAaW5jbHVkZSBvd2wtY2hpbGRyZW47XG5cdH1cblxuXHQuY2FyZF9faXRlbSB7XG5cdFx0QGluY2x1ZGUgb3dsO1xuXHR9XG5cbiAqL1xuXG4vKlxuICogTG9ib3RvbWl6ZWQgb3dsIHNlbGVjdG9yLlxuICogLSBHaXZlcyB0aGUgY2hpbGRyZW4gb2YgdGhlIGVsZW1lbnQgc3BhY2luZ1xuICogLSBodHRwczovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvYXhpb21hdGljLWNzcy1hbmQtbG9ib3RvbWl6ZWQtb3dsc1xuICovXG5AbWl4aW4gb3dsLWNoaWxkcmVuKCRtYXJnaW46ICN7JGxpbmUtaGVpZ2h0LXJhdGlvfXJlbSkge1xuXHQmID4gKiArICoge1xuXHRcdG1hcmdpbi10b3A6ICRtYXJnaW47XG5cdH1cbn1cblxuLy8gR2l2ZXMgdGhlIGVsZW1lbnQgaXRzZWxmIHNwYWNpbmdcbkBtaXhpbiBvd2woJG1hcmdpbjogI3skbGluZS1oZWlnaHQtcmF0aW99cmVtKSB7XG5cdCYgKyAmIHtcblx0XHRtYXJnaW4tdG9wOiAkbWFyZ2luO1xuXHR9XG59XG5cbi8qKlxuICogIFNob3cgaHlwaGVucyBmb3IgZXZlcnkgYnJvd3NlciBzdXBwb3J0aW5nIGl0XG4gKiAgYW5kIHdpbGwgYnJlYWsgbGluZXMgaW4gZXZlcnkgb3RoZXIgYnJvd3NlclxuICovXG5cbkBtaXhpbiBoeXBoZW5hdGUge1xuXHRvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cdC13ZWJraXQtaHlwaGVuczogYXV0bztcblx0LW1zLWh5cGhlbnM6IGF1dG87XG5cdGh5cGhlbnM6IGF1dG87XG59XG5cblxuLy8gd2hlbiBob3ZlciBvciBhY3RpdmUgZGlzYWJsZSBvdXRsaW5lIHN0eWxpbmdcbkBtaXhpbiBkaXNhYmxlT3V0bGluZUZvck1vdXNlIHtcblx0Jjpob3Zlcixcblx0JjphY3RpdmUge1xuXHRcdG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcblx0fVxufVxuXG5cblxuLypcbiAqICBSZXN0cmljdCBhbiBlbGVtZW50IHRvIGEgbWF4LXdpZHRoIGZvciBjcmVhdGluZyBndXR0ZXJzIG9uIHRoZSBzaWRlXG4gKi9cblxuQG1peGluIGNvbnRhaW4oJG9uTWVkaXVtOiB0cnVlKSB7XG5cdHdpZHRoOiBjYWxjKDEwMCUgLSAje2RvdWJsZSgkc2l0ZS1ndXR0ZXItd2lkdGgpfSk7IC8vIE1ha2luZyBzdXJlIGl0IGRvZXNu4oCZdCBnZXQgdG8gc21hbGwgd2l0aCBsaXR0bGUgY29udGVudFxuXHRtYXJnaW4tbGVmdDogYXV0bztcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRAaWYoJG9uTWVkaXVtID09IHRydWUpIHtcblx0XHRcdFx0d2lkdGg6IGNhbGMoKDEwMCUgLyAjeyRzaXRlLWNvbHVtbnMtbSArIDJ9KSAqICN7JHNpdGUtY29sdW1ucy1tfSk7XG4gICAgfSBAZWxzZSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG4gIH1cblxuXHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0d2lkdGg6IGNhbGMoKDEwMCUgLyAjeyRzaXRlLWNvbHVtbnMtbCArIDJ9KSAqICN7JHNpdGUtY29sdW1ucy1sfSk7XG5cdFx0bWF4LXdpZHRoOiAjeyRzaXRlLW1heC13aWR0aH1weDtcblx0fVxufVxuXG5cbkBtaXhpbiBndXR0ZXJQYWRkaW5nKCRtcSl7XG5cdCRjb2x1bW5Db3VudDogJHNpdGUtY29sdW1ucy1zO1xuXG5cdEBpZigkbXEgPT0gbSkgeyAkY29sdW1uQ291bnQ6ICRzaXRlLWNvbHVtbnMtbTsgfVxuXHRAaWYoJG1xID09IGwpIHsgJGNvbHVtbkNvdW50OiAkc2l0ZS1jb2x1bW5zLWw7IH1cblxuXHRAaW5jbHVkZSBtcSgkbXEpIHtcblx0XHRwYWRkaW5nLWxlZnQ6IHBlcmNlbnRhZ2UoMSAvICgkY29sdW1uQ291bnQgKyAyKSk7XG5cdFx0cGFkZGluZy1yaWdodDogcGVyY2VudGFnZSgxIC8gKCRjb2x1bW5Db3VudCArIDIpKTtcblx0fVxufVxuXG5cbi8qXG4gKlx0QSBtaXhpbiB0byBzZXQgZWxlbWVudHMgdG8gaXRzIG93biBuYW1lZCBncmlkLWFyZWFcbiAqL1xuXG5AbWl4aW4gdGVtcGxhdGUoJGVsZW1lbnRzLi4uKSB7XG5cdEBlYWNoICRlbGVtZW50IGluICRlbGVtZW50cyB7XG5cdFx0Jl9fI3skZWxlbWVudH0ge1xuXHRcdFx0Z3JpZC1hcmVhOiAkZWxlbWVudDtcblx0XHRcdGRpc3BsYXk6IGJsb2NrOyAvLyBJbiBJRSBncmlkIGl0ZW1zIGNhbid0IGJlIGlubGluZVxuXHRcdH1cblx0fVxufVxuIiwiLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqICBUaGUgJ3otaW5kZXgtbWFwJyBpcyB1c2VkIGZvciBtYW5hZ2luZyB0aGUgZWxlbWVudHMgc3RhY2tpbmcgb3JkZXIgaW4gdGhlICdyb290JyBzdGFja2luZyBjb250ZXh0XG4gKiAgVGhpcyB3YXkgd2UgaGF2ZSBhIG92ZXJ2aWV3IG9mIGFsbCB0aGUgei1pbmRleCB2YWx1ZXMgdGhhdCBhcmUgdXNlZCBhY3Jvc3MgdGhlIHByb2plY3QuXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbiR6LWluZGV4OiAoXG5cdHotdmlzaWJsZS1ncmlkOlx0XHRcdDEwMDAwLFxuXHR6LWNvb2tpZTpcdFx0IFx0XHRcdFx0OTk5OSxcblx0ei1vdmVybGF5LW1lbnU6XHRcdFx0MTAwLFxuXHR6LWhlYWRlcjogXHRcdFx0XHRcdDUwLFxuXHR6LWJvZHk6XHRcdFx0XHRcdFx0XHQ0MCxcblx0ei1mb290ZXI6XHRcdFx0XHQgXHRcdDIwLFxuXHR6LXN1YmZvb3RlcjpcdFx0XHRcdDEwLFxuKTtcblxuXG4vKipcbiAgICBVU0FHRTpcblxuICAgIEBpbmNsdWRlIHooei1tb2RhbCk7XG5cbiAqL1xuXG5AbWl4aW4geigkbGFiZWwpIHtcblx0ei1pbmRleDogbWFwLWdldCgkei1pbmRleCwkbGFiZWwpO1xufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBCYXNpYyBlbGVtZW50cyAobm8gY2xhc3Mgc2VsZWN0b3JzIGFsbG93ZWQpXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFNldCB1cCB0aGUgaHRtbFxuICpcbiAqIDEuIE1ha2VzIHN1cmUgdGhhdCBzb21lIGZvbnRzIGFyZSBiZXR0ZXIgcmVuZGVyZWRcbiAqIDIuIFNldCBmb250IHRvIGxpbmluZyBmaWd1cmVzXG4gKlxuICogMy4gQXZvaWQgdGhlIElFIDEwLTExIGBtaW4taGVpZ2h0YCBidWcuXG4gKiA0LiBVc2UgYCVgIGluc3RlYWQgb2YgYHZoYCBzaW5jZSBgdmhgIGlzIGJ1Z2d5IGluIG9sZGVyIG1vYmlsZSBTYWZhcmkuXG4gKi9cblxuaHRtbCB7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwibG51bVwiO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbmJvZHkge1xuICBAaW5jbHVkZSBmb250LXNpemUoYmFzZSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1yYXRpbztcbiAgZm9udC1mYW1pbHk6ICRmb250LXJvYm90bztcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA1MDApO1xuICBiYWNrZ3JvdW5kOiBwYWxldHRlKG5ldXRyYWwsIDApO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGhlaWdodDogMTAwJTsgLyogMywgNCAqL1xufVxuXG5mb290ZXIge1xuICBmbGV4OiAxIDAgYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuXG4vKipcbiAqIFsxXSBNYWtlIHN1cmUgZWxlbWVudHMgbGlrZSBpbnB1dCBhbmQgdGV4dGFyZWEgaW5oZXJpdCBzb21lIGJhc2UgcHJvcGVydGllc1xuICogICAgIGh0dHBzOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTYvMTEvY3NzLWluaGVyaXRhbmNlLWNhc2NhZGUtZ2xvYmFsLXNjb3BlLW5ldy1vbGQtd29yc3QtYmVzdC1mcmllbmRzL1xuICpcbiAqIFsyXSBTZXR0aW5nIGJveC1zaXppbmcgdGhlIGJlc3Qgd2F5IHBlcjpcbiAqICAgICBodHRwczovL2Nzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZS9cbiAqL1xuKiB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJixcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cbn1cblxuLyoqXG4gKiBbMV0gVHVybiBvZmYgdGV4dC1zaGFkb3cgd2hlbiBzZWxlY3RpbmcgdGV4dCBmb3IgYmV0dGVyIHJlYWRhYmlsaXR5XG4gKi9cbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogcGFsZXR0ZShzZWNvbmRhcnksIDUwMCk7XG4gIGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDApO1xuICB0ZXh0LXNoYWRvdzogbm9uZTsgLyogWzFdICovXG59XG5cbi8qIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBhcm91bmQgZmlndXJlXG4gKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBbMV0gU2V0dGluZyAndmVydGljYWwtYWxpZ24nIHJlbW92ZXMgdGhlIHdoaXRlc3BhY2UgdGhhdCBhcHBlYXJzIHVuZGVyICdpbWcnXG4gKlx0ICAgZWxlbWVudHMgd2hlbiB0aGV5IGFyZSBkcm9wcGVkIGludG8gYSBwYWdlIGFzLWlzLiBTYWZlciBhbHRlcm5hdGl2ZSB0b1xuICpcdCAgIHVzaW5nICdkaXNwbGF5OiBibG9jazsnLlxuICogWzJdIFJlbW92ZSBib3JkZXIgLyBlc3BlY2lhbGx5IG9uIG9sZGVyIGJyb3dzZXJzXG4gKi9cbmltZywgc3ZnIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLypbMV0qL1xuICBib3JkZXI6IG5vbmU7IC8qWzJdKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4vKipcbiAqICBOZWVkZWQgZm9yIGlPUyB0byBwcmV2ZW50IGlucHV0IHpvb21pbmdcbiAqICBodHRwczovL3V4Y2VsbGVuY2UuY29tLzIwMTQvMDEvMTUvcXVpY2stZml4LWluY3JlYXNlLWZvbnQtc2l6ZS10by0xNnB4LXRvLWZpeC1pbnB1dC16b29tXG4gKi9cbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cblxuLy8gTGlua3Mgd2l0aCBubyBjbGFzcyBnZXQgYSBkZWZhdWx0IGhvdmVyXG5hOm5vdChbY2xhc3NdKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6IHBhbGV0dGUoZmVlZGJhY2ssIGFjdGlvbik7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBhdXRvOyAvLyBwcmV0dHkgdW5kZXJsaW5pbmcgbGlua3NcblxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJhY2tncm91bmQ6IHBhbGV0dGUoZmVlZGJhY2ssIGFjdGlvbik7XG4gICAgY29udGVudDogJyc7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4zcywgb3BhY2l0eSAwLjNzLCB0cmFuc2Zvcm0gMC4zcztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUT0RPOiBJcyB0aGlzIHRoZSByaWdodCB3YXkgdG8gcmVzZXQgYWxsIG1hcmdpbj8/XG4vLyBSZXNldCBhbGwgdG9wIG1hcmdpbnNcbmgxLGgyLGgzLGg0LGg1LGg2LGhncm91cCxcbnVsLG9sLGRkLFxucCxmaWd1cmUsXG5wcmUsdGFibGUsZmllbGRzZXQsaHIge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufSIsImgxIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHh4eGwpO1xufVxuXG5oMiB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSh4eGwpO1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG5oMyB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSh4bCk7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbmg0IHtcblx0QGluY2x1ZGUgZm9udC1zaXplKGwpO1xuXHRmb250LXdlaWdodDogNTAwO1xufVxuXG5oNSwgaDYge1xuXHRAaW5jbHVkZSBmb250LXNpemUoYmFzZSk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufSIsIi8qKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiAgTGlzdHNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuLyoqXG4gKlx0RGVmYXVsdCBpbmRlbnRhdGlvbiB2YWx1ZSBmb3IgbGlzdHNcbiAqL1xuXG51bCxcbm9se1xuXHRwYWRkaW5nOiAwO1xuXHRtYXJnaW46IDA7XG5cdG1hcmdpbi1sZWZ0OiAxLjEyNWVtO1xufVxuXG5kZHtcblx0bWFyZ2luLWxlZnQ6IDA7XG59XG5cblxuXG4vKipcbiAqXHRSZW1vdmUgZXh0cmEgdmVydGljYWwgc3BhY2luZyB3aGVuIG5lc3RpbmcgbGlzdHMuXG4gKi9cblxubGkge1xuXHQ+IHVsLFxuXHQ+IG9sIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG59IiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogQ29udGFpblxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4ubC1jb250YWluIHtcbiAgQGluY2x1ZGUgY29udGFpbjtcbn0iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFNwbGl0IGxheW91dCBpbiAyIGVxdWFsIGNvbHVtbnNcbiAqXG4gKiBVbnRpbCB2aWV3cG9ydCBpcyB3aWRlIGVub3VnaCB0aGUgY29sdW1ucyBhcmUgc3RhY2tlZCB2ZXJ0aWNhbGx5XG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4ubC1zcGxpdCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcblx0aGVpZ2h0OiAxMDAlOyAvLyBzdHJldGNoIGl0IG91dCBpbiBpdHMgY29udGFpbmVyXG5cblx0Ly8gU2V0IHNpZGUgYnkgc2lkZSBmcm9tIG1lZGl1bSB2aWV3cG9ydHMgYW5kIHVwXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHR9XG59XG5cblxuLyoqXG4gKiBTcGVjaWFsIGNvbnRhaW4gdmVyc2lvbiBmb3Igc3BsaXQuXG4gKiBEb2Vzbid0IHJlc3RyYWluIGNvbnRlbnQgb24gbWVkaXVtIHZpZXdwb3J0XG4gKi9cblxuLmwtc3BsaXQtLWNvbnRhaW4ge1xuXHRAaW5jbHVkZSBjb250YWluKCRvbk1lZGl1bTogZmFsc2UpO1xufVxuXG5cbi5sLXNwbGl0X19jb2x1bW4ge1xuXG5cdC8vIE9uIGRlc2t0b3AgY29sdW1ucyBhcmUgNTAvNTBcblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNiwgMTIpO1xuXHR9XG5cblx0Ly8gTWFpbiBjb250ZW50IGdvZXMgZmlyc3QsIHVzdWFsbHkgdGV4dFxuXHQmOmZpcnN0LWNoaWxkIHtcblx0XHRAaW5jbHVkZSBtcShtLCBsKSB7XG5cdFx0XHR3aWR0aDogY29sdW1uKDUsIDgpO1xuXHRcdFx0cGFkZGluZy1yaWdodDogY29sdW1uKDEsIDgpO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IGNvbHVtbigxLCAxMik7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiBjb2x1bW4oMSwgMTIpO1xuXHRcdH1cblx0fVxuXG5cdC8vIHNlY29uZGFyeSBjb250ZW50IGdvZXMgbGFzdCwgdXN1YWxseSBhbiBpbWFnZSBvciBhc2lkZSB0ZXh0XG5cdCY6bGFzdC1jaGlsZCB7XG5cdFx0Ly8gQ3JlYXRlIHZlcnRpY2FsIHNwYWNpbmcgb24gbW9iaWxlXG5cdFx0QGluY2x1ZGUgdnNwYWNpbmctcyhcblx0XHRcdFx0J21hcmdpbi10b3AnIDAuNVxuXHRcdCk7XG5cdFx0QGluY2x1ZGUgbXEobSwgbCkge1xuXHRcdFx0d2lkdGg6IGNvbHVtbigzLCA4KTtcblx0XHR9XG5cdH1cblxuXHQvLyBWaXN1YWxseSBzd2l0Y2ggY29sdW1ucyBvbiBtZWRpdW0gJiBsYXJnZSB2aWV3cG9ydHNcblx0Lmwtc3BsaXQtLWlzLXJldmVyc2VkICYge1xuXHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0b3JkZXI6IDI7XG5cblx0XHRcdEBpbmNsdWRlIG1xKG0sIGwpIHtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiBjb2x1bW4oMSwgOCk7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogY29sdW1uKDEsIDEyKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuQGluY2x1ZGUgbXEobSwgbCkge1xuXHQubC1zcGxpdC0tYnJlYWtvdXQtb24tbSB7XG5cdFx0Lmwtc3BsaXRfX2NvbHVtbiB7XG5cdFx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0d2lkdGg6IGNvbHVtbig2LCAxMCk7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogY29sdW1uKDEsIDEwKTtcblx0XHRcdFx0cGFkZGluZy1yaWdodDogY29sdW1uKDEsIDEwKTtcblx0XHRcdH1cblx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdHdpZHRoOiBjb2x1bW4oNCwgMTApO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cbi8qKlxuICogV2hlbiB0aGVyZSBpcyBvbmx5IDEgY29sdW1uLCBhbGlnbiBpdCB0byB0aGUgbWlkZGxlIGFuZCBjb250YWluIHRoZSB3aWR0aFxuICogT25seSBvbmUgY29sdW1uIGlzIHVzZWQgZS5nLiBpbiB0aGUgdGFic2xpZGVyIHdoZW4gdGhlcmUgaXMgbm8gaW1hZ2Ugc2V0XG4gKi9cbi5sLXNwbGl0X19jb2x1bW46b25seS1jaGlsZCB7XG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRtYXJnaW46IDAgYXV0bztcblx0XHR3aWR0aDogY29sdW1uKDYsIDgpO1xuXHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHR9XG5cdEBpbmNsdWRlIG1xKGwpIHtcblx0XHR3aWR0aDogY29sdW1uKDYsIDEyKTtcblx0XHRwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcblx0fVxufVxuXG5cbi8vIENvbHVtbnMgdGhhdCBoYXZlIHRleHQgaW5zdGVhZCBvZiBhbiBpbWFnZSBuZWVkIHNvbWUgcGFkZGluZyBvbiB0b3Bcbi8vIHRvIGFsaWduIHRoZW0gd2l0aCB0aGUgb3RoZXIgY29sdW1uIHRoYXQgaGFzIHBhZGRpbmctdG9wIHRvb1xuLmwtc3BsaXRfX2NvbHVtbi0tdnBhZCB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDUpO1xuXHRtYXJnaW4tYm90dG9tOiBzcGFjZSg1KTtcblxuXHRAaW5jbHVkZSBtcShtKXtcblx0XHRtYXJnaW4tdG9wOiBzcGFjZSgxMCk7XG5cdFx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMTApO1xuXHR9XG59XG5cblxuLy8gQ3JlYXRlIGEgY29sdW1uIGV4dHJhIHdoaXRlIHNwYWNlIHRvIHRoZSBsZWZ0IChvbiBsYXJnZSB2aWV3cG9ydHMpXG5AaW5jbHVkZSBtcShsKSB7XG5cdC5sLXNwbGl0X19jb2x1bW4tLWxlZnRwYWQge1xuXHRcdHBhZGRpbmctbGVmdDogY29sdW1uKDEsMTIpO1xuXHR9XG59IiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogUmVzdHJpY3RcbiAqXG4gKiBXaGVuIGEgYmxvY2sgc2hvdWxkbid0IHRha2UgdXAgdGhlIHdob2xlIHdpZHRoIG9mIHRoZSBjb250YWluZXJcbiAqIHdlIGNhbiByZXN0cmljdCB0aGUgbWF4aW11bSB3aWR0aFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4ubC1yZXN0cmljdC1uYXJyb3cge1xuICBAaW5jbHVkZSBtcShtKSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiBjb2x1bW4oNiw4KTtcbiAgICBtYXgtd2lkdGg6IDM4ZW07XG4gIH1cbiAgQGluY2x1ZGUgbXEobCl7XG4gICAgd2lkdGg6IGNvbHVtbig2LDEyKTtcbiAgfVxufVxuXG4ubC1yZXN0cmljdC13aWRlIHtcbiAgQGluY2x1ZGUgbXEobSl7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiBjb2x1bW4oNyw4KTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKGwpe1xuICAgIHdpZHRoOiBjb2x1bW4oOCwxMik7XG4gIH1cbn0iLCIvKiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIENvbXBvbmVudHNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG5AaW1wb3J0IFwiY29tcG9uZW50cy5icmVhZGNydW1iXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5idXR0b25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmdob3N0YnV0dG9uXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5jYXJkXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5jbG9zZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuY29ubmVjdFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuZGF0YVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuZGF0ZUxhYmVsXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5kb3dubG9hZExpc3RcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmV2ZW50Q2FyZFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuZmlsZVVwbG9hZFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuZm9ybUdyb3VwXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5mb3JtRmVlZGJhY2tcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmhhbWJ1cmdlclwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuaGVhZGluZ1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuaGVyb1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMuaW5wdXRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLmxhbmd1YWdlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5uYXZcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnBhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnBhZ2VUaXRsZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMucHJvamVjdG9yXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5zZXJ2aWNlUG9pbnRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnNpdGVtYXBcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnNraXBMaW5rXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy5zbGlkZS1pbmRpY2F0b3JcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnN1Ym5hdlwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMudGV4dC1idXR0b25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzLnRvZ2dsZVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMudHJhZGVtYXJrXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy52YWNhbmN5UHJvcGVydGllc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMudmlkZW9cIjsiLCIuYy1icmVhZGNydW1iIHtcblx0cGFkZGluZy1ib3R0b206IDRweDsgLy8gbWFrZSBzdXJlIHRvdGFsIGhlaWdodCB3aWxsIGJlIGRpdmlzaWJsZSBieSA4XG4gfVxuXG4uYy1icmVhZGNydW1iX19saXN0IHtcblx0bWFyZ2luOiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG59XG5cblxuLmMtYnJlYWRjcnVtYl9faXRlbSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cblx0JjpudGgtY2hpbGQobisyKSB7XG5cdFx0JiAuYy1icmVhZGNydW1iX19pY29uIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHR3aWR0aDogc3BhY2UoMyk7XG5cdFx0XHRoZWlnaHQ6IHNwYWNlKDMpO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IHNwYWNlKDEpO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiBzcGFjZSgxKTtcblx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcblx0XHRcdC8vY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNTAwKTtcblx0XHRcdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDkwMCk7XG5cdFx0fVxuXHR9XG59XG5cbi5jLWJyZWFkY3J1bWJfX2xpbmsge1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA1MDApO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0LmMtYnJlYWRjcnVtYl9faXRlbS0tbGFzdCAmIHtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogQnV0dG9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtYnV0dG9uOiAoXG5cdCdjb2xvcic6XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2JnY29sb3InOlx0XHRcdHBhbGV0dGUoc2Vjb25kYXJ5LCA1MDApLFxuXHQnYmdjb2xvci1ob3Zlcic6XHRzY2FsZS1jb2xvcihwYWxldHRlKHNlY29uZGFyeSwgNTAwKSwgJGxpZ2h0bmVzczogLTIwJSksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uYy1idXR0b24ge1xuXHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKG0pO1xuXHRAaW5jbHVkZSBmb250LXNpemUoeHMpO1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGNvbG9yOiBtYXAtZ2V0KCRjLWJ1dHRvbiwgJ2NvbG9yJyk7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGMtYnV0dG9uLCAnYmdjb2xvcicpO1xuXHR0ZXh0LXNoYWRvdzogMCAwIDRweCByZ2JhKDAsMCwwLDAuMik7XG5cdGJvcmRlcjogbm9uZTtcblx0cGFkZGluZzogc3BhY2UoMikgMDtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHRcdGJveC1zaGFkb3c6IDAgMCAwIDFweCBwYWxldHRlKG5ldXRyYWwsIDApLCAwIDAgNXB4IDJweCBtYXAtZ2V0KCRjLWJ1dHRvbiwgJ2JnY29sb3InKTtcblx0fVxuXHQmOmFjdGl2ZTpub3QoOmRpc2FibGVkKSB7XG5cdFx0b3V0bGluZTogbm9uZTtcblx0XHRib3gtc2hhZG93OiBub25lO1xuXHR9XG5cdCY6ZGlzYWJsZWQge1xuXHRcdG9wYWNpdHk6IDAuNTtcblx0XHRjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXHR9XG5cblx0Ly8gUHNldWRvIGVsZW1lbnQgZm9yIGFuaW1hdGluZyBob3ZlclxuXHQmOjphZnRlciB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogMTtcblx0XHR0b3A6IGNhbGMoNTAlIC0gMnB4KTtcblx0XHRsZWZ0OiBjYWxjKDUwJSAtIDJweCk7XG5cdFx0d2lkdGg6IDRweDtcblx0XHRoZWlnaHQ6IDRweDtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjLWJ1dHRvbiwgJ2JnY29sb3ItaG92ZXInKTtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHR0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm07XG5cdFx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMC41cztcblx0fVxuXG5cdCY6aG92ZXI6bm90KDpkaXNhYmxlZCk6OmFmdGVyIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMTAwKTtcblx0fVxufVxuXG4uYy1idXR0b25fX3RleHQge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDI7XG5cdHBhZGRpbmc6IDAgc3BhY2UoMyk7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHQuYy1idXR0b24tLWljb24gJiB7XG5cdFx0cGFkZGluZy1yaWdodDogc3BhY2UoMik7XG5cdH1cbn1cblxuLmMtYnV0dG9uX19pY29uIHtcblx0ZGlzcGxheTogbm9uZTsgLy8gQnkgZGVmYXVsdCBpY29uIGlzIGhpZGRlblxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDI7XG5cdHRvcDogLTFweDtcblx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcblxuXHQuYy1idXR0b246aG92ZXI6bm90KDpkaXNhYmxlZCkgJiB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCk7XG5cdH1cblxuXHQvLyBXaGVuIGljb24gY29tZXMgYmVmb3JlIHRoZSB0ZXh0IChpbiB0aGUgRE9NKSBzd2l0Y2ggdGhlIG1hcmdpblxuXHQmOmZpcnN0LWNoaWxkIHtcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0bWFyZ2luLWxlZnQ6IDE1cHg7XG5cdH1cblxuXHQuYy1idXR0b24tLWljb24gJiB7XG5cdFx0ZGlzcGxheTogYmxvY2s7IC8vIFNob3cgd2hlbiBoYXMgaWNvbiBtb2RpZmllclxuXHRcdHdpZHRoOiAxNnB4O1xuXHR9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIERlZmF1bHQgYnV0dG9uXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4kYy1naG9zdC1idXR0b246IChcblx0J2NvbG9yJzpcdHBhbGV0dGUobmV1dHJhbCwgMCksXG4pO1xuXG5cbi5jLWdob3N0YnV0dG9uIHtcblx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhtKTtcblx0QGluY2x1ZGUgZm9udC1zaXplKHhzKTtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRjb2xvcjogbWFwLWdldCgkYy1naG9zdC1idXR0b24sICdjb2xvcicpO1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0dGV4dC1zaGFkb3c6IDAgMCA0cHggcmdiYSgwLDAsMCwwLjIpO1xuXHRib3JkZXI6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG5cdHBhZGRpbmc6IHNwYWNlKDIpIDA7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZTogbm9uZTtcblx0XHRib3gtc2hhZG93OiAwIDAgNHB4IDJweCByZ2JhKG1hcC1nZXQoJGMtZ2hvc3QtYnV0dG9uLCAnY29sb3InKSwgMC41KTtcblxuXHR9XG5cdCY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHRcdGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblx0fVxuXHQmOmRpc2FibGVkIHtcblx0XHRvcGFjaXR5OiAwLjU7XG5cdFx0Y3Vyc29yOiBub3QtYWxsb3dlZDtcblx0fVxuXG5cdC8vIEJvcmRlciB3aXRoIHBzZXVkbyBlbGVtZW50IGZvciBhbmltYXRpb25cblx0Jjo6YWZ0ZXIge1xuXHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMobSk7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0YmFja2dyb3VuZDogcmdiYShwYWxldHRlKG5ldXRyYWwsIDEwMDApLCAwLjA3KTtcblx0XHRiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogLTFweDtcblx0XHRib3R0b206IC0xcHg7XG5cdFx0cmlnaHQ6IC0xcHg7XG5cdFx0bGVmdDogLTFweDtcblx0XHR0cmFuc2Zvcm06IHNjYWxlWCgwKTtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IC41cztcblx0fVxuXG5cdCY6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuXHRcdCY6OmFmdGVyIHtcblx0XHRcdHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcblx0XHRcdHRyYW5zaXRpb24tZHVyYXRpb246IC4zNXM7XG5cdFx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSk7XG5cdFx0fVxuXHR9XG59XG5cbi5jLWdob3N0YnV0dG9uX190ZXh0IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAyO1xuXHRwYWRkaW5nOiAwIHNwYWNlKDMpO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0LmMtYnV0dG9uLS1pY29uICYge1xuXHRcdHBhZGRpbmctcmlnaHQ6IHNwYWNlKDIpO1xuXHR9XG59XG5cbi5jLWdob3N0YnV0dG9uX19pY29uIHtcblx0ZGlzcGxheTogbm9uZTsgLy8gQnkgZGVmYXVsdCBpY29uIGlzIGhpZGRlblxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDI7XG5cdHRvcDogLTFweDtcblx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcblxuXHQuYy1naG9zdGJ1dHRvbjpob3Zlcjpub3QoOmRpc2FibGVkKSAmIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTtcblx0fVxuXG5cdC5jLWdob3N0YnV0dG9uLS1pY29uICYge1xuXHRcdGRpc3BsYXk6IGJsb2NrOyAvLyBTaG93IHdoZW4gaGFzIGljb24gbW9kaWZpZXJcblx0XHR3aWR0aDogMTZweDtcblx0fVxuXG5cdC8vIFdoZW4gaWNvbiBjb21lcyBiZWZvcmUgdGhlIHRleHQgKGluIHRoZSBET00pIHN3aXRjaCB0aGUgbWFyZ2luXG5cdCY6Zmlyc3QtY2hpbGQge1xuXHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRtYXJnaW4tbGVmdDogMTVweDtcblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogQ2FyZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRjLWNhcmQ6IChcblx0J2xhYmVsLWJnY29sb3InOlx0XHRwYWxldHRlKHByaW1hcnksIDcwMCksXG5cdCdsYWJlbC1jb2xvcic6XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2xhYmVsLWJnY29sb3ItaG92ZXInOlx0cGFsZXR0ZShzZWNvbmRhcnksIDUwMCksXG5cdCdsYWJlbC1jb2xvci1ob3Zlcic6XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQnYXJyb3ctY29sb3ItaG92ZXInOlx0cGFsZXR0ZShzZWNvbmRhcnksIDUwMCksXG5cdCdiZ2NvbG9yLWhvdmVyJzpcdFx0cGFsZXR0ZShwcmltYXJ5LCA3MDApLFxuXHQnaW5mby1iZ2NvbG9yJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDEwMCksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uYy1jYXJkIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0aGVpZ2h0OiAxMDAlO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLypcbiAqIENhcmQgdGhhdCBkb2VzIHNvbWUgYW5pbWF0aW9ucyBvbiBob3ZlclxuICovXG4uYy1jYXJkLS1oYXMtYWN0aW9uIHtcblx0QGluY2x1ZGUgZGlzYWJsZU91dGxpbmVGb3JNb3VzZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjsgLy8gYmVjYXVzZSBvZiBwc2V1ZG8gZWxlbWVudFxuXHR6LWluZGV4OiAwO1xuXG5cdCY6OmJlZm9yZSxcblx0Jjo6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdHRvcDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0bGVmdDogMDtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR9XG5cblx0Ly8gU2hhZGVkIGJhY2tncm91bmQgKEhJRERFTiBieSBkZWZhdWx0KVxuXHQmOjpiZWZvcmUge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEobWFwLWdldCgkYy1jYXJkLCdiZ2NvbG9yLWhvdmVyJyksIDAuOTIpO1xuXHRcdGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChyZ2JhKG1hcC1nZXQoJGMtY2FyZCwnYmdjb2xvci1ob3ZlcicpLDAuOCkgMCUsIHJnYmEobWFwLWdldCgkYy1jYXJkLCdiZ2NvbG9yLWhvdmVyJyksMC45MikgMTAwJSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMzUlKSByb3RhdGUoLTExZGVnKSBzY2FsZSgxLjMpO1xuXHRcdHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcblx0XHR0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm07XG5cdFx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMzAwbXM7XG5cdFx0dHJhbnNpdGlvbi1kZWxheTogMTAwbXM7XG5cdFx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ1LCAwLjEsIDAuMywgMSk7XG5cdH1cblxuXHQvLyBBcnJvdyAoSElEREVOIGJ5IGRlZmF1bHQpXG5cdC8vIENvbnRhaW5zIGFuIFNWRyBhcnJvdyBpY29uIGluIHRoZSBiYWNrZ3JvdW5kLWltYWdlXG5cdCY6OmFmdGVyIHtcblx0XHR6LWluZGV4OiAyO1xuXHRcdHdpZHRoOiAyNXB4O1xuXHRcdG1hcmdpbjogYXV0bztcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBzdmctdXJsKCc8c3ZnIHZpZXdCb3g9XCIwIDAgMTYgMTJcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+PHBhdGggZmlsbD1cIiN7bWFwLWdldCgkYy1jYXJkLCdhcnJvdy1jb2xvci1ob3ZlcicpfVwiIGQ9XCJNMTMuNCA2Ljc4M0guNzYyQS43NzIuNzcyIDAgMCAxIDAgNmMwLS40MzIuMzQxLS43ODMuNzYyLS43ODNIMTMuNEw5LjYyMyAxLjMzNmEuNzk4Ljc5OCAwIDAgMSAwLTEuMTA3Ljc0Ny43NDcgMCAwIDEgMS4wNzcgMGw1LjA3NyA1LjIxOGEuNzk4Ljc5OCAwIDAgMSAwIDEuMTA2TDEwLjcgMTEuNzcxYS43NDcuNzQ3IDAgMCAxLTEuMDc3IDAgLjc5OC43OTggMCAwIDEgMC0xLjEwN0wxMy40IDYuNzgzelwiLz48L3N2Zz4nKTtcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuNzUpO1xuXHRcdHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAyMDBtcztcblx0fVxuXG5cdCY6aG92ZXIge1xuXHRcdC8vIFNoYWRlZCBiYWNrZ3JvdW5kIChWSVNJQkxFIHdoZW4gaG92ZXJlZClcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRvcGFjaXR5OiAwLjkyO1xuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoLTExZGVnKSBzY2FsZSgxLjMpO1xuXHRcdFx0dHJhbnNpdGlvbi1kdXJhdGlvbjogNDAwbXM7XG5cdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiA1MG1zO1xuXHRcdH1cblx0XHQvLyBBcnJvdyAoVklTSUJMRSB3aGVuIGhvdmVyZWQpXG5cdFx0JjphZnRlciB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdFx0dHJhbnNpdGlvbi1kdXJhdGlvbjogNDAwbXM7XG5cdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAyMDBtcztcblx0XHR9XG5cdH1cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZS1jb2xvcjogbWFwLWdldCgkYy1jYXJkLCdiZ2NvbG9yLWhvdmVyJyk7XG5cdFx0b3V0bGluZS1zdHlsZTogc29saWQ7XG5cdFx0b3V0bGluZS1vZmZzZXQ6IDFweDtcblx0XHRvdXRsaW5lLXdpZHRoOiAycHg7XG5cdH1cbn1cblxuLmMtY2FyZF9fcGljdHVyZSB7XG5cdHdpZHRoOiAxMDAlO1xuXHRmbGV4OiBhdXRvO1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLmMtY2FyZF9faW1nIHtcblx0b2JqZWN0LWZpdDogY292ZXI7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG59XG5cbi5jLWNhcmRfX2xhYmVsIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHhzKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAzO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAxNHB4IDEwcHggMTVweDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRmb250LXdlaWdodDogbWVkaXVtO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRjb2xvcjogbWFwLWdldCgkYy1jYXJkLCdsYWJlbC1jb2xvcicpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLWNhcmQsJ2xhYmVsLWJnY29sb3InKTtcblx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZDtcblx0dHJhbnNpdGlvbi1kdXJhdGlvbjogNDAwbXM7XG5cblx0LmMtY2FyZC0taGFzLWFjdGlvbjpob3ZlciAmIHtcblx0XHRjb2xvcjogbWFwLWdldCgkYy1jYXJkLCdsYWJlbC1jb2xvci1ob3ZlcicpO1xuXHR9XG5cblx0Ly8gQ29sb3JlZCBiYWNrZ3JvdW5kIGJlaGluZCBsYWJlbCAoSElEREVOIGJ5IGRlZmF1bHQpXG5cdCY6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IC0xO1xuXHRcdHRvcDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0bGVmdDogMDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLWNhcmQsJ2xhYmVsLWJnY29sb3ItaG92ZXInKTtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHQvL3RyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAlKSByb3RhdGUoNWRlZykgc2NhbGUoMik7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwMCUpIHJvdGF0ZSgxMWRlZykgc2NhbGUoMS41LCAzKTtcblx0XHR0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG5cdFx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDMwMG1zO1xuXHRcdHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NSwgMC4xLCAwLjMsIDEpO1xuXG5cdFx0LmMtY2FyZC0taGFzLWFjdGlvbjpob3ZlciAmIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKSBzY2FsZSgyKTtcblx0XHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDMwMG1zO1xuXHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMG1zO1xuXHRcdH1cblx0fVxufVxuXG4uYy1jYXJkX19pbmZvIHtcblx0cGFkZGluZzogc3BhY2UoMikgc3BhY2UoNCk7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGMtY2FyZCwnaW5mby1iZ2NvbG9yJyk7XG59XG4uYy1jYXJkX19oZWFkaW5nIHtcblx0QGluY2x1ZGUgZm9udChiYXNlKTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgNTAwKTtcbn1cbi5jLWNhcmRfX3N1YmhlYWRpbmcge1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA0MDApO1xufVxuLmMtY2FyZF9fdGV4dGxpbmUge1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA0MDApO1xuXG5cdC8vIFdoZW4gaXQgZm9sbG93cyBhbiBlbGVtZW50IHRoYXQncyBub3QgbGlrZSBpdHNlbGZcblx0Kjpub3QoI3smfSkgKyAmIHtcblx0XHRtYXJnaW4tdG9wOiBzcGFjZSgyKTtcblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogQ2xvc2Vcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kYy1jbG9zZTogKFxuXHQnY29sb3InOiAgcGFsZXR0ZShuZXV0cmFsLCAwKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5jLWNsb3NlIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGFsaWduLXNlbGY6IGNlbnRlcjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogc3BhY2UoNSk7XG5cdGhlaWdodDogc3BhY2UoNSk7XG5cdHBhZGRpbmc6IDA7XG5cdGJhY2tncm91bmQ6IG5vbmU7XG5cdGJvcmRlcjogbm9uZTtcblx0b3V0bGluZTogbm9uZTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTgwbXMgZWFzZS1vdXQ7XG5cblx0Jjpmb2N1cyB7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDNweCAycHggbWFwLWdldCgkYy1jbG9zZSwgJ2NvbG9yJyk7XG5cdH1cblxuXHQmOmFmdGVyLFxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMjBweDtcblx0XHRyaWdodDogMjAlO1xuXHRcdGxlZnQ6IDIwJTtcblx0XHRoZWlnaHQ6IDNweDtcblx0XHRtYXJnaW4tdG9wOiAtMnB4O1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdGJhY2tncm91bmQ6IG1hcC1nZXQoJGMtY2xvc2UsICdjb2xvcicpO1xuXHRcdGJvcmRlci1yYWRpdXM6IDNweDtcblx0fVxuXHQmOmJlZm9yZSB7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuXHR9XG5cdCY6YWZ0ZXIge1xuXHRcdHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG5cdH1cbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IENvbm5lY3Rcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kYy1jb25uZWN0OiAoXG5cdCdjb2xvcic6XHRcdHBhbGV0dGUobmV1dHJhbCwgODAwKSxcblx0J2NvbG9yLWFsdCc6XHRwYWxldHRlKG5ldXRyYWwsIDUwMCksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG5cbi5jLWNvbm5lY3Qge1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHRAaW5jbHVkZSBtcShtKXtcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHR9XG59XG5cblxuLmMtY29ubmVjdF9fcGhvbmUge1xuXHRAaW5jbHVkZSBkaXNhYmxlT3V0bGluZUZvck1vdXNlO1xuXHRAaW5jbHVkZSBmb250KG0pO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRjb2xvcjogbWFwLWdldCgkYy1jb25uZWN0LCAnY29sb3InKTtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAzMDBtcztcblxuXHQmOmhvdmVyIHtcblx0XHRvcGFjaXR5OiAwLjc7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG5cdFx0b3V0bGluZS1zdHlsZTogc29saWQ7XG5cdFx0b3V0bGluZS1vZmZzZXQ6IDFweDtcblx0XHRvdXRsaW5lLXdpZHRoOiAycHg7XG5cdH1cbn1cblxuXG4uYy1jb25uZWN0X19vciB7XG5cdG1hcmdpbjogMCBzcGFjZSgyKTtcblx0Y29sb3I6IG1hcC1nZXQoJGMtY29ubmVjdCwgJ2NvbG9yLWFsdCcpO1xuXG5cdEBpbmNsdWRlIG1xKCRtYXg6IG0pIHtcblx0XHRtYXJnaW46IHNwYWNlKDEpIDAgc3BhY2UoMik7XG5cdH1cbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IERhdGFcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kYy1kYXRhOiAoXG4gICdjb2xvcic6XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCA4MDApLFxuICAnY29sb3ItYWx0JzpcdFx0cGFsZXR0ZShuZXV0cmFsLCA1MDApLFxuICAnYmdjb2xvci1ob3Zlcic6XHRzY2FsZS1jb2xvcihwYWxldHRlKHNlY29uZGFyeSwgNTAwKSwgJGxpZ2h0bmVzczogLTIwJSksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmMtZGF0YSB7XG5cdG1hcmdpbjogc3BhY2UoMikgMDtcbn1cblxuLmMtZGF0YV9fbGluZSB7XG5cdGRpc3BsYXk6IGZsZXg7XG59XG5cbi5jLWRhdGFfX2xhYmVsIHtcblx0bWluLXdpZHRoOiBzcGFjZSg4KTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGNvbG9yOiBtYXAtZ2V0KCRjLWRhdGEsICdjb2xvcicpO1xufVxuXG4uYy1kYXRhX192YWx1ZSB7XG4gICAgY29sb3I6IG1hcC1nZXQoJGMtZGF0YSwgJ2NvbG9yLWFsdCcpO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0JltocmVmXSB7XG5cdFx0QGluY2x1ZGUgZGlzYWJsZU91dGxpbmVGb3JNb3VzZTtcblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0fVxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0b3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuXHRcdFx0b3V0bGluZS1zdHlsZTogc29saWQ7XG5cdFx0XHRvdXRsaW5lLW9mZnNldDogMXB4O1xuXHRcdFx0b3V0bGluZS13aWR0aDogMnB4O1xuXHRcdH1cblx0fVxufSIsIi5jLWRhdGUtbGFiZWwge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBhZGRpbmc6IHNwYWNlKDAuNSkgc3BhY2UoMyk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5cbi5jLWRhdGUtbGFiZWwtLXNlY29uZGFyeSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA1MDApO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcbn1cblxuXG4uYy1kYXRlLWxhYmVsX19kYXkge1xuXHRAaW5jbHVkZSBmb250LXNpemUoeGwpO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIHRpbWUgZWxlbWVudCBkb2Vzbid0IHNlZW0gdG8gaGF2ZSBhIGRlZmF1bHRcbn1cblxuXG4uYy1kYXRlLWxhYmVsX19tb250aCB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZShtKTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyB0aW1lIGVsZW1lbnQgZG9lc24ndCBzZWVtIHRvIGhhdmUgYSBkZWZhdWx0XG59IiwiLmMtZG93bmxvYWQtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuLmMtZG93bmxvYWQtbGlzdF9faXRlbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBwYWxldHRlKG5ldXRyYWwsIDMwMCk7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMsIGJhY2tncm91bmQtY29sb3IgMC4ycztcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHBhbGV0dGUobmV1dHJhbCwgMzAwKSwgMC4yKTtcbiAgfVxufVxuXG4uYy1kb3dubG9hZC1saXN0X19saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogc3BhY2UoMSkgMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYy1kb3dubG9hZC1saXN0X19pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTZweDtcblxuICBzdmcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5jLWRvd25sb2FkLWxpc3RfX3RleHQge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTZweCk7XG4gIHBhZGRpbmctbGVmdDogc3BhY2UoMSk7XG5cbiAgLmMtZG93bmxvYWQtbGlzdF9faXRlbTpob3ZlciAmIHtcbiAgICBjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA5MDApO1xuICB9XG59XG4iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IENhcmRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kYy1ldmVudC1jYXJkOiAoXG5cdCdiZ2NvbG9yLWhvdmVyJzpcdFx0cGFsZXR0ZShzZWNvbmRhcnksIDUwMCksXG5cdCdjb2xvci1ob3Zlcic6XHRcdCAgICBwYWxldHRlKG5ldXRyYWwsIDApLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmMtZXZlbnQtY2FyZCB7XG5cdEBpbmNsdWRlIGRpc2FibGVPdXRsaW5lRm9yTW91c2U7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGhlaWdodDogMTAwJTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG92ZXJmbG93OiBoaWRkZW47IC8vIGJlY2F1c2Ugb2YgcHNldWRvIGVsZW1lbnRcblx0ei1pbmRleDogMDtcblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lLWNvbG9yOiBtYXAtZ2V0KCRjLWV2ZW50LWNhcmQsJ2JnY29sb3ItaG92ZXInKTtcblx0XHRvdXRsaW5lLXN0eWxlOiBzb2xpZDtcblx0XHRvdXRsaW5lLW9mZnNldDogMXB4O1xuXHRcdG91dGxpbmUtd2lkdGg6IDJweDtcblx0fVxufVxuXG5cbi5jLWV2ZW50LWNhcmRfX3BpY3R1cmUge1xuXHR3aWR0aDogMTAwJTtcblx0ZmxleDogbm9uZTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQmOjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAwO1xuXHRcdHRvcDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0bGVmdDogMDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGJsYWNrLCAwLjYwKTtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdHRyYW5zaXRpb246IGFsbCAyMDBtcyBsaW5lYXI7XG5cdH1cblxuXHQuYy1ldmVudC1jYXJkOmhvdmVyICYge1xuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdH1cblx0fVxufVxuXG5cbi5jLWV2ZW50LWNhcmRfX2ltZyB7XG5cdG9iamVjdC1maXQ6IGNvdmVyO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG5cbi5jLWV2ZW50LWNhcmRfX2RhdGUge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHotaW5kZXg6IDE7XG5cdGJvdHRvbTogMDtcblx0bGVmdDogMDtcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShzZWNvbmRhcnksIDUwMCk7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDApO1xuXHR0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcblx0dHJhbnNpdGlvbjogYWxsIDIwMG1zIGxpbmVhcjtcblxuXHQuYy1ldmVudC1jYXJkOmhvdmVyICYge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGMtZXZlbnQtY2FyZCwgJ2JnY29sb3ItaG92ZXInKTtcblx0XHRjb2xvcjogbWFwLWdldCgkYy1ldmVudC1jYXJkLCAnY29sb3ItaG92ZXInKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuXG5cdH1cbn1cblxuXG4uYy1ldmVudC1jYXJkX19pbmZvIHtcblx0ZmxleDogMTtcblx0cGFkZGluZzogc3BhY2UoMikgc3BhY2UoMyk7XG5cdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMTAwKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0cmFuc2l0aW9uOiBhbGwgMjAwbXMgbGluZWFyO1xuXG5cdC5jLWV2ZW50LWNhcmQ6aG92ZXIgJiB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1ldmVudC1jYXJkLCdiZ2NvbG9yLWhvdmVyJyk7XG5cdH1cbn1cblxuXG4uYy1ldmVudC1jYXJkX190aXRsZSB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZShiYXNlKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAyO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgODAwKTtcblx0dHJhbnNpdGlvbjogYWxsIDIwMG1zIGxpbmVhcjtcblxuXHQuYy1ldmVudC1jYXJkOmhvdmVyICYge1xuXHRcdGNvbG9yOiBtYXAtZ2V0KCRjLWV2ZW50LWNhcmQsICdjb2xvci1ob3ZlcicpICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuXG4uYy1ldmVudC1jYXJkX19zdWJ0aXRsZSB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZShzKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAyO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA0MDApO1xuXHR0cmFuc2l0aW9uOiBhbGwgMjAwbXMgbGluZWFyO1xuXG5cdC5jLWV2ZW50LWNhcmQ6aG92ZXIgJiB7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJGMtZXZlbnQtY2FyZCwgJ2NvbG9yLWhvdmVyJykgIWltcG9ydGFudDtcblx0fVxufVxuXG5cbi5jLWV2ZW50LWNhcmRfX3R5cGUge1xuXHRAaW5jbHVkZSBmb250LXNpemUocyk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMjtcblx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDMwMCk7XG5cdHRyYW5zaXRpb246IGFsbCAyMDBtcyBsaW5lYXI7XG5cblx0LmMtZXZlbnQtY2FyZDpob3ZlciAmIHtcblx0XHRjb2xvcjogbWFwLWdldCgkYy1ldmVudC1jYXJkLCAnY29sb3ItaG92ZXInKSAhaW1wb3J0YW50O1xuXHR9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBmaWxlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtZmlsZS11cGxvYWQ6IChcblx0J2NvbG9yJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDkwMCksXG5cdCdiZ2NvbG9yJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQnYmdjb2xvci1ob3Zlcic6XHRzY2FsZS1jb2xvcihwYWxldHRlKHNlY29uZGFyeSksICRsaWdodG5lc3M6IC0yMCUpLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmMtZmlsZS11cGxvYWRfX21haW4ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cblxuLmMtZmlsZS11cGxvYWRfX2lucHV0IHtcblx0b3BhY2l0eTogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG59XG5cblxuLmMtZmlsZS11cGxvYWRfX2J1dHRvbiB7XG5cdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMobSk7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSh4cyk7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0Y29sb3I6IG1hcC1nZXQoJGMtZmlsZS11cGxvYWQsICdjb2xvcicpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLWZpbGUtdXBsb2FkLCAnYmdjb2xvcicpO1xuXHRib3JkZXI6IDFweCBzb2xpZCBwYWxldHRlKG5ldXRyYWwsIDUwMCk7XG5cdG1hcmdpbi1yaWdodDogc3BhY2UoMSk7XG5cdHBhZGRpbmc6IHNwYWNlKDIpIHNwYWNlKDMpO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0cmFuc2l0aW9uOiBhbGwgMTUwbXM7XG5cblx0Jjo6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1nL2FkZC5zdmcpO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0d2lkdGg6IDE2cHg7XG5cdFx0aGVpZ2h0OiAxNnB4O1xuXHRcdG1hcmdpbi1sZWZ0OiBzcGFjZSgyKTtcblx0fVxuXG5cdCY6aG92ZXIge1xuXHRcdG9wYWNpdHk6IDAuNztcblx0fVxufVxuXG5cbi5jLWZpbGUtdXBsb2FkX19saXN0IHtcblx0bWFyZ2luLWxlZnQ6IDA7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDMpO1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdCYgPiBsaSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgcGFsZXR0ZShuZXV0cmFsLCAzMDApO1xuXHRcdHBhZGRpbmc6IHNwYWNlKDAuNSkgMDtcblx0XHRhbmltYXRpb246IGV4cGFuZCAuNXMgZWFzZS1pbi1vdXQ7XG5cblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0d2lkdGg6IDE2cHg7XG5cdFx0XHRoZWlnaHQ6IDE2cHg7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IHNwYWNlKDEpO1xuXHRcdFx0YmFja2dyb3VuZDogdXJsKFwiL2ltZy9maWxlLnN2Z1wiKSBuby1yZXBlYXQ7XG5cdFx0fVxuXG5cdFx0Ly8gZGVsZXRlIGJ1dHRvblxuXHRcdCYgPiBidXR0b24ge1xuXHRcdFx0Zm9udC1zaXplOiAyNHB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6IDE2cHg7XG5cdFx0XHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAxMDAwKTtcblx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRvdXRsaW5lOiBub25lO1xuXHRcdFx0dHJhbnNpdGlvbjogY29sb3IgMTUwbXMgbGluZWFyO1xuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0Y29sb3I6IHJlZDtcblx0XHRcdH1cblxuXHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogJ1xcMDBENyc7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cblxuLmMtZmlsZS11cGxvYWRfX25vdGUge1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA0MDApO1xufVxuXG5cbkBrZXlmcmFtZXMgZXhwYW5kIHtcblx0ZnJvbSB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcblx0XHR0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG5cdFx0b3BhY2l0eTogMDtcblx0XHRiYWNrZ3JvdW5kOiBwYWxldHRlKGZlZWRiYWNrLCBhY3Rpb24pO1xuXHR9XG59XG4iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IEZvcm0gZ3JvdXBcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kYy1mb3JtLWdyb3VwOiAoXG4gICdjb2xvcic6XHRcdFx0XHRcdCAgICBwYWxldHRlKG5ldXRyYWwsIDQwMCksXG4gICdlcnJvci1jb2xvcic6XHRcdFx0XHRwYWxldHRlKGZlZWRiYWNrLCBhY3Rpb24pLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmMtZm9ybS1ncm91cF9fbGFiZWwge1xuICBAaW5jbHVkZSBmb250LXNpemUocyk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiBzcGFjZSgwLjUpIDA7XG4gIGNvbG9yOiBtYXAtZ2V0KCRjLWZvcm0tZ3JvdXAsICdjb2xvcicpO1xufVxuXG4uYy1mb3JtLWdyb3VwX19lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgLmhhcy1lcnJvciAmOm5vdCg6ZW1wdHkpIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoeHMpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IHNwYWNlKDEpO1xuICAgIGNvbG9yOiBtYXAtZ2V0KCRjLWZvcm0tZ3JvdXAsICdlcnJvci1jb2xvcicpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEobWFwLWdldCgkYy1mb3JtLWdyb3VwLCAnZXJyb3ItY29sb3InKSwgMC4xKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRjLWZvcm0tZ3JvdXAsICdlcnJvci1jb2xvcicpO1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIG1hcC1nZXQoJGJvcmRlci1yYWRpdXMsIHMpIG1hcC1nZXQoJGJvcmRlci1yYWRpdXMsIHMpO1xuICB9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBGb3JtIGZlZWRiYWNrXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtZm9ybS1mZWVkYmFjazogKFxuICAnY29sb3InOlx0XHRwYWxldHRlKG5ldXRyYWwsIDgwMCksXG4gICdiZ2NvbG9yJzpcdHJnYmEocGFsZXR0ZShmZWVkYmFjaywgd2FybmluZyksIDAuMiksXG4gICdib3JkZXInOiBcdHBhbGV0dGUoZmVlZGJhY2ssIHdhcm5pbmcpLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmMtZm9ybS1mZWVkYmFjayB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShzKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhzKTtcbiAgbWFyZ2luOiAwIDAgc3BhY2UoMSk7XG4gIHBhZGRpbmc6IHNwYWNlKDMpIHNwYWNlKDQpO1xuICBjb2xvcjogbWFwLWdldCgkYy1mb3JtLWZlZWRiYWNrLCAnY29sb3InKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1mb3JtLWZlZWRiYWNrLCAnYmdjb2xvcicpO1xuICBib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRjLWZvcm0tZmVlZGJhY2ssICdib3JkZXInKTtcblxuICAmOm5vdCg6ZW1wdHkpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICY6YmVmb3Jle1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1mZWVkYmFjayk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBzcGFjZSgtMik7XG4gICAgbWFyZ2luLWJvdHRvbTogc3BhY2UoMSk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxuXG4gIGxpOjpmaXJzdC1sZXR0ZXIge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IEhhbWJ1cmdlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYy1oYW1idXJnZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0YWxpZ24tc2VsZjogY2VudGVyO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiBzcGFjZSg1KTtcblx0aGVpZ2h0OiBzcGFjZSg1KTtcblx0cGFkZGluZzogMDtcblx0Y29sb3I6IG1hcC1nZXQoJHNpdGUtaGVhZGVyLCAndGV4dENvbG9yJyk7XG5cdGJhY2tncm91bmQ6IG5vbmU7XG5cdGJvcmRlcjogbm9uZTtcblx0b3V0bGluZTogbm9uZTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0XHRvdXRsaW5lLXN0eWxlOiBzb2xpZDtcblx0XHRvdXRsaW5lLW9mZnNldDogMXB4O1xuXHRcdG91dGxpbmUtd2lkdGg6IDJweDtcblx0fVxuXG5cdCYgPiBzcGFuLFxuXHQmOmFmdGVyLFxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMjBweDtcblx0XHRyaWdodDogMjAlO1xuXHRcdGxlZnQ6IDIwJTtcblx0XHRoZWlnaHQ6IDNweDtcblx0XHRtYXJnaW4tdG9wOiAtMnB4O1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcblx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdFx0dHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG5cdFx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDE1MG1zO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcblx0XHR0cmFuc2l0aW9uLWRlbGF5OiAxMDBtcztcblx0fVxuXG5cdCY6YmVmb3JlIHtcblx0XHR0b3A6IDEycHg7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZVgoMC44KTtcblx0fVxuXG5cdCY6YWZ0ZXIge1xuXHRcdHRvcDogMjhweDtcblx0XHR0cmFuc2Zvcm06IHNjYWxlWCgwLjUpO1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0JiA+IHNwYW4ge1xuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZVgoMC44KTtcblx0XHR9XG5cdFx0JjphZnRlcixcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlWCgxKTtcblx0XHR9XG5cdH1cblxuXHQuaXMtb3ZlcmxheS1tZW51LWFjdGl2ZSAmIHtcblx0XHQmID4gc3BhbiB7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlWCgxKSAhaW1wb3J0YW50O1xuXHRcdH1cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoM3B4KSBzY2FsZVgoMSkgIWltcG9ydGFudDtcblx0XHRcdHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuXHRcdH1cblx0XHQmOmFmdGVyIHtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KSBzY2FsZVgoMSkgIWltcG9ydGFudDtcblx0XHRcdHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuXHRcdH1cblx0fVxufSIsIi5jLWhlYWRpbmcge1xuXHRAaW5jbHVkZSBmb250KHh4bCk7XG5cdG1hcmdpbjogc3BhY2UoNSkgMDtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgODAwKTtcbn1cblxuLmMtaGVhZGluZy0taW5kZW50IHtcblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdHBhZGRpbmctbGVmdDogY29sdW1uKDEsIDEyKTtcblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogSGVyb1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRjLWhlcm86IChcblx0J2NhcHRpb24tYmdjb2xvcic6XHRcdHJnYmEocGFsZXR0ZShuZXV0cmFsLCA5MDApLCAwLjYpLFxuXHQnY2FwdGlvbi1jb2xvcic6XHRcdHBhbGV0dGUobmV1dHJhbCwgMCksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uYy1oZXJvIHtcblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdEBpbmNsdWRlIGNvbnRhaW47XG5cdH1cbn1cblxuLmMtaGVyb19fbWFpbiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcbn1cblxuLmMtaGVyb19fc2xpZGVyIHtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLWJvdHRvbTogNTUuNTU2JTsgLy8gUmF0aW8gdXNlZCBmb3IgbW9iaWxlIGltYWdlXG5cblx0QGluY2x1ZGUgbXEobSwgbCkge1xuXHRcdHBhZGRpbmctYm90dG9tOiA1MCU7IC8vIFJhdGlvIHVzZWQgZm9yIGltYWdlXG5cdH1cbn1cblxuLmMtaGVyb19fcGljdHVyZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCBmaWx0ZXI7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuXHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuXHRmaWx0ZXI6IGJsdXIoNXB4KTtcblxuXHQmLmlzLWFjdGl2ZSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMSk7XG5cdFx0ZmlsdGVyOiBub25lO1xuXHR9XG59XG5cbi5jLWhlcm9fX2ltYWdlIHtcblx0d2lkdGg6IDEwMCU7XG59XG5cbi5jLWhlcm9fX2NhcHRpb24ge1xuXHQvL0BpbmNsdWRlIGh5cGhlbmF0ZTtcblx0Zm9udC1zaXplOiBjYWxjKDE2cHggKyAxdncpO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nOiBzcGFjZSgzKTtcblx0bGluZS1oZWlnaHQ6IDEuMjtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRjb2xvcjogbWFwLWdldCgkYy1oZXJvLCAnY2FwdGlvbi1jb2xvcicpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLWhlcm8sICdjYXB0aW9uLWJnY29sb3InKTtcblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMDtcblx0XHRtYXgtd2lkdGg6IGNvbHVtbig2LDEyKTtcblx0XHRwYWRkaW5nOiBzcGFjZSg0KTtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0ei1pbmRleDogLTE7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHRyaWdodDogLTEwMHZ3O1xuXHRcdFx0bGVmdDogLTEwMHZ3O1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkc2l0ZS1pbnRybywgJ2JhckNvbG9yJyk7XG5cdFx0fVxuXHR9XG5cblx0Ly8gRm9udC1sb2NrIHRvIHNjYWxlIGZvbnQtc2l6ZSBwcm9wb3J0aW9uYWxseVxuXHRAaW5jbHVkZSBtcShtLCAkYnAtbWF4KSB7XG5cdFx0cGFkZGluZzogMi41dnc7IC8vIE1hZ2ljIHZhbHVlIHNvIHRleHQgc2NhbGVzIG5pY2VseVxuXHRcdGZvbnQtc2l6ZTogMi41dnc7IC8vIE1hZ2ljIHZhbHVlIHNvIHRleHQgc2NhbGVzIG5pY2VseVxuXHRcdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdH1cblxuXHRAaW5jbHVkZSBtcSgkYnAtbWF4KSB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKHh4bCk7XG5cdFx0bGluZS1oZWlnaHQ6IDEuMjU7XG5cdFx0cGFkZGluZy1sZWZ0OiBjb2x1bW4oMC41KTtcblx0fVxufVxuXG4uYy1oZXJvX19jb250cm9scyB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Ym90dG9tOiAwO1xuXHRyaWdodDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdHBhZGRpbmc6IHNwYWNlKDEpO1xuXG5cdCY6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdGhlaWdodDogc3BhY2UoNik7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgYmxhY2ssIHRyYW5zcGFyZW50KTtcblx0XHRvcGFjaXR5OiAwLjM7XG5cdH1cbn1cblxuXG4vLyBCdXR0b24gd2l0aCBhcnJvdyB0aGF0IHNjcm9sbHMgZG93blxuLmMtaGVyb19fc2Nyb2xsIHtcblx0QGluY2x1ZGUgbXEoJG1heDogbSkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IDUwJTtcblx0d2lkdGg6IDQwcHg7XG5cdGhlaWdodDogNDBweDtcblx0cGFkZGluZzogMTBweDtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG5cdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA1MDApO1xuXHRib3JkZXItcmFkaXVzOiAxMDAlO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA1MCUpIHJvdGF0ZSgwLjI1dHVybik7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG5cblx0JiA+IHN2ZyB7XG5cdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zO1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdGJhY2tncm91bmQ6IHNjYWxlX2NvbG9yKHBhbGV0dGUoc2Vjb25kYXJ5LCA1MDApLCAkbGlnaHRuZXNzOiAtMTUlKTtcblxuXHRcdCYgPiBzdmcge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCk7XG5cdFx0fVxuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZTogbm9uZTtcblx0XHRiYWNrZ3JvdW5kOiBzY2FsZV9jb2xvcihwYWxldHRlKHNlY29uZGFyeSwgNTAwKSwgJGxpZ2h0bmVzczogLTEwJSk7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDAgM3B4IHNjYWxlX2NvbG9yKHBhbGV0dGUoc2Vjb25kYXJ5LCA1MDApLCAkbGlnaHRuZXNzOiA3MCUpO1xuXHR9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBJbnB1dFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRjLWlucHV0OiAoXG5cdCdjb2xvcic6XHRcdHBhbGV0dGUobmV1dHJhbCwgODAwKSxcblx0J2JnY29sb3InOlx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQnYm9yZGVyJzpcdFx0cGFsZXR0ZShuZXV0cmFsLCAzMDApLFxuXHQnZm9jdXMnOlx0XHRwYWxldHRlKG5ldXRyYWwsIDkwMCksXG5cdCdlcnJvcic6XHRcdHBhbGV0dGUoZmVlZGJhY2ssIHdhcm5pbmcpLFxuXHQnYm9yZGVyLXNpemUnOlx0MXB4LFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmMtaW5wdXQge1xuXHRAaW5jbHVkZSBmb250LXNpemUocyk7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiAoc3BhY2UoMSkgLSBtYXAtZ2V0KCRjLWlucHV0LCAnYm9yZGVyLXNpemUnKSkgc3BhY2UoMik7XG5cdGNvbG9yOiBtYXAtZ2V0KCRjLWlucHV0LCAnY29sb3InKTtcblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1pbnB1dCwgJ2JnY29sb3InKTtcblx0Ym9yZGVyOiBtYXAtZ2V0KCRjLWlucHV0LCAnYm9yZGVyLXNpemUnKSBzb2xpZCBtYXAtZ2V0KCRjLWlucHV0LCAnYm9yZGVyJyk7XG5cdG91dGxpbmU6IG5vbmU7XG5cblx0Lmhhcy1lcnJvciAmIHtcblx0XHRib3gtc2hhZG93OiAwIDAgN3B4IC0zcHggbWFwLWdldCgkYy1pbnB1dCwgJ2Vycm9yJyk7XG5cdFx0Ym9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRjLWlucHV0LCAnZXJyb3InKTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKG1hcC1nZXQoJGMtaW5wdXQsICdlcnJvcicpLCAwLjA1KTtcblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdGJveC1zaGFkb3c6IDAgMCA3cHggLTNweCBtYXAtZ2V0KCRjLWlucHV0LCAnZm9jdXMnKTtcblx0XHRib3JkZXItY29sb3I6IG1hcC1nZXQoJGMtaW5wdXQsICdmb2N1cycpO1xuXHR9XG5cblx0QGF0LXJvb3QgdGV4dGFyZWEjeyZ9IHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwYWRkaW5nOiBzcGFjZSgyKTtcblx0XHRtaW4taGVpZ2h0OiBzcGFjZSgyMCkgLSBkb3VibGUobWFwLWdldCgkYy1pbnB1dCwgJ2JvcmRlci1zaXplJykpO1xuXHRcdGxpbmUtaGVpZ2h0OiBzcGFjZSgzKTtcblx0XHRyZXNpemU6IHZlcnRpY2FsO1xuXHR9XG59XG5cblxuIiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBMYW5ndWFnZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRjLWxhbmd1YWdlOiAoXG5cdCdiZ2NvbG9yJzpcdFx0XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2JnY29sb3ItYWx0JzpcdFx0XHQgIFx0ZGFya2VuKHBhbGV0dGUobmV1dHJhbCwgMCksIDUlKSxcblx0J2NvbG9yJzpcdFx0XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCA1MDApLFxuXHQnY29sb3ItaG92ZXInOlx0XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2JnY29sb3ItaG92ZXInOlx0XHRcdHBhbGV0dGUoc2Vjb25kYXJ5LCA1MDApLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmMtbGFuZ3VhZ2Uge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jLWxhbmd1YWdlX19idXR0b24ge1xuXHRAaW5jbHVkZSBmb250KHMpO1xuXHRAaW5jbHVkZSBib3JkZXItcmFkaXVzO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiBzcGFjZSgxKTtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdGNvbG9yOiByZ2JhKG1hcC1nZXQoJHNpdGUtaGVhZGVyLCAndGV4dENvbG9yJyksIDAuNSk7XG5cdGJvcmRlcjogbm9uZTtcblx0YXBwZWFyYW5jZTogbm9uZTtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cywgYm94LXNoYWRvdyAwLjE1cztcblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHR9XG5cblx0Ly8uYy1sYW5ndWFnZTpob3ZlciAmIHtcblx0Ly9cdGNvbG9yOiBtYXAtZ2V0KCRzaXRlLWhlYWRlciwgJ3RleHRDb2xvcicpO1xuXHQvL31cbn1cblxuLmMtbGFuZ3VhZ2VfX2ljb24ge1xuXHRmbGV4OiBub25lO1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmMtbGFuZ3VhZ2VfX2xhYmVsIHtcblx0bWFyZ2luLWxlZnQ6IHNwYWNlKDAuNSk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uYy1sYW5ndWFnZV9fZHJvcGRvd24ge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiAwO1xuXHR0b3A6IDEwMCU7XG5cdG1pbi13aWR0aDogMTAwJTtcblx0bWFyZ2luOiAwO1xuXHRvcGFjaXR5OiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKTtcblx0Ym94LXNoYWRvdzogMCAwIDEycHggMXB4IHJnYmEocGFsZXR0ZShuZXV0cmFsLCAxMDAwKSwgMC4xNSk7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MsIHRyYW5zZm9ybSAwLjNzO1xuXG5cdC5jLWxhbmd1YWdlOmhvdmVyICYge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0cG9pbnRlci1ldmVudHM6IGFsbDtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcblx0fVxufVxuXG4uYy1sYW5ndWFnZV9faXRlbSB7XG5cdGJhY2tncm91bmQtY29sb3I6bWFwLWdldCgkYy1sYW5ndWFnZSwgJ2JnY29sb3InKTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHQmOm50aC1jaGlsZChldmVuKSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1sYW5ndWFnZSwgJ2JnY29sb3ItYWx0Jyk7XG5cdH1cblxuXHQmOmZpcnN0LWNoaWxkIHtcblx0XHRib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKSBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKSAwIDA7XG5cdH1cblxuXHQmOmxhc3QtY2hpbGQge1xuXHRcdGJvcmRlci1yYWRpdXM6IDAgMCBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKSBtYXAtZ2V0KCRib3JkZXItcmFkaXVzLCBzKTtcblx0fVxuXG5cdCY6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG5cdFx0Ym9yZGVyLXJhZGl1czogbWFwLWdldCgkYm9yZGVyLXJhZGl1cywgcyk7XG5cdH1cbn1cblxuLmMtbGFuZ3VhZ2VfX2xpbmsge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZzogc3BhY2UoMC41KSBzcGFjZSgxKTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRjb2xvcjogbWFwLWdldCgkYy1sYW5ndWFnZSwgJ2NvbG9yJyk7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcztcblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogbWFwLWdldCgkYy1sYW5ndWFnZSwgJ2NvbG9yLWhvdmVyJyk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkYy1sYW5ndWFnZSwgJ2JnY29sb3ItaG92ZXInKTtcblx0fVxufVxuXG4iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IE5hdlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLypcblx0Q29sb3JzIGdldCBkZWZpbmVkIGluIF9zZXR0aW5ncy5jb25maWcuc2Nzc1xuKi9cblxuJGMtbmF2OiAoXG5cdCdsaW5rLXBhZGRpbmcnOiA0cHgsXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uYy1uYXYge1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHBhZGRpbmc6IDA7XG59XG5cbi5jLW5hdl9fbGlzdCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRsaXN0LXN0eWxlOiBub25lO1xufVxuXG5cbi5jLW5hdl9faXRlbSB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZShiYXNlKTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0bWFyZ2luLXJpZ2h0OiAyJTtcblxuXHQmOmxhc3QtY2hpbGQge1xuXHRcdG1hcmdpbi1yaWdodDogMDtcblx0fVxufVxuXG5cbi5jLW5hdl9fbGluayB7XG5cdEBpbmNsdWRlIGRpc2FibGVPdXRsaW5lRm9yTW91c2U7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZzogbWFwLWdldCgkYy1uYXYsICdsaW5rLXBhZGRpbmcnKTtcblx0Y29sb3I6IG1hcC1nZXQoJHNpdGUtaGVhZGVyLCAndGV4dENvbG9yJyk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogY29sb3IgMTUwbXMgbGluZWFyO1xuXG5cdCY6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IC0xO1xuXHRcdGxlZnQ6IG1hcC1nZXQoJGMtbmF2LCAnbGluay1wYWRkaW5nJyk7XG5cdFx0Ym90dG9tOiAxcHg7XG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtICN7ZG91YmxlKG1hcC1nZXQoJGMtbmF2LCAnbGluay1wYWRkaW5nJykpfSk7XG5cdFx0aGVpZ2h0OiAycHg7XG5cdFx0Ym9yZGVyLXJhZGl1czogMXB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJHNpdGUtaGVhZGVyLCAnZGVjb3JhdGlvbkNvbG9yJyk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZVgoMCk7XG5cdFx0dHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIHJpZ2h0O1xuXHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcyBjdWJpYy1iZXppZXIoMC44NiwgMCwgMC4wNywgMSk7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogbWFwLWdldCgkc2l0ZS1oZWFkZXIsICd0ZXh0Q29sb3JIb3ZlcicpO1xuXG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuXHRcdFx0dHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGxlZnQ7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRzaXRlLWhlYWRlciwgJ2RlY29yYXRpb25Db2xvckhvdmVyJyk7XG5cdFx0fVxuXHR9XG5cblx0Ji5pcy1hY3RpdmUge1xuXHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJHNpdGUtaGVhZGVyLCAndGV4dENvbG9yQWN0aXZlJyk7XG5cblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZVgoMSk7XG5cdFx0XHR0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJHNpdGUtaGVhZGVyLCAnZGVjb3JhdGlvbkNvbG9yQWN0aXZlJyk7XG5cdFx0fVxuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZS1jb2xvcjogY3VycmVudENvbG9yO1xuXHRcdG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAxcHg7XG5cdFx0b3V0bGluZS13aWR0aDogMnB4O1xuXHR9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBQYWdpbmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtcGFnaW5hdGlvbjogKFxuXHQnY29sb3InOlx0XHRcdHBhbGV0dGUobmV1dHJhbCwgODAwKSxcblx0J2FjdGl2ZS1jb2xvcic6XHRcdHBhbGV0dGUocHJpbWFyeSwgNTAwKSxcblx0J2JvcmRlci1jb2xvcic6XHRcdHBhbGV0dGUoYm9yZGVyLCAzMDApLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLmMtcGFnaW5hdGlvbiB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhtKTtcblx0Ym9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkYy1wYWdpbmF0aW9uLCAnYm9yZGVyLWNvbG9yJyk7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYy1wYWdpbmF0aW9uX19pdGVtIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cblx0Ly8gT24gc21hbGwgc2NyZWVucyBoaWRlIGFsbCBpdGVtcyBidXQgdGhlIGFycm93cywgZmlyc3QgcGFnZSwgbGFzdCBwYWdlIGFuZCBhY3RpdmVcblx0QGluY2x1ZGUgbXEoJG1heDogbSl7XG5cdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdCY6Zmlyc3QtY2hpbGQsXG5cdFx0JjpsYXN0LWNoaWxkLFxuXHRcdCYuaXMtbGFzdC1wYWdlLFxuXHRcdCYuaXMtYWN0aXZlIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0fVxuXG5cdFx0Ji5pcy1sYXN0LXBhZ2Uge1xuXHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0JiArICYge1xuXHRcdGJvcmRlci1sZWZ0OiAxcHggc29saWQ7XG5cdFx0Ym9yZGVyLWNvbG9yOiBpbmhlcml0O1xuXHR9XG59XG5cbi5jLXBhZ2luYXRpb25fX3RleHQsXG4uYy1wYWdpbmF0aW9uX19saW5rLFxuLmMtcGFnaW5hdGlvbl9fcHJldixcbi5jLXBhZ2luYXRpb25fX25leHR7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRtaW4td2lkdGg6IHNwYWNlKDYpO1xuXHRtaW4taGVpZ2h0OiBzcGFjZSg2KTtcblx0cGFkZGluZzogc3BhY2UoMSk7XG59XG5cbi5jLXBhZ2luYXRpb25fX3RleHQge1xuXHRjb2xvcjogbWFwLWdldCgkYy1wYWdpbmF0aW9uLCAnY29sb3InKTtcblx0b3BhY2l0eTogMC4zNTtcbn1cblxuLmMtcGFnaW5hdGlvbl9fbGluayB7XG5cdGNvbG9yOiBtYXAtZ2V0KCRjLXBhZ2luYXRpb24sICdjb2xvcicpO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRyYW5zaXRpb246IGNvbG9yIDAuMnMsIGJhY2tncm91bmQtY29sb3IgMC4ycztcblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogc2NhbGUtY29sb3IobWFwLWdldCgkYy1wYWdpbmF0aW9uLCAnY29sb3InKSwgJGxpZ2h0bmVzczogLTMwJSk7XG5cdFx0YmFja2dyb3VuZDogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuXHR9XG5cblx0LmlzLWFjdGl2ZSA+ICYge1xuXHRcdGJveC1zaGFkb3c6IGluc2V0IDAgMCAxMHB4IC01cHggbWFwLWdldCgkYy1wYWdpbmF0aW9uLCAnYWN0aXZlLWNvbG9yJyk7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJGMtcGFnaW5hdGlvbiwgJ2FjdGl2ZS1jb2xvcicpO1xuXHRcdGN1cnNvcjogZGVmYXVsdDtcblx0fVxufVxuXG4uYy1wYWdpbmF0aW9uX19wcmV2LFxuLmMtcGFnaW5hdGlvbl9fbmV4dCB7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycztcblx0dHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuXG5cdCYuaXMtaW5hY3RpdmUge1xuXHRcdGNvbG9yOiByZ2JhKG1hcC1nZXQoJGMtcGFnaW5hdGlvbiwgJ2NvbG9yJyksIDAuNCk7XG5cdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdH1cbn1cblxuLmMtcGFnaW5hdGlvbl9fcHJldiB7XG5cdHRyYW5zZm9ybTogcm90YXRlKDAuMjV0dXJuKTtcbn0iLCIvKlxuICogUGFnZSB0aXRsZVxuICovXG5cbi5jLXBhZ2UtdGl0bGUge1xuICBAaW5jbHVkZSBjb250YWluO1xuICBAaW5jbHVkZSBoeXBoZW5hdGU7XG4gIHBhZGRpbmctdG9wOiBzcGFjZSgyKTtcbiAgcGFkZGluZy1ib3R0b206IHNwYWNlKDIpO1xuICBjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA4MDApO1xuXG4gIEBpbmNsdWRlIG1xKG0pIHtcbiAgICBwYWRkaW5nLXRvcDogc3BhY2UoNik7XG4gICAgcGFkZGluZy1ib3R0b206IHNwYWNlKDYpO1xuICB9XG59XG5cbi5jLXBhZ2UtdGl0bGUtLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcblxuICBAaW5jbHVkZSBtcShtKSB7XG4gICAgd2lkdGg6IGNvbHVtbig2LCA4KTtcbiAgfVxuICBAaW5jbHVkZSBtcShsKSB7XG4gICAgd2lkdGg6IGNvbHVtbig4LCAxMik7XG4gIH1cbn1cblxuLmMtcGFnZS10aXRsZV9fcHJlaGVhZGluZyB7XG4gIEBpbmNsdWRlIG1xKG0pIHtcbiAgICBtYXJnaW4tdG9wOiBzcGFjZSgtMSk7XG4gICAgbWFyZ2luLWJvdHRvbTogc3BhY2UoMSk7XG4gIH1cbn1cblxuLmMtcGFnZS10aXRsZV9faGVhZGluZyB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh4eHhsKTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuLmMtcGFnZS10aXRsZV9faGVhZGluZy1zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShsKTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cblxuLmMtcGFnZS10aXRsZV9fc3ViaGVhZGluZyB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShiYXNlKTtcbiAgY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgNDAwKTtcbn0iLCIuYy1wcm9qZWN0b3Ige1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGhlaWdodDogMTAwJTtcbn1cblxuXG4uYy1wcm9qZWN0b3JfX2ZpZ3VyZSB7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtcm93czogMWZyO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblx0aGVpZ2h0OiAxMDAlO1xufVxuXG5cbi5jLXByb2plY3Rvcl9fY2FwdGlvbiB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZShzKTtcblx0Z3JpZC1jb2x1bW46IDE7XG5cdGdyaWQtcm93OiAyO1xuXHR1c2VyLXNlbGVjdDogdGV4dDtcblx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDQwMCk7XG59XG5cblxuLmMtcHJvamVjdG9yX19waWN0dXJlIHtcblx0Z3JpZC1jb2x1bW46IDE7XG5cdGdyaWQtcm93OiAxO1xuXHRhbGlnbi1zZWxmOiBlbmQ7XG5cdGhlaWdodDogMTAwJTtcblx0bWluLWhlaWdodDogMzYwcHg7IC8vIG5lZWRlZCBmb3IgSUVcblx0ZGlzcGxheTogYmxvY2s7IC8vIE5lZWRlZCBmb3IgSUVcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXM7XG5cblx0LmllIC5jLXByb2plY3Rvci0tc2luZ2xlLWltYWdlICYge1xuXHRcdG1pbi1oZWlnaHQ6IDQwMHB4O1xuXHR9XG5cblx0Ji5pcy1hY3RpdmUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cblxuXG4uYy1wcm9qZWN0b3JfX2NvbnRyb2wge1xuXHRncmlkLWNvbHVtbjogMTtcblx0Z3JpZC1yb3c6IDE7XG5cdGFsaWduLXNlbGY6IGVuZDtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMSk7XG5cdG1hcmdpbi1yaWdodDogc3BhY2UoMSk7XG59XG5cblxuLmMtcHJvamVjdG9yX19pbWcge1xuXHQvLyBtYWtlIHN1cmUgaXQgc3RyZXRjaGVzIHRoZSBjb250YWluZXJcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblx0b2JqZWN0LWZpdDogY292ZXI7IC8vIEZhbGxiYWNrIGZvciBJRSB2aWEgSlMgcG9seWZpbGwsIG1pbi1oZWlnaHQgaXMgc2V0IG9uIHRoZSB3cmFwcGVyXG5cblx0QGluY2x1ZGUgbXEoJG1heDogbSkge1xuXHRcdG1heC1oZWlnaHQ6IDc4dmg7IC8vIE1ha2Ugc3VyZSBpbWFnZXMgYXJlIHZpc2libGUgZW50aXJlbHkgb24gc21hbGwgZGV2aWNlcyBpbiBsYW5kc2NhcGUpXG5cdH1cbn0iLCIkYy1zZXJ2aWNlcG9pbnQtYnAtd2lkdGg6IDQyMHB4OyAvLyBzaXplIG9mIGNvbXBvbmVudCB3aGVuIHdlIHN3aXRjaCBmcm9tIHN0YWNrZWQgdG8gcm93IHZpZXdcbiRjLXNlcnZpY2Vwb2ludC1nYXA6IHNwYWNlKDIpO1xuXG5cbi5jLXNlcnZpY2Vwb2ludCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHR0ZXh0LWFsaWduOiBsZWZ0OyAvLyBuZWVkZWQgZm9yIHdoZW4gYSBwYXJlbnQgZWxlbWVudCBoYXMgdGV4dC1hbGlnbiBjZW50ZXJcbn1cblxuXG4uYy1zZXJ2aWNlcG9pbnRfX2ltYWdlIHtcblx0ZmxleDogMDtcblx0bWluLXdpZHRoOiBhdXRvO1xuXHRtYXgtd2lkdGg6IDE3OHB4ICsgJGMtc2VydmljZXBvaW50LWdhcDtcblx0bWFyZ2luLXJpZ2h0OiAkYy1zZXJ2aWNlcG9pbnQtZ2FwO1xuXHRib3JkZXItcmFkaXVzOiAxMDAlO1xufVxuXG5cbi5jLXNlcnZpY2Vwb2ludF9fY29udGVudCB7XG5cdEBpbmNsdWRlIGh5cGhlbmF0ZTtcblx0bWluLXdpZHRoOiA1MCU7IC8vIEhhcyB0byBiZSBtaW5pbWFsIGhhbGYgdGhlIHNpemUgb2YgdGhlIGNvbnRhaW5lclxuXHRtYXgtd2lkdGg6IDEwMCU7XG5cdGZsZXgtZ3JvdzogMTtcblx0ZmxleC1iYXNpczogY2FsYyhjYWxjKCN7JGMtc2VydmljZXBvaW50LWJwLXdpZHRofSAtIDEwMCUpICogOTk5KTsgLy8gQmFzZWQgb24gdGhpcyBtZXRob2Q6IGh0dHBzOi8vaGV5ZG9ud29ya3MuY29tL2FydGljbGUvdGhlLWZsZXhib3gtaG9seS1hbGJhdHJvc3MvXG5cdG1hcmdpbi10b3A6IHNwYWNlKDIpO1xuXHRtYXJnaW4tYm90dG9tOiBzcGFjZSgyKTtcblxuXHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0ZmxleC1iYXNpczogYXV0bztcblx0fVxufVxuXG5cbi5jLXNlcnZpY2Vwb2ludF9fYm9keSB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDEpO1xufVxuXG5cbi5jLXNlcnZpY2Vwb2ludF9fZm9vdGVyIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG59XG5cblxuLmMtc2VydmljZXBvaW50X19oZWFkaW5nIHtcblx0QGluY2x1ZGUgZm9udChiYXNlKTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgNTAwKTtcblx0Ym9yZGVyLXJhZGl1czogMTAwJTtcbn1cblxuXG4uYy1zZXJ2aWNlcG9pbnRfX3N1YmhlYWRpbmcge1xuXHRAaW5jbHVkZSBmb250KHMpO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA0MDApO1xufSIsIi5jLXNpdGVtYXBfX2l0ZW0ge1xuXHRAaW5jbHVkZSBmb250LXNpemUoeGwpO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA1MDApO1xufVxuXG4uYy1zaXRlbWFwX19saW5rIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmc6IHNwYWNlKDAuNSkgMDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdCY6aG92ZXIge1xuXHRcdGNvbG9yOiBwYWxldHRlKHByaW1hcnksIDUwMCk7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdH1cbn0iLCIvKlxuICogU2tpcCBMaW5rXG4gKi9cblxuLmMtc2tpcC1saW5rIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHMpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogLTEwMHZoO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgY29sb3I6IHBhbGV0dGUoZmVlZGJhY2ssIGFjdGlvbik7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgb3V0bGluZS1zdHlsZTogc29saWQ7XG4gICAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgICBvdXRsaW5lLXdpZHRoOiAycHg7XG4gICAgdG9wOiA1cHg7IC8qIE5vdyB0aGUgbGluayB3aWxsIGFwcGVhciAqL1xuICB9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBTbGlkZSBpbmRpY2F0b3Jcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kYy1zbGlkZS1pbmRpY2F0b3I6IChcblx0J2RvdC1jb2xvcic6XHRcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQnZG90LWNvbG9yLWFjdGl2ZSc6XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAxMDAwKSxcblx0J2RvdC1yaW5nLWNvbG9yLWFjdGl2ZSc6XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQnZG90LXNpemUnOlx0XHRcdFx0XHQ4cHgsXG5cdCdkb3Qtc2l6ZS1hY3RpdmUnOlx0XHRcdDZweCxcblx0J2RvdC1yaW5nLXNpemUtYWN0aXZlJzpcdFx0MTJweCxcblx0J2RvdC1zaXplLXRhcmdldGJveCc6XHRcdDMwcHgsXG5cdCdkb3QtaXMtcm91bmRlZCc6XHRcdFx0dHJ1ZSxcblx0J2J1dHRvbi1pY29uLWNvbG9yJzpcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2J1dHRvbi1iZy1jb2xvcic6XHRcdFx0cGFsZXR0ZShzZWNvbmRhcnksIDUwMCksXG5cdCdidXR0b24tYmctY29sb3ItaG92ZXInOlx0c2NhbGVfY29sb3IocGFsZXR0ZShzZWNvbmRhcnksIDUwMCksICRsaWdodG5lc3M6IC0xMCUpLFxuXHQnYnV0dG9uLXNpemUnOlx0XHRcdFx0NDBweCxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5jLXNsaWRlLWluZGljYXRvciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5jLXNsaWRlLWluZGljYXRvcl9fYnV0dG9uIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRib3JkZXI6IG5vbmU7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnYnV0dG9uLWJnLWNvbG9yJyk7XG5cdGNvbG9yOiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2J1dHRvbi1pY29uLWNvbG9yJyk7XG5cdGhlaWdodDogbWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdidXR0b24tc2l6ZScpO1xuXHR3aWR0aDogbWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdidXR0b24tc2l6ZScpO1xuXG5cdCYgKyAmIHtcblx0XHRtYXJnaW4tbGVmdDogOHB4O1xuXHR9XG5cblx0JlthcmlhLWxhYmVsPSdwcmV2aW91cyddID4gc3ZnIHtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG5cdH1cblxuXHQmW2FyaWEtbGFiZWw9J25leHQnXSA+IHN2ZyB7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcblx0fVxuXG5cdCY6aG92ZXIge1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2J1dHRvbi1iZy1jb2xvci1ob3ZlcicpO1xuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZTogbm9uZTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2J1dHRvbi1iZy1jb2xvci1ob3ZlcicpO1xuXHR9XG59XG5cbi5jLXNsaWRlLWluZGljYXRvcl9fZG90IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHdpZHRoOiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1zaXplLXRhcmdldGJveCcpO1xuXHRoZWlnaHQ6IG1hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnZG90LXNpemUtdGFyZ2V0Ym94Jyk7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRib3JkZXI6IG5vbmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciwgb3BhY2l0eTtcblx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZTogbm9uZTtcblx0fVxuXG5cdCY6aG92ZXI6bm90KC5pcy1hY3RpdmUpLFxuXHQmOmZvY3VzOm5vdCguaXMtYWN0aXZlKSB7XG5cdFx0b3BhY2l0eTogMC41O1xuXHR9XG5cblx0JjpiZWZvcmUsXG5cdCY6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xuXHRcdHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgYmFja2dyb3VuZC1jb2xvciwgb3BhY2l0eTtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcblx0XHRAaWYgKG1hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnZG90LWlzLXJvdW5kZWQnKSA9PSB0cnVlKSB7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAxMDAlO1xuXHRcdH1cblx0fVxuXG5cdCY6YmVmb3JlIHtcblx0XHQkb2Zmc2V0OiBjYWxjKCgje21hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnZG90LXNpemUtdGFyZ2V0Ym94Jyl9IC0gI3ttYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1zaXplJyl9KSAvIDIpO1xuXHRcdHRvcDogJG9mZnNldDtcblx0XHRyaWdodDogJG9mZnNldDtcblx0XHRib3R0b206ICRvZmZzZXQ7XG5cdFx0bGVmdDogJG9mZnNldDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1jb2xvcicpO1xuXHR9XG5cblx0JjphZnRlciB7XG5cdFx0JG9mZnNldDogY2FsYygoI3ttYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1zaXplLXRhcmdldGJveCcpfSAtICN7bWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdkb3QtcmluZy1zaXplLWFjdGl2ZScpfSkgLyAyKTtcblx0XHR0b3A6ICRvZmZzZXQ7XG5cdFx0cmlnaHQ6ICRvZmZzZXQ7XG5cdFx0Ym90dG9tOiAkb2Zmc2V0O1xuXHRcdGxlZnQ6ICRvZmZzZXQ7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgbWFwLWdldCgkYy1zbGlkZS1pbmRpY2F0b3IsICdkb3QtcmluZy1jb2xvci1hY3RpdmUnKTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuNCk7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxuXG5cdCYuaXMtYWN0aXZlIHtcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1jb2xvci1hY3RpdmUnKTtcblx0XHRcdGJvcmRlci1jb2xvcjogcmdiYShtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1yaW5nLWNvbG9yLWFjdGl2ZScpLCAwLjkpO1xuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZShzdHJpcC11bml0KG1hcC1nZXQoJGMtc2xpZGUtaW5kaWNhdG9yLCAnZG90LXNpemUtYWN0aXZlJykpIC8gc3RyaXAtdW5pdChtYXAtZ2V0KCRjLXNsaWRlLWluZGljYXRvciwgJ2RvdC1zaXplJykpKTtcblx0XHR9XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdG9wYWNpdHk6IDAuOTtcblx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0fVxuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3BhY2l0eTogMSAhaW1wb3J0YW50O1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Ly9iYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNTAwKTtcblx0XHRcdGJveC1zaGFkb3c6IDAgMCAwIDJweCBibGFjaywgMCAwIDEwcHggMXB4IHdoaXRlO1xuXHRcdH1cblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Ly9iYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNTAwKTtcblx0XHRcdGJveC1zaGFkb3c6IDAgMCAwIDJweCBibGFjaywgMCAwIDEwcHggMXB4IHdoaXRlO1xuXHRcdH1cblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogU3VibmF2XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtc3VibmF2OiAoXG5cdCdib3JkZXItY29sb3InOiBcdFx0cGFsZXR0ZShib3JkZXIsIDMwMCksXG5cdCdjb2xvcic6XHRcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDUwMCksXG5cdCdob3Zlci1jb2xvcic6XHRcdFx0cGFsZXR0ZShzZWNvbmRhcnksIDUwMCksXG5cdCdhY3RpdmUtY29sb3InOlx0XHRcdHBhbGV0dGUocHJpbWFyeSwgNzAwKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5jLXN1Ym5hdiB7XG5cdGhlaWdodDogMTAwJTtcbn1cblxuXG4uYy1zdWJuYXYtLWJveGVkIHtcblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkc2l0ZS1pbnRybywgJ3N1Ym5hdkJnQ29sb3InKTtcblx0cGFkZGluZzogc3BhY2UoMTApICRzaXRlLWd1dHRlci13aWR0aDtcblxuXHRAaW5jbHVkZSBtcShtLCBsKXtcblx0XHRwYWRkaW5nLWxlZnQ6IDI1JTtcblx0fVxufVxuXG5cbi5jLXN1Ym5hdl9faGVhZGVyIHtcblx0bWFyZ2luOiAwO1xufVxuXG5cbi5jLXN1Ym5hdl9fbGlzdCB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDUpO1xuXHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cdG1hcmdpbi1sZWZ0OiAwO1xufVxuXG5cbi5jLXN1Ym5hdl9faXRlbS0tYmFjayB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDMpO1xufVxuXG5cbi5jLXN1Ym5hdl9fbGluayB7XG5cdEBpbmNsdWRlIGRpc2FibGVPdXRsaW5lRm9yTW91c2U7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZGlzcGxheTogZmxleDtcblx0cGFkZGluZzogc3BhY2UoMSkgMDtcblx0Y29sb3I6IG1hcC1nZXQoJGMtc3VibmF2LCAnY29sb3InKTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246IGNvbG9yIDI1MG1zO1xuXG5cdCY6aG92ZXIge1xuXHRcdGNvbG9yOiBtYXAtZ2V0KCRjLXN1Ym5hdiwgJ2hvdmVyLWNvbG9yJyk7XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG5cdFx0b3V0bGluZS1zdHlsZTogc29saWQ7XG5cdFx0b3V0bGluZS1vZmZzZXQ6IDFweDtcblx0XHRvdXRsaW5lLXdpZHRoOiAycHg7XG5cdH1cblxuXHQmOjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRib3R0b206IDA7XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIG1hcC1nZXQoJGMtc3VibmF2LCAnYm9yZGVyLWNvbG9yJyk7XG5cblx0XHQuYy1zdWJuYXZfX2l0ZW0uaXMtYWN0aXZlICYge1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRjLXN1Ym5hdiwgJ2FjdGl2ZS1jb2xvcicpO1xuXHRcdFx0Ym9yZGVyLXdpZHRoOiAycHg7XG5cdFx0fVxuXHR9XG59XG5cblxuLmMtc3VibmF2X19pY29uIHtcblx0b3BhY2l0eTogMDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0bWFyZ2luLWxlZnQ6IHNwYWNlKDIpO1xuXHRjb2xvcjogbWFwLWdldCgkYy1zdWJuYXYsICdib3JkZXItY29sb3InKTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKCN7c3BhY2UoLTIpfSk7XG5cdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLW91dDtcblxuXHQuYy1zdWJuYXZfX2xpbms6aG92ZXIgJiB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJGMtc3VibmF2LCAnaG92ZXItY29sb3InKTtcblx0fVxufVxuXG5cbi8vIEFjdGl2ZSBzdGF0ZSBvZiB0aGUgc3VibmF2IGl0ZW1cbi5jLXN1Ym5hdl9faXRlbS5pcy1hY3RpdmUge1xuXHQuYy1zdWJuYXZfX2xpbmsge1xuXHRcdGNvbG9yOiBtYXAtZ2V0KCRjLXN1Ym5hdiwgJ2FjdGl2ZS1jb2xvcicpO1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdGJvcmRlci1jb2xvcjogbWFwLWdldCgkYy1zdWJuYXYsICdhY3RpdmUtY29sb3InKTtcblx0XHRcdGJvcmRlci13aWR0aDogMnB4O1xuXHRcdH1cblx0fVxuXG5cdC5jLXN1Ym5hdl9faWNvbiB7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogVGV4dCBCdXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kYy10ZXh0YnV0dG9uOiAoXG5cdCdjb2xvcic6XHRcdFx0cGFsZXR0ZShmZWVkYmFjaywgYWN0aW9uKSxcblx0J2NvbG9yQWx0JzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8qKlxuICogMS4gQ29sb3IgZ2V0cyBpbmhlcml0ZWQgYW5kIHVzZWQgZm9yIG5lc3RlZCBlbGVtZW50cyB3aXRoICdjdXJyZW50Q29sb3InIHByb3BlcnR5XG4gKiAyLiBSZXNldCBkZWZhdWx0IGJ1dHRvbiBzdHlsaW5nXG4gKi9cblxuLmMtdGV4dGJ1dHRvbiB7XG5cdEBpbmNsdWRlIGRpc2FibGVPdXRsaW5lRm9yTW91c2U7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Y29sb3I6IG1hcC1nZXQoJGMtdGV4dGJ1dHRvbiwgJ2NvbG9yJyk7IC8qIDEgKi9cblx0cGFkZGluZzogMDsgLyogMiAqL1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLyogMiAqL1xuXHRib3JkZXI6IG5vbmU7IC8qIDIgKi9cblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRyYW5zaXRpb246IGNvbG9yIDAuM3M7XG5cblx0Jjpob3Zlcjpub3QoOmRpc2FibGVkKSB7XG5cdFx0Y29sb3I6IHNjYWxlLWNvbG9yKG1hcC1nZXQoJGMtdGV4dGJ1dHRvbiwgJ2NvbG9yJyksICRsaWdodG5lc3M6IC00MCUpO1xuXHR9XG5cdCY6ZGlzYWJsZWQge1xuXHRcdG9wYWNpdHk6IDAuNTtcblx0XHRjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXHR9XG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0XHRvdXRsaW5lLXN0eWxlOiBzb2xpZDtcblx0XHRvdXRsaW5lLW9mZnNldDogMXB4O1xuXHRcdG91dGxpbmUtd2lkdGg6IDJweDtcblx0fVxufVxuXG4uYy10ZXh0YnV0dG9uX190ZXh0IHtcblx0QGluY2x1ZGUgZm9udC1zaXplKGJhc2UpO1xufVxuXG4uYy10ZXh0YnV0dG9uX19pY29uIHtcblx0ZGlzcGxheTogbm9uZTsgLy8gQnkgZGVmYXVsdCBpY29uIGlzIGhpZGRlblxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG1hcmdpbi1sZWZ0OiBzcGFjZSgxKTtcblx0Y29sb3I6IHBhbGV0dGUoc2Vjb25kYXJ5LCA1MDApO1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcblxuXHQuYy10ZXh0YnV0dG9uOmhvdmVyOm5vdCg6ZGlzYWJsZWQpICYge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpO1xuXHR9XG5cblx0LmMtdGV4dGJ1dHRvbi0taWNvbiAme1xuXHRcdGRpc3BsYXk6IGJsb2NrOyAvLyBTaG93IHdoZW4gaGFzIGljb24gbW9kaWZpZXJcblx0fVxufVxuXG4vLyBDaGFuZ2UgZGlyZWN0aW9uIG9mIGljb24gKGFycm93KVxuLmMtdGV4dGJ1dHRvbi0taXMtcmV2ZXJzZWQge1xuXHQuYy10ZXh0YnV0dG9uX190ZXh0IHsgb3JkZXI6IDI7XHR9XG5cdC5jLXRleHRidXR0b25fX2ljb24ge1xuXHRcdG9yZGVyOiAxO1xuXHRcdHRvcDogMXB4O1xuXHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdG1hcmdpbi1yaWdodDogc3BhY2UoMSk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMC41dHVybik7XG5cdH1cblx0Jjpob3Zlcjpub3QoOmRpc2FibGVkKSAuYy10ZXh0YnV0dG9uX19pY29uIHtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgwLjV0dXJuKSB0cmFuc2xhdGVYKDNweCk7XG5cdH1cbn0iLCIkYy10b2dnbGUtdHJhbnNpdGlvbi1zcGVlZDogMjUwbXM7XG4kYy10b2dnbGUtdHJhbnNpdGlvbi1lYXNlOiBlYXNlLWluLW91dDtcbiRjLXRvZ2dsZS1sZWZ0LXBhZDogc3BhY2UoMTIpO1xuJGMtdG9nZ2xlLXJpZ2h0LXBhZDogc3BhY2UoNik7XG4kYy10b2dnbGUtaG92ZXItY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgOTAwKTtcblxuXG4uYy10b2dnbGUge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRtYXJnaW4tbGVmdDogMDtcbn1cblxuXG4uYy10b2dnbGVfX2l0ZW0ge1xuXHRAaW5jbHVkZSBvd2woc3BhY2UoMikpO1xuXHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKG0pO1xuXHRib3JkZXI6IDFweCBzb2xpZCBwYWxldHRlKG5ldXRyYWwsIDMwMCk7XG59XG5cblxuLmMtdG9nZ2xlX190aXRsZSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1sZWZ0OiAkYy10b2dnbGUtbGVmdC1wYWQ7XG5cblx0JltkYXRhLXRvZ2dsZS1pZF0ge1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0fVxufVxuXG5cbi5jLXRvZ2dsZV9faWNvbiB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAxOHB4O1xuXHRsZWZ0OiBjYWxjKCN7aGFsdmUoJGMtdG9nZ2xlLWxlZnQtcGFkKX0pO1xuXHR3aWR0aDogMjBweDtcblx0aGVpZ2h0OiAyMHB4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRjb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA3MDApO1xuXHRib3JkZXI6IDJweCBzb2xpZCBjdXJyZW50Q29sb3I7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblx0dHJhbnNpdGlvbjogYWxsIDE1MG1zIGxpbmVhcjtcblxuXHQmID4gc3ZnIHtcblx0XHR3aWR0aDogMTBweDtcblx0fVxuXG5cdCYucGx1cyB7IGRpc3BsYXk6IGZsZXg7IH1cblxuXHQuYy10b2dnbGVfX3RpdGxlLmlzLWFjdGl2ZSAmIHtcblx0XHQmLnBsdXMgeyBkaXNwbGF5OiBub25lOyB9XG5cdFx0Ji5taW51cyB7IGRpc3BsYXk6IGZsZXg7IH1cblx0fVxuXG5cdCYuY2hlY2sge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0Ym9yZGVyOiBub25lO1xuXG5cdFx0JiA+IHN2ZyB7XG5cdFx0XHR3aWR0aDogMjRweDtcblx0XHR9XG5cdH1cblxuXHQuYy10b2dnbGVfX3RpdGxlW2RhdGEtdG9nZ2xlLWlkXTpub3QoLmlzLWFjdGl2ZSk6aG92ZXIgJiB7XG5cdFx0Y29sb3I6ICRjLXRvZ2dsZS1ob3Zlci1jb2xvcjtcblx0fVxufVxuXG5cbi5jLXRvZ2dsZV9fbGFiZWwge1xuXHRAaW5jbHVkZSBmb250LXNpemUoYmFzZSk7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdHBhZGRpbmc6IHNwYWNlKDIpIDA7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRjb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA3MDApO1xuXHR0cmFuc2l0aW9uOiBhbGwgMTUwbXMgbGluZWFyO1xuXG5cdC5jLXRvZ2dsZV9fdGl0bGVbZGF0YS10b2dnbGUtaWRdOm5vdCguaXMtYWN0aXZlKTpob3ZlciAmIHtcblx0XHRjb2xvcjogJGMtdG9nZ2xlLWhvdmVyLWNvbG9yO1xuXHR9XG59XG5cblxuLmMtdG9nZ2xlX19jb250ZW50IHtcblx0bWF4LWhlaWdodDogMDtcblx0b3BhY2l0eTogMDtcblx0cGFkZGluZy1sZWZ0OiAkYy10b2dnbGUtbGVmdC1wYWQ7XG5cdHBhZGRpbmctcmlnaHQ6ICRjLXRvZ2dsZS1yaWdodC1wYWQ7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lOyAvLyBOZWVkZWQgc28gd2UgZG9uJ3QgY2xpY2sgb24gaXQgd2hlbiBpdCBpcyBoaWRkZW5cblx0dHJhbnNpdGlvbjogYWxsICRjLXRvZ2dsZS10cmFuc2l0aW9uLXNwZWVkICRjLXRvZ2dsZS10cmFuc2l0aW9uLWVhc2U7XG5cblx0LmlzLWFjdGl2ZSB+ICYge1xuXHRcdHBhZGRpbmctYm90dG9tOiBzcGFjZSgyKTtcblx0XHRtYXgtaGVpZ2h0OiAxMDAwcHg7XG5cdFx0b3BhY2l0eTogMTtcblx0XHRwb2ludGVyLWV2ZW50czogYWxsO1xuXHR9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBUcmFkZW1hcmtcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kby10cmFkZW1hcms6IChcblx0J2xvZ28td2lkdGgnOlx0XHQxMDBweFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5jLXRyYWRlbWFyayB7XG5cdEBpbmNsdWRlIGRpc2FibGVPdXRsaW5lRm9yTW91c2U7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0cmFuc2l0aW9uOiBjb2xvciAyMDBtcyA7XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG5cdFx0b3V0bGluZS1zdHlsZTogc29saWQ7XG5cdFx0b3V0bGluZS1vZmZzZXQ6IDFweDtcblx0XHRvdXRsaW5lLXdpZHRoOiAycHg7XG5cdH1cbn1cblxuLmMtdHJhZGVtYXJrX190ZXh0IHtcblx0bWFyZ2luLXJpZ2h0OiA3cHg7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5jLXRyYWRlbWFya19faWNvbiB7XG5cdHdpZHRoOiBtYXAtZ2V0KCRvLXRyYWRlbWFyaywgJ2xvZ28td2lkdGgnKTtcblx0bWF4LWhlaWdodDogMzJweDtcblx0b3BhY2l0eTogLjU7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXM7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcblxuXHQuYy10cmFkZW1hcms6aG92ZXIgJiB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxufSIsIi5jLXZhY2FuY3ktcHJvcGVydGllcyB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0bWFyZ2luLWxlZnQ6IDA7XG59XG5cblxuLmMtdmFjYW5jeS1wcm9wZXJ0aWVzX19pdGVtIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Y29sb3I6IHBhbGV0dGUoZmVlZGJhY2ssIGFjdGlvbik7XG5cdG1hcmdpbi10b3A6IDRweDtcblx0bWFyZ2luLWJvdHRvbTogNHB4O1xuXG5cdCY6bnRoLWxhc3QtY2hpbGQobisyKSB7XG5cdFx0bWFyZ2luLXJpZ2h0OiBzcGFjZSg0KTtcblx0fVxufVxuXG5cbi5jLXZhY2FuY3ktcHJvcGVydGllc19faWNvbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHdpZHRoOiAyNHB4O1xuXHRoZWlnaHQ6IDI0cHg7XG5cdG1hcmdpbi1yaWdodDogc3BhY2UoMSk7XG59IiwiLmMtdmlkZW97XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgLy8gQXNwZWN0IFJhdGlvOiAxNjo5XG4gIGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMjAwKTtcbn1cblxuLmMtdmlkZW9fX2lmcmFtZXtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59IiwiLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBPcmdhbmlzbXNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG5AaW1wb3J0IFwib3JnYW5pc21zLmFjY29yZGlvblwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5hcHBseVwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5ibG9ja1wiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5ib2R5XCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmNhbGxvdXRCYXJcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuY2FyZC1ncmlkXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmNvbnRhY3RcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuY29va2llQmFyXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmRvdWJsZUltYWdlXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmRvdWJsZVRleHRcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuZG91YmxlVXNwXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmRvd25sb2Fkc1wiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5ldmVudFwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5ldmVudHNcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuZm9vdGVyXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmZvcm1cIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuaGVhZGVyXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmludHJvXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLmxvZ29zXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLm1hcFwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy5uZXdzXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLm92ZXJsYXlNZW51XCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLnF1b3RlXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLnJlZmVyZW5jZXNcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMuc3ViZm9vdGVyXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLnRhYnNsaWRlclwiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy50ZWFtXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLnRoYW5rc1wiO1xuLy9AaW1wb3J0IFwib3JnYW5pc21zLnRvcC1iYXJcIjtcbkBpbXBvcnQgXCJvcmdhbmlzbXMudXNwXCI7XG5AaW1wb3J0IFwib3JnYW5pc21zLnZhY2FuY2llc1wiO1xuQGltcG9ydCBcIm9yZ2FuaXNtcy52YWNhbmN5XCI7XG4iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IEFjY29yZGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRvLWFjY29yZGlvbjogKFxuXHQnYm9yZGVyLXdpZHRoJzpcdFx0XHQxcHgsXG5cdCdib3JkZXItY29sb3InOlx0XHRcdHBhbGV0dGUoYm9yZGVyLCAzMDApLFxuXHQnaGVhZGVyLWNvbG9yJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDEwMDApLFxuXHQnaG92ZXItY29sb3InOiBcdFx0XHRwYWxldHRlKHByaW1hcnksIDUwMCksXG5cdCdpY29uLWNvbG9yJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDEwMDApLFxuXHQnaWNvbi1ib3JkZXItc2l6ZSc6IFx0MnB4LFxuXHQnaWNvbi1zaXplJzpcdFx0XHQyMHB4LFxuXHQnaWNvbi1zdHJpcGUtaGVpZ2h0JzpcdDJweCxcblx0J2ljb24tc3RyaXBlLXdpZHRoJzogIFx0MTBweCxcblx0J3RyYW5zaXRpb24tZHVyYXRpb24nOlx0NDAwbXMsXG5cdCd0cmFuc2l0aW9uLWVhc2luZyc6XHRjdWJpYy1iZXppZXIoMC44NiwgMCwgMC4wNywgMSksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uby1hY2NvcmRpb24ge1xuXHRAaW5jbHVkZSBjb250YWluO1xufVxuXG4uby1hY2NvcmRpb25fX2l0ZW0ge1xuXHRAaW5jbHVkZSBvd2woc3BhY2UoMikpO1xuXHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKG0pO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGJvcmRlci1zdHlsZTogc29saWQ7XG5cdGJvcmRlci13aWR0aDogbWFwLWdldCgkby1hY2NvcmRpb24sICdib3JkZXItd2lkdGgnKTtcblx0Ym9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2JvcmRlci1jb2xvcicpO1xuXHR0cmFuc2l0aW9uLXByb3BlcnR5OiBib3JkZXI7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zO1xuXG5cdCY6bm90KC5pcy1hY3RpdmUpOmhvdmVyIHtcblx0XHRib3JkZXItY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNTAwKTtcblx0fVxufVxuXG4uby1hY2NvcmRpb25fX3RpdGxlIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRwYWRkaW5nLXRvcDogc3BhY2UoMik7XG5cdHBhZGRpbmctcmlnaHQ6IHNwYWNlKDMpO1xuXHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoMik7XG5cdHBhZGRpbmctbGVmdDogc3BhY2UoNik7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2hlYWRlci1jb2xvcicpO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cblx0QGluY2x1ZGUgbXEobSl7XG5cdFx0cGFkZGluZy1sZWZ0OiBjb2x1bW4oMSw4KTtcblx0fVxuXHRAaW5jbHVkZSBtcShsKXtcblx0XHRwYWRkaW5nLWxlZnQ6IGNvbHVtbigxLDEyKTtcblx0fVxuXG5cdC8vIE9ubHkgc2V0IGhvdmVyIGNvbG9yIHdoZW4gbm90IGFjdGl2ZVxuXHQuby1hY2NvcmRpb25fX2l0ZW06bm90KC5pcy1hY3RpdmUpICY6aG92ZXIge1xuXHRcdGNvbG9yOiBtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2hvdmVyLWNvbG9yJyk7XG5cdH1cbn1cblxuLm8tYWNjb3JkaW9uX19pY29uIHtcblx0ZmxleDogMCAwIGF1dG87XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiBhdXRvO1xuXHRsZWZ0OiAoc3BhY2UoMykgLSBoYWx2ZShtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2ljb24tc2l6ZScpKSk7XG5cdHdpZHRoOiBtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2ljb24tc2l6ZScpO1xuXHRoZWlnaHQ6IG1hcC1nZXQoJG8tYWNjb3JkaW9uLCAnaWNvbi1zaXplJyk7XG5cdGNvbG9yOiBpbmhlcml0O1xuXHRib3JkZXItY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0Ym9yZGVyLXdpZHRoOiBtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2ljb24tYm9yZGVyLXNpemUnKTtcblx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcblx0Ym9yZGVyLXJhZGl1czogMTAwJTtcblx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zO1xuXHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcblxuXHRAaW5jbHVkZSBtcShtKXtcblx0XHRsZWZ0OiBjYWxjKCN7Y29sdW1uKDAuNSwgOCl9IC0gI3toYWx2ZShtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2ljb24tc2l6ZScpKX0pO1xuXHR9XG5cdEBpbmNsdWRlIG1xKGwpe1xuXHRcdGxlZnQ6IGNhbGMoI3tjb2x1bW4oMC41LCAxMil9IC0gI3toYWx2ZShtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2ljb24tc2l6ZScpKX0pO1xuXHR9XG5cblx0Jjo6YmVmb3JlLFxuXHQmOjphZnRlciB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGhlaWdodDogbWFwLWdldCgkby1hY2NvcmRpb24sICdpY29uLXN0cmlwZS1oZWlnaHQnKTtcblx0XHR3aWR0aDogbWFwLWdldCgkby1hY2NvcmRpb24sICdpY29uLXN0cmlwZS13aWR0aCcpO1xuXHRcdGxlZnQ6IGhhbHZlKG1hcC1nZXQoJG8tYWNjb3JkaW9uLCAnaWNvbi1zaXplJykgLSBtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ2ljb24tc3RyaXBlLXdpZHRoJykgLSAoZG91YmxlKG1hcC1nZXQoJG8tYWNjb3JkaW9uLCAnaWNvbi1ib3JkZXItc2l6ZScpKSkpO1xuXHRcdHRvcDogY2FsYyg1MCUgLSAje2hhbHZlKG1hcC1nZXQoJG8tYWNjb3JkaW9uLCAnaWNvbi1ib3JkZXItc2l6ZScpKX0pO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0XHR0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLCB0cmFuc2Zvcm07XG5cdFx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXMsIG1hcC1nZXQoJG8tYWNjb3JkaW9uLCAndHJhbnNpdGlvbi1kdXJhdGlvbicpO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLCBtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ3RyYW5zaXRpb24tZWFzaW5nJyk7XG5cdH1cblxuXHQmOjpiZWZvcmUge1xuXHRcdC5vLWFjY29yZGlvbl9faXRlbS5pcy1hY3RpdmUgJiB7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlWCgwKSByb3RhdGUoMC4yNXR1cm4pO1xuXHRcdH1cblx0fVxuXG5cdCY6OmFmdGVyIHtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgwLjI1dHVybik7XG5cblx0XHQuby1hY2NvcmRpb25fX2l0ZW0uaXMtYWN0aXZlICYge1xuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMC41dHVybik7XG5cdFx0fVxuXHR9XG59XG5cbi5vLWFjY29yZGlvbl9faGVhZGVyIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKGJhc2UpO1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRjb2xvcjogaW5oZXJpdDtcblx0dGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuXHR0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjtcblx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XG5cdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoeGwpO1xuXHR9XG59XG5cbi8qIEhpZGRlbiBieSBkZWZhdWx0Ki9cbi5vLWFjY29yZGlvbl9fY29udGVudCB7XG5cdEBpbmNsdWRlIG93bC1jaGlsZHJlbjtcblx0b3BhY2l0eTogMDtcblx0bWF4LWhlaWdodDogMDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cGFkZGluZy1sZWZ0OiBzcGFjZSg2KTtcblx0cGFkZGluZy1yaWdodDogc3BhY2UoMyk7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuXHQvLyBDbG9zZSBhbmltYXRpb25cblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG5cblx0QGluY2x1ZGUgbXEobSl7XG5cdFx0cGFkZGluZy1sZWZ0OiBjb2x1bW4oMSw4KTtcblx0fVxuXHRAaW5jbHVkZSBtcShsKXtcblx0XHRwYWRkaW5nLWxlZnQ6IGNvbHVtbigxLDEyKTtcblx0fVxuXG5cdC5vLWFjY29yZGlvbl9faXRlbS5pcy1hY3RpdmUgJiB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHRtYXgtaGVpZ2h0OiA0MDBweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoNCk7XG5cdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdC8vIE9wZW4gYW5pbWF0aW9uICh3aXRoIHRoZSBzYW1lIGRlbGF5IGFzIGNsb3NlIGR1cmF0aW9uKVxuXHRcdHRyYW5zaXRpb24tcHJvcGVydHk6IGFsbDtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRvLWFjY29yZGlvbiwgJ3RyYW5zaXRpb24tZHVyYXRpb24nKTtcblx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG5cdFx0dHJhbnNpdGlvbi1kZWxheTogMC4ycztcblx0fVxufSIsIiRvLWFwcGx5LWJwMTogNzAwO1xuJG8tYXBwbHktZ2FwOiBzcGFjZSg2KTtcblxuXG4uby1hcHBseSB7XG5cdEBpbmNsdWRlIHZzcGFjaW5nKFxuXHRcdCdwYWRkaW5nLXRvcCcgMC41LFxuXHRcdCdwYWRkaW5nLWJvdHRvbScgMVxuXHQpO1xufVxuXG4uby1hcHBseV9faGVhZGluZyB7XG5cdHBhZGRpbmctYm90dG9tOiBzcGFjZSg2KTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgOTAwKTtcbn1cblxuXG4uby1hcHBseV9fYm9keSB7XG5cdEBpbmNsdWRlIG1xKCRvLWFwcGx5LWJwMSkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdH1cbn1cblxuXG4uby1hcHBseV9fbGVmdCB7XG5cdEBpbmNsdWRlIG1xKCRvLWFwcGx5LWJwMSkge1xuXHRcdHdpZHRoOiBjYWxjKCN7Y29sdW1uKDYsMTIpfSArICN7JG8tYXBwbHktZ2FwfSk7XG5cdFx0cGFkZGluZy1yaWdodDogJG8tYXBwbHktZ2FwO1xuXHR9XG59XG5cblxuLm8tYXBwbHlfX3JpZ2h0IHtcblx0bWFyZ2luLXRvcDogc3BhY2UoMik7XG5cblx0QGluY2x1ZGUgbXEoJG8tYXBwbHktYnAxKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig2LDEyKTtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHR9XG59XG5cblxuLm8tYXBwbHlfX3JvdyB7XG5cdEBpbmNsdWRlIG93bChzcGFjZSgyKSk7XG59XG5cblxuLm8tYXBwbHlfX2ZpbGV1cGxvYWQge1xuXHRAaW5jbHVkZSBtcSgkby1hcHBseS1icDEpIHtcblx0XHRtYXJnaW4tdG9wOiBzcGFjZSg1KTtcblx0fVxufVxuXG5cbi5vLWFwcGx5X19mb290ZXIge1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgcGFsZXR0ZShuZXV0cmFsLCAzMDApO1xuXHRtYXJnaW4tdG9wOiBzcGFjZSg2KTtcblx0cGFkZGluZy10b3A6IHNwYWNlKDYpO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5vLWFwcGx5X19mZWVkYmFjayB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDQpO1xufSIsIi5vLWJsb2NrIHtcblx0QGluY2x1ZGUgdnNwYWNpbmcoXG5cdFx0XHQnbWFyZ2luLWJvdHRvbScgMVxuXHQpO1xuXG5cdC8vIFRvcCBtYXJnaW4gb25seSBvbiBjb25zZWN1dGl2ZSBibG9ja3Ncblx0JiArICYge1xuXHRcdEBpbmNsdWRlIHZzcGFjaW5nKFxuXHRcdFx0XHQnbWFyZ2luLXRvcCcgMVxuXHRcdCk7XG5cdH1cbn0iLCIgLypcbiAqIFdyYXBwZXIgb2YgdGhlIG1haW4gYm9keVxuICogKGJldHdlZW4gdGhlIGhlYWRlciBhbmQgdGhlIGZvb3RlcilcbiAqL1xuXG5cbi5vLWJvZHkge1xuXHRAaW5jbHVkZSB6KHotYm9keSk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZmxleDogMCAwIGF1dG87XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBDYWxsb3V0IGJhclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRvLWNhbGxvdXQtYmFyOiAoXG5cdCdjb2xvcic6ICBcdFx0cGFsZXR0ZShuZXV0cmFsLCA4MDApLFxuXHQnYmdjb2xvcic6ICBcdHBhbGV0dGUobmV1dHJhbCwgMTAwKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5vLWNhbGxvdXQtYmFyIHtcblx0QGluY2x1ZGUgaHlwaGVuYXRlO1xuXHRjb2xvcjogbWFwLWdldCgkby1jYWxsb3V0LWJhciwgJ2NvbG9yJyk7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG8tY2FsbG91dC1iYXIsICdiZ2NvbG9yJyk7XG4gIFx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uby1jYWxsb3V0LWJhcl9fbWFpbiB7XG5cdEBpbmNsdWRlIGNvbnRhaW47XG4gICAgQGluY2x1ZGUgdnNwYWNpbmcoXG4gICAgICAgICdwYWRkaW5nLXRvcCcgMSxcbiAgICAgICAgJ3BhZGRpbmctYm90dG9tJyAxXG4gICAgKTtcblxuXHQvLyBWZXJ0aWNhbCBzcGFjaW5nIGZvciBlbGVtZW50cyB0aGF0IHByb2NlZWQgYW5vdGhlciBlbGVtZW50XG5cdCYgPiAqICsgKiB7XG5cdFx0QGluY2x1ZGUgdnNwYWNpbmcoXG5cdFx0XHQnbWFyZ2luLXRvcCcgMC41XG5cdFx0KTtcblx0fVxufVxuXG5cbi5vLWNhbGxvdXQtYmFyX19ib2R5IHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5cbi5vLWNhbGxvdXQtYmFyX19oZWFkaW5nIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHh4bCk7XG59IiwiLypcbiAqIENhcmQgZ3JpZFxuICpcbiAqL1xuXG4kby1jYXJkLWdyaWQtaXRlbXMtbTogICAyOyAvLyBOdW1iZXIgb2YgY2FyZHMgd2hlbiBpbiBtZWRpdW0gdmlld3BvcnRcbiRvLWNhcmQtZ3JpZC1pdGVtcy1sOiAgIDM7IC8vIE51bWJlciBvZiBjYXJkcyB3aGVuIGluIGxhcmdlIHZpZXdwb3J0XG4kby1jYXJkLWdyaWQtbS1icDogICAgICA2MDA7IC8vIEN1c3RvbSBicmVha3BvaW50IHdoZW4gc3dpdGNoaW5nIGZyb20gc3RhY2tlZCBjYXJkcyB0byByb3dzXG4kby1jYXJkLWdyaWQtc3BhY2luZzogICBzcGFjZSg0KTtcblxuJG8tY2FyZC1ncmlkLXNpemUtbTogICAgcGVyY2VudGFnZSgxLyRvLWNhcmQtZ3JpZC1pdGVtcy1tKTtcbiRvLWNhcmQtZ3JpZC1zaXplLWw6ICAgIHBlcmNlbnRhZ2UoMS8kby1jYXJkLWdyaWQtaXRlbXMtbCk7XG5cblxuXG4uby1jYXJkLWdyaWRfX21haW4ge1xuICBAaW5jbHVkZSBtcSgkby1jYXJkLWdyaWQtbS1icCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG59XG5cbi5vLWNhcmQtZ3JpZF9faXRlbSB7XG5cbiAgLy8gQ3JlYXRlIG5pY2UgdmVydGljYWwgc3BhY2luZyBvbiBtb2JpbGVcbiAgQGluY2x1ZGUgbXEoJG1heDogJG8tY2FyZC1ncmlkLW0tYnApe1xuICAgICYgKyAmIHtcbiAgICAgIG1hcmdpbi10b3A6IHNwYWNlKDQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNpbmdsZSBjb2x1bW4gKHN0YWNrZWQpXG4gIEBpbmNsdWRlIG1xKCRtYXg6ICRvLWNhcmQtZ3JpZC1tLWJwKSB7XG4gICAgbWF4LXdpZHRoOiAzNDRweDsgLy8gY29uc3RyYWluIHRoZSB3aWR0aCBvZiB0aGUgY2FyZCBpbnNpZGVcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gIC8vIFR3byBjb2x1bW5zXG4gIEBpbmNsdWRlIG1xKCRvLWNhcmQtZ3JpZC1tLWJwLCAkbWF4OiBsKSB7XG4gICAgZmxleDogMDtcbiAgICAvLyBXZSBjYWxjdWxhdGUgdGhlIHNpemUgb2YgdGhlIGl0ZW0gYmFzZWQgb24gdGhlIHNldHRpbmdzIGFuZCBwdXQgaXQgaW4gYSBsb25naGFuZCBmbGV4IHZhbHVlIGJlY2F1c2Ugb2YgSUUgc3VwcG9ydFxuICAgIGZsZXgtYmFzaXM6IGNhbGMoI3skby1jYXJkLWdyaWQtc2l6ZS1tfSAtICgoI3skby1jYXJkLWdyaWQtaXRlbXMtbX0gLSAxKSAvICN7JG8tY2FyZC1ncmlkLWl0ZW1zLW19ICogI3skby1jYXJkLWdyaWQtc3BhY2luZ30pKTtcbiAgICBtYXJnaW4tbGVmdDogI3skby1jYXJkLWdyaWQtc3BhY2luZ307XG5cbiAgICAmOm50aC1jaGlsZCgjeyRvLWNhcmQtZ3JpZC1pdGVtcy1tfW4gKyAxKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZChuICsgI3skby1jYXJkLWdyaWQtaXRlbXMtbSArIDF9KSB7XG4gICAgICBtYXJnaW4tdG9wOiAjeyRvLWNhcmQtZ3JpZC1zcGFjaW5nfTtcbiAgICB9XG4gIH1cblxuICAvLyBGb3VyIGNvbHVtbnNcbiAgQGluY2x1ZGUgbXEobCkge1xuICAgIGZsZXg6IDA7XG4gICAgLy8gV2UgY2FsY3VsYXRlIHRoZSBzaXplIG9mIHRoZSBpdGVtIGJhc2VkIG9uIHRoZSBzZXR0aW5ncyBhbmQgcHV0IGl0IGluIGEgbG9uZ2hhbmQgZmxleCB2YWx1ZSBiZWNhdXNlIG9mIElFIHN1cHBvcnRcbiAgICBmbGV4LWJhc2lzOiBjYWxjKCN7JG8tY2FyZC1ncmlkLXNpemUtbH0gLSAoKCN7JG8tY2FyZC1ncmlkLWl0ZW1zLWx9IC0gMSkgLyAjeyRvLWNhcmQtZ3JpZC1pdGVtcy1sfSAqICN7JG8tY2FyZC1ncmlkLXNwYWNpbmd9KSk7XG4gICAgbWFyZ2luLWxlZnQ6ICN7JG8tY2FyZC1ncmlkLXNwYWNpbmd9O1xuXG4gICAgJjpudGgtY2hpbGQoI3skby1jYXJkLWdyaWQtaXRlbXMtbH1uICsgMSkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQobiArICN7JG8tY2FyZC1ncmlkLWl0ZW1zLWwgKyAxfSkge1xuICAgICAgbWFyZ2luLXRvcDogJG8tY2FyZC1ncmlkLXNwYWNpbmc7XG4gICAgfVxuICB9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBDb250YWN0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJG8tY29udGFjdDogKFxuXHQnYmdjb2xvci1mb3JtJzpcdFx0cGFsZXR0ZShuZXV0cmFsLCAxMDApLFxuXHQnYnAtbGFyZ2UnOlx0XHRcdDEwNDBcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uby1jb250YWN0IHtcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdEBpbmNsdWRlIG1xKG1hcC1nZXQoJG8tY29udGFjdCwgJ2JwLWxhcmdlJykpIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdHdpZHRoOiBjYWxjKCgxMDAlIC8gI3skc2l0ZS1jb2x1bW5zLWwgKyAyfSkgKiAjeyRzaXRlLWNvbHVtbnMtbH0pO1xuXHRcdG1heC13aWR0aDogI3skc2l0ZS1tYXgtd2lkdGh9cHg7XG5cdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHR9XG59XG5cblxuLm8tY29udGFjdF9faW5mbyB7XG5cdEBpbmNsdWRlIGd1dHRlclBhZGRpbmcobSk7XG5cdEBpbmNsdWRlIGd1dHRlclBhZGRpbmcobCk7XG5cdHBhZGRpbmctdG9wOiBzcGFjZSg0KTtcblx0cGFkZGluZy1sZWZ0OiAkc2l0ZS1ndXR0ZXItd2lkdGg7XG5cdHBhZGRpbmctcmlnaHQ6ICRzaXRlLWd1dHRlci13aWR0aDtcblxuXG5cdEBpbmNsdWRlIG1xKG1hcC1nZXQoJG8tY29udGFjdCwgJ2JwLWxhcmdlJykpIHtcblx0XHR3aWR0aDogY29sdW1uKDYsMTIpO1xuXHRcdHBhZGRpbmctdG9wOiBzcGFjZSg2KTtcblx0XHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoNik7XG5cdFx0cGFkZGluZy1yaWdodDogc3BhY2UoMSk7XG5cdH1cbn1cblxuLm8tY29udGFjdF9fZm9ybSB7XG5cdEBpbmNsdWRlIGd1dHRlclBhZGRpbmcobSk7XG5cdEBpbmNsdWRlIGd1dHRlclBhZGRpbmcobCk7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDQpO1xuXHRwYWRkaW5nOiBzcGFjZSg0KSAkc2l0ZS1ndXR0ZXItd2lkdGg7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG8tY29udGFjdCwgJ2JnY29sb3ItZm9ybScpO1xuXG5cdEBpbmNsdWRlIG1xKG1hcC1nZXQoJG8tY29udGFjdCwgJ2JwLWxhcmdlJykpIHtcblx0XHR3aWR0aDogY29sdW1uKDYsMTIpO1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0cGFkZGluZy10b3A6IHNwYWNlKDYpO1xuXHR9XG59XG5cbi5vLWNvbnRhY3RfX2hlYWRlciB7XG5cdEBpbmNsdWRlIGh5cGhlbmF0ZTtcblx0QGluY2x1ZGUgZm9udC1zaXplKHh4bCk7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDQpO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA4MDApO1xufVxuXG4uby1jb250YWN0X19jYXJkIHtcblxuXHQvLyBNYWdpYyBudW1iZXIgaW4gbXEgZm9yIHdoZW4gc2VydmljZXBvaW50IHN3aXRjaGVzIHRvIGhvcml6b250YWxcblx0QGluY2x1ZGUgbXEoNDk1KSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMyk7XG5cdH1cbn1cblxuLm8tY29udGFjdF9fYWRkcmVzcyB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDMpO1xufVxuXG4uby1jb250YWN0X19udW1iZXJzIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoMik7XG59XG5cblxuLm8tY29udGFjdF9fdGFibGUge1xuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHR3aWR0aDogMTAwJTtcblxuXHR0ZDpmaXJzdC1jaGlsZCB7XG5cdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCA4MDApO1xuXHR9XG59IiwiLy8gQ29tcG9uZW50IHNldHRpbmdzOiBDb29raWViYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kby1jb29raWUtYmFyOiAoXG5cdCdiZ2NvbG9yJzpcdFx0cGFsZXR0ZShuZXV0cmFsLCA5MDApLFxuXHQnY29sb3InOlx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuKTtcblxuLm8tY29va2llLWJhciB7XG5cdHotaW5kZXg6IC0xOyAvLyBub3Qgc2VsZWN0YWJsZVxuXHRkaXNwbGF5OiBub25lOyAvLyBoaWRlIGJ5IGRlZmF1bHRcblx0cG9zaXRpb246IGZpeGVkO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IDA7XG5cdGhlaWdodDogJHNpdGUtY29va2llQmFyLWhlaWdodDtcblx0d2lkdGg6IDEwMCU7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG8tY29va2llLWJhciwgJ2JnY29sb3InKTtcblx0b3BhY2l0eTogMTtcblx0Ym94LXNoYWRvdzogMCAtNHB4IDZweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzLCB0cmFuc2Zvcm0gMC42cztcblx0dHJhbnNmb3JtOiBub25lO1xuXG5cdC8vIFdoZW4gY29va2llcyBhcmUgbm90IHlldCBhY2NlcHRlZCwgc2hvdyBjb29raWViYXJcblx0Jjpub3QoLmlzLWFjY2VwdGVkKSB7XG5cdFx0QGluY2x1ZGUgeih6LWNvb2tpZSk7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0fVxuXG5cdCYuaXMtdHJhbnNpdGlvbmluZy1vdXQge1xuXHRcdHotaW5kZXg6IC0xOyAvLyBub3Qgc2VsZWN0YWJsZVxuXHRcdG9wYWNpdHk6IDA7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSk7XG5cdH1cbn1cblxuLm8tY29va2llLWJhcl9fbWFpbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXG5cdEBpbmNsdWRlIG1xKCRtYXg6IDM3NCkge1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMC45KTtcblx0fVxufVxuXG4uby1jb29raWUtYmFyX190ZXh0IHtcblx0bWFyZ2luOiAwO1xuXHRjb2xvcjogbWFwLWdldCgkby1jb29raWUtYmFyLCAnY29sb3InKTtcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiAzNzUpIHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoeHMpO1xuXHR9XG59XG5cbi5vLWNvb2tpZS1iYXJfX2xpbmsge1xuXHRjb2xvcjogaW5oZXJpdDtcblx0dHJhbnNpdGlvbjogY29sb3IgMC4zcztcblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogcmdiYShtYXAtZ2V0KCRvLWNvb2tpZS1iYXIsICdjb2xvcicpLCAwLjc1KTtcblx0fVxufVxuXG4uby1jb29raWUtYmFyX19idXR0b24ge1xuXHRmbGV4OiBub25lO1xuXHRtYXJnaW4tbGVmdDogc3BhY2UoNSk7XG5cblx0QGluY2x1ZGUgbXEoJG1heDogbSkge1xuXHRcdG1hcmdpbi1sZWZ0OiBzcGFjZSgyKTtcblx0fVxufSIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogRG91YmxlIGltYWdlIGluIDIgZXF1YWwgY29sdW1uc1xuICpcbiAqIFVudGlsIHZpZXdwb3J0IGlzIHdpZGUgZW5vdWdoIHRoZSBwaWN0dXJlcyBhcmUgc3RhY2tlZCB2ZXJ0aWNhbGx5XG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuJG8tZG91YmxlLWltYWdlLWJwMTogMTEwMDtcblxuLm8tZG91YmxlLWltYWdlIHtcblx0bWFyZ2luOiAtMXB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblxuXHQvLyBTZXQgc2lkZSBieSBzaWRlIGZyb20gbWVkaXVtIHZpZXdwb3J0cyBhbmQgdXBcblx0QGluY2x1ZGUgbXEoJG8tZG91YmxlLWltYWdlLWJwMSkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdH1cbn1cblxuXG4uby1kb3VibGUtaW1hZ2VfX3BpY3R1cmUge1xuXHRkaXNwbGF5OiBibG9jaztcblx0bWFyZ2luOiAxcHg7XG5cdG9yZGVyOiAxO1xuXHRtaW4taGVpZ2h0OiAzNjBweDsgLy8gbmVlZGVkIGZvciBJRVxuXG5cdEBpbmNsdWRlIG1xKCRvLWRvdWJsZS1pbWFnZS1icDEpIHtcblx0XHR3aWR0aDogY29sdW1uKDYsIDEyKTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRcdH1cblx0fVxufVxuXG5cbi5vLWRvdWJsZS1pbWFnZV9faW1nIHtcblx0b2JqZWN0LWZpdDogY292ZXI7IC8vIEZhbGxiYWNrIGZvciBJRSB2aWEgSlMgcG9seWZpbGwsIG1pbi1oZWlnaHQgY2FuIGJlIG5lZWRlZC4uXG5cdG1heC1oZWlnaHQ6IDg1dmg7XG59XG5cblxuLm8tZG91YmxlLWltYWdlLS1pcy1yZXZlcnNlZCB7XG5cdCYgLm8tZG91YmxlLWltYWdlX19waWN0dXJlIHtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0b3JkZXI6IDA7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXHRcdH1cblx0fVxufSIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogRG91YmxlIGxheW91dCBpbiAyIGVxdWFsIGNvbHVtbnNcbiAqXG4gKiBVbnRpbCB2aWV3cG9ydCBpcyB3aWRlIGVub3VnaCB0aGUgY29sdW1ucyBhcmUgc3RhY2tlZCB2ZXJ0aWNhbGx5XG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4uby1kb3VibGUtdGV4dCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcblx0aGVpZ2h0OiAxMDAlOyAvLyBzdHJldGNoIGl0IG91dCBpbiBpdHMgY29udGFpbmVyXG5cblx0Ly8gU2V0IHNpZGUgYnkgc2lkZSBmcm9tIG1lZGl1bSB2aWV3cG9ydHMgYW5kIHVwXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHR9XG59XG5cblxuLm8tZG91YmxlLXRleHRfX2NvbHVtbiB7XG5cblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNiwgMTIpO1xuXHR9XG5cblx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0QGluY2x1ZGUgbXEobSwgbCkge1xuXHRcdFx0d2lkdGg6IGNvbHVtbig1LCA4KTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IGNvbHVtbigxLCA4KTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgbXEobCkge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiBjb2x1bW4oMSwgMTIpO1xuXHRcdH1cblx0fVxuXG5cdCY6bGFzdC1jaGlsZCB7XG5cdFx0Ly8gQ3JlYXRlIHZlcnRpY2FsIHNwYWNpbmcgb24gbW9iaWxlXG5cdFx0QGluY2x1ZGUgdnNwYWNpbmctcyhcblx0XHRcdCdtYXJnaW4tdG9wJyAwLjVcblx0XHQpO1xuXHRcdEBpbmNsdWRlIG1xKG0sIGwpIHtcblx0XHRcdHdpZHRoOiBjb2x1bW4oMywgOCk7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIG1xKGwpIHtcblx0XHRcdHBhZGRpbmctbGVmdDogY29sdW1uKDEsIDEyKTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IGNvbHVtbigxLCAxMik7XG5cdFx0fVxuXHR9XG59IiwiJG8tZG91YmxlLXVzcDogKFxuXHQnYmFja2dyb3VuZC1jb2xvcic6ICBcdHBhbGV0dGUocHJpbWFyeSksXG5cdCd0ZXh0LWNvbG9yJzpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLm8tZG91YmxlLXVzcCB7XG5cdEBpbmNsdWRlIG1xKCRtYXg6IGwpIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRvLWRvdWJsZS11c3AsICdiYWNrZ3JvdW5kLWNvbG9yJyk7XG5cdH1cbn1cblxuXG4uby1kb3VibGUtdXNwX19tYWluIHtcblx0QGluY2x1ZGUgY29udGFpbjtcblx0cGFkZGluZy10b3A6IHNwYWNlKDYpO1xuXHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoNik7XG5cblx0QGluY2x1ZGUgbXEobSl7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxufVxuXG5cbi5vLWRvdWJsZS11c3BfX2xlZnQge1xuXHRAaW5jbHVkZSBtcSgkbWF4OiBtKXtcblx0XHRtYXJnaW4tYm90dG9tOiBzcGFjZSg2KTtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKG0pe1xuXHRcdHdpZHRoOiBjb2x1bW4oNywgMTIpO1xuXHRcdHBhZGRpbmctcmlnaHQ6IGNvbHVtbigxLCAxMik7XG5cdH1cbn1cblxuLm8tZG91YmxlLXVzcF9fcmlnaHR7XG5cdEBpbmNsdWRlIG1xKG0pe1xuXHRcdHdpZHRoOiBjb2x1bW4oNiwgMTIpO1xuXHR9XG59XG5cbi5vLWRvdWJsZS11c3BfX2hlYWRpbmcge1xuXHRAaW5jbHVkZSBmb250LXNpemUoeHhsKTtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMyk7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLWRvdWJsZS11c3AsICd0ZXh0LWNvbG9yJyk7XG59XG5cblxuLm8tZG91YmxlLXVzcF9fbGlzdCB7XG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblx0bWFyZ2luLWxlZnQ6IDE2cHg7XG59XG5cblxuLm8tZG91YmxlLXVzcF9faXRlbSB7XG5cdEBpbmNsdWRlIG93bChzcGFjZSgyKSk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1sZWZ0OiBzcGFjZSgyKTtcblx0Y29sb3I6IG1hcC1nZXQoJG8tZG91YmxlLXVzcCwgJ3RleHQtY29sb3InKTtcblxuXHQmOjpiZWZvcmUge1xuXHRcdCR3aWR0aDogMTZweDtcblx0XHQkaGVpZ2h0OiAxMnB4O1xuXG5cdFx0Y29udGVudDonJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1cHg7XG5cdFx0bGVmdDogLSN7JHdpZHRofTtcblx0XHR3aWR0aDogJHdpZHRoO1xuXHRcdGhlaWdodDogJGhlaWdodDtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltZy9jaGVjay9jaGVja2VkLnN2Zyk7XG5cdFx0YmFja2dyb3VuZC1zaXplOiAkd2lkdGggJGhlaWdodDtcblx0fVxufSIsIi5vLWRvd25sb2FkcyB7XG4gIEBpbmNsdWRlIG1xKG0pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuXG4uby1kb3dubG9hZHMtLWlzLXJldmVyc2VkIHtcbiAgQGluY2x1ZGUgbXEobSkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxufVxuXG4uby1kb3dubG9hZHNfX21haW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDEpO1xuICBwYWRkaW5nLXRvcDogc3BhY2UoNSk7XG4gIHBhZGRpbmctYm90dG9tOiBzcGFjZSg5KTtcblxuICBAaW5jbHVkZSBtcShtKSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKCRtYXg6IGwpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNvbHVtbigwLjUsIDgpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGNvbHVtbigwLjUsIDgpO1xuICB9XG4gIEBpbmNsdWRlIG1xKGwpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNvbHVtbigxLCAxMik7XG4gICAgcGFkZGluZy1yaWdodDogY29sdW1uKDEsIDEyKTtcbiAgfVxuXG4gIC5jLWhlYWRpbmcge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLm8tZG93bmxvYWRzX19zZXJ2aWNlLXBvaW50IHtcblxuICBAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG4gICAgbWFyZ2luLXRvcDogc3BhY2UoMTApO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEobSkge1xuICAgIG1hcmdpbi10b3A6IHNwYWNlKDUpO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEobSwgbCkge1xuICAgIHdpZHRoOiBjb2x1bW4oMywgOClcbiAgfVxuICBAaW5jbHVkZSBtcShsKSB7XG4gICAgd2lkdGg6IGNvbHVtbig1LCAxMik7XG4gIH1cbn0iLCIkby1ldmVudC1icDE6IDEwMDA7XG4kby1ldmVudC1icDI6IGw7XG4kby1ldmVudC1wYWRkaW5nLXRvcC1zbWFsbDogc3BhY2UoNCk7XG4kby1ldmVudC1wYWRkaW5nLXRvcC1sYXJnZTogc3BhY2UoNik7XG5cblxuXG5cbi5vLWV2ZW50IHtcblx0QGluY2x1ZGUgdGVtcGxhdGUoZGF0YSwgZm9ybSk7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtcm93LWdhcDogc3BhY2UoOCk7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXHRncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgyLCBhdXRvKTtcblx0Z3JpZC10ZW1wbGF0ZS1hcmVhczpcblx0XHRcImRhdGFcIlxuXHRcdFwiZm9ybVwiO1xuXG5cdEBpbmNsdWRlIG1xKCRvLWV2ZW50LWJwMSkge1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogNmZyIDVmcjtcblx0XHRncmlkLWNvbHVtbi1nYXA6IGNvbHVtbigxLDEyKTtcblx0XHRncmlkLXRlbXBsYXRlLWFyZWFzOiBcImZvcm0gZGF0YVwiO1xuXHR9XG59XG5cblxuLm8tZXZlbnRfX2RhdGEge1xuXHRAaW5jbHVkZSBtcSgkby1ldmVudC1icDEpIHtcblx0XHRwYWRkaW5nLXRvcDogJG8tZXZlbnQtcGFkZGluZy10b3Atc21hbGw7XG5cdH1cblxuXHRAaW5jbHVkZSBtcSgkby1ldmVudC1icDIpIHtcblx0XHRwYWRkaW5nLXRvcDogJG8tZXZlbnQtcGFkZGluZy10b3AtbGFyZ2U7XG5cdH1cbn1cblxuXG4uby1ldmVudF9fZm9ybSB7XG5cdHBhZGRpbmctdG9wOiAkby1ldmVudC1wYWRkaW5nLXRvcC1zbWFsbDtcblx0cGFkZGluZy1ib3R0b206ICRvLWV2ZW50LXBhZGRpbmctdG9wLXNtYWxsO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDEwMCk7XG5cblx0QGluY2x1ZGUgbXEoJG1heDogbSkge1xuXHRcdG1hcmdpbi1sZWZ0OiBjb2x1bW4oLTEsMTIpO1xuXHRcdG1hcmdpbi1yaWdodDogY29sdW1uKC0xLDEyKTtcblx0XHRwYWRkaW5nLWxlZnQ6IGNvbHVtbigxLDEyKTtcblx0XHRwYWRkaW5nLXJpZ2h0OiBjb2x1bW4oMSwxMik7XG5cdH1cblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0cGFkZGluZy1sZWZ0OiBzcGFjZSg2KTtcblx0XHRwYWRkaW5nLXJpZ2h0OiBzcGFjZSg2KTtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKCRvLWV2ZW50LWJwMikge1xuXHRcdHBhZGRpbmctdG9wOiAkby1ldmVudC1wYWRkaW5nLXRvcC1sYXJnZTtcblx0XHRwYWRkaW5nLWxlZnQ6IHNwYWNlKDEyKTtcblx0XHRwYWRkaW5nLXJpZ2h0OiBzcGFjZSgxMik7XG5cdFx0cGFkZGluZy1ib3R0b206IHNwYWNlKDEwKTtcblx0fVxufVxuXG5cbi5vLWV2ZW50X19pbmZvLWxpc3Qge1xuXHQkZHQtd2lkdGg6IDExMHB4O1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdG1hcmdpbjogMCAwIHNwYWNlKDgpO1xuXG5cdGR0IHtcblx0XHR3aWR0aDogJGR0LXdpZHRoO1xuXHRcdHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXHRcdGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdH1cblx0ZGQge1xuXHRcdEBpbmNsdWRlIGh5cGhlbmF0ZTtcblx0XHR3aWR0aDogY2FsYygxMDAlIC0gI3skZHQtd2lkdGh9KTtcblx0fVxufVxuXG5cbi5vLWV2ZW50X19oZWFkaW5nIHtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgOTAwKTtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoNClcbn1cblxuXG4uby1ldmVudF9fc2VydmljZXBvaW50LWhlYWRpbmcge1xuXHRtYXJnaW4tdG9wOiBzcGFjZSg4KTtcbn0iLG51bGwsIi8qXG4gKiBFdmVudHNcbiAqXG4gKi9cblxuJG8tZXZlbnRzLXNwYWNpbmc6ICAgIHNwYWNlKDQpO1xuXG4kby1ldmVudHMtaXRlbXMtczogICAgMjtcbiRvLWV2ZW50cy1pdGVtcy1tOiAgICAzO1xuJG8tZXZlbnRzLWl0ZW1zLWw6ICAgIDQ7XG5cbiRvLWV2ZW50cy1yb3ctYnAtczogICA2MDA7XG4kby1ldmVudHMtcm93LWJwLW06ICAgOTAwO1xuJG8tZXZlbnRzLXJvdy1icC1sOiAgIDEyMDA7XG5cblxuLm8tZXZlbnRzX19tYWluIHtcbiAgQGluY2x1ZGUgbXEoJG8tZXZlbnRzLXJvdy1icC1zKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbn1cblxuLm8tZXZlbnRzX19pdGVtIHtcblxuICAvLyBDcmVhdGUgbmljZSB2ZXJ0aWNhbCBzcGFjaW5nIG9uIG1vYmlsZVxuICBAaW5jbHVkZSBtcSgkbWF4OiAkby1ldmVudHMtcm93LWJwLXMpe1xuICAgICYgKyAmIHtcbiAgICAgIG1hcmdpbi10b3A6IHNwYWNlKDQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNpbmdsZSBjb2x1bW4gKHN0YWNrZWQpXG4gIEBpbmNsdWRlIG1xKCRtYXg6ICRvLWV2ZW50cy1yb3ctYnAtcykge1xuICAgIG1heC13aWR0aDogMzQ0cHg7IC8vIGNvbnN0cmFpbiB0aGUgd2lkdGggb2YgdGhlIGNhcmQgaW5zaWRlXG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cblxuICAvLyBUd28gY29sdW1uc1xuICBAaW5jbHVkZSBtcSgkby1ldmVudHMtcm93LWJwLXMsICRtYXg6ICRvLWV2ZW50cy1yb3ctYnAtbSkge1xuICAgIGZsZXg6IDA7XG4gICAgLy8gV2UgY2FsY3VsYXRlIHRoZSBzaXplIG9mIHRoZSBpdGVtIGJhc2VkIG9uIHRoZSBzZXR0aW5ncyBhbmQgcHV0IGl0IGluIGEgbG9uZ2hhbmQgZmxleCB2YWx1ZSBiZWNhdXNlIG9mIElFIHN1cHBvcnRcbiAgICBmbGV4LWJhc2lzOiBjYWxjKCN7cGVyY2VudGFnZSgxLyRvLWV2ZW50cy1pdGVtcy1zKX0gLSAoKCN7JG8tZXZlbnRzLWl0ZW1zLXN9IC0gMSkgLyAjeyRvLWV2ZW50cy1pdGVtcy1zfSAqICN7JG8tZXZlbnRzLXNwYWNpbmd9KSk7XG4gICAgbWFyZ2luLWxlZnQ6ICN7JG8tZXZlbnRzLXNwYWNpbmd9O1xuXG4gICAgJjpudGgtY2hpbGQoI3skby1ldmVudHMtaXRlbXMtc31uICsgMSkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQobiArICN7JG8tZXZlbnRzLWl0ZW1zLXMgKyAxfSkge1xuICAgICAgbWFyZ2luLXRvcDogI3skby1ldmVudHMtc3BhY2luZ307XG4gICAgfVxuICB9XG5cblxuICAvLyBUaHJlZSBjb2x1bW5zXG4gIEBpbmNsdWRlIG1xKCRvLWV2ZW50cy1yb3ctYnAtbSwgJG1heDogJG8tZXZlbnRzLXJvdy1icC1sKSB7XG4gICAgZmxleDogMDtcbiAgICAvLyBXZSBjYWxjdWxhdGUgdGhlIHNpemUgb2YgdGhlIGl0ZW0gYmFzZWQgb24gdGhlIHNldHRpbmdzIGFuZCBwdXQgaXQgaW4gYSBsb25naGFuZCBmbGV4IHZhbHVlIGJlY2F1c2Ugb2YgSUUgc3VwcG9ydFxuICAgIGZsZXgtYmFzaXM6IGNhbGMoI3twZXJjZW50YWdlKDEvJG8tZXZlbnRzLWl0ZW1zLW0pfSAtICgoI3skby1ldmVudHMtaXRlbXMtbX0gLSAxKSAvICN7JG8tZXZlbnRzLWl0ZW1zLW19ICogI3skby1ldmVudHMtc3BhY2luZ30pKTtcbiAgICBtYXJnaW4tbGVmdDogI3skby1ldmVudHMtc3BhY2luZ307XG5cbiAgICAmOm50aC1jaGlsZCgjeyRvLWV2ZW50cy1pdGVtcy1tfW4gKyAxKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZChuICsgI3skby1ldmVudHMtaXRlbXMtbSArIDF9KSB7XG4gICAgICBtYXJnaW4tdG9wOiAjeyRvLWV2ZW50cy1zcGFjaW5nfTtcbiAgICB9XG4gIH1cblxuXG4gIC8vIEZvdXIgY29sdW1uc1xuICBAaW5jbHVkZSBtcSgkby1ldmVudHMtcm93LWJwLWwpIHtcbiAgICBmbGV4OiAwO1xuICAgIC8vIFdlIGNhbGN1bGF0ZSB0aGUgc2l6ZSBvZiB0aGUgaXRlbSBiYXNlZCBvbiB0aGUgc2V0dGluZ3MgYW5kIHB1dCBpdCBpbiBhIGxvbmdoYW5kIGZsZXggdmFsdWUgYmVjYXVzZSBvZiBJRSBzdXBwb3J0XG4gICAgZmxleC1iYXNpczogY2FsYygje3BlcmNlbnRhZ2UoMS8kby1ldmVudHMtaXRlbXMtbCl9IC0gKCgjeyRvLWV2ZW50cy1pdGVtcy1sfSAtIDEpIC8gI3skby1ldmVudHMtaXRlbXMtbH0gKiAjeyRvLWV2ZW50cy1zcGFjaW5nfSkpO1xuICAgIG1hcmdpbi1sZWZ0OiAjeyRvLWV2ZW50cy1zcGFjaW5nfTtcblxuICAgICY6bnRoLWNoaWxkKCN7JG8tZXZlbnRzLWl0ZW1zLWx9biArIDEpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKG4gKyAjeyRvLWV2ZW50cy1pdGVtcy1sICsgMX0pIHtcbiAgICAgIG1hcmdpbi10b3A6ICRvLWV2ZW50cy1zcGFjaW5nO1xuICAgIH1cbiAgfVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogRm9vdGVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJG8tZm9vdGVyOiAoXG5cdCdiZ0NvbG9yJzogIFx0cGFsZXR0ZShwcmltYXJ5LCA3MDApLFxuXHQndGV4dENvbG9yJzogIFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2xvZ29IZWlnaHQnOiAgXHQ1NnB4LFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLm8tZm9vdGVyIHtcblx0QGluY2x1ZGUgeih6LWZvb3Rlcik7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLWZvb3RlciwgJ3RleHRDb2xvcicpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRvLWZvb3RlciwgJ2JnQ29sb3InKTtcblx0ZmxleDogMSAwIGF1dG87XG59XG5cblxuLm8tZm9vdGVyX19tYWluIHtcblx0QGluY2x1ZGUgY29udGFpbjtcblx0QGluY2x1ZGUgdnNwYWNpbmcoXG5cdFx0J3BhZGRpbmctdG9wJyAwLjUsXG5cdFx0J3BhZGRpbmctYm90dG9tJyAwLjVcblx0KTtcbn1cblxuXG4uby1mb290ZXJfX2NvbHVtbnMge1xuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxufVxuXG5cbi5vLWZvb3Rlcl9fYnJhbmQge1xuXHRAaW5jbHVkZSB2c3BhY2luZyhcblx0XHQnbWFyZ2luLWJvdHRvbScgMC4zM1xuXHQpO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgbGluZWFyO1xuXG5cdCY6aG92ZXIge1xuXHRcdG9wYWNpdHk6IDAuNTtcblx0fVxufVxuXG5cbi5vLWZvb3Rlcl9fbG9nbyB7XG5cdGhlaWdodDogbWFwLWdldCgkby1mb290ZXIsICdsb2dvSGVpZ2h0Jyk7XG59XG5cblxuLy8gTGVmdCBjb2x1bW5cbi5vLWZvb3Rlcl9faW5mbyB7XG5cdEBpbmNsdWRlIG93bC1jaGlsZHJlbihzcGFjZSg0KSk7XG5cblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNCwgMTApO1xuXHR9XG5cdEBpbmNsdWRlIG1xKGwpIHtcblx0XHR3aWR0aDogY29sdW1uKDUsIDEyKTtcblx0fVxufVxuXG5cbi8vIFJpZ2h0IGNvbHVtblxuLm8tZm9vdGVyX19uYXYge1xuXHRAaW5jbHVkZSB2c3BhY2luZy1zKFxuXHRcdCdtYXJnaW4tdG9wJyAwLjVcblx0KTtcblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdG1hcmdpbi1sZWZ0OiBjb2x1bW4oMSwgMTApO1xuXHR9XG5cdEBpbmNsdWRlIG1xKGwpIHtcblx0XHRtYXJnaW4tbGVmdDogY29sdW1uKDEsIDEyKTtcblx0fVxufVxuXG4uby1mb290ZXJfX2xpc3Qge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRtYXJnaW46IDA7XG59XG5cblxuLm8tZm9vdGVyX19saW5rIHtcblx0QGluY2x1ZGUgZGlzYWJsZU91dGxpbmVGb3JNb3VzZTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDA7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLWZvb3RlciwgJ3RleHRDb2xvcicpO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblxuXHQmOjpiZWZvcmUge1xuXHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMocyk7XG5cdFx0b3BhY2l0eTogMDtcblx0XHRjb250ZW50OiAnJztcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0dG9wOiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiBzcGFjZSgtMSk7XG5cdFx0cmlnaHQ6IHNwYWNlKC0xKTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGludmVydChtYXAtZ2V0KCRvLWZvb3RlciwgJ3RleHRDb2xvcicpKSwgMC4xNSk7XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBsaW5lYXI7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHR9XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG5cdFx0b3V0bGluZS1zdHlsZTogc29saWQ7XG5cdFx0b3V0bGluZS1vZmZzZXQ6IDFweDtcblx0XHRvdXRsaW5lLXdpZHRoOiAycHg7XG5cdH1cbn1cblxuXG4uby1mb290ZXJfX3NvY2lhbCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdG1hcmdpbjogc3BhY2UoNCkgMCAwO1xufVxuXG5cbi5vLWZvb3Rlcl9fY2hhbm5lbCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHR3aWR0aDogMjRweDtcblx0aGVpZ2h0OiAyNHB4O1xuXHRtYXJnaW4tcmlnaHQ6IHNwYWNlKDIpO1xufVxuXG5cbi5vLWZvb3Rlcl9faWNvbiB7XG5cdGZsZXg6IGF1dG87XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcblx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcblxuXHQuZmFjZWJvb2sgJiB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9zb2NpYWwvZmFjZWJvb2suc3ZnXCIpO1xuXHRcdGhlaWdodDogMjFweDtcblx0fVxuXHQuaW5zdGFncmFtICYge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvc29jaWFsL2luc3RhZ3JhbS5zdmdcIik7XG5cdH1cblx0LnR3aXR0ZXIgJiB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9zb2NpYWwvdHdpdHRlci5zdmdcIik7XG5cdFx0aGVpZ2h0OiAyMHB4O1xuXHR9XG5cdC5saW5rZWRpbiAmIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1nL3NvY2lhbC9saW5rZWRpbi5zdmdcIik7XG5cdFx0aGVpZ2h0OiAxOHB4O1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0b3BhY2l0eTogMC41O1xuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZS1jb2xvcjogcGFsZXR0ZShmZWVkYmFjaywgYWN0aW9uKTtcblx0fVxufSIsIi5vLWZvcm0ge31cblxuLm8tZm9ybV9faGVhZGVyIHtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2UoNSk7XG59XG5cbi5vLWZvcm1fX2JvZHkge31cblxuLm8tZm9ybV9fZm9vdGVyIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoNSk7XG59XG5cbi5vLWZvcm1fX3JvdyB7XG5cdCYgKyAmIHtcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHR9XG59XG5cbi8vIEEgaGlkZGVuIHdyYXBwZXIgZm9yIGhvbmV5IHBvdCBzdHVmZlxuLm8tZm9ybV9fcG90IHtcblx0b3BhY2l0eTogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdGhlaWdodDogMDtcblx0d2lkdGg6IDA7XG5cdHotaW5kZXg6IC0xO1xufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogSGVhZGVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLypcblx0Q29sb3JzIGdldCBkZWZpbmVkIGluIF9zZXR0aW5ncy5jb25maWcuc2Nzc1xuKi9cblxuLm8taGVhZGVyIHtcblx0QGluY2x1ZGUgeih6LWhlYWRlcik7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJHNpdGUtaGVhZGVyLCAnYmdDb2xvcicpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmc6IHNwYWNlKDEuNSkgMDtcblxuXHQmLmlzLXN0aWNreSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0ei1pbmRleDogNTA7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0cGFkZGluZy10b3A6IHNwYWNlKDQpO1xuXHRcdHBhZGRpbmctYm90dG9tOiBzcGFjZSg0KTtcblx0XHRib3gtc2hhZG93OiAwIC01cHggMzBweCBibGFjaztcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuXHRcdHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAzMDBtcztcblx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwcywgMzAwbXM7XG5cdFx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQsIDAsIDAuNiwgMSk7XG5cblx0XHRAaW5jbHVkZSBtcSgkYnAtaGVhZGVyLWxhcmdlKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXHRcdC5pcy1zdGlja3ktaGVhZGVyLXZpc2libGUgJiB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMHM7XG5cdFx0fVxuXHR9XG59XG5cbi5vLWhlYWRlcl9fbWFpbiB7XG5cdEBpbmNsdWRlIGNvbnRhaW47XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uby1oZWFkZXJfX25hdiB7XG5cdHdpZHRoOiAxMDAlO1xuXHRtYXJnaW4tbGVmdDogc3BhY2UoNik7XG5cblx0QGluY2x1ZGUgbXEoJG1heDogJGJwLWhlYWRlci1sYXJnZSkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuLm8taGVhZGVyX19sYW5ndWFnZSB7XG5cdGZsZXg6IG5vbmU7XG5cdG1hcmdpbi1sZWZ0OiBzcGFjZSgyKTtcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiAkYnAtaGVhZGVyLWxhcmdlKSB7XG5cdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdH1cbn1cblxuLm8taGVhZGVyX19sb2dvIHtcblx0QGluY2x1ZGUgZGlzYWJsZU91dGxpbmVGb3JNb3VzZTtcblx0ZmxleDogbm9uZTtcblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG5cdFx0b3V0bGluZS1zdHlsZTogc29saWQ7XG5cdFx0b3V0bGluZS1vZmZzZXQ6IDFweDtcblx0XHRvdXRsaW5lLXdpZHRoOiAycHg7XG5cdH1cbn1cblxuLm8taGVhZGVyX19pbWcge1xuXHRoZWlnaHQ6IG1hcC1nZXQoJHNpdGUtaGVhZGVyLCAnbG9nby1oZWlnaHQnKTtcbn1cblxuLm8taGVhZGVyX190b2dnbGUge1xuXHRAaW5jbHVkZSBtcSgkYnAtaGVhZGVyLWxhcmdlKSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogSW50cm9cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5vLWludHJvIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAwO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRzaXRlLWludHJvLCAnYmdDb2xvcicpO1xuXG5cdC8vIFdoZW4gaW50cm8gaXMgZGFya2VyIHRoZW4gYm9keSB3ZSBuZWVkIHRvIGFkZCBleHRyYSBtYXJnaW5cblx0QGlmIG1hcC1nZXQoJHNpdGUtaW50cm8sICdpc0RhcmsnKXtcblx0XHRAaW5jbHVkZSB2c3BhY2luZyhcblx0XHRcdCdtYXJnaW4tYm90dG9tJyAxXG5cdFx0KTtcblx0fVxufVxuXG5cbi5vLWludHJvX19ib2R5IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdEBpbmNsdWRlIHZzcGFjaW5nKFxuXHRcdCdtYXJnaW4tYm90dG9tJyAxXG5cdCk7XG5cblx0QGluY2x1ZGUgbXEoJG1heDogbSkge1xuXHRcdC5vLWludHJvLS1tb2JpbGUtYnJlYWstb3V0ICYge1xuXHRcdFx0d2lkdGg6IDEwMHZ3O1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDUwJTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0ei1pbmRleDogMDtcblx0XHRcdHRvcDogNTAlO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkc2l0ZS1pbnRybywgJ2JhckNvbG9yJyk7XG5cblx0XHRcdC5vLWludHJvLS1ib3R0b20tYmFyLWhpZGRlbiAmIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4uby1pbnRyb19fY29udGVudCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKGwpIHtcblx0XHR3aWR0aDogY2FsYygoMTAwJSAvICN7JHNpdGUtY29sdW1ucy1sICsgMn0pICogI3skc2l0ZS1jb2x1bW5zLWx9KTtcblx0XHRtYXgtd2lkdGg6ICN7JHNpdGUtbWF4LXdpZHRofXB4O1xuXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0fVxufVxuXG5cbi5vLWludHJvX19uYXYsXG4uby1pbnRyb19faW1hZ2Uge1xuXHRtYXJnaW4tdG9wOiBzcGFjZSg0KTtcblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0b3JkZXI6IC0xO1xuXHRcdHdpZHRoOiBjb2x1bW4oNSwxMik7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKGwpIHtcblx0XHR3aWR0aDogY29sdW1uKDYsMTIpO1xuXHR9XG59XG5cblxuLm8taW50cm9fX25hdiB7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJHNpdGUtaW50cm8sICdzdWJuYXZCZ0NvbG9yJyk7XG5cdHBhZGRpbmc6IHNwYWNlKDQpICRzaXRlLWd1dHRlci13aWR0aDtcblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0cGFkZGluZzogc3BhY2UoMTApIGNvbHVtbigwLjUsMTIpO1xuXHRcdHBhZGRpbmctbGVmdDogcGVyY2VudGFnZSgxIC8gKDggKyAyKSk7XG5cdH1cblxuXHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0cGFkZGluZy1sZWZ0OiBwZXJjZW50YWdlKDEgLyAoMTAgKyAyKSk7XG5cdFx0cGFkZGluZy1yaWdodDogcGVyY2VudGFnZSgxIC8gKDEwICsgMikpO1xuXHR9XG59XG5cblxuLm8taW50cm9fX3RleHQge1xuXHRwYWRkaW5nLXRvcDogc3BhY2UoNCk7XG5cdHBhZGRpbmctbGVmdDogJHNpdGUtZ3V0dGVyLXdpZHRoO1xuXHRwYWRkaW5nLXJpZ2h0OiAkc2l0ZS1ndXR0ZXItd2lkdGg7XG5cblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNywxMik7XG5cdFx0cGFkZGluZzogc3BhY2UoMTApIGNvbHVtbigxLDEyKTtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKGwpIHtcblx0XHR3aWR0aDogY29sdW1uKDYsMTIpO1xuXHR9XG59XG5cblxuLm8taW50cm9fX3RpdGxlLFxuLm8taW50cm9fX2hlYWRpbmcge1xuXHRjb2xvcjogbWFwLWdldCgkc2l0ZS1pbnRybywgJ2NvbG9yJykgIWltcG9ydGFudDtcbn1cblxuXG4uby1pbnRyb19fYnV0dG9uIHtcblx0Y29sb3I6IG1hcC1nZXQoJHNpdGUtaW50cm8sICdsaW5rQ29sb3InKSAhaW1wb3J0YW50O1xufSIsIiRvLWxvZ29zLXNwYWNpbmctZHluYW1pYzogMi4zODJ2dztcbiRvLWxvZ29zLXNwYWNpbmctZml4ZWQ6IFx0c3BhY2UoNCk7XG5cbi5vLWxvZ29zIHt9XG5cbi5vLWxvZ29zX19saXN0IHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC13cmFwOiB3cmFwO1xuXHRtYXJnaW4tbGVmdDogMDsgLy8gcmVzZXRcblx0bWFyZ2luOiAtI3skby1sb2dvcy1zcGFjaW5nLWR5bmFtaWN9O1xuXHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cblx0QGluY2x1ZGUgbXEoJGJwLW1heCl7XG5cdFx0bWFyZ2luOiAtI3skby1sb2dvcy1zcGFjaW5nLWZpeGVkfTtcblx0fVxufVxuXG4uby1sb2dvc19faXRlbSB7XG5cdGZsZXg6IDAgMSAxMDAlO1xuXHRtYXJnaW46ICRvLWxvZ29zLXNwYWNpbmctZHluYW1pYztcblxuXHRAaW5jbHVkZSBtcShzKXtcblx0XHRmbGV4LWJhc2lzOiBjYWxjKCN7cGVyY2VudGFnZSgxLzIpfSAtICN7ZG91YmxlKCRvLWxvZ29zLXNwYWNpbmctZHluYW1pYyl9KTtcblx0fVxuXHRAaW5jbHVkZSBtcShtKXtcblx0XHRmbGV4LWJhc2lzOiBjYWxjKCN7cGVyY2VudGFnZSgxLzMpfSAtICN7ZG91YmxlKCRvLWxvZ29zLXNwYWNpbmctZHluYW1pYyl9KTtcblx0fVxuXHRAaW5jbHVkZSBtcShsKXtcblx0XHRmbGV4LWJhc2lzOiBjYWxjKCN7cGVyY2VudGFnZSgxLzQpfSAtICN7ZG91YmxlKCRvLWxvZ29zLXNwYWNpbmctZHluYW1pYyl9KTtcblx0fVxuXHRAaW5jbHVkZSBtcSgkYnAtbWF4KXtcblx0XHRmbGV4LWJhc2lzOiBjYWxjKCN7cGVyY2VudGFnZSgxLzQpfSAtICN7ZG91YmxlKCRvLWxvZ29zLXNwYWNpbmctZml4ZWQpfSk7XG5cdFx0bWFyZ2luOiAkby1sb2dvcy1zcGFjaW5nLWZpeGVkO1xuXHR9XG59XG5cbi5vLWxvZ29zX19saW5rIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbi5vLWxvZ29zX19pbWcge1xuXHRkaXNwbGF5OiBibG9jaztcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMDtcblx0cGFkZGluZy1ib3R0b206IDEwMCU7IC8vIEFzcGVjdCByYXRpb1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbn0iLCIuby1tYXAge1xuXG5cdC8vIFJlc2V0IHNvbWUgc3R5bGluZyBmb3IgZ29vZ2xlIG1hcHNcblx0YSB7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogTmV3c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vJG8tbmV3czogKFxuLy9cdCdob3Zlci1iZ2NvbG9yJzogIFx0XHRwYWxldHRlKG5ldXRyYWwsIDEwMCksXG4vL1x0J3RleHQtY29sb3InOlx0XHRcdHBhbGV0dGUobmV1dHJhbCwgMCksXG4vLyk7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5vLW5ld3Mge1xuXHRAaW5jbHVkZSBjb250YWluO1xufVxuXG4uby1uZXdzX19oZWFkaW5nIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHh4bCk7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDgwMCk7XG59XG5cbi5vLW5ld3NfX2FydGljbGUge1xuXHRAaW5jbHVkZSBvd2woc3BhY2UoNCkpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5vLW5ld3NfX2xpbmsge1xuXHRAaW5jbHVkZSBkaXNhYmxlT3V0bGluZUZvck1vdXNlO1xuXHRkaXNwbGF5OiBibG9jaztcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMTUwbXMgbGluZWFyO1xuXG5cdCY6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0bGVmdDogMDtcblx0XHRib3JkZXI6IDFweCBzb2xpZCBwYWxldHRlKGJvcmRlciwgMzAwKTtcblx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGxpbmVhcjtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUobmV1dHJhbCwgMTAwKTtcblxuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdH1cblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0XHRvdXRsaW5lLXN0eWxlOiBzb2xpZDtcblx0XHRvdXRsaW5lLW9mZnNldDogMXB4O1xuXHRcdG91dGxpbmUtd2lkdGg6IDJweDtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0fVxufVxuXG4uby1uZXdzX19ib2R5IHtcblx0ZmxleC1ncm93OiAxO1xuXHRwYWRkaW5nOiAkc2l0ZS1ndXR0ZXItd2lkdGg7XG5cblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdG9yZGVyOiAxO1xuXHRcdHBhZGRpbmctdG9wOiBzcGFjZSg2KTtcblx0XHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoNik7XG5cdFx0cGFkZGluZy1sZWZ0OiBjb2x1bW4oMSw4KTtcblx0XHRwYWRkaW5nLXJpZ2h0OiBjb2x1bW4oMSw4KTtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKGwpIHtcblx0XHRwYWRkaW5nLWxlZnQ6IGNvbHVtbigxLDEyKTtcblx0fVxufVxuXG4uby1uZXdzX19pbWFnZSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDEwMCU7XG5cdHBhZGRpbmctYm90dG9tOiA1NSU7XG5cblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdGZsZXg6IG5vbmU7XG5cdFx0b3JkZXI6IDI7XG5cdFx0d2lkdGg6IGNvbHVtbigyLDgpO1xuXHRcdHBhZGRpbmctYm90dG9tOiBjb2x1bW4oMiw4KTtcblx0fVxufVxuXG4uby1uZXdzX19iZy1pbWFnZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcblx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0dG9wOiAkc2l0ZS1ndXR0ZXItd2lkdGg7XG5cdHJpZ2h0OiAkc2l0ZS1ndXR0ZXItd2lkdGg7XG5cdHdpZHRoOiBjYWxjKDEwMCUgLSAje2RvdWJsZSgkc2l0ZS1ndXR0ZXItd2lkdGgpfSk7XG5cdGhlaWdodDogY2FsYygxMDAlIC0gI3skc2l0ZS1ndXR0ZXItd2lkdGh9KTtcblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0dG9wOiBzcGFjZSgxKTtcblx0XHRyaWdodDogc3BhY2UoMSk7XG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtICN7c3BhY2UoMil9KTtcblx0XHRoZWlnaHQ6IGNhbGMoMTAwJSAtICN7c3BhY2UoMil9KTtcblx0fVxufVxuXG5cbi8vIEJvZHkgY29udGVudDpcbi5vLW5ld3NfX2ludHJvIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoMyk7XG59XG5cbi5vLW5ld3NfX3RpbWVzdGFtcCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW4tdG9wOiBzcGFjZSgyKTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgNDAwKTtcbn1cblxuLm8tbmV3c19fYWN0aW9uIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRtYXJnaW4tdG9wOiBzcGFjZSgxKTtcblx0Y29sb3I6IHBhbGV0dGUoZmVlZGJhY2ssIGFjdGlvbik7XG59XG5cbi5vLW5ld3NfX3JlYWRtb3JlIHtcblx0bWFyZ2luLXJpZ2h0OiBzcGFjZSgxKTtcbn1cblxuLm8tbmV3c19fZm9vdGVyIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoNCk7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IE92ZXJsYXkgbWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRvLW92ZXJsYXktbWVudTogKFxuXHQnYmdjb2xvcic6ICAgICAgICAgIHBhbGV0dGUocHJpbWFyeSwgNTAwKSxcblx0J2NvbG9yJzogICAgICAgICAgICBwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQnaG92ZXItY29sb3InOiAgICAgIHJnYmEocGFsZXR0ZShuZXV0cmFsLCAwKSwgMC43KSxcblx0J3NoYWRlci1jb2xvcic6ICAgICByZ2JhKDAsIDAsIDAsIDAuNiksXG5cdCdtb3ZlLXNwZWVkJzogICAgICAgNDAwbXMsXG5cdCdvcGFjaXR5LXNwZWVkJzogICAgMjAwbXMsXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uby1vdmVybGF5LW1lbnUge1xuXHRAaW5jbHVkZSB6KHotb3ZlcmxheS1tZW51KTtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0b3BhY2l0eTogMDtcblx0cG9zaXRpb246IGZpeGVkO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHdpZHRoOiAxMDAlO1xuXHRsZWZ0OiAwO1xuXHR0b3A6IDA7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnYmdjb2xvcicpO1xuXG5cdC8vIFdoZW4gaXQgZGlzYXBwZWFycyBvdXQgb2Ygdmlld1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEyMHZ3KTtcblx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuXHR0cmFuc2l0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ21vdmUtc3BlZWQnKSwgbWFwLWdldCgkby1vdmVybGF5LW1lbnUsICdvcGFjaXR5LXNwZWVkJyk7XG5cdHRyYW5zaXRpb24tZGVsYXk6IDBzLCBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ21vdmUtc3BlZWQnKTtcblx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUsIDAuMTUsIDAuMSwgMSksIGxpbmVhcjtcblxuXHQvLyBXaGVuIGl0IGNvbWVzIGludG8gdmlld1xuXHQuaXMtb3ZlcmxheS1tZW51LWFjdGl2ZSAmIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHR0cmFuc2l0aW9uLWRlbGF5OiBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ29wYWNpdHktc3BlZWQnKSwgMHM7XG5cdH1cblxuXHQvLyBTaGFkZXJcblx0Jjo6YmVmb3JlIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRjb250ZW50OiAnJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdHJpZ2h0OiAtMTIwdnc7XG5cdFx0d2lkdGg6IDEyMHZ3O1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ3NoYWRlci1jb2xvcicpO1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ29wYWNpdHktc3BlZWQnKTtcblx0XHR0cmFuc2l0aW9uLWRlbGF5OiBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ21vdmUtc3BlZWQnKTtcblx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuXG5cdFx0LmlzLW92ZXJsYXktbWVudS1hY3RpdmUgJiB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMHM7XG5cdFx0fVxuXHR9XG5cblx0Ly8gRGlhZ29uYWwgc2hhcGUgb24gdGhlIHJpZ2h0XG5cdCY6OmFmdGVyIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRjb250ZW50OiAnJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdHJpZ2h0OiAtMjAlO1xuXHRcdHdpZHRoOiAyMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgtODZkZWcsIHRyYW5zcGFyZW50IDUwJSwgbWFwLWdldCgkby1vdmVybGF5LW1lbnUsICdiZ2NvbG9yJykgNTAlKTtcblx0fVxuXG5cdC8vIEhpZGUgb3ZlcmxheSBtZW51IG9uIGxhcmdlciB2aWV3cG9ydHNcblx0QGluY2x1ZGUgbXEoJGJwLWhlYWRlci1sYXJnZSkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuXG4uby1vdmVybGF5LW1lbnVfX2JhciB7XG5cdEBpbmNsdWRlIGNvbnRhaW47XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZy10b3A6IHNwYWNlKDQpO1xuXHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoNCk7XG59XG5cblxuLm8tb3ZlcmxheS1tZW51X19pbWcge1xuXHRoZWlnaHQ6IHNwYWNlKDYpO1xufVxuXG5cbi5vLW92ZXJsYXktbWVudV9fdG9nZ2xlIHtcblx0dHJhbnNmb3JtOiByb3RhdGUoLTAuNXR1cm4pO1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNjAwbXMgZWFzZS1vdXQ7XG5cdHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zO1xuXG5cdC5pcy1vdmVybGF5LW1lbnUtYWN0aXZlICYge1xuXHRcdHRyYW5zZm9ybTogbm9uZTtcblx0fVxufVxuXG5cbi5vLW92ZXJsYXktbWVudV9fbGlzdCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0bWFyZ2luLWxlZnQ6IDA7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cblxuLm8tb3ZlcmxheS1tZW51X19pdGVtIHtcblx0cGFkZGluZzogc3BhY2UoMSkgY29sdW1uKDEsMTQpO1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgcmdiYShtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ2NvbG9yJyksIDAuMyk7XG59XG5cblxuLm8tb3ZlcmxheS1tZW51X19saW5rIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHhsKTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ2NvbG9yJyk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBsaW5lYXI7XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJG8tb3ZlcmxheS1tZW51LCAnaG92ZXItY29sb3InKTtcblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAycHg7XG5cdFx0b3V0bGluZS1jb2xvcjogcmdiYShtYXAtZ2V0KCRvLW92ZXJsYXktbWVudSwgJ2NvbG9yJyksIDAuMyk7XG5cdH1cblxuXHQmLmlzLWFjdGl2ZSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cblx0XHQmOjpiZWZvcmUge1xuXHRcdCAgICBjb250ZW50OiAnXFwyNzk0Jztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHQgICAgdG9wOiA2cHg7XG5cdFx0ICAgIGxlZnQ6IC0xLjI1ZW07XG5cdFx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0fVxuXHR9XG59IiwiLm8tcXVvdGUge1xuXHRAaW5jbHVkZSBjb250YWluO1xufVxuXG4uby1xdW90ZSB7XG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHR9XG59XG5cbi5vLXF1b3RlX19ib2R5IHtcblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNCw4KTtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKGwpIHtcblx0XHRtYXJnaW4tbGVmdDogY29sdW1uKDEsMTIpO1xuXHRcdHdpZHRoOiBjb2x1bW4oOCwxMik7XG5cdH1cbn1cblxuLm8tcXVvdGVfX3BpY3R1cmUge1xuXHRkaXNwbGF5OiBibG9jaztcblxuXHRAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG5cdFx0bWFyZ2luLXRvcDogc3BhY2UoNCk7XG5cdH1cblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0d2lkdGg6IGNvbHVtbigzLDgpO1xuXHRcdG1hcmdpbi1sZWZ0OiBjb2x1bW4oMSw4KTtcblx0fVxuXHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig0LDEyKTtcblx0XHRtYXJnaW4tbGVmdDogY29sdW1uKDEsMTIpO1xuXHRcdG1hcmdpbi1yaWdodDogY29sdW1uKDEsMTIpO1xuXHR9XG59XG5cbi5vLXF1b3RlX19pbWcge1xuXHRkaXNwbGF5OiBibG9jaztcblx0bWFyZ2luOiAwIGF1dG87XG59XG5cbi5vLXF1b3RlX190ZXh0IHtcblx0QGluY2x1ZGUgZm9udChtKTtcblx0cXVvdGVzOiAnXFwyMDFjJyAnXFwyMDFkJztcblxuXHQmOjpiZWZvcmUgeyBjb250ZW50OiBvcGVuLXF1b3RlOyB9XG5cdCY6OmFmdGVyICB7IGNvbnRlbnQ6IGNsb3NlLXF1b3RlOyB9XG59XG5cbi5vLXF1b3RlX19hdXRob3Ige1xuXHRtYXJnaW4tdG9wOiBzcGFjZSgzKTtcblx0bWFyZ2luLWxlZnQ6IGNvbHVtbigwLjUsIDYpO1xufVxuXG4uby1xdW90ZV9faGVhZGluZyB7XG5cdEBpbmNsdWRlIGZvbnQoYmFzZSk7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDUwMCk7XG59XG5cbi5vLXF1b3RlX19zdWJoZWFkaW5nIHtcblx0QGluY2x1ZGUgZm9udChzKTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgNDAwKTtcbn0iLCIvLyBDb21wb25lbnQgc2V0dGluZ3M6IFJlZmVyZW5jZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kby1yZWZlcmVuY2VzOiAoXG5cdCdnYXAnOlx0XHRcdFx0c3BhY2UoNCksXG5cdCdwYWRkaW5nJzpcdFx0XHRzcGFjZSgzKSxcblx0J2JvcmRlci1zaXplJzpcdFx0MHB4LFxuXHQnYm9yZGVyLWNvbG9yJyA6XHRwYWxldHRlKGJvcmRlciwgMzAwKSxcblx0J2JnY29sb3InIDpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDApLFxuXHQnY29sb3InIDpcdFx0XHRwYWxldHRlKG5ldXRyYWwsIDUwMCksXG5cdCdjb2xvclN1YicgOlx0XHRwYWxldHRlKG5ldXRyYWwsIDQwMCksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLm8tcmVmZXJlbmNlcyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0bWFyZ2luOiBtYXAtZ2V0KCRvLXJlZmVyZW5jZXMsICdnYXAnKSAqIC0xO1xufVxuXG4uby1yZWZlcmVuY2VzX19pdGVtIHtcblx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhzKTtcblx0ZmxleDogMCAxIDEwMCU7XG5cdG1hcmdpbjogbWFwLWdldCgkby1yZWZlcmVuY2VzLCAnZ2FwJyk7XG5cdHBhZGRpbmctdG9wOiBtYXAtZ2V0KCRvLXJlZmVyZW5jZXMsICdwYWRkaW5nJyk7XG5cdHBhZGRpbmctYm90dG9tOiBtYXAtZ2V0KCRvLXJlZmVyZW5jZXMsICdwYWRkaW5nJyk7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG8tcmVmZXJlbmNlcywgJ2JnY29sb3InKTtcblx0Ym9yZGVyOiBtYXAtZ2V0KCRvLXJlZmVyZW5jZXMsICdib3JkZXItc2l6ZScpIHNvbGlkIG1hcC1nZXQoJG8tcmVmZXJlbmNlcywgJ2JvcmRlci1jb2xvcicpO1xuXHRib3gtc2hhZG93OlxuXHRcdDAgMi40cHggMzkuNHB4IC0xNnB4IHJnYmEoMCwgMCwgMCwgMC4wMjQpLFxuXHRcdDAgNi44cHggNDUuNXB4IC0xNnB4IHJnYmEoMCwgMCwgMCwgMC4wMzUpLFxuXHRcdDAgMTYuM3B4IDUxLjRweCAtMTZweCByZ2JhKDAsIDAsIDAsIDAuMDQ2KSxcblx0XHQwIDU0cHggODBweCAtMTZweCByZ2JhKDAsIDAsIDAsIDAuMDcpO1xuXG5cblx0QGluY2x1ZGUgbXEoODAwKXtcblx0XHRmbGV4LWJhc2lzOiBjYWxjKDUwJSAtICN7ZG91YmxlKG1hcC1nZXQoJG8tcmVmZXJlbmNlcywgJ2dhcCcpKX0gLSAje2RvdWJsZShtYXAtZ2V0KCRvLXJlZmVyZW5jZXMsICdib3JkZXItc2l6ZScpKX0pO1xuXHR9XG59XG5cbi5vLXJlZmVyZW5jZXNfX2JvZHkge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRtYXJnaW4tdG9wOiAwO1xuXHRwYWRkaW5nLXJpZ2h0OiBtYXAtZ2V0KCRvLXJlZmVyZW5jZXMsICdwYWRkaW5nJyk7XG59XG5cbi5vLXJlZmVyZW5jZXNfX3BpY3R1cmUge1xuXHRkaXNwbGF5OiBibG9jaztcblx0ZmxleC1ncm93OiAxO1xuXHRmbGV4LWJhc2lzOiAyNSU7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDMpO1xuXHRtYXJnaW4tbGVmdDogbWFwLWdldCgkby1yZWZlcmVuY2VzLCAncGFkZGluZycpO1xufVxuXG4uby1yZWZlcmVuY2VzX19jb250ZW50IHtcblx0ZmxleC1ncm93OiA5OTk5O1xuXHRmbGV4LWJhc2lzOiAxOGVtO1xuXHRtYXJnaW4tbGVmdDogbWFwLWdldCgkby1yZWZlcmVuY2VzLCAncGFkZGluZycpO1xuXHRjb2xvcjogbWFwLWdldCgkby1yZWZlcmVuY2VzLCAnY29sb3InKTtcbn1cblxuLm8tcmVmZXJlbmNlc19fYXV0aG9yIHtcblx0bWFyZ2luLXRvcDogbWFwLWdldCgkby1yZWZlcmVuY2VzLCAncGFkZGluZycpO1xufVxuXG4uby1yZWZlcmVuY2VzX19oZWFkaW5nIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKGJhc2UpO1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRjb2xvcjogbWFwLWdldCgkby1yZWZlcmVuY2VzLCAnY29sb3InKTtcbn1cblxuLm8tcmVmZXJlbmNlc19fc3ViaGVhZGluZyB7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLXJlZmVyZW5jZXMsICdjb2xvclN1YicpO1xufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogU3ViIEZvb3RlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRvLXN1YmZvb3RlcjogKFxuXHQnYmdjb2xvcic6ICBcdFx0XHRwYWxldHRlKHNlY29uZGFyeSwgNTAwKSxcblx0J2NvbG9yJzogIFx0XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2NvbG9yLWhvdmVyJzogIFx0XHRyZ2JhKHBhbGV0dGUobmV1dHJhbCwgMCksIDAuNyksXG5cdCdzcGFjaW5nLWhvcml6b250YWwnOlx0c3BhY2UoNCksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uby1zdWJmb290ZXIge1xuXHRAaW5jbHVkZSB6KHotc3ViZm9vdGVyKTtcblx0Y29sb3I6IG1hcC1nZXQoJG8tc3ViZm9vdGVyLCAnY29sb3InKTtcblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkby1zdWJmb290ZXIsICdiZ2NvbG9yJyk7XG5cdHBhZGRpbmctYm90dG9tOiAkc2l0ZS1jb29raWVCYXItaGVpZ2h0O1xuXHR0cmFuc2l0aW9uOiBwYWRkaW5nIDAuNnM7XG5cblx0LmlzLWNvb2tpZXMtYWNjZXB0ZWQgJiB7XG5cdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdH1cbn1cblxuXG4uby1zdWJmb290ZXJfX21haW4ge1xuXHRAaW5jbHVkZSBjb250YWluO1xuXHRAaW5jbHVkZSBmb250KHMpO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZy10b3A6IHNwYWNlKDEpO1xuXHRwYWRkaW5nLWJvdHRvbTogc3BhY2UoMSk7XG59XG5cblxuLm8tc3ViZm9vdGVyX19jb3B5cmlnaHQge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG4gIFx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG4gIFx0bWFyZ2luLWJvdHRvbTogc3BhY2UoMSk7XG5cdG1hcmdpbi1yaWdodDogbWFwLWdldCgkby1zdWJmb290ZXIsICdzcGFjaW5nLWhvcml6b250YWwnKTtcbn1cblxuXG4uby1zdWJmb290ZXJfX25hdiB7XG5cdG1hcmdpbi1yaWdodDogYXV0bztcblx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDEpO1xufVxuXG5cbi5vLXN1YmZvb3Rlcl9fbGlzdCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRtYXJnaW46IDA7XG59XG5cblxuLm8tc3ViZm9vdGVyX19pdGVtIHtcblx0bWFyZ2luLXJpZ2h0OiBtYXAtZ2V0KCRvLXN1YmZvb3RlciwgJ3NwYWNpbmctaG9yaXpvbnRhbCcpO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG5cbi5vLXN1YmZvb3Rlcl9fbGluayB7XG5cdEBpbmNsdWRlIGRpc2FibGVPdXRsaW5lRm9yTW91c2U7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLXN1YmZvb3RlciwgJ2NvbG9yJyk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogY29sb3IgMjAwbXM7XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJG8tc3ViZm9vdGVyLCAnY29sb3ItaG92ZXInKTtcblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0XHRvdXRsaW5lLXN0eWxlOiBzb2xpZDtcblx0XHRvdXRsaW5lLW9mZnNldDogMXB4O1xuXHRcdG91dGxpbmUtd2lkdGg6IDJweDtcblx0fVxufVxuXG5cbi5vLXN1YmZvb3Rlcl9fdHJhZGVtYXJrIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoMSk7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDEpO1xufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogVGFic2xpZGVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJG8tdGFic2xpZGVyOiAoXG5cdCdiZ2NvbG9yJzpcdFx0XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcblx0J2NvbG9yJzpcdFx0XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCA4MDApLFxuXHQnYWN0aXZlLWNvbG9yJzpcdFx0XHRcdHBhbGV0dGUobmV1dHJhbCwgMCksXG5cdCdhY3RpdmUtYmdjb2xvcic6XHRcdFx0cGFsZXR0ZShwcmltYXJ5LCA1MDApLFxuXHQnYm9yZGVyLWNvbG9yJzogXHRcdFx0cGFsZXR0ZShib3JkZXIsIDMwMCksXG5cdCdhY3RpdmUtYm9yZGVyLWNvbG9yJzogXHRcdHBhbGV0dGUocHJpbWFyeSwgNTAwKSxcblx0J3RhYi1nYXAnOiAgXHRcdFx0XHRzcGFjZSgxKSxcbik7XG5cbi8qXG4gKiBPbiBzbWFsbCBzY3JlZW5zIHRoZSBjb250ZW50IGlzIHN0YWNrZWQsIHdpdGhvdXQgY29udHJvbHNcbiAqIFdoZW4gdGhlIHNjcmVlbiBpcyB3aWRlIGVub3VnaCB3ZSBhZGQgdGhlIGNvbnRyb2xzXG4gKiBhbmQgc2hvdyBvbmx5IHRoZSBjaG9zZW4gJ3NsaWRlIGNvbnRlbnQnXG4gKi9cblxuXG4uby10YWJzbGlkZXIge1xuXHRAaW5jbHVkZSBjb250YWluO1xufVxuXG5cbi8vIFNoYXJlZCBzdHlsaW5nIGZvciB0YWItIGFuZCBzdGVwLWJ1dHRvbnNcbi5vLXRhYnNsaWRlcl9fYnV0dG9uIHtcblx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cyhtKTtcblx0bWluLWhlaWdodDogc3BhY2UoNik7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ2NvbG9yJyk7XG5cdGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG8tdGFic2xpZGVyLCAnYmdjb2xvcicpO1xuXHRib3JkZXI6IDFweCBzb2xpZCBtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ2JvcmRlci1jb2xvcicpO1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yLCBib3JkZXI7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zO1xuXG5cdCY6aG92ZXIge1xuXHRcdGNvbG9yOiBtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ2FjdGl2ZS1iZ2NvbG9yJyk7XG5cdFx0Ym9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ2FjdGl2ZS1iZ2NvbG9yJyk7XG5cdH1cblxuXHQmLmlzLWFjdGl2ZSB7XG5cdFx0Y29sb3I6IG1hcC1nZXQoJG8tdGFic2xpZGVyLCAnYWN0aXZlLWNvbG9yJyk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkby10YWJzbGlkZXIsICdhY3RpdmUtYmdjb2xvcicpO1xuXHRcdGJvcmRlci1jb2xvcjogbWFwLWdldCgkby10YWJzbGlkZXIsICdhY3RpdmUtYm9yZGVyLWNvbG9yJyk7XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHRcdGJvcmRlci1jb2xvcjogcGFsZXR0ZShwcmltYXJ5LCA1MDApO1xuXG5cdFx0Jjpub3QoLmlzLWFjdGl2ZSk6bm90KDphY3RpdmUpIHtcblx0XHRcdGJveC1zaGFkb3c6IDAgMCAwIDFweCBtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ2JnY29sb3InKSwgMCAwIDVweCAzcHggcmdiYShtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ2NvbG9yJyksIDAuMSk7XG5cdFx0fVxuXHR9XG59XG5cbi5vLXRhYnNsaWRlcl9fY29udHJvbHMge1xuXHRAaW5jbHVkZSBtcSgkbWF4OiBtKSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdG1hcmdpbi1sZWZ0OiBjb2x1bW4oMSwxMik7XG5cdFx0bWFyZ2luLXJpZ2h0OiBjb2x1bW4oMSwxMik7XG5cdH1cbn1cblxuLm8tdGFic2xpZGVyX19zdGVwIHtcblx0d2lkdGg6IHNwYWNlKDYpO1xufVxuXG4uby10YWJzbGlkZXJfX3N0ZXAtLXByZXYge1xuXHR0cmFuc2Zvcm06IHJvdGF0ZSgwLjV0dXJuKTtcbn1cblxuLm8tdGFic2xpZGVyX190YWJzIHtcblx0QGluY2x1ZGUgbXEobSl7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKCRicC1tYXgpIHtcblx0XHRtYXJnaW46IChtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ3RhYi1nYXAnKSAqIC0xKSBtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ3RhYi1nYXAnKTtcblx0fVxufVxuXG5cbi5vLXRhYnNsaWRlcl9fdGFiIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHhzKTtcblx0bWFyZ2luOiBtYXAtZ2V0KCRvLXRhYnNsaWRlciwgJ3RhYi1nYXAnKTtcblx0cGFkZGluZzogKHNwYWNlKDEpIC0gMXB4KSBzcGFjZSgyKTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLm8tdGFic2xpZGVyX19jb250YWluZXIge1xuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblx0XHRncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcblx0XHRtYXJnaW4tdG9wOiBzcGFjZSg2KTtcblx0fVxufVxuXG4uby10YWJzbGlkZXJfX2NvbnRlbnQge1xuXHQmICsgJiB7XG5cdFx0QGluY2x1ZGUgdnNwYWNpbmctcyhcblx0XHRcdCdtYXJnaW4tdG9wJyAxXG5cdFx0KTtcblx0fVxuXG5cdEBpbmNsdWRlIG1xKG0pIHtcblx0XHRncmlkLXJvdzogMTtcblx0XHRncmlkLWNvbHVtbjogMTtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHotaW5kZXg6IDA7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0dHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcblx0XHR0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm07XG5cdFx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMjAwbXM7XG5cdFx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG5cblx0XHQmLmlzLWFjdGl2ZSB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0ei1pbmRleDogMTtcblx0XHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHRcdHBvaW50ZXItZXZlbnRzOiBhbGw7XG5cdFx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcblx0XHRcdHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zO1xuXHRcdFx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuXHRcdH1cblx0fVxufVxuXG4uby10YWJzbGlkZXJfX2xhYmVsIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHhzKTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmctYm90dG9tOiBzcGFjZSgxKTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0Y29sb3I6IHBhbGV0dGUobmV1dHJhbCwgODAwKTtcblxuXHRAaW5jbHVkZSBtcShtKSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuIiwiLm8tdGVhbSB7XG4gIEBpbmNsdWRlIGNvbnRhaW47XG4gIEBpbmNsdWRlIHZzcGFjaW5nKFxuICAgICAgJ21hcmdpbi10b3AnIDEsXG4gICAgICAnbWFyZ2luLWJvdHRvbScgMVxuICApO1xufVxuXG4uby10ZWFtX19tYXRyaXgge1xuICBAaW5jbHVkZSBtcSg1NjApIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IHNwYWNlKDIpICogLTE7XG4gIH1cbn1cblxuLm8tdGVhbV9faXRlbSB7XG4gIG1hcmdpbjogMCBhdXRvIHNwYWNlKDQpO1xuICBtYXgtd2lkdGg6IDMwMHB4O1xuXG4gIEBpbmNsdWRlIG1xKDU2MCkge1xuICAgIG1hcmdpbjogc3BhY2UoMik7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGZsZXg6IG5vbmU7XG4gICAgZmxleC1iYXNpczogY2FsYyg1MCUgLSAje3NwYWNlKDQpfSk7IC8vIExvbmdoYW5kIG5lZWRlZCBmb3IgSUVcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKDkwMCkge1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoMzMuMzMlIC0gI3tzcGFjZSg0KX0pO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEoMTIwMCkge1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoMjUlIC0gI3tzcGFjZSg0KX0pO1xuICB9XG59IiwiJG8tdGhhbmtzLWJwMTogMTExMDtcbiRvLXRoYW5rcy1nYXA6IHNwYWNlKDYpO1xuXG5cbi5vLXRoYW5rcyB7XG5cdEBpbmNsdWRlIGNvbnRhaW47XG5cdEBpbmNsdWRlIHZzcGFjaW5nKFxuXHRcdCdwYWRkaW5nLWJvdHRvbScgMVxuXHQpO1xuXG5cdEBpbmNsdWRlIG1xKCRvLXRoYW5rcy1icDEpIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHR9XG59XG5cblxuLm8tdGhhbmtzX19sZWZ0IHtcblx0QGluY2x1ZGUgbXEoJG8tdGhhbmtzLWJwMSkge1xuXHRcdHdpZHRoOiBjYWxjKCN7Y29sdW1uKDYsMTIpfSArICN7JG8tdGhhbmtzLWdhcH0pO1xuXHRcdHBhZGRpbmctcmlnaHQ6ICRvLXRoYW5rcy1nYXA7XG5cdH1cbn1cblxuXG4uby10aGFua3NfX3JpZ2h0IHtcblx0bWFyZ2luLXRvcDogc3BhY2UoNSk7XG5cblx0QGluY2x1ZGUgbXEoJG8tdGhhbmtzLWJwMSkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNiwxMik7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0fVxufSIsIi8vIENvbXBvbmVudCBzZXR0aW5nczogVVNQXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJG8tdXNwOiAoXG5cdCdiYWNrZ3JvdW5kLWNvbG9yJzogIFx0cGFsZXR0ZShwcmltYXJ5LCA3MDApLFxuXHQndGV4dC1jb2xvcic6XHRcdFx0cGFsZXR0ZShuZXV0cmFsLCAwKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5vLXVzcCB7XG5cdEBpbmNsdWRlIG1xKCRtYXg6IGwpIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRvLXVzcCwgJ2JhY2tncm91bmQtY29sb3InKTtcblx0fVxufVxuXG4uby11c3BfX21haW4ge1xuXHRAaW5jbHVkZSBtcShtKXtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHR9XG59XG5cbi5vLXVzcF9fdGV4dCB7XG5cdHBhZGRpbmc6IHNwYWNlKDQpIDA7XG5cdGNvbG9yOiBtYXAtZ2V0KCRvLXVzcCwgJ3RleHQtY29sb3InKTtcblx0YmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkby11c3AsICdiYWNrZ3JvdW5kLWNvbG9yJyk7XG5cblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNSwgOCk7XG5cdFx0cGFkZGluZzoge1xuXHRcdFx0dG9wOiBjb2x1bW4oMC41LCA4KTtcblx0XHRcdGJvdHRvbTogY29sdW1uKDAuNSwgOCk7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0cmlnaHQ6IGNvbHVtbigxLCA4KTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBtcShsKSB7XG5cdFx0d2lkdGg6IGNvbHVtbig2KTtcblx0XHRwYWRkaW5nOiBjb2x1bW4oMC41KSBjb2x1bW4oMSk7XG5cdH1cbn1cblxuLm8tdXNwX19pbWFnZSB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG5cdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cblx0QGluY2x1ZGUgbXEoJG1heDogbSkge1xuXHRcdG1hcmdpbi1sZWZ0OiAtJHNpdGUtZ3V0dGVyLXdpZHRoO1xuXHRcdG1hcmdpbi1yaWdodDogLSRzaXRlLWd1dHRlci13aWR0aDtcblx0XHRwYWRkaW5nLWJvdHRvbTogNjUlO1xuXHRcdG1pbi1oZWlnaHQ6IDM2MHB4O1xuXHR9XG5cblx0QGluY2x1ZGUgbXEobSwgbCkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNCwgOCk7XG5cdFx0bWFyZ2luLXJpZ2h0OiBjb2x1bW4oLTEsIDgpO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdHdpZHRoOiBjb2x1bW4oNik7XG5cdH1cbn1cblxuLm8tdXNwX19oZWFkaW5nIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKHh4bCk7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDMpO1xuXHRjb2xvcjogbWFwLWdldCgkby11c3AsICd0ZXh0LWNvbG9yJyk7XG59XG5cbi5vLXVzcF9fbGlzdCB7XG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblx0bWFyZ2luLWxlZnQ6IDE2cHg7XG59XG5cbi5vLXVzcF9faXRlbSB7XG5cdEBpbmNsdWRlIG93bChzcGFjZSgyKSk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1sZWZ0OiBzcGFjZSgyKTtcblxuXHQmOjpiZWZvcmUge1xuXHRcdCR3aWR0aDogMTZweDtcblx0XHQkaGVpZ2h0OiAxMnB4O1xuXG5cdFx0Y29udGVudDonJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1cHg7XG5cdFx0bGVmdDogLSN7JHdpZHRofTtcblx0XHR3aWR0aDogJHdpZHRoO1xuXHRcdGhlaWdodDogJGhlaWdodDtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltZy9jaGVjay9jaGVja2VkLnN2Zyk7XG5cdFx0YmFja2dyb3VuZC1zaXplOiAkd2lkdGggJGhlaWdodDtcblx0fVxufVxuXG4uby11c3BfX2FjdGlvbiB7XG5cdG1hcmdpbi10b3A6IHNwYWNlKDYpO1xufVxuXG4uby11c3BfX2ltYWdlIHtcblx0YmFja2dyb3VuZC1jb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAxMDApO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufSIsIi5vLXZhY2FuY2llcyB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0bGluZS1oZWlnaHQ6IDEuNDtcblx0bGlzdC1zdHlsZTogbm9uZTtcblxuXHQ+ICogKyAqIHtcblx0XHRtYXJnaW4tdG9wOiBzcGFjZSgyKTtcblx0fVxufVxuXG5cbi5vLXZhY2FuY2llc19fbGluayB7XG5cdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMobSk7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHBhZGRpbmc6IHNwYWNlKDQpO1xuXHRib3JkZXI6IDFweCBzb2xpZCBwYWxldHRlKG5ldXRyYWwsIDMwMCk7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDkwMCk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogYWxsIDE1MG1zIGxpbmVhcjtcblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogcGFsZXR0ZShmZWVkYmFjaywgYWN0aW9uKTtcblx0XHRib3JkZXItY29sb3I6IGN1cnJlbnRDb2xvcjtcblx0XHRib3gtc2hhZG93OiBpbnNldCAwIDAgMXB4IDFweCBjdXJyZW50Q29sb3I7XG5cdH1cbn1cblxuXG4uby12YWNhbmNpZXNfX2NvbnRlbnQge1xuXHRmbGV4OiBhdXRvO1xufVxuXG5cbi5vLXZhY2FuY2llc19faWNvbiB7XG5cdGZsZXg6IG5vbmU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHR3aWR0aDogNDBweDtcblx0aGVpZ2h0OiA0MHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBwYWxldHRlKHNlY29uZGFyeSwgNTAwKTtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRjb2xvcjogcGFsZXR0ZShuZXV0cmFsLCAwKTtcblx0dHJhbnNpdGlvbjogYWxsIDE1MG1zIGxpbmVhcjtcblxuXHQuby12YWNhbmNpZXNfX2xpbms6aG92ZXIgJiB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogc2NhbGVfY29sb3IocGFsZXR0ZShmZWVkYmFjaywgYWN0aW9uKSwgJGxpZ2h0bmVzczogMCUpO1xuXHR9XG59XG5cblxuLm8tdmFjYW5jaWVzX190aXRsZSB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSh4bCk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRjb2xvcjogY3VycmVudENvbG9yO1xufVxuXG5cbi5vLXZhY2FuY2llc19fc3VidGl0bGUge1xuXHRAaW5jbHVkZSBmb250LXNpemUoYmFzZSk7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDQwMCk7XG59XG5cblxuLm8tdmFjYW5jaWVzX19wcm9wZXJ0aWVzIHtcblx0bWFyZ2luLXRvcDogc3BhY2UoNCk7XG59IiwiJG8tdmFjYW5jeS1wcm9wZXJ0aWVzLXB1bGwtdXAtc2l6ZTogc3BhY2UoMik7XG5cbi5vLXZhY2FuY3lfX2hlcm8ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG1hcmdpbi1ib3R0b206IHNwYWNlKDIpICsgJG8tdmFjYW5jeS1wcm9wZXJ0aWVzLXB1bGwtdXAtc2l6ZTtcblxuXHRAaW5jbHVkZSBtcShsKSB7XG5cdCAgICBAaW5jbHVkZSBjb250YWluO1xuXHR9XG5cblx0Jjo6YmVmb3JlIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogLTE7XG5cdCAgICBjb250ZW50OiAnJztcblx0ICAgIHRvcDogMDtcblx0ICAgIGJvdHRvbTogMDtcblx0ICAgIHJpZ2h0OiAtNTB2dztcblx0ICAgIGxlZnQ6IC01MHZ3O1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHBhbGV0dGUocHJpbWFyeSwgNzAwKTtcblx0fVxufVxuXG4uby12YWNhbmN5X19oZXJvLWltZyB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG87XG59XG5cblxuLm8tdmFjYW5jeV9fcHJvcGVydGllcyB7XG5cdEBpbmNsdWRlIGNvbnRhaW47XG5cdG1hcmdpbi10b3A6IC0kby12YWNhbmN5LXByb3BlcnRpZXMtcHVsbC11cC1zaXplO1xufSIsIi8qKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVGVtcGxhdGVzXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuIiwiLnMtY2hlY2tsaXN0IHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bWFyZ2luLWxlZnQ6IDA7XG5cblx0bGkge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRtYXJnaW4tdG9wOiA1cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNDU7XG5cblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltZy9jaGVjay9jaGVja2VkLnN2Zyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0d2lkdGg6IDEycHg7XG5cdFx0XHRoZWlnaHQ6IDEycHg7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDhweDtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3cHgpO1xuXHRcdH1cblx0fVxuXG5cdC5jaGVja2xpc3QtaGFzLXgtc21hbGwtZm9udCAme1xuXHRcdEBpbmNsdWRlIGZvbnQoeHMpO1xuXG5cdFx0bGkge1xuXHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDVweCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cbn0iLCIvKipcbiAqIEFsbCB0ZXh0IGVsZW1lbnRzIHRoYXQgY2FuIGJlIGFkZGVkIGJ5IHRoZSB1c2VyIHRocm91Z2ggYSBDTVNcbiAqL1xuXG5cbi5zLXRleHQge1xuXG5cdGgyLCBoMywgaDQge1xuXHRcdGNvbG9yOiBwYWxldHRlKG5ldXRyYWwsIDgwMCk7XG5cdH1cblxuXHQvLyBGaXJzdCB0aGUgb3dsIHNlbGVjdG9yIGZvciBzZXR0aW5nIGEgZGVmYXVsdCB2ZXJ0aWNhbCByaHl0aG1cblx0JiA+ICogKyAqIHtcblx0XHRtYXJnaW4tdG9wOiBzcGFjZSg0KTtcblx0fVxuXG5cdC8vIE1ha2Ugc3VyZSBmaXJzdCBpdGVtIGluIHNjb3BlZCB0ZXh0IGhhcyBubyBtYXJnaW4gb24gdG9wXG5cdCYgPiA6Zmlyc3QtY2hpbGQge1xuXHRcdG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcblx0fVxuXG5cdCYgPiAqICsgLmMtYnV0dG9uIHtcblx0XHRtYXJnaW4tdG9wOiBzcGFjZSg1KTtcblx0fVxuXG5cdCYgPiB1bDpub3QoW2NsYXNzXSkge1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cblx0XHQmID4gbGkge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IC0xLjEyNWVtO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAxLjEyNWVtO1xuXG5cdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRAaW5jbHVkZSBmb250LXNpemUoeGwpO1xuXHRcdFx0XHRjb250ZW50OiBcIlxcMjAyMlwiO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogLTRweDtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmID4gb2w6bm90KFtjbGFzc10pIHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdGNvdW50ZXItcmVzZXQ6IG9sLWNvdW50ZXI7XG5cblx0XHQmID4gbGkge1xuXHRcdFx0Y291bnRlci1pbmNyZW1lbnQ6IG9sLWNvdW50ZXI7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRtYXJnaW4tbGVmdDogLTEuMTI1ZW07XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDEuOGVtO1xuXG5cdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRjb250ZW50OiBjb3VudGVyKG9sLWNvdW50ZXIpIFwiLiBcIjtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdHdpZHRoOiAxLjI3NWVtO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIvKiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogIENvbG9yXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qKlxuICogSGVyZSB3ZSBwcmludCBvdXQgYWxsIG91ciBoZWxwZXIgY2xhc3NlcyBmb3Igb3VyIGRlZmluZWQgY29sb3JzXG4gKiBCYXNlZCBvbiB0aGVzZSBhcnRpY2xlczpcbiAqIC0gaHR0cDovL2Vyc2tpbmVkZXNpZ24uY29tL2Jsb2cvZnJpZW5kbGllci1jb2xvdXItbmFtZXMtc2Fzcy1tYXBzL1xuICogLSBodHRwczovL2Jsb2cuYXRlY2htZWRpYS5jb20vY3NzLWZvci1tdWx0aXBsZS10aGVtZXMvXG4gKiBPdXRwdXQgaXMgaW4gdGhlIGZvcm0gb2Y6XG5cbiAgIC51LWNvbG9yLXByaW1hcnkge1xuICAgICAgY29sb3I6ICNiYWRhNTU7XG4gICB9XG5cbiAgLnUtYmctbmV1dHJhbC0tOTAwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVjYWZmO1xuICB9XG4gKi9cblxuQGVhY2ggJGxldmVsLCAkcGFsZXR0ZSBpbiAkcGFsZXR0ZXMge1xuXHRAZWFjaCAkdHlwZSwgJGNvbG9yIGluICRwYWxldHRlIHtcblx0XHRAaWYoJHR5cGUgPT0gJ2Jhc2UnKXtcblx0XHRcdC51LWNvbG9yLSN7JGxldmVsfSB7XG5cdFx0XHRcdGNvbG9yOiAjeyRjb2xvcn07XG5cdFx0XHR9XG5cdFx0XHQudS1iZy0jeyRsZXZlbH0ge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjeyRjb2xvcn07XG5cdFx0XHR9XG5cdFx0fSBAZWxzZSB7XG5cdFx0XHQudS1jb2xvci0jeyRsZXZlbH0tLSN7JHR5cGV9IHtcblx0XHRcdFx0Y29sb3I6ICN7JGNvbG9yfTtcblx0XHRcdH1cblx0XHRcdC51LWJnLSN7JGxldmVsfS0tI3skdHlwZX0ge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjeyRjb2xvcn07XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLyoqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqICBGb250c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4vKipcbiAqIEhlcmUgd2UgcHJpbnQgb3V0IGFsbCBvdXIgaGVscGVyIGNsYXNzZXMgZm9yIG91ciBkZWZpbmVkICRmb250LXNpemVzIG1hcFxuICogT3V0cHV0IG9mIHRoZSBjbGFzc2VzIGluIHRoZSB0aGlzIGZvcm06XG5cbiAgIC51LWZzLW0ge31cbiAgIC51LWZzLXhsIHt9XG4gICAuLi4gZXRjXG5cbiAqL1xuXG5cbkBpZiB2YXJpYWJsZS1leGlzdHMoZm9udC1zaXplcykge1xuXHRAZWFjaCAkdmFsLCAkc2l6ZSBpbiAkZm9udC1zaXplcyB7XG5cdFx0QGVhY2ggJHR5cGUsICRjb2xvciBpbiAkc2l6ZSB7XG5cdFx0XHQudS1mcy0jeyR2YWx9IHtcblx0XHRcdFx0QGluY2x1ZGUgZm9udC1zaXplKCR2YWwpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cblxuLyoqXG4gKiBIZXJlIHdlIHByaW50IG91dCBhbGwgb3VyIGhlbHBlciBjbGFzc2VzIGZvciBvdXIgZGVmaW5lZCAkZm9udC13ZWlnaHRzIG1hcFxuICogT3V0cHV0IG9mIHRoZSBjbGFzc2VzIGluIHRoZSB0aGlzIGZvcm06XG5cbiAgIC51LWZ3LXJlZ3VsYXIge31cbiAgIC51LWZ3LXNlbWlCb2xkIHt9XG4gICAuLi4gZXRjXG5cbiAqL1xuXG5AaWYgdmFyaWFibGUtZXhpc3RzKGZvbnQtd2VpZ2h0cykge1xuXHRAZWFjaCAkbmFtZSwgJHNpemUgaW4gJGZvbnQtd2VpZ2h0cyB7XG5cdFx0LnUtZnctI3skbmFtZX0ge1xuXHRcdFx0QGluY2x1ZGUgZm9udC13ZWlnaHQoJG5hbWUpO1xuXHRcdH1cblx0fVxufVxuXG4iLCIudS1oaWRkZW4ge1xuXHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnRcbn1cblxuLnUtcGxhY2Vob2xkZXItaW1hZ2Uge1xuXHRoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcblx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0b2JqZWN0LWZpdDogY292ZXIgIWltcG9ydGFudDtcbn1cblxuLnUtdGV4dC1hbGlnbi1jZW50ZXIge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXIhaW1wb3J0YW50O1xufVxuXG4ubm93cmFwIHtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn0iLCIvKlxuKiBJZiB5b3UgbmVlZCB0byBtYWtlIGEgcXVpY2sgZml4LCB5b3UgY2FuIGRvIGl0IGhlcmUuXG4qIExhdGVyIHdoZW4geW91IGhhdmUgdGhlIHRpbWUsIHlvdSBjYW4gbW92ZSB0aGUgZml4IGludG8gdGhlIGNvcnJlY3QgcGxhY2UgaW4gdGhlIHN0cnVjdHVyZVxuKi9cblxuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE5vdGhpbmcgaGVyZSB5ZXQsIEdvb2Qgam9iISEiLCJAZm9yICRpIGZyb20gMCB0aHJvdWdoIDgge1xuXHQvLyBNYXJnaW5cblx0LnUtc3BhY2luZy1tdCN7JGl9ICAgICB7IG1hcmdpbi10b3A6IFx0c3BhY2UoJGkpICFpbXBvcnRhbnQ7IH1cblx0LnUtc3BhY2luZy1tciN7JGl9ICAgICB7IG1hcmdpbi1yaWdodDogXHRzcGFjZSgkaSkgIWltcG9ydGFudDsgfVxuXHQudS1zcGFjaW5nLW1iI3skaX0gICAgIHsgbWFyZ2luLWJvdHRvbTogc3BhY2UoJGkpICFpbXBvcnRhbnQ7IH1cblx0LnUtc3BhY2luZy1tbCN7JGl9ICAgICB7IG1hcmdpbi1sZWZ0OiBcdHNwYWNlKCRpKSAhaW1wb3J0YW50OyB9XG5cblx0Ly8gUGFkZGluZ1xuXHQudS1zcGFjaW5nLXB0I3skaX0gICAgIHsgcGFkZGluZy10b3A6IFx0c3BhY2UoJGkpICFpbXBvcnRhbnQ7IH1cblx0LnUtc3BhY2luZy1wciN7JGl9ICAgICB7IHBhZGRpbmctcmlnaHQ6IHNwYWNlKCRpKSAhaW1wb3J0YW50OyB9XG5cdC51LXNwYWNpbmctcGIjeyRpfSAgICAgeyBwYWRkaW5nLWJvdHRvbTpzcGFjZSgkaSkgIWltcG9ydGFudDsgfVxuXHQudS1zcGFjaW5nLXBsI3skaX0gICAgIHsgcGFkZGluZy1sZWZ0OiBcdHNwYWNlKCRpKSAhaW1wb3J0YW50OyB9XG59XG5cbi51LXNwYWNpbmctcHYge1xuXHRAaW5jbHVkZSB2c3BhY2luZyhcblx0XHQncGFkZGluZy10b3AnIDEsXG5cdFx0J3BhZGRpbmctYm90dG9tJyAxXG5cdClcbn1cblxuQGluY2x1ZGUgbXEobCkge1xuXHQudS1zcGFjaW5nLXByMFxcQGwge1xuXHRcdHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcblx0fVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBUaGlzIGdyaWQgY2FuIGJlIHR1cm5lZCBvbiBhbmQgb2ZmIHdoZW4geW91IHdhbnQgdG8gY2hlY2tcbiAqIGlmIGV2ZXJ5dGhpbmcgaXMgbmljZSBpbiBwbGFjZS5cbiAqIFNldCBmbGFnICdzaG93R3JpZCcgdG8gdHJ1ZSBpbiBzaXRlLnBocFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG5cbi8vIENvbG9yOiBTZXQgYSBodWUgdmFsdWUgdGhhdCBoYXMgZW5vdWdoIGNvbnRyYXN0XG4kdmctaHVlOiBcdFx0XHRcdFx0MjMwOyAvLyAwLTM2MFxuXG4vLyBDb2x1bW5zOiBOdW1iZXIgb2YgY29sdW1ucyBwZXIgdmlld3BvcnRcbiR2Zy1jb2x1bW4tY291bnQtczogXHRcdCRzaXRlLWNvbHVtbnMtcztcbiR2Zy1jb2x1bW4tY291bnQtbTogXHRcdCRzaXRlLWNvbHVtbnMtbTtcbiR2Zy1jb2x1bW4tY291bnQtbDogXHRcdCRzaXRlLWNvbHVtbnMtbDtcblxuXG4vLyBEbyBzb21lIGNhbGN1bGF0aW9ucyBhbmQgcHV0IHRoZW0gaW4gdmFyaWFibGVzIGZvciByZXVzZVxuJHZnLWNvbHVtbi13aWR0aC1zOiBwZXJjZW50YWdlKDEgLyAkdmctY29sdW1uLWNvdW50LXMpO1xuJHZnLWNvbHVtbi13aWR0aC1tOiBwZXJjZW50YWdlKDEgLyAkdmctY29sdW1uLWNvdW50LW0pO1xuJHZnLWNvbHVtbi13aWR0aC1sOiBwZXJjZW50YWdlKDEgLyAkdmctY29sdW1uLWNvdW50LWwpO1xuJHZnLWNvbG9yLTE6IGhzbGEoJHZnLWh1ZSwgMTAwLCA1MCwgMC4wNyk7XG4kdmctY29sb3ItMjogaHNsYSgkdmctaHVlLCAxMDAsIDUwLCAwLjA0KTtcblxuXG4udS12aXNpYmxlLWdyaWQge1xuXHRAaW5jbHVkZSB6KHotdmlzaWJsZS1ncmlkKTtcblx0QGluY2x1ZGUgY29udGFpbjtcblx0cG9zaXRpb246IGZpeGVkO1xuXHRsZWZ0OiAwO1xuXHRyaWdodDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG5cdC8qIDggcG9pbnQgZ3JpZCBsaW5lcyAqL1xuXHQvL2JhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoXG5cdC8vXHR0byBib3R0b20sXG5cdC8vXHRoc2xhKDAsIDEwMCwgNTAsIDAuODQpIDAsXG5cdC8vXHRoc2xhKDAsIDEwMCwgNTAsIDApIDFweCxcblx0Ly9cdGhzbGEoMCwgMTAwLCA1MCwgMCkgOHB4LFxuXHQvL1x0aHNsYSgyMDAsIDEwMCwgNTAsIDAuMDQpIDhweFxuXHQvLyk7XG5cblx0QGluY2x1ZGUgbXEobSwgbCkge1xuXHRcdHBhZGRpbmc6IDA7XG5cdH1cblxufVxuXG4udS12aXNpYmxlLWdyaWRfX21haW4ge1xuXHRoZWlnaHQ6IDEwMHZoO1xuXG5cdGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoXG5cdFx0XHR0byByaWdodCxcblx0XHRcdCR2Zy1jb2xvci0xLFxuXHRcdFx0JHZnLWNvbG9yLTEgJHZnLWNvbHVtbi13aWR0aC1zLFxuXHRcdFx0JHZnLWNvbG9yLTIgJHZnLWNvbHVtbi13aWR0aC1zLFxuXHRcdFx0JHZnLWNvbG9yLTIgKCR2Zy1jb2x1bW4td2lkdGgtcyAqIDIpXG5cdCk7XG5cblx0QGluY2x1ZGUgbXEobSkge1xuXHRcdGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoXG5cdFx0XHRcdHRvIHJpZ2h0LFxuXHRcdFx0XHQkdmctY29sb3ItMSxcblx0XHRcdFx0JHZnLWNvbG9yLTEgJHZnLWNvbHVtbi13aWR0aC1tLFxuXHRcdFx0XHQkdmctY29sb3ItMiAkdmctY29sdW1uLXdpZHRoLW0sXG5cdFx0XHRcdCR2Zy1jb2xvci0yICgkdmctY29sdW1uLXdpZHRoLW0gKiAyKVxuXHRcdCk7XG5cdH1cblx0QGluY2x1ZGUgbXEobCkge1xuXHRcdGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoXG5cdFx0XHRcdHRvIHJpZ2h0LFxuXHRcdFx0XHQkdmctY29sb3ItMSxcblx0XHRcdFx0JHZnLWNvbG9yLTEgJHZnLWNvbHVtbi13aWR0aC1sLFxuXHRcdFx0XHQkdmctY29sb3ItMiAkdmctY29sdW1uLXdpZHRoLWwsXG5cdFx0XHRcdCR2Zy1jb2xvci0yICgkdmctY29sdW1uLXdpZHRoLWwgKiAyKVxuXHRcdCk7XG5cdH1cbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=*/