/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */

.hamburger {
	font: inherit;
	display: inline-block;
	overflow: visible;
	margin: 0;
	padding: 15px 15px;
	cursor: pointer;
	transition-timing-function: linear;
	transition-duration: .15s;
	transition-property: opacity, -webkit-filter;
	transition-property: opacity, filter;
	transition-property: opacity, filter, -webkit-filter;
	text-transform: none;
	color: inherit;
	border: 0;
	background-color: transparent;
}

.hamburger:hover {
	opacity: .7;
}

.hamburger-box {
	position: relative;
	display: inline-block;
	width: 40px;
	height: 24px;
}

.hamburger-inner {
	top: 50%;
	display: block;
	margin-top: -2px;
}

.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
	position: absolute;
	width: 40px;
	height: 4px;
	transition-timing-function: ease;
	transition-duration: .15s;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	border-radius: 4px;
	background-color: currentColor;
}

.hamburger-inner::before,
.hamburger-inner::after {
	display: block;
	content: '';
}

.hamburger-inner::before {
	top: -10px;
}

.hamburger-inner::after {
	bottom: -10px;
}

/*
   * 3DXY
   */

.hamburger--3dxy .hamburger-box {
	-webkit-perspective: 80px;
	perspective: 80px;
}

.hamburger--3dxy .hamburger-inner {
	transition: background-color 0s .1s cubic-bezier(.645, .045, .355, 1), -webkit-transform .15s cubic-bezier(.645, .045, .355, 1);
	transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s .1s cubic-bezier(.645, .045, .355, 1);
	transition: transform .15s cubic-bezier(.645, .045, .355, 1), background-color 0s .1s cubic-bezier(.645, .045, .355, 1), -webkit-transform .15s cubic-bezier(.645, .045, .355, 1);
}

.hamburger--3dxy .hamburger-inner::before,
.hamburger--3dxy .hamburger-inner::after {
	transition: -webkit-transform 0s .1s cubic-bezier(.645, .045, .355, 1);
	transition: transform 0s .1s cubic-bezier(.645, .045, .355, 1);
	transition: transform 0s .1s cubic-bezier(.645, .045, .355, 1), -webkit-transform 0s .1s cubic-bezier(.645, .045, .355, 1);
}

.hamburger--3dxy.is-active .hamburger-inner {
	-webkit-transform: rotateX(180deg) rotateY(180deg);
	transform: rotateX(180deg) rotateY(180deg);
	background-color: transparent;
}

.hamburger--3dxy.is-active .hamburger-inner::before {
	-webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
	transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dxy.is-active .hamburger-inner::after {
	-webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
	transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * Slider
   */

.hamburger--slider .hamburger-inner {
	top: 2px;
}

.hamburger--slider .hamburger-inner::before {
	top: 10px;
	transition-timing-function: ease;
	transition-duration: .15s;
	transition-property: opacity, -webkit-transform;
	transition-property: transform, opacity;
	transition-property: transform, opacity, -webkit-transform;
}

.hamburger--slider .hamburger-inner::after {
	top: 20px;
}

.hamburger--slider.is-active .hamburger-inner {
	-webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
	transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--slider.is-active .hamburger-inner::before {
	-webkit-transform: rotate(-45deg) translate3d(-5.71429px, -6px, 0);
	transform: rotate(-45deg) translate3d(-5.71429px, -6px, 0);
	opacity: 0;
}

.hamburger--slider.is-active .hamburger-inner::after {
	-webkit-transform: translate3d(0, -20px, 0) rotate(-90deg);
	transform: translate3d(0, -20px, 0) rotate(-90deg);
}

/*
   * Spin
   */

.hamburger--spin .hamburger-inner {
	transition-timing-function: cubic-bezier(.55, .055, .675, .19);
	transition-duration: .22s;
}

.hamburger--spin .hamburger-inner::before {
	transition: top .1s .25s ease-in, opacity .1s ease-in;
}

.hamburger--spin .hamburger-inner::after {
	transition: bottom .1s .25s ease-in, -webkit-transform .22s cubic-bezier(.55, .055, .675, .19);
	transition: bottom .1s .25s ease-in, transform .22s cubic-bezier(.55, .055, .675, .19);
	transition: bottom .1s .25s ease-in, transform .22s cubic-bezier(.55, .055, .675, .19), -webkit-transform .22s cubic-bezier(.55, .055, .675, .19);
}

.hamburger--spin.is-active .hamburger-inner {
	transition-delay: .12s;
	transition-timing-function: cubic-bezier(.215, .61, .355, 1);
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}

.hamburger--spin.is-active .hamburger-inner::before {
	top: 0;
	transition: top .1s ease-out, opacity .1s .12s ease-out;
	opacity: 0;
}

.hamburger--spin.is-active .hamburger-inner::after {
	bottom: 0;
	transition: bottom .1s ease-out, -webkit-transform .22s .12s cubic-bezier(.215, .61, .355, 1);
	transition: bottom .1s ease-out, transform .22s .12s cubic-bezier(.215, .61, .355, 1);
	transition: bottom .1s ease-out, transform .22s .12s cubic-bezier(.215, .61, .355, 1), -webkit-transform .22s .12s cubic-bezier(.215, .61, .355, 1);
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
}

/*! sanitize.css v6.0.0 | CC0 License | github.com/csstools/sanitize.css */

/* Document
 * ========================================================================== */

/**
 * 1. Remove repeating backgrounds in all browsers (opinionated).
 * 2. Add border box sizing in all browsers (opinionated).
 */

*,
::before,
::after { /* 1 */
	box-sizing: border-box;
	background-repeat: no-repeat; /* 2 */
}

/**
 * 1. Add text decoration inheritance in all browsers (opinionated).
 * 2. Add vertical alignment inheritance in all browsers (opinionated).
 */

::before,
::after { /* 1 */
	vertical-align: inherit;
	text-decoration: inherit; /* 2 */
}

/**
 * 1. Correct the line height in all browsers.
 * 2. Add the default cursor in all browsers (opinionated).
 * 3. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 * 4. Breaks words to prevent prevent overflow in all browsers (opinionated).
 */

html {
	line-height: 1.15; /* 1 */
	cursor: default; /* 3 */
	word-break: break-word; /* 2 */
	-ms-text-size-adjust: 100%; /* 3 */
	-webkit-text-size-adjust: 100%; /* 4 */
}

/* Sections
 * ========================================================================== */

/**
 * Remove the margin in all browsers (opinionated).
 */

body {
	margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

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

/* Grouping content
 * ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr { /* 1 */
	overflow: visible;
	box-sizing: content-box; /* 1 */
	height: 0; /* 2 */
}

/**
 * Add the correct display in IE.
 */

main {
	display: block;
}

/**
 * Remove the list style on navigation lists in all browsers (opinionated).
 */

nav ol,
nav ul {
	list-style: none;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

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

/* Text-level semantics
 * ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
	background-color: transparent;
}

/**
 * Add the correct text decoration in Edge, IE, Opera, and Safari.
 */

abbr[title] {
	text-decoration: underline;
	text-decoration: underline dotted;
	-webkit-text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

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

/**
 * Add the correct font size in all browsers.
 */

small {
	font-size: 80%;
}

/*
 * Remove the text shadow on text selections in Firefox 61- (opinionated).
 * 1. Restore the coloring undone by defining the text shadow
 *    in all browsers (opinionated).
 */

::-moz-selection { /* 1 */
	color: #000;
	background-color: #b3d4fc; /* 1 */
	text-shadow: none;
}

::selection { /* 1 */
	color: #000;
	background-color: #b3d4fc; /* 1 */
	text-shadow: none;
}

/* Embedded content
 * ========================================================================== */

/*
 * Change the alignment on media elements in all browers (opinionated).
 */

audio,
canvas,
iframe,
img,
svg,
video {
	vertical-align: middle;
}

/**
 * Add the correct display in IE 9-.
 */

audio,
video {
	display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */

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

/**
 * Remove the border on images inside links in IE 10-.
 */

img {
	border-style: none;
}

/**
 * Change the fill color to match the text color in all browsers (opinionated).
 */

svg {
	fill: currentColor;
}

/**
 * Hide the overflow in IE.
 */

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

/* Tabular data
 * ========================================================================== */

/**
 * Collapse border spacing in all browsers (opinionated).
 */

table {
	border-collapse: collapse;
}

/* Forms
 * ========================================================================== */

/**
 * Remove the margin in Firefox and Safari.
 */

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

/**
 * Inherit styling in all browsers (opinionated).
 */

button,
input,
select,
textarea {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}

/**
 * 1. Show the overflow in IE.
 * 2. Remove the inheritance of text transform in Edge, Firefox, and IE.
 */

button {
	overflow: visible; /* 1 */
	text-transform: none; /* 2 */
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

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

/**
 * Restore the focus styles unset by the previous rule in Firefox.
 */

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

/**
 * Remove the inner border and padding in Firefox.
 */

::-moz-focus-inner {
	padding: 0;
	border-style: none;
}

/**
 * Correct the padding in Firefox.
 */

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

/**
 * Show the overflow in Edge and IE.
 */

input {
	overflow: visible;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

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

/**
 * 1. Add the correct display in Edge and IE.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
	display: inline-block; /* 1 */
	vertical-align: baseline; /* 2 */
}

/**
 * Remove the inheritance of text transform in Firefox.
 */

select {
	text-transform: none;
}

/**
 * 1. Remove the default vertical scrollbar in IE.
 * 2. Change the resize direction on textareas in all browsers (opinionated).
 */

textarea {
	overflow: auto; /* 1 */
	resize: vertical; /* 2 */
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */

[type='checkbox'],
[type='radio'] {
	box-sizing: border-box; /* 1 */
	padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

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

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button { /* 1 */
	font: inherit;
	-webkit-appearance: button; /* 2 */
}

/* Interactive
 * ========================================================================== */

/*
 * Add the correct display in Edge and IE.
 */

details {
	display: block;
}

/*
 * Add the correct styles in Edge, IE, and Safari.
 */

dialog {
	position: absolute;
	right: 0;
	left: 0;
	display: block;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
	height: -moz-fit-content;
	height: -webkit-fit-content;
	height: fit-content;
	margin: auto;
	padding: 1em;
	color: black;
	border: solid;
	background-color: white;
}

dialog:not([open]) {
	display: none;
}

/*
 * Add the correct display in all browsers.
 */

summary {
	display: list-item;
}

/* Scripting
 * ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

canvas {
	display: inline-block;
}

/**
 * Add the correct display in IE.
 */

template {
	display: none;
}

/* User interaction
 * ========================================================================== */

/*
 * 1. Remove the tapping delay on clickable elements in all browsers (opinionated).
 * 2. Remove the tapping delay in IE 10.
 */

a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] { /* 1 */
	touch-action: manipulation; /* 2 */
}

/**
 * Add the correct display in IE 10-.
 */

[hidden] {
	display: none;
}

/* Accessibility
 * ========================================================================== */

/**
 * Change the cursor on busy elements in all browsers (opinionated).
 */

[aria-busy='true'] {
	cursor: progress;
}

/*
 * Change the cursor on control elements in all browsers (opinionated).
 */

[aria-controls] {
	cursor: pointer;
}

/*
 * Change the cursor on disabled, not-editable, or otherwise
 * inoperable elements in all browsers (opinionated).
 */

[aria-disabled],
[disabled] {
	cursor: disabled;
}

/*
 * Change the display on visually hidden accessible elements
 * in all browsers (opinionated).
 */

[aria-hidden='false'][hidden]:not(:focus) {
	position: absolute;
	display: inherit;
	clip: rect(0, 0, 0, 0);
}

label {
	display: inline-block;
}

button {
	border-radius: 0;
}

button:focus {
	outline: 1px dotted;
	outline: 5px auto -webkit-focus-ring-color;
}

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

button,
input {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

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

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

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

input[type='date'],
input[type='time'],
input[type='datetime-local'],
input[type='month'] {
	-webkit-appearance: listbox;
}

textarea {
	overflow: auto;
	resize: vertical;
}

fieldset {
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
}

/* Slider */

.slick-loading .slick-list {
	background: #fff url('./ajax-loader.gif') center center no-repeat;
}

/* Icons */

@font-face {
	font-family: 'slick';
	font-weight: normal;
	font-style: normal;
	src: url('./fonts/slick.eot');
	src: url('./fonts/slick.eot?#iefix') format('embedded-opentype'), url('./fonts/slick.woff') format('woff'), url('./fonts/slick.ttf') format('truetype'), url('./fonts/slick.svg#slick') format('svg');
}

/* Arrows */

.slick-prev,
.slick-next {
	font-size: 0;
	line-height: 0;
	position: absolute;
	top: 50%;
	display: block;
	width: 20px;
	height: 20px;
	padding: 0;
	cursor: pointer;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	color: transparent;
	border: none;
	outline: none;
	background: transparent;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
	color: transparent;
	outline: none;
	background: transparent;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
	opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
	opacity: .25;
}

.slick-prev:before,
.slick-next:before {
	font-family: 'slick';
	font-size: 20px;
	line-height: 1;
	opacity: .75;
	color: white;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.slick-prev {
	left: -25px;
}

[dir='rtl'] .slick-prev {
	right: -25px;
	left: auto;
}

.slick-prev:before {
	content: '←';
}

[dir='rtl'] .slick-prev:before {
	content: '→';
}

.slick-next {
	right: -25px;
}

[dir='rtl'] .slick-next {
	right: auto;
	left: -25px;
}

.slick-next:before {
	content: '→';
}

[dir='rtl'] .slick-next:before {
	content: '←';
}

/* Dots */

.slick-dotted.slick-slider {
	margin-bottom: 30px;
}

.slick-dots {
	position: absolute;
	bottom: -25px;
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
	text-align: center;
}

.slick-dots li {
	position: relative;
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0 5px;
	padding: 0;
	cursor: pointer;
}

.slick-dots li button {
	font-size: 0;
	line-height: 0;
	display: block;
	width: 20px;
	height: 20px;
	padding: 5px;
	cursor: pointer;
	color: transparent;
	border: 0;
	outline: none;
	background: transparent;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
	outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
	opacity: 1;
}

.slick-dots li button:before {
	font-family: 'slick';
	font-size: 6px;
	line-height: 20px;
	position: absolute;
	top: 0;
	left: 0;
	width: 20px;
	height: 20px;
	content: '•';
	text-align: center;
	opacity: .25;
	color: black;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
	opacity: .75;
	color: black;
}

/* Slider */

.slick-slider {
	position: relative;
	display: block;
	box-sizing: border-box;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
	-khtml-user-select: none;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}

.slick-list {
	position: relative;
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 0;
}

.slick-list:focus {
	outline: none;
}

.slick-list.dragging {
	cursor: pointer;
	cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.slick-track {
	position: relative;
	top: 0;
	left: 0;
	display: block;
	margin-right: auto;
	margin-left: auto;
}

.slick-track:before,
.slick-track:after {
	display: table;
	content: '';
}

.slick-track:after {
	clear: both;
}

.slick-loading .slick-track {
	visibility: hidden;
}

.slick-slide {
	display: none;
	float: left;
	height: 100%;
	min-height: 1px;
}

[dir='rtl'] .slick-slide {
	float: right;
}

.slick-slide img {
	display: block;
}

.slick-slide.slick-loading img {
	display: none;
}

.slick-slide.dragging img {
	pointer-events: none;
}

.slick-initialized .slick-slide {
	display: block;
}

.slick-loading .slick-slide {
	visibility: hidden;
}

.slick-vertical .slick-slide {
	display: block;
	height: auto;
	border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
	display: none;
}

/*! Flickity v2.1.2
https://flickity.metafizzy.co
---------------------------------------------- */

.flickity-enabled {
	position: relative;
}

.flickity-enabled:focus {
	outline: none;
}

.flickity-viewport {
	position: relative;
	overflow: hidden;
	height: 100%;
}

.flickity-slider {
	position: absolute;
	width: 100%;
	height: 100%;
}

/* draggable */

.flickity-enabled.is-draggable {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-tap-highlight-color: transparent;
	tap-highlight-color: transparent;
}

.flickity-enabled.is-draggable .flickity-viewport {
	cursor: move;
	cursor: -webkit-grab;
	cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
	cursor: -webkit-grabbing;
	cursor: grabbing;
}

/* ---- flickity-button ---- */

.flickity-button {
	position: absolute;
	color: #333;
	border: none;
	background: rgba(255, 255, 255, .75);
}

.flickity-button:hover {
	cursor: pointer;
	background: white;
}

.flickity-button:focus {
	outline: none;
	box-shadow: 0 0 0 5px #19f;
}

.flickity-button:active {
	opacity: .6;
}

.flickity-button:disabled {
	cursor: auto; /* prevent disabled button from capturing pointer up event. #716 */
	pointer-events: none;
	opacity: .3;
}

.flickity-button-icon {
	fill: #333;
}

/* ---- previous/next buttons ---- */

.flickity-prev-next-button {
	top: 50%;
	width: 44px;
	height: 44px; /* vertically center */
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	border-radius: 50%;
}

.flickity-prev-next-button.previous {
	left: 10px;
}

.flickity-prev-next-button.next {
	right: 10px;
}

/* right to left */

.flickity-rtl .flickity-prev-next-button.previous {
	right: 10px;
	left: auto;
}

.flickity-rtl .flickity-prev-next-button.next {
	right: auto;
	left: 10px;
}

.flickity-prev-next-button .flickity-button-icon {
	position: absolute;
	top: 20%;
	left: 20%;
	width: 60%;
	height: 60%;
}

/* ---- page dots ---- */

.flickity-page-dots {
	line-height: 1;
	position: absolute;
	bottom: -25px;
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
	text-align: center;
}

.flickity-rtl .flickity-page-dots {
	direction: rtl;
}

.flickity-page-dots .dot {
	display: inline-block;
	width: 10px;
	height: 10px;
	margin: 0 8px;
	cursor: pointer;
	opacity: .25;
	border-radius: 50%;
	background: #333;
}

.flickity-page-dots .dot.is-selected {
	opacity: 1;
}

.container-fluid {
	width: 100%;
	padding-right: 15px;
	padding-left: 15px;
}

.container {
	max-width: 960px;
	margin: auto;
}

.row {
	display: flex;
	margin-right: -15px;
	margin-left: -15px;
}

.column,
.bottom-overlay__aside,
.bottom-overlay__main,
.columns {
	padding-right: 15px;
	padding-left: 15px;
	flex: 1 1 0;
}

.column.one,
.one.bottom-overlay__aside,
.one.bottom-overlay__main,
.columns.one {
	width: 20%;
	flex: 0 0 20%;
}

.column.two,
.two.bottom-overlay__aside,
.two.bottom-overlay__main,
.columns.two {
	width: 40%;
	flex: 0 0 40%;
}

.column.three,
.three.bottom-overlay__aside,
.three.bottom-overlay__main,
.columns.three {
	width: 60%;
	flex: 0 0 60%;
}

.column.four,
.four.bottom-overlay__aside,
.four.bottom-overlay__main,
.columns.four {
	width: 80%;
	flex: 0 0 80%;
}

.column.five,
.five.bottom-overlay__aside,
.five.bottom-overlay__main,
.columns.five {
	width: 100%;
	flex: 0 0 100%;
}

ml-a,
mx-a,
m-a {
	margin-left: auto;
}

mr-a,
mx-a,
m-a {
	margin-right: auto;
}

mt-a,
my-a,
m-a {
	margin-top: auto;
}

mb-a,
my-a,
m-a {
	margin-bottom: auto;
}

button {
	cursor: pointer;
	border: none;
	background: none;
}

.btn {
	font-family: sans-serif;
	font-size: 1rem;
	display: inline-block;
	margin: 0;
	padding: 1rem 2rem;
	cursor: pointer;
	transition: background 250ms ease-in-out,  -webkit-transform 150ms ease;
	transition: background 250ms ease-in-out,  transform 150ms ease;
	transition: background 250ms ease-in-out,  transform 150ms ease,  -webkit-transform 150ms ease;
	text-align: center;
	text-decoration: none;
	border: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}

.btn-primary {
	color: #fff;
	background: green;
}

.btn:hover,
.btn:focus {
	background: #0053ba;
}

.btn:focus {
	outline: 1px solid #fff;
	outline-offset: -4px;
}

.btn:active {
	-webkit-transform: scale(.99);
	transform: scale(.99);
}

/*------------------------------------*\
    # Simple Typography Settings
\*------------------------------------*/

/*------------------------------------*\
    # Type
\*------------------------------------*/

*,
html,
body {
	font-family: -apple-system, BlinkMacSystemFont, “Segoe UI”, “Roboto”, “Oxygen”, “Ubuntu”, “Cantarell”, “Fira Sans”, “Droid Sans”, “Helvetica Neue”, sans-serif;
	font-size: 16px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 700;
	line-height: 1.25em;
	margin-top: 36px;
	color: #212121;
}

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
	margin-top: 0;
}

h1 {
	font-size: 2.5rem;
	margin-bottom: 24px;
}

h2 {
	font-size: 1.92308rem;
	margin-bottom: 18.46154px;
}

h3 {
	font-size: 1.66667rem;
	margin-bottom: 16px;
}

h4 {
	font-size: 1.47059rem;
	margin-bottom: 14.11765px;
}

h5 {
	font-size: 1.38889rem;
	margin-bottom: 13.33333px;
}

h6 {
	font-size: 1.25rem;
	margin-bottom: 12px;
}

p {
	font-size: 1.0625rem;
	line-height: 1.5em;
	margin-bottom: 20px;
	color: #505050;
}

p:last-of-type {
	margin-bottom: 0;
}

a {
	transition: all .2s ease;
	color: #212121;
}

a:hover {
	color: black;
}

ul,
ol {
	margin: 20px 0 0 20px;
}

ul li,
ol li {
	line-height: 1.5em;
	margin-top: 10px;
	color: #505050;
}

ul ul,
ul ol,
ol ul,
ol ol {
	margin-top: 0;
}

ul li {
	list-style: disc;
}

ul ul li {
	list-style: circle;
}

ol li {
	list-style: decimal;
}

hr {
	height: 1px;
	margin: 30px 0;
	border: none;
	background-color: #dadada;
}

blockquote {
	font-size: 1.4375rem;
	font-style: italic;
	line-height: 1.5em;
	margin: 30px 0;
	text-align: center;
	color: #505050;
}

table {
	width: 100%;
	margin: 30px 0;
	border-collapse: collapse;
}

table,
td,
th {
	text-align: left;
	border: 1px solid #dadada;
}

th {
	font-weight: 800;
}

th,
td {
	padding: 15px;
}

figure {
	margin: 30px 0;
}

figure img {
	margin: 0;
}

figcaption {
	font-size: 16px;
	margin-top: 10px;
	color: #6a6a6a;
}

pre {
	display: block;
	overflow: auto;
	margin: 0 0 40px 0;
	padding: 20px;
	border: 1px solid #dadada;
	border-radius: 3px;
	background-color: #f9f9f9;
}

pre code {
	line-height: 1.5em;
	position: static;
	padding: 0;
	border: none;
}

code {
	font-family: Courier New, Courier, monospace;
	font-size: .88542rem;
	line-height: 1em;
	position: relative;
	top: -.2em;
	padding: 3px;
	pointer-events: none;
	color: #282828;
	border: 1px solid #dadada;
	border-radius: 3px;
}

em,
i,
.italic {
	font-style: italic;
}

strong,
b,
.bold {
	font-weight: 800;
}

img {
	display: block;
	max-width: 100%;
	margin: 30px 0;
}

img {
	margin: 0;
	vertical-align: middle;
	border-style: none;
}

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

.img-fluid {
	max-width: 100%;
	height: auto;
}

body {
	overflow-x: hidden;
	color: #0a0a0a;
	background: #fefefe;
}

body.home {
	color: #fefefe;
}

a {
	text-decoration: none;
}

a:focus {
	outline: 0;
}

button:focus {
	outline: 0;
}

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

.list-unstyled {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.list-unstyled li {
	list-style: none;
}

.responsive-square {
	position: relative;
	height: 0;
	padding-bottom: 100% !important;
}

.fancybox-bg.fancybox-bg {
	background: rgba(254, 254, 254, .9);
}

.overlay-is-active .site-header {
	z-index: 10;
	background: transparent;
}

.headroom {
	transition: -webkit-transform 200ms linear;
	transition: transform 200ms linear;
	transition: transform 200ms linear, -webkit-transform 200ms linear;
	will-change: transform;
}

.headroom--pinned {
	-webkit-transform: translateY(0%);
	transform: translateY(0%);
}

.headroom--unpinned {
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
}

.site-title {
	margin-bottom: 0;
}

.site-header {
	position: fixed;
	z-index: 1;
	top: 0;
	display: flex;
	width: 100%;
	margin: auto;
	padding: 15px;
	transition: -webkit-transform .3s;
	transition: transform .3s;
	transition: transform .3s, -webkit-transform .3s;
	color: #212121;
	background: #fefefe;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	align-items: center;
	justify-content: space-between;
}

.home .site-header {
	color: currentColor;
	background: transparent;
}

.main-navigation li {
	list-style: none;
}

.main-navigation a {
	font-weight: 100;
	text-transform: lowercase;
}

.menu-toggle {
	position: fixed;
	z-index: 10;
	top: 15px;
	right: 15px;
	display: flex;
	color: currentColor;
	align-items: center;
}

.header__category {
	font-size: .8rem;
	font-weight: 600;
	display: none;
	padding-right: .71rem;
	text-transform: uppercase;
}

.site-branding {
	z-index: 11;
	text-transform: lowercase;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	will-change: font-size;
}

.site-branding a {
	font-size: 8vw;
	font-weight: 800;
	line-height: 1;
	display: inline-block;
	padding: .25rem 1rem;
	vertical-align: middle;
	letter-spacing: 5px;
	color: currentColor;
}

.home .site-branding a,
.overlay-is-active .site-branding a {
	font-size: 8vw;
	position: relative;
	opacity: .7;
	color: #fefefe;
}

.menu {
	display: flex;
	width: 100%;
	margin-top: 0;
	margin-right: 10px;
	margin-bottom: 0;
	margin-left: 10px;
	padding-left: 0;
	align-items: center;
	flex-wrap: wrap;
	justify-content: center;
}

.menu .menu {
	margin-left: 1rem;
}

.menu__item {
	position: relative;
	display: flex;
	margin: 0;
	border-bottom: 1px solid transparent;
	flex: 1 1 100%;
}

.menu__item .menu__link {
	font-size: 1.25rem;
	font-weight: 400;
	display: flex;
	width: 100%;
	height: 100%;
	padding: 15px;
	transition: font-size .2s;
	text-align: center;
	color: #fefefe;
	background: rgba(10, 10, 10, 0);
	justify-content: center;
	align-items: center;
}

.menu__item .menu__link:hover {
	cursor: pointer;
	background: rgba(10, 10, 10, .7);
	box-shadow: 0 0 6px -4px #fefefe;
}

.menu__item .menu__link:active {
	color: #0a0a0a;
	background: rgba(254, 254, 254, .5);
}

.menu__item .menu__link.current_page {
	background: rgba(254, 254, 254, .15);
}

.dropdown:hover .dropdown__menu {
	display: block;
}

.dropdown:hover .dropdown__menu.right {
	right: 0;
}

.dropdown .menu__item {
	white-space: nowrap;
}

.dropdown__menu {
	position: absolute;
	display: none;
	padding-top: .5rem;
}

.dropdown__menu .menu__item {
	padding-top: .5rem;
	padding-bottom: .5rem;
}

.menu-toggle.is-active {
	z-index: 11;
	color: #fefefe;
}

.overlay-nav {
	position: fixed;
	z-index: 10;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: flex;
	transition: opacity .3s, -webkit-transform .3s;
	transition: transform .3s, opacity .3s;
	transition: transform .3s, opacity .3s, -webkit-transform .3s;
	-webkit-transform: translatey(-100%);
	transform: translatey(-100%);
	opacity: 0;
	background: rgba(33, 33, 33, .9);
	justify-content: center;
	align-items: center;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.overlay-nav.is-active {
	-webkit-transform: translatey(0);
	transform: translatey(0);
	opacity: 1;
}

.bottom-overlay {
	position: fixed;
	z-index: 11;
	right: 0;
	bottom: 0;
	left: 0;
	transition: opacity .3s, -webkit-transform .3s;
	transition: transform .3s, opacity .3s;
	transition: transform .3s, opacity .3s, -webkit-transform .3s;
	-webkit-transform: translatey(100%);
	transform: translatey(100%);
	opacity: 0;
	background: #fefefe;
}

.bottom-overlay-is-active .bottom-overlay {
	-webkit-transform: initial;
	transform: initial;
	opacity: 1;
	box-shadow: 0 8px 15px 3px black;
}

.bottom-overlay__container {
	display: flex;
	background: rgba(254, 254, 254, .9);
}

.bottom-overlay__close {
	font-size: 1.5rem;
	font-weight: 800;
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	padding: 0 15px;
	transition: color .2s, top 0 .2s;
	opacity: 1;
	color: #fefefe;
	background: #212121;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.bottom-overlay__close:hover {
	opacity: 1;
	color: #212121;
	background: #fefefe;
}

.bottom-overlay-is-active .bottom-overlay__close {
	top: -1em;
}

.bottom-overlay__aside {
	position: relative;
	width: 300px;
	margin-right: auto;
	border-right: 1px solid #212121;
	flex: 0 0 300px;
}

.bottom-overlay__aside__container {
	padding-right: 15px;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.bottom-overlay__main {
	flex: 1;
}

.thumb-gallery {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

.thumb-gallery__image-wrap {
	padding: .5rem;
	flex: 0 1 25%;
}

.thumb-gallery__image-wrap:last-of-type {
	margin-right: auto;
}

.bottom-overlay__choices {
	display: flex;
	margin: 15px;
	flex-wrap: wrap;
	justify-content: center;
}

.bottom-overlay__title {
	display: none;
	padding: 15px;
	text-align: center;
	text-transform: uppercase;
	border-bottom: 1px solid #000;
}

.bottom-overlay__choice {
	margin: 0;
	flex: 50%;
}

.bottom-overlay__choice:hover .bottom-overlay__choice-title {
	color: #fefefe;
	background: #212121;
}

.bottom-overlay__choice-title {
	font-weight: 800;
	display: inline-block;
	width: 100%;
	padding: 15px;
	text-align: center;
	letter-spacing: 8px;
}

.bottom-overlay__choice-title.is_active {
	text-decoration: underline;
}

.fillContainer__parent {
	position: relative;
	vertical-align: middle;
}

.fillContainer__parent > img {
	position: absolute;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.fillContainer__child {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.fade-in {
	transition: opacity .3s;
	opacity: 0;
}

.images-loaded .fade-in {
	opacity: 1;
}

.heroSlider {
	transition: opacity 1.3s;
	opacity: 0;
}

.heroSlider.slick-slider {
	transition: opacity 1.3s .5s;
	opacity: 1;
}

.heroSlider__item {
	height: 100vh;
	background: #333;
	background-position: center;
	background-size: cover;
}

.slider-label {
	font-size: 12px;
	font-weight: 800;
	position: absolute;
	right: 0;
	bottom: 0;
	display: inline-block;
	padding: 5px 25px 5px 15px;
	letter-spacing: 5px;
	text-transform: uppercase;
	opacity: .8;
	color: #5f5c5c;
	border: 1px solid #ccc;
	background: white;
	box-shadow: 0 0 10px -3px;
}

.gallery__wrapper {
	background: #333;
}

.gallery__wrapper .row {
	display: block;
}

.gallery__wrapper .nav-bg {
	display: none;
	background: #333;
	flex: 0 0 300px;
}

.gallery {
	padding-top: 15px;
	padding-right: 15px;
	padding-bottom: 15px;
	padding-left: 15px;
}

.gallery__images {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

.gallery__image {
	display: flex;
	width: 33%;
	flex: 0 1 33%;
	justify-content: center;
}

.gallery__image:last-of-type {
	margin-right: auto;
}

.gallery__image img {
	margin: 0;
	border: 10px solid transparent;
}

.gallery-choices__title {
	font-weight: 800;
	display: flex;
	flex: 1 0 100%;
	justify-content: center;
}

.gallery-choices {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}

.gallery-choice {
	display: flex;
	width: 100%;
	margin: 1rem;
	background: #212121;
	justify-content: center;
	align-items: center;
}

.gallery-choice__title {
	padding: .5rem;
	text-align: center;
	text-transform: lowercase;
	color: #fefefe;
}

.page-gallery {
	padding-top: 75px;
	transition: opacity .5s;
}

.page-gallery__title {
	position: fixed;
	z-index: 1;
	right: 0;
	bottom: 0;
	display: inline-block;
	margin-bottom: 0;
}

.page-gallery__title button {
	font-size: 1rem;
	font-weight: 800;
	line-height: 1;
	display: inline-block;
	padding: 15px;
	cursor: pointer;
	transition: background .3s, color .3s;
	text-align: center;
	letter-spacing: 8px;
	color: #212529;
	border: none;
	background: #fefefe;
}

.page-gallery__title button:hover {
	color: #fefefe;
	background: #212121;
}

.masonry-item {
	width: 50%;
	padding: 5px;
}

.page-gallery__image-wrap {
	width: 100.5%;
	transition: box-shadow .2s, -webkit-transform .2s;
	transition: transform .2s, box-shadow .2s;
	transition: transform .2s, box-shadow .2s, -webkit-transform .2s;
}

.page-gallery__image-wrap img {
	width: 100.5%;
	transition: box-shadow .2s, border  .2s, opacity .2s, -webkit-transform .2s;
	transition: box-shadow .2s, border  .2s, transform .2s, opacity .2s;
	transition: box-shadow .2s, border  .2s, transform .2s, opacity .2s, -webkit-transform .2s;
	border: 1px solid #ced4da;
}

.page-gallery__image-wrap:hover img {
	-webkit-transform: scale(1.02);
	transform: scale(1.02);
	border: 1px solid #adb5bd;
	box-shadow: 0 3px 8px -2px rgba(10, 10, 10, .5);
}

.page-gallery__image-wrap:active img {
	-webkit-transform: scale(.99);
	transform: scale(.99);
	opacity: .8;
}

.thumb-gallery__image-wrap a {
	position: relative;
	display: block;
	overflow: hidden;
	height: 0;
	padding-bottom: 100%;
}

.thumb-gallery__image-wrap img {
	-o-object-fit: cover;
	object-fit: cover;
}

@media all and (min-width: 25em) {

.header__category {
	display: block;
}

}

@media all and (min-width: 40em) {

.menu__item {
	min-width: 155px;
	max-width: 250px;
	padding-right: 10px;
	border-right: 1px solid;
	flex: 1 1 auto;
}

.menu__item:after {
	display: block;
	padding-bottom: 66%;
	content: '';
}

.menu__item:last-of-type {
	padding-right: 0;
	border-right: 0;
}

.menu__item .menu__link {
	position: absolute;
}

.masonry-item {
	width: 33%;
	padding: 10px;
}

.masonry-item-large {
	width: 66%;
	padding: 15px;
}

}

@media all and (min-width: 50em) {

.site-header {
	margin-left: initial;
}

.site-branding a {
	font-size: 3rem;
	letter-spacing: 20px;
}

.home .site-branding a,
.overlay-is-active .site-branding a {
	font-size: 11vw;
}

.menu__item:after {
	padding-bottom: 100%;
}

.bottom-overlay__close {
	font-size: 3rem;
}

.bottom-overlay__choice {
	flex: auto;
}

.page-gallery {
	display: flex;
	width: 100%;
	margin: auto;
	flex-wrap: wrap;
	justify-content: center;
}

.page-gallery__title {
	right: 15px;
}

.masonry-item-large {
	width: 50%;
}

}

@media all and (min-width: 75em) {

.masonry-item {
	width: 25%;
}

}


/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLmNzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvaGFtYnVyZ2Vycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy9fYmFzZS5zY3NzIiwiX3NldHRpbmdzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHh5LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19zbGlkZXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NwaW4uc2NzcyIsIl9zYW5pdGl6ZS5zY3NzIiwiX3Jlc2V0LWN1c3RvbS5zY3NzIiwidmVuZG9yL3NsaWNrLXNsaWRlci9fc2xpY2stdGhlbWUuc2NzcyIsInZlbmRvci9zbGljay1zbGlkZXIvX3NsaWNrLnNjc3MiLCJ2ZW5kb3IvZmxpY2tpdHkvX2ZsaWNraXR5LnNjc3MiLCJfZ3JpZC5zY3NzIiwiX3NwYWNlcnMuc2NzcyIsIl9idXR0b25zLnNjc3MiLCJfdHlwb2dyYXBoeS5zY3NzIiwibWl4aW5zL19weC10by1yZW0uc2NzcyIsIl9pbWFnZXMuc2NzcyIsIl9iYXNlLnNjc3MiLCJfaGVhZGVyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbWFwcHktYnJlYWtwb2ludHMvX21hcHB5LWJyZWFrcG9pbnRzLnNjc3MiLCJfbWVudXMuc2NzcyIsIl9uYXYtb3ZlcmxheS5zY3NzIiwiX2JvdHRvbS1vdmVybGF5LnNjc3MiLCJfZmlsbENvbnRhaW5lci5zY3NzIiwibWl4aW5zL19taXhpbi1zaXppbmcuc2NzcyIsIl9mYWRlLWluLnNjc3MiLCJfaGVyb1NsaWRlci5zY3NzIiwiX2dhbGxlcnkuc2NzcyIsIl9nYWxsZXJ5LWNob2ljZXMuc2NzcyIsIl9wYWdlLWdhbGxlcnkuc2NzcyIsIl90aHVtYi1nYWxsZXJ5LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQ2pCOzs7Ozs7R0FNRztBQ0xIO0VBQ0UsbUJEUStDO0VDUC9DLHNCQUFxQjtFQUNyQixnQkFBZTtFQUVmLDZDQUFvQztFQUFwQyxxQ0FBb0M7RUFBcEMscURBQW9DO0VBQ3BDLDJCRFdnRDtFQ1ZoRCxtQ0RXaUQ7RUNSakQsY0FBYTtFQUNiLGVBQWM7RUFDZCxxQkFBb0I7RUFDcEIsOEJBQTZCO0VBQzdCLFVBQVM7RUFDVCxVQUFTO0VBQ1Qsa0JBQWlCLEVBVWxCO0VBMUJEO0lBdUJNLGFEUDBDLEVDUzdDOztBQUdIO0VBQ0UsWURsQitDO0VDbUIvQyxhQUFrRTtFQUNsRSxzQkFBcUI7RUFDckIsbUJBQWtCLEVBQ25COztBQUVEO0VBQ0UsZUFBYztFQUNkLFNBQVE7RUFDUixpQkFBd0MsRUE0QnpDO0VBL0JEO0lBUUksWURoQzZDO0lDaUM3QyxZRGhDNEM7SUNpQzVDLCtCQzZCcUM7SUQ1QnJDLG1CRC9CNEM7SUNnQzVDLG1CQUFrQjtJQUNsQix1Q0FBOEI7SUFBOUIsK0JBQThCO0lBQTlCLGtEQUE4QjtJQUM5QiwyQkFBMEI7SUFDMUIsaUNBQWdDLEVBQ2pDO0VBaEJIO0lBb0JJLFlBQVc7SUFDWCxlQUFjLEVBQ2Y7RUF0Qkg7SUF5QkksV0FBOEQsRUFDL0Q7RUExQkg7SUE2QkksY0FBaUUsRUFDbEU7O0FFbEVEOztLQUVHO0FBQ0g7RUFFSSwwQkFBdUM7VUFBdkMsa0JBQXVDLEVBQ3hDOztBQUhIO0VBTUksd0lBQ3lFO0VBRHpFLGdJQUN5RTtFQUR6RSw4TEFDeUUsRUFNMUU7RUFiSDtJQVdNLDJFQUFrRTtJQUFsRSxtRUFBa0U7SUFBbEUsbUlBQWtFLEVBQ25FOztBQVpMO0VBaUJNLDhCQUE2QjtFQUM3QixtREFBMEM7VUFBMUMsMkNBQTBDLEVBUzNDO0VBM0JMO0lBcUJRLHlEQUE4RjtZQUE5RixpREFBOEYsRUFDL0Y7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V0csK0JBQXNCO1lBQXRCLHVCQUFzQjtJQUN0QiwwQjNCekRtQjtJMkIwRG5CLGlEQUFvRCxFQUNwRDtFQWRIO0lBa0JHLFlBQVc7SUFDWCwrQkFBcUI7WUFBckIsdUJBQXFCLEVBQ3JCOztBQ2xGSDtFQUVDLGVBQWM7RUFDWCxpQkFBZ0I7RUFDaEIsbUJBQWtCO0VBQ2xCLFVBQVM7RUFDVCxxQkFBb0IsRUFDdkI7O0FBUEQ7RUFTRSxxQkFBaUI7S0FBakIsa0JBQWlCLEVBQ2xCIiwiZmlsZSI6InN0eWxlLm1pbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKiFcbiAqIEhhbWJ1cmdlcnNcbiAqIEBkZXNjcmlwdGlvbiBUYXN0eSBDU1MtYW5pbWF0ZWQgaGFtYnVyZ2Vyc1xuICogQGF1dGhvciBKb25hdGhhbiBTdWggQGpvbnN1aFxuICogQHNpdGUgaHR0cHM6Ly9qb25zdWguY29tL2hhbWJ1cmdlcnNcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9qb25zdWgvaGFtYnVyZ2Vyc1xuICovXG4uaGFtYnVyZ2VyIHtcbiAgcGFkZGluZzogMTVweCAxNXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgZmlsdGVyO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgZm9udDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gIC5oYW1idXJnZXI6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuNzsgfVxuXG4uaGFtYnVyZ2VyLWJveCB7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5oYW1idXJnZXItaW5uZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0ycHg7IH1cbiAgLmhhbWJ1cmdlci1pbm5lciwgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlOyB9XG4gIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IC0xMHB4OyB9XG4gIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBib3R0b206IC0xMHB4OyB9XG5cbi8qXG4gICAqIDNEWFlcbiAgICovXG4uaGFtYnVyZ2VyLS0zZHh5IC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDgwcHg7IH1cblxuLmhhbWJ1cmdlci0tM2R4eSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHh5IC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tM2R4eSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG5cbi5oYW1idXJnZXItLTNkeHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZykgcm90YXRlWSgxODBkZWcpOyB9XG4gIC5oYW1idXJnZXItLTNkeHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSByb3RhdGUoNDVkZWcpOyB9XG4gIC5oYW1idXJnZXItLTNkeHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKSByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4vKlxuICAgKiBTbGlkZXJcbiAgICovXG4uaGFtYnVyZ2VyLS1zbGlkZXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogMnB4OyB9XG4gIC5oYW1idXJnZXItLXNsaWRlciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMTBweDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7IH1cbiAgLmhhbWJ1cmdlci0tc2xpZGVyIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IDIwcHg7IH1cblxuLmhhbWJ1cmdlci0tc2xpZGVyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSByb3RhdGUoNDVkZWcpOyB9XG4gIC5oYW1idXJnZXItLXNsaWRlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZTNkKC01LjcxNDI5cHgsIC02cHgsIDApO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmhhbWJ1cmdlci0tc2xpZGVyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCkgcm90YXRlKC05MGRlZyk7IH1cblxuLypcbiAgICogU3BpblxuICAgKi9cbi5oYW1idXJnZXItLXNwaW4gLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cbiAgLmhhbWJ1cmdlci0tc3BpbiAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMjVzIGVhc2UtaW4sIG9wYWNpdHkgMC4xcyBlYXNlLWluOyB9XG4gIC5oYW1idXJnZXItLXNwaW4gLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMjVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjIycyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuXG4uaGFtYnVyZ2VyLS1zcGluLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS1zcGluLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2Utb3V0LCBvcGFjaXR5IDAuMXMgMC4xMnMgZWFzZS1vdXQ7IH1cbiAgLmhhbWJ1cmdlci0tc3Bpbi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4yMnMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cblxuLyohIHNhbml0aXplLmNzcyB2Ni4wLjAgfCBDQzAgTGljZW5zZSB8IGdpdGh1Yi5jb20vY3NzdG9vbHMvc2FuaXRpemUuY3NzICovXG4vKiBEb2N1bWVudFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gUmVtb3ZlIHJlcGVhdGluZyBiYWNrZ3JvdW5kcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIEFkZCBib3JkZXIgYm94IHNpemluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuKixcbjo6YmVmb3JlLFxuOjphZnRlciB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIC8qIDEgKi9cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogMS4gQWRkIHRleHQgZGVjb3JhdGlvbiBpbmhlcml0YW5jZSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIEFkZCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW5oZXJpdGFuY2UgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbjo6YmVmb3JlLFxuOjphZnRlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQWRkIHRoZSBkZWZhdWx0IGN1cnNvciBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAqIDQuIEJyZWFrcyB3b3JkcyB0byBwcmV2ZW50IHByZXZlbnQgb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIC8qIDIgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDMgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAzICovXG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIC8qIDQgKi8gfVxuXG4vKiBTZWN0aW9uc1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGxpc3Qgc3R5bGUgb24gbmF2aWdhdGlvbiBsaXN0cyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xubmF2IG9sLFxubmF2IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKlxuICogUmVtb3ZlIHRoZSB0ZXh0IHNoYWRvdyBvbiB0ZXh0IHNlbGVjdGlvbnMgaW4gRmlyZWZveCA2MS0gKG9waW5pb25hdGVkKS5cbiAqIDEuIFJlc3RvcmUgdGhlIGNvbG9yaW5nIHVuZG9uZSBieSBkZWZpbmluZyB0aGUgdGV4dCBzaGFkb3dcbiAqICAgIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG46Oi1tb3otc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IzZDRmYztcbiAgLyogMSAqL1xuICBjb2xvcjogIzAwMDtcbiAgLyogMSAqL1xuICB0ZXh0LXNoYWRvdzogbm9uZTsgfVxuXG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiM2Q0ZmM7XG4gIC8qIDEgKi9cbiAgY29sb3I6ICMwMDA7XG4gIC8qIDEgKi9cbiAgdGV4dC1zaGFkb3c6IG5vbmU7IH1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBDaGFuZ2UgdGhlIGFsaWdubWVudCBvbiBtZWRpYSBlbGVtZW50cyBpbiBhbGwgYnJvd2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5hdWRpbyxcbmNhbnZhcyxcbmlmcmFtZSxcbmltZyxcbnN2ZyxcbnZpZGVvIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG4vKipcbiAqIENoYW5nZSB0aGUgZmlsbCBjb2xvciB0byBtYXRjaCB0aGUgdGV4dCBjb2xvciBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuc3ZnIHtcbiAgZmlsbDogY3VycmVudENvbG9yOyB9XG5cbi8qKlxuICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBUYWJ1bGFyIGRhdGFcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIENvbGxhcHNlIGJvcmRlciBzcGFjaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IH1cblxuLyogRm9ybXNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qKlxuICogSW5oZXJpdCBzdHlsaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuLyoqXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDIuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICovXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgfVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZSBpbiBGaXJlZm94LlxuICovXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDsgfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDsgfVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07IH1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovIH1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gKiAyLiBDaGFuZ2UgdGhlIHJlc2l6ZSBkaXJlY3Rpb24gb24gdGV4dGFyZWFzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICAvKiAxICovXG4gIHJlc2l6ZTogdmVydGljYWw7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gKi9cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cbjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi8gfVxuXG4vKiBJbnRlcmFjdGl2ZVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3Qgc3R5bGVzIGluIEVkZ2UsIElFLCBhbmQgU2FmYXJpLlxuICovXG5kaWFsb2cge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyOiBzb2xpZDtcbiAgY29sb3I6IGJsYWNrO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAtbW96LWZpdC1jb250ZW50O1xuICBoZWlnaHQ6IC13ZWJraXQtZml0LWNvbnRlbnQ7XG4gIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogYXV0bztcbiAgcGFkZGluZzogMWVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogLW1vei1maXQtY29udGVudDtcbiAgd2lkdGg6IC13ZWJraXQtZml0LWNvbnRlbnQ7XG4gIHdpZHRoOiBmaXQtY29udGVudDsgfVxuXG5kaWFsb2c6bm90KFtvcGVuXSkge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxuLyogU2NyaXB0aW5nXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuY2FudmFzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBVc2VyIGludGVyYWN0aW9uXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIFJlbW92ZSB0aGUgdGFwcGluZyBkZWxheSBvbiBjbGlja2FibGUgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBSZW1vdmUgdGhlIHRhcHBpbmcgZGVsYXkgaW4gSUUgMTAuXG4gKi9cbmEsXG5hcmVhLFxuYnV0dG9uLFxuaW5wdXQsXG5sYWJlbCxcbnNlbGVjdCxcbnN1bW1hcnksXG50ZXh0YXJlYSxcblt0YWJpbmRleF0ge1xuICAtbXMtdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIC8qIDEgKi9cbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIEFjY2Vzc2liaWxpdHlcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIENoYW5nZSB0aGUgY3Vyc29yIG9uIGJ1c3kgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblthcmlhLWJ1c3k9XCJ0cnVlXCJdIHtcbiAgY3Vyc29yOiBwcm9ncmVzczsgfVxuXG4vKlxuICogQ2hhbmdlIHRoZSBjdXJzb3Igb24gY29udHJvbCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuW2FyaWEtY29udHJvbHNdIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi8qXG4gKiBDaGFuZ2UgdGhlIGN1cnNvciBvbiBkaXNhYmxlZCwgbm90LWVkaXRhYmxlLCBvciBvdGhlcndpc2VcbiAqIGlub3BlcmFibGUgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblthcmlhLWRpc2FibGVkXSxcbltkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRpc2FibGVkOyB9XG5cbi8qXG4gKiBDaGFuZ2UgdGhlIGRpc3BsYXkgb24gdmlzdWFsbHkgaGlkZGVuIGFjY2Vzc2libGUgZWxlbWVudHNcbiAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5bYXJpYS1oaWRkZW49XCJmYWxzZVwiXVtoaWRkZW5dOm5vdCg6Zm9jdXMpIHtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgZGlzcGxheTogaW5oZXJpdDtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZDtcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yOyB9XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IH1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMDsgfVxuXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBsaXN0Ym94OyB9XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHJlc2l6ZTogdmVydGljYWw7IH1cblxuZmllbGRzZXQge1xuICBtaW4td2lkdGg6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwOyB9XG5cbi8qIFNsaWRlciAqL1xuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLWxpc3Qge1xuICBiYWNrZ3JvdW5kOiAjZmZmIHVybChcIi4vYWpheC1sb2FkZXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0OyB9XG5cbi8qIEljb25zICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgc3JjOiB1cmwoXCIuL2ZvbnRzL3NsaWNrLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuL2ZvbnRzL3NsaWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4vZm9udHMvc2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuL2ZvbnRzL3NsaWNrLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi9mb250cy9zbGljay5zdmcjc2xpY2tcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuLyogQXJyb3dzICovXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDBweDtcbiAgZm9udC1zaXplOiAwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTsgfVxuICAuc2xpY2stcHJldjpob3ZlciwgLnNsaWNrLXByZXY6Zm9jdXMsXG4gIC5zbGljay1uZXh0OmhvdmVyLFxuICAuc2xpY2stbmV4dDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuc2xpY2stcHJldjpob3ZlcjpiZWZvcmUsIC5zbGljay1wcmV2OmZvY3VzOmJlZm9yZSxcbiAgICAuc2xpY2stbmV4dDpob3ZlcjpiZWZvcmUsXG4gICAgLnNsaWNrLW5leHQ6Zm9jdXM6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgLnNsaWNrLXByZXYuc2xpY2stZGlzYWJsZWQ6YmVmb3JlLFxuICAuc2xpY2stbmV4dC5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDAuMjU7IH1cbiAgLnNsaWNrLXByZXY6YmVmb3JlLFxuICAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBvcGFjaXR5OiAwLjc1O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuLnNsaWNrLXByZXYge1xuICBsZWZ0OiAtMjVweDsgfVxuICBbZGlyPVwicnRsXCJdIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAtMjVweDsgfVxuICAuc2xpY2stcHJldjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi4oaQXCI7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIuKGklwiOyB9XG5cbi5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IC0yNXB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLW5leHQge1xuICAgIGxlZnQ6IC0yNXB4O1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLihpJcIjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi4oaQXCI7IH1cblxuLyogRG90cyAqL1xuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0yNXB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5zbGljay1kb3RzIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBtYXJnaW46IDAgNXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgICAgZm9udC1zaXplOiAwcHg7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlciwgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAgICAgICAuc2xpY2stZG90cyBsaSBidXR0b246aG92ZXI6YmVmb3JlLCAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXM6YmVmb3JlIHtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAuc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG4gICAgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgb3BhY2l0eTogMC43NTsgfVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWxpc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLnNsaWNrLWxpc3Q6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lOyB9XG5cbi5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IGhhbmQ7IH1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5zbGljay10cmFjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4uc2xpY2stdHJhY2s6YmVmb3JlLFxuLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcnOyB9XG5cbi5zbGljay10cmFjazphZnRlciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5zbGljay1sb2FkaW5nIC5zbGljay10cmFjayB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpY2stc2xpZGUge1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7IH1cblxuW2Rpcj0ncnRsJ10gLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5zbGljay1zbGlkZSBpbWcge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWcge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXNsaWRlIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiEgRmxpY2tpdHkgdjIuMS4yXG5odHRwczovL2ZsaWNraXR5Lm1ldGFmaXp6eS5jb1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmZsaWNraXR5LWVuYWJsZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmZsaWNraXR5LWVuYWJsZWQ6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lOyB9XG5cbi5mbGlja2l0eS12aWV3cG9ydCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5mbGlja2l0eS1zbGlkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLyogZHJhZ2dhYmxlICovXG4uZmxpY2tpdHktZW5hYmxlZC5pcy1kcmFnZ2FibGUge1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB0YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4uZmxpY2tpdHktZW5hYmxlZC5pcy1kcmFnZ2FibGUgLmZsaWNraXR5LXZpZXdwb3J0IHtcbiAgY3Vyc29yOiBtb3ZlO1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgY3Vyc29yOiBncmFiOyB9XG5cbi5mbGlja2l0eS1lbmFibGVkLmlzLWRyYWdnYWJsZSAuZmxpY2tpdHktdmlld3BvcnQuaXMtcG9pbnRlci1kb3duIHtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xuICBjdXJzb3I6IGdyYWJiaW5nOyB9XG5cbi8qIC0tLS0gZmxpY2tpdHktYnV0dG9uIC0tLS0gKi9cbi5mbGlja2l0eS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6ICMzMzM7IH1cblxuLmZsaWNraXR5LWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmZsaWNraXR5LWJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDVweCAjMTlGOyB9XG5cbi5mbGlja2l0eS1idXR0b246YWN0aXZlIHtcbiAgb3BhY2l0eTogMC42OyB9XG5cbi5mbGlja2l0eS1idXR0b246ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjM7XG4gIGN1cnNvcjogYXV0bztcbiAgLyogcHJldmVudCBkaXNhYmxlZCBidXR0b24gZnJvbSBjYXB0dXJpbmcgcG9pbnRlciB1cCBldmVudC4gIzcxNiAqL1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uZmxpY2tpdHktYnV0dG9uLWljb24ge1xuICBmaWxsOiAjMzMzOyB9XG5cbi8qIC0tLS0gcHJldmlvdXMvbmV4dCBidXR0b25zIC0tLS0gKi9cbi5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uIHtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgLyogdmVydGljYWxseSBjZW50ZXIgKi9cbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLnByZXZpb3VzIHtcbiAgbGVmdDogMTBweDsgfVxuXG4uZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5uZXh0IHtcbiAgcmlnaHQ6IDEwcHg7IH1cblxuLyogcmlnaHQgdG8gbGVmdCAqL1xuLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5wcmV2aW91cyB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxMHB4OyB9XG5cbi5mbGlja2l0eS1ydGwgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ubmV4dCB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMHB4OyB9XG5cbi5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uIC5mbGlja2l0eS1idXR0b24taWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMjAlO1xuICB0b3A6IDIwJTtcbiAgd2lkdGg6IDYwJTtcbiAgaGVpZ2h0OiA2MCU7IH1cblxuLyogLS0tLSBwYWdlIGRvdHMgLS0tLSAqL1xuLmZsaWNraXR5LXBhZ2UtZG90cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvdHRvbTogLTI1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTsgfVxuXG4uZmxpY2tpdHktcnRsIC5mbGlja2l0eS1wYWdlLWRvdHMge1xuICBkaXJlY3Rpb246IHJ0bDsgfVxuXG4uZmxpY2tpdHktcGFnZS1kb3RzIC5kb3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG4gIG1hcmdpbjogMCA4cHg7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5mbGlja2l0eS1wYWdlLWRvdHMgLmRvdC5pcy1zZWxlY3RlZCB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmNvbnRhaW5lci1mbHVpZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH1cblxuLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogOTYwcHg7XG4gIG1hcmdpbjogYXV0bzsgfVxuXG4ucm93IHtcbiAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICBkaXNwbGF5OiBmbGV4OyB9XG5cbi5jb2x1bW4sIC5ib3R0b20tb3ZlcmxheV9fYXNpZGUsXG4uYm90dG9tLW92ZXJsYXlfX21haW4sXG4uY29sdW1ucyB7XG4gIGZsZXg6IDEgMSAwO1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH1cbiAgLmNvbHVtbi5vbmUsIC5vbmUuYm90dG9tLW92ZXJsYXlfX2FzaWRlLFxuICAub25lLmJvdHRvbS1vdmVybGF5X19tYWluLFxuICAuY29sdW1ucy5vbmUge1xuICAgIHdpZHRoOiAyMCU7XG4gICAgZmxleDogMCAwIDIwJTsgfVxuICAuY29sdW1uLnR3bywgLnR3by5ib3R0b20tb3ZlcmxheV9fYXNpZGUsXG4gIC50d28uYm90dG9tLW92ZXJsYXlfX21haW4sXG4gIC5jb2x1bW5zLnR3byB7XG4gICAgd2lkdGg6IDQwJTtcbiAgICBmbGV4OiAwIDAgNDAlOyB9XG4gIC5jb2x1bW4udGhyZWUsIC50aHJlZS5ib3R0b20tb3ZlcmxheV9fYXNpZGUsXG4gIC50aHJlZS5ib3R0b20tb3ZlcmxheV9fbWFpbixcbiAgLmNvbHVtbnMudGhyZWUge1xuICAgIHdpZHRoOiA2MCU7XG4gICAgZmxleDogMCAwIDYwJTsgfVxuICAuY29sdW1uLmZvdXIsIC5mb3VyLmJvdHRvbS1vdmVybGF5X19hc2lkZSxcbiAgLmZvdXIuYm90dG9tLW92ZXJsYXlfX21haW4sXG4gIC5jb2x1bW5zLmZvdXIge1xuICAgIHdpZHRoOiA4MCU7XG4gICAgZmxleDogMCAwIDgwJTsgfVxuICAuY29sdW1uLmZpdmUsIC5maXZlLmJvdHRvbS1vdmVybGF5X19hc2lkZSxcbiAgLmZpdmUuYm90dG9tLW92ZXJsYXlfX21haW4sXG4gIC5jb2x1bW5zLmZpdmUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsZXg6IDAgMCAxMDAlOyB9XG5cbm1sLWEsXG5teC1hLFxubS1hIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cblxubXItYSxcbm14LWEsXG5tLWEge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxubXQtYSxcbm15LWEsXG5tLWEge1xuICBtYXJnaW4tdG9wOiBhdXRvOyB9XG5cbm1iLWEsXG5teS1hLFxubS1hIHtcbiAgbWFyZ2luLWJvdHRvbTogYXV0bzsgfVxuXG5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDI1MG1zIGVhc2UtaW4tb3V0LCAgdHJhbnNmb3JtIDE1MG1zIGVhc2U7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi5idG4tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6IGdyZWVuO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uYnRuOmhvdmVyLFxuLmJ0bjpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICMwMDUzYmE7IH1cblxuLmJ0bjpmb2N1cyB7XG4gIG91dGxpbmU6IDFweCBzb2xpZCAjZmZmO1xuICBvdXRsaW5lLW9mZnNldDogLTRweDsgfVxuXG4uYnRuOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45OSk7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICAjIFNpbXBsZSBUeXBvZ3JhcGh5IFNldHRpbmdzXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICAjIFR5cGVcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4qLCBodG1sLCBib2R5IHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCDigJxTZWdvZSBVSeKAnSwg4oCcUm9ib3Rv4oCdLCDigJxPeHlnZW7igJ0sIOKAnFVidW50deKAnSwg4oCcQ2FudGFyZWxs4oCdLCDigJxGaXJhIFNhbnPigJ0sIOKAnERyb2lkIFNhbnPigJ0sIOKAnEhlbHZldGljYSBOZXVl4oCdLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgfVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luLXRvcDogMzZweDtcbiAgY29sb3I6ICMyMTIxMjE7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1ZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgaDE6Zmlyc3QtY2hpbGQsIGgyOmZpcnN0LWNoaWxkLCBoMzpmaXJzdC1jaGlsZCwgaDQ6Zmlyc3QtY2hpbGQsIGg1OmZpcnN0LWNoaWxkLCBoNjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyNHB4OyB9XG5cbmgyIHtcbiAgZm9udC1zaXplOiAxLjkyMzA4cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxOC40NjE1NHB4OyB9XG5cbmgzIHtcbiAgZm9udC1zaXplOiAxLjY2NjY3cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxNnB4OyB9XG5cbmg0IHtcbiAgZm9udC1zaXplOiAxLjQ3MDU5cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxNC4xMTc2NXB4OyB9XG5cbmg1IHtcbiAgZm9udC1zaXplOiAxLjM4ODg5cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxMy4zMzMzM3B4OyB9XG5cbmg2IHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxMnB4OyB9XG5cbnAge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICBjb2xvcjogIzUwNTA1MDsgfVxuICBwOmxhc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5hIHtcbiAgY29sb3I6ICMyMTIxMjE7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7IH1cbiAgYTpob3ZlciB7XG4gICAgY29sb3I6IGJsYWNrOyB9XG5cbnVsLFxub2wge1xuICBtYXJnaW46IDIwcHggMCAwIDIwcHg7IH1cbiAgdWwgbGksXG4gIG9sIGxpIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICBjb2xvcjogIzUwNTA1MDsgfVxuICB1bCB1bCxcbiAgdWwgb2wsXG4gIG9sIHVsLFxuICBvbCBvbCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuXG51bCBsaSB7XG4gIGxpc3Qtc3R5bGU6IGRpc2M7IH1cblxudWwgdWwgbGkge1xuICBsaXN0LXN0eWxlOiBjaXJjbGU7IH1cblxub2wgbGkge1xuICBsaXN0LXN0eWxlOiBkZWNpbWFsOyB9XG5cbmhyIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogMzBweCAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEQURBREE7IH1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMzBweCAwO1xuICBmb250LXNpemU6IDEuNDM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICBjb2xvcjogIzUwNTA1MDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxudGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAzMHB4IDA7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IH1cblxudGFibGUsIHRkLCB0aCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNEQURBREE7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxudGgge1xuICBmb250LXdlaWdodDogODAwOyB9XG5cbnRoLCB0ZCB7XG4gIHBhZGRpbmc6IDE1cHg7IH1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAzMHB4IDA7IH1cbiAgZmlndXJlIGltZyB7XG4gICAgbWFyZ2luOiAwOyB9XG5cbmZpZ2NhcHRpb24ge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBjb2xvcjogIzZhNmE2YTtcbiAgZm9udC1zaXplOiAxNnB4OyB9XG5cbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNEQURBREE7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAzcHg7IH1cbiAgcHJlIGNvZGUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtOyB9XG5cbmNvZGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTAuMmVtO1xuICBwYWRkaW5nOiAzcHg7XG4gIGZvbnQtZmFtaWx5OiBDb3VyaWVyIE5ldywgQ291cmllciwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDAuODg1NDJyZW07XG4gIGNvbG9yOiAjMjgyODI4O1xuICBsaW5lLWhlaWdodDogMWVtO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0RBREFEQTtcbiAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG5cbmVtLFxuaSxcbi5pdGFsaWMge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuc3Ryb25nLFxuYixcbi5ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDgwMDsgfVxuXG5pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDMwcHggMDsgfVxuXG5pbWcge1xuICBtYXJnaW46IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG4uaW1nLWZ1bGwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5pbWctZmx1aWQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjsgfVxuICBib2R5LmhvbWUge1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG5cbmEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgYTpmb2N1cyB7XG4gICAgb3V0bGluZTogMDsgfVxuXG5idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiAwOyB9XG5cbi5jZjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDsgfVxuXG4ubGlzdC11bnN0eWxlZCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5saXN0LXVuc3R5bGVkIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5yZXNwb25zaXZlLXNxdWFyZSB7XG4gIGhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi5mYW5jeWJveC1iZy5mYW5jeWJveC1iZyB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU0LCAyNTQsIDI1NCwgMC45KTsgfVxuXG4ub3ZlcmxheS1pcy1hY3RpdmUgLnNpdGUtaGVhZGVyIHtcbiAgei1pbmRleDogMTA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi5oZWFkcm9vbSB7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBsaW5lYXI7IH1cblxuLmhlYWRyb29tLS1waW5uZWQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpOyB9XG5cbi5oZWFkcm9vbS0tdW5waW5uZWQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9XG5cbi5zaXRlLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uc2l0ZS1oZWFkZXIge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3M7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMTVweDtcbiAgbWFyZ2luOiBhdXRvO1xuICBjb2xvcjogIzIxMjEyMTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlOyB9XG4gIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDUwZW0pIHtcbiAgICAuc2l0ZS1oZWFkZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IGluaXRpYWw7IH0gfVxuICAuaG9tZSAuc2l0ZS1oZWFkZXIge1xuICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLm1haW4tbmF2aWdhdGlvbiBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLm1haW4tbmF2aWdhdGlvbiBhIHtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDEwMDsgfVxuXG4ubWVudS10b2dnbGUge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwO1xuICByaWdodDogMTVweDtcbiAgdG9wOiAxNXB4O1xuICBjb2xvcjogY3VycmVudENvbG9yO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5oZWFkZXJfX2NhdGVnb3J5IHtcbiAgcGFkZGluZy1yaWdodDogLjcxcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IC44cmVtO1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDI1ZW0pIHtcbiAgICAuaGVhZGVyX19jYXRlZ29yeSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5zaXRlLWJyYW5kaW5nIHtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgei1pbmRleDogMTE7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lsbC1jaGFuZ2U6IGZvbnQtc2l6ZTsgfVxuICAuc2l0ZS1icmFuZGluZyBhIHtcbiAgICBsZXR0ZXItc3BhY2luZzogNXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgcGFkZGluZzogLjI1cmVtIDFyZW07XG4gICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICBmb250LXNpemU6IDh2dzsgfVxuICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDUwZW0pIHtcbiAgICAgIC5zaXRlLWJyYW5kaW5nIGEge1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAzcmVtOyB9IH1cbiAgLmhvbWUgLnNpdGUtYnJhbmRpbmcgYSxcbiAgLm92ZXJsYXktaXMtYWN0aXZlIC5zaXRlLWJyYW5kaW5nIGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IDh2dztcbiAgICBvcGFjaXR5OiAuNztcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDUwZW0pIHtcbiAgICAgIC5ob21lIC5zaXRlLWJyYW5kaW5nIGEsXG4gICAgICAub3ZlcmxheS1pcy1hY3RpdmUgLnNpdGUtYnJhbmRpbmcgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTF2dzsgfSB9XG5cbi5tZW51IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICB3aWR0aDogMTAwJTsgfVxuICAubWVudSAubWVudSB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cblxuLm1lbnVfX2l0ZW0ge1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBmbGV4OiAxIDEgMTAwJTtcbiAgZGlzcGxheTogZmxleDsgfVxuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lbnVfX2l0ZW0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgbWluLXdpZHRoOiAxNTVweDtcbiAgICAgIG1heC13aWR0aDogMjUwcHg7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZDsgfVxuICAgICAgLm1lbnVfX2l0ZW06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDY2JTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5tZW51X19pdGVtOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIGJvcmRlci1yaWdodDogMDsgfSB9XG4gIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDUwZW0pIHtcbiAgICAubWVudV9faXRlbTphZnRlciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTsgfSB9XG4gIC5tZW51X19pdGVtIC5tZW51X19saW5rIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMTAsIDEwLCAxMCwgMCk7XG4gICAgdHJhbnNpdGlvbjogZm9udC1zaXplIC4yczsgfVxuICAgIC5tZW51X19pdGVtIC5tZW51X19saW5rOmhvdmVyIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTAsIDEwLCAxMCwgMC43KTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCA2cHggLTRweCAjZmVmZWZlOyB9XG4gICAgLm1lbnVfX2l0ZW0gLm1lbnVfX2xpbms6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU0LCAyNTQsIDI1NCwgMC41KTtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLm1lbnVfX2l0ZW0gLm1lbnVfX2xpbmsuY3VycmVudF9wYWdlIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU0LCAyNTQsIDI1NCwgMC4xNSk7IH1cbiAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubWVudV9faXRlbSAubWVudV9fbGluayB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfSB9XG5cbi5kcm9wZG93bjpob3ZlciAuZHJvcGRvd25fX21lbnUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAuZHJvcGRvd246aG92ZXIgLmRyb3Bkb3duX19tZW51LnJpZ2h0IHtcbiAgICByaWdodDogMDsgfVxuXG4uZHJvcGRvd24gLm1lbnVfX2l0ZW0ge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5kcm9wZG93bl9fbWVudSB7XG4gIHBhZGRpbmctdG9wOiAuNXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5kcm9wZG93bl9fbWVudSAubWVudV9faXRlbSB7XG4gICAgcGFkZGluZy10b3A6IC41cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAuNXJlbTsgfVxuXG4ubWVudS10b2dnbGUuaXMtYWN0aXZlIHtcbiAgei1pbmRleDogMTE7XG4gIGNvbG9yOiAjZmVmZWZlOyB9XG5cbi5vdmVybGF5LW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDMzLCAzMywgMzMsIDAuOSk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxMDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGV5KC0xMDAlKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcywgb3BhY2l0eSAuM3M7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAub3ZlcmxheS1uYXYuaXMtYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRleSgwKTsgfVxuXG4uYm90dG9tLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDExO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzLCBvcGFjaXR5IC4zcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGV5KDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlOyB9XG4gIC5ib3R0b20tb3ZlcmxheS1pcy1hY3RpdmUgLmJvdHRvbS1vdmVybGF5IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogaW5pdGlhbDtcbiAgICBib3gtc2hhZG93OiAwcHggOHB4IDE1cHggM3B4IGJsYWNrOyB9XG5cbi5ib3R0b20tb3ZlcmxheV9fY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTQsIDI1NCwgMjU0LCAwLjkpOyB9XG5cbi5ib3R0b20tb3ZlcmxheV9fY2xvc2Uge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIHotaW5kZXg6IDE7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiBjb2xvciAuMnMsIHRvcCAwIC4ycztcbiAgYmFja2dyb3VuZDogIzIxMjEyMTtcbiAgcGFkZGluZzogMCAxNXB4OyB9XG4gIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDUwZW0pIHtcbiAgICAuYm90dG9tLW92ZXJsYXlfX2Nsb3NlIHtcbiAgICAgIGZvbnQtc2l6ZTogM3JlbTsgfSB9XG4gIC5ib3R0b20tb3ZlcmxheV9fY2xvc2U6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gICAgY29sb3I6ICMyMTIxMjE7XG4gICAgb3BhY2l0eTogMTsgfVxuICAuYm90dG9tLW92ZXJsYXktaXMtYWN0aXZlIC5ib3R0b20tb3ZlcmxheV9fY2xvc2Uge1xuICAgIHRvcDogLTFlbTsgfVxuXG4uYm90dG9tLW92ZXJsYXlfX2FzaWRlIHtcbiAgd2lkdGg6IDMwMHB4O1xuICBmbGV4OiAwIDAgMzAwcHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzIxMjEyMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5ib3R0b20tb3ZlcmxheV9fYXNpZGVfX2NvbnRhaW5lciB7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgcGFkZGluZy1yaWdodDogMTVweDsgfVxuXG4uYm90dG9tLW92ZXJsYXlfX21haW4ge1xuICBmbGV4OiAxOyB9XG5cbi50aHVtYi1nYWxsZXJ5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4udGh1bWItZ2FsbGVyeV9faW1hZ2Utd3JhcCB7XG4gIGZsZXg6IDAgMSAyNSU7XG4gIHBhZGRpbmc6IC41cmVtOyB9XG4gIC50aHVtYi1nYWxsZXJ5X19pbWFnZS13cmFwOmxhc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi5ib3R0b20tb3ZlcmxheV9fY2hvaWNlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbjogMTVweDsgfVxuXG4uYm90dG9tLW92ZXJsYXlfX3RpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nOiAxNXB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMDtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uYm90dG9tLW92ZXJsYXlfX2Nob2ljZSB7XG4gIG1hcmdpbjogMDtcbiAgZmxleDogNTAlOyB9XG4gIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDUwZW0pIHtcbiAgICAuYm90dG9tLW92ZXJsYXlfX2Nob2ljZSB7XG4gICAgICBmbGV4OiBhdXRvOyB9IH1cbiAgLmJvdHRvbS1vdmVybGF5X19jaG9pY2U6aG92ZXIgLmJvdHRvbS1vdmVybGF5X19jaG9pY2UtdGl0bGUge1xuICAgIGJhY2tncm91bmQ6ICMyMTIxMjE7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cblxuLmJvdHRvbS1vdmVybGF5X19jaG9pY2UtdGl0bGUge1xuICBwYWRkaW5nOiAxNXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxldHRlci1zcGFjaW5nOiA4cHg7IH1cbiAgLmJvdHRvbS1vdmVybGF5X19jaG9pY2UtdGl0bGUuaXNfYWN0aXZlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uZmlsbENvbnRhaW5lcl9fcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC5maWxsQ29udGFpbmVyX19wYXJlbnQgPiBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7IH1cblxuLmZpbGxDb250YWluZXJfX2NoaWxkIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7IH1cblxuLmZhZGUtaW4ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zczsgfVxuICAuaW1hZ2VzLWxvYWRlZCAuZmFkZS1pbiB7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4uaGVyb1NsaWRlciB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMS4zczsgfVxuICAuaGVyb1NsaWRlci5zbGljay1zbGlkZXIge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMS4zcyAuNXM7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4uaGVyb1NsaWRlcl9faXRlbSB7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgfVxuXG4uc2xpZGVyLWxhYmVsIHtcbiAgcGFkZGluZzogNXB4IDI1cHggNXB4IDE1cHg7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDVweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogODAwO1xuICBvcGFjaXR5OiAuODtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggLTNweDtcbiAgY29sb3I6ICM1ZjVjNWM7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7IH1cblxuLmdhbGxlcnlfX3dyYXBwZXIge1xuICBiYWNrZ3JvdW5kOiAjMzMzOyB9XG4gIC5nYWxsZXJ5X193cmFwcGVyIC5yb3cge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5nYWxsZXJ5X193cmFwcGVyIC5uYXYtYmcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogIzMzMztcbiAgICBmbGV4OiAwIDAgMzAwcHg7IH1cblxuLmdhbGxlcnkge1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDsgfVxuXG4uZ2FsbGVyeV9faW1hZ2VzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uZ2FsbGVyeV9faW1hZ2Uge1xuICB3aWR0aDogMzMlO1xuICBmbGV4OiAwIDEgMzMlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAuZ2FsbGVyeV9faW1hZ2U6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLmdhbGxlcnlfX2ltYWdlIGltZyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogMTBweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuXG4uZ2FsbGVyeS1jaG9pY2VzX190aXRsZSB7XG4gIGZsZXg6IDEgMCAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDgwMDsgfVxuXG4uZ2FsbGVyeS1jaG9pY2VzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuXG4uZ2FsbGVyeS1jaG9pY2Uge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogIzIxMjEyMTtcbiAgbWFyZ2luOiAxcmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uZ2FsbGVyeS1jaG9pY2VfX3RpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgcGFkZGluZzogLjVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cblxuLnBhZ2UtZ2FsbGVyeSB7XG4gIHBhZGRpbmctdG9wOiA3NXB4O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC41czsgfVxuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA1MGVtKSB7XG4gICAgLnBhZ2UtZ2FsbGVyeSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG5cbi5wYWdlLWdhbGxlcnlfX3RpdGxlIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogNTBlbSkge1xuICAgIC5wYWdlLWdhbGxlcnlfX3RpdGxlIHtcbiAgICAgIHJpZ2h0OiAxNXB4OyB9IH1cbiAgLnBhZ2UtZ2FsbGVyeV9fdGl0bGUgYnV0dG9uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDhweDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgY29sb3I6ICMyMTI1Mjk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MsIGNvbG9yIC4zczsgfVxuICAgIC5wYWdlLWdhbGxlcnlfX3RpdGxlIGJ1dHRvbjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMjEyMTIxO1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cblxuLm1hc29ucnktaXRlbSB7XG4gIHdpZHRoOiA1MCU7XG4gIHBhZGRpbmc6IDVweDsgfVxuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1hc29ucnktaXRlbSB7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgd2lkdGg6IDMzJTsgfSB9XG4gIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAubWFzb25yeS1pdGVtIHtcbiAgICAgIHdpZHRoOiAyNSU7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tYXNvbnJ5LWl0ZW0tbGFyZ2Uge1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgd2lkdGg6IDY2JTsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDUwZW0pIHtcbiAgLm1hc29ucnktaXRlbS1sYXJnZSB7XG4gICAgd2lkdGg6IDUwJTsgfSB9XG5cbi5wYWdlLWdhbGxlcnlfX2ltYWdlLXdyYXAge1xuICB3aWR0aDogMTAwLjUlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzLCBib3gtc2hhZG93IC4yczsgfVxuICAucGFnZS1nYWxsZXJ5X19pbWFnZS13cmFwIGltZyB7XG4gICAgd2lkdGg6IDEwMC41JTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjJzLCBib3JkZXIgIC4ycywgdHJhbnNmb3JtIC4ycywgb3BhY2l0eSAuMnM7IH1cbiAgLnBhZ2UtZ2FsbGVyeV9faW1hZ2Utd3JhcDpob3ZlciBpbWcge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMik7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2FkYjViZDtcbiAgICBib3gtc2hhZG93OiAwIDNweCA4cHggLTJweCByZ2JhKDEwLCAxMCwgMTAsIDAuNSk7IH1cbiAgLnBhZ2UtZ2FsbGVyeV9faW1hZ2Utd3JhcDphY3RpdmUgaW1nIHtcbiAgICBvcGFjaXR5OiAuODtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTkpOyB9XG5cbi50aHVtYi1nYWxsZXJ5X19pbWFnZS13cmFwIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAxMDAlOyB9XG5cbi50aHVtYi1nYWxsZXJ5X19pbWFnZS13cmFwIGltZyB7XG4gIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG4vKiFcbiAqIEhhbWJ1cmdlcnNcbiAqIEBkZXNjcmlwdGlvbiBUYXN0eSBDU1MtYW5pbWF0ZWQgaGFtYnVyZ2Vyc1xuICogQGF1dGhvciBKb25hdGhhbiBTdWggQGpvbnN1aFxuICogQHNpdGUgaHR0cHM6Ly9qb25zdWguY29tL2hhbWJ1cmdlcnNcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9qb25zdWgvaGFtYnVyZ2Vyc1xuICovXG5cbi8vIFNldHRpbmdzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuJGhhbWJ1cmdlci1wYWRkaW5nLXggICAgICAgICAgICAgICAgICAgICAgIDogMTVweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItcGFkZGluZy15ICAgICAgICAgICAgICAgICAgICAgICA6IDE1cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLXdpZHRoICAgICAgICAgICAgICAgICAgICAgOiA0MHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgICAgICAgICAgICAgICAgICAgIDogNHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICAgICAgICAgICAgICAgICAgIDogNnB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1jb2xvciAgICAgICAgICAgICAgICAgICAgIDogIzAwMCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1cyAgICAgICAgICAgICA6IDRweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItaG92ZXItb3BhY2l0eSAgICAgICAgICAgICAgICAgICA6IDAuNyAhZGVmYXVsdDtcbiRoYW1idXJnZXItaG92ZXItdHJhbnNpdGlvbi1kdXJhdGlvbiAgICAgICA6IDAuMTVzICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFkZWZhdWx0O1xuXG4vLyBUbyB1c2UgQ1NTIGZpbHRlcnMgYXMgdGhlIGhvdmVyIGVmZmVjdCBpbnN0ZWFkIG9mIG9wYWNpdHksXG4vLyBzZXQgJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyIGFzIHRydWUgYW5kXG4vLyBjaGFuZ2UgdGhlIHZhbHVlIG9mICRoYW1idXJnZXItaG92ZXItZmlsdGVyIGFjY29yZGluZ2x5LlxuJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyOiBmYWxzZSAhZGVmYXVsdDtcbiRoYW1idXJnZXItaG92ZXItZmlsdGVyICAgIDogb3BhY2l0eSg1MCUpICFkZWZhdWx0O1xuXG4vLyBUeXBlcyAoUmVtb3ZlIG9yIGNvbW1lbnQgb3V0IHdoYXQgeW91IGRvbuKAmXQgbmVlZClcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kaGFtYnVyZ2VyLXR5cGVzOiAoXG4gIDNkeCxcbiAgM2R4LXIsXG4gIDNkeSxcbiAgM2R5LXIsXG4gIDNkeHksXG4gIDNkeHktcixcbiAgYXJyb3csXG4gIGFycm93LXIsXG4gIGFycm93YWx0LFxuICBhcnJvd2FsdC1yLFxuICBhcnJvd3R1cm4sXG4gIGFycm93dHVybi1yLFxuICBib3JpbmcsXG4gIGNvbGxhcHNlLFxuICBjb2xsYXBzZS1yLFxuICBlbGFzdGljLFxuICBlbGFzdGljLXIsXG4gIGVtcGhhdGljLFxuICBlbXBoYXRpYy1yLFxuICBtaW51cyxcbiAgc2xpZGVyLFxuICBzbGlkZXItcixcbiAgc3BpbixcbiAgc3Bpbi1yLFxuICBzcHJpbmcsXG4gIHNwcmluZy1yLFxuICBzdGFuZCxcbiAgc3RhbmQtcixcbiAgc3F1ZWV6ZSxcbiAgdm9ydGV4LFxuICB2b3J0ZXgtclxuKSAhZGVmYXVsdDtcblxuLy8gQmFzZSBIYW1idXJnZXIgKFdlIG5lZWQgdGhpcylcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AaW1wb3J0IFwiYmFzZVwiO1xuXG4vLyBIYW1idXJnZXIgdHlwZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AaW1wb3J0IFwidHlwZXMvM2R4XCI7XG5AaW1wb3J0IFwidHlwZXMvM2R4LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHlcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHktclwiO1xuQGltcG9ydCBcInR5cGVzLzNkeHlcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHh5LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvd1wiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvd2FsdFwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93YWx0LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvd3R1cm5cIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvd3R1cm4tclwiO1xuQGltcG9ydCBcInR5cGVzL2JvcmluZ1wiO1xuQGltcG9ydCBcInR5cGVzL2NvbGxhcHNlXCI7XG5AaW1wb3J0IFwidHlwZXMvY29sbGFwc2UtclwiO1xuQGltcG9ydCBcInR5cGVzL2VsYXN0aWNcIjtcbkBpbXBvcnQgXCJ0eXBlcy9lbGFzdGljLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9lbXBoYXRpY1wiO1xuQGltcG9ydCBcInR5cGVzL2VtcGhhdGljLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9taW51c1wiO1xuQGltcG9ydCBcInR5cGVzL3NsaWRlclwiO1xuQGltcG9ydCBcInR5cGVzL3NsaWRlci1yXCI7XG5AaW1wb3J0IFwidHlwZXMvc3BpblwiO1xuQGltcG9ydCBcInR5cGVzL3NwaW4tclwiO1xuQGltcG9ydCBcInR5cGVzL3NwcmluZ1wiO1xuQGltcG9ydCBcInR5cGVzL3NwcmluZy1yXCI7XG5AaW1wb3J0IFwidHlwZXMvc3RhbmRcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zdGFuZC1yXCI7XG5AaW1wb3J0IFwidHlwZXMvc3F1ZWV6ZVwiO1xuQGltcG9ydCBcInR5cGVzL3ZvcnRleFwiO1xuQGltcG9ydCBcInR5cGVzL3ZvcnRleC1yXCI7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBDb29raW5nIHVwIGFkZGl0aW9uYWwgdHlwZXM6XG4vL1xuLy8gVGhlIFNhc3MgZm9yIGVhY2ggaGFtYnVyZ2VyIHR5cGUgc2hvdWxkIGJlIG5lc3RlZFxuLy8gaW5zaWRlIGFuIEBpZiBkaXJlY3RpdmUgdG8gY2hlY2sgd2hldGhlciBvciBub3Rcbi8vIGl0IGV4aXN0cyBpbiAkaGFtYnVyZ2VyLXR5cGVzIHNvIG9ubHkgdGhlIENTUyBmb3Jcbi8vIGluY2x1ZGVkIHR5cGVzIGFyZSBnZW5lcmF0ZWQuXG4vL1xuLy8gZS5nLiBoYW1idXJnZXJzL3R5cGVzL19uZXctdHlwZS5zY3NzXG4vL1xuLy8gQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIG5ldy10eXBlKSB7XG4vLyAgIC5oYW1idXJnZXItLW5ldy10eXBlIHtcbi8vICAgICAuLi5cbi8vICAgfVxuLy8gfVxuIiwiLy8gSGFtYnVyZ2VyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLmhhbWJ1cmdlciB7XG4gIHBhZGRpbmc6ICRoYW1idXJnZXItcGFkZGluZy15ICRoYW1idXJnZXItcGFkZGluZy14O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCBmaWx0ZXI7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRoYW1idXJnZXItaG92ZXItdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICRoYW1idXJnZXItaG92ZXItdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb247XG5cbiAgLy8gTm9ybWFsaXplICg8YnV0dG9uPilcbiAgZm9udDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICY6aG92ZXIge1xuICAgIEBpZiAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgPT0gdHJ1ZSB7XG4gICAgICBmaWx0ZXI6ICRoYW1idXJnZXItaG92ZXItZmlsdGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBvcGFjaXR5OiAkaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHk7XG4gICAgfVxuICB9XG59XG5cbi5oYW1idXJnZXItYm94IHtcbiAgd2lkdGg6ICRoYW1idXJnZXItbGF5ZXItd2lkdGg7XG4gIGhlaWdodDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAzICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oYW1idXJnZXItaW5uZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0IC8gLTI7XG5cbiAgJixcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgd2lkdGg6ICRoYW1idXJnZXItbGF5ZXItd2lkdGg7XG4gICAgaGVpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGFtYnVyZ2VyLWxheWVyLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6ICRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1cztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICB9XG5cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTE7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgYm90dG9tOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTE7XG4gIH1cbn1cbiIsIiAgICAkZ2xvYmFsLXBhZGRpbmcgOiAxNXB4O1xuICAgICRiYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuICAgICRicmVha3BvaW50czogKFxuICAgIHNtOiA0MDBweCxcbiAgICBtZDogNjQwcHgsXG4gICAgbGc6IDgwMHB4LFxuICAgIHhsOiAxMjAwcHhcbiAgICApO1xuXG4gICAgJGJsYWNrOiAjMGEwYTBhO1xuICAgICR3aGl0ZTogI2ZlZmVmZTtcblxuICAgICRncmF5LTEwMDogI2Y4ZjlmYSAhZGVmYXVsdDtcbiAgICAkZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4gICAgJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuICAgICRncmF5LTQwMDogI2NlZDRkYSAhZGVmYXVsdDtcbiAgICAkZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4gICAgJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuICAgICRncmF5LTcwMDogIzQ5NTA1NyAhZGVmYXVsdDtcbiAgICAkZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4gICAgJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuICAgICRncmF5czogKCkgIWRlZmF1bHQ7XG5cbiAgICAgJGJvZHktYmc6ICRncmF5LTgwMDtcbiAgICAkZ3JheXM6IG1hcC1tZXJnZShcbiAgICAoXG4gICAgXCIxMDBcIjogJGdyYXktMTAwLFxuICAgIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gICAgXCI0MDBcIjogJGdyYXktNDAwLFxuICAgIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gICAgXCI3MDBcIjogJGdyYXktNzAwLFxuICAgIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgICBcIjkwMFwiOiAkZ3JheS05MDBcbiAgICApLFxuICAgICRncmF5c1xuICAgICk7XG5cbiAgICAkY29sb3Itc2hhZGUtYW1vdW50OiAxNSU7XG4gICAgJGNvbG9yLXRyYW5zLWFtb3VudDogMC41O1xuXG4gICAgLy8gU2V0IGEgc3BlY2lmaWMganVtcCBwb2ludCBmb3IgcmVxdWVzdGluZyBjb2xvciBqdW1wc1xuICAgICR0aGVtZS1jb2xvci1pbnRlcnZhbDogICAgICA4JSAhZGVmYXVsdDtcblxuICAgIC8vIFRoZSB5aXEgbGlnaHRuZXNzIHZhbHVlIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIHRoZSBsaWdodG5lc3Mgb2YgY29sb3IgY2hhbmdlcyBmcm9tIFwiZGFya1wiIHRvIFwibGlnaHRcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgYXJlIGJldHdlZW4gMCBhbmQgMjU1LlxuICAgICR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQ6ICAxNTAgIWRlZmF1bHQ7XG5cbiAgICAvLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIFlJUSBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiAgICAkeWlxLXRleHQtZGFyazogICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuICAgICR5aXEtdGV4dC1saWdodDogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiAgICAkYnJhbmQtcHJpbWFyeTogIzIxMjEyMTtcbiAgICAkYnJhbmQtc2Vjb25kYXJ5OiBncmVlbjtcbiAgICR5aXEtdGV4dC1kYXJrOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiAgICAkeWlxLXRleHQtbGlnaHQ6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuICAgIC8vIGNvbG9yIHZhcmlhYmxlIG1hcFxuICAgICRjb2xvcnM6IChcbiAgICBwcmltYXJ5OiAoXG4gICAgYmFzZTogJGJyYW5kLXByaW1hcnksXG4gICAgc3VidGxlOiB0aW50KCRicmFuZC1wcmltYXJ5LCA5MCUpLFxuICAgIGxpZ2h0OiBsaWdodGVuKCRicmFuZC1wcmltYXJ5LCAkY29sb3Itc2hhZGUtYW1vdW50KSxcbiAgICBkYXJrOiBkYXJrZW4oJGJyYW5kLXByaW1hcnksICRjb2xvci1zaGFkZS1hbW91bnQpLFxuICAgIHRyYW5zOiB0cmFuc3BhcmVudGl6ZSgkYnJhbmQtcHJpbWFyeSwgJGNvbG9yLXRyYW5zLWFtb3VudClcbiAgICApLFxuICAgIHNlY29uZGFyeTogKFxuICAgIGJhc2U6ICRicmFuZC1zZWNvbmRhcnksXG4gICAgc3VidGxlOiB0aW50KCRicmFuZC1zZWNvbmRhcnksIDkwJSksXG4gICAgbGlnaHQ6IGxpZ2h0ZW4oJGJyYW5kLXNlY29uZGFyeSwgJGNvbG9yLXNoYWRlLWFtb3VudCksXG4gICAgZGFyazogZGFya2VuKCRicmFuZC1zZWNvbmRhcnksICRjb2xvci1zaGFkZS1hbW91bnQpLFxuICAgIHRyYW5zOiB0cmFuc3BhcmVudGl6ZSgkYnJhbmQtc2Vjb25kYXJ5LCAkY29sb3ItdHJhbnMtYW1vdW50KVxuICAgIClcbiAgICApO1xuJG5hdi1iZzogdHJhbnNwYXJlbnRpemUoJGJyYW5kLXByaW1hcnksIC4xKTtcblxuICAgICRoYW1idXJnZXItbGF5ZXItY29sb3IgOiBjdXJyZW50Q29sb3I7XG4gICAgJGhhbWJ1cmdlci10eXBlczogKFxuICAzZHh5LFxuICBzbGlkZXIsXG4gIHNwaW5cbiAgKTtcbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCAzZHh5KSB7XG4gIC8qXG4gICAqIDNEWFlcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeHkge1xuICAgIC5oYW1idXJnZXItYm94IHtcbiAgICAgIHBlcnNwZWN0aXZlOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpIHJvdGF0ZVkoMTgwZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc2xpZGVyKSB7XG4gIC8qXG4gICAqIFNsaWRlclxuICAgKi9cbiAgLmhhbWJ1cmdlci0tc2xpZGVyIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgLyAyO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nO1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICAkeS1vZmZzZXQ6ICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0O1xuXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0LCAwKSByb3RhdGUoNDVkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoIC8gLTcsICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIC0xLCAwKTtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0ICogLTIsIDApIHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3Bpbikge1xuICAvKlxuICAgKiBTcGluXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zcGluIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjJzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjI1cyBlYXNlLWluLFxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgZWFzZS1pbjtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjI1cyBlYXNlLWluLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4yMnMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDIyNWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMTJzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgMC4xMnMgZWFzZS1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMjJzIDAuMTJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKiEgc2FuaXRpemUuY3NzIHY2LjAuMCB8IENDMCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9jc3N0b29scy9zYW5pdGl6ZS5jc3MgKi9cblxuLyogRG9jdW1lbnRcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gUmVtb3ZlIHJlcGVhdGluZyBiYWNrZ3JvdW5kcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIEFkZCBib3JkZXIgYm94IHNpemluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG4qLFxuOjpiZWZvcmUsXG46OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgLyogMSAqL1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQWRkIHRleHQgZGVjb3JhdGlvbiBpbmhlcml0YW5jZSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIEFkZCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW5oZXJpdGFuY2UgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuOjpiZWZvcmUsXG46OmFmdGVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0OyAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQWRkIHRoZSBkZWZhdWx0IGN1cnNvciBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAqIDQuIEJyZWFrcyB3b3JkcyB0byBwcmV2ZW50IHByZXZlbnQgb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIGN1cnNvcjogZGVmYXVsdDsgLyogMiAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cbiAgd29yZC1icmVhazogYnJlYWstd29yZDsgLyogNCAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBsaXN0IHN0eWxlIG9uIG5hdmlnYXRpb24gbGlzdHMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxubmF2IG9sLFxubmF2IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKlxuICogUmVtb3ZlIHRoZSB0ZXh0IHNoYWRvdyBvbiB0ZXh0IHNlbGVjdGlvbnMgaW4gRmlyZWZveCA2MS0gKG9waW5pb25hdGVkKS5cbiAqIDEuIFJlc3RvcmUgdGhlIGNvbG9yaW5nIHVuZG9uZSBieSBkZWZpbmluZyB0aGUgdGV4dCBzaGFkb3dcbiAqICAgIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbjo6LW1vei1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjNkNGZjOyAvKiAxICovXG4gIGNvbG9yOiAjMDAwOyAvKiAxICovXG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiM2Q0ZmM7IC8qIDEgKi9cbiAgY29sb3I6ICMwMDA7IC8qIDEgKi9cbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBDaGFuZ2UgdGhlIGFsaWdubWVudCBvbiBtZWRpYSBlbGVtZW50cyBpbiBhbGwgYnJvd2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxuaWZyYW1lLFxuaW1nLFxuc3ZnLFxudmlkZW8ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmF1ZGlvLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKipcbiAqIENoYW5nZSB0aGUgZmlsbCBjb2xvciB0byBtYXRjaCB0aGUgdGV4dCBjb2xvciBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5zdmcge1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG59XG5cbi8qKlxuICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKi9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBUYWJ1bGFyIGRhdGFcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQ29sbGFwc2UgYm9yZGVyIHNwYWNpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG4vKiBGb3Jtc1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIEluaGVyaXQgc3R5bGluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8qKlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAyLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqL1xuXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICogMi4gQ2hhbmdlIHRoZSByZXNpemUgZGlyZWN0aW9uIG9uIHRleHRhcmVhcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvKiAxICovXG4gIHJlc2l6ZTogdmVydGljYWw7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cbjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3Qgc3R5bGVzIGluIEVkZ2UsIElFLCBhbmQgU2FmYXJpLlxuICovXG5cbmRpYWxvZyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXI6IHNvbGlkO1xuICBjb2xvcjogYmxhY2s7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IC1tb3otZml0LWNvbnRlbnQ7XG4gIGhlaWdodDogLXdlYmtpdC1maXQtY29udGVudDtcbiAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgbGVmdDogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICBwYWRkaW5nOiAxZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAtbW96LWZpdC1jb250ZW50O1xuICB3aWR0aDogLXdlYmtpdC1maXQtY29udGVudDtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xufVxuXG5kaWFsb2c6bm90KFtvcGVuXSkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIFNjcmlwdGluZ1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuXG5jYW52YXMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBVc2VyIGludGVyYWN0aW9uXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gUmVtb3ZlIHRoZSB0YXBwaW5nIGRlbGF5IG9uIGNsaWNrYWJsZSBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIFJlbW92ZSB0aGUgdGFwcGluZyBkZWxheSBpbiBJRSAxMC5cbiAqL1xuXG5hLFxuYXJlYSxcbmJ1dHRvbixcbmlucHV0LFxubGFiZWwsXG5zZWxlY3QsXG5zdW1tYXJ5LFxudGV4dGFyZWEsXG5bdGFiaW5kZXhdIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uOyAvKiAxICovXG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogQWNjZXNzaWJpbGl0eVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBDaGFuZ2UgdGhlIGN1cnNvciBvbiBidXN5IGVsZW1lbnRzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cblthcmlhLWJ1c3k9XCJ0cnVlXCJdIHtcbiAgY3Vyc29yOiBwcm9ncmVzcztcbn1cblxuLypcbiAqIENoYW5nZSB0aGUgY3Vyc29yIG9uIGNvbnRyb2wgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuW2FyaWEtY29udHJvbHNdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vKlxuICogQ2hhbmdlIHRoZSBjdXJzb3Igb24gZGlzYWJsZWQsIG5vdC1lZGl0YWJsZSwgb3Igb3RoZXJ3aXNlXG4gKiBpbm9wZXJhYmxlIGVsZW1lbnRzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cblthcmlhLWRpc2FibGVkXSxcbltkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRpc2FibGVkO1xufVxuXG4vKlxuICogQ2hhbmdlIHRoZSBkaXNwbGF5IG9uIHZpc3VhbGx5IGhpZGRlbiBhY2Nlc3NpYmxlIGVsZW1lbnRzXG4gKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5bYXJpYS1oaWRkZW49XCJmYWxzZVwiXVtoaWRkZW5dOm5vdCg6Zm9jdXMpIHtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgZGlzcGxheTogaW5oZXJpdDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuIiwiLy9cbi8vIEZvcm1zXG4vL1xubGFiZWwge1xuICAvLyBBbGxvdyBsYWJlbHMgdG8gdXNlIGBtYXJnaW5gIGZvciBzcGFjaW5nLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcbmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIFdvcmsgYXJvdW5kIGEgRmlyZWZveC9JRSBidWcgd2hlcmUgdGhlIHRyYW5zcGFyZW50IGBidXR0b25gIGJhY2tncm91bmRcbi8vIHJlc3VsdHMgaW4gYSBsb3NzIG9mIHRoZSBkZWZhdWx0IGBidXR0b25gIGZvY3VzIHN0eWxlcy5cbi8vXG4vLyBDcmVkaXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9zdWl0Y3NzL2Jhc2UvXG5idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiAxcHggZG90dGVkO1xuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG59XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDsgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlXG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3hcbn1cblxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4vLyAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gUmVtb3ZlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBmcm9tIEZpcmVmb3gsIGJ1dCBkb24ndCByZXN0b3JlIHRoZSBvdXRsaW5lIGxpa2UgTm9ybWFsaXplLlxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLVxuICBwYWRkaW5nOiAwOyAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtXG59XG5cblxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSB7XG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCBhcHBlYXJhbmNlIG9mIHRlbXBvcmFsIGlucHV0cyB0byBhdm9pZCBhIE1vYmlsZSBTYWZhcmlcbiAgLy8gYnVnIHdoZXJlIHNldHRpbmcgYSBjdXN0b20gbGluZS1oZWlnaHQgcHJldmVudHMgdGV4dCBmcm9tIGJlaW5nIHZlcnRpY2FsbHlcbiAgLy8gY2VudGVyZWQgd2l0aGluIHRoZSBpbnB1dC5cbiAgLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk4NDhcbiAgLy8gYW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTEyNjZcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBsaXN0Ym94O1xufVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAvLyBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmZpZWxkc2V0IHtcbiAgLy8gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcbiAgLy8gdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4gIC8vIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcbiAgLy8gYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuICBtaW4td2lkdGg6IDA7XG4gIC8vIFJlc2V0IHRoZSBkZWZhdWx0IG91dGxpbmUgYmVoYXZpb3Igb2YgZmllbGRzZXRzIHNvIHRoZXkgZG9uJ3QgYWZmZWN0IHBhZ2UgbGF5b3V0LlxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xuXG4vLyBTbGljayBpY29uIGVudGl0eSBjb2RlcyBvdXRwdXRzIHRoZSBmb2xsb3dpbmdcbi8vIFwiXFwyMTkwXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpBcIlxuLy8gXCJcXDIxOTJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGklwiXG4vLyBcIlxcMjAyMlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oCiXCJcblxuJHNsaWNrLWZvbnQtcGF0aDogXCIuL2ZvbnRzL1wiICFkZWZhdWx0O1xuJHNsaWNrLWZvbnQtZmFtaWx5OiBcInNsaWNrXCIgIWRlZmF1bHQ7XG4kc2xpY2stbG9hZGVyLXBhdGg6IFwiLi9cIiAhZGVmYXVsdDtcbiRzbGljay1hcnJvdy1jb2xvcjogd2hpdGUgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNvbG9yOiBibGFjayAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3ItYWN0aXZlOiAkc2xpY2stZG90LWNvbG9yICFkZWZhdWx0O1xuJHNsaWNrLXByZXYtY2hhcmFjdGVyOiBcIlxcMjE5MFwiICFkZWZhdWx0O1xuJHNsaWNrLW5leHQtY2hhcmFjdGVyOiBcIlxcMjE5MlwiICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jaGFyYWN0ZXI6IFwiXFwyMDIyXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LXNpemU6IDZweCAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LWRlZmF1bHQ6IDAuNzUgIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjogMSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU6IDAuMjUgIWRlZmF1bHQ7XG5cbkBmdW5jdGlvbiBzbGljay1pbWFnZS11cmwoJHVybCkge1xuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoaW1hZ2UtdXJsKSB7XG4gICAgICAgIEByZXR1cm4gaW1hZ2UtdXJsKCR1cmwpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gdXJsKCRzbGljay1sb2FkZXItcGF0aCArICR1cmwpO1xuICAgIH1cbn1cblxuQGZ1bmN0aW9uIHNsaWNrLWZvbnQtdXJsKCR1cmwpIHtcbiAgICBAaWYgZnVuY3Rpb24tZXhpc3RzKGZvbnQtdXJsKSB7XG4gICAgICAgIEByZXR1cm4gZm9udC11cmwoJHVybCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWZvbnQtcGF0aCArICR1cmwpO1xuICAgIH1cbn1cblxuLyogU2xpZGVyICovXG5cbi5zbGljay1saXN0IHtcbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZiBzbGljay1pbWFnZS11cmwoXCJhamF4LWxvYWRlci5naWZcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgfVxufVxuXG4vKiBJY29ucyAqL1xuQGlmICRzbGljay1mb250LWZhbWlseSA9PSBcInNsaWNrXCIge1xuICAgIEBmb250LWZhY2Uge1xuICAgICAgICBmb250LWZhbWlseTogXCJzbGlja1wiO1xuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90XCIpO1xuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2sudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLnN2ZyNzbGlja1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICB9XG59XG5cbi8qIEFycm93cyAqL1xuXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgZm9udC1zaXplOiAwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0b3A6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgY29sb3I6ICRzbGljay1hcnJvdy1jb2xvcjtcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxufVxuXG4uc2xpY2stcHJldiB7XG4gICAgbGVmdDogLTI1cHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IC0yNXB4O1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAtMjVweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBsZWZ0OiAtMjVweDtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBEb3RzICovXG5cbi5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uc2xpY2stZG90cyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTI1cHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDBweDtcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1kb3QtY2hhcmFjdGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNsaWNrLWRvdC1zaXplO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvcjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU7XG4gICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyXG57XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgICAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5zbGljay1saXN0XG57XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuLnNsaWNrLWxpc3Q6Zm9jdXNcbntcbiAgICBvdXRsaW5lOiBub25lO1xufVxuLnNsaWNrLWxpc3QuZHJhZ2dpbmdcbntcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiBoYW5kO1xufVxuXG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3RcbntcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2tcbntcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4uc2xpY2stdHJhY2s6YmVmb3JlLFxuLnNsaWNrLXRyYWNrOmFmdGVyXG57XG4gICAgZGlzcGxheTogdGFibGU7XG5cbiAgICBjb250ZW50OiAnJztcbn1cbi5zbGljay10cmFjazphZnRlclxue1xuICAgIGNsZWFyOiBib3RoO1xufVxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXRyYWNrXG57XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpY2stc2xpZGVcbntcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbn1cbltkaXI9J3J0bCddIC5zbGljay1zbGlkZVxue1xuICAgIGZsb2F0OiByaWdodDtcbn1cbi5zbGljay1zbGlkZSBpbWdcbntcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbi5zbGljay1zbGlkZS5zbGljay1sb2FkaW5nIGltZ1xue1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4uc2xpY2stc2xpZGUuZHJhZ2dpbmcgaW1nXG57XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXNsaWRlXG57XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4uc2xpY2stbG9hZGluZyAuc2xpY2stc2xpZGVcbntcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uc2xpY2stdmVydGljYWwgLnNsaWNrLXNsaWRlXG57XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIvKiEgRmxpY2tpdHkgdjIuMS4yXG5odHRwczovL2ZsaWNraXR5Lm1ldGFmaXp6eS5jb1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uZmxpY2tpdHktZW5hYmxlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIFxuICAuZmxpY2tpdHktZW5hYmxlZDpmb2N1cyB7IG91dGxpbmU6IG5vbmU7IH1cbiAgXG4gIC5mbGlja2l0eS12aWV3cG9ydCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG4gIFxuICAuZmxpY2tpdHktc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG4gIFxuICAvKiBkcmFnZ2FibGUgKi9cbiAgXG4gIC5mbGlja2l0eS1lbmFibGVkLmlzLWRyYWdnYWJsZSB7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cbiAgXG4gIC5mbGlja2l0eS1lbmFibGVkLmlzLWRyYWdnYWJsZSAuZmxpY2tpdHktdmlld3BvcnQge1xuICAgIGN1cnNvcjogbW92ZTtcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgICBjdXJzb3I6IGdyYWI7XG4gIH1cbiAgXG4gIC5mbGlja2l0eS1lbmFibGVkLmlzLWRyYWdnYWJsZSAuZmxpY2tpdHktdmlld3BvcnQuaXMtcG9pbnRlci1kb3duIHtcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYmJpbmc7XG4gICAgY3Vyc29yOiBncmFiYmluZztcbiAgfVxuICBcbiAgLyogLS0tLSBmbGlja2l0eS1idXR0b24gLS0tLSAqL1xuICBcbiAgLmZsaWNraXR5LWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6IGhzbGEoMCwgMCUsIDEwMCUsIDAuNzUpO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjb2xvcjogIzMzMztcbiAgfVxuICBcbiAgLmZsaWNraXR5LWJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIFxuICAuZmxpY2tpdHktYnV0dG9uOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDVweCAjMTlGO1xuICB9XG4gIFxuICAuZmxpY2tpdHktYnV0dG9uOmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMC42O1xuICB9XG4gIFxuICAuZmxpY2tpdHktYnV0dG9uOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAwLjM7XG4gICAgY3Vyc29yOiBhdXRvO1xuICAgIC8qIHByZXZlbnQgZGlzYWJsZWQgYnV0dG9uIGZyb20gY2FwdHVyaW5nIHBvaW50ZXIgdXAgZXZlbnQuICM3MTYgKi9cbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuICBcbiAgLmZsaWNraXR5LWJ1dHRvbi1pY29uIHtcbiAgICBmaWxsOiAjMzMzO1xuICB9XG4gIFxuICAvKiAtLS0tIHByZXZpb3VzL25leHQgYnV0dG9ucyAtLS0tICovXG4gIFxuICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbiB7XG4gICAgdG9wOiA1MCU7XG4gICAgd2lkdGg6IDQ0cHg7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAvKiB2ZXJ0aWNhbGx5IGNlbnRlciAqL1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuICBcbiAgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ucHJldmlvdXMgeyBsZWZ0OiAxMHB4OyB9XG4gIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLm5leHQgeyByaWdodDogMTBweDsgfVxuICAvKiByaWdodCB0byBsZWZ0ICovXG4gIC5mbGlja2l0eS1ydGwgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ucHJldmlvdXMge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwcHg7XG4gIH1cbiAgLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5uZXh0IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMHB4O1xuICB9XG4gIFxuICAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbiAuZmxpY2tpdHktYnV0dG9uLWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAyMCU7XG4gICAgdG9wOiAyMCU7XG4gICAgd2lkdGg6IDYwJTtcbiAgICBoZWlnaHQ6IDYwJTtcbiAgfVxuICBcbiAgLyogLS0tLSBwYWdlIGRvdHMgLS0tLSAqL1xuICBcbiAgLmZsaWNraXR5LXBhZ2UtZG90cyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvdHRvbTogLTI1cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbiAgXG4gIC5mbGlja2l0eS1ydGwgLmZsaWNraXR5LXBhZ2UtZG90cyB7IGRpcmVjdGlvbjogcnRsOyB9XG4gIFxuICAuZmxpY2tpdHktcGFnZS1kb3RzIC5kb3Qge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgbWFyZ2luOiAwIDhweDtcbiAgICBiYWNrZ3JvdW5kOiAjMzMzO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBvcGFjaXR5OiAwLjI1O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICBcbiAgLmZsaWNraXR5LXBhZ2UtZG90cyAuZG90LmlzLXNlbGVjdGVkIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gICIsIi5jb250YWluZXItZmx1aWQge1xuXHR3aWR0aDogMTAwJTtcblx0cGFkZGluZy1sZWZ0OiAkZ2xvYmFsLXBhZGRpbmc7XG5cdHBhZGRpbmctcmlnaHQ6ICRnbG9iYWwtcGFkZGluZztcbn1cblxuLmNvbnRhaW5lciB7XG5cdG1heC13aWR0aDogOTYwcHg7XG5cdG1hcmdpbjphdXRvO1xufVxuXG4ucm93IHtcblx0bWFyZ2luLWxlZnQ6IC0kZ2xvYmFsLXBhZGRpbmc7XG5cdG1hcmdpbi1yaWdodDogLSRnbG9iYWwtcGFkZGluZztcblx0ZGlzcGxheTpmbGV4O1xufVxuXG4uY29sdW1uLFxuLmNvbHVtbnMge1xuXHRmbGV4OiAxIDEgMDtcblx0cGFkZGluZy1sZWZ0OiAkZ2xvYmFsLXBhZGRpbmc7XG5cdHBhZGRpbmctcmlnaHQ6ICRnbG9iYWwtcGFkZGluZztcblx0Ji5vbmUge1xuXHRcdHdpZHRoOiAxLzUgKiAxMDAlO1xuXHRcdGZsZXg6IDAgMCAxLzUgKiAxMDAlO1xuXHR9XG5cdCYudHdvIHtcblx0XHR3aWR0aDogMi81ICogMTAwJTtcblx0XHRmbGV4OiAwIDAgMi81ICogMTAwJTtcblx0fVxuXHQmLnRocmVlIHtcblx0XHR3aWR0aDogMy81ICogMTAwJTtcblx0XHRmbGV4OiAwIDAgMy81ICogMTAwJTtcblx0fVxuXHQmLmZvdXIge1xuXHRcdHdpZHRoOiA0LzUgKiAxMDAlO1xuXHRcdGZsZXg6IDAgMCA0LzUgKiAxMDAlO1xuXHR9XG5cdCYuZml2ZSB7XG5cdFx0d2lkdGg6IDUvNSAqIDEwMCU7XG5cdFx0ZmxleDogMCAwIDUvNSAqIDEwMCU7XG5cdH1cbn1cbiIsIlxubWwtYSxcbm14LWEsXG5tLWEge1xuXHRtYXJnaW4tbGVmdDogYXV0bztcbn1cbm1yLWEsXG5teC1hLFxubS1hIHtcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxubXQtYSxcbm15LWEsXG5tLWEge1xuXHRtYXJnaW4tdG9wOiBhdXRvO1xufVxubWItYSxcbm15LWEsXG5tLWEge1xuXHRtYXJnaW4tYm90dG9tOiBhdXRvO1xufSIsImJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6bm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uYnRuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgXG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAyNTBtcyBlYXNlLWluLW91dCwgXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtIDE1MG1zIGVhc2U7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLmJ0bi1wcmltYXJ5IHtcbiAgICAgYmFja2dyb3VuZDogZ2V0Q29sb3Ioc2Vjb25kYXJ5KTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLmJ0bjpob3Zlcixcbi5idG46Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6ICMwMDUzYmE7XG59XG5cbi5idG46Zm9jdXMge1xuICAgIG91dGxpbmU6IDFweCBzb2xpZCAjZmZmO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtNHB4O1xufVxuXG4uYnRuOmFjdGl2ZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk5KTtcbn0iLCIvL0BpbXBvcnQgXCJfcmVzZXQuc2Nzc1wiO1xuLy9AaW1wb3J0IFwiX21peGlucy5zY3NzXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICAgIyBTaW1wbGUgVHlwb2dyYXBoeSBTZXR0aW5nc1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLy8gRm9udCBGYW1pbHlcbiRmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LFxuICAgIOKAnFNlZ29lIFVJ4oCdLCDigJxSb2JvdG/igJ0sIOKAnE94eWdlbuKAnSwg4oCcVWJ1bnR14oCdLCDigJxDYW50YXJlbGzigJ0sXG4gICAg4oCcRmlyYSBTYW5z4oCdLCDigJxEcm9pZCBTYW5z4oCdLCDigJxIZWx2ZXRpY2EgTmV1ZeKAnSxcbiAgICBzYW5zLXNlcmlmOztcblxuLy8gQmFzZSBGb250IGZvciBIVE1MXG4kYmFzZS1mb250LXNpemU6IDE2cHg7XG5cbi8vIFBhcmFncmFwaCBTdHlsZXNcbiRwYXJhZ3JhcGgtY29sb3IgICAgICA6ICM1MDUwNTA7XG4kcGFyYWdyYXBoLXNpemUgICAgICAgOiByZW0oMTdweCk7XG4kcGFyYWdyYXBoLWxpbmUtaGVpZ2h0OiAxLjVlbTtcbiRwYXJhZ3JhcGgtbWFyZ2luICAgICA6IDIwcHg7XG5cbi8vIEhlYWRlciBTdHlsZXNcbiRoZWFkZXItY29sb3IgICAgICA6ICRicmFuZC1wcmltYXJ5O1xuJGhlYWRlci1zaXplICAgICAgIDogcmVtKDQwcHgpO1xuJGhlYWRlci1saW5lLWhlaWdodDogMS4yNWVtO1xuJGhlYWRlci1tYXJnaW4gICAgIDogJHBhcmFncmFwaC1tYXJnaW4gKiAxLjI7XG5cbi8vIEJsb2NrcXVvdGUgU3R5bGVzXG4kYmxvY2txdW90ZS1jb2xvciAgICAgIDogIzUwNTA1MDtcbiRibG9ja3F1b3RlLXNpemUgICAgICAgOiByZW0oMjNweCk7XG4kYmxvY2txdW90ZS1saW5lLWhlaWdodDogMS41ZW07XG4kYmxvY2txdW90ZS1tYXJnaW4gICAgIDogJHBhcmFncmFwaC1tYXJnaW4gKiAxLjU7XG5cbi8vIExpbmtzXG4kbGluay1jb2xvcjogZ2V0Q29sb3IocHJpbWFyeSk7XG5cbi8vIGhyXG4kaHItbWFyZ2luOiAzMHB4O1xuXG4vLyBUeXBlIE1pc2NcbiRmb250LXdlaWdodC1ib2xkOiA4MDA7XG4kYm9yZGVyLWNvbG9yOiAjREFEQURBO1xuXG5cblxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICAgIyBUeXBlXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vLyBNYWtlIHR5cGUgbm9ybWFsIGFjcm9zcyBicm93c2Vyc1xuKiwgaHRtbCwgYm9keSB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbn1cblxuXG4vLyBIZWFkZXJzXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICBtYXJnaW4tdG9wOiAkaGVhZGVyLW1hcmdpbiAqIDEuNTtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICBsaW5lLWhlaWdodDogJGhlYWRlci1saW5lLWhlaWdodDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxufVxuXG5oMSB7XG4gICAgZm9udC1zaXplOiAkaGVhZGVyLXNpemU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGhlYWRlci1tYXJnaW47XG59XG5cbmgyIHtcbiAgICBmb250LXNpemU6ICRoZWFkZXItc2l6ZSAvIDEuMztcbiAgICBtYXJnaW4tYm90dG9tOiAkaGVhZGVyLW1hcmdpbiAvIDEuMztcbn1cblxuaDMge1xuICAgIGZvbnQtc2l6ZTogJGhlYWRlci1zaXplIC8gMS41O1xuICAgIG1hcmdpbi1ib3R0b206ICRoZWFkZXItbWFyZ2luIC8gMS41O1xufVxuXG5oNCB7XG4gICAgZm9udC1zaXplOiAkaGVhZGVyLXNpemUgLyAxLjc7XG4gICAgbWFyZ2luLWJvdHRvbTogJGhlYWRlci1tYXJnaW4gLyAxLjc7XG59XG5cbmg1IHtcbiAgICBmb250LXNpemU6ICRoZWFkZXItc2l6ZSAvIDEuODtcbiAgICBtYXJnaW4tYm90dG9tOiAkaGVhZGVyLW1hcmdpbiAvIDEuODtcbn1cblxuaDYge1xuICAgIGZvbnQtc2l6ZTogJGhlYWRlci1zaXplIC8gMjtcbiAgICBtYXJnaW4tYm90dG9tOiAkaGVhZGVyLW1hcmdpbiAvIDI7XG59XG5cblxuXG4vLyBQYXJhZ3JhcGhzXG5wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbjtcbiAgICBmb250LXNpemU6ICRwYXJhZ3JhcGgtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJHBhcmFncmFwaC1jb2xvcjtcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG5cblxuXG4vLyBMaW5rc1xuYSB7XG4gICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IGRhcmtlbigkbGluay1jb2xvciwgMjAlKTtcbiAgICB9XG59XG5cblxuLy8gTGlzdHNcbnVsLFxub2wge1xuICAgIG1hcmdpbjogJHBhcmFncmFwaC1tYXJnaW4gMCAwIDIwcHg7XG5cbiAgICBsaSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmUtaGVpZ2h0O1xuICAgICAgICBjb2xvcjogJHBhcmFncmFwaC1jb2xvcjtcbiAgICB9XG5cbiAgICB1bCxcbiAgICBvbCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxufVxuXG51bCB7XG5cbiAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IGRpc2M7XG4gICAgfVxuXG4gICAgdWwge1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IGNpcmNsZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxub2wge1xuXG4gICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBkZWNpbWFsO1xuICAgIH1cbn1cblxuXG4vLyBoclxuaHIge1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogJGhyLW1hcmdpbiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xufVxuXG5cbi8vIEJsb2NrcXVvdGVcbmJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogJGJsb2NrcXVvdGUtbWFyZ2luIDA7XG4gICAgZm9udC1zaXplOiAkYmxvY2txdW90ZS1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkYmxvY2txdW90ZS1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJGJsb2NrcXVvdGUtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuXG4vLyBUYWJsZXNcbnRhYmxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46ICRibG9ja3F1b3RlLW1hcmdpbiAwO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG5cbnRhYmxlLCB0ZCwgdGgge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxudGgge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbn1cblxudGgsIHRkIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xufVxuXG5cbi8vIEZpZ3VyZVxuZmlndXJlIHtcbiAgICBtYXJnaW46ICRibG9ja3F1b3RlLW1hcmdpbiAwO1xuXG4gICAgaW1nIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbn1cblxuZmlnY2FwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBjb2xvcjogbGlnaHRlbigkcGFyYWdyYXBoLWNvbG9yLCAxMCUpO1xuICAgIGZvbnQtc2l6ZTogJHBhcmFncmFwaC1tYXJnaW4gKiAwLjg7XG59XG5cblxuLy8gQ29kZVxucHJlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgMCA0MHB4IDA7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRib3JkZXItY29sb3IsIDEyJSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG5cbiAgICBjb2RlIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgfVxufVxuXG5jb2RlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMC4yZW07XG4gICAgcGFkZGluZzogM3B4O1xuICAgIGZvbnQtZmFtaWx5OiBDb3VyaWVyIE5ldywgQ291cmllciwgbW9ub3NwYWNlO1xuICAgIGZvbnQtc2l6ZTogJHBhcmFncmFwaC1zaXplIC8gMS4yO1xuICAgIGNvbG9yOiBkYXJrZW4oJGJvcmRlci1jb2xvciwgNzAlKTtcbiAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuXG5cblxuLy8gTWlzYyBTdHlsZXNcbmVtLFxuaSxcbi5pdGFsaWMge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuc3Ryb25nLFxuYixcbi5ib2xkIHtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG59XG5cbmltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogJGJsb2NrcXVvdGUtbWFyZ2luIDA7XG59IiwiLy8gUFggdG8gUkVNIC0gVXNhZ2U6IGZvbnQtc2l6ZTogcmVtKDM3cHgpO1xuQGZ1bmN0aW9uIHJlbSgkcHgsICRiYXNlOiAkYmFzZS1mb250LXNpemUpIHtcbiAgICBAcmV0dXJuICgkcHggLyAkYmFzZSkgKiAxcmVtO1xufSIsImltZ3tcblx0bWFyZ2luOjA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG59XG4uaW1nLWZ1bGwge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG4uaW1nLWZsdWlkIHtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG87XG59IiwiYm9keSB7XG5cdGJhY2tncm91bmQ6ICR3aGl0ZTtcblx0Y29sb3I6ICRibGFjaztcblx0b3ZlcmZsb3cteDogaGlkZGVuO1xuXHQmLmhvbWUge1xuXHRcdGNvbG9yIDogJHdoaXRlO1xuXHR9XG59XG5hIHtcblx0dGV4dC1kZWNvcmF0aW9uOm5vbmU7XG5cdCY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuYnV0dG9ue1xuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOjA7XG5cdH1cbn1cblxuLmNmIHtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4ubGlzdC11bnN0eWxlZCB7XG5cdGxpc3Qtc3R5bGUtdHlwZTpub25lO1xuXHRtYXJnaW46MDtcblx0cGFkZGluZzowO1xuXHRsaSB7XG5cdFx0bGlzdC1zdHlsZTpub25lO1xuXHR9XG59XG5cbi5yZXNwb25zaXZlLXNxdWFyZSB7XG5cdGhlaWdodDowO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctYm90dG9tOiAxMDAlIWltcG9ydGFudDtcbn1cblxuLmZhbmN5Ym94LWJnLmZhbmN5Ym94LWJnIHtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnRpemUoJHdoaXRlLC4xKTtcbn0iLCIub3ZlcmxheS1pcy1hY3RpdmUge1xuICAgIC5zaXRlLWhlYWRlciB7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG59XG4uaGVhZHJvb20ge1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGxpbmVhcjtcbn1cbi5oZWFkcm9vbS0tcGlubmVkIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIC5zaXRlLWJyYW5kaW5nIHtcbiAgICB9XG59XG4uaGVhZHJvb20tLXVucGlubmVkIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xufVxuLmhlYWRyb29tLS10b3B7XG5cbn1cbi5zaXRlLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnNpdGUtaGVhZGVyIHtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiAgICBtYXJnaW46IGF1dG87XG4gICAgY29sb3I6JGJyYW5kLXByaW1hcnk7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDowO1xuICAgICB6LWluZGV4OiAxO1xuICAgICB3aWR0aDogMTAwJTtcbiAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuXG4gICAgQGluY2x1ZGUgbWFwcHktYnAobGcpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGluaXRpYWw7XG4gICAgfVxuICAgIC5ob21lICYge1xuICAgICAgICBjb2xvcjpjdXJyZW50Q29sb3I7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cbn1cblxuLm1haW4tbmF2aWdhdGlvbiB7XG4gICAgLy8gbWFyZ2luLXRvcDogMXJlbTtcbiAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICB9XG59XG5cbi5tZW51LXRvZ2dsZSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIHJpZ2h0OiAxNXB4O1xuICAgIHRvcDogMTVweDtcbiAgICBjb2xvcjogY3VycmVudENvbG9yO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5oZWFkZXJfX2NhdGVnb3J5IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAuNzFyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IC44cmVtO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQGluY2x1ZGUgbWFwcHktYnAoc20pe1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5zaXRlLWJyYW5kaW5nIHtcbnRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gei1pbmRleDogMTE7XG4gYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47XG4gd2lsbC1jaGFuZ2U6IGZvbnQtc2l6ZTtcbiAgICAgYSB7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOjVweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgcGFkZGluZzogLjI1cmVtIDFyZW07XG4gICAgICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogOHZ3OyAvLyBib3JkZXI6IDFweCBzb2xpZCA7XG4gICAgICAgIC8vIC5ob21lICYge2NvbG9yOiAkd2hpdGU7fVxuICAgICAgICBAaW5jbHVkZSBtYXBweS1icChsZykge1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDIwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmhvbWUgJiBhLFxuICAgICAub3ZlcmxheS1pcy1hY3RpdmUgJiBhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOztcbiAgICAgICAgZm9udC1zaXplOiA4dnc7XG4gICAgICAgIG9wYWNpdHk6IC43O1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIEBpbmNsdWRlIG1hcHB5LWJwKGxnKXtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTF2dzs7XG4gICAgICAgIH1cbiAgICB9XG5cbn0iLCIvLyBNYXBweSBicmVha3BvaW50c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE91dHB1dCBtZWRpYSBxdWVyeSB3aXRoIGZvY3VzIG9uIG1pbi13aWR0aCwgbWF4LXdpZHRoLCBtaW4taGVpZ2h0IGFuZCBtYXgtaGVpZ2h0LlxuLy8gT3RoZXIgbWVkaWEgcnVsZXMgYXJlIHBhc3NlZCBhcyB0aGUgc2Vjb25kIGFyZ3VtZW50IGluIGEgbWFwXG4vL1xuLy8gQGF1dGhvciBaZWxsIExpZXdcbi8vID09PT09PT09PT09PT09PT09XG4kYnJlYWtwb2ludHM6ICgpICFkZWZhdWx0O1xuJG1hcHB5LXF1ZXJpZXM6ICgpICFkZWZhdWx0O1xuXG4vLyBNYXBweSBCUCBbTWl4aW5dXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG4vLyAtICRxdWVyaWVzICAgICAgICAgOiA8c3RyaW5nPiBvciA8bnVtYmVyPiBpbiB0aGUgZm9ybWF0OlxuLy8gICAgICAgICAgICAgICAgICAgICAgPG1pbi13aWR0aD4gPG1heC13aWR0aD4gaCA8bWluLWhlaWdodD4gPG1heC1oZWlnaHQ+IDxrZXk+IDx2YWx1ZT5cbi8vIC0gJHR5cGUgICAgICAgICAgICA6IDxtZWRpYS10eXBlPlxuLy8gLSAkcXVlcnktZmFsbGJhY2sgIDogPHN0cmluZz4gc2VsZWN0b3IgY2xhc3Ncbi8vIC0gJGJyZWFrcG9pbnRzICAgICA6IDxtYXA+XG5AbWl4aW4gbWFwcHktYnAoJHF1ZXJpZXMsICR0eXBlOiBhbGwsICRxdWVyeS1mYWxsYmFjazogbnVsbCwgJGJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHMpIHtcblxuICAvLyBHZXRzIG1hcHB5IG1hcCB0aHJvdWdoIG1hcHB5LWJwIGZuXG4gICRtYXBweS1tYXA6IG1hcHB5LWJwKCRxdWVyaWVzLCAkdHlwZSwgJHF1ZXJ5LWZhbGxiYWNrLCAkYnJlYWtwb2ludHMpO1xuXG4gIC8vIE91dHB1dHMgbWVkaWEgc3RyaW5nXG4gIEBtZWRpYSAje21hcC1nZXQoJG1hcHB5LW1hcCwgdHlwZSl9IGFuZCAje21hcC1nZXQoJG1hcHB5LW1hcCwgbWVkaWEtc3RyaW5nKX0ge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gSWYgYSBxdWVyeSBmYWxsYmFjayBpcyBwcm92aWRlZFxuICBAaWYgJHF1ZXJ5LWZhbGxiYWNrIHtcbiAgICAjeyRxdWVyeS1mYWxsYmFja30gJiB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWFwcHkgUXVlcnkgW01peGluXVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gT3V0cHV0IHF1ZXJ5IGZyb20gJG1hcHB5LXF1ZXJpZXMgbWFwLlxuLy8gJHF1ZXJ5IDogPHN0cmluZz4gZnJvbSAkbWFwcHktcXVlcmllcyBrZXlcbkBtaXhpbiBtYXBweS1xdWVyeSgkcXVlcnksICRtYXBweS1xdWVyaWVzOiAkbWFwcHktcXVlcmllcykge1xuICBAaWYgbm90IG1hcC1oYXMta2V5KCRtYXBweS1xdWVyaWVzLCAkcXVlcnkpIHtcbiAgICBAZXJyb3IgXCIjeyRtYXBweS1xdWVyaWVzfSBkb2VzIG5vdCBjb250YWluICN7JHF1ZXJ5fVwiO1xuICB9XG5cbiAgJG1hcHB5LW1hcDogbWFwLWdldCgkbWFwcHktcXVlcmllcywgJHF1ZXJ5KTtcblxuICBAbWVkaWEgI3ttYXAtZ2V0KCRtYXBweS1tYXAsIHR5cGUpfSBhbmQgI3ttYXAtZ2V0KCRtYXBweS1tYXAsIG1lZGlhLXN0cmluZyl9IHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIElmIGEgcXVlcnkgZmFsbGJhY2sgaXMgcHJvdmlkZWRcbiAgQGlmIG1hcC1nZXQoJG1hcHB5LW1hcCwgcXVlcnktZmFsbGJhY2spIHtcbiAgICAje21hcC1nZXQoJG1hcHB5LW1hcCwgcXVlcnktZmFsbGJhY2spfSAmIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNYXBweSBCUCBbRnVuY3Rpb25dXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm5zIGEgbWFwIHdpdGggMyBrZXlzXG4vLyAtIHR5cGUgICAgICAgICAgIDogTWVkaWEgdHlwZVxuLy8gLSBtZWRpYS1zdHJpbmcgICA6IG1lZGlhIHF1ZXJ5IHN0cmluZ1xuLy8gLSBxdWVyeS1mYWxsYmFjayA6IHF1ZXJ5IGZhbGxiYWNrIChpZiBhbnkpXG5AZnVuY3Rpb24gbWFwcHktYnAoJHF1ZXJpZXMsICR0eXBlOiBhbGwsICRxdWVyeS1mYWxsYmFjazogbnVsbCwgJGJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHMpIHtcbiAgJG1lZGlhLXN0cmluZzogKCk7XG4gICRfcmV0dXJuOiAoKTtcbiAgJG1lZGlhLW1hcDogcGFyc2UtYnAoJHF1ZXJpZXMsICRicmVha3BvaW50cyk7XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtZWRpYS1tYXAge1xuICAgIEBpZiAkdmFsdWUgYW5kICR2YWx1ZSAhPSAwIHtcbiAgICAgIEBpZiAkbWVkaWEtc3RyaW5nID09ICgoKSkge1xuICAgICAgICAkbWVkaWEtc3RyaW5nOiBhcHBlbmQoJG1lZGlhLXN0cmluZywgdW5xdW90ZShcIigjeyRrZXl9OiAjeyR2YWx1ZX0pXCIpKTtcbiAgICAgIH1cblxuICAgICAgQGVsc2Uge1xuICAgICAgICAkbWVkaWEtc3RyaW5nOiBhcHBlbmQoJG1lZGlhLXN0cmluZywgdW5xdW90ZShcImFuZCAoI3ska2V5fTogI3skdmFsdWV9KVwiKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICRfcmV0dXJuOiAoXG4gICAgdHlwZTogJHR5cGUsXG4gICAgbWVkaWEtc3RyaW5nOiBpbXBsb2RlKCRtZWRpYS1zdHJpbmcpLFxuICAgIHF1ZXJ5LWZhbGxiYWNrOiAkcXVlcnktZmFsbGJhY2tcbiAgKTtcblxuICBAcmV0dXJuICRfcmV0dXJuO1xufVxuXG4vLyBCUCBbTWl4aW5dXG4vLyAtLS0tLS0tLS0tXG4vLyBDb252ZW5pZW5jZSBtaXhpbiBmb3IgTWFwcHkgQnJlYWtwb2ludHNcbkBtaXhpbiBicCgkcXVlcmllcywgJHR5cGU6IGFsbCwgJHF1ZXJ5LWZhbGxiYWNrOiBudWxsLCAkYnJlYWtwb2ludHM6ICRicmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtYXBweS1icCgkcXVlcmllcywgJHR5cGUsICRxdWVyeS1mYWxsYmFjaywgJGJyZWFrcG9pbnRzKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gUGFyc2UgQlAgW2Z1bmN0aW9uXVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUGFyc2VzIGFyZ3VtZW50cyBhbmQgcmV0dXJucyBhIG1hcCB3aXRoIDQga2V5c1xuQGZ1bmN0aW9uIHBhcnNlLWJwKCRxdWVyaWVzLCAkYnJlYWtwb2ludHMpIHtcbiAgJF9yZXR1cm46ICgpO1xuICAkX2k6IDE7XG4gICRfbWludzogbnVsbDtcbiAgJF9tYXh3OiBudWxsO1xuICAkX21pbmg6IG51bGw7XG4gICRfbWF4aDogbnVsbDtcbiAgJF9sZW5ndGg6IGxlbmd0aCgkcXVlcmllcyk7XG5cbiAgLy8gQ2hlY2tzIGZvciB3aWR0aCBxdWVyaWVzXG4gICRfbWludzogbnRoKCRxdWVyaWVzLCAxKTtcbiAgJF9taW53OiBtYXBweS12YWxpZGF0ZSgkX21pbncsICRicmVha3BvaW50cyk7XG5cbiAgLy8gQ2hlY2sgZm9yIHdpZHRoIHF1ZXJpZXNcbiAgQGlmICRfbWludyB7XG4gICAgJF9taW53OiBtYXBweS1jb252ZXJ0LXRvLWVtKCRfbWludyk7XG4gICAgJF9yZXR1cm46IG1hcC1tZXJnZSgkX3JldHVybiwgKG1pbi13aWR0aDogJF9taW53KSk7XG4gICAgJHF1ZXJpZXM6IHNldC1udGgoJHF1ZXJpZXMsIDEsIG51bGwpO1xuICB9XG5cbiAgLy8gQ2hlY2tzIGlmIHRoZXJlIGlzIGEgbWF4IHdpZHRoIHF1ZXJ5XG4gIEBpZiAkX21pbncgYW5kICRfbGVuZ3RoID49IDIge1xuICAgICRfbWF4dzogbnRoKCRxdWVyaWVzLCAyKTtcbiAgICAkX21heHc6IG1hcHB5LXZhbGlkYXRlKCRfbWF4dywgJGJyZWFrcG9pbnRzKTtcbiAgfVxuXG4gIEBpZiAkX21heHcge1xuICAgICRfbWF4dzogbWFwcHktY29udmVydC10by1lbSgkX21heHcgLSAxcHgpO1xuICAgICRfcmV0dXJuOiBtYXAtbWVyZ2UoJF9yZXR1cm4sIChtYXgtd2lkdGg6ICRfbWF4dykpO1xuICAgICRxdWVyaWVzOiBzZXQtbnRoKCRxdWVyaWVzLCAyLCBudWxsKTtcbiAgfVxuXG4gIC8vIENoZWNrcyBmb3IgaGVpZ2h0IHF1ZXJpZXNcbiAgJF9oOiBpbmRleCgkcXVlcmllcywgaCkgb3IgaW5kZXgoJHF1ZXJpZXMsIGhlaWdodCk7XG5cbiAgQGlmICRfaCB7XG4gICAgJF9taW5oOiBudGgoJHF1ZXJpZXMsICRfaCArIDEpO1xuICAgICRfbWluaDogbWFwcHktdmFsaWRhdGUoJF9taW5oLCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGlmICRfbWluaCB7XG4gICAgICAkX21pbmg6IG1hcHB5LWNvbnZlcnQtdG8tZW0oJF9taW5oKTtcbiAgICAgICRfcmV0dXJuOiBtYXAtbWVyZ2UoJF9yZXR1cm4sIChtaW4taGVpZ2h0OiAkX21pbmgpKTtcbiAgICAgICRxdWVyaWVzOiBzZXQtbnRoKCRxdWVyaWVzLCAkX2ggKyAxLCBudWxsKTtcbiAgICB9XG5cbiAgICAvLyBDaGVja3MgaWYgdGhlcmUgaXMgYSBtYXggaGVpZ2h0IHF1ZXJ5XG4gICAgQGlmICRfbGVuZ3RoIC0gJF9oID49IDIge1xuICAgICAgJF9tYXhoOiBudGgoJHF1ZXJpZXMsICRfaCArIDIpO1xuICAgICAgJF9tYXhoOiBtYXBweS12YWxpZGF0ZSgkX21heGgsICRicmVha3BvaW50cyk7XG4gICAgfVxuXG4gICAgQGlmICRfbWF4aCB7XG4gICAgICAkX21heGg6IG1hcHB5LWNvbnZlcnQtdG8tZW0oJF9tYXhoIC0gMXB4KTtcbiAgICAgICRfcmV0dXJuOiBtYXAtbWVyZ2UoJF9yZXR1cm4sIChtYXgtaGVpZ2h0OiAkX21heGgpKTtcbiAgICAgICRxdWVyaWVzOiBzZXQtbnRoKCRxdWVyaWVzLCAkX2ggKyAyLCBudWxsKTtcbiAgICB9XG4gICAgLy8gUmVzZXQgaCBtYXJrZXJcbiAgICAkcXVlcmllczogc2V0LW50aCgkcXVlcmllcywgJF9oLCBudWxsKTtcbiAgfVxuXG4gIC8vIENoZWNrcyBmb3Igb3RoZXIgcXVlcmllc1xuICBAd2hpbGUgJF9pIDw9IGxlbmd0aCgkcXVlcmllcykge1xuICAgICRfa2V5OiBudGgoJHF1ZXJpZXMsICRfaSk7XG5cbiAgICBAaWYgJF9rZXkgYW5kICRfbGVuZ3RoIC0gJF9pID49IDEge1xuICAgICAgJF92YWw6IG50aCgkcXVlcmllcywgJF9pICsgMSk7XG4gICAgICAkX3JldHVybjogbWFwLW1lcmdlKCRfcmV0dXJuLCAoI3skX2tleX06ICRfdmFsKSk7XG4gICAgICAkcXVlcmllczogc2V0LW50aCgkcXVlcmllcywgJF9pLCBudWxsKTtcbiAgICAgICRxdWVyaWVzOiBzZXQtbnRoKCRxdWVyaWVzLCAkX2kgKyAxLCBudWxsKTtcbiAgICB9XG5cbiAgICBAZWxzZSBpZiAkX2tleSB7XG4gICAgICBAd2FybiB1bnF1b3RlKCdcIk1hcHB5IEJyZWFrcG9pbnRzIGlzIG1pc3NpbmcgdmFsdWUgZm9yIG1lZGlhIGZlYXR1cmUgXCIjeyRfa2V5fVwiXCInKTtcbiAgICB9XG4gICAgJF9pOiAkX2kgKyAxO1xuICB9XG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG5cbi8vIE1hcHB5IFZhbGlkYXRlIFtGdW5jdGlvbl1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENoZWNrcyBpZiAkcXVlcnkgZ2l2ZW4gaXMgb25lIG9mIHRoZSBmb2xsb3dpbmc6XG4vLyAxKSBJcyBhICRrZXkgaW4gdGhlICRicmVha3BvaW50cyBtYXBcbi8vIDIpIElzIGEgbnVtYmVyXG4vLyAzKSBJcyBhIFwibWF4XCIsIFwibWF4LXdpZHRoXCIgb3IgXCJtYXgtaGVpZ2h0XCIgc3RyaW5nXG5AZnVuY3Rpb24gbWFwcHktdmFsaWRhdGUoJHF1ZXJ5LCAkYnJlYWtwb2ludHMpIHtcbiAgJF9yZXR1cm46IG51bGw7XG5cbiAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHF1ZXJ5KSB7XG4gICAgJF9yZXR1cm46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkcXVlcnkpO1xuICB9XG5cbiAgQGVsc2UgaWYgdHlwZS1vZigkcXVlcnkpID09IG51bWJlciB7XG4gICAgJF9yZXR1cm46ICRxdWVyeTtcbiAgfVxuXG4gIEBlbHNlIGlmICRxdWVyeSA9PSBcIm1heFwiIG9yICRxdWVyeSA9PSBcIm1heC1oZWlnaHRcIiBvciAkcXVlcnkgPT0gXCJtYXgtd2lkdGhcIiB7XG4gICAgJF9yZXR1cm46IDA7XG4gIH1cblxuICBAZWxzZSB7XG4gICAgJF9yZXR1cm46IG51bGw7XG4gIH1cbiAgQHJldHVybiAkX3JldHVybjtcbn1cblxuLy8gTWFwcHkgQ29udmVydCBUbyBFbSBbRnVuY3Rpb25dXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDaGVja3MgYW5kIGNvbnZlcnRzIHB4IHZhbHVlcyB0byBlbS4gTGVhdmUgb3RoZXIgdW5pdHMgdW50b3VjaGVkLlxuXG5AZnVuY3Rpb24gbWFwcHktY29udmVydC10by1lbSgkdmFsKSB7XG4gIEBpZiB1bml0KCR2YWwpID09IFwicHhcIiBvciAkdmFsID09IDAge1xuICAgIEByZXR1cm4gbWFwcHktZW0oJHZhbCk7XG4gIH0gQGVsc2UgaWYgdW5pdCgkdmFsKSA9PSBcImVtXCIge1xuICAgIEByZXR1cm4gJHZhbDtcbiAgfSBAZWxzZSBpZiB1bml0KCR2YWwpID09IFwicmVtXCIge1xuICAgIEByZXR1cm4gbWFwcHktc3RyaXAtdW5pdCgkdmFsKSAqIDFlbTtcbiAgfSBAZWxzZSB7XG4gICAgQGVycm9yIHVucXVvdGUoXCJCcmVha3BvaW50IHZhbHVlIG11c3QgaGF2ZSBhIHVuaXQgaWYgaXQncyBhIG51bWJlclwiKTtcbiAgfVxufVxuXG4vLyBNYXBweSBFbSBbRnVuY3Rpb25dXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ29udmVydHMgcGl4ZWxzIHRvIGVtIHdpdGggJGJhc2UtZm9udC1zaXplXG4vLyAtIGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL2lqeS8xNDQxOTY3XG5AZnVuY3Rpb24gbWFwcHktZW0oJHRhcmdldCwgJGNvbnRleHQ6IDE2cHgpIHtcbiAgQGlmICR0YXJnZXQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEByZXR1cm4gJHRhcmdldCAvICRjb250ZXh0ICogMWVtO1xufVxuXG5AZnVuY3Rpb24gbWFwcHktc3RyaXAtdW5pdCgkbnVtKSB7XG4gIEByZXR1cm4gJG51bSAvICgkbnVtICogMCArIDEpO1xufVxuXG4vLyBJbXBsb2RlIFtGdW5jdGlvbl1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBJbXBsb2RlIGEgbGlzdCBpbnRvIGEgc3RyaW5nXG5AZnVuY3Rpb24gaW1wbG9kZSgkbGlzdCwgJGdsdWU6ICcgJykge1xuICAkcmVzOiBudWxsO1xuICAkbGVuOiBsZW5ndGgoJGxpc3QpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGxlbiB7XG4gICAgJGU6IG50aCgkbGlzdCwgJGkpO1xuICAgIEBpZiAkaSA9PSAkbGVuIHtcbiAgICAgICRyZXM6IHVucXVvdGUoXCIjeyRyZXN9I3skZX1cIik7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRyZXM6IHVucXVvdGUoXCIjeyRyZXN9I3skZX0jeyRnbHVlfVwiKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRyZXM7XG59XG4iLCIubWVudSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOmNlbnRlcjtcblx0ZmxleC13cmFwOndyYXA7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRtYXJnaW4tdG9wOjA7XG5cdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRtYXJnaW4tcmlnaHQ6MTBweDtcblx0bWFyZ2luLWJvdHRvbTogMDtcblx0cGFkZGluZy1sZWZ0OiAwO1xuXHR3aWR0aDoxMDAlO1xuXHQmIC5tZW51IHtcblx0XHRtYXJnaW4tbGVmdDogMXJlbTtcblx0fVxufVxuXG4ubWVudV9faXRlbSB7XG5cdFxuXHRtYXJnaW46MDtcblx0cG9zaXRpb246cmVsYXRpdmU7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0ZmxleDogMSAxIDEwMCU7IFxuXHRkaXNwbGF5OiBmbGV4O1xuXHRAaW5jbHVkZSBtYXBweS1icChtZCl7XG5cdFx0cGFkZGluZy1yaWdodDogMTBweDtcblx0XHRmbGV4OiAxIDEgYXV0bztcblx0XHRtaW4td2lkdGg6IDE1NXB4O1xuXHRcdG1heC13aWR0aDogMjUwcHg7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OicnO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDY2JTtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0XHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZDtcblx0XHQmOmxhc3Qtb2YtdHlwZSB7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdFx0Ym9yZGVyLXJpZ2h0OiAwO1xuXHRcdH1cblx0fVxuXHRAaW5jbHVkZSBtYXBweS1icChsZyl7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMTAwJTtcblx0XHR9XG5cdH1cblxuXHQubWVudV9fbGluayB7XG5cdFx0cGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuXHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0Zm9udC1zaXplOiAxLjI1cmVtO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHR3aWR0aDoxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudGl6ZSgkYmxhY2ssIDEpO1xuXHRcdHRyYW5zaXRpb246IGZvbnQtc2l6ZSAuMnM7XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50aXplKCRibGFjaywgLjMpOy8vIzMzMztcblx0XHRcdFx0Ym94LXNoYWRvdzogMCAwIDZweCAtNHB4ICR3aGl0ZTtcblx0XHRcdH1cblx0XHQmOmFjdGl2ZSB7XG5cdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudGl6ZSgkd2hpdGUsLjUpO1xuXHRcdFx0Y29sb3I6ICRibGFjaztcblx0XHR9XG5cdFx0Ji5jdXJyZW50X3BhZ2Uge1xuXHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnRpemUoJHdoaXRlLC44NSk7XG5cdFx0XHQvLyBjb2xvcjogJGJsYWNrO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBtYXBweS1icChtZCl7XG5cdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHR9XG5cdH1cbn1cblxuXHRcdC5kcm9wZG93bntcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHQuZHJvcGRvd25fX21lbnUge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdCYucmlnaHQge1xuXHRcdFx0XHRcdFx0cmlnaHQ6MDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5tZW51X19pdGVtIHtcblx0XHRcdFx0d2hpdGUtc3BhY2U6bm93cmFwO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuZHJvcGRvd25fX21lbnUge1xuXHRcdFx0cGFkZGluZy10b3A6IC41cmVtO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0ZGlzcGxheTpub25lO1xuXHRcdFx0Lm1lbnVfX2l0ZW0ge1xuXHRcdFx0XHRwYWRkaW5nLXRvcDogLjVyZW07XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAuNXJlbTtcblx0XHRcdH1cblx0XHR9IiwiXG5cbi5tZW51LXRvZ2dsZS5pcy1hY3RpdmUge1xuXHR6LWluZGV4OiAxMTtcblx0Y29sb3I6JHdoaXRlO1xufVxuLm92ZXJsYXktbmF2IHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGFsaWduLWl0ZW1zOmNlbnRlcjs7XG5cdGJhY2tncm91bmQ6JG5hdi1iZztcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6MDtcblx0bGVmdDowO1xuXHRyaWdodDowO1xuXHRib3R0b206MDtcblx0ei1pbmRleDogMTA7XG5cdG9wYWNpdHk6MDtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGV5KC0xMDAlKTtcblx0dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzLCBvcGFjaXR5IC4zcztcblx0YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47XG5cdCYuaXMtYWN0aXZlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRleSgwKTtcblx0fVxufSIsIi5ib3R0b20tb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkOyAvLyBvdmVyZmxvdy15OnNjcm9sbDtcbiAgICAvLyB0b3A6MTI1cHg7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMTE7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzLCBvcGFjaXR5IC4zcztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZXkoMTAwJSk7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIC5ib3R0b20tb3ZlcmxheS1pcy1hY3RpdmUgJiB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogaW5pdGlhbDtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDhweCAxNXB4IDNweCBibGFjaztcbiAgICB9XG59XG5cbi5ib3R0b20tb3ZlcmxheV9fY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50aXplKCR3aGl0ZSwgLjEpO1xufVxuXG4uYm90dG9tLW92ZXJsYXlfX2Nsb3NlIHtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwOy8vJGdsb2JhbC1wYWRkaW5nO1xuICAgIHRvcDogMDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6ICR3aGl0ZTsvL3RyYW5zcGFyZW50aXplKCRicmFuZC1wcmltYXJ5LC4yKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIC4ycywgdG9wIDAgLjJzO1xuXHRiYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeTtcblx0cGFkZGluZzogMCAkZ2xvYmFsLXBhZGRpbmc7XG5cdEBpbmNsdWRlIG1hcHB5LWJwKGxnKXtcblx0XHRmb250LXNpemU6IDNyZW07XG5cdH1cbiAgICAmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0Y29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICAuYm90dG9tLW92ZXJsYXktaXMtYWN0aXZlICYge1xuICAgICAgICB0b3A6IC0xZW07XG4gICAgfVxufVxuXG4uYm90dG9tLW92ZXJsYXlfX2FzaWRlLFxuLmJvdHRvbS1vdmVybGF5X19tYWluIHtcbiAgICBAZXh0ZW5kIC5jb2x1bW47XG59XG5cbi5ib3R0b20tb3ZlcmxheV9fYXNpZGUge1xuICAgIHdpZHRoOiAzMDBweDtcbiAgICBmbGV4OiAwIDAgMzAwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRicmFuZC1wcmltYXJ5O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmJvdHRvbS1vdmVybGF5X19hc2lkZV9fY29udGFpbmVyIHtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IFxuICAgIHBhZGRpbmctcmlnaHQ6ICRnbG9iYWwtcGFkZGluZztcbn1cblxuLmJvdHRvbS1vdmVybGF5X19tYWluIHtcbiAgICBmbGV4OiAxO1xufVxuXG4udGh1bWItZ2FsbGVyeSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnRodW1iLWdhbGxlcnlfX2ltYWdlLXdyYXAge1xuICAgIGZsZXg6IDAgMSAyNSU7XG4gICAgcGFkZGluZzogLjVyZW07XG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxufVxuXG4uYm90dG9tLW92ZXJsYXlfX2Nob2ljZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdG1hcmdpbjogJGdsb2JhbC1wYWRkaW5nO1xufVxuXG4uYm90dG9tLW92ZXJsYXlfX3RpdGxlIHtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRwYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwO2Rpc3BsYXk6IG5vbmU7XG59XG4uYm90dG9tLW92ZXJsYXlfX2Nob2ljZSB7XG5cdG1hcmdpbjowO1xuXHRmbGV4OiA1MCU7XG5cdEBpbmNsdWRlIG1hcHB5LWJwKGxnKXtcblx0XHRmbGV4OmF1dG87XG5cdH1cblx0Jjpob3ZlciB7XG5cdFx0LmJvdHRvbS1vdmVybGF5X19jaG9pY2UtdGl0bGUge1xuXHRcdFx0YmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdH1cblx0fVxufVxuLmJvdHRvbS1vdmVybGF5X19jaG9pY2UtdGl0bGUge1xuXHRwYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR3aWR0aDogMTAwJTtcblx0Zm9udC13ZWlnaHQ6IDgwMDtcblx0bGV0dGVyLXNwYWNpbmc6IDhweDtcblx0ICYuaXNfYWN0aXZlIHtcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHQvLyBiYWNrZ3JvdW5kLWNvbG9yOiNjY2M7XG5cdH1cbn1cbiIsIi5maWxsQ29udGFpbmVyX19wYXJlbnQge1xuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdCYgPiBpbWcge1xuXHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHRcdH1cbn1cblxuLmZpbGxDb250YWluZXJfX2NoaWxkIHtcblx0QGluY2x1ZGUgZmlsbEFic29sdXRlKCk7XG59IiwiQG1peGluIGZpbGxBYnNvbHV0ZSgpe1xuXHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0bGVmdDowO1xuXHRyaWdodDowO1xuXHR0b3A6MDtcblx0Ym90dG9tOjA7XG59IiwiXG4uZmFkZS1pbiB7XG5cdG9wYWNpdHk6MDtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAuM3M7XG5cdC5pbWFnZXMtbG9hZGVkICYge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn0iLCJcbi5oZXJvU2xpZGVyIHtcblx0b3BhY2l0eTogMDtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAxLjNzO1xuXHQmLnNsaWNrLXNsaWRlciB7XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAxLjNzIC41cztcblx0XHRvcGFjaXR5OjE7XG5cdH1cbn1cbi5oZXJvU2xpZGVyX19pdGVtIHtcblx0YmFja2dyb3VuZDogIzMzMztcblx0aGVpZ2h0OiAxMDB2aDtcblx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXI7XG59XG5cbi5zbGlkZXItbGFiZWwge1xuXHQgICAgcGFkZGluZzogNXB4IDI1cHggNXB4IDE1cHg7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6MDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiA1cHg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgb3BhY2l0eTogLjg7XG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggLTNweDtcbiAgICBjb2xvcjogIzVmNWM1YztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuXG59IiwiJGdhbGxlcnktYmc6ICMzMzM7XG4uZ2FsbGVyeV9fd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZDogJGdhbGxlcnktYmc7XG4gICAgLnJvdyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH0gXG4gICAgLm5hdi1iZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6ICRnYWxsZXJ5LWJnOyAvLyB3aWR0aDogMzAwcHg7XG4gICAgICAgIGZsZXg6IDAgMCAzMDBweDtcbiAgICB9XG59XG5cbi5nYWxsZXJ5IHtcblx0cGFkZGluZy10b3A6ICRnbG9iYWwtcGFkZGluZztcblx0cGFkZGluZy1ib3R0b206ICRnbG9iYWwtcGFkZGluZztcbiAgICBwYWRkaW5nLWxlZnQ6ICRnbG9iYWwtcGFkZGluZztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ2xvYmFsLXBhZGRpbmc7XG59XG5cbi5nYWxsZXJ5X19pbWFnZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOndyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIC8vIEBleHRlbmQgLmNmO1xufVxuXG4uZ2FsbGVyeV9faW1hZ2Uge1xuXHQvLyBmbG9hdDpsZWZ0O1xuXHQvLyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgLy8gaGVpZ2h0OiA1MHZoO1xuICAgIHdpZHRoOiAzMyU7XG4gICAgZmxleDogMCAxIDMzJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICAvLyBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIC8vIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJvcmRlcjogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG59IiwiLmdhbGxlcnktY2hvaWNlc19fd3JhcHBlciB7XG5cbn1cbi5nYWxsZXJ5LWNob2ljZXNfX3RpdGxlIHtcblx0ZmxleDogMSAwIDEwMCU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHQvLyBmb250LXNpemU6IDEwdnc7XG5cdGZvbnQtd2VpZ2h0OiA4MDA7XG59XG4uZ2FsbGVyeS1jaG9pY2VzIHtcblx0Ly8gZmxleDogMSAwIDEwMCU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuXHRmbGV4LXdyYXA6d3JhcDtcbn1cblxuLmdhbGxlcnktY2hvaWNlIHtcblx0d2lkdGg6MTAwJTtcblx0YmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG5cdC8vIGZsZXg6IDEgMSAzMCU7XG5cdG1hcmdpbjogMXJlbTtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7YWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5nYWxsZXJ5LWNob2ljZV9fdGl0bGUge1xuXHQvLyBmb250LXNpemU6IDIuNHZ3O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGNvbG9yOiAkd2hpdGU7XG5cdHBhZGRpbmc6IC41cmVtO1xuXHQvLyBmb250LXdlaWdodDogODAwO1xuXHR0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuXHQvLyBsZXR0ZXItc3BhY2luZzogLjUxZW07XG59IiwiXG4ucGFnZS1nYWxsZXJ5IHtcblx0cGFkZGluZy10b3A6IDc1cHg7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgLjVzO1xuXHRAaW5jbHVkZSBtYXBweS1icChsZyl7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRtYXJnaW46YXV0bztcblx0XHRmbGV4LXdyYXA6d3JhcDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0fVxufVxuLnBhZ2UtZ2FsbGVyeV9fdGl0bGUge1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHotaW5kZXg6IDE7XG5cdHJpZ2h0OjA7XG5cdGJvdHRvbTogMDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRtYXJnaW4tYm90dG9tOiAwO1xuXHRAaW5jbHVkZSBtYXBweS1icChsZyl7XG5cdFx0cmlnaHQ6ICRnbG9iYWwtcGFkZGluZztcblx0fVxuXHRidXR0b257XG5cdFx0Y3Vyc29yOnBvaW50ZXI7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHBhZGRpbmc6IDE1cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDhweDtcblx0XHRmb250LXNpemU6IDFyZW07XG5cdFx0Y29sb3I6IHRleHRDb2xvcigkd2hpdGUpO1xuXHRcdGJvcmRlcjpub25lO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRmb250LXdlaWdodDogODAwO1xuXHRcdGJhY2tncm91bmQ6ICR3aGl0ZTtcblx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcywgY29sb3IgLjNzO1xuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZDogJGJyYW5kLXByaW1hcnk7XG5cdFx0XHRjb2xvcjogdGV4dENvbG9yKCRicmFuZC1wcmltYXJ5KTtcblx0XHR9XG5cdH1cbn1cblxuLm1hc29ucnktaXRlbSB7XG5cdHdpZHRoOiA1MCU7XG5cdHBhZGRpbmc6IDVweDtcblx0QGluY2x1ZGUgbWFwcHktYnAobWQpe1xuXHRcdHBhZGRpbmc6IDEwcHg7XG5cdFx0d2lkdGg6IDMzJTtcblx0fVxuXHRAaW5jbHVkZSBtYXBweS1icCh4bCl7XG5cdFx0d2lkdGg6IDI1JTtcblx0fVxufVxuLm1hc29ucnktaXRlbS1sYXJnZSB7XG5cdEBpbmNsdWRlIG1hcHB5LWJwKG1kKXtcblx0XHRwYWRkaW5nOiAxNXB4O1xuXHRcdHdpZHRoOiA2NiU7XG5cdH1cblx0QGluY2x1ZGUgbWFwcHktYnAobGcpe1xuXHRcdHdpZHRoOiA1MCU7XG5cdH1cbn1cbi5wYWdlLWdhbGxlcnlfX2ltYWdlLXdyYXAge1xuXHR3aWR0aDogMTAwLjUlO1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzLCBib3gtc2hhZG93IC4ycztcblx0aW1ne1xuXHRcdHdpZHRoOiAxMDAuNSU7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgJGdyYXktNDAwO1xuXHRcdHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjJzLCBib3JkZXIgIC4ycywgdHJhbnNmb3JtIC4ycywgb3BhY2l0eSAuMnM7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHRpbWcge1xuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcblx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRncmF5LTUwMDtcblx0XHRcdGJveC1zaGFkb3c6IDAgM3B4IDhweCAtMnB4IHRyYW5zcGFyZW50aXplKCRibGFjaywuNSk7XG5cdFx0fVxuXHR9XG5cdCY6YWN0aXZlIHtcblx0XHRpbWcge1xuXHRcdFx0b3BhY2l0eTogLjg7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlKC45OSk7XG5cdFx0fVxuXHR9XG59XG4iLCIudGh1bWItZ2FsbGVyeV9faW1hZ2Utd3JhcCB7XG5cdGF7XG5cdGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbn1cbiBpbWcge1xuIFx0b2JqZWN0LWZpdDogY292ZXI7XG59XG59Il19 */
