/*!
Theme Name: BrandAffinity
Author: jake / dekiru
Author URI: https://dekiru.uk
Description: WP theme
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: dekiru
*/
/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
	padding: 15px 15px;
	display: inline-block;
	cursor: pointer;
	-webkit-transition-property: opacity, -webkit-filter;
	transition-property: opacity, -webkit-filter;
	transition-property: opacity, filter;
	transition-property: opacity, filter, -webkit-filter;
	-webkit-transition-duration: 0.15s;
	        transition-duration: 0.15s;
	-webkit-transition-timing-function: linear;
	        transition-timing-function: linear;
	font: inherit;
	color: inherit;
	text-transform: none;
	background-color: transparent;
	border: 0;
	margin: 0;
	overflow: visible;
}
.hamburger:hover {
	opacity: 0.7;
}

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

.hamburger-inner {
	display: block;
	top: 50%;
	margin-top: -2px;
}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
	width: 40px;
	height: 4px;
	background-color: #fff;
	border-radius: 4px;
	position: absolute;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	-webkit-transition-duration: 0.15s;
	        transition-duration: 0.15s;
	-webkit-transition-timing-function: ease;
	        transition-timing-function: ease;
}
.hamburger-inner::before, .hamburger-inner::after {
	content: "";
	display: block;
}
.hamburger-inner::before {
	top: -10px;
}
.hamburger-inner::after {
	bottom: -10px;
}

/*
 * Squeeze
 */
.hamburger--squeeze .hamburger-inner {
	-webkit-transition-duration: 0.075s;
	        transition-duration: 0.075s;
	-webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
	        transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--squeeze .hamburger-inner::before {
	-webkit-transition: top 0.075s 0.12s ease, opacity 0.075s ease;
	transition: top 0.075s 0.12s ease, opacity 0.075s ease;
}
.hamburger--squeeze .hamburger-inner::after {
	-webkit-transition: bottom 0.075s 0.12s ease, -webkit-transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
	transition: bottom 0.075s 0.12s ease, -webkit-transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
	transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
	transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--squeeze.is-active .hamburger-inner {
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
	-webkit-transition-delay: 0.12s;
	        transition-delay: 0.12s;
	-webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--squeeze.is-active .hamburger-inner::before {
	top: 0;
	opacity: 0;
	-webkit-transition: top 0.075s ease, opacity 0.075s 0.12s ease;
	transition: top 0.075s ease, opacity 0.075s 0.12s ease;
}
.hamburger--squeeze.is-active .hamburger-inner::after {
	bottom: 0;
	-webkit-transform: rotate(-90deg);
	        transform: rotate(-90deg);
	-webkit-transition: bottom 0.075s ease, -webkit-transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: bottom 0.075s ease, -webkit-transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/* Magnific Popup CSS */
.mfp-bg {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1042;
	overflow: hidden;
	position: fixed;
	background: #0b0b0b;
	opacity: 0.8;
}

.mfp-wrap {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1043;
	position: fixed;
	outline: none !important;
	-webkit-backface-visibility: hidden;
}

.mfp-container {
	text-align: center;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	padding: 0 8px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

.mfp-container:before {
	content: "";
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
	display: none;
}

.mfp-content {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	margin: 0 auto;
	text-align: left;
	z-index: 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
	width: 100%;
	cursor: auto;
}

.mfp-ajax-cur {
	cursor: progress;
}

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
	cursor: -webkit-zoom-out;
	cursor: zoom-out;
}

.mfp-zoom {
	cursor: pointer;
	cursor: -webkit-zoom-in;
	cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
	cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	    user-select: none;
}

.mfp-loading.mfp-figure {
	display: none;
}

.mfp-hide {
	display: none !important;
}

.mfp-preloader {
	color: #CCC;
	position: absolute;
	top: 50%;
	width: auto;
	text-align: center;
	margin-top: -0.8em;
	left: 8px;
	right: 8px;
	z-index: 1044;
}

.mfp-preloader a {
	color: #CCC;
}

.mfp-preloader a:hover {
	color: #FFF;
}

.mfp-s-ready .mfp-preloader {
	display: none;
}

.mfp-s-error .mfp-content {
	display: none;
}

button.mfp-close,
button.mfp-arrow {
	overflow: visible;
	cursor: pointer;
	background: transparent;
	border: 0;
	-webkit-appearance: none;
	display: block;
	outline: none;
	padding: 0;
	z-index: 1046;
	-webkit-box-shadow: none;
	        box-shadow: none;
	-ms-touch-action: manipulation;
	    touch-action: manipulation;
}

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

.mfp-close {
	width: 44px;
	height: 44px;
	line-height: 44px;
	position: absolute;
	right: 0;
	top: 0;
	text-decoration: none;
	text-align: center;
	opacity: 0.65;
	padding: 0 0 18px 10px;
	color: #FFF;
	font-style: normal;
	font-size: 28px;
	font-family: Arial, Baskerville, monospace;
}

.mfp-close:hover,
.mfp-close:focus {
	opacity: 1;
}

.mfp-close:active {
	top: 1px;
}

.mfp-close-btn-in .mfp-close {
	color: #333;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
	color: #FFF;
	right: -6px;
	text-align: right;
	padding-right: 6px;
	width: 100%;
}

.mfp-counter {
	position: absolute;
	top: 0;
	right: 0;
	color: #CCC;
	font-size: 12px;
	line-height: 18px;
	white-space: nowrap;
}

.mfp-arrow {
	position: absolute;
	opacity: 0.65;
	margin: 0;
	top: 50%;
	margin-top: -55px;
	padding: 0;
	width: 90px;
	height: 110px;
	-webkit-tap-highlight-color: transparent;
}

.mfp-arrow:active {
	margin-top: -54px;
}

.mfp-arrow:hover,
.mfp-arrow:focus {
	opacity: 1;
}

.mfp-arrow:before,
.mfp-arrow:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	top: 0;
	margin-top: 35px;
	margin-left: 35px;
	border: medium inset transparent;
}

.mfp-arrow:after {
	border-top-width: 13px;
	border-bottom-width: 13px;
	top: 8px;
}

.mfp-arrow:before {
	border-top-width: 21px;
	border-bottom-width: 21px;
	opacity: 0.7;
}

.mfp-arrow-left {
	left: 0;
}

.mfp-arrow-left:after {
	border-right: 17px solid #FFF;
	margin-left: 31px;
}

.mfp-arrow-left:before {
	margin-left: 25px;
	border-right: 27px solid #3F3F3F;
}

.mfp-arrow-right {
	right: 0;
}

.mfp-arrow-right:after {
	border-left: 17px solid #FFF;
	margin-left: 39px;
}

.mfp-arrow-right:before {
	border-left: 27px solid #3F3F3F;
}

.mfp-iframe-holder {
	padding-top: 40px;
	padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
	line-height: 0;
	width: 100%;
	max-width: 900px;
}

.mfp-iframe-holder .mfp-close {
	top: -40px;
}

.mfp-iframe-scaler {
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	        box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	background: #000;
}

/* Main image in popup */
img.mfp-img {
	width: auto;
	max-width: 100%;
	height: auto;
	display: block;
	line-height: 0;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	padding: 40px 0 40px;
	margin: 0 auto;
}

/* The shadow behind the image */
.mfp-figure {
	line-height: 0;
}

.mfp-figure:after {
	content: "";
	position: absolute;
	left: 0;
	top: 40px;
	bottom: 40px;
	display: block;
	right: 0;
	width: auto;
	height: auto;
	z-index: -1;
	-webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	        box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	background: #444;
}

.mfp-figure small {
	color: #BDBDBD;
	display: block;
	font-size: 12px;
	line-height: 14px;
}

.mfp-figure figure {
	margin: 0;
}

.mfp-bottom-bar {
	margin-top: -36px;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	cursor: auto;
}

.mfp-title {
	text-align: left;
	line-height: 18px;
	color: #F3F3F3;
	word-wrap: break-word;
	padding-right: 36px;
}

.mfp-image-holder .mfp-content {
	max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
	cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
	/**
	     * Remove all paddings around the image on small screen
	     */
	.mfp-img-mobile .mfp-image-holder {
		padding-left: 0;
		padding-right: 0;
	}
	.mfp-img-mobile img.mfp-img {
		padding: 0;
	}
	.mfp-img-mobile .mfp-figure:after {
		top: 0;
		bottom: 0;
	}
	.mfp-img-mobile .mfp-figure small {
		display: inline;
		margin-left: 5px;
	}
	.mfp-img-mobile .mfp-bottom-bar {
		background: rgba(0, 0, 0, 0.6);
		bottom: 0;
		margin: 0;
		top: auto;
		padding: 3px 5px;
		position: fixed;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
	}
	.mfp-img-mobile .mfp-bottom-bar:empty {
		padding: 0;
	}
	.mfp-img-mobile .mfp-counter {
		right: 5px;
		top: 3px;
	}
	.mfp-img-mobile .mfp-close {
		top: 0;
		right: 0;
		width: 35px;
		height: 35px;
		line-height: 35px;
		background: rgba(0, 0, 0, 0.6);
		position: fixed;
		text-align: center;
		padding: 0;
	}
}
@media all and (max-width: 900px) {
	.mfp-arrow {
		-webkit-transform: scale(0.75);
		transform: scale(0.75);
	}
	.mfp-arrow-left {
		-webkit-transform-origin: 0;
		transform-origin: 0;
	}
	.mfp-arrow-right {
		-webkit-transform-origin: 100%;
		transform-origin: 100%;
	}
	.mfp-container {
		padding-left: 6px;
		padding-right: 6px;
	}
}
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
	 ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15; /* 1 */
	-webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
	 ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
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: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	-webkit-box-sizing: content-box;
	        box-sizing: content-box; /* 1 */
	height: 0; /* 1 */
	overflow: visible; /* 2 */
}

/**
 * 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;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none; /* 1 */
	text-decoration: underline; /* 2 */
	-webkit-text-decoration: underline dotted;
	        text-decoration: underline dotted; /* 2 */
}

/**
 * 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%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit; /* 1 */
	font-size: 100%; /* 1 */
	line-height: 1.15; /* 1 */
	margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 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 {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box; /* 1 */
	color: inherit; /* 2 */
	display: table; /* 1 */
	max-width: 100%; /* 1 */
	padding: 0; /* 3 */
	white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box; /* 1 */
	padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
	-webkit-appearance: textfield; /* 1 */
	outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-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 {
	-webkit-appearance: button; /* 1 */
	font: inherit; /* 2 */
}

/* Interactive
	 ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
	font-family: sans-serif;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
}

h1, h2, h3, h4, h5, h6 {
	clear: both;
	margin-top: 0;
	font-size: 24px;
	line-height: 20px;
	margin-bottom: 20px;
}
@media (min-width: 750px) {
	h1, h2, h3, h4, h5, h6 {
		font-size: 48px;
		line-height: 40px;
	}
}

p {
	margin-top: 0;
	margin-bottom: 20px;
}

dfn, cite, em, i {
	font-style: italic;
}

blockquote {
	margin: 0 20px;
}

address {
	margin: 0 0 20px;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 16px;
	line-height: 20px;
	margin-bottom: 20px;
	max-width: 100%;
	overflow: auto;
	padding: 20px;
}

code, kbd, tt, var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}

abbr, acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark, ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

html {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

*,
*:before,
*:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	-webkit-box-sizing: inherit;
	        box-sizing: inherit;
}

body {
	background: #f2f2f2; /* Fallback for when there is no custom background color defined. */
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul, ol {
	margin: 0 0 1em 0em;
	padding: 0 0 0 1em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}

figure {
	margin: 1em 0; /* Extra wide images within figure tags don't overflow the content area. */
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

button,
input[type=button],
input[type=reset],
input[type=submit] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1;
	padding: 0.6em 1em 0.4em;
}
button:hover,
input[type=button]:hover,
input[type=reset]:hover,
input[type=submit]:hover {
	border-color: #ccc #bbb #aaa;
}
button:active, button:focus,
input[type=button]:active,
input[type=button]:focus,
input[type=reset]:active,
input[type=reset]:focus,
input[type=submit]:active,
input[type=submit]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=range],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=range]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
	color: var(--text-color, black);
}
a:visited {
	color: purple;
}
a:hover, a:focus, a:active {
	color: var(--accent-color, #00E5D1);
}
a:focus {
	outline: thin dotted;
}
a:hover, a:active {
	outline: 0;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
	clear: both;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	text-transform: uppercase;
	line-height: 20px;
	font-size: 16px;
	font-weight: 700;
	border-top: 3px solid var(--brand-black, black);
}
@media (min-width: 960px) {
	.main-navigation {
		padding-top: 7px;
		line-height: 1.2;
		font-size: 12px;
	}
}
.main-navigation > div {
	width: 100%;
}
.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}
.main-navigation ul ul {
	padding-left: 10px;
	display: none;
	overflow: hidden;
	border-bottom: 1px solid var(--brand-black, black);
}
.main-navigation ul ul li {
	opacity: 0;
	-webkit-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}
@media (min-width: 960px) {
	.main-navigation ul ul li:first-of-type {
		margin-top: 2px;
	}
	.main-navigation ul ul li:last-of-type {
		margin-bottom: 20px;
	}
}
.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	display: block;
}
.main-navigation ul li:hover > ul li,
.main-navigation ul li.focus > ul li {
	opacity: 1;
}
.main-navigation a {
	display: block;
	text-decoration: none;
	color: var(--brand-black, black);
	line-height: 18px;
	-webkit-transition: all 0.15s ease-in-out;
	transition: all 0.15s ease-in-out;
}
.main-navigation a:hover {
	opacity: 0.75;
}
.main-navigation .current_page_item > a,
.main-navigation .current-menu-item > a,
.main-navigation .current-page-ancestor > a,
.main-navigation .current-menu-ancestor > a {
	position: relative;
}
.main-navigation .current_page_item > a:before,
.main-navigation .current-menu-item > a:before,
.main-navigation .current-page-ancestor > a:before,
.main-navigation .current-menu-ancestor > a:before {
	content: "";
	display: block;
	background-color: var(--accent-color, #00E5D1);
	position: absolute;
	top: 0;
	left: -10px;
	width: 6px;
	height: calc(100% - 1px);
}

/* Small menu. */
.menu-toggle {
	display: block;
}

.main-navigation.toggled {
	position: absolute;
	background-color: white;
	top: 180px;
	left: 0;
	width: 100%;
	height: calc(100vh - 200px);
	z-index: 100;
	padding: 20px 0;
}
.main-navigation.toggled .nav-menu {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 10px;
}

@media (min-width: 960px) {
	.menu-toggle {
		display: none;
	}
	.main-navigation ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		gap: 2px;
	}
}
.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
	margin: 0 0 1.5em;
	overflow: hidden;
}
.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	float: left;
	width: 50%;
}
.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	float: right;
	text-align: right;
	width: 50%;
}

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}
.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	-webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	        box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0;
}

.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: "";
	display: table;
	table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both;
}

* {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

body {
	background: black;
	color: var(--text-color, black);
	font-family: "DM Sans", sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	line-height: 1.25;
}
body.menu-active {
	overflow: hidden;
}
body.overlay .site {
	position: relative;
}
body.overlay .site:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: 10px 10px;
	background-image: linear-gradient(to right, aqua 1px, transparent 1px), linear-gradient(to bottom, aqua 1px, transparent 1px);
	pointer-events: none;
	opacity: 0.2;
}
body.overlay.admin-bar .site:before {
	top: 32px;
}

img {
	display: block;
}

.hidden {
	display: none;
}

strong {
	font-weight: 700;
}

.site {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 20px;
}
@media (min-width: 960px) {
	.site {
		display: grid;
		grid-template-columns: 210px 1fr;
		grid-template-rows: 1fr 50px;
		grid-column-gap: 10px;
		grid-row-gap: 10px;
	}
}

.site-header {
	grid-area: 1/1/3/2;
}

.site-content {
	grid-area: 1/2/2/3;
}

.site-footer {
	grid-area: 2/2/3/3;
}

.site {
	min-height: 100vh;
	background: white;
	max-width: 1360px;
	margin: 0 auto;
	padding: 20px;
	position: relative;
}
@media (min-width: 960px) {
	.site {
		padding: 20px 20px 0 40px;
	}
}

.site-content {
	position: relative;
	background-color: #F5F6F8;
	padding: 10px;
}
@media (min-width: 960px) {
	.site-content {
		padding: 20px;
		padding: 20px 60px 20px 20px;
	}
}

.top-button {
	position: fixed;
	bottom: 20px;
	right: 30px;
	z-index: 9999;
	font-weight: 700;
	text-transform: uppercase;
	text-decoration: none;
	border-bottom: 3px solid var(--text-color, black);
	background-color: rgba(255, 255, 255, 0.5);
	padding: 10px;
}
.top-button:hover {
	border-bottom-color: var(--accent-color, #00E5D1);
}
@media screen and (min-width: 1360px) {
	.top-button {
		padding: 0;
		right: unset;
		left: calc(50% + 680px);
		-webkit-transform: translateX(calc(-100% - 40px));
		        transform: translateX(calc(-100% - 40px));
	}
}
@media (min-width: 960px) {
	.top-button {
		padding: 0;
		top: 210px;
		bottom: unset;
		background-color: transparent;
	}
}

.actions {
	position: absolute;
	bottom: 10px;
	right: 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 5px;
	opacity: 0;
	-webkit-transition: opacity 0.2s ease-in-out;
	transition: opacity 0.2s ease-in-out;
}

.download,
.clipboard {
	display: block;
	height: 0;
	width: 24px;
	padding-top: 24px;
	overflow: hidden;
	background-color: rgba(0, 0, 0, 0.5);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 16px 16px;
	-webkit-transition: background-color 0.2s ease-in-out;
	transition: background-color 0.2s ease-in-out;
}
.download:hover,
.clipboard:hover {
	background-color: black;
}

.download {
	background-image: url(assets/images/download.svg);
}

.clipboard {
	background-image: url(assets/images/link.svg);
}

.background-image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.background-image img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
}

.image-object-fit {
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}
.image-object-fit img {
	opacity: 0;
}

.brand-nav-wrapper {
	position: sticky;
	top: 20px;
	z-index: 100;
}

.brand-details {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	height: 180px;
	padding: 20px 0;
}
@media (min-width: 960px) {
	.brand-details {
		height: 210px;
		padding: 20px 0 7px;
	}
}
.brand-details .logo {
	margin-bottom: auto;
}
.brand-details p {
	font-size: 10px;
	line-height: 1.2;
	margin: 0;
}

.hamburger .hamburger-inner,
.hamburger .hamburger-inner::before,
.hamburger .hamburger-inner::after {
	background-color: var(--text-color, black);
}

.hamburger {
	position: absolute;
	top: 120px;
	right: -15px;
}
.hamburger strong {
	display: none;
}
.toggled .hamburger {
	top: -64px;
	right: -15px;
}

.introduction {
	position: relative;
}
.content-area.light-text .introduction {
	color: white;
}
.content-area.light-text .introduction a {
	color: white;
}
.content-area.light-text .introduction .intro-copy {
	border-top: 3px solid white;
}
.introduction .intro-copy {
	border-top: 3px solid var(--text-color, black);
	padding-top: 20px;
	font-size: 18px;
	line-height: 24px;
}
@media (min-width: 960px) {
	.introduction .intro-copy {
		padding-right: calc(33.3333333333% + 10px);
		font-size: 26px;
		line-height: 28px;
	}
}

.site-footer {
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
}
.site-footer p {
	margin: 0;
}
.site-footer a {
	color: var(--text-color, black);
	-webkit-transition: color 0.5s;
	transition: color 0.5s;
}
.site-footer a:hover {
	color: var(--accent-color, #00E5D1);
}
.site-footer .footer-content {
	border-top: 1px solid var(--text-color, black);
	padding-top: 10px;
}

.page-header {
	padding-bottom: 10px;
}
@media (min-width: 960px) {
	.page-header {
		height: 190px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: 10px;
	}
	.page-header > * {
		width: calc(50% - 20px + 10px);
	}
}
.page-header .title {
	font-size: 60px;
	line-height: 64px;
}
@media (min-width: 960px) {
	.page-header .title {
		font-size: 60px;
		line-height: 64px;
	}
}

.section-nav {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-column-gap: 10px;
	   -moz-column-gap: 10px;
	        column-gap: 10px;
	row-gap: 0;
	margin-bottom: 20px;
}
.section-nav a {
	display: inline-block;
}
.section-nav a:after {
	content: " /";
}

.title-copy {
	border-top: 1px solid var(--text-color, black);
	padding-top: 13px;
}
.title-copy .title {
	font-size: 30px;
	line-height: 32px;
	margin-bottom: 20px;
}
.title-copy .subtitle {
	font-weight: 400;
	font-size: 26px;
	line-height: 28px;
	margin-bottom: 20px;
}
.title-copy.text-width-33 .title,
.title-copy.text-width-33 .subtitle,
.title-copy.text-width-33 .copy-columns {
	width: calc(50% - 10px);
}
@media (min-width: 960px) {
	.title-copy.text-width-33 .title,
	.title-copy.text-width-33 .subtitle,
	.title-copy.text-width-33 .copy-columns {
		width: calc(33.3333333333% - 10px);
	}
}
.title-copy.text-width-50 .title,
.title-copy.text-width-50 .subtitle,
.title-copy.text-width-50 .copy-columns {
	width: calc(75% - 10px);
}
@media (min-width: 960px) {
	.title-copy.text-width-50 .title,
	.title-copy.text-width-50 .subtitle,
	.title-copy.text-width-50 .copy-columns {
		width: calc(50% - 10px);
	}
}
.title-copy.text-width-66 .title,
.title-copy.text-width-66 .subtitle,
.title-copy.text-width-66 .copy-columns {
	width: calc(75% - 10px);
}
@media (min-width: 960px) {
	.title-copy.text-width-66 .title,
	.title-copy.text-width-66 .subtitle,
	.title-copy.text-width-66 .copy-columns {
		width: calc(66.6666666667% - 10px);
	}
}
.title-copy.two-columns .title,
.title-copy.two-columns .subtitle,
.title-copy.two-columns .copy-columns {
	width: 100%;
}
.title-copy .copy-columns.two-columns {
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}
@media (min-width: 960px) {
	.title-copy .copy-columns.two-columns {
		gap: 20px;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		margin-bottom: 20px;
	}
}
.title-copy .copy-columns.two-columns .copy {
	width: calc(100% - 10px);
}
.title-copy .copy-columns.size-small {
	font-size: 12px;
}
.title-copy .copy-columns.size-large {
	font-size: 20px;
}

.single-image {
	position: relative;
	margin-bottom: 20px;
}
.single-image:hover .actions {
	opacity: 1;
}

.image-text-column {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 20px;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	gap: 10px;
}
.image-text-column > * {
	width: calc(50% - 5px);
}
@media (min-width: 960px) {
	.image-text-column {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		gap: 20px;
	}
	.image-text-column > * {
		width: calc(50% - 10px);
	}
	.image-text-column.reverse-order {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: row-reverse;
		        flex-direction: row-reverse;
	}
}

.image-text-blocks {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 20px;
}
@media (min-width: 960px) {
	.image-text-blocks {
		gap: 20px;
	}
}
.image-text-blocks .content-block {
	font-size: 12px;
	font-weight: 700;
}
.image-text-blocks.blocks-2 .content-block {
	width: calc(50% - 10px + 5px);
}
@media (min-width: 960px) {
	.image-text-blocks.blocks-2 .content-block {
		width: calc(50% - 20px + 10px);
	}
}
.image-text-blocks.blocks-3 .content-block {
	width: calc(50% - 10px + 5px);
}
@media (min-width: 960px) {
	.image-text-blocks.blocks-3 .content-block {
		width: calc(33.3333333333% - 20px + 6.6666666667px);
	}
}
.image-text-blocks.blocks-4 .content-block {
	width: calc(50% - 10px + 5px);
}
@media (min-width: 960px) {
	.image-text-blocks.blocks-4 .content-block {
		width: calc(25% - 20px + 5px);
	}
}
.image-text-blocks img {
	margin-bottom: 10px;
}
.image-text-blocks .text p:last-of-type {
	margin-bottom: 0;
}
.image-text-blocks .image {
	position: relative;
}
.image-text-blocks .image:hover .actions {
	opacity: 1;
}

.text-and-laptop {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 10px;
	margin-bottom: 20px;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}
.text-and-laptop > * {
	width: calc(50% - 10px + 5px);
}
@media (min-width: 960px) {
	.text-and-laptop {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		gap: 20px;
	}
	.text-and-laptop > * {
		width: calc(50% - 20px + 10px);
	}
}
.text-and-laptop .text-group h3 {
	font-size: 26px;
	line-height: 28px;
}
.text-and-laptop .laptop-group {
	position: relative;
}
.text-and-laptop .laptop-frame {
	position: relative;
	background: url(assets/images/macbook-straight.png) center top no-repeat;
	background-size: contain;
	aspect-ratio: 2000/1187;
}
.text-and-laptop .laptop-content {
	padding: 16px 13% 20px;
}
@media (min-width: 960px) {
	.text-and-laptop .laptop-content {
		padding: 16px 60px 20px;
	}
}

.color-chips {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	gap: 20px;
}
.color-chips > * {
	width: calc(50% - 20px + 10px);
}
@media (min-width: 960px) {
	.color-chips > * {
		width: calc(25% - 20px + 5px);
	}
}
@media (min-width: 1200px) {
	.color-chips > * {
		width: calc(16.6666666667% - 20px + 3.3333333333px);
	}
}

.hex {
	text-transform: uppercase;
}

.color-chip {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.color-info {
	margin-top: auto;
	font-size: 12px;
	font-weight: 700;
}

.circle-swatch {
	border-radius: 50%;
	width: 100%;
	max-width: 120px;
	aspect-ratio: 1/1;
	margin-bottom: 20px;
}
.circle-swatch.add-border {
	border: 1px solid #ccc;
}

.gradient-swatch {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	margin-bottom: 30px;
	width: 80px;
}

.gradient-chip {
	font-size: 10px;
	line-height: 0.9;
	height: 30px;
	position: relative;
	z-index: 1;
	text-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.gradient-chip span {
	position: relative;
}
.gradient-chip .gradient-chip-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

div[class*=layout-] {
	margin-bottom: 10px;
}
div[class*=layout-] .tall-slim img {
	aspect-ratio: 242/369;
	-o-object-fit: cover;
	   object-fit: cover;
}

.layout-1 {
	display: grid;
	grid-template-columns: repeat(2, calc(50% - 5px));
	grid-template-rows: repeat(3, 1fr);
	grid-column-gap: 10px;
	grid-row-gap: 10px;
}
.layout-1 .div1 {
	grid-area: 1/1/2/3;
}
.layout-1 .div2 {
	grid-area: 2/1/3/2;
}
.layout-1 .div3 {
	grid-area: 2/2/3/3;
}
.layout-1 .div4 {
	grid-area: 3/1/4/2;
}
.layout-1 .div5 {
	grid-area: 3/2/4/3;
}
.layout-1 > * {
	position: relative;
}
.layout-1 > *:hover .actions {
	opacity: 1;
}
.layout-1 .div1 {
	position: relative;
}
.layout-1 .div1 img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
}

@media screen and (min-width: 760px) {
	.layout-1 {
		display: grid;
		grid-template-columns: calc(50% - 5px) repeat(2, 1fr);
		grid-template-rows: repeat(2, 1fr);
		grid-column-gap: 10px;
		grid-row-gap: 10px;
	}
	.layout-1 .div1 {
		grid-area: 1/1/3/2;
	}
	.layout-1 .div2 {
		grid-area: 1/2/2/3;
	}
	.layout-1 .div3 {
		grid-area: 1/3/2/4;
	}
	.layout-1 .div4 {
		grid-area: 2/2/3/3;
	}
	.layout-1 .div5 {
		grid-area: 2/3/3/4;
	}
}
.layout-2 {
	display: grid;
	grid-template-columns: repeat(2, calc(50% - 5px));
	grid-template-rows: repeat(4, 1fr);
	grid-column-gap: 10px;
	grid-row-gap: 10px;
}
.layout-2 .div1 {
	grid-area: 1/1/2/2;
}
.layout-2 .div2 {
	grid-area: 2/1/3/2;
}
.layout-2 .div3 {
	grid-area: 1/2/3/3;
}
.layout-2 .div4 {
	grid-area: 3/2/4/3;
}
.layout-2 .div5 {
	grid-area: 4/2/5/3;
}
.layout-2 .div6 {
	grid-area: 3/1/5/2;
}
.layout-2 > * {
	position: relative;
}
.layout-2 > *:hover .actions {
	opacity: 1;
}

@media screen and (min-width: 760px) {
	.layout-2 {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		grid-template-rows: repeat(2, 1fr);
		grid-column-gap: 10px;
		grid-row-gap: 10px;
	}
	.layout-2 .div1 {
		grid-area: 1/1/2/2;
	}
	.layout-2 .div2 {
		grid-area: 2/1/3/2;
	}
	.layout-2 .div3 {
		grid-area: 1/2/3/3;
	}
	.layout-2 .div4 {
		grid-area: 1/3/2/4;
	}
	.layout-2 .div5 {
		grid-area: 2/3/3/4;
	}
	.layout-2 .div6 {
		grid-area: 1/4/3/5;
	}
}
.layout-3 {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: repeat(3, auto);
	grid-column-gap: 10px;
	grid-row-gap: 10px;
}
.layout-3 .div1 {
	grid-area: 1/1/2/2;
}
.layout-3 .div2 {
	grid-area: 1/2/2/3;
}
.layout-3 .div3 {
	grid-area: 2/1/3/2;
}
.layout-3 .div4 {
	grid-area: 3/1/4/2;
}
.layout-3 .div5 {
	grid-area: 2/2/4/3;
}
.layout-3 > * {
	position: relative;
}
.layout-3 > *:hover .actions {
	opacity: 1;
}

@media screen and (min-width: 760px) {
	.layout-3 {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		grid-template-rows: repeat(2, 1fr);
		grid-column-gap: 10px;
		grid-row-gap: 10px;
	}
	.layout-3 .div1 {
		grid-area: 1/1/3/2;
	}
	.layout-3 .div2 {
		grid-area: 1/2/3/3;
	}
	.layout-3 .div3 {
		grid-area: 1/3/2/4;
	}
	.layout-3 .div4 {
		grid-area: 2/3/3/4;
	}
	.layout-3 .div5 {
		grid-area: 1/4/3/5;
	}
}
.video {
	width: 100%;
	margin-bottom: 20px;
}

.embed-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%;
}
.embed-container iframe,
.embed-container object,
.embed-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.image-text-supporting-image {
	display: grid;
	grid-template-columns: repeat(2, 50%);
	grid-template-rows: repeat(2, auto);
	grid-column-gap: 10px;
	grid-row-gap: 10px;
	margin-bottom: 20px;
	width: calc(100% - 10px);
}
.image-text-supporting-image .large-image {
	grid-area: 1/1/3/2;
}
.image-text-supporting-image .text {
	grid-area: 1/2/2/3;
}
.image-text-supporting-image .supporting-image {
	grid-area: 2/2/3/3;
}
.image-text-supporting-image .supporting-image {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
}
.image-text-supporting-image .supporting-image img.width-third {
	width: calc(33.333% - 10px);
}
.image-text-supporting-image .supporting-image img.width-half {
	width: calc(50% - 10px);
}
.image-text-supporting-image .supporting-image img.width-two-thirds {
	width: calc(66.666% - 10px);
}
.image-text-supporting-image .supporting-image img.width-full {
	width: 100%;
}
.image-text-supporting-image .text {
	font-size: 12px;
	line-height: 14px;
	font-weight: 700;
}
.image-text-supporting-image h3 {
	font-size: 16px;
	line-height: 18px;
	margin-bottom: 0;
}

.text-image-tiles {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 10px;
	margin-bottom: 20px;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}
.text-image-tiles > * {
	width: calc(50% - 10px + 5px);
}
@media (min-width: 960px) {
	.text-image-tiles {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
		gap: 20px;
	}
	.text-image-tiles > * {
		width: calc(50% - 20px + 10px);
	}
}
.text-image-tiles h3 {
	font-size: 26px;
	line-height: 28px;
}
.text-image-tiles .tiled-images {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	gap: 10px;
}
.text-image-tiles .tiled-images > * {
	width: calc(50% - 20px + 10px);
}
.text-image-tiles .tiled-images.count-three > * {
	width: calc(33.3333333333% - 20px + 6.6666666667px);
}
.text-image-tiles .caption {
	font-weight: 700;
}

:root {
	--swiper-pagination-bottom: 20px;
	--swiper-pagination-bullet-height: 10px;
	--swiper-pagination-bullet-size: 10px;
	--swiper-pagination-bullet-inactive-color: rgb(118, 118, 118);
	--swiper-pagination-color: white;
	--swiper-theme-color: transparent;
	--swiper-pagination-bullet-horizontal-gap: 5px;
	--swiper-pagination-bullet-inactive-opacity: 1;
}

.carousel-slider {
	overflow: hidden;
	margin-bottom: 20px;
	max-width: 1000px;
}
.carousel-slider .swiper-slide {
	width: 100% !important;
}

.slider {
	position: relative;
}
.slider img {
	width: 100%;
}

.slide-pagination {
	position: absolute;
	z-index: 10;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.swiper-pagination-bullet {
	border: 1px solid rgb(118, 118, 118);
}

.swiper-pagination-bullet-active {
	border: 1px solid black;
}/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLnNjc3MiLCJ2ZW5kb3IvaGFtYnVyZ2Vycy9faGFtYnVyZ2Vycy5zY3NzIiwidmVuZG9yL2hhbWJ1cmdlcnMvX2Jhc2Uuc2NzcyIsInN0eWxlLmNzcyIsInZlbmRvci9oYW1idXJnZXJzL3R5cGVzL19zcXVlZXplLnNjc3MiLCJ2ZW5kb3IvX21hZ25pZmljLXBvcHVwLnNjc3MiLCJfbm9ybWFsaXplLnNjc3MiLCJ0eXBvZ3JhcGh5L190eXBvZ3JhcGh5LnNjc3MiLCJ2YXJpYWJsZXMtc2l0ZS9fY29sb3JzLnNjc3MiLCJ2YXJpYWJsZXMtc2l0ZS9fdHlwb2dyYXBoeS5zY3NzIiwibWl4aW5zL19taXhpbnMtbWFzdGVyLnNjc3MiLCJ0eXBvZ3JhcGh5L19oZWFkaW5ncy5zY3NzIiwidmVuZG9yL2JyZWFrcG9pbnQvX2JyZWFrcG9pbnQuc2NzcyIsInR5cG9ncmFwaHkvX2NvcHkuc2NzcyIsImVsZW1lbnRzL19lbGVtZW50cy5zY3NzIiwiZWxlbWVudHMvX2xpc3RzLnNjc3MiLCJlbGVtZW50cy9fdGFibGVzLnNjc3MiLCJmb3Jtcy9fYnV0dG9ucy5zY3NzIiwiZm9ybXMvX2ZpZWxkcy5zY3NzIiwibmF2aWdhdGlvbi9fbmF2aWdhdGlvbi5zY3NzIiwibmF2aWdhdGlvbi9fbGlua3Muc2NzcyIsIm5hdmlnYXRpb24vX21lbnVzLnNjc3MiLCJtb2R1bGVzL19hY2Nlc3NpYmlsaXR5LnNjc3MiLCJtb2R1bGVzL19hbGlnbm1lbnRzLnNjc3MiLCJtb2R1bGVzL19jbGVhcmluZ3Muc2NzcyIsImxheW91dC9fYmFzZS5zY3NzIiwidmFyaWFibGVzLXNpdGUvX3N0cnVjdHVyZS5zY3NzIiwibGF5b3V0L19oZWFkZXIuc2NzcyIsImxheW91dC9faW50cm9kdWN0aW9uLnNjc3MiLCJsYXlvdXQvX2Zvb3Rlci5zY3NzIiwiY29tcG9uZW50cy9fcGFnZS1oZWFkZXIuc2NzcyIsImNvbXBvbmVudHMvX3RpdGxlLWNvcHkuc2NzcyIsImNvbXBvbmVudHMvX3NpbmdsZS1pbWFnZS5zY3NzIiwiY29tcG9uZW50cy9faW1hZ2UtdGV4dC1jb2x1bW4uc2NzcyIsImNvbXBvbmVudHMvX2ltYWdlLXRleHQtYmxvY2tzLnNjc3MiLCJjb21wb25lbnRzL19pbWFnZS1hbmQtbGFwdG9wLnNjc3MiLCJjb21wb25lbnRzL19jb2xvcnMuc2NzcyIsImNvbXBvbmVudHMvX2dhbGxlcnkuc2NzcyIsImNvbXBvbmVudHMvX3ZpZGVvLnNjc3MiLCJjb21wb25lbnRzL19pbWFnZS10ZXh0LXN1cHBvcnRpbmctaW1hZ2Uuc2NzcyIsImNvbXBvbmVudHMvX3RleHQtaW1hZ2UtdGlsZXMuc2NzcyIsImNvbXBvbmVudHMvX3NsaWRlci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Q0FBQTtBQ0NBOzs7Ozs7RUFBQTtBQ0NBO0NBQ0Usa0JBQUE7Q0FDQSxxQkFBQTtDQUNBLGVBQUE7Q0FFQSxvREFBQTtDQUFBLDRDQUFBO0NBQUEsb0NBQUE7Q0FBQSxvREFBQTtDQUNBLGtDRFcyQztTQ1gzQywwQkRXMkM7Q0NWM0MsMENEVzJDO1NDWDNDLGtDRFcyQztDQ1IzQyxhQUFBO0NBQ0EsY0FBQTtDQUNBLG9CQUFBO0NBQ0EsNkJBQUE7Q0FDQSxTQUFBO0NBQ0EsU0FBQTtDQUNBLGlCQUFBO0FDYUY7QURYRTtDQUtJLFlEUHVDO0FFZ0I3Qzs7QURKQTtDQUNFLFdEbEIyQztDQ21CM0MsWUFBQTtDQUNBLHFCQUFBO0NBQ0Esa0JBQUE7QUNPRjs7QURKQTtDQUNFLGNBQUE7Q0FDQSxRQUFBO0NBQ0EsZ0JBQUE7QUNPRjtBRExFO0NBR0UsV0RoQ3lDO0NDaUN6QyxXRGhDeUM7Q0NpQ3pDLHNCRC9CeUM7Q0NnQ3pDLGtCRC9CeUM7Q0NnQ3pDLGtCQUFBO0NBQ0EsOENBQUE7Q0FBQSxzQ0FBQTtDQUFBLDhCQUFBO0NBQUEsaURBQUE7Q0FDQSxrQ0FBQTtTQUFBLDBCQUFBO0NBQ0Esd0NBQUE7U0FBQSxnQ0FBQTtBQ0tKO0FERkU7Q0FFRSxXQUFBO0NBQ0EsY0FBQTtBQ0dKO0FE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bkVBO0NBQ0ksa0JBQUE7QXRDZ29FSjtBc0M5bkVJO0NBQ0ksV0FBQTtBdENnb0VSOztBc0M1bkVBO0NBQ0ksa0JBQUE7Q0FDQSxXQUFBO0NBQ0Esb0JBQUE7Q0FBQSxvQkFBQTtDQUFBLGFBQUE7Q0FDQSx3QkFBQTtLQUFBLHFCQUFBO1NBQUEsdUJBQUE7QXRDK25FSjs7QXNDNW5FQTtDQUVJLG9DQUFBO0F0QzhuRUo7O0FzQzNuRUE7Q0FDSSx1QkFBQTtBdEM4bkVKIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuVGhlbWUgTmFtZTogQnJhbmRBZmZpbml0eVxuQXV0aG9yOiBqYWtlIC8gZGVraXJ1XG5BdXRob3IgVVJJOiBodHRwczovL2Rla2lydS51a1xuRGVzY3JpcHRpb246IFdQIHRoZW1lXG5WZXJzaW9uOiAxLjAuMFxuTGljZW5zZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjIgb3IgbGF0ZXJcbkxpY2Vuc2UgVVJJOiBMSUNFTlNFXG5UZXh0IERvbWFpbjogZGVraXJ1XG4qL1xuXG5AaW1wb3J0ICd2YXJpYWJsZXMtc2l0ZS92YXJpYWJsZXMtc2l0ZSc7XG5cbkBpbXBvcnRcblx0J3ZlbmRvci9icmVha3BvaW50L2JyZWFrcG9pbnQnLFxuXHQndmVuZG9yL2hhbWJ1cmdlcnMvaGFtYnVyZ2VycycsXG5cdCd2ZW5kb3IvbWFnbmlmaWMtcG9wdXAnO1xuXG5AaW1wb3J0ICdtaXhpbnMvbWl4aW5zLW1hc3Rlcic7XG5AaW1wb3J0ICdub3JtYWxpemUnO1xuXG5AaW1wb3J0ICd0eXBvZ3JhcGh5L3R5cG9ncmFwaHknO1xuXG5AaW1wb3J0ICdlbGVtZW50cy9lbGVtZW50cyc7XG5cbkBpbXBvcnQgJ2Zvcm1zL2Zvcm1zJztcbkBpbXBvcnQgJ25hdmlnYXRpb24vbmF2aWdhdGlvbic7XG5cbkBpbXBvcnRcblx0J21vZHVsZXMvYWNjZXNzaWJpbGl0eScsXG5cdCdtb2R1bGVzL2FsaWdubWVudHMnLFxuXHQnbW9kdWxlcy9jbGVhcmluZ3MnO1xuXG5AaW1wb3J0IFxuXHQnbGF5b3V0L2Jhc2UnLFxuXHQnbGF5b3V0L2hlYWRlcicsXG5cdCdsYXlvdXQvaW50cm9kdWN0aW9uJyxcblx0J2xheW91dC9mb290ZXInO1xuXHRcbkBpbXBvcnRcblx0J2NvbXBvbmVudHMvcGFnZS1oZWFkZXInLFxuXHQnY29tcG9uZW50cy90aXRsZS1jb3B5Jyxcblx0J2NvbXBvbmVudHMvc2luZ2xlLWltYWdlJyxcblx0J2NvbXBvbmVudHMvaW1hZ2UtdGV4dC1jb2x1bW4nLFxuXHQnY29tcG9uZW50cy9pbWFnZS10ZXh0LWJsb2NrcycsXG5cdCdjb21wb25lbnRzL2ltYWdlLWFuZC1sYXB0b3AnLFxuXHQnY29tcG9uZW50cy9jb2xvcnMnLFxuXHQnY29tcG9uZW50cy9nYWxsZXJ5Jyxcblx0J2NvbXBvbmVudHMvdmlkZW8nLFxuXHQnY29tcG9uZW50cy9pbWFnZS10ZXh0LXN1cHBvcnRpbmctaW1hZ2UnLFxuXHQnY29tcG9uZW50cy90ZXh0LWltYWdlLXRpbGVzJyxcblx0J2NvbXBvbmVudHMvc2xpZGVyJ1xuOyIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qIVxuICogSGFtYnVyZ2Vyc1xuICogQGRlc2NyaXB0aW9uIFRhc3R5IENTUy1hbmltYXRlZCBoYW1idXJnZXJzXG4gKiBAYXV0aG9yIEpvbmF0aGFuIFN1aCBAam9uc3VoXG4gKiBAc2l0ZSBodHRwczovL2pvbnN1aC5jb20vaGFtYnVyZ2Vyc1xuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2pvbnN1aC9oYW1idXJnZXJzXG4gKi9cblxuLy8gU2V0dGluZ3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kaGFtYnVyZ2VyLXBhZGRpbmcteCAgICAgICAgICAgICAgICAgICAgICAgOiAxNXB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1wYWRkaW5nLXkgICAgICAgICAgICAgICAgICAgICAgIDogMTVweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItd2lkdGggICAgICAgICAgICAgICAgICAgICA6IDQwcHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAgICAgICAgICAgICAgICAgICAgOiA0cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgICAgICAgICAgICAgICAgICAgOiA2cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLWNvbG9yICAgICAgICAgICAgICAgICAgICAgOiAjZmZmICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzICAgICAgICAgICAgIDogNHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5ICAgICAgICAgICAgICAgICAgIDogMC43ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci10cmFuc2l0aW9uLWR1cmF0aW9uICAgICAgIDogMC4xNXMgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWhvdmVyLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWRlZmF1bHQ7XG5cbi8vIFRvIHVzZSBDU1MgZmlsdGVycyBhcyB0aGUgaG92ZXIgZWZmZWN0IGluc3RlYWQgb2Ygb3BhY2l0eSxcbi8vIHNldCAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgYXMgdHJ1ZSBhbmRcbi8vIGNoYW5nZSB0aGUgdmFsdWUgb2YgJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgYWNjb3JkaW5nbHkuXG4kaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXI6IGZhbHNlICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgICAgOiBvcGFjaXR5KDUwJSkgIWRlZmF1bHQ7XG5cbi8vIFR5cGVzIChSZW1vdmUgb3IgY29tbWVudCBvdXQgd2hhdCB5b3UgZG9u4oCZdCBuZWVkKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiRoYW1idXJnZXItdHlwZXM6IChcbiAgLy8gM2R4LFxuICAvLyAzZHgtcixcbiAgLy8gM2R5LFxuICAvLyAzZHktcixcbiAgLy8gM2R4eSxcbiAgLy8gM2R4eS1yLFxuICAvLyBhcnJvdyxcbiAgLy8gYXJyb3ctcixcbiAgLy8gYXJyb3dhbHQsXG4gIC8vIGFycm93YWx0LXIsXG4gIC8vIGFycm93dHVybixcbiAgLy8gYXJyb3d0dXJuLXIsXG4gIC8vIGJvcmluZyxcbiAgLy8gY29sbGFwc2UsXG4gIC8vIGNvbGxhcHNlLXIsXG4gIC8vIGVsYXN0aWMsXG4gIC8vIGVsYXN0aWMtcixcbiAgLy8gZW1waGF0aWMsXG4gIC8vIGVtcGhhdGljLXIsXG4gIC8vIG1pbnVzLFxuICAvLyBzbGlkZXIsXG4gIC8vIHNsaWRlci1yLFxuICAvLyBzcGluLFxuICAvLyBzcGluLXIsXG4gIC8vIHNwcmluZyxcbiAgLy8gc3ByaW5nLXIsXG4gIC8vIHN0YW5kLFxuICAvLyBzdGFuZC1yLFxuICBzcXVlZXplLFxuICAvLyB2b3J0ZXgsXG4gIC8vIHZvcnRleC1yXG4pICFkZWZhdWx0O1xuXG4vLyBCYXNlIEhhbWJ1cmdlciAoV2UgbmVlZCB0aGlzKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbXBvcnQgXCJiYXNlXCI7XG5cbi8vIEhhbWJ1cmdlciB0eXBlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEBpbXBvcnQgXCJ0eXBlcy8zZHhcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy8zZHgtclwiO1xuLy8gQGltcG9ydCBcInR5cGVzLzNkeVwiO1xuLy8gQGltcG9ydCBcInR5cGVzLzNkeS1yXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvM2R4eVwiO1xuLy8gQGltcG9ydCBcInR5cGVzLzNkeHktclwiO1xuLy8gQGltcG9ydCBcInR5cGVzL2Fycm93XCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvYXJyb3ctclwiO1xuLy8gQGltcG9ydCBcInR5cGVzL2Fycm93YWx0XCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvYXJyb3dhbHQtclwiO1xuLy8gQGltcG9ydCBcInR5cGVzL2Fycm93dHVyblwiO1xuLy8gQGltcG9ydCBcInR5cGVzL2Fycm93dHVybi1yXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvYm9yaW5nXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvY29sbGFwc2VcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9jb2xsYXBzZS1yXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvZWxhc3RpY1wiO1xuLy8gQGltcG9ydCBcInR5cGVzL2VsYXN0aWMtclwiO1xuLy8gQGltcG9ydCBcInR5cGVzL2VtcGhhdGljXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvZW1waGF0aWMtclwiO1xuLy8gQGltcG9ydCBcInR5cGVzL21pbnVzXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvc2xpZGVyXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvc2xpZGVyLXJcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9zcGluXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvc3Bpbi1yXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvc3ByaW5nXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvc3ByaW5nLXJcIjtcbi8vIEBpbXBvcnQgXCJ0eXBlcy9zdGFuZFwiO1xuLy8gQGltcG9ydCBcInR5cGVzL3N0YW5kLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zcXVlZXplXCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvdm9ydGV4XCI7XG4vLyBAaW1wb3J0IFwidHlwZXMvdm9ydGV4LXJcIjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENvb2tpbmcgdXAgYWRkaXRpb25hbCB0eXBlczpcbi8vXG4vLyBUaGUgU2FzcyBmb3IgZWFjaCBoYW1idXJnZXIgdHlwZSBzaG91bGQgYmUgbmVzdGVkXG4vLyBpbnNpZGUgYW4gQGlmIGRpcmVjdGl2ZSB0byBjaGVjayB3aGV0aGVyIG9yIG5vdFxuLy8gaXQgZXhpc3RzIGluICRoYW1idXJnZXItdHlwZXMgc28gb25seSB0aGUgQ1NTIGZvclxuLy8gaW5jbHVkZWQgdHlwZXMgYXJlIGdlbmVyYXRlZC5cbi8vXG4vLyBlLmcuIGhhbWJ1cmdlcnMvdHlwZXMvX25ldy10eXBlLnNjc3Ncbi8vXG4vLyBAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgbmV3LXR5cGUpIHtcbi8vICAgLmhhbWJ1cmdlci0tbmV3LXR5cGUge1xuLy8gICAgIC4uLlxuLy8gICB9XG4vLyB9XG4iLCIvLyBIYW1idXJnZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4uaGFtYnVyZ2VyIHtcbiAgcGFkZGluZzogJGhhbWJ1cmdlci1wYWRkaW5nLXkgJGhhbWJ1cmdlci1wYWRkaW5nLXg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIGZpbHRlcjtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJGhhbWJ1cmdlci1ob3Zlci10cmFuc2l0aW9uLWR1cmF0aW9uO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJGhhbWJ1cmdlci1ob3Zlci10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjtcblxuICAvLyBOb3JtYWxpemUgKDxidXR0b24+KVxuICBmb250OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgJjpob3ZlciB7XG4gICAgQGlmICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciA9PSB0cnVlIHtcbiAgICAgIGZpbHRlcjogJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIG9wYWNpdHk6ICRoYW1idXJnZXItaG92ZXItb3BhY2l0eTtcbiAgICB9XG4gIH1cbn1cblxuLmhhbWJ1cmdlci1ib3gge1xuICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcbiAgaGVpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDMgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhhbWJ1cmdlci1pbm5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogY2FsYygkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAvIC0yKTtcblxuICAmLFxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcbiAgICBoZWlnaHQ6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRoYW1idXJnZXItbGF5ZXItY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIH1cblxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBib3R0b206ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcbiAgfVxufVxuIiwiLyohXG5UaGVtZSBOYW1lOiBCcmFuZEFmZmluaXR5XG5BdXRob3I6IGpha2UgLyBkZWtpcnVcbkF1dGhvciBVUkk6IGh0dHBzOi8vZGVraXJ1LnVrXG5EZXNjcmlwdGlvbjogV1AgdGhlbWVcblZlcnNpb246IDEuMC4wXG5MaWNlbnNlOiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2MiBvciBsYXRlclxuTGljZW5zZSBVUkk6IExJQ0VOU0VcblRleHQgRG9tYWluOiBkZWtpcnVcbiovXG4vKiFcbiAqIEhhbWJ1cmdlcnNcbiAqIEBkZXNjcmlwdGlvbiBUYXN0eSBDU1MtYW5pbWF0ZWQgaGFtYnVyZ2Vyc1xuICogQGF1dGhvciBKb25hdGhhbiBTdWggQGpvbnN1aFxuICogQHNpdGUgaHR0cHM6Ly9qb25zdWguY29tL2hhbWJ1cmdlcnNcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9qb25zdWgvaGFtYnVyZ2Vyc1xuICovXG4uaGFtYnVyZ2VyIHtcblx0cGFkZGluZzogMTVweCAxNXB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgZmlsdGVyO1xuXHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcblx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcblx0Zm9udDogaW5oZXJpdDtcblx0Y29sb3I6IGluaGVyaXQ7XG5cdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyOiAwO1xuXHRtYXJnaW46IDA7XG5cdG92ZXJmbG93OiB2aXNpYmxlO1xufVxuLmhhbWJ1cmdlcjpob3ZlciB7XG5cdG9wYWNpdHk6IDAuNztcbn1cblxuLmhhbWJ1cmdlci1ib3gge1xuXHR3aWR0aDogNDBweDtcblx0aGVpZ2h0OiAyNHB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhhbWJ1cmdlci1pbm5lciB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR0b3A6IDUwJTtcblx0bWFyZ2luLXRvcDogLTJweDtcbn1cbi5oYW1idXJnZXItaW5uZXIsIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuXHR3aWR0aDogNDBweDtcblx0aGVpZ2h0OiA0cHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuXHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbn1cbi5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuXHRjb250ZW50OiBcIlwiO1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbi5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG5cdHRvcDogLTEwcHg7XG59XG4uaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG5cdGJvdHRvbTogLTEwcHg7XG59XG5cbi8qXG4gKiBTcXVlZXplXG4gKi9cbi5oYW1idXJnZXItLXNxdWVlemUgLmhhbWJ1cmdlci1pbm5lciB7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDc1cztcblx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xufVxuLmhhbWJ1cmdlci0tc3F1ZWV6ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuXHR0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMTJzIGVhc2UsIG9wYWNpdHkgMC4wNzVzIGVhc2U7XG59XG4uaGFtYnVyZ2VyLS1zcXVlZXplIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcblx0dHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjEycyBlYXNlLCB0cmFuc2Zvcm0gMC4wNzVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xufVxuLmhhbWJ1cmdlci0tc3F1ZWV6ZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG5cdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcblx0dHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG5cdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbn1cbi5oYW1idXJnZXItLXNxdWVlemUuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG5cdHRvcDogMDtcblx0b3BhY2l0eTogMDtcblx0dHJhbnNpdGlvbjogdG9wIDAuMDc1cyBlYXNlLCBvcGFjaXR5IDAuMDc1cyAwLjEycyBlYXNlO1xufVxuLmhhbWJ1cmdlci0tc3F1ZWV6ZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuXHRib3R0b206IDA7XG5cdHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG5cdHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgZWFzZSwgdHJhbnNmb3JtIDAuMDc1cyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbn1cblxuLyogTWFnbmlmaWMgUG9wdXAgQ1NTICovXG4ubWZwLWJnIHtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHR6LWluZGV4OiAxMDQyO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdGJhY2tncm91bmQ6ICMwYjBiMGI7XG5cdG9wYWNpdHk6IDAuODtcbn1cblxuLm1mcC13cmFwIHtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHR6LWluZGV4OiAxMDQzO1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcblx0LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5tZnAtY29udGFpbmVyIHtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGxlZnQ6IDA7XG5cdHRvcDogMDtcblx0cGFkZGluZzogMCA4cHg7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5tZnAtY29udGFpbmVyOmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0aGVpZ2h0OiAxMDAlO1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ubWZwLWFsaWduLXRvcCAubWZwLWNvbnRhaW5lcjpiZWZvcmUge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4ubWZwLWNvbnRlbnQge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0bWFyZ2luOiAwIGF1dG87XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdHotaW5kZXg6IDEwNDU7XG59XG5cbi5tZnAtaW5saW5lLWhvbGRlciAubWZwLWNvbnRlbnQsXG4ubWZwLWFqYXgtaG9sZGVyIC5tZnAtY29udGVudCB7XG5cdHdpZHRoOiAxMDAlO1xuXHRjdXJzb3I6IGF1dG87XG59XG5cbi5tZnAtYWpheC1jdXIge1xuXHRjdXJzb3I6IHByb2dyZXNzO1xufVxuXG4ubWZwLXpvb20tb3V0LWN1ciwgLm1mcC16b29tLW91dC1jdXIgLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1jbG9zZSB7XG5cdGN1cnNvcjogLW1vei16b29tLW91dDtcblx0Y3Vyc29yOiAtd2Via2l0LXpvb20tb3V0O1xuXHRjdXJzb3I6IHpvb20tb3V0O1xufVxuXG4ubWZwLXpvb20ge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGN1cnNvcjogLXdlYmtpdC16b29tLWluO1xuXHRjdXJzb3I6IC1tb3otem9vbS1pbjtcblx0Y3Vyc29yOiB6b29tLWluO1xufVxuXG4ubWZwLWF1dG8tY3Vyc29yIC5tZnAtY29udGVudCB7XG5cdGN1cnNvcjogYXV0bztcbn1cblxuLm1mcC1jbG9zZSxcbi5tZnAtYXJyb3csXG4ubWZwLXByZWxvYWRlcixcbi5tZnAtY291bnRlciB7XG5cdC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG5cdHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4ubWZwLWxvYWRpbmcubWZwLWZpZ3VyZSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZnAtaGlkZSB7XG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm1mcC1wcmVsb2FkZXIge1xuXHRjb2xvcjogI0NDQztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDUwJTtcblx0d2lkdGg6IGF1dG87XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0bWFyZ2luLXRvcDogLTAuOGVtO1xuXHRsZWZ0OiA4cHg7XG5cdHJpZ2h0OiA4cHg7XG5cdHotaW5kZXg6IDEwNDQ7XG59XG5cbi5tZnAtcHJlbG9hZGVyIGEge1xuXHRjb2xvcjogI0NDQztcbn1cblxuLm1mcC1wcmVsb2FkZXIgYTpob3ZlciB7XG5cdGNvbG9yOiAjRkZGO1xufVxuXG4ubWZwLXMtcmVhZHkgLm1mcC1wcmVsb2FkZXIge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4ubWZwLXMtZXJyb3IgLm1mcC1jb250ZW50IHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuYnV0dG9uLm1mcC1jbG9zZSxcbmJ1dHRvbi5tZnAtYXJyb3cge1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyOiAwO1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRvdXRsaW5lOiBub25lO1xuXHRwYWRkaW5nOiAwO1xuXHR6LWluZGV4OiAxMDQ2O1xuXHRib3gtc2hhZG93OiBub25lO1xuXHR0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbn1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyIHtcblx0cGFkZGluZzogMDtcblx0Ym9yZGVyOiAwO1xufVxuXG4ubWZwLWNsb3NlIHtcblx0d2lkdGg6IDQ0cHg7XG5cdGhlaWdodDogNDRweDtcblx0bGluZS1oZWlnaHQ6IDQ0cHg7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cmlnaHQ6IDA7XG5cdHRvcDogMDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdG9wYWNpdHk6IDAuNjU7XG5cdHBhZGRpbmc6IDAgMCAxOHB4IDEwcHg7XG5cdGNvbG9yOiAjRkZGO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG5cdGZvbnQtc2l6ZTogMjhweDtcblx0Zm9udC1mYW1pbHk6IEFyaWFsLCBCYXNrZXJ2aWxsZSwgbW9ub3NwYWNlO1xufVxuXG4ubWZwLWNsb3NlOmhvdmVyLFxuLm1mcC1jbG9zZTpmb2N1cyB7XG5cdG9wYWNpdHk6IDE7XG59XG5cbi5tZnAtY2xvc2U6YWN0aXZlIHtcblx0dG9wOiAxcHg7XG59XG5cbi5tZnAtY2xvc2UtYnRuLWluIC5tZnAtY2xvc2Uge1xuXHRjb2xvcjogIzMzMztcbn1cblxuLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1jbG9zZSxcbi5tZnAtaWZyYW1lLWhvbGRlciAubWZwLWNsb3NlIHtcblx0Y29sb3I6ICNGRkY7XG5cdHJpZ2h0OiAtNnB4O1xuXHR0ZXh0LWFsaWduOiByaWdodDtcblx0cGFkZGluZy1yaWdodDogNnB4O1xuXHR3aWR0aDogMTAwJTtcbn1cblxuLm1mcC1jb3VudGVyIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdHJpZ2h0OiAwO1xuXHRjb2xvcjogI0NDQztcblx0Zm9udC1zaXplOiAxMnB4O1xuXHRsaW5lLWhlaWdodDogMThweDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLm1mcC1hcnJvdyB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0b3BhY2l0eTogMC42NTtcblx0bWFyZ2luOiAwO1xuXHR0b3A6IDUwJTtcblx0bWFyZ2luLXRvcDogLTU1cHg7XG5cdHBhZGRpbmc6IDA7XG5cdHdpZHRoOiA5MHB4O1xuXHRoZWlnaHQ6IDExMHB4O1xuXHQtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ubWZwLWFycm93OmFjdGl2ZSB7XG5cdG1hcmdpbi10b3A6IC01NHB4O1xufVxuXG4ubWZwLWFycm93OmhvdmVyLFxuLm1mcC1hcnJvdzpmb2N1cyB7XG5cdG9wYWNpdHk6IDE7XG59XG5cbi5tZnAtYXJyb3c6YmVmb3JlLFxuLm1mcC1hcnJvdzphZnRlciB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR3aWR0aDogMDtcblx0aGVpZ2h0OiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IDA7XG5cdHRvcDogMDtcblx0bWFyZ2luLXRvcDogMzVweDtcblx0bWFyZ2luLWxlZnQ6IDM1cHg7XG5cdGJvcmRlcjogbWVkaXVtIGluc2V0IHRyYW5zcGFyZW50O1xufVxuXG4ubWZwLWFycm93OmFmdGVyIHtcblx0Ym9yZGVyLXRvcC13aWR0aDogMTNweDtcblx0Ym9yZGVyLWJvdHRvbS13aWR0aDogMTNweDtcblx0dG9wOiA4cHg7XG59XG5cbi5tZnAtYXJyb3c6YmVmb3JlIHtcblx0Ym9yZGVyLXRvcC13aWR0aDogMjFweDtcblx0Ym9yZGVyLWJvdHRvbS13aWR0aDogMjFweDtcblx0b3BhY2l0eTogMC43O1xufVxuXG4ubWZwLWFycm93LWxlZnQge1xuXHRsZWZ0OiAwO1xufVxuXG4ubWZwLWFycm93LWxlZnQ6YWZ0ZXIge1xuXHRib3JkZXItcmlnaHQ6IDE3cHggc29saWQgI0ZGRjtcblx0bWFyZ2luLWxlZnQ6IDMxcHg7XG59XG5cbi5tZnAtYXJyb3ctbGVmdDpiZWZvcmUge1xuXHRtYXJnaW4tbGVmdDogMjVweDtcblx0Ym9yZGVyLXJpZ2h0OiAyN3B4IHNvbGlkICMzRjNGM0Y7XG59XG5cbi5tZnAtYXJyb3ctcmlnaHQge1xuXHRyaWdodDogMDtcbn1cblxuLm1mcC1hcnJvdy1yaWdodDphZnRlciB7XG5cdGJvcmRlci1sZWZ0OiAxN3B4IHNvbGlkICNGRkY7XG5cdG1hcmdpbi1sZWZ0OiAzOXB4O1xufVxuXG4ubWZwLWFycm93LXJpZ2h0OmJlZm9yZSB7XG5cdGJvcmRlci1sZWZ0OiAyN3B4IHNvbGlkICMzRjNGM0Y7XG59XG5cbi5tZnAtaWZyYW1lLWhvbGRlciB7XG5cdHBhZGRpbmctdG9wOiA0MHB4O1xuXHRwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cblxuLm1mcC1pZnJhbWUtaG9sZGVyIC5tZnAtY29udGVudCB7XG5cdGxpbmUtaGVpZ2h0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0bWF4LXdpZHRoOiA5MDBweDtcbn1cblxuLm1mcC1pZnJhbWUtaG9sZGVyIC5tZnAtY2xvc2Uge1xuXHR0b3A6IC00MHB4O1xufVxuXG4ubWZwLWlmcmFtZS1zY2FsZXIge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nLXRvcDogNTYuMjUlO1xufVxuXG4ubWZwLWlmcmFtZS1zY2FsZXIgaWZyYW1lIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRkaXNwbGF5OiBibG9jaztcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KTtcblx0YmFja2dyb3VuZDogIzAwMDtcbn1cblxuLyogTWFpbiBpbWFnZSBpbiBwb3B1cCAqL1xuaW1nLm1mcC1pbWcge1xuXHR3aWR0aDogYXV0bztcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG87XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRsaW5lLWhlaWdodDogMDtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0cGFkZGluZzogNDBweCAwIDQwcHg7XG5cdG1hcmdpbjogMCBhdXRvO1xufVxuXG4vKiBUaGUgc2hhZG93IGJlaGluZCB0aGUgaW1hZ2UgKi9cbi5tZnAtZmlndXJlIHtcblx0bGluZS1oZWlnaHQ6IDA7XG59XG5cbi5tZnAtZmlndXJlOmFmdGVyIHtcblx0Y29udGVudDogXCJcIjtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRsZWZ0OiAwO1xuXHR0b3A6IDQwcHg7XG5cdGJvdHRvbTogNDBweDtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHJpZ2h0OiAwO1xuXHR3aWR0aDogYXV0bztcblx0aGVpZ2h0OiBhdXRvO1xuXHR6LWluZGV4OiAtMTtcblx0Ym94LXNoYWRvdzogMCAwIDhweCByZ2JhKDAsIDAsIDAsIDAuNik7XG5cdGJhY2tncm91bmQ6ICM0NDQ7XG59XG5cbi5tZnAtZmlndXJlIHNtYWxsIHtcblx0Y29sb3I6ICNCREJEQkQ7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRmb250LXNpemU6IDEycHg7XG5cdGxpbmUtaGVpZ2h0OiAxNHB4O1xufVxuXG4ubWZwLWZpZ3VyZSBmaWd1cmUge1xuXHRtYXJnaW46IDA7XG59XG5cbi5tZnAtYm90dG9tLWJhciB7XG5cdG1hcmdpbi10b3A6IC0zNnB4O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMTAwJTtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdGN1cnNvcjogYXV0bztcbn1cblxuLm1mcC10aXRsZSB7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdGxpbmUtaGVpZ2h0OiAxOHB4O1xuXHRjb2xvcjogI0YzRjNGMztcblx0d29yZC13cmFwOiBicmVhay13b3JkO1xuXHRwYWRkaW5nLXJpZ2h0OiAzNnB4O1xufVxuXG4ubWZwLWltYWdlLWhvbGRlciAubWZwLWNvbnRlbnQge1xuXHRtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5tZnAtZ2FsbGVyeSAubWZwLWltYWdlLWhvbGRlciAubWZwLWZpZ3VyZSB7XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSksIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDMwMHB4KSB7XG5cdC8qKlxuXHQgICAgICogUmVtb3ZlIGFsbCBwYWRkaW5ncyBhcm91bmQgdGhlIGltYWdlIG9uIHNtYWxsIHNjcmVlblxuXHQgICAgICovXG5cdC5tZnAtaW1nLW1vYmlsZSAubWZwLWltYWdlLWhvbGRlciB7XG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cdH1cblx0Lm1mcC1pbWctbW9iaWxlIGltZy5tZnAtaW1nIHtcblx0XHRwYWRkaW5nOiAwO1xuXHR9XG5cdC5tZnAtaW1nLW1vYmlsZSAubWZwLWZpZ3VyZTphZnRlciB7XG5cdFx0dG9wOiAwO1xuXHRcdGJvdHRvbTogMDtcblx0fVxuXHQubWZwLWltZy1tb2JpbGUgLm1mcC1maWd1cmUgc21hbGwge1xuXHRcdGRpc3BsYXk6IGlubGluZTtcblx0XHRtYXJnaW4tbGVmdDogNXB4O1xuXHR9XG5cdC5tZnAtaW1nLW1vYmlsZSAubWZwLWJvdHRvbS1iYXIge1xuXHRcdGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcblx0XHRib3R0b206IDA7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHRvcDogYXV0bztcblx0XHRwYWRkaW5nOiAzcHggNXB4O1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHR9XG5cdC5tZnAtaW1nLW1vYmlsZSAubWZwLWJvdHRvbS1iYXI6ZW1wdHkge1xuXHRcdHBhZGRpbmc6IDA7XG5cdH1cblx0Lm1mcC1pbWctbW9iaWxlIC5tZnAtY291bnRlciB7XG5cdFx0cmlnaHQ6IDVweDtcblx0XHR0b3A6IDNweDtcblx0fVxuXHQubWZwLWltZy1tb2JpbGUgLm1mcC1jbG9zZSB7XG5cdFx0dG9wOiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdHdpZHRoOiAzNXB4O1xuXHRcdGhlaWdodDogMzVweDtcblx0XHRsaW5lLWhlaWdodDogMzVweDtcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XG5cdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRwYWRkaW5nOiAwO1xuXHR9XG59XG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuXHQubWZwLWFycm93IHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC43NSk7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgwLjc1KTtcblx0fVxuXHQubWZwLWFycm93LWxlZnQge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMDtcblx0XHR0cmFuc2Zvcm0tb3JpZ2luOiAwO1xuXHR9XG5cdC5tZnAtYXJyb3ctcmlnaHQge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJTtcblx0XHR0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlO1xuXHR9XG5cdC5tZnAtY29udGFpbmVyIHtcblx0XHRwYWRkaW5nLWxlZnQ6IDZweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiA2cHg7XG5cdH1cbn1cbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbi8qIERvY3VtZW50XG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuaHRtbCB7XG5cdGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG5cdC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5ib2R5IHtcblx0bWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cbmgxIHtcblx0Zm9udC1zaXplOiAyZW07XG5cdG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuaHIge1xuXHRib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuXHRoZWlnaHQ6IDA7IC8qIDEgKi9cblx0b3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5wcmUge1xuXHRmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cblx0Zm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3Ncblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuYSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5hYmJyW3RpdGxlXSB7XG5cdGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuYixcbnN0cm9uZyB7XG5cdGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuY29kZSxcbmtiZCxcbnNhbXAge1xuXHRmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cblx0Zm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuXHRmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuc3ViLFxuc3VwIHtcblx0Zm9udC1zaXplOiA3NSU7XG5cdGxpbmUtaGVpZ2h0OiAwO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcblx0Ym90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuXHR0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuaW1nIHtcblx0Ym9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG5cdGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxICovXG5cdGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuXHRsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuXHRtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5bdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1yZXNldF06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1zdWJtaXRdOjotbW96LWZvY3VzLWlubmVyIHtcblx0Ym9yZGVyLXN0eWxlOiBub25lO1xuXHRwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9YnV0dG9uXTotbW96LWZvY3VzcmluZyxcblt0eXBlPXJlc2V0XTotbW96LWZvY3VzcmluZyxcblt0eXBlPXN1Ym1pdF06LW1vei1mb2N1c3Jpbmcge1xuXHRvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5maWVsZHNldCB7XG5cdHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICpcdFx0YGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmxlZ2VuZCB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cblx0Y29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cblx0ZGlzcGxheTogdGFibGU7IC8qIDEgKi9cblx0bWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG5cdHBhZGRpbmc6IDA7IC8qIDMgKi9cblx0d2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG50ZXh0YXJlYSB7XG5cdG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5bdHlwZT1jaGVja2JveF0sXG5bdHlwZT1yYWRpb10ge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG5cdHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblt0eXBlPXNlYXJjaF0ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuXHRvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuW3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cblx0Zm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5kZXRhaWxzIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1bW1hcnkge1xuXHRkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2Ncblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xudGVtcGxhdGUge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5baGlkZGVuXSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbmJvZHksXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuXHRjb2xvcjogIzQwNDA0MDtcblx0Zm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG5cdGZvbnQtc2l6ZTogMTZweDtcblx0Zm9udC1zaXplOiAxcmVtO1xuXHRsaW5lLWhlaWdodDogMS41O1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcblx0Y2xlYXI6IGJvdGg7XG5cdG1hcmdpbi10b3A6IDA7XG5cdGZvbnQtc2l6ZTogMjRweDtcblx0bGluZS1oZWlnaHQ6IDIwcHg7XG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzUwcHgpIHtcblx0aDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG5cdFx0Zm9udC1zaXplOiA0OHB4O1xuXHRcdGxpbmUtaGVpZ2h0OiA0MHB4O1xuXHR9XG59XG5cbnAge1xuXHRtYXJnaW4tdG9wOiAwO1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG5kZm4sIGNpdGUsIGVtLCBpIHtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5ibG9ja3F1b3RlIHtcblx0bWFyZ2luOiAwIDIwcHg7XG59XG5cbmFkZHJlc3Mge1xuXHRtYXJnaW46IDAgMCAyMHB4O1xufVxuXG5wcmUge1xuXHRiYWNrZ3JvdW5kOiAjZWVlO1xuXHRmb250LWZhbWlseTogXCJDb3VyaWVyIDEwIFBpdGNoXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcblx0Zm9udC1zaXplOiAxNnB4O1xuXHRsaW5lLWhlaWdodDogMjBweDtcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHRvdmVyZmxvdzogYXV0bztcblx0cGFkZGluZzogMjBweDtcbn1cblxuY29kZSwga2JkLCB0dCwgdmFyIHtcblx0Zm9udC1mYW1pbHk6IE1vbmFjbywgQ29uc29sYXMsIFwiQW5kYWxlIE1vbm9cIiwgXCJEZWphVnUgU2FucyBNb25vXCIsIG1vbm9zcGFjZTtcblx0Zm9udC1zaXplOiAxNXB4O1xuXHRmb250LXNpemU6IDAuOTM3NXJlbTtcbn1cblxuYWJiciwgYWNyb255bSB7XG5cdGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzY2Njtcblx0Y3Vyc29yOiBoZWxwO1xufVxuXG5tYXJrLCBpbnMge1xuXHRiYWNrZ3JvdW5kOiAjZmZmOWMwO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmJpZyB7XG5cdGZvbnQtc2l6ZTogMTI1JTtcbn1cblxuaHRtbCB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIgeyAvKiBJbmhlcml0IGJveC1zaXppbmcgdG8gbWFrZSBpdCBlYXNpZXIgdG8gY2hhbmdlIHRoZSBwcm9wZXJ0eSBmb3IgY29tcG9uZW50cyB0aGF0IGxldmVyYWdlIG90aGVyIGJlaGF2aW9yOyBzZWUgaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9pbmhlcml0aW5nLWJveC1zaXppbmctcHJvYmFibHktc2xpZ2h0bHktYmV0dGVyLWJlc3QtcHJhY3RpY2UvICovXG5cdGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmJvZHkge1xuXHRiYWNrZ3JvdW5kOiAjZjJmMmYyOyAvKiBGYWxsYmFjayBmb3Igd2hlbiB0aGVyZSBpcyBubyBjdXN0b20gYmFja2dyb3VuZCBjb2xvciBkZWZpbmVkLiAqL1xufVxuXG5ociB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG5cdGJvcmRlcjogMDtcblx0aGVpZ2h0OiAxcHg7XG5cdG1hcmdpbi1ib3R0b206IDEuNWVtO1xufVxuXG51bCwgb2wge1xuXHRtYXJnaW46IDAgMCAxZW0gMGVtO1xuXHRwYWRkaW5nOiAwIDAgMCAxZW07XG59XG5cbnVsIHtcblx0bGlzdC1zdHlsZTogZGlzYztcbn1cblxub2wge1xuXHRsaXN0LXN0eWxlOiBkZWNpbWFsO1xufVxuXG5saSA+IHVsLFxubGkgPiBvbCB7XG5cdG1hcmdpbi1ib3R0b206IDA7XG5cdG1hcmdpbi1sZWZ0OiAxLjVlbTtcbn1cblxuZHQge1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cblxuZGQge1xuXHRtYXJnaW46IDAgMS41ZW0gMS41ZW07XG59XG5cbmltZyB7XG5cdGhlaWdodDogYXV0bzsgLyogTWFrZSBzdXJlIGltYWdlcyBhcmUgc2NhbGVkIGNvcnJlY3RseS4gKi9cblx0bWF4LXdpZHRoOiAxMDAlOyAvKiBBZGhlcmUgdG8gY29udGFpbmVyIHdpZHRoLiAqL1xufVxuXG5maWd1cmUge1xuXHRtYXJnaW46IDFlbSAwOyAvKiBFeHRyYSB3aWRlIGltYWdlcyB3aXRoaW4gZmlndXJlIHRhZ3MgZG9uJ3Qgb3ZlcmZsb3cgdGhlIGNvbnRlbnQgYXJlYS4gKi9cbn1cblxudGFibGUge1xuXHRtYXJnaW46IDAgMCAxLjVlbTtcblx0d2lkdGg6IDEwMCU7XG59XG5cbmJ1dHRvbixcbmlucHV0W3R5cGU9YnV0dG9uXSxcbmlucHV0W3R5cGU9cmVzZXRdLFxuaW5wdXRbdHlwZT1zdWJtaXRdIHtcblx0Ym9yZGVyOiAxcHggc29saWQ7XG5cdGJvcmRlci1jb2xvcjogI2NjYyAjY2NjICNiYmI7XG5cdGJvcmRlci1yYWRpdXM6IDNweDtcblx0YmFja2dyb3VuZDogI2U2ZTZlNjtcblx0Y29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcblx0Zm9udC1zaXplOiAxMnB4O1xuXHRmb250LXNpemU6IDAuNzVyZW07XG5cdGxpbmUtaGVpZ2h0OiAxO1xuXHRwYWRkaW5nOiAwLjZlbSAxZW0gMC40ZW07XG59XG5idXR0b246aG92ZXIsXG5pbnB1dFt0eXBlPWJ1dHRvbl06aG92ZXIsXG5pbnB1dFt0eXBlPXJlc2V0XTpob3ZlcixcbmlucHV0W3R5cGU9c3VibWl0XTpob3ZlciB7XG5cdGJvcmRlci1jb2xvcjogI2NjYyAjYmJiICNhYWE7XG59XG5idXR0b246YWN0aXZlLCBidXR0b246Zm9jdXMsXG5pbnB1dFt0eXBlPWJ1dHRvbl06YWN0aXZlLFxuaW5wdXRbdHlwZT1idXR0b25dOmZvY3VzLFxuaW5wdXRbdHlwZT1yZXNldF06YWN0aXZlLFxuaW5wdXRbdHlwZT1yZXNldF06Zm9jdXMsXG5pbnB1dFt0eXBlPXN1Ym1pdF06YWN0aXZlLFxuaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzIHtcblx0Ym9yZGVyLWNvbG9yOiAjYWFhICNiYmIgI2JiYjtcbn1cblxuaW5wdXRbdHlwZT10ZXh0XSxcbmlucHV0W3R5cGU9ZW1haWxdLFxuaW5wdXRbdHlwZT11cmxdLFxuaW5wdXRbdHlwZT1wYXNzd29yZF0sXG5pbnB1dFt0eXBlPXNlYXJjaF0sXG5pbnB1dFt0eXBlPW51bWJlcl0sXG5pbnB1dFt0eXBlPXRlbF0sXG5pbnB1dFt0eXBlPXJhbmdlXSxcbmlucHV0W3R5cGU9ZGF0ZV0sXG5pbnB1dFt0eXBlPW1vbnRoXSxcbmlucHV0W3R5cGU9d2Vla10sXG5pbnB1dFt0eXBlPXRpbWVdLFxuaW5wdXRbdHlwZT1kYXRldGltZV0sXG5pbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXSxcbmlucHV0W3R5cGU9Y29sb3JdLFxudGV4dGFyZWEge1xuXHRjb2xvcjogIzY2Njtcblx0Ym9yZGVyOiAxcHggc29saWQgI2NjYztcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRwYWRkaW5nOiAzcHg7XG59XG5pbnB1dFt0eXBlPXRleHRdOmZvY3VzLFxuaW5wdXRbdHlwZT1lbWFpbF06Zm9jdXMsXG5pbnB1dFt0eXBlPXVybF06Zm9jdXMsXG5pbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1cyxcbmlucHV0W3R5cGU9c2VhcmNoXTpmb2N1cyxcbmlucHV0W3R5cGU9bnVtYmVyXTpmb2N1cyxcbmlucHV0W3R5cGU9dGVsXTpmb2N1cyxcbmlucHV0W3R5cGU9cmFuZ2VdOmZvY3VzLFxuaW5wdXRbdHlwZT1kYXRlXTpmb2N1cyxcbmlucHV0W3R5cGU9bW9udGhdOmZvY3VzLFxuaW5wdXRbdHlwZT13ZWVrXTpmb2N1cyxcbmlucHV0W3R5cGU9dGltZV06Zm9jdXMsXG5pbnB1dFt0eXBlPWRhdGV0aW1lXTpmb2N1cyxcbmlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdOmZvY3VzLFxuaW5wdXRbdHlwZT1jb2xvcl06Zm9jdXMsXG50ZXh0YXJlYTpmb2N1cyB7XG5cdGNvbG9yOiAjMTExO1xufVxuXG5zZWxlY3Qge1xuXHRib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xufVxuXG50ZXh0YXJlYSB7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuYSB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLCBibGFjayk7XG59XG5hOnZpc2l0ZWQge1xuXHRjb2xvcjogcHVycGxlO1xufVxuYTpob3ZlciwgYTpmb2N1cywgYTphY3RpdmUge1xuXHRjb2xvcjogdmFyKC0tYWNjZW50LWNvbG9yLCAjMDBFNUQxKTtcbn1cbmE6Zm9jdXMge1xuXHRvdXRsaW5lOiB0aGluIGRvdHRlZDtcbn1cbmE6aG92ZXIsIGE6YWN0aXZlIHtcblx0b3V0bGluZTogMDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyMgTWVudXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5tYWluLW5hdmlnYXRpb24ge1xuXHRjbGVhcjogYm90aDtcblx0ZGlzcGxheTogZmxleDtcblx0d2lkdGg6IDEwMCU7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGxpbmUtaGVpZ2h0OiAyMHB4O1xuXHRmb250LXNpemU6IDE2cHg7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdGJvcmRlci10b3A6IDNweCBzb2xpZCB2YXIoLS1icmFuZC1ibGFjaywgYmxhY2spO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG5cdC5tYWluLW5hdmlnYXRpb24ge1xuXHRcdHBhZGRpbmctdG9wOiA3cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDEuMjtcblx0XHRmb250LXNpemU6IDEycHg7XG5cdH1cbn1cbi5tYWluLW5hdmlnYXRpb24gPiBkaXYge1xuXHR3aWR0aDogMTAwJTtcbn1cbi5tYWluLW5hdmlnYXRpb24gdWwge1xuXHRkaXNwbGF5OiBub25lO1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmctbGVmdDogMDtcbn1cbi5tYWluLW5hdmlnYXRpb24gdWwgdWwge1xuXHRwYWRkaW5nLWxlZnQ6IDEwcHg7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1icmFuZC1ibGFjaywgYmxhY2spO1xufVxuLm1haW4tbmF2aWdhdGlvbiB1bCB1bCBsaSB7XG5cdG9wYWNpdHk6IDA7XG5cdHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG5cdC5tYWluLW5hdmlnYXRpb24gdWwgdWwgbGk6Zmlyc3Qtb2YtdHlwZSB7XG5cdFx0bWFyZ2luLXRvcDogMnB4O1xuXHR9XG5cdC5tYWluLW5hdmlnYXRpb24gdWwgdWwgbGk6bGFzdC1vZi10eXBlIHtcblx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHR9XG59XG4ubWFpbi1uYXZpZ2F0aW9uIHVsIGxpOmhvdmVyID4gdWwsXG4ubWFpbi1uYXZpZ2F0aW9uIHVsIGxpLmZvY3VzID4gdWwge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbi5tYWluLW5hdmlnYXRpb24gdWwgbGk6aG92ZXIgPiB1bCBsaSxcbi5tYWluLW5hdmlnYXRpb24gdWwgbGkuZm9jdXMgPiB1bCBsaSB7XG5cdG9wYWNpdHk6IDE7XG59XG4ubWFpbi1uYXZpZ2F0aW9uIGEge1xuXHRkaXNwbGF5OiBibG9jaztcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRjb2xvcjogdmFyKC0tYnJhbmQtYmxhY2ssIGJsYWNrKTtcblx0bGluZS1oZWlnaHQ6IDE4cHg7XG5cdHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcbn1cbi5tYWluLW5hdmlnYXRpb24gYTpob3ZlciB7XG5cdG9wYWNpdHk6IDAuNzU7XG59XG4ubWFpbi1uYXZpZ2F0aW9uIC5jdXJyZW50X3BhZ2VfaXRlbSA+IGEsXG4ubWFpbi1uYXZpZ2F0aW9uIC5jdXJyZW50LW1lbnUtaXRlbSA+IGEsXG4ubWFpbi1uYXZpZ2F0aW9uIC5jdXJyZW50LXBhZ2UtYW5jZXN0b3IgPiBhLFxuLm1haW4tbmF2aWdhdGlvbiAuY3VycmVudC1tZW51LWFuY2VzdG9yID4gYSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5tYWluLW5hdmlnYXRpb24gLmN1cnJlbnRfcGFnZV9pdGVtID4gYTpiZWZvcmUsXG4ubWFpbi1uYXZpZ2F0aW9uIC5jdXJyZW50LW1lbnUtaXRlbSA+IGE6YmVmb3JlLFxuLm1haW4tbmF2aWdhdGlvbiAuY3VycmVudC1wYWdlLWFuY2VzdG9yID4gYTpiZWZvcmUsXG4ubWFpbi1uYXZpZ2F0aW9uIC5jdXJyZW50LW1lbnUtYW5jZXN0b3IgPiBhOmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hY2NlbnQtY29sb3IsICMwMEU1RDEpO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogLTEwcHg7XG5cdHdpZHRoOiA2cHg7XG5cdGhlaWdodDogY2FsYygxMDAlIC0gMXB4KTtcbn1cblxuLyogU21hbGwgbWVudS4gKi9cbi5tZW51LXRvZ2dsZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubWFpbi1uYXZpZ2F0aW9uLnRvZ2dsZWQge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXHR0b3A6IDE4MHB4O1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjAwcHgpO1xuXHR6LWluZGV4OiAxMDA7XG5cdHBhZGRpbmc6IDIwcHggMDtcbn1cbi5tYWluLW5hdmlnYXRpb24udG9nZ2xlZCAubmF2LW1lbnUge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IDEwcHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuXHQubWVudS10b2dnbGUge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblx0Lm1haW4tbmF2aWdhdGlvbiB1bCB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGdhcDogMnB4O1xuXHR9XG59XG4uc2l0ZS1tYWluIC5jb21tZW50LW5hdmlnYXRpb24sXG4uc2l0ZS1tYWluIC5wb3N0cy1uYXZpZ2F0aW9uLFxuLnNpdGUtbWFpbiAucG9zdC1uYXZpZ2F0aW9uIHtcblx0bWFyZ2luOiAwIDAgMS41ZW07XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG4uY29tbWVudC1uYXZpZ2F0aW9uIC5uYXYtcHJldmlvdXMsXG4ucG9zdHMtbmF2aWdhdGlvbiAubmF2LXByZXZpb3VzLFxuLnBvc3QtbmF2aWdhdGlvbiAubmF2LXByZXZpb3VzIHtcblx0ZmxvYXQ6IGxlZnQ7XG5cdHdpZHRoOiA1MCU7XG59XG4uY29tbWVudC1uYXZpZ2F0aW9uIC5uYXYtbmV4dCxcbi5wb3N0cy1uYXZpZ2F0aW9uIC5uYXYtbmV4dCxcbi5wb3N0LW5hdmlnYXRpb24gLm5hdi1uZXh0IHtcblx0ZmxvYXQ6IHJpZ2h0O1xuXHR0ZXh0LWFsaWduOiByaWdodDtcblx0d2lkdGg6IDUwJTtcbn1cblxuLyogVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVycy4gKi9cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuXHRib3JkZXI6IDA7XG5cdGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcblx0Y2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuXHRoZWlnaHQ6IDFweDtcblx0bWFyZ2luOiAtMXB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcblx0d2lkdGg6IDFweDtcblx0d29yZC13cmFwOiBub3JtYWwgIWltcG9ydGFudDsgLyogTWFueSBzY3JlZW4gcmVhZGVyIGFuZCBicm93c2VyIGNvbWJpbmF0aW9ucyBhbm5vdW5jZSBicm9rZW4gd29yZHMgYXMgdGhleSB3b3VsZCBhcHBlYXIgdmlzdWFsbHkuICovXG59XG4uc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzIHtcblx0YmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG5cdGNsaXA6IGF1dG8gIWltcG9ydGFudDtcblx0Y2xpcC1wYXRoOiBub25lO1xuXHRjb2xvcjogIzIxNzU5Yjtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0Zm9udC1zaXplOiAwLjg3NXJlbTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGhlaWdodDogYXV0bztcblx0bGVmdDogNXB4O1xuXHRsaW5lLWhlaWdodDogbm9ybWFsO1xuXHRwYWRkaW5nOiAxNXB4IDIzcHggMTRweDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0b3A6IDVweDtcblx0d2lkdGg6IGF1dG87XG5cdHotaW5kZXg6IDEwMDAwMDsgLyogQWJvdmUgV1AgdG9vbGJhci4gKi9cbn1cblxuLyogRG8gbm90IHNob3cgdGhlIG91dGxpbmUgb24gdGhlIHNraXAgbGluayB0YXJnZXQuICovXG4jY29udGVudFt0YWJpbmRleD1cIi0xXCJdOmZvY3VzIHtcblx0b3V0bGluZTogMDtcbn1cblxuLmFsaWdubGVmdCB7XG5cdGRpc3BsYXk6IGlubGluZTtcblx0ZmxvYXQ6IGxlZnQ7XG5cdG1hcmdpbi1yaWdodDogMS41ZW07XG59XG5cbi5hbGlnbnJpZ2h0IHtcblx0ZGlzcGxheTogaW5saW5lO1xuXHRmbG9hdDogcmlnaHQ7XG5cdG1hcmdpbi1sZWZ0OiAxLjVlbTtcbn1cblxuLmFsaWduY2VudGVyIHtcblx0Y2xlYXI6IGJvdGg7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW4tbGVmdDogYXV0bztcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uY2xlYXI6YmVmb3JlLFxuLmNsZWFyOmFmdGVyLFxuLmVudHJ5LWNvbnRlbnQ6YmVmb3JlLFxuLmVudHJ5LWNvbnRlbnQ6YWZ0ZXIsXG4uY29tbWVudC1jb250ZW50OmJlZm9yZSxcbi5jb21tZW50LWNvbnRlbnQ6YWZ0ZXIsXG4uc2l0ZS1oZWFkZXI6YmVmb3JlLFxuLnNpdGUtaGVhZGVyOmFmdGVyLFxuLnNpdGUtY29udGVudDpiZWZvcmUsXG4uc2l0ZS1jb250ZW50OmFmdGVyLFxuLnNpdGUtZm9vdGVyOmJlZm9yZSxcbi5zaXRlLWZvb3RlcjphZnRlciB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdGRpc3BsYXk6IHRhYmxlO1xuXHR0YWJsZS1sYXlvdXQ6IGZpeGVkO1xufVxuXG4uY2xlYXI6YWZ0ZXIsXG4uZW50cnktY29udGVudDphZnRlcixcbi5jb21tZW50LWNvbnRlbnQ6YWZ0ZXIsXG4uc2l0ZS1oZWFkZXI6YWZ0ZXIsXG4uc2l0ZS1jb250ZW50OmFmdGVyLFxuLnNpdGUtZm9vdGVyOmFmdGVyIHtcblx0Y2xlYXI6IGJvdGg7XG59XG5cbioge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5ib2R5IHtcblx0YmFja2dyb3VuZDogYmxhY2s7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWNvbG9yLCBibGFjayk7XG5cdGZvbnQtZmFtaWx5OiBcIkRNIFNhbnNcIiwgc2Fucy1zZXJpZjtcblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cdGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuYm9keS5tZW51LWFjdGl2ZSB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG5ib2R5Lm92ZXJsYXkgLnNpdGUge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5ib2R5Lm92ZXJsYXkgLnNpdGU6YmVmb3JlIHtcblx0Y29udGVudDogXCJcIjtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRiYWNrZ3JvdW5kLXNpemU6IDEwcHggMTBweDtcblx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCBhcXVhIDFweCwgdHJhbnNwYXJlbnQgMXB4KSwgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgYXF1YSAxcHgsIHRyYW5zcGFyZW50IDFweCk7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRvcGFjaXR5OiAwLjI7XG59XG5ib2R5Lm92ZXJsYXkuYWRtaW4tYmFyIC5zaXRlOmJlZm9yZSB7XG5cdHRvcDogMzJweDtcbn1cblxuaW1nIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbi5oaWRkZW4ge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG5zdHJvbmcge1xuXHRmb250LXdlaWdodDogNzAwO1xufVxuXG4uc2l0ZSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGdhcDogMjBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuXHQuc2l0ZSB7XG5cdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDIxMHB4IDFmcjtcblx0XHRncmlkLXRlbXBsYXRlLXJvd3M6IDFmciA1MHB4O1xuXHRcdGdyaWQtY29sdW1uLWdhcDogMTBweDtcblx0XHRncmlkLXJvdy1nYXA6IDEwcHg7XG5cdH1cbn1cblxuLnNpdGUtaGVhZGVyIHtcblx0Z3JpZC1hcmVhOiAxLzEvMy8yO1xufVxuXG4uc2l0ZS1jb250ZW50IHtcblx0Z3JpZC1hcmVhOiAxLzIvMi8zO1xufVxuXG4uc2l0ZS1mb290ZXIge1xuXHRncmlkLWFyZWE6IDIvMi8zLzM7XG59XG5cbi5zaXRlIHtcblx0bWluLWhlaWdodDogMTAwdmg7XG5cdGJhY2tncm91bmQ6IHdoaXRlO1xuXHRtYXgtd2lkdGg6IDEzNjBweDtcblx0bWFyZ2luOiAwIGF1dG87XG5cdHBhZGRpbmc6IDIwcHg7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuXHQuc2l0ZSB7XG5cdFx0cGFkZGluZzogMjBweCAyMHB4IDAgNDBweDtcblx0fVxufVxuXG4uc2l0ZS1jb250ZW50IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGNkY4O1xuXHRwYWRkaW5nOiAxMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG5cdC5zaXRlLWNvbnRlbnQge1xuXHRcdHBhZGRpbmc6IDIwcHg7XG5cdFx0cGFkZGluZzogMjBweCA2MHB4IDIwcHggMjBweDtcblx0fVxufVxuXG4udG9wLWJ1dHRvbiB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0Ym90dG9tOiAyMHB4O1xuXHRyaWdodDogMzBweDtcblx0ei1pbmRleDogOTk5OTtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRib3JkZXItYm90dG9tOiAzcHggc29saWQgdmFyKC0tdGV4dC1jb2xvciwgYmxhY2spO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG5cdHBhZGRpbmc6IDEwcHg7XG59XG4udG9wLWJ1dHRvbjpob3ZlciB7XG5cdGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWFjY2VudC1jb2xvciwgIzAwRTVEMSk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzYwcHgpIHtcblx0LnRvcC1idXR0b24ge1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0cmlnaHQ6IHVuc2V0O1xuXHRcdGxlZnQ6IGNhbGMoNTAlICsgNjgwcHgpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC0xMDAlIC0gNDBweCkpO1xuXHR9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcblx0LnRvcC1idXR0b24ge1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0dG9wOiAyMTBweDtcblx0XHRib3R0b206IHVuc2V0O1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHR9XG59XG5cbi5hY3Rpb25zIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDEwcHg7XG5cdHJpZ2h0OiAxMHB4O1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRnYXA6IDVweDtcblx0b3BhY2l0eTogMDtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4uZG93bmxvYWQsXG4uY2xpcGJvYXJkIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGhlaWdodDogMDtcblx0d2lkdGg6IDI0cHg7XG5cdHBhZGRpbmctdG9wOiAyNHB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtc2l6ZTogMTZweCAxNnB4O1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG4uZG93bmxvYWQ6aG92ZXIsXG4uY2xpcGJvYXJkOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG59XG5cbi5kb3dubG9hZCB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybChhc3NldHMvaW1hZ2VzL2Rvd25sb2FkLnN2Zyk7XG59XG5cbi5jbGlwYm9hcmQge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoYXNzZXRzL2ltYWdlcy9saW5rLnN2Zyk7XG59XG5cbi5iYWNrZ3JvdW5kLWltYWdlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG59XG4uYmFja2dyb3VuZC1pbWFnZSBpbWcge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLmltYWdlLW9iamVjdC1maXQge1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4uaW1hZ2Utb2JqZWN0LWZpdCBpbWcge1xuXHRvcGFjaXR5OiAwO1xufVxuXG4uYnJhbmQtbmF2LXdyYXBwZXIge1xuXHRwb3NpdGlvbjogc3RpY2t5O1xuXHR0b3A6IDIwcHg7XG5cdHotaW5kZXg6IDEwMDtcbn1cblxuLmJyYW5kLWRldGFpbHMge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdGhlaWdodDogMTgwcHg7XG5cdHBhZGRpbmc6IDIwcHggMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuXHQuYnJhbmQtZGV0YWlscyB7XG5cdFx0aGVpZ2h0OiAyMTBweDtcblx0XHRwYWRkaW5nOiAyMHB4IDAgN3B4O1xuXHR9XG59XG4uYnJhbmQtZGV0YWlscyAubG9nbyB7XG5cdG1hcmdpbi1ib3R0b206IGF1dG87XG59XG4uYnJhbmQtZGV0YWlscyBwIHtcblx0Zm9udC1zaXplOiAxMHB4O1xuXHRsaW5lLWhlaWdodDogMS4yO1xuXHRtYXJnaW46IDA7XG59XG5cbi5oYW1idXJnZXIgLmhhbWJ1cmdlci1pbm5lcixcbi5oYW1idXJnZXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuLmhhbWJ1cmdlciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtY29sb3IsIGJsYWNrKTtcbn1cblxuLmhhbWJ1cmdlciB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAxMjBweDtcblx0cmlnaHQ6IC0xNXB4O1xufVxuLmhhbWJ1cmdlciBzdHJvbmcge1xuXHRkaXNwbGF5OiBub25lO1xufVxuLnRvZ2dsZWQgLmhhbWJ1cmdlciB7XG5cdHRvcDogLTY0cHg7XG5cdHJpZ2h0OiAtMTVweDtcbn1cblxuLmludHJvZHVjdGlvbiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jb250ZW50LWFyZWEubGlnaHQtdGV4dCAuaW50cm9kdWN0aW9uIHtcblx0Y29sb3I6IHdoaXRlO1xufVxuLmNvbnRlbnQtYXJlYS5saWdodC10ZXh0IC5pbnRyb2R1Y3Rpb24gYSB7XG5cdGNvbG9yOiB3aGl0ZTtcbn1cbi5jb250ZW50LWFyZWEubGlnaHQtdGV4dCAuaW50cm9kdWN0aW9uIC5pbnRyby1jb3B5IHtcblx0Ym9yZGVyLXRvcDogM3B4IHNvbGlkIHdoaXRlO1xufVxuLmludHJvZHVjdGlvbiAuaW50cm8tY29weSB7XG5cdGJvcmRlci10b3A6IDNweCBzb2xpZCB2YXIoLS10ZXh0LWNvbG9yLCBibGFjayk7XG5cdHBhZGRpbmctdG9wOiAyMHB4O1xuXHRmb250LXNpemU6IDE4cHg7XG5cdGxpbmUtaGVpZ2h0OiAyNHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG5cdC5pbnRyb2R1Y3Rpb24gLmludHJvLWNvcHkge1xuXHRcdHBhZGRpbmctcmlnaHQ6IGNhbGMoMzMuMzMzMzMzMzMzMyUgKyAxMHB4KTtcblx0XHRmb250LXNpemU6IDI2cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDI4cHg7XG5cdH1cbn1cblxuLnNpdGUtZm9vdGVyIHtcblx0Zm9udC1zaXplOiAxMHB4O1xuXHRmb250LXdlaWdodDogNzAwO1xuXHRsaW5lLWhlaWdodDogMTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5zaXRlLWZvb3RlciBwIHtcblx0bWFyZ2luOiAwO1xufVxuLnNpdGUtZm9vdGVyIGEge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1jb2xvciwgYmxhY2spO1xuXHR0cmFuc2l0aW9uOiBjb2xvciAwLjVzO1xufVxuLnNpdGUtZm9vdGVyIGE6aG92ZXIge1xuXHRjb2xvcjogdmFyKC0tYWNjZW50LWNvbG9yLCAjMDBFNUQxKTtcbn1cbi5zaXRlLWZvb3RlciAuZm9vdGVyLWNvbnRlbnQge1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdGV4dC1jb2xvciwgYmxhY2spO1xuXHRwYWRkaW5nLXRvcDogMTBweDtcbn1cblxuLnBhZ2UtaGVhZGVyIHtcblx0cGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcblx0LnBhZ2UtaGVhZGVyIHtcblx0XHRoZWlnaHQ6IDE5MHB4O1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0Z2FwOiAxMHB4O1xuXHR9XG5cdC5wYWdlLWhlYWRlciA+ICoge1xuXHRcdHdpZHRoOiBjYWxjKDUwJSAtIDIwcHggKyAxMHB4KTtcblx0fVxufVxuLnBhZ2UtaGVhZGVyIC50aXRsZSB7XG5cdGZvbnQtc2l6ZTogNjBweDtcblx0bGluZS1oZWlnaHQ6IDY0cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcblx0LnBhZ2UtaGVhZGVyIC50aXRsZSB7XG5cdFx0Zm9udC1zaXplOiA2MHB4O1xuXHRcdGxpbmUtaGVpZ2h0OiA2NHB4O1xuXHR9XG59XG5cbi5zZWN0aW9uLW5hdiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0Y29sdW1uLWdhcDogMTBweDtcblx0cm93LWdhcDogMDtcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi5zZWN0aW9uLW5hdiBhIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLnNlY3Rpb24tbmF2IGE6YWZ0ZXIge1xuXHRjb250ZW50OiBcIiAvXCI7XG59XG5cbi50aXRsZS1jb3B5IHtcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXRleHQtY29sb3IsIGJsYWNrKTtcblx0cGFkZGluZy10b3A6IDEzcHg7XG59XG4udGl0bGUtY29weSAudGl0bGUge1xuXHRmb250LXNpemU6IDMwcHg7XG5cdGxpbmUtaGVpZ2h0OiAzMnB4O1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLnRpdGxlLWNvcHkgLnN1YnRpdGxlIHtcblx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0Zm9udC1zaXplOiAyNnB4O1xuXHRsaW5lLWhlaWdodDogMjhweDtcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi50aXRsZS1jb3B5LnRleHQtd2lkdGgtMzMgLnRpdGxlLFxuLnRpdGxlLWNvcHkudGV4dC13aWR0aC0zMyAuc3VidGl0bGUsXG4udGl0bGUtY29weS50ZXh0LXdpZHRoLTMzIC5jb3B5LWNvbHVtbnMge1xuXHR3aWR0aDogY2FsYyg1MCUgLSAxMHB4KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuXHQudGl0bGUtY29weS50ZXh0LXdpZHRoLTMzIC50aXRsZSxcblx0LnRpdGxlLWNvcHkudGV4dC13aWR0aC0zMyAuc3VidGl0bGUsXG5cdC50aXRsZS1jb3B5LnRleHQtd2lkdGgtMzMgLmNvcHktY29sdW1ucyB7XG5cdFx0d2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAxMHB4KTtcblx0fVxufVxuLnRpdGxlLWNvcHkudGV4dC13aWR0aC01MCAudGl0bGUsXG4udGl0bGUtY29weS50ZXh0LXdpZHRoLTUwIC5zdWJ0aXRsZSxcbi50aXRsZS1jb3B5LnRleHQtd2lkdGgtNTAgLmNvcHktY29sdW1ucyB7XG5cdHdpZHRoOiBjYWxjKDc1JSAtIDEwcHgpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG5cdC50aXRsZS1jb3B5LnRleHQtd2lkdGgtNTAgLnRpdGxlLFxuXHQudGl0bGUtY29weS50ZXh0LXdpZHRoLTUwIC5zdWJ0aXRsZSxcblx0LnRpdGxlLWNvcHkudGV4dC13aWR0aC01MCAuY29weS1jb2x1bW5zIHtcblx0XHR3aWR0aDogY2FsYyg1MCUgLSAxMHB4KTtcblx0fVxufVxuLnRpdGxlLWNvcHkudGV4dC13aWR0aC02NiAudGl0bGUsXG4udGl0bGUtY29weS50ZXh0LXdpZHRoLTY2IC5zdWJ0aXRsZSxcbi50aXRsZS1jb3B5LnRleHQtd2lkdGgtNjYgLmNvcHktY29sdW1ucyB7XG5cdHdpZHRoOiBjYWxjKDc1JSAtIDEwcHgpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG5cdC50aXRsZS1jb3B5LnRleHQtd2lkdGgtNjYgLnRpdGxlLFxuXHQudGl0bGUtY29weS50ZXh0LXdpZHRoLTY2IC5zdWJ0aXRsZSxcblx0LnRpdGxlLWNvcHkudGV4dC13aWR0aC02NiAuY29weS1jb2x1bW5zIHtcblx0XHR3aWR0aDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDEwcHgpO1xuXHR9XG59XG4udGl0bGUtY29weS50d28tY29sdW1ucyAudGl0bGUsXG4udGl0bGUtY29weS50d28tY29sdW1ucyAuc3VidGl0bGUsXG4udGl0bGUtY29weS50d28tY29sdW1ucyAuY29weS1jb2x1bW5zIHtcblx0d2lkdGg6IDEwMCU7XG59XG4udGl0bGUtY29weSAuY29weS1jb2x1bW5zLnR3by1jb2x1bW5zIHtcblx0d2lkdGg6IDEwMCU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcblx0LnRpdGxlLWNvcHkgLmNvcHktY29sdW1ucy50d28tY29sdW1ucyB7XG5cdFx0Z2FwOiAyMHB4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0fVxufVxuLnRpdGxlLWNvcHkgLmNvcHktY29sdW1ucy50d28tY29sdW1ucyAuY29weSB7XG5cdHdpZHRoOiBjYWxjKDEwMCUgLSAxMHB4KTtcbn1cbi50aXRsZS1jb3B5IC5jb3B5LWNvbHVtbnMuc2l6ZS1zbWFsbCB7XG5cdGZvbnQtc2l6ZTogMTJweDtcbn1cbi50aXRsZS1jb3B5IC5jb3B5LWNvbHVtbnMuc2l6ZS1sYXJnZSB7XG5cdGZvbnQtc2l6ZTogMjBweDtcbn1cblxuLnNpbmdsZS1pbWFnZSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi5zaW5nbGUtaW1hZ2U6aG92ZXIgLmFjdGlvbnMge1xuXHRvcGFjaXR5OiAxO1xufVxuXG4uaW1hZ2UtdGV4dC1jb2x1bW4ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IDEwcHg7XG59XG4uaW1hZ2UtdGV4dC1jb2x1bW4gPiAqIHtcblx0d2lkdGg6IGNhbGMoNTAlIC0gNXB4KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuXHQuaW1hZ2UtdGV4dC1jb2x1bW4ge1xuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0Z2FwOiAyMHB4O1xuXHR9XG5cdC5pbWFnZS10ZXh0LWNvbHVtbiA+ICoge1xuXHRcdHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpO1xuXHR9XG5cdC5pbWFnZS10ZXh0LWNvbHVtbi5yZXZlcnNlLW9yZGVyIHtcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cdH1cbn1cblxuLmltYWdlLXRleHQtYmxvY2tzIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC13cmFwOiB3cmFwO1xuXHRnYXA6IDEwcHg7XG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcblx0LmltYWdlLXRleHQtYmxvY2tzIHtcblx0XHRnYXA6IDIwcHg7XG5cdH1cbn1cbi5pbWFnZS10ZXh0LWJsb2NrcyAuY29udGVudC1ibG9jayB7XG5cdGZvbnQtc2l6ZTogMTJweDtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5pbWFnZS10ZXh0LWJsb2Nrcy5ibG9ja3MtMiAuY29udGVudC1ibG9jayB7XG5cdHdpZHRoOiBjYWxjKDUwJSAtIDEwcHggKyA1cHgpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG5cdC5pbWFnZS10ZXh0LWJsb2Nrcy5ibG9ja3MtMiAuY29udGVudC1ibG9jayB7XG5cdFx0d2lkdGg6IGNhbGMoNTAlIC0gMjBweCArIDEwcHgpO1xuXHR9XG59XG4uaW1hZ2UtdGV4dC1ibG9ja3MuYmxvY2tzLTMgLmNvbnRlbnQtYmxvY2sge1xuXHR3aWR0aDogY2FsYyg1MCUgLSAxMHB4ICsgNXB4KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuXHQuaW1hZ2UtdGV4dC1ibG9ja3MuYmxvY2tzLTMgLmNvbnRlbnQtYmxvY2sge1xuXHRcdHdpZHRoOiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMjBweCArIDYuNjY2NjY2NjY2N3B4KTtcblx0fVxufVxuLmltYWdlLXRleHQtYmxvY2tzLmJsb2Nrcy00IC5jb250ZW50LWJsb2NrIHtcblx0d2lkdGg6IGNhbGMoNTAlIC0gMTBweCArIDVweCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcblx0LmltYWdlLXRleHQtYmxvY2tzLmJsb2Nrcy00IC5jb250ZW50LWJsb2NrIHtcblx0XHR3aWR0aDogY2FsYygyNSUgLSAyMHB4ICsgNXB4KTtcblx0fVxufVxuLmltYWdlLXRleHQtYmxvY2tzIGltZyB7XG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG4uaW1hZ2UtdGV4dC1ibG9ja3MgLnRleHQgcDpsYXN0LW9mLXR5cGUge1xuXHRtYXJnaW4tYm90dG9tOiAwO1xufVxuLmltYWdlLXRleHQtYmxvY2tzIC5pbWFnZSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5pbWFnZS10ZXh0LWJsb2NrcyAuaW1hZ2U6aG92ZXIgLmFjdGlvbnMge1xuXHRvcGFjaXR5OiAxO1xufVxuXG4udGV4dC1hbmQtbGFwdG9wIHtcblx0ZGlzcGxheTogZmxleDtcblx0Z2FwOiAxMHB4O1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLnRleHQtYW5kLWxhcHRvcCA+ICoge1xuXHR3aWR0aDogY2FsYyg1MCUgLSAxMHB4ICsgNXB4KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuXHQudGV4dC1hbmQtbGFwdG9wIHtcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdGdhcDogMjBweDtcblx0fVxuXHQudGV4dC1hbmQtbGFwdG9wID4gKiB7XG5cdFx0d2lkdGg6IGNhbGMoNTAlIC0gMjBweCArIDEwcHgpO1xuXHR9XG59XG4udGV4dC1hbmQtbGFwdG9wIC50ZXh0LWdyb3VwIGgzIHtcblx0Zm9udC1zaXplOiAyNnB4O1xuXHRsaW5lLWhlaWdodDogMjhweDtcbn1cbi50ZXh0LWFuZC1sYXB0b3AgLmxhcHRvcC1ncm91cCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi50ZXh0LWFuZC1sYXB0b3AgLmxhcHRvcC1mcmFtZSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0YmFja2dyb3VuZDogdXJsKGFzc2V0cy9pbWFnZXMvbWFjYm9vay1zdHJhaWdodC5wbmcpIGNlbnRlciB0b3Agbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cdGFzcGVjdC1yYXRpbzogMjAwMC8xMTg3O1xufVxuLnRleHQtYW5kLWxhcHRvcCAubGFwdG9wLWNvbnRlbnQge1xuXHRwYWRkaW5nOiAxNnB4IDEzJSAyMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG5cdC50ZXh0LWFuZC1sYXB0b3AgLmxhcHRvcC1jb250ZW50IHtcblx0XHRwYWRkaW5nOiAxNnB4IDYwcHggMjBweDtcblx0fVxufVxuXG4uY29sb3ItY2hpcHMge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdGdhcDogMjBweDtcbn1cbi5jb2xvci1jaGlwcyA+ICoge1xuXHR3aWR0aDogY2FsYyg1MCUgLSAyMHB4ICsgMTBweCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcblx0LmNvbG9yLWNoaXBzID4gKiB7XG5cdFx0d2lkdGg6IGNhbGMoMjUlIC0gMjBweCArIDVweCk7XG5cdH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcblx0LmNvbG9yLWNoaXBzID4gKiB7XG5cdFx0d2lkdGg6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAyMHB4ICsgMy4zMzMzMzMzMzMzcHgpO1xuXHR9XG59XG5cbi5oZXgge1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uY29sb3ItY2hpcCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLmNvbG9yLWluZm8ge1xuXHRtYXJnaW4tdG9wOiBhdXRvO1xuXHRmb250LXNpemU6IDEycHg7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5jaXJjbGUtc3dhdGNoIHtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHR3aWR0aDogMTAwJTtcblx0bWF4LXdpZHRoOiAxMjBweDtcblx0YXNwZWN0LXJhdGlvOiAxLzE7XG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4uY2lyY2xlLXN3YXRjaC5hZGQtYm9yZGVyIHtcblx0Ym9yZGVyOiAxcHggc29saWQgI2NjYztcbn1cblxuLmdyYWRpZW50LXN3YXRjaCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdHdpZHRoOiA4MHB4O1xufVxuXG4uZ3JhZGllbnQtY2hpcCB7XG5cdGZvbnQtc2l6ZTogMTBweDtcblx0bGluZS1oZWlnaHQ6IDAuOTtcblx0aGVpZ2h0OiAzMHB4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDE7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uZ3JhZGllbnQtY2hpcCBzcGFuIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmdyYWRpZW50LWNoaXAgLmdyYWRpZW50LWNoaXAtYmcge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblx0ei1pbmRleDogLTE7XG59XG5cbmRpdltjbGFzcyo9bGF5b3V0LV0ge1xuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuZGl2W2NsYXNzKj1sYXlvdXQtXSAudGFsbC1zbGltIGltZyB7XG5cdGFzcGVjdC1yYXRpbzogMjQyLzM2OTtcblx0b2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5sYXlvdXQtMSB7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIGNhbGMoNTAlIC0gNXB4KSk7XG5cdGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDMsIDFmcik7XG5cdGdyaWQtY29sdW1uLWdhcDogMTBweDtcblx0Z3JpZC1yb3ctZ2FwOiAxMHB4O1xufVxuLmxheW91dC0xIC5kaXYxIHtcblx0Z3JpZC1hcmVhOiAxLzEvMi8zO1xufVxuLmxheW91dC0xIC5kaXYyIHtcblx0Z3JpZC1hcmVhOiAyLzEvMy8yO1xufVxuLmxheW91dC0xIC5kaXYzIHtcblx0Z3JpZC1hcmVhOiAyLzIvMy8zO1xufVxuLmxheW91dC0xIC5kaXY0IHtcblx0Z3JpZC1hcmVhOiAzLzEvNC8yO1xufVxuLmxheW91dC0xIC5kaXY1IHtcblx0Z3JpZC1hcmVhOiAzLzIvNC8zO1xufVxuLmxheW91dC0xID4gKiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5sYXlvdXQtMSA+ICo6aG92ZXIgLmFjdGlvbnMge1xuXHRvcGFjaXR5OiAxO1xufVxuLmxheW91dC0xIC5kaXYxIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmxheW91dC0xIC5kaXYxIGltZyB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzYwcHgpIHtcblx0LmxheW91dC0xIHtcblx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogY2FsYyg1MCUgLSA1cHgpIHJlcGVhdCgyLCAxZnIpO1xuXHRcdGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDIsIDFmcik7XG5cdFx0Z3JpZC1jb2x1bW4tZ2FwOiAxMHB4O1xuXHRcdGdyaWQtcm93LWdhcDogMTBweDtcblx0fVxuXHQubGF5b3V0LTEgLmRpdjEge1xuXHRcdGdyaWQtYXJlYTogMS8xLzMvMjtcblx0fVxuXHQubGF5b3V0LTEgLmRpdjIge1xuXHRcdGdyaWQtYXJlYTogMS8yLzIvMztcblx0fVxuXHQubGF5b3V0LTEgLmRpdjMge1xuXHRcdGdyaWQtYXJlYTogMS8zLzIvNDtcblx0fVxuXHQubGF5b3V0LTEgLmRpdjQge1xuXHRcdGdyaWQtYXJlYTogMi8yLzMvMztcblx0fVxuXHQubGF5b3V0LTEgLmRpdjUge1xuXHRcdGdyaWQtYXJlYTogMi8zLzMvNDtcblx0fVxufVxuLmxheW91dC0yIHtcblx0ZGlzcGxheTogZ3JpZDtcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgY2FsYyg1MCUgLSA1cHgpKTtcblx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoNCwgMWZyKTtcblx0Z3JpZC1jb2x1bW4tZ2FwOiAxMHB4O1xuXHRncmlkLXJvdy1nYXA6IDEwcHg7XG59XG4ubGF5b3V0LTIgLmRpdjEge1xuXHRncmlkLWFyZWE6IDEvMS8yLzI7XG59XG4ubGF5b3V0LTIgLmRpdjIge1xuXHRncmlkLWFyZWE6IDIvMS8zLzI7XG59XG4ubGF5b3V0LTIgLmRpdjMge1xuXHRncmlkLWFyZWE6IDEvMi8zLzM7XG59XG4ubGF5b3V0LTIgLmRpdjQge1xuXHRncmlkLWFyZWE6IDMvMi80LzM7XG59XG4ubGF5b3V0LTIgLmRpdjUge1xuXHRncmlkLWFyZWE6IDQvMi81LzM7XG59XG4ubGF5b3V0LTIgLmRpdjYge1xuXHRncmlkLWFyZWE6IDMvMS81LzI7XG59XG4ubGF5b3V0LTIgPiAqIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmxheW91dC0yID4gKjpob3ZlciAuYWN0aW9ucyB7XG5cdG9wYWNpdHk6IDE7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2MHB4KSB7XG5cdC5sYXlvdXQtMiB7XG5cdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuXHRcdGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDIsIDFmcik7XG5cdFx0Z3JpZC1jb2x1bW4tZ2FwOiAxMHB4O1xuXHRcdGdyaWQtcm93LWdhcDogMTBweDtcblx0fVxuXHQubGF5b3V0LTIgLmRpdjEge1xuXHRcdGdyaWQtYXJlYTogMS8xLzIvMjtcblx0fVxuXHQubGF5b3V0LTIgLmRpdjIge1xuXHRcdGdyaWQtYXJlYTogMi8xLzMvMjtcblx0fVxuXHQubGF5b3V0LTIgLmRpdjMge1xuXHRcdGdyaWQtYXJlYTogMS8yLzMvMztcblx0fVxuXHQubGF5b3V0LTIgLmRpdjQge1xuXHRcdGdyaWQtYXJlYTogMS8zLzIvNDtcblx0fVxuXHQubGF5b3V0LTIgLmRpdjUge1xuXHRcdGdyaWQtYXJlYTogMi8zLzMvNDtcblx0fVxuXHQubGF5b3V0LTIgLmRpdjYge1xuXHRcdGdyaWQtYXJlYTogMS80LzMvNTtcblx0fVxufVxuLmxheW91dC0zIHtcblx0ZGlzcGxheTogZ3JpZDtcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcblx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMywgYXV0byk7XG5cdGdyaWQtY29sdW1uLWdhcDogMTBweDtcblx0Z3JpZC1yb3ctZ2FwOiAxMHB4O1xufVxuLmxheW91dC0zIC5kaXYxIHtcblx0Z3JpZC1hcmVhOiAxLzEvMi8yO1xufVxuLmxheW91dC0zIC5kaXYyIHtcblx0Z3JpZC1hcmVhOiAxLzIvMi8zO1xufVxuLmxheW91dC0zIC5kaXYzIHtcblx0Z3JpZC1hcmVhOiAyLzEvMy8yO1xufVxuLmxheW91dC0zIC5kaXY0IHtcblx0Z3JpZC1hcmVhOiAzLzEvNC8yO1xufVxuLmxheW91dC0zIC5kaXY1IHtcblx0Z3JpZC1hcmVhOiAyLzIvNC8zO1xufVxuLmxheW91dC0zID4gKiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5sYXlvdXQtMyA+ICo6aG92ZXIgLmFjdGlvbnMge1xuXHRvcGFjaXR5OiAxO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjBweCkge1xuXHQubGF5b3V0LTMge1xuXHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcblx0XHRncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgyLCAxZnIpO1xuXHRcdGdyaWQtY29sdW1uLWdhcDogMTBweDtcblx0XHRncmlkLXJvdy1nYXA6IDEwcHg7XG5cdH1cblx0LmxheW91dC0zIC5kaXYxIHtcblx0XHRncmlkLWFyZWE6IDEvMS8zLzI7XG5cdH1cblx0LmxheW91dC0zIC5kaXYyIHtcblx0XHRncmlkLWFyZWE6IDEvMi8zLzM7XG5cdH1cblx0LmxheW91dC0zIC5kaXYzIHtcblx0XHRncmlkLWFyZWE6IDEvMy8yLzQ7XG5cdH1cblx0LmxheW91dC0zIC5kaXY0IHtcblx0XHRncmlkLWFyZWE6IDIvMy8zLzQ7XG5cdH1cblx0LmxheW91dC0zIC5kaXY1IHtcblx0XHRncmlkLWFyZWE6IDEvNC8zLzU7XG5cdH1cbn1cbi52aWRlbyB7XG5cdHdpZHRoOiAxMDAlO1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uZW1iZWQtY29udGFpbmVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuXHRoZWlnaHQ6IDA7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdG1heC13aWR0aDogMTAwJTtcbn1cbi5lbWJlZC1jb250YWluZXIgaWZyYW1lLFxuLmVtYmVkLWNvbnRhaW5lciBvYmplY3QsXG4uZW1iZWQtY29udGFpbmVyIGVtYmVkIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG59XG5cbi5pbWFnZS10ZXh0LXN1cHBvcnRpbmctaW1hZ2Uge1xuXHRkaXNwbGF5OiBncmlkO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCA1MCUpO1xuXHRncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgyLCBhdXRvKTtcblx0Z3JpZC1jb2x1bW4tZ2FwOiAxMHB4O1xuXHRncmlkLXJvdy1nYXA6IDEwcHg7XG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdHdpZHRoOiBjYWxjKDEwMCUgLSAxMHB4KTtcbn1cbi5pbWFnZS10ZXh0LXN1cHBvcnRpbmctaW1hZ2UgLmxhcmdlLWltYWdlIHtcblx0Z3JpZC1hcmVhOiAxLzEvMy8yO1xufVxuLmltYWdlLXRleHQtc3VwcG9ydGluZy1pbWFnZSAudGV4dCB7XG5cdGdyaWQtYXJlYTogMS8yLzIvMztcbn1cbi5pbWFnZS10ZXh0LXN1cHBvcnRpbmctaW1hZ2UgLnN1cHBvcnRpbmctaW1hZ2Uge1xuXHRncmlkLWFyZWE6IDIvMi8zLzM7XG59XG4uaW1hZ2UtdGV4dC1zdXBwb3J0aW5nLWltYWdlIC5zdXBwb3J0aW5nLWltYWdlIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cbi5pbWFnZS10ZXh0LXN1cHBvcnRpbmctaW1hZ2UgLnN1cHBvcnRpbmctaW1hZ2UgaW1nLndpZHRoLXRoaXJkIHtcblx0d2lkdGg6IGNhbGMoMzMuMzMzJSAtIDEwcHgpO1xufVxuLmltYWdlLXRleHQtc3VwcG9ydGluZy1pbWFnZSAuc3VwcG9ydGluZy1pbWFnZSBpbWcud2lkdGgtaGFsZiB7XG5cdHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpO1xufVxuLmltYWdlLXRleHQtc3VwcG9ydGluZy1pbWFnZSAuc3VwcG9ydGluZy1pbWFnZSBpbWcud2lkdGgtdHdvLXRoaXJkcyB7XG5cdHdpZHRoOiBjYWxjKDY2LjY2NiUgLSAxMHB4KTtcbn1cbi5pbWFnZS10ZXh0LXN1cHBvcnRpbmctaW1hZ2UgLnN1cHBvcnRpbmctaW1hZ2UgaW1nLndpZHRoLWZ1bGwge1xuXHR3aWR0aDogMTAwJTtcbn1cbi5pbWFnZS10ZXh0LXN1cHBvcnRpbmctaW1hZ2UgLnRleHQge1xuXHRmb250LXNpemU6IDEycHg7XG5cdGxpbmUtaGVpZ2h0OiAxNHB4O1xuXHRmb250LXdlaWdodDogNzAwO1xufVxuLmltYWdlLXRleHQtc3VwcG9ydGluZy1pbWFnZSBoMyB7XG5cdGZvbnQtc2l6ZTogMTZweDtcblx0bGluZS1oZWlnaHQ6IDE4cHg7XG5cdG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi50ZXh0LWltYWdlLXRpbGVzIHtcblx0ZGlzcGxheTogZmxleDtcblx0Z2FwOiAxMHB4O1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLnRleHQtaW1hZ2UtdGlsZXMgPiAqIHtcblx0d2lkdGg6IGNhbGMoNTAlIC0gMTBweCArIDVweCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcblx0LnRleHQtaW1hZ2UtdGlsZXMge1xuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0Z2FwOiAyMHB4O1xuXHR9XG5cdC50ZXh0LWltYWdlLXRpbGVzID4gKiB7XG5cdFx0d2lkdGg6IGNhbGMoNTAlIC0gMjBweCArIDEwcHgpO1xuXHR9XG59XG4udGV4dC1pbWFnZS10aWxlcyBoMyB7XG5cdGZvbnQtc2l6ZTogMjZweDtcblx0bGluZS1oZWlnaHQ6IDI4cHg7XG59XG4udGV4dC1pbWFnZS10aWxlcyAudGlsZWQtaW1hZ2VzIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC13cmFwOiB3cmFwO1xuXHRnYXA6IDEwcHg7XG59XG4udGV4dC1pbWFnZS10aWxlcyAudGlsZWQtaW1hZ2VzID4gKiB7XG5cdHdpZHRoOiBjYWxjKDUwJSAtIDIwcHggKyAxMHB4KTtcbn1cbi50ZXh0LWltYWdlLXRpbGVzIC50aWxlZC1pbWFnZXMuY291bnQtdGhyZWUgPiAqIHtcblx0d2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAyMHB4ICsgNi42NjY2NjY2NjY3cHgpO1xufVxuLnRleHQtaW1hZ2UtdGlsZXMgLmNhcHRpb24ge1xuXHRmb250LXdlaWdodDogNzAwO1xufVxuXG46cm9vdCB7XG5cdC0tc3dpcGVyLXBhZ2luYXRpb24tYm90dG9tOiAyMHB4O1xuXHQtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1oZWlnaHQ6IDEwcHg7XG5cdC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemU6IDEwcHg7XG5cdC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yOiByZ2IoMTE4LCAxMTgsIDExOCk7XG5cdC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3I6IHdoaXRlO1xuXHQtLXN3aXBlci10aGVtZS1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwOiA1cHg7XG5cdC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLW9wYWNpdHk6IDE7XG59XG5cbi5jYXJvdXNlbC1zbGlkZXIge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRtYXgtd2lkdGg6IDEwMDBweDtcbn1cbi5jYXJvdXNlbC1zbGlkZXIgLnN3aXBlci1zbGlkZSB7XG5cdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi5zbGlkZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uc2xpZGVyIGltZyB7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4uc2xpZGUtcGFnaW5hdGlvbiB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ei1pbmRleDogMTA7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcblx0Ym9yZGVyOiAxcHggc29saWQgcmdiKDExOCwgMTE4LCAxMTgpO1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG5cdGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xufSIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzcXVlZXplKSB7XG4gIC8qXG4gICAqIFNxdWVlemVcbiAgICovXG4gIC5oYW1idXJnZXItLXNxdWVlemUge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wNzVzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMTJzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4wNzVzIGVhc2U7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjEycyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMTJzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjA3NXMgMC4xMnMgZWFzZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyogTWFnbmlmaWMgUG9wdXAgQ1NTICovXG4ubWZwLWJnIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxMDQyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJhY2tncm91bmQ6ICMwYjBiMGI7XG4gIG9wYWNpdHk6IDAuODsgfVxuXG4ubWZwLXdyYXAge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDEwNDM7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4ubWZwLWNvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHBhZGRpbmc6IDAgOHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5tZnAtY29udGFpbmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4ubWZwLWFsaWduLXRvcCAubWZwLWNvbnRhaW5lcjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tZnAtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgei1pbmRleDogMTA0NTsgfVxuXG4ubWZwLWlubGluZS1ob2xkZXIgLm1mcC1jb250ZW50LFxuLm1mcC1hamF4LWhvbGRlciAubWZwLWNvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgY3Vyc29yOiBhdXRvOyB9XG5cbi5tZnAtYWpheC1jdXIge1xuICBjdXJzb3I6IHByb2dyZXNzOyB9XG5cbi5tZnAtem9vbS1vdXQtY3VyLCAubWZwLXpvb20tb3V0LWN1ciAubWZwLWltYWdlLWhvbGRlciAubWZwLWNsb3NlIHtcbiAgY3Vyc29yOiAtbW96LXpvb20tb3V0O1xuICBjdXJzb3I6IC13ZWJraXQtem9vbS1vdXQ7XG4gIGN1cnNvcjogem9vbS1vdXQ7IH1cblxuLm1mcC16b29tIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IC13ZWJraXQtem9vbS1pbjtcbiAgY3Vyc29yOiAtbW96LXpvb20taW47XG4gIGN1cnNvcjogem9vbS1pbjsgfVxuXG4ubWZwLWF1dG8tY3Vyc29yIC5tZnAtY29udGVudCB7XG4gIGN1cnNvcjogYXV0bzsgfVxuXG4ubWZwLWNsb3NlLFxuLm1mcC1hcnJvdyxcbi5tZnAtcHJlbG9hZGVyLFxuLm1mcC1jb3VudGVyIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLm1mcC1sb2FkaW5nLm1mcC1maWd1cmUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tZnAtaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ubWZwLXByZWxvYWRlciB7XG4gIGNvbG9yOiAjQ0NDO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAtMC44ZW07XG4gIGxlZnQ6IDhweDtcbiAgcmlnaHQ6IDhweDtcbiAgei1pbmRleDogMTA0NDsgfVxuICAubWZwLXByZWxvYWRlciBhIHtcbiAgICBjb2xvcjogI0NDQzsgfVxuICAgIC5tZnAtcHJlbG9hZGVyIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNGRkY7IH1cblxuLm1mcC1zLXJlYWR5IC5tZnAtcHJlbG9hZGVyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubWZwLXMtZXJyb3IgLm1mcC1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5idXR0b24ubWZwLWNsb3NlLFxuYnV0dG9uLm1mcC1hcnJvdyB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIHotaW5kZXg6IDEwNDY7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uOyB9XG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDsgfVxuXG4ubWZwLWNsb3NlIHtcbiAgd2lkdGg6IDQ0cHg7XG4gIGhlaWdodDogNDRweDtcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6IDAuNjU7XG4gIHBhZGRpbmc6IDAgMCAxOHB4IDEwcHg7XG4gIGNvbG9yOiAjRkZGO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBCYXNrZXJ2aWxsZSwgbW9ub3NwYWNlOyB9XG4gIC5tZnAtY2xvc2U6aG92ZXIsXG4gIC5tZnAtY2xvc2U6Zm9jdXMge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLm1mcC1jbG9zZTphY3RpdmUge1xuICAgIHRvcDogMXB4OyB9XG5cbi5tZnAtY2xvc2UtYnRuLWluIC5tZnAtY2xvc2Uge1xuICBjb2xvcjogIzMzMzsgfVxuXG4ubWZwLWltYWdlLWhvbGRlciAubWZwLWNsb3NlLFxuLm1mcC1pZnJhbWUtaG9sZGVyIC5tZnAtY2xvc2Uge1xuICBjb2xvcjogI0ZGRjtcbiAgcmlnaHQ6IC02cHg7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBwYWRkaW5nLXJpZ2h0OiA2cHg7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5tZnAtY291bnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgY29sb3I6ICNDQ0M7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLm1mcC1hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3BhY2l0eTogMC42NTtcbiAgbWFyZ2luOiAwO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTU1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiA5MHB4O1xuICBoZWlnaHQ6IDExMHB4O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5tZnAtYXJyb3c6YWN0aXZlIHtcbiAgICBtYXJnaW4tdG9wOiAtNTRweDsgfVxuICAubWZwLWFycm93OmhvdmVyLFxuICAubWZwLWFycm93OmZvY3VzIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5tZnAtYXJyb3c6YmVmb3JlLFxuICAubWZwLWFycm93OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDM1cHg7XG4gICAgYm9yZGVyOiBtZWRpdW0gaW5zZXQgdHJhbnNwYXJlbnQ7IH1cbiAgLm1mcC1hcnJvdzphZnRlciB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMTNweDtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxM3B4O1xuICAgIHRvcDogOHB4OyB9XG4gIC5tZnAtYXJyb3c6YmVmb3JlIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAyMXB4O1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIxcHg7XG4gICAgb3BhY2l0eTogMC43OyB9XG5cbi5tZnAtYXJyb3ctbGVmdCB7XG4gIGxlZnQ6IDA7IH1cbiAgLm1mcC1hcnJvdy1sZWZ0OmFmdGVyIHtcbiAgICBib3JkZXItcmlnaHQ6IDE3cHggc29saWQgI0ZGRjtcbiAgICBtYXJnaW4tbGVmdDogMzFweDsgfVxuICAubWZwLWFycm93LWxlZnQ6YmVmb3JlIHtcbiAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgICBib3JkZXItcmlnaHQ6IDI3cHggc29saWQgIzNGM0YzRjsgfVxuXG4ubWZwLWFycm93LXJpZ2h0IHtcbiAgcmlnaHQ6IDA7IH1cbiAgLm1mcC1hcnJvdy1yaWdodDphZnRlciB7XG4gICAgYm9yZGVyLWxlZnQ6IDE3cHggc29saWQgI0ZGRjtcbiAgICBtYXJnaW4tbGVmdDogMzlweDsgfVxuICAubWZwLWFycm93LXJpZ2h0OmJlZm9yZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDI3cHggc29saWQgIzNGM0YzRjsgfVxuXG4ubWZwLWlmcmFtZS1ob2xkZXIge1xuICBwYWRkaW5nLXRvcDogNDBweDtcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7IH1cbiAgLm1mcC1pZnJhbWUtaG9sZGVyIC5tZnAtY29udGVudCB7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiA5MDBweDsgfVxuICAubWZwLWlmcmFtZS1ob2xkZXIgLm1mcC1jbG9zZSB7XG4gICAgdG9wOiAtNDBweDsgfVxuXG4ubWZwLWlmcmFtZS1zY2FsZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLXRvcDogNTYuMjUlOyB9XG4gIC5tZnAtaWZyYW1lLXNjYWxlciBpZnJhbWUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm94LXNoYWRvdzogMCAwIDhweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gICAgYmFja2dyb3VuZDogIzAwMDsgfVxuXG4vKiBNYWluIGltYWdlIGluIHBvcHVwICovXG5pbWcubWZwLWltZyB7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiA0MHB4IDAgNDBweDtcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuLyogVGhlIHNoYWRvdyBiZWhpbmQgdGhlIGltYWdlICovXG4ubWZwLWZpZ3VyZSB7XG4gIGxpbmUtaGVpZ2h0OiAwOyB9XG4gIC5tZnAtZmlndXJlOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDQwcHg7XG4gICAgYm90dG9tOiA0MHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB6LWluZGV4OiAtMTtcbiAgICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICBiYWNrZ3JvdW5kOiAjNDQ0OyB9XG4gIC5tZnAtZmlndXJlIHNtYWxsIHtcbiAgICBjb2xvcjogI0JEQkRCRDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDE0cHg7IH1cbiAgLm1mcC1maWd1cmUgZmlndXJlIHtcbiAgICBtYXJnaW46IDA7IH1cblxuLm1mcC1ib3R0b20tYmFyIHtcbiAgbWFyZ2luLXRvcDogLTM2cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgY3Vyc29yOiBhdXRvOyB9XG5cbi5tZnAtdGl0bGUge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgY29sb3I6ICNGM0YzRjM7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgcGFkZGluZy1yaWdodDogMzZweDsgfVxuXG4ubWZwLWltYWdlLWhvbGRlciAubWZwLWNvbnRlbnQge1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLm1mcC1nYWxsZXJ5IC5tZnAtaW1hZ2UtaG9sZGVyIC5tZnAtZmlndXJlIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpLCBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiAzMDBweCkge1xuICAvKipcbiAgICAgICAqIFJlbW92ZSBhbGwgcGFkZGluZ3MgYXJvdW5kIHRoZSBpbWFnZSBvbiBzbWFsbCBzY3JlZW5cbiAgICAgICAqL1xuICAubWZwLWltZy1tb2JpbGUgLm1mcC1pbWFnZS1ob2xkZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5tZnAtaW1nLW1vYmlsZSBpbWcubWZwLWltZyB7XG4gICAgcGFkZGluZzogMDsgfVxuICAubWZwLWltZy1tb2JpbGUgLm1mcC1maWd1cmU6YWZ0ZXIge1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7IH1cbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtZmlndXJlIHNtYWxsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuICAubWZwLWltZy1tb2JpbGUgLm1mcC1ib3R0b20tYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB0b3A6IGF1dG87XG4gICAgcGFkZGluZzogM3B4IDVweDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuICAgIC5tZnAtaW1nLW1vYmlsZSAubWZwLWJvdHRvbS1iYXI6ZW1wdHkge1xuICAgICAgcGFkZGluZzogMDsgfVxuICAubWZwLWltZy1tb2JpbGUgLm1mcC1jb3VudGVyIHtcbiAgICByaWdodDogNXB4O1xuICAgIHRvcDogM3B4OyB9XG4gIC5tZnAtaW1nLW1vYmlsZSAubWZwLWNsb3NlIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDM1cHg7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDA7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAubWZwLWFycm93IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC43NSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTsgfVxuICAubWZwLWFycm93LWxlZnQge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwOyB9XG4gIC5tZnAtYXJyb3ctcmlnaHQge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlOyB9XG4gIC5tZnAtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDZweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7IH0gfVxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcblx0bGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cblx0LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5ib2R5IHtcblx0bWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuXHRmb250LXNpemU6IDJlbTtcblx0bWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuXHRib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuXHRoZWlnaHQ6IDA7IC8qIDEgKi9cblx0b3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG5cdGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuXHRmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuXHRmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuXHRmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cblx0Zm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG5cdGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG5cdGZvbnQtc2l6ZTogNzUlO1xuXHRsaW5lLWhlaWdodDogMDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG5cdGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcblx0dG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5pbWcge1xuXHRib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG5cdGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxICovXG5cdGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuXHRsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuXHRtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG5cdG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cblx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuXHRib3JkZXItc3R5bGU6IG5vbmU7XG5cdHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcblx0b3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5maWVsZHNldCB7XG5cdHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICpcdFx0YGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuXHRjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuXHRkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuXHRtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cblx0cGFkZGluZzogMDsgLyogMyAqL1xuXHR3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xuXG50ZXh0YXJlYSB7XG5cdG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuXHRwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuXHRoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG5cdG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG5cdGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcblx0ZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xuXG50ZW1wbGF0ZSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cblxuW2hpZGRlbl0ge1xuXHRkaXNwbGF5OiBub25lO1xufVxuIiwiYm9keSxcbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG5cdGNvbG9yOiAkY29sb3JfX3RleHQtbWFpbjtcblx0Zm9udC1mYW1pbHk6ICRmb250X19tYWluO1xuXHRAaW5jbHVkZSBmb250LXNpemUoMSk7XG5cdGxpbmUtaGVpZ2h0OiAkZm9udF9fbGluZS1oZWlnaHQtYm9keTtcbn1cblxuQGltcG9ydCBcImhlYWRpbmdzXCI7XG5cbkBpbXBvcnQgXCJjb3B5XCI7XG4iLCIkYnJhbmRfYmxhY2s6IHZhcigtLXRleHQtY29sb3IsIGJsYWNrKTtcbiRicmFuZF9hY2NlbnQ6IHZhcigtLWFjY2VudC1jb2xvciwgIzAwRTVEMSk7XG5cbiRjb2xvcl9fYmFja2dyb3VuZC1ib2R5OiAjZjJmMmYyO1xuJGNvbG9yX19iYWNrZ3JvdW5kLXNjcmVlbjogI2YxZjFmMTtcbiRjb2xvcl9fYmFja2dyb3VuZC1ocjogI2NjYztcbiRjb2xvcl9fYmFja2dyb3VuZC1idXR0b246ICNlNmU2ZTY7XG4kY29sb3JfX2JhY2tncm91bmQtcHJlOiAjZWVlO1xuJGNvbG9yX19iYWNrZ3JvdW5kLWluczogI2ZmZjljMDtcblxuJGNvbG9yX190ZXh0LXNjcmVlbjogIzIxNzU5YjtcbiRjb2xvcl9fdGV4dC1pbnB1dDogIzY2NjtcbiRjb2xvcl9fdGV4dC1pbnB1dC1mb2N1czogIzExMTtcbiRjb2xvcl9fbGluazogJGJyYW5kX2JsYWNrO1xuJGNvbG9yX19saW5rLXZpc2l0ZWQ6IHB1cnBsZTtcbiRjb2xvcl9fbGluay1ob3ZlcjogJGJyYW5kX2FjY2VudDtcbiRjb2xvcl9fdGV4dC1tYWluOiAjNDA0MDQwO1xuXG4kY29sb3JfX2JvcmRlci1idXR0b246ICNjY2MgI2NjYyAjYmJiO1xuJGNvbG9yX19ib3JkZXItYnV0dG9uLWhvdmVyOiAjY2NjICNiYmIgI2FhYTtcbiRjb2xvcl9fYm9yZGVyLWJ1dHRvbi1mb2N1czogI2FhYSAjYmJiICNiYmI7XG4kY29sb3JfX2JvcmRlci1pbnB1dDogI2NjYztcbiRjb2xvcl9fYm9yZGVyLWFiYnI6ICM2NjY7XG4iLCIkZm9udF9fbWFpbjogc2Fucy1zZXJpZjtcbiRmb250X19jb2RlOiBNb25hY28sIENvbnNvbGFzLCBcIkFuZGFsZSBNb25vXCIsIFwiRGVqYVZ1IFNhbnMgTW9ub1wiLCBtb25vc3BhY2U7XG4kZm9udF9fcHJlOiBcIkNvdXJpZXIgMTAgUGl0Y2hcIiwgQ291cmllciwgbW9ub3NwYWNlO1xuJGZvbnRfX2xpbmUtaGVpZ2h0LWJvZHk6IDEuNTtcbiRmb250X19saW5lLWhlaWdodC1wcmU6IDEuNjtcbiIsIi8vIFJlbSBvdXRwdXQgd2l0aCBweCBmYWxsYmFja1xuQG1peGluIGZvbnQtc2l6ZSgkc2l6ZVZhbHVlOiAxKSB7XG5cdGZvbnQtc2l6ZTogKCRzaXplVmFsdWUgKiAxNikgKiAxcHg7XG5cdGZvbnQtc2l6ZTogJHNpemVWYWx1ZSAqIDFyZW07XG59XG5cbi8vIENlbnRlciBibG9ja1xuQG1peGluIGNlbnRlci1ibG9jayB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW4tbGVmdDogYXV0bztcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vLyBDbGVhcmZpeFxuQG1peGluIGNsZWFyZml4KCkge1xuXHRjb250ZW50OiBcIlwiO1xuXHRkaXNwbGF5OiB0YWJsZTtcblx0dGFibGUtbGF5b3V0OiBmaXhlZDtcbn1cblxuLy8gQ2xlYXIgYWZ0ZXIgKG5vdCBhbGwgY2xlYXJmaXggbmVlZCB0aGlzIGFsc28pXG5AbWl4aW4gY2xlYXJmaXgtYWZ0ZXIoKSB7XG5cdGNsZWFyOiBib3RoO1xufVxuXG4vLyBDb2x1bW4gd2lkdGggd2l0aCBtYXJnaW5cbkBtaXhpbiBjb2x1bW4td2lkdGgoJG51bWJlckNvbHVtbnM6IDMpIHtcblx0d2lkdGg6IG1hcC1nZXQoICRjb2x1bW5zLCAkbnVtYmVyQ29sdW1ucyApIC0gKCAoICRjb2x1bW5zX19tYXJnaW4gKiAoICRudW1iZXJDb2x1bW5zIC0gMSApICkgLyAkbnVtYmVyQ29sdW1ucyApO1xufVxuXG4vLyBmb250IHNtb290aGluZ1xuQG1peGluIGZvbnQtc21vb3RoaW5nKCR2YWx1ZTogYW50aWFsaWFzZWQpIHtcblx0QGlmICR2YWx1ZSA9PSBhbnRpYWxpYXNlZCB7XG5cdCAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdCAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblx0fVxuXHRAZWxzZSB7XG5cdCAgLXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7XG5cdCAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGF1dG87XG5cdH1cbiAgfSIsImgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuXHRjbGVhcjogYm90aDtcblx0bWFyZ2luLXRvcDogMDtcblx0Zm9udC1zaXplOiAyNHB4O1xuXHRsaW5lLWhlaWdodDogMjBweDtcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcblx0XHRmb250LXNpemU6IDQ4cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDQwcHg7XG5cdH1cbn0iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIERlZmF1bHQgVmFyaWFibGVzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRCcmVha3BvaW50LVNldHRpbmdzOiAoXG4gICdkZWZhdWx0IG1lZGlhJzogYWxsLFxuICAnZGVmYXVsdCBmZWF0dXJlJzogbWluLXdpZHRoLFxuICAnZGVmYXVsdCBwYWlyJzogd2lkdGgsXG5cbiAgJ2ZvcmNlIGFsbCBtZWRpYSB0eXBlJzogZmFsc2UsXG4gICd0byBlbXMnOiBmYWxzZSxcbiAgJ3RyYW5zZm9ybSByZXNvbHV0aW9ucyc6IHRydWUsXG5cbiAgJ25vIHF1ZXJpZXMnOiBmYWxzZSxcbiAgJ25vIHF1ZXJ5IGZhbGxiYWNrcyc6IGZhbHNlLFxuXG4gICdiYXNlIGZvbnQgc2l6ZSc6IDE2cHgsXG5cbiAgJ2xlZ2FjeSBzeW50YXgnOiBmYWxzZVxuKTtcblxuJGJyZWFrcG9pbnQ6ICgpICFkZWZhdWx0O1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEltcG9ydHNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGltcG9ydCBcImJyZWFrcG9pbnQvc2V0dGluZ3NcIjtcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvY29udGV4dCc7XG5AaW1wb3J0ICdicmVha3BvaW50L2hlbHBlcnMnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9wYXJzZXJzJztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvbm8tcXVlcnknO1xuXG5AaW1wb3J0ICdicmVha3BvaW50L3Jlc3BvbmQtdG8nO1xuXG5AaW1wb3J0IFwiYnJlYWtwb2ludC9sZWdhY3ktc2V0dGluZ3NcIjtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBCcmVha3BvaW50IE1peGluXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuQG1peGluIGJyZWFrcG9pbnQoJHF1ZXJ5LCAkbm8tcXVlcnk6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIGxlZ2FjeS1zZXR0aW5ncy13YXJuaW5nO1xuXG4gIC8vIFJlc2V0IGNvbnRleHRzXG4gIEBpbmNsdWRlIHByaXZhdGUtYnJlYWtwb2ludC1yZXNldC1jb250ZXh0cygpO1xuXG4gICRicmVha3BvaW50OiBicmVha3BvaW50KCRxdWVyeSwgZmFsc2UpO1xuXG4gICRxdWVyeS1zdHJpbmc6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdxdWVyeScpO1xuICAkcXVlcnktZmFsbGJhY2s6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdmYWxsYmFjaycpO1xuXG4gICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdjb250ZXh0IGhvbGRlcicpICFnbG9iYWw7XG4gICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQ6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdxdWVyeSBjb3VudCcpICFnbG9iYWw7XG5cbiAgLy8gQWxsb3cgZm9yIGFuIGFzLW5lZWRlZCBvdmVycmlkZSBvciB1c2FnZSBvZiBubyBxdWVyeSBmYWxsYmFjay5cbiAgQGlmICRuby1xdWVyeSAhPSBmYWxzZSB7XG4gICAgJHF1ZXJ5LWZhbGxiYWNrOiAkbm8tcXVlcnk7XG4gIH1cblxuICBAaWYgJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlIHtcbiAgICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dCgnbm8tcXVlcnknLCAkcXVlcnktZmFsbGJhY2spO1xuICB9XG5cbiAgLy8gUHJpbnQgT3V0IFF1ZXJ5IFN0cmluZ1xuICBAaWYgbm90IGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyaWVzJykge1xuICAgIEBtZWRpYSAjeyRxdWVyeS1zdHJpbmd9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBpZiBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykgIT0gZmFsc2Ugb3IgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJpZXMnKSA9PSB0cnVlIHtcblxuICAgICR0eXBlOiB0eXBlLW9mKGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSk7XG4gICAgJHByaW50OiBmYWxzZTtcblxuICAgIEBpZiAoJHR5cGUgPT0gJ2Jvb2wnKSB7XG4gICAgICAkcHJpbnQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIGlmICgkdHlwZSA9PSAnc3RyaW5nJykge1xuICAgICAgQGlmICRxdWVyeS1mYWxsYmFjayA9PSBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykge1xuICAgICAgICAkcHJpbnQ6IHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIGlmICgkdHlwZSA9PSAnbGlzdCcpIHtcbiAgICAgIEBlYWNoICR3cmFwcGVyIGluIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSB7XG4gICAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgPT0gJHdyYXBwZXIge1xuICAgICAgICAgICRwcmludDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFdyaXRlIEZhbGxiYWNrXG4gICAgQGlmICgkcXVlcnktZmFsbGJhY2sgIT0gZmFsc2UpIGFuZCAoJHByaW50ID09IHRydWUpIHtcbiAgICAgICR0eXBlLWZhbGxiYWNrOiB0eXBlLW9mKCRxdWVyeS1mYWxsYmFjayk7XG5cbiAgICAgIEBpZiAoJHR5cGUtZmFsbGJhY2sgIT0gJ2Jvb2wnKSB7XG4gICAgICAgICN7JHF1ZXJ5LWZhbGxiYWNrfSAmIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMoKTtcbn1cblxuXG5AbWl4aW4gbXEoJHF1ZXJ5LCAkbm8tcXVlcnk6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHF1ZXJ5LCAkbm8tcXVlcnkpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwicCB7XG5cdG1hcmdpbi10b3A6IDA7XG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbmRmbiwgY2l0ZSwgZW0sIGkge1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbmJsb2NrcXVvdGUge1xuXHRtYXJnaW46IDAgMjBweDtcbn1cblxuYWRkcmVzcyB7XG5cdG1hcmdpbjogMCAwIDIwcHg7XG59XG5cbnByZSB7XG5cdGJhY2tncm91bmQ6ICRjb2xvcl9fYmFja2dyb3VuZC1wcmU7XG5cdGZvbnQtZmFtaWx5OiAkZm9udF9fcHJlO1xuXHRmb250LXNpemU6IDE2cHg7XG5cdGxpbmUtaGVpZ2h0OiAyMHB4O1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRtYXgtd2lkdGg6IDEwMCU7XG5cdG92ZXJmbG93OiBhdXRvO1xuXHRwYWRkaW5nOiAyMHB4O1xufVxuXG5jb2RlLCBrYmQsIHR0LCB2YXIge1xuXHRmb250LWZhbWlseTogJGZvbnRfX2NvZGU7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgwLjkzNzUpO1xufVxuXG5hYmJyLCBhY3JvbnltIHtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAkY29sb3JfX2JvcmRlci1hYmJyO1xuXHRjdXJzb3I6IGhlbHA7XG59XG5cbm1hcmssIGlucyB7XG5cdGJhY2tncm91bmQ6ICRjb2xvcl9fYmFja2dyb3VuZC1pbnM7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuYmlnIHtcblx0Zm9udC1zaXplOiAxMjUlO1xufVxuIiwiaHRtbCB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIgeyAvKiBJbmhlcml0IGJveC1zaXppbmcgdG8gbWFrZSBpdCBlYXNpZXIgdG8gY2hhbmdlIHRoZSBwcm9wZXJ0eSBmb3IgY29tcG9uZW50cyB0aGF0IGxldmVyYWdlIG90aGVyIGJlaGF2aW9yOyBzZWUgaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9pbmhlcml0aW5nLWJveC1zaXppbmctcHJvYmFibHktc2xpZ2h0bHktYmV0dGVyLWJlc3QtcHJhY3RpY2UvICovXG5cdGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmJvZHkge1xuXHRiYWNrZ3JvdW5kOiAkY29sb3JfX2JhY2tncm91bmQtYm9keTsgLyogRmFsbGJhY2sgZm9yIHdoZW4gdGhlcmUgaXMgbm8gY3VzdG9tIGJhY2tncm91bmQgY29sb3IgZGVmaW5lZC4gKi9cbn1cblxuaHIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQtaHI7XG5cdGJvcmRlcjogMDtcblx0aGVpZ2h0OiAxcHg7XG5cdG1hcmdpbi1ib3R0b206IDEuNWVtO1xufVxuXG5AaW1wb3J0IFwibGlzdHNcIjtcblxuaW1nIHtcblx0aGVpZ2h0OiBhdXRvOyAvKiBNYWtlIHN1cmUgaW1hZ2VzIGFyZSBzY2FsZWQgY29ycmVjdGx5LiAqL1xuXHRtYXgtd2lkdGg6IDEwMCU7IC8qIEFkaGVyZSB0byBjb250YWluZXIgd2lkdGguICovXG59XG5cbmZpZ3VyZSB7XG5cdG1hcmdpbjogMWVtIDA7IC8qIEV4dHJhIHdpZGUgaW1hZ2VzIHdpdGhpbiBmaWd1cmUgdGFncyBkb24ndCBvdmVyZmxvdyB0aGUgY29udGVudCBhcmVhLiAqL1xufVxuXG5AaW1wb3J0IFwidGFibGVzXCI7XG4iLCJ1bCwgb2wge1xuXHRtYXJnaW46IDAgMCAxZW0gMGVtO1xuICAgIHBhZGRpbmc6IDAgMCAwIDFlbTtcbn1cblxudWwge1xuXHRsaXN0LXN0eWxlOiBkaXNjO1xufVxuXG5vbCB7XG5cdGxpc3Qtc3R5bGU6IGRlY2ltYWw7XG59XG5cbmxpID4gdWwsXG5saSA+IG9sIHtcblx0bWFyZ2luLWJvdHRvbTogMDtcblx0bWFyZ2luLWxlZnQ6IDEuNWVtO1xufVxuXG5kdCB7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5kZCB7XG5cdG1hcmdpbjogMCAxLjVlbSAxLjVlbTtcbn1cbiIsInRhYmxlIHtcblx0bWFyZ2luOiAwIDAgMS41ZW07XG5cdHdpZHRoOiAxMDAlO1xufVxuIiwiYnV0dG9uLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuXHRib3JkZXI6IDFweCBzb2xpZDtcblx0Ym9yZGVyLWNvbG9yOiAkY29sb3JfX2JvcmRlci1idXR0b247XG5cdGJvcmRlci1yYWRpdXM6IDNweDtcblx0YmFja2dyb3VuZDogJGNvbG9yX19iYWNrZ3JvdW5kLWJ1dHRvbjtcblx0Y29sb3I6IHJnYmEoMCwgMCwgMCwgLjgpO1xuXHRAaW5jbHVkZSBmb250LXNpemUoMC43NSk7XG5cdGxpbmUtaGVpZ2h0OiAxO1xuXHRwYWRkaW5nOiAuNmVtIDFlbSAuNGVtO1xuXG5cdCY6aG92ZXIge1xuXHRcdGJvcmRlci1jb2xvcjogJGNvbG9yX19ib3JkZXItYnV0dG9uLWhvdmVyO1xuXHR9XG5cblx0JjphY3RpdmUsXG5cdCY6Zm9jdXMge1xuXHRcdGJvcmRlci1jb2xvcjogJGNvbG9yX19ib3JkZXItYnV0dG9uLWZvY3VzO1xuXHR9XG59XG4iLCJpbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJ1cmxcIl0sXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5pbnB1dFt0eXBlPVwicmFuZ2VcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSxcbmlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwiY29sb3JcIl0sXG50ZXh0YXJlYSB7XG5cdGNvbG9yOiAkY29sb3JfX3RleHQtaW5wdXQ7XG5cdGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9fYm9yZGVyLWlucHV0O1xuXHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdHBhZGRpbmc6IDNweDtcblxuXHQmOmZvY3VzIHtcblx0XHRjb2xvcjogJGNvbG9yX190ZXh0LWlucHV0LWZvY3VzO1xuXHR9XG59XG5cbnNlbGVjdCB7XG5cdGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9fYm9yZGVyLWlucHV0O1xufVxuXG50ZXh0YXJlYSB7XG5cdHdpZHRoOiAxMDAlO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyMgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJsaW5rc1wiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIyBNZW51c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcIm1lbnVzXCI7XG4iLCJhIHtcblx0Y29sb3I6ICRjb2xvcl9fbGluaztcblxuXHQmOnZpc2l0ZWQge1xuXHRcdGNvbG9yOiAkY29sb3JfX2xpbmstdmlzaXRlZDtcblx0fVxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0Y29sb3I6ICRjb2xvcl9fbGluay1ob3Zlcjtcblx0fVxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiB0aGluIGRvdHRlZDtcblx0fVxuXHQmOmhvdmVyLFxuXHQmOmFjdGl2ZSB7XG5cdFx0b3V0bGluZTogMDtcblx0fVxufVxuIiwiLm1haW4tbmF2aWdhdGlvbiB7XG5cdGNsZWFyOiBib3RoO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHQvLyBmbG9hdDogbGVmdDtcblx0d2lkdGg6IDEwMCU7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGxpbmUtaGVpZ2h0OiAyMHB4O1xuXHRmb250LXNpemU6IDE2cHg7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkIHZhcigtLWJyYW5kLWJsYWNrLCBibGFjayk7XG5cdFxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW1sYXJnZSkge1xuXHRcdHBhZGRpbmctdG9wOiA3cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDEuMjtcblx0XHRmb250LXNpemU6IDEycHg7XG5cdH1cblxuXHQ+IGRpdiB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblxuXHR1bCB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cblx0XHR1bCB7XG5cdFx0XHQvLyBmbG9hdDogbGVmdDtcblx0XHRcdC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdC8vIHRvcDogMTAwJTtcblx0XHRcdC8vIGxlZnQ6IC05OTllbTtcblx0XHRcdC8vIHotaW5kZXg6IDk5OTk5O1xuXHRcdFx0Ly8gZGlzcGxheTogbm9uZTtcblx0XHRcdHBhZGRpbmctbGVmdDogMTBweDtcblx0XHRcdC8vIGhlaWdodDogMDtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJyYW5kLWJsYWNrLCBibGFjayk7XG5cdFx0XHRcblxuXHRcdFx0bGkge1xuXHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW1sYXJnZSkge1xuXHRcdFx0XHRcdCY6Zmlyc3Qtb2YtdHlwZSB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAycHg7XG5cdFx0XHRcdFx0fVx0XG5cdFx0XHRcdFx0JjpsYXN0LW9mLXR5cGUge1xuXHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ly8gdWwge1xuXHRcdFx0Ly8gXHQvLyBsZWZ0OiAtOTk5ZW07XG5cdFx0XHQvLyBcdC8vIHRvcDogMDtcblx0XHRcdC8vIH1cblxuXHRcdFx0Ly8gbGkge1xuXHRcdFx0Ly8gXHQmOmhvdmVyID4gdWwsXG5cdFx0XHQvLyBcdCYuZm9jdXMgPiB1bCB7XG5cdFx0XHQvLyBcdFx0Ly8gbGVmdDogMTAwJTtcblx0XHRcdC8vIFx0fVxuXHRcdFx0Ly8gfVxuXG5cdFx0XHQvLyBhIHtcblx0XHRcdC8vIFx0d2lkdGg6IDIwMHB4O1xuXHRcdFx0Ly8gfVxuXG5cdFx0XHQvLyA6aG92ZXIgPiBhLFxuXHRcdFx0Ly8gLmZvY3VzID4gYSB7XG5cdFx0XHQvLyB9XG5cblx0XHRcdC8vIGE6aG92ZXIsXG5cdFx0XHQvLyBhLmZvY3VzIHtcblx0XHRcdC8vIH1cblx0XHR9XG5cblx0XHRsaTpob3ZlciA+IHVsLFxuXHRcdGxpLmZvY3VzID4gdWwge1xuXHRcdFx0Ly8gbGVmdDogYXV0bztcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0Ly8gaGVpZ2h0OiB1bnNldDtcblxuXHRcdFx0bGkge1xuXHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIGxpIHtcblx0Ly8gXHRmbG9hdDogbGVmdDtcblx0Ly8gXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0Ly8gXHQvLyAmOmhvdmVyID4gYSxcblx0Ly8gXHQvLyAmLmZvY3VzID4gYSB7XG5cdC8vIFx0Ly8gfVxuXHQvLyB9XG5cblx0YSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdGNvbG9yOiB2YXIoLS1icmFuZC1ibGFjaywgYmxhY2spO1xuXHRcdGxpbmUtaGVpZ2h0OiAxOHB4O1xuXHRcdHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0Ly8gY29sb3I6IHZhcigtLWFjY2VudC1jb2xvciwgIzAwRTVEMSk7XG5cdFx0XHRvcGFjaXR5OiAwLjc1O1xuXHRcdH1cblx0fVxuXG5cdC5jdXJyZW50X3BhZ2VfaXRlbSA+IGEsXG5cdC5jdXJyZW50LW1lbnUtaXRlbSA+IGEsXG5cdC5jdXJyZW50LXBhZ2UtYW5jZXN0b3IgPiBhLFxuXHQuY3VycmVudC1tZW51LWFuY2VzdG9yID4gYSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFjY2VudC1jb2xvciwgIzAwRTVEMSk7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRsZWZ0OiAtMTBweDtcblx0XHRcdHdpZHRoOiA2cHg7XG5cdFx0XHRoZWlnaHQ6IGNhbGMoMTAwJSAtIDFweCk7XG5cdFx0fVxuXHR9XG59XG5cbi8qIFNtYWxsIG1lbnUuICovXG4ubWVudS10b2dnbGUge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLm1haW4tbmF2aWdhdGlvbiB7XG5cdCYudG9nZ2xlZCB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXHRcdHRvcDogMTgwcHg7XG5cdFx0bGVmdDogMDtcblx0XHQvLyB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjAwcHgpO1xuXHRcdHotaW5kZXg6IDEwMDtcblx0XHQvLyBtYXJnaW46IDAgMjBweDtcblx0XHRwYWRkaW5nOiAyMHB4IDA7XG5cblx0XHQubmF2LW1lbnUge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRnYXA6IDEwcHg7XG5cdFx0XHRcblx0XHR9XG5cdH1cbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtbGFyZ2UpIHtcblx0Lm1lbnUtdG9nZ2xlIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cdC5tYWluLW5hdmlnYXRpb24gdWwge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRnYXA6IDJweDtcblx0fVxufVxuXG4uY29tbWVudC1uYXZpZ2F0aW9uLFxuLnBvc3RzLW5hdmlnYXRpb24sXG4ucG9zdC1uYXZpZ2F0aW9uIHtcblxuXHQuc2l0ZS1tYWluICYge1xuXHRcdG1hcmdpbjogMCAwIDEuNWVtO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdH1cblxuXHQubmF2LXByZXZpb3VzIHtcblx0XHRmbG9hdDogbGVmdDtcblx0XHR3aWR0aDogNTAlO1xuXHR9XG5cblx0Lm5hdi1uZXh0IHtcblx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0d2lkdGg6IDUwJTtcblx0fVxufVxuIiwiLyogVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVycy4gKi9cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuXHRib3JkZXI6IDA7XG5cdGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcblx0Y2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuXHRoZWlnaHQ6IDFweDtcblx0bWFyZ2luOiAtMXB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwO1xuXHRwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcblx0d2lkdGg6IDFweDtcblx0d29yZC13cmFwOiBub3JtYWwgIWltcG9ydGFudDsgLyogTWFueSBzY3JlZW4gcmVhZGVyIGFuZCBicm93c2VyIGNvbWJpbmF0aW9ucyBhbm5vdW5jZSBicm9rZW4gd29yZHMgYXMgdGhleSB3b3VsZCBhcHBlYXIgdmlzdWFsbHkuICovXG5cblx0Jjpmb2N1cyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19iYWNrZ3JvdW5kLXNjcmVlbjtcblx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuXHRcdGNsaXA6IGF1dG8gIWltcG9ydGFudDtcblx0XHRjbGlwLXBhdGg6IG5vbmU7XG5cdFx0Y29sb3I6ICRjb2xvcl9fdGV4dC1zY3JlZW47XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDAuODc1KTtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0bGVmdDogNXB4O1xuXHRcdGxpbmUtaGVpZ2h0OiBub3JtYWw7XG5cdFx0cGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdHRvcDogNXB4O1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdHotaW5kZXg6IDEwMDAwMDsgLyogQWJvdmUgV1AgdG9vbGJhci4gKi9cblx0fVxufVxuXG4vKiBEbyBub3Qgc2hvdyB0aGUgb3V0bGluZSBvbiB0aGUgc2tpcCBsaW5rIHRhcmdldC4gKi9cbiNjb250ZW50W3RhYmluZGV4PVwiLTFcIl06Zm9jdXMge1xuXHRvdXRsaW5lOiAwO1xufVxuIiwiLmFsaWdubGVmdCB7XG5cdGRpc3BsYXk6IGlubGluZTtcblx0ZmxvYXQ6IGxlZnQ7XG5cdG1hcmdpbi1yaWdodDogMS41ZW07XG59XG5cbi5hbGlnbnJpZ2h0IHtcblx0ZGlzcGxheTogaW5saW5lO1xuXHRmbG9hdDogcmlnaHQ7XG5cdG1hcmdpbi1sZWZ0OiAxLjVlbTtcbn1cblxuLmFsaWduY2VudGVyIHtcblx0Y2xlYXI6IGJvdGg7XG5cdEBpbmNsdWRlIGNlbnRlci1ibG9jaztcbn1cbiIsIi5jbGVhcjpiZWZvcmUsXG4uY2xlYXI6YWZ0ZXIsXG4uZW50cnktY29udGVudDpiZWZvcmUsXG4uZW50cnktY29udGVudDphZnRlcixcbi5jb21tZW50LWNvbnRlbnQ6YmVmb3JlLFxuLmNvbW1lbnQtY29udGVudDphZnRlcixcbi5zaXRlLWhlYWRlcjpiZWZvcmUsXG4uc2l0ZS1oZWFkZXI6YWZ0ZXIsXG4uc2l0ZS1jb250ZW50OmJlZm9yZSxcbi5zaXRlLWNvbnRlbnQ6YWZ0ZXIsXG4uc2l0ZS1mb290ZXI6YmVmb3JlLFxuLnNpdGUtZm9vdGVyOmFmdGVyIHtcblx0QGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi5jbGVhcjphZnRlcixcbi5lbnRyeS1jb250ZW50OmFmdGVyLFxuLmNvbW1lbnQtY29udGVudDphZnRlcixcbi5zaXRlLWhlYWRlcjphZnRlcixcbi5zaXRlLWNvbnRlbnQ6YWZ0ZXIsXG4uc2l0ZS1mb290ZXI6YWZ0ZXIge1xuXHRAaW5jbHVkZSBjbGVhcmZpeC1hZnRlcjtcbn1cbiIsIioge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5ib2R5IHtcbiAgICBiYWNrZ3JvdW5kOiBibGFjaztcblx0Y29sb3I6IHZhcigtLXRleHQtY29sb3IsIGJsYWNrKTtcblx0Zm9udC1mYW1pbHk6ICdETSBTYW5zJywgc2Fucy1zZXJpZjtcblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cdGxpbmUtaGVpZ2h0OiAxLjI1O1xuXG5cdCYubWVudS1hY3RpdmUge1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0Ly8gcG9zaXRpb246IGZpeGVkO1xuXHR9XG5cblx0Ji5vdmVybGF5IHtcblx0XHQuc2l0ZSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogMTBweCAxMHB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOlxuXHRcdFx0XHRcdGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgYXF1YSAxcHgsIHRyYW5zcGFyZW50IDFweCksXG5cdFx0XHRcdFx0bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgYXF1YSAxcHgsIHRyYW5zcGFyZW50IDFweCk7XG5cdFx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdFx0XHRvcGFjaXR5OiAwLjI7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5hZG1pbi1iYXIge1xuXHRcdFx0LnNpdGUge1xuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0dG9wOiAzMnB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbmltZyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uaGlkZGVuIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuc3Ryb25nIHtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnNpdGUge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IDIwcHg7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtbGFyZ2UpIHtcblx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMjEwcHggMWZyO1xuXHRcdGdyaWQtdGVtcGxhdGUtcm93czogMWZyIDUwcHg7XG5cdFx0Z3JpZC1jb2x1bW4tZ2FwOiAxMHB4O1xuXHRcdGdyaWQtcm93LWdhcDogMTBweDtcblx0fVxufVxuXG4uc2l0ZS1oZWFkZXIgeyBncmlkLWFyZWE6IDEgLyAxIC8gMyAvIDI7IH1cbi5zaXRlLWNvbnRlbnQgeyBncmlkLWFyZWE6IDEgLyAyIC8gMiAvIDM7IH1cbi5zaXRlLWZvb3RlciB7IGdyaWQtYXJlYTogMiAvIDIgLyAzIC8gMzsgfVxuXG4uc2l0ZSB7XG5cdG1pbi1oZWlnaHQ6IDEwMHZoO1xuXHRiYWNrZ3JvdW5kOiB3aGl0ZTtcblx0bWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuXHRtYXJnaW46IDAgYXV0bztcblx0cGFkZGluZzogMjBweDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtbGFyZ2UpIHtcblx0XHRwYWRkaW5nOiAyMHB4IDIwcHggMCA0MHB4O1xuXHR9XG59XG5cbi5zaXRlLWNvbnRlbnQge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGJhY2tncm91bmQtY29sb3I6ICNGNUY2Rjg7XG5cdHBhZGRpbmc6IDEwcHg7XG5cdFxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW1sYXJnZSkge1xuXHRcdHBhZGRpbmc6IDIwcHg7XG5cdFx0cGFkZGluZzogMjBweCA2MHB4IDIwcHggMjBweDtcblx0fVxufVxuXG5cbi50b3AtYnV0dG9uIHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHQvLyB0b3A6IDIxMHB4O1xuXHQvLyBsZWZ0OiBjYWxjKDUwJSArICgkbWF4LXdpZHRoIC8gMikpO1xuXHQvLyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuXHRib3R0b206IDIwcHg7XG5cdHJpZ2h0OiAzMHB4O1xuXHR6LWluZGV4OiA5OTk5O1xuXHRmb250LXdlaWdodDogNzAwO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGJvcmRlci1ib3R0b206IDNweCBzb2xpZCB2YXIoLS10ZXh0LWNvbG9yLCBibGFjayk7XG5cdGJhY2tncm91bmQtY29sb3I6IHJnYmEod2hpdGUsIDAuNSk7XG5cdHBhZGRpbmc6IDEwcHg7XG5cblx0Jjpob3ZlciB7XG5cdFx0Ym9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tYWNjZW50LWNvbG9yLCAjMDBFNUQxKTtcblx0fVxuXG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNjBweCkge1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0cmlnaHQ6IHVuc2V0O1xuXHRcdGxlZnQ6IGNhbGMoNTAlICsgKCRtYXgtd2lkdGggLyAyKSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTEwMCUgLSA0MHB4KSk7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW1sYXJnZSkge1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0dG9wOiAyMTBweDtcblx0XHRib3R0b206IHVuc2V0O1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHR9XG59XG5cbi5hY3Rpb25zIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDEwcHg7XG5cdHJpZ2h0OiAxMHB4O1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRnYXA6IDVweDtcblx0b3BhY2l0eTogMDtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4uZG93bmxvYWQsXG4uY2xpcGJvYXJkIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGhlaWdodDogMDtcblx0d2lkdGg6IDI0cHg7XG5cdHBhZGRpbmctdG9wOiAyNHB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGJsYWNrLCAwLjUpO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTZweDtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UtaW4tb3V0O1xuXG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuXHR9XG59XG4uZG93bmxvYWQge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoYXNzZXRzL2ltYWdlcy9kb3dubG9hZC5zdmcpO1xufVxuLmNsaXBib2FyZCB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybChhc3NldHMvaW1hZ2VzL2xpbmsuc3ZnKTtcbn1cblxuLmJhY2tncm91bmQtaW1hZ2Uge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblxuXHRpbWcge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRvYmplY3QtZml0OiBjb3Zlcjtcblx0fVxufVxuXG4vLyBJRVxuLmltYWdlLW9iamVjdC1maXQge1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFxuXHRpbWcge1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cbn0iLCIkc2l6ZV9fc2l0ZS1tYWluOiAxMDAlO1xuJHNpemVfX3NpdGUtc2lkZWJhcjogMjUlO1xuXG4kbWF4LXdpZHRoOiAxMzYwcHg7XG4iLCIuYnJhbmQtbmF2LXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAyMHB4O1xuICAgIHotaW5kZXg6IDEwMDtcbn1cblxuLmJyYW5kLWRldGFpbHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgaGVpZ2h0OiAxODBweDtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW1sYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IDIxMHB4O1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDAgN3B4O1xuICAgIH1cblxuICAgIC5sb2dvIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogYXV0bztcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG4vLyBIYW1idXJnZXIgb3ZlcnJpZGVzXG5cbi8vICRoYW1idXJnZXItbGF5ZXItY29sb3I6ICMwMDA7XG5cbi5oYW1idXJnZXIgLmhhbWJ1cmdlci1pbm5lcixcbi5oYW1idXJnZXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuLmhhbWJ1cmdlciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kX2JsYWNrO1xufVxuXG4uaGFtYnVyZ2VyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMjBweDtcbiAgICByaWdodDogLTE1cHg7XG5cbiAgICBzdHJvbmcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC50b2dnbGVkICYge1xuICAgICAgICB0b3A6IC02NHB4O1xuICAgICAgICByaWdodDogLTE1cHg7XG4gICAgfVxufSIsIi5pbnRyb2R1Y3Rpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5jb250ZW50LWFyZWEubGlnaHQtdGV4dCAmIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmludHJvLWNvcHkge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkIHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5pbnRyby1jb3B5IHtcbiAgICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkIHZhcigtLXRleHQtY29sb3IsIGJsYWNrKTtcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW1sYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygoMTAwLzYgKiAyJSkgKyAxMHB4KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICB9XG4gICAgfVxufSIsIi5zaXRlLWZvb3RlciB7XG4gICAgLy8gQGluY2x1ZGUgZm9udC1zaXplKDAuNzUpO1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1jb2xvciwgYmxhY2spO1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjVzO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRicmFuZF9hY2NlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9vdGVyLWNvbnRlbnQge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdGV4dC1jb2xvciwgYmxhY2spO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICB9XG59IiwiLnBhZ2UtaGVhZGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW1sYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IDE5MHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDEwcHg7XG5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMikgLSAyMHB4ICsgKDIwcHggLyAyKSk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC50aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDY0cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtbGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2NHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2VjdGlvbi1uYXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGNvbHVtbi1nYXA6IDEwcHg7XG4gICAgcm93LWdhcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcgLyc7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLnRpdGxlLWNvcHkge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS10ZXh0LWNvbG9yLCBibGFjayk7XG4gICAgcGFkZGluZy10b3A6IDEzcHg7XG5cbiAgICAudGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICAgIC5zdWJ0aXRsZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuXG4gICAgJi50ZXh0LXdpZHRoLTMzIHtcbiAgICAgICAgLnRpdGxlLFxuICAgICAgICAuc3VidGl0bGUsXG4gICAgICAgIC5jb3B5LWNvbHVtbnMge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bWxhcmdlKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoKDEwMC8zICogMSUpIC0gMTBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnRleHQtd2lkdGgtNTAge1xuICAgICAgICAudGl0bGUsXG4gICAgICAgIC5zdWJ0aXRsZSxcbiAgICAgICAgLmNvcHktY29sdW1ucyB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYyg3NSUgLSAxMHB4KTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtbGFyZ2UpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYudGV4dC13aWR0aC02NiB7XG4gICAgICAgIC50aXRsZSxcbiAgICAgICAgLnN1YnRpdGxlLFxuICAgICAgICAuY29weS1jb2x1bW5zIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEwcHgpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW1sYXJnZSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAvMyAqIDIlKSAtIDEwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi50d28tY29sdW1ucyB7XG4gICAgICAgIC50aXRsZSxcbiAgICAgICAgLnN1YnRpdGxlLFxuICAgICAgICAuY29weS1jb2x1bW5zIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvcHktY29sdW1ucyB7XG5cbiAgICAgICAgJi50d28tY29sdW1ucyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW1sYXJnZSkge1xuICAgICAgICAgICAgICAgIGdhcDogMjBweDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb3B5IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnNpemUtc21hbGwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zaXplLWxhcmdlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbn0iLCIuc2luZ2xlLWltYWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICY6aG92ZXIge1xuICAgICAgICAuYWN0aW9ucyB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5pbWFnZS10ZXh0LWNvbHVtbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAxMHB4O1xuXG4gICAgPiAqIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweC8yKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW1sYXJnZSkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBnYXA6IDIwcHg7XG5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5yZXZlcnNlLW9yZGVyIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIuaW1hZ2UtdGV4dC1ibG9ja3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtbGFyZ2UpIHtcbiAgICAgICAgZ2FwOiAyMHB4O1xuICAgIH1cblxuICAgIC5jb250ZW50LWJsb2NrIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cblxuICAgJi5ibG9ja3MtMiB7XG4gICAgICAgIC5jb250ZW50LWJsb2NrIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMikgLSAxMHB4ICsgKDEwcHggLyAyKSk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bWxhcmdlKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAyKSAtIDIwcHggKyAoMjBweCAvIDIpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYmxvY2tzLTMge1xuICAgICAgICAuY29udGVudC1ibG9jayB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDIpIC0gMTBweCArICgxMHB4IC8gMikpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW1sYXJnZSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMykgLSAyMHB4ICsgKDIwcHggLyAzKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmJsb2Nrcy00IHtcbiAgICAgICAgLmNvbnRlbnQtYmxvY2sge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAyKSAtIDEwcHggKyAoMTBweCAvIDIpKTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtbGFyZ2UpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDQpIC0gMjBweCArICgyMHB4IC8gNCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG5cbiAgICAudGV4dCB7XG4gICAgICAgIHAge1xuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaW1hZ2Uge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAuYWN0aW9ucyB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIudGV4dC1hbmQtbGFwdG9wIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICA+ICoge1xuICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDIpIC0gMTBweCArICgxMHB4IC8gMikpO1xuICAgIH1cbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW1sYXJnZSkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBnYXA6IDIwcHg7XG5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMikgLSAyMHB4ICsgKDIwcHggLyAyKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGV4dC1ncm91cCB7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxhcHRvcC1ncm91cCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgLmxhcHRvcC1mcmFtZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKGFzc2V0cy9pbWFnZXMvbWFjYm9vay1zdHJhaWdodC5wbmcpIGNlbnRlciB0b3Agbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgIGFzcGVjdC1yYXRpbzogMjAwMCAvIDExODc7XG4gICAgfVxuICAgIFxuICAgIC5sYXB0b3AtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggMTMlIDIwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bWxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNnB4IDYwcHggMjBweDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIuY29sb3ItY2hpcHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogMjBweDtcblxuICAgID4gKiB7XG4gICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMikgLSAyMHB4ICsgKDIwcHggLyAyKSk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtbGFyZ2UpIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gNCkgLSAyMHB4ICsgKDIwcHggLyA0KSk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyA2KSAtIDIwcHggKyAoMjBweCAvIDYpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhleCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmNvbG9yLWNoaXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5jb2xvci1pbmZvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uY2lyY2xlLXN3YXRjaCB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTIwcHg7XG4gICAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICYuYWRkLWJvcmRlciB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgfVxufVxuXG4uZ3JhZGllbnQtc3dhdGNoIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB3aWR0aDogODBweDtcbn1cblxuLmdyYWRpZW50LWNoaXAge1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBsaW5lLWhlaWdodDogMC45O1xuICAgIGhlaWdodDogMzBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgc3BhbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuZ3JhZGllbnQtY2hpcC1iZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICB9XG59IiwiZGl2W2NsYXNzKj0nbGF5b3V0LSddIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgLnRhbGwtc2xpbSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBhc3BlY3QtcmF0aW86IDI0Mi8zNjk7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxheW91dC0xIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIGNhbGMoNTAlIC0gNXB4KSk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMywgMWZyKTtcbiAgICBncmlkLWNvbHVtbi1nYXA6IDEwcHg7XG4gICAgZ3JpZC1yb3ctZ2FwOiAxMHB4O1xuICAgIFxuICAgIC5kaXYxIHsgZ3JpZC1hcmVhOiAxIC8gMSAvIDIgLyAzOyB9XG4gICAgLmRpdjIgeyBncmlkLWFyZWE6IDIgLyAxIC8gMyAvIDI7IH1cbiAgICAuZGl2MyB7IGdyaWQtYXJlYTogMiAvIDIgLyAzIC8gMzsgfVxuICAgIC5kaXY0IHsgZ3JpZC1hcmVhOiAzIC8gMSAvIDQgLyAyOyB9XG4gICAgLmRpdjUgeyBncmlkLWFyZWE6IDMgLyAyIC8gNCAvIDM7IH1cblxuICAgIC8vIHR3ZWFrc1xuXG4gICAgPiAqIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLmFjdGlvbnMge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZGl2MSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2MHB4KSB7XG4gICAgLmxheW91dC0xIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBjYWxjKDUwJSAtIDVweCkgcmVwZWF0KDIsIDFmcik7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDIsIDFmcik7XG4gICAgICAgIGdyaWQtY29sdW1uLWdhcDogMTBweDtcbiAgICAgICAgZ3JpZC1yb3ctZ2FwOiAxMHB4O1xuICAgICAgICBcbiAgICAgICAgLmRpdjEgeyBncmlkLWFyZWE6IDEgLyAxIC8gMyAvIDI7IH1cbiAgICAgICAgLmRpdjIgeyBncmlkLWFyZWE6IDEgLyAyIC8gMiAvIDM7IH1cbiAgICAgICAgLmRpdjMgeyBncmlkLWFyZWE6IDEgLyAzIC8gMiAvIDQ7IH1cbiAgICAgICAgLmRpdjQgeyBncmlkLWFyZWE6IDIgLyAyIC8gMyAvIDM7IH1cbiAgICAgICAgLmRpdjUgeyBncmlkLWFyZWE6IDIgLyAzIC8gMyAvIDQ7IH1cbiAgICB9XG59XG5cbi5sYXlvdXQtMiB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBjYWxjKDUwJSAtIDVweCkpO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDQsIDFmcik7XG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiAxMHB4O1xuICAgIGdyaWQtcm93LWdhcDogMTBweDtcbiAgICBcbiAgICAuZGl2MSB7IGdyaWQtYXJlYTogMSAvIDEgLyAyIC8gMjsgfVxuICAgIC5kaXYyIHsgZ3JpZC1hcmVhOiAyIC8gMSAvIDMgLyAyOyB9XG4gICAgLmRpdjMgeyBncmlkLWFyZWE6IDEgLyAyIC8gMyAvIDM7IH1cbiAgICAuZGl2NCB7IGdyaWQtYXJlYTogMyAvIDIgLyA0IC8gMzsgfVxuICAgIC5kaXY1IHsgZ3JpZC1hcmVhOiA0IC8gMiAvIDUgLyAzOyB9XG4gICAgLmRpdjYgeyBncmlkLWFyZWE6IDMgLyAxIC8gNSAvIDI7IH1cblxuICAgIC8vIHR3ZWFrc1xuICAgID4gKiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5hY3Rpb25zIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuICAgIFxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzYwcHgpIHtcbiAgICAubGF5b3V0LTIge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgICBncmlkLWNvbHVtbi1nYXA6IDEwcHg7XG4gICAgICAgIGdyaWQtcm93LWdhcDogMTBweDtcblxuICAgICAgICAuZGl2MSB7IGdyaWQtYXJlYTogMSAvIDEgLyAyIC8gMjsgfVxuICAgICAgICAuZGl2MiB7IGdyaWQtYXJlYTogMiAvIDEgLyAzIC8gMjsgfVxuICAgICAgICAuZGl2MyB7IGdyaWQtYXJlYTogMSAvIDIgLyAzIC8gMzsgfVxuICAgICAgICAuZGl2NCB7IGdyaWQtYXJlYTogMSAvIDMgLyAyIC8gNDsgfVxuICAgICAgICAuZGl2NSB7IGdyaWQtYXJlYTogMiAvIDMgLyAzIC8gNDsgfVxuICAgICAgICAuZGl2NiB7IGdyaWQtYXJlYTogMSAvIDQgLyAzIC8gNTsgfVxuICAgIH1cbn1cblxuLmxheW91dC0zIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMywgYXV0byk7XG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiAxMHB4O1xuICAgIGdyaWQtcm93LWdhcDogMTBweDtcbiAgICBcbiAgICAuZGl2MSB7IGdyaWQtYXJlYTogMSAvIDEgLyAyIC8gMjsgfVxuICAgIC5kaXYyIHsgZ3JpZC1hcmVhOiAxIC8gMiAvIDIgLyAzOyB9XG4gICAgLmRpdjMgeyBncmlkLWFyZWE6IDIgLyAxIC8gMyAvIDI7IH1cbiAgICAuZGl2NCB7IGdyaWQtYXJlYTogMyAvIDEgLyA0IC8gMjsgfVxuICAgIC5kaXY1IHsgZ3JpZC1hcmVhOiAyIC8gMiAvIDQgLyAzOyB9XG5cbiAgICAvLyB0d2Vha3NcblxuICAgID4gKiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5hY3Rpb25zIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjBweCkge1xuICAgIC5sYXlvdXQtMyB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDIsIDFmcik7XG4gICAgICAgIGdyaWQtY29sdW1uLWdhcDogMTBweDtcbiAgICAgICAgZ3JpZC1yb3ctZ2FwOiAxMHB4O1xuICAgICAgICBcbiAgICAgICAgLmRpdjEgeyBncmlkLWFyZWE6IDEgLyAxIC8gMyAvIDI7IH1cbiAgICAgICAgLmRpdjIgeyBncmlkLWFyZWE6IDEgLyAyIC8gMyAvIDM7IH1cbiAgICAgICAgLmRpdjMgeyBncmlkLWFyZWE6IDEgLyAzIC8gMiAvIDQ7IH1cbiAgICAgICAgLmRpdjQgeyBncmlkLWFyZWE6IDIgLyAzIC8gMyAvIDQ7IH1cbiAgICAgICAgLmRpdjUgeyBncmlkLWFyZWE6IDEgLyA0IC8gMyAvIDU7IH1cbiAgICB9XG59IiwiLnZpZGVvIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uZW1iZWQtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICBpZnJhbWUsXG4gICAgb2JqZWN0LFxuICAgIGVtYmVkIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7IGxlZnQ6IDA7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7XG4gICAgfVxufSIsIi5pbWFnZS10ZXh0LXN1cHBvcnRpbmctaW1hZ2Uge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgNTAlKTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgyLCBhdXRvKTtcbiAgICBncmlkLWNvbHVtbi1nYXA6IDEwcHg7XG4gICAgZ3JpZC1yb3ctZ2FwOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEwcHgpO1xuICAgIFxuICAgIC5sYXJnZS1pbWFnZSB7IGdyaWQtYXJlYTogMSAvIDEgLyAzIC8gMjsgfVxuICAgIC50ZXh0IHsgZ3JpZC1hcmVhOiAxIC8gMiAvIDIgLyAzOyB9XG4gICAgLnN1cHBvcnRpbmctaW1hZ2UgeyBncmlkLWFyZWE6IDIgLyAyIC8gMyAvIDM7IH1cblxuICAgIC8vIHR3ZWFrc1xuICAgIC5zdXBwb3J0aW5nLWltYWdlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgJi53aWR0aC10aGlyZCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzJSAtIDEwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi53aWR0aC1oYWxmIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYud2lkdGgtdHdvLXRoaXJkcyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2JSAtIDEwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi53aWR0aC1mdWxsIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufSIsIi50ZXh0LWltYWdlLXRpbGVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICA+ICoge1xuICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDIpIC0gMTBweCArICgxMHB4IC8gMikpO1xuICAgIH1cbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW1sYXJnZSkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgZ2FwOiAyMHB4O1xuXG4gICAgICAgID4gKiB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDIpIC0gMjBweCArICgyMHB4IC8gMikpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgIH1cblxuICAgIC50ZXh0LWxhcmdlLWltYWdlIHtcblxuICAgIH1cblxuICAgIC50aWxlZC1pbWFnZXMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGdhcDogMTBweDtcblxuICAgICAgICA+ICoge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLyAyKSAtIDIwcHggKyAoMjBweCAvIDIpKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuY291bnQtdGhyZWUge1xuICAgICAgICAgICAgPiAqIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDMpIC0gMjBweCArICgyMHB4IC8gMykpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcHRpb24ge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbn0iLCI6cm9vdCB7XG4gICAgLS1zd2lwZXItcGFnaW5hdGlvbi1ib3R0b206IDIwcHg7XG4gICAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaGVpZ2h0OiAxMHB4O1xuICAgIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemU6IDEwcHg7XG4gICAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtY29sb3I6IHJnYigxMTgsIDExOCwgMTE4KTtcbiAgICAtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yOiB3aGl0ZTtcbiAgICAtLXN3aXBlci10aGVtZS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaG9yaXpvbnRhbC1nYXA6IDVweDtcbiAgICAvLyAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1ib3JkZXItcmFkaXVzOiAwO1xuICAgIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLW9wYWNpdHk6IDE7XG59XG5cbi5jYXJvdXNlbC1zbGlkZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBtYXgtd2lkdGg6IDEwMDBweDtcblxuXG4gICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4uc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi5zbGlkZS1wYWdpbmF0aW9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgLy8gYm94LXNoYWRvdzogMnB4IDJweCAwIGJsYWNrO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYigxMTgsIDExOCwgMTE4KTtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xufSJdfQ== */
