/* --------------------------------------------------------------
* TABLE OF CONTENTS:
* --------------------------------------------------------------
*  # Normalize
*  # Elements
*  # Modules
* 	    ## Accessibility
* 	    ## Alignment
* 	    ## Clearnings
* 	    ## Media
* 	# Components
* 	    ## Primary menu
*      ## Gutenberg blocks
* 	    ## Pagination
* 	    ## Next/Prev Links
* 	    ## Comments
* 	    ## Widgets
* 	    ## Forms
*  # Layout
*      ## Header
* 	    ## Footer
* 	# Templates
* 	     ## Site
* 	     ## Posts and pages
*  # Print
* -------------------------------------------------------------- */
/* stylelint-disable max-line-length, scss/dollar-variable-pattern, value-keyword-case */
/* styleline-enable */
/* stylelint-disable at-rule-empty-line-before */
/* styleline-enable */
/* stylelint-disable at-rule-empty-line-before */
/* styleline-enable */
/* stylelint-disable at-rule-empty-line-before */
/* stylelint-enable */
/* --------------------------------------------------------------
* # Normalize
* -------------------------------------------------------------- */
/*! normalize.css v8.0.1 | 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;
}
/**
* Render the `main` element consistently in IE.
*/
main {
	display: block;
}
/**
* 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;
}
/* --------------------------------------------------------------
* # Elements
* -------------------------------------------------------------- */
/* stylelint-disable no-duplicate-selectors, max-line-length, at-rule-empty-line-before */
html {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	background-color: white;
	color: #424851;
	font-family: "Roboto", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
	font-weight: 400;
	line-height: 1.6;
	word-wrap: break-word;
}

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

*, *::before, *::after {
	-webkit-box-sizing: inherit;
	box-sizing: inherit;
}
/* stylelint-enable */
body {
	background-color: white;
}

p {
	margin-bottom: 2rem;
}

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

blockquote {
	padding: 1rem 1.5rem;
	border-left: 8px solid #6027ce;
	margin: 0;
}

blockquote > * {
	margin: 0;
}

blockquote p {
	margin-bottom: 10px;
}

.widget-area blockquote,
.footer-widgets blockquote {
	background: transparent;
}

.footer-widgets blockquote {
	color: #fff;
}

address {
	margin: 0 0 1.5rem;
}

strong {
	font-weight: 700;
}

pre {
	overflow: auto;
	max-width: 100%;
	padding: 1.6rem;
	margin-bottom: 1.6rem;
	background-color: #f4f4f4;
	font-family: "source-code-pro", menlo, monaco, consolas, courier new, monospace;
	font-size: 0.8125rem;
	line-height: 1.6;
}

.widget-area pre {
	background-color: #474747;
}

.footer-widgets pre {
	background-color: #474747;
}

code,
kbd,
tt,
var {
	font-family: "source-code-pro", menlo, monaco, consolas, courier new, monospace;
	font-size: 0.8125rem;
}

abbr,
acronym {
	cursor: help;
}

abbr[title],
acronym {
	border-bottom: 2px dotted #6027ce;
	text-decoration: none;
}

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

.footer-widgets ins {
	color: #474747;
}

big {
	font-size: 125%;
}

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

.entry-title {
	font-size: 2.5rem;
}

.entry-content h1 {
	margin: 3rem 0 2rem;
}

.entry-content h2 {
	margin: 3rem 0 2rem;
}

.entry-content h3 {
	margin: 3rem 0 2rem;
}

.entry-content h4 {
	margin: 3rem 0 2rem;
}

.entry-content h5 {
	margin: 3rem 0 2rem;
}

.entry-content h6 {
	margin: 3rem 0 2rem;
}

.entry-content h1 {
	font-size: 2.5rem;
}

.entry-content h2 {
	font-size: 2.1875rem;
}

.entry-content h3 {
	font-size: 1.875rem;
}

.entry-content h4 {
	font-size: 1.5625rem;
}

.entry-content h5 {
	font-size: 1.25rem;
}

.entry-content h6 {
	font-size: 1.125rem;
}
/* default link styling */
a,
.anchor,
a:link {
	color: black;
	text-decoration: none;
}

hr {
	height: 3px;
	border: 0;
	background-color: #424851;
}

figure {
	margin: 1rem 0;
}

img {
	display: inline-block;
	width: auto;
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

ul,
ol {
	padding: 0 1.5rem;
	margin: 0 0 1.5rem;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

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

ul li {
	margin-bottom: 0.2rem;
}
/* stylelint-disable no-descending-specificity */
li ol,
li ul,
li li {
	margin-bottom: 0;
}
/* styleline-enable */
dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5rem 1.5rem;
}

::-moz-selection {
	background: rgba(249, 248, 113, 0.5);
	color: #4a4a4a;
	text-shadow: none;
}

::selection {
	background: rgba(249, 248, 113, 0.5);
	color: #4a4a4a;
	text-shadow: none;
}

.icon {
	position: relative;
	top: -0.0625rem;
	display: inline-block;
	width: 1rem;
	height: 1rem;
	fill: currentColor;
	vertical-align: middle;
}
/* Normalize svg behaviour on IE 11 */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	[src*='.svg'] {
		width: 100%;
		max-height: 100%;
	}
}

table {
	width: 100%;
	margin: 0 0 1.5rem;
	border-collapse: collapse;
}

table caption {
	text-align: center;
}

thead {
	border-bottom: 1px solid currentColor;
}

th {
	font-weight: inherit;
	text-align: inherit;
}

tfoot tr {
	border-top: 1px solid currentColor;
}
/* stylelint-disable no-descending-specificity */
tr {
	border-bottom: 1px solid currentColor;
}

tr:last-child {
	border-bottom: 0;
}
/* styleline-enable */
td,
th {
	padding: 0.25rem 0.5rem;
	border-right: 1px solid currentColor;
}

td:last-child,
th:last-child {
	border-right: 0;
}

textarea {
	resize: vertical;
}
/* --------------------------------------------------------------
* # Modules
* -------------------------------------------------------------- */
/* --------------------------------------------------------------
* ## Accessibility
* -------------------------------------------------------------- */
/* Text meant only for screen readers. */
.screen-reader-text {
	position: absolute !important;
	overflow: hidden;
	width: 1px;
	height: 1px;
	padding: 0;
	border: 0;
	margin: -1px;
	clip: rect(1px, 1px, 1px, 1px);
	-webkit-clip-path: inset(50%);
	clip-path: inset(50%);
	word-wrap: normal !important;
/* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	z-index: 100000;
/* Above WP toolbar. */
	top: 5px;
	left: 5px;
	display: block;
	width: auto;
	height: auto;
	padding: 15px 23px 14px;
	background-color: #474747;
	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;
	-webkit-clip-path: none;
	clip-path: none;
	color: white;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: normal;
	text-decoration: none;
}
/* Do not show the outline on the skip link target. */
.content[tabindex='-1']:focus {
	outline: 0;
}
/*
This will hide the focus indicator if the element receives focus via the mouse,
but it will still show up on keyboard focus.
*/
.js-focus-visible :focus:not(.focus-visible) {
	outline: none;
}

.focus-visible {
	outline-color: currentColor;
	outline-style: dotted;
	outline-width: 2px;
}
/* --------------------------------------------------------------
* ## Alignment
* -------------------------------------------------------------- */
.alignleft {
	display: inline;
	margin-right: 1.5rem;
	float: left;
}

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

.aligncenter {
	display: block;
	margin-right: auto;
	margin-left: auto;
	clear: both;
}
/* --------------------------------------------------------------
* ## Clearings
* -------------------------------------------------------------- */
/* stylelint-disable selector-pseudo-element-colon-notation */
.clear:after,
.entry-content:after,
.entry-footer:after,
.comment-content:after,
.site-header:after,
.site-footer:after,
.nav-links:after,
.pagination:after,
.comment-author:after,
.widget-area:after,
.widget:after,
.comment-meta:after {
	clear: both;
}

.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.entry-footer:before,
.entry-footer:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-footer:before,
.site-footer:after,
.nav-links:before,
.nav-links:after,
.pagination:before,
.pagination:after,
.comment-author:before,
.comment-author:after,
.widget-area:before,
.widget-area:after,
.widget:before,
.widget:after,
.comment-meta:before,
.comment-meta:after {
	display: table;
	content: '';
	table-layout: fixed;
}
/* stylelint-enable */
/* --------------------------------------------------------------
* ## Media
* -------------------------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	padding: 0;
	border: 0;
	margin-top: 0;
	margin-bottom: 0;
}
/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}
/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

.gallery {
	margin-bottom: 1.5rem;
}

.gallery-item {
	display: inline-block;
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0.25rem;
	margin: 0;
	vertical-align: top;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption,
.wp-caption-text {
	display: block;
	max-width: 100%;
	padding: 0 10px 0 0;
	margin-bottom: 1.5rem;
	font-size: 0.8125rem;
	font-style: italic;
	text-align: left;
}

.wp-caption-text {
	text-align: left;
}

.wp-caption {
	max-width: 100%;
	margin-bottom: 1.5rem;
/* stylelint-disable selector-no-qualifying-type */
/* stylelint-enable */
}

.wp-caption img[class*='wp-image-'] {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075rem 0;
}
/* stylelint-disable at-rule-empty-line-before */
.img-fit {
	position: relative;
	display: block;
}

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

.img-fit--fallback {
	background-position: center;
	background-size: cover;
}

.img-fit--fallback img {
	opacity: 0;
}
/* stylelint-enable */
.responsive-embed {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

.responsive-embed-item {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin-top: 0;
	margin-bottom: 0;
}
/* --------------------------------------------------------------
* # Components
* -------------------------------------------------------------- */
.noscript-notification {
	background-color: red;
	color: white;
	text-align: center;
	font-size: 18px;
	margin: 0;
	padding: 20px 0;
}
/* --------------------------------------------------------------
* ## Primary menu
* -------------------------------------------------------------- */
/* stylelint-disable selector-max-compound-selectors, max-nesting-depth, no-descending-specificity, no-duplicate-selectors, max-line-length */
/* Menu toggle */
.no-js .menu-toggle {
	display: none;
}

.menu-toggle {
	position: absolute;
	top: 20px;
	right: 20px;
	display: block;
	padding: 0.5rem 1rem;
	border: 2px solid rgba(0, 0, 0, 0.2);
	background: rgba(0, 0, 0, 0.2);
	text-transform: uppercase;
	color: white;
}

@media (min-width: 70em) {
	.menu-toggle {
		display: none;
	}
}

.menu-toggle .icon {
	top: -2px;
	margin-right: 0.5rem;
}

.menu-toggle .icon-close {
	display: none;
}

.menu-toggle.is-expanded .icon-close {
	display: inline-block;
}

.menu-toggle.is-expanded .icon-bars {
	display: none;
}

.main-navigation {
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

@media (min-width: 70em) {
	.main-navigation {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
	}
}

.primary-menu-wrapper {
	width: 100%;
}

.primary-menu {
	display: none;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column wrap;
	flex-flow: column wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding: 0;
	margin: 0;
	font-size: 16px;
	list-style-type: none;
}

@media (min-width: 70em) {
	.primary-menu {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
	}
}

.primary-menu .icon {
	display: none;
}

.primary-menu.is-visible,
.no-js .primary-menu {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.sub-menu {
	padding: 0;
	margin: 0;
	list-style-type: none;
}
/* Mobile menu styling */
.primary-menu .menu-item {
	border-top: 1px solid rgba(0, 0, 0, 0.2);
	margin-bottom: 0;
}

@media (min-width: 70em) {
	.primary-menu .menu-item {
		border-bottom: 0;
	}
}

.primary-menu .menu-item:last-child {
	border-bottom: 0;
}

.primary-menu .menu-item a {
	display: block;
	padding: 10px 20px 10px 10px;
	border-bottom: 0;
	color: white;
	text-decoration: none;
	border-radius: 0;
}

.primary-menu .menu-item.current-menu-item > a {
	color: white;
	background-color: rgba(0, 0, 0, 0.2);
}

@media (min-width: 70em) {
	.primary-menu .menu-item.current-menu-item > a {
		border-radius: 3px;
	}
}

.primary-menu .sub-menu {
	padding-left: 1rem;
}

.primary-menu .sub-menu .menu-item {
	border-bottom: 0;
}

.primary-menu .sub-menu .menu-item a {
	padding-left: 0;
}
/* Menu tablets and up */
@media (min-width: 70em) {
	.primary-menu {
	/* Submenus */
	}

	.primary-menu .icon {
		display: inline-block;
	}

	.primary-menu .icon-arrow-down {
		margin-left: 2px;
	}

	.primary-menu .menu-item {
		position: relative;
		display: inline-block;
		height: 100%;
		padding: 0;
		border-top: 0;
		margin: 0;
		vertical-align: middle;
		zoom: 1;
	}

	.primary-menu .menu-item a {
		display: inline-block;
		text-decoration: none;
	}

	.primary-menu .menu-item:hover .sub-menu,
.primary-menu .menu-item.focus .sub-menu {
		top: 100%;
		right: 0;
		left: auto;
	}

	.primary-menu .menu-item:focus-within .sub-menu {
		top: 100%;
		right: 0;
		left: auto;
	}

	.primary-menu .menu-item a,
.primary-menu .menu-item.focus a {
		padding: 10px 15px;
		color: white;
		margin-left: 3px;
		margin-right: 3px;
	}

	.primary-menu .menu-item a:hover, .primary-menu .menu-item a:focus,
.primary-menu .menu-item.focus a:hover,
.primary-menu .menu-item.focus a:focus {
		color: white;
		background-color: rgba(0, 0, 0, 0.2);
		border-radius: 3px;
	}

	.primary-menu .sub-menu {
		position: absolute;
		z-index: 1000;
		top: -999rem;
		left: -999rem;
		display: block;
		min-width: 250px;
		padding: 0;
		-webkit-box-shadow: 0 15px 40px 0 rgba(0, 0, 0, 0.1);
		box-shadow: 0 15px 40px 0 rgba(0, 0, 0, 0.1);
		background-clip: padding-box;
		background-color: #fff;
		font-size: 14px;
		list-style: none;
		text-align: left;
	}

	.primary-menu .sub-menu a {
		display: block;
	}

	.primary-menu .sub-menu .icon-arrow-down {
		position: absolute;
		top: 50%;
		left: 8px;
		margin-left: -5px;
		-webkit-transform: translateY(-50%) rotate(90deg);
		transform: translateY(-50%) rotate(90deg);
	}

	.primary-menu .sub-menu .menu-item {
		position: relative;
		left: 0;
		display: block;
	}

	.primary-menu .sub-menu .menu-item a {
		padding: 10px 20px;
		color: #4a4a4a;
		margin-left: 0;
		margin-right: 0;
	}

	.primary-menu .sub-menu .menu-item a:hover, .primary-menu .sub-menu .menu-item a:focus {
		background: transparent;
		color: #583abc;
		border-radius: 0;
	}

	.primary-menu .sub-menu .menu-item .sub-menu {
		top: -999rem;
		left: -999rem;
	}

	.primary-menu .sub-menu .menu-item:hover > .sub-menu,
.primary-menu .sub-menu .menu-item.focus > .sub-menu {
		top: -1px;
		right: 100%;
		left: auto;
	}

	.primary-menu .sub-menu .menu-item:focus-within > .sub-menu {
		top: -1px;
		right: 100%;
		left: auto;
	}

	.primary-menu .sub-menu .menu-item:focus-within > .sub-menu {
		top: -1px;
		right: 100%;
		left: auto;
	}
}
/* --------------------------------------------------------------
* ## Gutenberg blocks
* -------------------------------------------------------------- */
/* stylelint-disable selector-max-compound-selectors, selector-no-qualifying-type, no-duplicate-selectors, max-line-length */
.entry-content > * {
	max-width: 760px;
	margin: 36px 0;
}

.page-template-knowledgebase .entry-content > * {
	max-width: 760px;
	margin: 36px auto;
}

.entry-content p:first-of-type {
	margin-top: 0;
}

.entry-content > .alignwide {
	max-width: 1100px;
}

.entry-content > .alignfull {
	max-width: 100%;
	margin: 1.5em 0;
}

.entry-content ul,
.entry-content ol {
	max-width: 760px;
	margin: 1.5em 0;
	list-style-position: outside;
}

.wp-block-video video {
	max-width: 760px;
}

.wp-block-image img {
	display: block;
}

.wp-block-image.alignleft,
.wp-block-image.alignright {
	width: 100%;
}

.wp-block-image.alignfull img {
	width: 100vw;
}

.wp-block-gallery:not(.components-placeholder) {
	margin: 1.5em auto;
}

.wp-block-cover-text p {
	padding: 1.5em 14px;
}

ul.wp-block-latest-posts.alignwide,
ul.wp-block-latest-posts.alignfull,
ul.wp-block-latest-posts.is-grid.alignwide,
ul.wp-block-latest-posts.is-grid.alignwide {
	padding: 0 14px;
}

.wp-block-table {
	display: block;
	overflow-x: auto;
}

.wp-block-table table {
	width: 100%;
	border-collapse: collapse;
}

.wp-block-table td,
.wp-block-table th {
	padding: 0.5em;
}

.entry-content li {
	margin-bottom: 6px;
	margin-left: 2.5em;
}

.entry-content ul ul,
.entry-content ol ol,
.entry-content ul ol,
.entry-content ol ul {
	margin: 0 auto;
}

.entry-content ul ul li,
.entry-content ol ol li,
.entry-content ul ol li,
.entry-content ol ul li {
	margin-left: 0;
}

.wp-block-embed.type-video > .wp-block-embed__wrapper {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 56.25%;
}

.wp-block-embed.type-video > .wp-block-embed__wrapper > iframe {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.wp-block-quote.is-large {
	margin: 0 auto 16px;
}

.wp-block-pullquote > p:first-child {
	margin-top: 0;
}

.wp-block-separator {
	padding: 0;
	margin: 3em auto;
}

.more-link {
	display: block;
}

.wp-block-group > * {
	max-width: 610px;
	margin-right: auto;
	margin-left: auto;
}

.wp-block-group > .alignwide {
	max-width: 1100px;
}

.wp-block-group > .alignfull {
	max-width: 100%;
}

.wp-block-group.has-background > .alignfull {
	position: relative;
	left: -30px;
	width: calc(100% + 60px);
	max-width: calc(100% + 60px);
}

.entry-content .wp-block-file a.wp-block-file__button:focus {
	outline: dotted thin initial;
	outline-offset: -1px;
}
/* stylelint-enable */
/* --------------------------------------------------------------
* ## Pagination
* -------------------------------------------------------------- */
.nav-links {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

@media (min-width: 48em) {
	.nav-links {
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
	}
}

.page-numbers {
	display: none;
}

@media (min-width: 48em) {
	.page-numbers {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		width: 2.5rem;
		height: 2.5rem;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		border: 1px solid #eaeaea;
		margin: 0.5rem;
		background: #eaeaea;
		border-radius: 3px;
		-webkit-transition: border 0.3s;
		transition: border 0.3s;
		text-decoration: none;
	}
}

.page-numbers.current {
	border-color: #eaeaea;
	background: transparent;
}

.page-numbers.current .screen-reader-text {
	position: relative !important;
	overflow: auto;
	width: auto;
	height: auto;
	clip: auto;
	-webkit-clip-path: initial;
}

@media (min-width: 48em) {
	.page-numbers.current .screen-reader-text {
		position: absolute !important;
		overflow: hidden;
		width: 1px;
		height: 1px;
		clip: rect(1px, 1px, 1px, 1px);
	}
}

.page-numbers.current, .page-numbers.prev, .page-numbers.next {
	display: inline-block;
}

@media (min-width: 48em) {
	.page-numbers.current, .page-numbers.prev, .page-numbers.next {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
}

.page-numbers.prev, .page-numbers.next {
	padding: 0 0.5rem;
	border: 0;
	margin: 0 1rem;
}

@media (min-width: 48em) {
	.page-numbers.prev, .page-numbers.next {
		margin: 0.5rem;
	}

	.page-numbers.prev:hover, .page-numbers.next:hover {
		border: 1px solid #a8a8a8;
	}
}

.page-numbers:hover:not(.current) {
	border-color: #a8a8a8;
}
/* --------------------------------------------------------------
* ## Next Prev Links
* -------------------------------------------------------------- */
/* stylelint-disable at-rule-empty-line-before */
.post-navigation .meta-nav {
	display: block;
	font-size: 0.8888888888rem;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.post-navigation a {
	display: block;
/* Fixes broken outline in Firefox */
	border-bottom: 0;
	text-decoration: none;
}

.post-navigation a:hover .post-title, .post-navigation a:focus .post-title {
	border-bottom: 2px solid #6027ce;
}

.post-navigation .nav-links {
	display: block;
	margin: 2rem 0;
}

@media (min-width: 48em) {
	.post-navigation .nav-links {
		display: block;
	}
}

.post-navigation .nav-previous,
.post-navigation .nav-next {
	max-width: 100%;
	-ms-flex-preferred-size: 100%;
	flex-basis: 100%;
	margin-bottom: 1rem;
}

@media (min-width: 48em) {
	.post-navigation .nav-previous,
.post-navigation .nav-next {
		width: 50%;
	}
}

@media (min-width: 48em) {
	.post-navigation .nav-previous {
		float: left;
	}
}

@media (min-width: 48em) {
	.post-navigation .nav-next {
		float: right;
		text-align: right;
	}
}
/* stylelint-enable */
/* --------------------------------------------------------------
* ## Comments
* -------------------------------------------------------------- */
/* stylelint-disable selector-no-qualifying-type, property-no-vendor-prefix, no-descending-specificity, at-rule-empty-line-before, max-line-length  */
.comment-content a {
	word-wrap: break-word;
}

.comment-content p {
	margin-bottom: 1rem;
}

.comment-content blockquote > * {
	margin-bottom: 0;
}

.bypostauthor {
	display: block;
}

.comments-title {
	margin-bottom: 1.5rem;
	font-size: 1.25rem;
}

.comment-list,
.comment-list .children {
	padding: 0;
	margin: 0;
	list-style: none;
}

.comment-list .children {
	margin-left: 1rem;
}

.comment-list li::before {
	display: none;
}

.comment-author {
	position: relative;
	z-index: 2;
	margin-bottom: 0.4rem;
	font-size: 1rem;
}

.comment-author .avatar {
	position: absolute;
	left: -65px;
	width: 50px;
	height: 50px;
	border-radius: 50%;
}

.comment-author .says {
	display: none;
}

.comment-meta {
	padding-left: 4rem;
	margin-bottom: 1.5rem;
}

.comment-metadata {
	color: #767676;
	font-size: 10px;
	font-size: 0.625rem;
	font-weight: 800;
	letter-spacing: 0.1818rem;
	text-transform: uppercase;
}

.comment-metadata a {
	border-color: #6027ce;
	color: #424851;
}

.comment-metadata a:hover, .comment-metadata a:focus {
	border-color: #fbc967;
	color: #424851;
}

.comment-metadata .comment-edit-link {
	margin-left: 1rem;
	color: #424851;
}

.comment.depth-1 {
	border-bottom: 1px dashed #f4f4f4;
}

.comment-body {
	padding: 1.5rem 0;
	color: #4a4a4a;
	font-size: 0.875rem;
	font-size: 0.875rem;
}

.children .comment-body {
	border-bottom: 0;
}

.comment-reply-link {
	position: relative;
	font-weight: 800;
}

.comment-reply-link .icon {
	position: absolute;
	top: 0;
	left: -2rem;
	width: 1rem;
	height: 1rem;
	color: #222;
}

.children .comment-author .avatar {
	left: -45px;
	width: 30px;
	height: 30px;
}

.no-comments,
.comment-awaiting-moderation {
	color: #767676;
	font-size: 14px;
	font-size: 0.875rem;
	font-style: italic;
}

.comment-respond p {
	margin-bottom: 1rem;
}

.comment-respond label {
	display: block;
}

.comment-respond textarea {
	width: 100%;
	border: 1px solid #f4f4f4;
}

.comment-respond textarea:focus,
.comment-respond input:focus {
	outline: dotted thin initial;
	outline-offset: -1px;
	border: 1px solid #f4f4f4;
}

.comment-form-cookies-consent input {
	display: inline-block;
	margin-right: 10px;
}

.comment-form-cookies-consent label {
	display: inline;
}

.comment-navigation .nav-links {
	margin: 2rem 0 4rem;
}

.comment-navigation .nav-previous,
.comment-navigation .nav-next {
	max-width: 100%;
	-ms-flex-preferred-size: 0;
	flex-basis: 0;
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
}

.comment-navigation .nav-next {
	text-align: right;
}

.comments-pagination {
	margin: 2rem 0 3rem;
}

.form-submit {
	text-align: right;
}

.form-submit input {
	padding: 1rem 2rem;
	border: 1px solid #6027ce;
	background: #6027ce;
	color: #fff;
}

.form-submit input:focus {
	outline: dotted thin initial;
	outline-offset: -1px;
	outline-offset: -3px;
}

.form-submit input:hover, .form-submit input:focus {
	cursor: pointer;
	opacity: 0.9;
}

.comment-form input[type='text'],
.comment-form input[type='email'],
.comment-form input[type='url'] {
	padding: 10px;
	margin-top: 10px;
	width: 50%;
	height: 44px;
	background-color: #f3f5f6;
	border: 1px solid rgba(24, 21, 26, 0.1);
	border-radius: 3px;
}

.comment-form textarea {
	padding: 10px;
	margin-top: 10px;
	width: 100%;
	height: 200px;
	background-color: #f3f5f6;
	border: 1px solid rgba(24, 21, 26, 0.1);
	border-radius: 3px;
}

.comment-form-cookies-consent {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.comment-form .form-submit {
	text-align: left;
}
/* --------------------------------------------------------------
* ## Forms
* -------------------------------------------------------------- */
/* stylelint-disable selector-no-qualifying-type, property-no-vendor-prefix, no-descending-specificity, at-rule-empty-line-before, max-line-length  */
.search-form {
	display: block;
}

.search-form label,
.search-form .search-field,
.search-form .search-submit {
	width: 100%;
}

.search-form .search-field {
	height: 40px;
	margin-bottom: 10px;
}

.search-form .search-submit {
	height: 47px;
}

.post-password-form input[type='password'],
.search-field,
.search-submit {
	padding: 0.35rem;
}

.post-password-form input[type='password']:focus,
.search-field:focus,
.search-submit:focus {
	outline: dotted thin initial;
	outline-offset: -1px;
}

.search-field,
.post-password-form input[type='password'] {
	border: 1px solid #f4f4f4;
	margin-right: 0.5rem;
	-webkit-appearance: none;
	border-radius: 0;
}

.search-field:focus {
	background: #fff;
}

.post-password-form input[type='password'] {
	padding: 7px 5px;
	border: 1px solid #f4f4f4;
}

.post-password-form label {
	display: inline;
}

.post-password-form input[type='submit'],
.search-submit {
	padding: 0.35rem;
	border: 1px solid #6027ce;
	-webkit-appearance: none;
	background-color: #6027ce;
	color: #fff;
}

.post-password-form input[type='submit']:hover, .post-password-form input[type='submit']:focus,
.search-submit:hover,
.search-submit:focus {
	opacity: 0.9;
	cursor: pointer;
}

.post-password-form input[type='submit'] {
	border: 2px solid #fbc967;
}

.post-password-form input[type='submit']:hover {
	border-color: #fac04e;
}
/* stylelint-enable */
.primary-search {
	margin-top: 2rem;
	margin-bottom: 3rem;
	padding-left: 20px;
	padding-right: 20px;
}

@media (min-width: 48em) {
	.primary-search {
		margin-top: 7rem;
		margin-bottom: 8rem;
	}
}

.primary-search .icon-search-icon {
	width: 25px;
	height: 25px;
}

.primary-search .icon-search-icon > * {
	stroke: white;
}

.primary-search-title {
	color: white;
	text-align: center;
	font-size: 30px;
}

@media (min-width: 48em) {
	.primary-search-title {
		font-size: 45px;
	}
}

.primary-search-form {
	width: 100%;
	max-width: 650px;
	background-color: rgba(255, 255, 255, 0.15);
	height: 55px;
	margin: 0 auto;
	border-radius: 3px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.primary-search-label {
	-ms-flex-preferred-size: 150px;
	flex-basis: 150px;
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
}

.primary-search-field {
	height: 100%;
	width: 100%;
	padding-left: 20px;
	background-color: transparent;
	border: 0;
	color: white;
	font-size: 0.94rem;
}

@media (min-width: 48em) {
	.primary-search-field {
		font-size: 1rem;
	}
}

.primary-search-field::-webkit-input-placeholder {
	color: white;
}

.primary-search-field::-moz-placeholder {
	color: white;
}

.primary-search-field:-ms-input-placeholder {
	color: white;
}

.primary-search-field::-ms-input-placeholder {
	color: white;
}

.primary-search-field::placeholder {
	color: white;
}

.primary-search-field::-webkit-search-decoration,
.primary-search-field::-webkit-search-cancel-button,
.primary-search-field::-webkit-search-results-button,
.primary-search-field::-webkit-search-results-decoration {
	-webkit-appearance: none;
}

.primary-search-submit {
	padding-left: 15px;
	padding-right: 15px;
	background-color: transparent;
	border: 0;
	color: white;
}

.primary-search-submit:hover {
	cursor: pointer;
	background-color: rgba(255, 255, 255, 0.2);
}

.secondary-search {
	padding: 15px 0;
}

.secondary-search .icon-search-icon {
	width: 25px;
	height: 25px;
}

.secondary-search .icon-search-icon > * {
	stroke: #696969;
}

.secondary-search-inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.secondary-search-form {
	width: 100%;
	border: 0;
	background-color: #eaeaea;
	height: 40px;
	border-radius: 3px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

@media (min-width: 48em) {
	.secondary-search-form {
		max-width: 320px;
	}
}

.secondary-search-label {
	-ms-flex-preferred-size: 150px;
	flex-basis: 150px;
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
}

.secondary-search-field {
	height: 100%;
	width: 100%;
	padding-left: 20px;
	background-color: transparent;
	border: 0;
	color: #696969;
	font-size: 0.94rem;
}

@media (min-width: 48em) {
	.secondary-search-field {
		font-size: 1rem;
	}
}

.secondary-search-field::-webkit-input-placeholder {
	color: #696969;
}

.secondary-search-field::-moz-placeholder {
	color: #696969;
}

.secondary-search-field:-ms-input-placeholder {
	color: #696969;
}

.secondary-search-field::-ms-input-placeholder {
	color: #696969;
}

.secondary-search-field::placeholder {
	color: #696969;
}

.secondary-search-field::-webkit-search-decoration,
.secondary-search-field::-webkit-search-cancel-button,
.secondary-search-field::-webkit-search-results-button,
.secondary-search-field::-webkit-search-results-decoration {
	-webkit-appearance: none;
}

.secondary-search-submit {
	padding-left: 15px;
	padding-right: 15px;
	background-color: transparent;
	border: 0;
}

.secondary-search-submit:hover {
	cursor: pointer;
	background-color: rgba(255, 255, 255, 0.2);
}

.bottom-bar {
	background-color: #f3f5f6;
}
/* --------------------------------------------------------------
* ## Widgets & Sidebar
* -------------------------------------------------------------- */
/* stylelint-disable no-descending-specificity, selector-max-compound-selectors, max-line-length */
.widget-area {
	position: relative;
}

@media (min-width: 48em) {
	.widget-area {
		margin-left: 30px;
		margin-top: 80px;
	}
}

.widget {
	margin-bottom: 1.5rem;
}

.widget a {
	border-color: #6027ce;
}

.widget > ul {
	padding-left: 2rem;
	margin: 0;
}

.widget select {
	max-width: 100%;
}

.widget-title {
	margin-top: 0;
	margin-bottom: 0.85rem;
}

@media (min-width: 48em) {
	.widget-title {
		margin-top: 1.2rem;
	}
}

.widget_text {
	word-wrap: break-word;
}

.widget_text ul,
.widget_text ol {
	padding: 0 1.5rem;
	margin: 0;
}

.widget_text ul {
	list-style: disc;
}

.widget_text ol {
	list-style: decimal;
}

.widget_text ul li,
.widget_text ol li {
	border: 0;
}

.widget_text ul li:last-child,
.widget_text ol li:last-child {
	padding-bottom: 0;
}

.widget_text ul li ul {
	margin: 0;
}

.widget_text ul li li {
	padding-right: 0;
	padding-left: 0;
}

.widget_text ol li {
	list-style-position: inside;
}

.widget_text ol li + li {
	margin-top: -1px;
}
/* Calendar widget */
.calendar_wrap {
	font-size: 14px;
}

.calendar_wrap a {
	border-bottom: 2px solid #6027ce;
	text-decoration: none;
	color: #6027ce;
}

.calendar_wrap table caption {
	margin-bottom: 1rem;
}

.calendar_wrap thead,
.calendar_wrap th,
.calendar_wrap tr,
.calendar_wrap td,
.calendar_wrap tfoot,
.calendar_wrap tfoot tr {
	border: 0;
}

.widget_calendar th,
.widget_calendar td {
	text-align: center;
}

.widget_calendar tfoot td {
	border: 0;
}
/* Footer widgets */
.footer-widgets {
	padding-bottom: 50px;
}

.widget-area-footer {
	padding: 0;
}

@media (min-width: 48em) {
	.widget-area-footer {
		padding: 0 1rem;
	}
}

.widget-area-footer a {
	color: #fff;
}

.widget-area-footer a:hover, .widget-area-footer a:focus {
	border-bottom: 2px solid currentColor;
	text-decoration: none;
}

.widget-area-footer .widget-title {
	color: #fff;
	font-size: 1.5rem;
}

.widget-area-footer .widget_categories a:hover {
	text-decoration: none;
}

.mejs-horizontal-volume-slider,
.widget_meta a,
.widget_pages a,
.widget_tag_cloud a,
.widget_recent_entries a,
.widget_archive a,
.widget_nav_menu a,
.widget_categories a,
.widget_recent_comments a {
	border-bottom: 0;
	text-decoration: none;
}

.mejs-horizontal-volume-slider:hover, .mejs-horizontal-volume-slider:focus,
.widget_meta a:hover,
.widget_meta a:focus,
.widget_pages a:hover,
.widget_pages a:focus,
.widget_tag_cloud a:hover,
.widget_tag_cloud a:focus,
.widget_recent_entries a:hover,
.widget_recent_entries a:focus,
.widget_archive a:hover,
.widget_archive a:focus,
.widget_nav_menu a:hover,
.widget_nav_menu a:focus,
.widget_categories a:hover,
.widget_categories a:focus,
.widget_recent_comments a:hover,
.widget_recent_comments a:focus {
	text-decoration: underline;
}

.widget-area-footer .mejs-horizontal-volume-slider,
.widget-area-footer .widget_meta a,
.widget-area-footer .widget_pages a,
.widget-area-footer .widget_tag_cloud a,
.widget-area-footer .widget_recent_entries a,
.widget-area-footer .widget_archive a,
.widget-area-footer .widget_nav_menu a,
.widget-area-footer .widget_categories a,
.widget-area-footer .widget_recent_comments a {
	border-bottom: 0;
	text-decoration: none;
}

.widget-area-footer .mejs-horizontal-volume-slider:hover, .widget-area-footer .mejs-horizontal-volume-slider:focus,
.widget-area-footer .widget_meta a:hover,
.widget-area-footer .widget_meta a:focus,
.widget-area-footer .widget_pages a:hover,
.widget-area-footer .widget_pages a:focus,
.widget-area-footer .widget_tag_cloud a:hover,
.widget-area-footer .widget_tag_cloud a:focus,
.widget-area-footer .widget_recent_entries a:hover,
.widget-area-footer .widget_recent_entries a:focus,
.widget-area-footer .widget_archive a:hover,
.widget-area-footer .widget_archive a:focus,
.widget-area-footer .widget_nav_menu a:hover,
.widget-area-footer .widget_nav_menu a:focus,
.widget-area-footer .widget_categories a:hover,
.widget-area-footer .widget_categories a:focus,
.widget-area-footer .widget_recent_comments a:hover,
.widget-area-footer .widget_recent_comments a:focus {
	text-decoration: none;
	border-bottom: 2px solid currentColor;
}
/* stylelint-enable */
.sidebar-layout-default .blog-sidebar .widget {
	padding: 2rem;
	background-color: #f3f5f6;
	border-radius: 5px;
	margin-bottom: 3rem;
}

.sidebar-layout-default .blog-sidebar .widget ul {
	list-style-type: none;
	padding-left: 0;
	margin-bottom: 0;
}

.sidebar-layout-default .blog-sidebar .widget ul li {
	margin-bottom: 10px;
}

.sidebar-layout-default .blog-sidebar .widget ul li:last-child {
	margin-bottom: 0;
}

.sidebar-layout-default .blog-sidebar .widget ul li a {
	font-size: 14px;
}

.sidebar-layout-default .blog-sidebar .widget ul li a:hover {
	color: #6027ce;
	text-decoration: none;
}

.sidebar-layout-default .blog-sidebar .widget ul li a:focus {
	color: #6027ce;
}

.sidebar-layout-default .blog-sidebar .widget ul li.current-cat a {
	font-weight: bold;
}

.sidebar-layout-default .blog-sidebar .widget-title {
	margin-top: 0;
	font-size: 20px;
}
/* --------------------------------------------------------------
* # Layout
* -------------------------------------------------------------- */
.grid {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
}

.container {
	position: relative;
	width: 100%;
	max-width: 1200px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding-right: 20px;
	padding-left: 20px;
	margin-right: auto;
	margin-left: auto;
}

.container .container {
	padding-left: 0;
	padding-right: 0;
}

.cell {
	grid-column: span 12/span 12;
}

.cell--1 {
	grid-column: span 1 / span 1;
}

.cell--2 {
	grid-column: span 2 / span 2;
}

.cell--3 {
	grid-column: span 3 / span 3;
}

.cell--4 {
	grid-column: span 4 / span 4;
}

.cell--5 {
	grid-column: span 5 / span 5;
}

.cell--6 {
	grid-column: span 6 / span 6;
}

.cell--7 {
	grid-column: span 7 / span 7;
}

.cell--8 {
	grid-column: span 8 / span 8;
}

.cell--9 {
	grid-column: span 9 / span 9;
}

.cell--10 {
	grid-column: span 10 / span 10;
}

.cell--11 {
	grid-column: span 11 / span 11;
}

.cell--12 {
	grid-column: span 12 / span 12;
}

@media (min-width: 48em) {
	.cell--1\@medium {
		grid-column: span 1 / span 1;
	}

	.cell--2\@medium {
		grid-column: span 2 / span 2;
	}

	.cell--3\@medium {
		grid-column: span 3 / span 3;
	}

	.cell--4\@medium {
		grid-column: span 4 / span 4;
	}

	.cell--5\@medium {
		grid-column: span 5 / span 5;
	}

	.cell--6\@medium {
		grid-column: span 6 / span 6;
	}

	.cell--7\@medium {
		grid-column: span 7 / span 7;
	}

	.cell--8\@medium {
		grid-column: span 8 / span 8;
	}

	.cell--9\@medium {
		grid-column: span 9 / span 9;
	}

	.cell--10\@medium {
		grid-column: span 10 / span 10;
	}

	.cell--11\@medium {
		grid-column: span 11 / span 11;
	}

	.cell--12\@medium {
		grid-column: span 12 / span 12;
	}
}

@media (min-width: 70em) {
	.cell--1\@large {
		grid-column: span 1 / span 1;
	}

	.cell--2\@large {
		grid-column: span 2 / span 2;
	}

	.cell--3\@large {
		grid-column: span 3 / span 3;
	}

	.cell--4\@large {
		grid-column: span 4 / span 4;
	}

	.cell--5\@large {
		grid-column: span 5 / span 5;
	}

	.cell--6\@large {
		grid-column: span 6 / span 6;
	}

	.cell--7\@large {
		grid-column: span 7 / span 7;
	}

	.cell--8\@large {
		grid-column: span 8 / span 8;
	}

	.cell--9\@large {
		grid-column: span 9 / span 9;
	}

	.cell--10\@large {
		grid-column: span 10 / span 10;
	}

	.cell--11\@large {
		grid-column: span 11 / span 11;
	}

	.cell--12\@large {
		grid-column: span 12 / span 12;
	}
}

.grid--auto-fit {
	grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
}

.grid--auto-fit-xs {
	grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
}

.grid--auto-fit-s {
	grid-template-columns: repeat(auto-fit, minmax(50%, 1fr));
}

.grid--auto-fit-m {
	grid-template-columns: repeat(auto-fit, minmax(33.3333%, 1fr));
}

.grid--auto-fit-l {
	grid-template-columns: repeat(auto-fit, minmax(25%, 1fr));
}

@media (min-width: 48em) {
	.grid--auto-fit-xs\@medium {
		grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
	}

	.grid--auto-fit-s\@medium {
		grid-template-columns: repeat(auto-fit, minmax(50%, 1fr));
	}

	.grid--auto-fit-m\@medium {
		grid-template-columns: repeat(auto-fit, minmax(33.3333%, 1fr));
	}

	.grid--auto-fit-l\@medium {
		grid-template-columns: repeat(auto-fit, minmax(25%, 1fr));
	}
}

@media (min-width: 70em) {
	.grid--auto-fit-xs\@large {
		grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
	}

	.grid--auto-fit-s\@large {
		grid-template-columns: repeat(auto-fit, minmax(50%, 1fr));
	}

	.grid--auto-fit-m\@large {
		grid-template-columns: repeat(auto-fit, minmax(33.3333%, 1fr));
	}

	.grid--auto-fit-l\@large {
		grid-template-columns: repeat(auto-fit, minmax(25%, 1fr));
	}
}
/* --------------------------------------------------------------
* # Layout
* -------------------------------------------------------------- */
/* --------------------------------------------------------------
* ## Header
* -------------------------------------------------------------- */
.site-branding {
	margin-top: 1rem;
	margin-bottom: 1rem;
}

.site-header {
	background: #6a3093;
/* fallback for old browsers */
/* Chrome 10-25, Safari 5.1-6 */
	background: -webkit-gradient(linear, left top, right top, from(#6027ce), to(#583abc));
	background: linear-gradient(to right, #6027ce, #583abc);
/* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}

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

.site-title a {
	color: white;
	text-decoration: none;
}

.site-description {
	color: white;
	margin-top: 0;
}
/* --------------------------------------------------------------
* ## Footer
* -------------------------------------------------------------- */
.site-footer {
	background-color: #2d2d2d;
	color: white;
	padding: 50px 0 0;
}

.site-footer a {
	color: white;
}

.footer-widgets-0 .site-footer {
	padding: 0;
}

.site-info {
	background-color: #1f1f1f;
	padding: 20px 0;
	font-size: 14px;
	text-align: center;
}

.site-info > * {
	display: block;
}

@media (min-width: 48em) {
	.site-info > * {
		display: inline-block;
	}
}

.site-info .powered-by {
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
}

.site-info .sep {
	display: none;
}

@media (min-width: 48em) {
	.site-info .sep {
		display: inline-block;
	}
}

.site-info a {
	border-bottom: 2px solid currentColor;
	color: #fff;
	text-decoration: none;
}

.site-info a:focus,
.site-info a:hover {
	opacity: 0.8;
}

.container-default-widgets {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.grid-auto {
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
}

.footer-widgets-1 .footer-widgets .grid-auto,
.footer-widgets-2 .footer-widgets .grid-auto,
.footer-widgets-3 .footer-widgets .grid-auto,
.footer-widgets-4 .footer-widgets .grid-auto,
.grid-auto {
	min-width: 100%;
	max-width: 100%;
}

@media screen and (min-width: 48rem) {
	.footer-widgets-1 .footer-widgets .grid-auto,
.footer-widgets-2 .footer-widgets .grid-auto,
.footer-widgets-3 .footer-widgets .grid-auto,
.footer-widgets-4 .footer-widgets .grid-auto {
		min-width: 50%;
		max-width: 50%;
	}
}

@media screen and (min-width: 70rem) {
	.footer-widgets-1 .footer-widgets .grid-auto {
		min-width: 100%;
		max-width: 100%;
	}

	.footer-widgets-2 .footer-widgets .grid-auto {
		min-width: 50%;
		max-width: 50%;
	}

	.footer-widgets-3 .footer-widgets .grid-auto {
		min-width: 33.3333%;
		max-width: 33.3333%;
	}

	.footer-widgets-4 .footer-widgets .grid-auto {
		min-width: 25%;
		max-width: 25%;
	}
}

.knowledgebase-layout-1 .learnmore-category {
	padding: 0;
	margin-bottom: 40px;
}

@media (min-width: 48em) {
	.knowledgebase-layout-1 .learnmore-category {
		padding: 0 50px 0 0;
		margin-bottom: 80px;
	}
}

.knowledgebase-layout-1 .learnmore-meta {
	border-bottom: 2px solid #e1e9eb;
	margin-bottom: 20px;
}

.knowledgebase-layout-1 .learnmore-category-title {
	font-size: 20px;
	margin-bottom: 10px;
}

.knowledgebase-layout-1 .learnmore-category p {
	font-size: 14px;
	color: #696969;
	margin-bottom: 10px;
}

.knowledgebase-layout-1 .learnmore-category-count {
	font-size: 16px;
	color: #6b6b6b;
}

.knowledgebase-layout-1 .learnmore-articles-list {
	list-style-position: outside;
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.knowledgebase-layout-1 .learnmore-articles-item {
	margin-bottom: 15px;
}

.knowledgebase-layout-1 .learnmore-articles-link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	text-decoration: none;
	color: #424851;
}

.knowledgebase-layout-1 .learnmore-articles-link:hover {
	color: #6027ce;
}

.knowledgebase-layout-1 .learnmore-category .icon-news {
	margin-right: 5px;
}

.knowledgebase-layout-1 .learnmore-category-link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 30px;
	color: #746b7f;
	text-decoration: none;
}
/* --------------------------------------------------------------
* # Templates
* -------------------------------------------------------------- */
/* --------------------------------------------------------------
* ## Site
* -------------------------------------------------------------- */
.site-title {
	font-size: 2rem;
	font-weight: bold;
}

.site-content {
	overflow: hidden;
	width: 100%;
	min-height: 100vh;
}

.site-main {
	margin-top: 40px;
	margin-bottom: 50px;
}

@media (min-width: 48em) {
	.site-main {
		margin-top: 80px;
		margin-bottom: 100px;
	}
}

.site-breadcrumbs {
	padding: 15px 0;
}

.site-breadcrumbs a:hover {
	color: #6027ce;
}

.archive-description p {
	color: #696969;
}

.archive .hentry,
.blog .hentry,
.search-results .hentry {
	margin: 1.5rem 0;
	padding: 0 0 1.5rem;
	border-bottom: 1px solid #efefef;
}

.archive .entry-title,
.blog .entry-title,
.search-results .entry-title {
	margin-bottom: 0;
	padding-bottom: 0;
	font-weight: 400;
}

.archive .entry-title a,
.blog .entry-title a,
.search-results .entry-title a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 18px;
	text-decoration: none;
}

.archive .entry-title .icon-news,
.blog .entry-title .icon-news,
.search-results .entry-title .icon-news {
	width: 25px;
	height: 25px;
	margin-top: 2px;
	margin-right: 15px;
	color: #696969;
}

.archive .entry-meta,
.blog .entry-meta,
.search-results .entry-meta {
	font-size: 13px;
}

@media (min-width: 48em) {
	.archive .entry-meta,
.blog .entry-meta,
.search-results .entry-meta {
		margin-left: 38px;
	}
}

.archive .entry-terms a,
.blog .entry-terms a,
.search-results .entry-terms a {
	background-color: transparent;
	text-decoration: none;
	padding: 0;
	margin: 0;
	color: #696969;
}

.archive .entry-terms a:hover, .archive .entry-terms a:focus,
.blog .entry-terms a:hover,
.blog .entry-terms a:focus,
.search-results .entry-terms a:hover,
.search-results .entry-terms a:focus {
	background-color: transparent;
	text-decoration: underline;
}

.archive .entry-terms .screen-reader-text,
.blog .entry-terms .screen-reader-text,
.search-results .entry-terms .screen-reader-text {
	position: static !important;
	overflow: auto;
	width: auto;
	height: auto;
	clip: initial;
	-webkit-clip-path: initial;
	clip-path: initial;
	margin: 0 3px 0 2px;
}

.archive .posted-on-outer,
.blog .posted-on-outer,
.search-results .posted-on-outer {
	color: #696969;
}

@media (min-width: 48em) {
	.archive .posted-on-outer,
.blog .posted-on-outer,
.search-results .posted-on-outer {
		margin-left: 15px;
	}
}

.archive .posted-on-outer a,
.blog .posted-on-outer a,
.search-results .posted-on-outer a {
	color: #696969;
	text-decoration: none;
}

.archive .posted-on-outer a:hover, .archive .posted-on-outer a:focus,
.blog .posted-on-outer a:hover,
.blog .posted-on-outer a:focus,
.search-results .posted-on-outer a:hover,
.search-results .posted-on-outer a:focus {
	text-decoration: underline;
}

.archive .entry-meta-outer,
.blog .entry-meta-outer,
.search-results .entry-meta-outer {
	margin-bottom: 15px;
}

.tags-outer {
	display: block;
}

@media (min-width: 48em) {
	.tags-outer {
		display: inline-block;
	}
}
/* --------------------------------------------------------------
* ## Posts and pages
* -------------------------------------------------------------- */
/* stylelint-disable no-descending-specificity */
.page-header {
	margin-bottom: 60px;
	max-width: 600px;
}

.sticky {
	position: relative;
	display: block;
}

.sticky .icon-pin {
	position: absolute;
	left: auto;
	right: 0;
	top: -23px;
	width: 22px;
	height: 22px;
}

.post:not(.sticky) .icon-pin {
	display: none;
}

.hentry {
	margin: 2rem 0;
}

.blog .hentry p {
	margin-bottom: 0;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1rem 0;
}

.entry-title {
	font-size: 2rem;
	padding-bottom: 1rem;
	margin: 0;
	line-height: 1.2;
	word-wrap: break-word;
}

.entry-title a {
	border-bottom: 0;
	color: #424851;
}

.entry-title a:hover {
	color: #6027ce;
}

.entry-excerpt {
	color: #696969;
	font-size: 15px;
}

@media (min-width: 48em) {
	.entry-excerpt {
		margin-left: 40px;
		padding-right: 50px;
	}
}

.entry-excerpt p {
	margin-top: 5px;
	margin-bottom: 0;
}

.entry-terms a {
	display: inline-block;
	padding: 0.15rem 0.35rem;
	border-bottom: 0;
	margin: 0.25rem;
	background-color: #f4f4f4;
	-webkit-transition: background 0.15s;
	transition: background 0.15s;
}

.entry-terms a:hover, .entry-terms a:focus {
	background: #6027ce;
}

.entry-content a {
	border-color: #6027ce;
}

.entry-content a:hover, .entry-content a:focus {
	border-color: #fbc967;
}

.page-links {
	margin: 0.5rem 0 1.5rem;
	clear: both;
}

.page-links > * {
	padding: 0.5rem;
}

.entry-details {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 1rem;
}

.entry-categories {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	font-size: 15px;
}

.post-categories {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding-left: 5px;
	margin-bottom: 0;
	list-style-type: none;
}

.post-categories li {
	margin: 0 0.25rem;
}

.post-thumbnail {
	margin: 1.5rem 0;
}

.entry-content .entry-meta {
	margin-bottom: 1rem;
	color: #424851;
	font-size: 13px;
}

.entry-content .entry-meta a {
	border-color: #f4f4f4;
	color: #424851;
}

.entry-content .entry-meta a:hover, .entry-content .entry-meta a:focus {
	border-color: #fbc967;
}

.entry-terms a {
	background-color: transparent;
	text-decoration: none;
	padding: 0;
	margin: 0;
	color: #696969;
}

.entry-terms a:hover, .entry-terms a:focus {
	background-color: transparent;
	text-decoration: underline;
}

.entry-terms .screen-reader-text {
	position: static !important;
	overflow: auto;
	width: auto;
	height: auto;
	clip: initial;
	-webkit-clip-path: initial;
	clip-path: initial;
	margin: 0 3px 0 2px;
}

.entry-header {
	margin-bottom: 15px;
}

@media (min-width: 48em) {
	.posted-on-outer {
		margin-left: 15px;
	}
}

.posted-on-outer a {
	color: #696969;
	text-decoration: none;
}

.posted-on-outer a:hover, .posted-on-outer a:focus {
	text-decoration: underline;
}

.entry-meta-outer {
	margin-bottom: 15px;
}

.single-post .posted-on {
	display: inline-block;
	margin-top: 10px;
}
/* stylelint-enable */
/* --------------------------------------------------------------
* # Utils
* -------------------------------------------------------------- */
.u-align-vertically {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
/* --------------------------------------------------------------
* # Print
* -------------------------------------------------------------- */
/* stylelint-disable */
@media print {
	*::before, *::after {
		background: transparent !important;
		-webkit-box-shadow: none !important;
		box-shadow: none !important;
		color: #000 !important;
		text-shadow: none !important;
	}

	a,
a:visited {
		text-decoration: underline;
	}

	[href]::after {
		content: " (' attr(href) ')";
	}

	[title]::after {
		content: " (' attr(title) ')";
	}

	[href^='#']::after,
[href^='javascript:']::after {
		content: '';
	}

	pre,
blockquote {
		border: 1px solid #535353;
		page-break-inside: avoid;
	}

	thead {
		display: table-header-group;
	}

	tr,
img {
		page-break-inside: avoid;
	}

	img {
		max-width: 100% !important;
	}

	p,
h2,
h3 {
		orphans: 3;
		widows: 3;
	}

	h2,
h3 {
		page-break-after: avoid;
	}
}
/* stylelint-enable */

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLnNjc3MiLCJzdHlsZS5jc3MiLCJhYnN0cmFjdHMvdmFyaWFibGVzL190eXBvZ3JhcGh5LnNjc3MiLCJhYnN0cmFjdHMvZnVuY3Rpb25zL19yYXRpby5zY3NzIiwiYWJzdHJhY3RzL2Z1bmN0aW9ucy9fc3RyaXAtdW5pdC5zY3NzIiwiYWJzdHJhY3RzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ub3JtYWxpemUuY3NzL25vcm1hbGl6ZS5jc3MiLCJiYXNlL2VsZW1lbnRzL19odG1sLnNjc3MiLCJhYnN0cmFjdHMvbWl4aW5zL19hbnRpYWxpYXNpbmcuc2NzcyIsImFic3RyYWN0cy92YXJpYWJsZXMvX2NvbG9ycy5zY3NzIiwiYmFzZS9lbGVtZW50cy9fYm9keS5zY3NzIiwiYmFzZS9lbGVtZW50cy9fY29weS5zY3NzIiwiYWJzdHJhY3RzL2Z1bmN0aW9ucy9fcmVtLnNjc3MiLCJiYXNlL2VsZW1lbnRzL19oZWFkaW5ncy5zY3NzIiwiYmFzZS9lbGVtZW50cy9fYS5zY3NzIiwiYmFzZS9lbGVtZW50cy9faHIuc2NzcyIsImJhc2UvZWxlbWVudHMvX2ltZy5zY3NzIiwiYmFzZS9lbGVtZW50cy9fbGlzdHMuc2NzcyIsImJhc2UvZWxlbWVudHMvX3NlbGVjdGlvbi5zY3NzIiwiYmFzZS9lbGVtZW50cy9fc3ZnLnNjc3MiLCJiYXNlL2VsZW1lbnRzL190YWJsZXMuc2NzcyIsImJhc2UvZWxlbWVudHMvX3RleHRhcmVhLnNjc3MiLCJiYXNlL21vZHVsZXMvX2FjY2Vzc2liaWxpdHkuc2NzcyIsImJhc2UvbW9kdWxlcy9fYWxpZ25tZW50LnNjc3MiLCJiYXNlL21vZHVsZXMvX2NsZWFyaW5ncy5zY3NzIiwiYmFzZS9tb2R1bGVzL19tZWRpYS5zY3NzIiwiYmFzZS9tb2R1bGVzL19nYWxsZXJ5LnNjc3MiLCJhYnN0cmFjdHMvdmFyaWFibGVzL19jb2x1bW5zLnNjc3MiLCJiYXNlL21vZHVsZXMvX2NhcHRpb25zLnNjc3MiLCJiYXNlL21vZHVsZXMvX2ltZy1maXQuc2NzcyIsImFic3RyYWN0cy9taXhpbnMvX29iamVjdC1maXQuc2NzcyIsImJhc2UvbW9kdWxlcy9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwiY29tcG9uZW50cy9fbm8tamF2YXNjcmlwdC5zY3NzIiwiY29tcG9uZW50cy9fcHJpbWFyeS1tZW51LnNjc3MiLCJjb21wb25lbnRzL19ndXRlbmJlcmctY29yZS5zY3NzIiwiYWJzdHJhY3RzL21peGlucy9fb3V0bGluZS5zY3NzIiwiY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fbmV4dC1wcmV2LWxpbmtzLnNjc3MiLCJjb21wb25lbnRzL19jb21tZW50cy5zY3NzIiwiY29tcG9uZW50cy9fZm9ybXMuc2NzcyIsImNvbXBvbmVudHMvX3ByaW1hcnktc2VhcmNoLnNjc3MiLCJjb21wb25lbnRzL19zZWNvbmRhcnktc2VhcmNoLnNjc3MiLCJjb21wb25lbnRzL19ib3R0b20tYmFyLnNjc3MiLCJjb21wb25lbnRzL193aWRnZXRzLnNjc3MiLCJjb21wb25lbnRzL19zaWRlYmFyLnNjc3MiLCJncmlkL19jb3JlLnNjc3MiLCJhYnN0cmFjdHMvdmFyaWFibGVzL19ncmlkLnNjc3MiLCJncmlkL19hdXRvLWZpdC5zY3NzIiwibGF5b3V0L19oZWFkZXIuc2NzcyIsImxheW91dC9fZm9vdGVyLnNjc3MiLCJsYXlvdXQva25vd2xlZGdlYmFzZS9sYXlvdXQtMS5zY3NzIiwidGVtcGxhdGVzL19zaXRlLnNjc3MiLCJ0ZW1wbGF0ZXMvX2luZGV4LnNjc3MiLCJ0ZW1wbGF0ZXMvX3Bvc3RzLWFuZC1wYWdlcy5zY3NzIiwidXRpbHMvX2FsaWdubWVudC5zY3NzIiwiYmFzZS9tb2R1bGVzL19wcmludC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O21FQ3lCbUU7QUN6Qm5FLHdGQUFBO0FBV0EscUJBQUE7QUNYQSxnREFBQTtBQWFBLHFCQUFBO0FDYkEsZ0RBQUE7QUFTQSxxQkFBQTtBQ1RBLGdEQUFBO0FBZ0JBLHFCQUFBO0FMc0NBOzttRUNsQm1FO0FLcENuRSwyRUFBQTtBQUVBOytFTHFDK0U7QUtsQy9FOzs7RUxzQ0U7QUtqQ0Y7RUFDRSxpQkFBaUI7RUFBRSxNQUFBO0VBQ25CLDhCQUE4QjtFQUFFLE1BQUE7QUxxQ2xDO0FLbENBOytFTHFDK0U7QUtsQy9FOztFTHFDRTtBS2pDRjtFQUNFLFNBQVM7QUxtQ1g7QUtoQ0E7O0VMb0NFO0FLaENGO0VBQ0UsY0FBYztBTGtDaEI7QUsvQkE7OztFTG9DRTtBSy9CRjtFQUNFLGNBQWM7RUFDZCxnQkFBZ0I7QUxpQ2xCO0FLOUJBOytFTGlDK0U7QUs5Qi9FOzs7RUxrQ0U7QUs3QkY7RUFDRSwrQkFBdUI7VUFBdkIsdUJBQXVCO0VBQUUsTUFBQTtFQUN6QixTQUFTO0VBQUUsTUFBQTtFQUNYLGlCQUFpQjtFQUFFLE1BQUE7QUxrQ3JCO0FLL0JBOzs7RUxvQ0U7QUsvQkY7RUFDRSxpQ0FBaUM7RUFBRSxNQUFBO0VBQ25DLGNBQWM7RUFBRSxNQUFBO0FMbUNsQjtBS2hDQTsrRUxtQytFO0FLaEMvRTs7RUxtQ0U7QUsvQkY7RUFDRSw2QkFBNkI7QUxpQy9CO0FLOUJBOzs7RUxtQ0U7QUs5QkY7RUFDRSxtQkFBbUI7RUFBRSxNQUFBO0VBQ3JCLDBCQUEwQjtFQUFFLE1BQUE7RUFDNUIseUNBQWlDO1VBQWpDLGlDQUFpQztFQUFFLE1BQUE7QUxtQ3JDO0FLaENBOztFTG9DRTtBS2hDRjs7RUFFRSxtQkFBbUI7QUxrQ3JCO0FLL0JBOzs7RUxvQ0U7QUsvQkY7OztFQUdFLGlDQUFpQztFQUFFLE1BQUE7RUFDbkMsY0FBYztFQUFFLE1BQUE7QUxtQ2xCO0FLaENBOztFTG9DRTtBS2hDRjtFQUNFLGNBQWM7QUxrQ2hCO0FLL0JBOzs7RUxvQ0U7QUsvQkY7O0VBRUUsY0FBYztFQUNkLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsd0JBQXdCO0FMaUMxQjtBSzlCQTtFQUNFLGVBQWU7QUxpQ2pCO0FLOUJBO0VBQ0UsV0FBVztBTGlDYjtBSzlCQTsrRUxpQytFO0FLOUIvRTs7RUxpQ0U7QUs3QkY7RUFDRSxrQkFBa0I7QUwrQnBCO0FLNUJBOytFTCtCK0U7QUs1Qi9FOzs7RUxnQ0U7QUszQkY7Ozs7O0VBS0Usb0JBQW9CO0VBQUUsTUFBQTtFQUN0QixlQUFlO0VBQUUsTUFBQTtFQUNqQixpQkFBaUI7RUFBRSxNQUFBO0VBQ25CLFNBQVM7RUFBRSxNQUFBO0FMaUNiO0FLOUJBOzs7RUxtQ0U7QUs5QkY7O0VBQ1EsTUFBQTtFQUNOLGlCQUFpQjtBTGlDbkI7QUs5QkE7OztFTG1DRTtBSzlCRjs7RUFDUyxNQUFBO0VBQ1Asb0JBQW9CO0FMaUN0QjtBSzlCQTs7RUxrQ0U7QUs5QkY7Ozs7RUFJRSwwQkFBMEI7QUxnQzVCO0FLN0JBOztFTGlDRTtBSzdCRjs7OztFQUlFLGtCQUFrQjtFQUNsQixVQUFVO0FMK0JaO0FLNUJBOztFTGdDRTtBSzVCRjs7OztFQUlFLDhCQUE4QjtBTDhCaEM7QUszQkE7O0VMK0JFO0FLM0JGO0VBQ0UsOEJBQThCO0FMNkJoQztBSzFCQTs7Ozs7RUxpQ0U7QUsxQkY7RUFDRSw4QkFBc0I7VUFBdEIsc0JBQXNCO0VBQUUsTUFBQTtFQUN4QixjQUFjO0VBQUUsTUFBQTtFQUNoQixjQUFjO0VBQUUsTUFBQTtFQUNoQixlQUFlO0VBQUUsTUFBQTtFQUNqQixVQUFVO0VBQUUsTUFBQTtFQUNaLG1CQUFtQjtFQUFFLE1BQUE7QUxrQ3ZCO0FLL0JBOztFTG1DRTtBSy9CRjtFQUNFLHdCQUF3QjtBTGlDMUI7QUs5QkE7O0VMa0NFO0FLOUJGO0VBQ0UsY0FBYztBTGdDaEI7QUs3QkE7OztFTGtDRTtBQUNGOztFSzVCRSw4QkFBc0I7VUFBdEIsc0JBQXNCO0VBQUUsTUFBQTtFQUN4QixVQUFVO0VBQUUsTUFBQTtBTGlDZDtBSzlCQTs7RUxrQ0U7QUFDRjs7RUs3QkUsWUFBWTtBTGdDZDtBSzdCQTs7O0VMa0NFO0FBQ0Y7RUs3QkUsNkJBQTZCO0VBQUUsTUFBQTtFQUMvQixvQkFBb0I7RUFBRSxNQUFBO0FMaUN4QjtBSzlCQTs7RUxrQ0U7QUFDRjtFSzlCRSx3QkFBd0I7QUxnQzFCO0FLN0JBOzs7RUxrQ0U7QUs3QkY7RUFDRSwwQkFBMEI7RUFBRSxNQUFBO0VBQzVCLGFBQWE7RUFBRSxNQUFBO0FMaUNqQjtBSzlCQTsrRUxpQytFO0FLOUIvRTs7RUxpQ0U7QUs3QkY7RUFDRSxjQUFjO0FMK0JoQjtBSzVCQTs7RUxnQ0U7QUs1QkY7RUFDRSxrQkFBa0I7QUw4QnBCO0FLM0JBOytFTDhCK0U7QUszQi9FOztFTDhCRTtBSzFCRjtFQUNFLGFBQWE7QUw0QmY7QUt6QkE7O0VMNkJFO0FBQ0Y7RUt6QkUsYUFBYTtBTDJCZjtBRDNUQTs7bUVDK1RtRTtBTTFYbkUseUZBQUE7QUFDQTtFQ0FFLG1DQUFtQztFQUNuQyxrQ0FBa0M7RUFDbEMsa0NBQWtDO0VEQWxDLHVCQUF1QjtFQUN2QixjRXFCbUI7RUZwQm5CLG1MTEQ0QjtFS0U1QixnQkFBZ0I7RUFDaEIsZ0JMQTBCO0VLQzFCLHFCQUFxQjtBTjhYdkI7QU12WEE7RUFDRSw4QkFBc0I7VUFBdEIsc0JBQXNCO0FOMFh4QjtBTXZYQTtFQUlJLDJCQUFtQjtVQUFuQixtQkFBbUI7QU51WHZCO0FNblhBLHFCQUFBO0FHM0JBO0VBQ0UsdUJBQXVCO0FUa1p6QjtBVWxaQTtFQUNFLG1CQUFtQjtBVnFackI7QVVsWkE7Ozs7RUFJRSxrQkFBa0I7QVZxWnBCO0FVbFpBO0VBQ0Usb0JBQW9CO0VBQ3BCLDhCRlRvQjtFRVVwQixTQUFTO0FWcVpYO0FVeFpBO0VBTUksU0FBUztBVnNaYjtBVTVaQTtFQVVJLG1CQUFtQjtBVnNadkI7QVVsWkE7O0VBRUUsdUJBQXVCO0FWcVp6QjtBVWxaQTtFQUNFLFdBQVc7QVZxWmI7QVVsWkE7RUFDRSxrQkFBa0I7QVZxWnBCO0FVbFpBO0VBQ0UsZ0JBQWdCO0FWcVpsQjtBVWxaQTtFQUNFLGNBQWM7RUFDZCxlQUFlO0VBQ2YsZUFBZTtFQUNmLHFCQUFxQjtFQUNyQix5QkZyQytCO0VFc0MvQiwrRVQzQzZFO0VTNEM3RSxvQkM5Q3NCO0VEK0N0QixnQlQzQ3lCO0FEZ2MzQjtBVWpaQTtFQUNFLHlCRjVDOEI7QVJnY2hDO0FValpBO0VBQ0UseUJGaEQ4QjtBUm9jaEM7QVVqWkE7Ozs7RUFJRSwrRVQ3RDZFO0VTOEQ3RSxvQkNoRXNCO0FYb2R4QjtBVWpaQTs7RUFFRSxZQUFZO0FWb1pkO0FValpBOztFQUVFLGlDRnpFb0I7RUUwRXBCLHFCQUFxQjtBVm9adkI7QVVqWkE7O0VBRUUsbUJGL0VvQjtFRWdGcEIscUJBQXFCO0FWb1p2QjtBVWpaQTtFQUNFLGNGN0U4QjtBUmllaEM7QVVqWkE7RUFDRSxlQUFlO0FWb1pqQjtBVTlZQTs7Ozs7O0VBTUUsc0JBQXNCO0FWaVp4QjtBWTFmQTtFQUNFLGlCREdzQjtBWDBmeEI7QVl6ZkU7RUFDRSxtQkFBbUI7QVo0ZnZCO0FZN2ZFO0VBQ0UsbUJBQW1CO0FaZ2dCdkI7QVlqZ0JFO0VBQ0UsbUJBQW1CO0Fab2dCdkI7QVlyZ0JFO0VBQ0UsbUJBQW1CO0Fad2dCdkI7QVl6Z0JFO0VBQ0UsbUJBQW1CO0FaNGdCdkI7QVk3Z0JFO0VBQ0UsbUJBQW1CO0FaZ2hCdkI7QVk1Z0JBO0VBQ0UsaUJEUHNCO0FYc2hCeEI7QVk1Z0JBO0VBQ0Usb0JEWHNCO0FYMGhCeEI7QVk1Z0JBO0VBQ0UsbUJEZnNCO0FYOGhCeEI7QVk1Z0JBO0VBQ0Usb0JEbkJzQjtBWGtpQnhCO0FZNWdCQTtFQUNFLGtCRHZCc0I7QVhzaUJ4QjtBWTVnQkE7RUFDRSxtQkQzQnNCO0FYMGlCeEI7QWE5aUJBLHlCQUFBO0FBQ0E7OztFQUdFLFlBQWdDO0VBQ2hDLHFCQUFxQjtBYmlqQnZCO0FjdGpCQTtFQUNFLFdBQVc7RUFDWCxTQUFTO0VBQ1QseUJOc0JtQjtBUm1pQnJCO0FlNWpCQTtFQUNFLGNBQWM7QWYrakJoQjtBZTVqQkE7RUFJRSxxQkFBcUI7RUFLckIsV0FBVztFQUNYLGVBQWU7RUFDZixZQUFZO0VBS1osc0JBQXNCO0Fmb2pCeEI7QWdCeGtCQTs7RUFFRSxpQkFBaUI7RUFDakIsa0JBQWtCO0FoQjJrQnBCO0FnQnhrQkE7RUFDRSxnQkFBZ0I7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RW5CO0E0Q3p2RUE7RUFDRSxlQUFlO0VBQ2YsZ0JBQWdCO0E1QzR2RWxCO0E0Q3R2RUE7RUFDRSw0QkM5QmU7QTdDdXhFakI7QTRDcnZFRTtFQUNFLDRCQUFvQztBNUN3dkV4QztBNEN6dkVFO0VBQ0UsNEJBQW9DO0E1QzR2RXhDO0E0Qzd2RUU7RUFDRSw0QkFBb0M7QTVDZ3dFeEM7QTRDandFRTtFQUNFLDRCQUFvQztBNUNvd0V4QztBNENyd0VFO0VBQ0UsNEJBQW9DO0E1Q3d3RXhDO0E0Q3p3RUU7RUFDRSw0QkFBb0M7QTVDNHdFeEM7QTRDN3dFRTtFQUNFLDRCQUFvQztBNUNneEV4QztBNENqeEVFO0VBQ0UsNEJBQW9DO0E1Q294RXhDO0E0Q3J4RUU7RUFDRSw0QkFBb0M7QTVDd3hFeEM7QTRDenhFRTtFQUNFLDhCQUFvQztBNUM0eEV4QztBNEM3eEVFO0VBQ0UsOEJBQW9DO0E1Q2d5RXhDO0E0Q2p5RUU7RUFDRSw4QkFBb0M7QTVDb3lFeEM7QUlyMEVJO0V3Q3dDRTtJQUNFLDRCQUFvQztFNUNpeUUxQztFNENseUVJO0lBQ0UsNEJBQW9DO0U1Q295RTFDO0U0Q3J5RUk7SUFDRSw0QkFBb0M7RTVDdXlFMUM7RTRDeHlFSTtJQUNFLDRCQUFvQztFNUMweUUxQztFNEMzeUVJO0lBQ0UsNEJBQW9DO0U1QzZ5RTFDO0U0Qzl5RUk7SUFDRSw0QkFBb0M7RTVDZ3pFMUM7RTRDanpFSTtJQUNFLDRCQUFvQztFNUNtekUxQztFNENwekVJO0lBQ0UsNEJBQW9DO0U1Q3N6RTFDO0U0Q3Z6RUk7SUFDRSw0QkFBb0M7RTVDeXpFMUM7RTRDMXpFSTtJQUNFLDhCQUFvQztFNUM0ekUxQztFNEM3ekVJO0lBQ0UsOEJBQW9DO0U1Qyt6RTFDO0U0Q2gwRUk7SUFDRSw4QkFBb0M7RTVDazBFMUM7QUFDRjtBSTUyRUk7RXdDd0NFO0lBQ0UsNEJBQW9DO0U1Q3cwRTFDO0U0Q3owRUk7SUFDRSw0QkFBb0M7RTVDMjBFMUM7RTRDNTBFSTtJQUNFLDRCQUFvQztFNUM4MEUxQztFNEMvMEVJO0lBQ0UsNEJBQW9DO0U1Q2kxRTFD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MkI7WUFBM0IsMkJBQTJCO0lBQzNCLHNCQUFzQjtJQUN0Qiw0QkFBNEI7RXREa2hHaEM7RXNEOWdHQTs7SUFFRSwwQkFBMEI7RXREZ2hHNUI7RUFDQTtJc0Q3Z0dFLDRCQUE0QjtFdEQrZ0c5QjtFQUNBO0lzRDVnR0UsNkJBQTZCO0V0RDhnRy9CO0VBQ0E7O0lzRHZnR0UsV0FBVztFdEQwZ0diO0VzRHZnR0E7O0lBRUUseUJBQXlCO0lBQ3pCLHdCQUF3QjtFdER5Z0cxQjtFc0RwZ0dBO0lBQ0UsMkJBQTJCO0V0RHNnRzdCO0VzRG5nR0E7O0lBRUUsd0JBQXdCO0V0RHFnRzFCO0VzRGxnR0E7SUFDRSwwQkFBMEI7RXREb2dHNUI7RXNEamdHQTs7O0lBR0UsVUFBVTtJQUNWLFNBQVM7RXREbWdHWDtFc0RoZ0dBOztJQUVFLHVCQUF1QjtFdERrZ0d6QjtBQUNGO0FzRGhnR0EscUJBQUEiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFRBQkxFIE9GIENPTlRFTlRTOlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqICAjIE5vcm1hbGl6ZVxuICogICMgRWxlbWVudHNcbiAqICAjIE1vZHVsZXNcbiAqIFx0ICAgICMjIEFjY2Vzc2liaWxpdHlcbiAqIFx0ICAgICMjIEFsaWdubWVudFxuICogXHQgICAgIyMgQ2xlYXJuaW5nc1xuICogXHQgICAgIyMgTWVkaWFcbiAqIFx0IyBDb21wb25lbnRzXG4gKiBcdCAgICAjIyBQcmltYXJ5IG1lbnVcbiAqICAgICAgIyMgR3V0ZW5iZXJnIGJsb2Nrc1xuICogXHQgICAgIyMgUGFnaW5hdGlvblxuICogXHQgICAgIyMgTmV4dC9QcmV2IExpbmtzXG4gKiBcdCAgICAjIyBDb21tZW50c1xuICogXHQgICAgIyMgV2lkZ2V0c1xuICogXHQgICAgIyMgRm9ybXNcbiAqICAjIExheW91dFxuICogICAgICAjIyBIZWFkZXJcbiAqIFx0ICAgICMjIEZvb3RlclxuICogXHQjIFRlbXBsYXRlc1xuICogXHQgICAgICMjIFNpdGVcbiAqIFx0ICAgICAjIyBQb3N0cyBhbmQgcGFnZXNcbiAqICAjIFByaW50XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gICMgVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGltcG9ydCAnYWJzdHJhY3RzL3ZhcmlhYmxlcy9jb2xvcnMnO1xuQGltcG9ydCAnYWJzdHJhY3RzL3ZhcmlhYmxlcy9jb2x1bW5zJztcbkBpbXBvcnQgJ2Fic3RyYWN0cy92YXJpYWJsZXMvaGVhZGluZ3MnO1xuQGltcG9ydCAnYWJzdHJhY3RzL3ZhcmlhYmxlcy9yYXRpb3MnO1xuQGltcG9ydCAnYWJzdHJhY3RzL3ZhcmlhYmxlcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJ2Fic3RyYWN0cy92YXJpYWJsZXMvZ3JpZCc7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAjIEZ1bmN0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgJ2Fic3RyYWN0cy9mdW5jdGlvbnMvcmF0aW8nO1xuQGltcG9ydCAnYWJzdHJhY3RzL2Z1bmN0aW9ucy9yZW0nO1xuQGltcG9ydCAnYWJzdHJhY3RzL2Z1bmN0aW9ucy9zdHJpcC11bml0JztcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vICMgTWl4aW5zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCAnYWJzdHJhY3RzL21peGlucy9hbnRpYWxpYXNpbmcnO1xuQGltcG9ydCAnYWJzdHJhY3RzL21peGlucy9icmVha3BvaW50cyc7XG5AaW1wb3J0ICdhYnN0cmFjdHMvbWl4aW5zL2hvdmVyLXN0YXRlJztcbkBpbXBvcnQgJ2Fic3RyYWN0cy9taXhpbnMvb2JqZWN0LWZpdCc7XG5AaW1wb3J0ICdhYnN0cmFjdHMvbWl4aW5zL2J1dHRvbi1yZXNldCc7XG5AaW1wb3J0ICdhYnN0cmFjdHMvbWl4aW5zL291dGxpbmUnO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogIyBOb3JtYWxpemVcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW1wb3J0ICcuLi9ub2RlX21vZHVsZXMvbm9ybWFsaXplLmNzcy9ub3JtYWxpemUnO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogIyBFbGVtZW50c1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgJ2Jhc2UvZWxlbWVudHMvaHRtbCc7XG5AaW1wb3J0ICdiYXNlL2VsZW1lbnRzL2JvZHknO1xuQGltcG9ydCAnYmFzZS9lbGVtZW50cy9jb3B5JztcbkBpbXBvcnQgJ2Jhc2UvZWxlbWVudHMvaGVhZGluZ3MnO1xuQGltcG9ydCAnYmFzZS9lbGVtZW50cy9hJztcbkBpbXBvcnQgJ2Jhc2UvZWxlbWVudHMvaHInO1xuQGltcG9ydCAnYmFzZS9lbGVtZW50cy9pbWcnO1xuQGltcG9ydCAnYmFzZS9lbGVtZW50cy9saXN0cyc7XG5AaW1wb3J0ICdiYXNlL2VsZW1lbnRzL3NlbGVjdGlvbic7XG5AaW1wb3J0ICdiYXNlL2VsZW1lbnRzL3N2Zyc7XG5AaW1wb3J0ICdiYXNlL2VsZW1lbnRzL3RhYmxlcyc7XG5AaW1wb3J0ICdiYXNlL2VsZW1lbnRzL3RleHRhcmVhJztcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqICMgTW9kdWxlc1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgJ2Jhc2UvbW9kdWxlcy9hY2Nlc3NpYmlsaXR5JztcbkBpbXBvcnQgJ2Jhc2UvbW9kdWxlcy9hbGlnbm1lbnQnO1xuQGltcG9ydCAnYmFzZS9tb2R1bGVzL2NsZWFyaW5ncyc7XG5AaW1wb3J0ICdiYXNlL21vZHVsZXMvbWVkaWEnO1xuQGltcG9ydCAnYmFzZS9tb2R1bGVzL2dhbGxlcnknO1xuQGltcG9ydCAnYmFzZS9tb2R1bGVzL2NhcHRpb25zJztcbkBpbXBvcnQgJ2Jhc2UvbW9kdWxlcy9pbWctZml0JztcbkBpbXBvcnQgJ2Jhc2UvbW9kdWxlcy9yZXNwb25zaXZlLWVtYmVkJztcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqICMgQ29tcG9uZW50c1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgJ2NvbXBvbmVudHMvbm8tamF2YXNjcmlwdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3ByaW1hcnktbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2d1dGVuYmVyZy1jb3JlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL25leHQtcHJldi1saW5rcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbW1lbnRzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9wcmltYXJ5LXNlYXJjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NlY29uZGFyeS1zZWFyY2gnO1xuQGltcG9ydCAnY29tcG9uZW50cy9ib3R0b20tYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvd2lkZ2V0cyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NpZGViYXInO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogIyBMYXlvdXRcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW1wb3J0ICdncmlkL2NvcmUnO1xuQGltcG9ydCAnZ3JpZC9vZmZzZXQnO1xuQGltcG9ydCAnZ3JpZC9ncmlkLWdhcCc7XG5AaW1wb3J0ICdncmlkL2F1dG8tZml0JztcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqICMgTGF5b3V0XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCAnbGF5b3V0L2hlYWRlcic7XG5AaW1wb3J0ICdsYXlvdXQvZm9vdGVyJztcbkBpbXBvcnQgJ2xheW91dC9rbm93bGVkZ2ViYXNlL2xheW91dC0xJztcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqICMgVGVtcGxhdGVzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCAndGVtcGxhdGVzL3NpdGUnO1xuQGltcG9ydCAndGVtcGxhdGVzL2luZGV4JztcbkBpbXBvcnQgJ3RlbXBsYXRlcy9wb3N0cy1hbmQtcGFnZXMnO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogIyBVdGlsc1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgJ3V0aWxzL2FsaWdubWVudCc7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICogIyBQcmludFxuICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW1wb3J0ICdiYXNlL21vZHVsZXMvcHJpbnQnO1xuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIFRBQkxFIE9GIENPTlRFTlRTOlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqICAjIE5vcm1hbGl6ZVxuICogICMgRWxlbWVudHNcbiAqICAjIE1vZHVsZXNcbiAqIFx0ICAgICMjIEFjY2Vzc2liaWxpdHlcbiAqIFx0ICAgICMjIEFsaWdubWVudFxuICogXHQgICAgIyMgQ2xlYXJuaW5nc1xuICogXHQgICAgIyMgTWVkaWFcbiAqIFx0IyBDb21wb25lbnRzXG4gKiBcdCAgICAjIyBQcmltYXJ5IG1lbnVcbiAqICAgICAgIyMgR3V0ZW5iZXJnIGJsb2Nrc1xuICogXHQgICAgIyMgUGFnaW5hdGlvblxuICogXHQgICAgIyMgTmV4dC9QcmV2IExpbmtzXG4gKiBcdCAgICAjIyBDb21tZW50c1xuICogXHQgICAgIyMgV2lkZ2V0c1xuICogXHQgICAgIyMgRm9ybXNcbiAqICAjIExheW91dFxuICogICAgICAjIyBIZWFkZXJcbiAqIFx0ICAgICMjIEZvb3RlclxuICogXHQjIFRlbXBsYXRlc1xuICogXHQgICAgICMjIFNpdGVcbiAqIFx0ICAgICAjIyBQb3N0cyBhbmQgcGFnZXNcbiAqICAjIFByaW50XG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgbWF4LWxpbmUtbGVuZ3RoLCBzY3NzL2RvbGxhci12YXJpYWJsZS1wYXR0ZXJuLCB2YWx1ZS1rZXl3b3JkLWNhc2UgKi9cbi8qIHN0eWxlbGluZS1lbmFibGUgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIGF0LXJ1bGUtZW1wdHktbGluZS1iZWZvcmUgKi9cbi8qIHN0eWxlbGluZS1lbmFibGUgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIGF0LXJ1bGUtZW1wdHktbGluZS1iZWZvcmUgKi9cbi8qIHN0eWxlbGluZS1lbmFibGUgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIGF0LXJ1bGUtZW1wdHktbGluZS1iZWZvcmUgKi9cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiAjIE5vcm1hbGl6ZVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICovXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAxICovXG4gIGhlaWdodDogMDtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlO1xuICAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAxICovXG4gIG1hcmdpbjogMDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQge1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqICMgRWxlbWVudHNcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzLCBtYXgtbGluZS1sZW5ndGgsIGF0LXJ1bGUtZW1wdHktbGluZS1iZWZvcmUgKi9cbmh0bWwge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGNvbG9yOiAjNDI0ODUxO1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgXCJSb2JvdG9cIiwgXCJPeHlnZW5cIiwgXCJVYnVudHVcIiwgXCJDYW50YXJlbGxcIiwgXCJGaXJhIFNhbnNcIiwgXCJEcm9pZCBTYW5zXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuKiwgKjo6YmVmb3JlLCAqOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbmJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbn1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbmRmbixcbmNpdGUsXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbmJsb2NrcXVvdGUge1xuICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbiAgYm9yZGVyLWxlZnQ6IDhweCBzb2xpZCAjNjAyN2NlO1xuICBtYXJnaW46IDA7XG59XG5cbmJsb2NrcXVvdGUgPiAqIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5ibG9ja3F1b3RlIHAge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4ud2lkZ2V0LWFyZWEgYmxvY2txdW90ZSxcbi5mb290ZXItd2lkZ2V0cyBibG9ja3F1b3RlIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi5mb290ZXItd2lkZ2V0cyBibG9ja3F1b3RlIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW46IDAgMCAxLjVyZW07XG59XG5cbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDEuNnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xuICBmb250LWZhbWlseTogXCJzb3VyY2UtY29kZS1wcm9cIiwgbWVubG8sIG1vbmFjbywgY29uc29sYXMsIGNvdXJpZXIgbmV3LCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4ud2lkZ2V0LWFyZWEgcHJlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ3NDc0Nztcbn1cblxuLmZvb3Rlci13aWRnZXRzIHByZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NzQ3NDc7XG59XG5cbmNvZGUsXG5rYmQsXG50dCxcbnZhciB7XG4gIGZvbnQtZmFtaWx5OiBcInNvdXJjZS1jb2RlLXByb1wiLCBtZW5sbywgbW9uYWNvLCBjb25zb2xhcywgY291cmllciBuZXcsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG59XG5cbmFiYnIsXG5hY3JvbnltIHtcbiAgY3Vyc29yOiBoZWxwO1xufVxuXG5hYmJyW3RpdGxlXSxcbmFjcm9ueW0ge1xuICBib3JkZXItYm90dG9tOiAycHggZG90dGVkICM2MDI3Y2U7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxubWFyayxcbmlucyB7XG4gIGJhY2tncm91bmQ6ICM2MDI3Y2U7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmZvb3Rlci13aWRnZXRzIGlucyB7XG4gIGNvbG9yOiAjNDc0NzQ3O1xufVxuXG5iaWcge1xuICBmb250LXNpemU6IDEyNSU7XG59XG5cbmF1ZGlvLFxuY2FudmFzLFxuaWZyYW1lLFxuaW1nLFxuc3ZnLFxudmlkZW8ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uZW50cnktdGl0bGUge1xuICBmb250LXNpemU6IDIuNXJlbTtcbn1cblxuLmVudHJ5LWNvbnRlbnQgaDEge1xuICBtYXJnaW46IDNyZW0gMCAycmVtO1xufVxuXG4uZW50cnktY29udGVudCBoMiB7XG4gIG1hcmdpbjogM3JlbSAwIDJyZW07XG59XG5cbi5lbnRyeS1jb250ZW50IGgzIHtcbiAgbWFyZ2luOiAzcmVtIDAgMnJlbTtcbn1cblxuLmVudHJ5LWNvbnRlbnQgaDQge1xuICBtYXJnaW46IDNyZW0gMCAycmVtO1xufVxuXG4uZW50cnktY29udGVudCBoNSB7XG4gIG1hcmdpbjogM3JlbSAwIDJyZW07XG59XG5cbi5lbnRyeS1jb250ZW50IGg2IHtcbiAgbWFyZ2luOiAzcmVtIDAgMnJlbTtcbn1cblxuLmVudHJ5LWNvbnRlbnQgaDEge1xuICBmb250LXNpemU6IDIuNXJlbTtcbn1cblxuLmVudHJ5LWNvbnRlbnQgaDIge1xuICBmb250LXNpemU6IDIuMTg3NXJlbTtcbn1cblxuLmVudHJ5LWNvbnRlbnQgaDMge1xuICBmb250LXNpemU6IDEuODc1cmVtO1xufVxuXG4uZW50cnktY29udGVudCBoNCB7XG4gIGZvbnQtc2l6ZTogMS41NjI1cmVtO1xufVxuXG4uZW50cnktY29udGVudCBoNSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cblxuLmVudHJ5LWNvbnRlbnQgaDYge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuXG4vKiBkZWZhdWx0IGxpbmsgc3R5bGluZyAqL1xuYSxcbi5hbmNob3IsXG5hOmxpbmsge1xuICBjb2xvcjogYmxhY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuaHIge1xuICBoZWlnaHQ6IDNweDtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDI0ODUxO1xufVxuXG5maWd1cmUge1xuICBtYXJnaW46IDFyZW0gMDtcbn1cblxuaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbnVsLFxub2wge1xuICBwYWRkaW5nOiAwIDEuNXJlbTtcbiAgbWFyZ2luOiAwIDAgMS41cmVtO1xufVxuXG51bCB7XG4gIGxpc3Qtc3R5bGU6IGRpc2M7XG59XG5cbm9sIHtcbiAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbn1cblxubGkgPiB1bCxcbmxpID4gb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG51bCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDAuMnJlbTtcbn1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eSAqL1xubGkgb2wsXG5saSB1bCxcbmxpIGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogc3R5bGVsaW5lLWVuYWJsZSAqL1xuZHQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5kZCB7XG4gIG1hcmdpbjogMCAxLjVyZW0gMS41cmVtO1xufVxuXG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjQ5LCAyNDgsIDExMywgMC41KTtcbiAgY29sb3I6ICM0YTRhNGE7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4uaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMC4wNjI1cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLyogTm9ybWFsaXplIHN2ZyBiZWhhdmlvdXIgb24gSUUgMTEgKi9cbkBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIFtzcmMqPScuc3ZnJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxudGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIDAgMS41cmVtO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG50YWJsZSBjYXB0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG50aGVhZCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG59XG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG59XG5cbnRmb290IHRyIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbn1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eSAqL1xudHIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY3VycmVudENvbG9yO1xufVxuXG50cjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLyogc3R5bGVsaW5lLWVuYWJsZSAqL1xudGQsXG50aCB7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG59XG5cbnRkOmxhc3QtY2hpbGQsXG50aDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiAjIE1vZHVsZXNcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogIyMgQWNjZXNzaWJpbGl0eVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFRleHQgbWVhbnQgb25seSBmb3Igc2NyZWVuIHJlYWRlcnMuICovXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogLTFweDtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7XG4gIC8qIE1hbnkgc2NyZWVuIHJlYWRlciBhbmQgYnJvd3NlciBjb21iaW5hdGlvbnMgYW5ub3VuY2UgYnJva2VuIHdvcmRzIGFzIHRoZXkgd291bGQgYXBwZWFyIHZpc3VhbGx5LiAqL1xufVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzIHtcbiAgei1pbmRleDogMTAwMDAwO1xuICAvKiBBYm92ZSBXUCB0b29sYmFyLiAqL1xuICB0b3A6IDVweDtcbiAgbGVmdDogNXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NzQ3NDc7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGNsaXAtcGF0aDogbm9uZTtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qIERvIG5vdCBzaG93IHRoZSBvdXRsaW5lIG9uIHRoZSBza2lwIGxpbmsgdGFyZ2V0LiAqL1xuLmNvbnRlbnRbdGFiaW5kZXg9Jy0xJ106Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vKlxuICBUaGlzIHdpbGwgaGlkZSB0aGUgZm9jdXMgaW5kaWNhdG9yIGlmIHRoZSBlbGVtZW50IHJlY2VpdmVzIGZvY3VzIHZpYSB0aGUgbW91c2UsXG4gIGJ1dCBpdCB3aWxsIHN0aWxsIHNob3cgdXAgb24ga2V5Ym9hcmQgZm9jdXMuXG4qL1xuLmpzLWZvY3VzLXZpc2libGUgOmZvY3VzOm5vdCguZm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uZm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmUtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgb3V0bGluZS1zdHlsZTogZG90dGVkO1xuICBvdXRsaW5lLXdpZHRoOiAycHg7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICogIyMgQWxpZ25tZW50XG4gICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5hbGlnbmxlZnQge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIG1hcmdpbi1yaWdodDogMS41cmVtO1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmFsaWducmlnaHQge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmFsaWduY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGNsZWFyOiBib3RoO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAqICMjIENsZWFyaW5nc1xuICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1wc2V1ZG8tZWxlbWVudC1jb2xvbi1ub3RhdGlvbiAqL1xuLmNsZWFyOmFmdGVyLFxuLmVudHJ5LWNvbnRlbnQ6YWZ0ZXIsXG4uZW50cnktZm9vdGVyOmFmdGVyLFxuLmNvbW1lbnQtY29udGVudDphZnRlcixcbi5zaXRlLWhlYWRlcjphZnRlcixcbi5zaXRlLWZvb3RlcjphZnRlcixcbi5uYXYtbGlua3M6YWZ0ZXIsXG4ucGFnaW5hdGlvbjphZnRlcixcbi5jb21tZW50LWF1dGhvcjphZnRlcixcbi53aWRnZXQtYXJlYTphZnRlcixcbi53aWRnZXQ6YWZ0ZXIsXG4uY29tbWVudC1tZXRhOmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5jbGVhcjpiZWZvcmUsXG4uY2xlYXI6YWZ0ZXIsXG4uZW50cnktY29udGVudDpiZWZvcmUsXG4uZW50cnktY29udGVudDphZnRlcixcbi5lbnRyeS1mb290ZXI6YmVmb3JlLFxuLmVudHJ5LWZvb3RlcjphZnRlcixcbi5jb21tZW50LWNvbnRlbnQ6YmVmb3JlLFxuLmNvbW1lbnQtY29udGVudDphZnRlcixcbi5zaXRlLWhlYWRlcjpiZWZvcmUsXG4uc2l0ZS1oZWFkZXI6YWZ0ZXIsXG4uc2l0ZS1mb290ZXI6YmVmb3JlLFxuLnNpdGUtZm9vdGVyOmFmdGVyLFxuLm5hdi1saW5rczpiZWZvcmUsXG4ubmF2LWxpbmtzOmFmdGVyLFxuLnBhZ2luYXRpb246YmVmb3JlLFxuLnBhZ2luYXRpb246YWZ0ZXIsXG4uY29tbWVudC1hdXRob3I6YmVmb3JlLFxuLmNvbW1lbnQtYXV0aG9yOmFmdGVyLFxuLndpZGdldC1hcmVhOmJlZm9yZSxcbi53aWRnZXQtYXJlYTphZnRlcixcbi53aWRnZXQ6YmVmb3JlLFxuLndpZGdldDphZnRlcixcbi5jb21tZW50LW1ldGE6YmVmb3JlLFxuLmNvbW1lbnQtbWV0YTphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnJztcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbn1cblxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgKiAjIyBNZWRpYVxuICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucGFnZS1jb250ZW50IC53cC1zbWlsZXksXG4uZW50cnktY29udGVudCAud3Atc21pbGV5LFxuLmNvbW1lbnQtY29udGVudCAud3Atc21pbGV5IHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiBNYWtlIHN1cmUgZW1iZWRzIGFuZCBpZnJhbWVzIGZpdCB0aGVpciBjb250YWluZXJzLiAqL1xuZW1iZWQsXG5pZnJhbWUsXG5vYmplY3Qge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8qIE1ha2Ugc3VyZSBsb2dvIGxpbmsgd3JhcHMgYXJvdW5kIGxvZ28gaW1hZ2UuICovXG4uY3VzdG9tLWxvZ28tbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmdhbGxlcnkge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi5nYWxsZXJ5LWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwLjI1cmVtO1xuICBtYXJnaW46IDA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtMiAuZ2FsbGVyeS1pdGVtIHtcbiAgbWF4LXdpZHRoOiA1MCU7XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtMyAuZ2FsbGVyeS1pdGVtIHtcbiAgbWF4LXdpZHRoOiAzMy4zMyU7XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtNCAuZ2FsbGVyeS1pdGVtIHtcbiAgbWF4LXdpZHRoOiAyNSU7XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtNSAuZ2FsbGVyeS1pdGVtIHtcbiAgbWF4LXdpZHRoOiAyMCU7XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtNiAuZ2FsbGVyeS1pdGVtIHtcbiAgbWF4LXdpZHRoOiAxNi42NiU7XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtNyAuZ2FsbGVyeS1pdGVtIHtcbiAgbWF4LXdpZHRoOiAxNC4yOCU7XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtOCAuZ2FsbGVyeS1pdGVtIHtcbiAgbWF4LXdpZHRoOiAxMi41JTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy05IC5nYWxsZXJ5LWl0ZW0ge1xuICBtYXgtd2lkdGg6IDExLjExJTtcbn1cblxuLmdhbGxlcnktY2FwdGlvbixcbi53cC1jYXB0aW9uLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDEwcHggMCAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi53cC1jYXB0aW9uLXRleHQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4ud3AtY2FwdGlvbiB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUgKi9cbiAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xufVxuXG4ud3AtY2FwdGlvbiBpbWdbY2xhc3MqPSd3cC1pbWFnZS0nXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4ud3AtY2FwdGlvbiAud3AtY2FwdGlvbi10ZXh0IHtcbiAgbWFyZ2luOiAwLjgwNzVyZW0gMDtcbn1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgYXQtcnVsZS1lbXB0eS1saW5lLWJlZm9yZSAqL1xuLmltZy1maXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uaW1nLWZpdCBpbWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIG9iamVjdC1wb3NpdGlvbjogNTAlIDUwJTtcbn1cblxuLmltZy1maXQtLWZhbGxiYWNrIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG4uaW1nLWZpdC0tZmFsbGJhY2sgaW1nIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuLnJlc3BvbnNpdmUtZW1iZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogNTYuMjUlO1xufVxuXG4ucmVzcG9uc2l2ZS1lbWJlZC1pdGVtIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiAjIENvbXBvbmVudHNcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubm9zY3JpcHQtbm90aWZpY2F0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDIwcHggMDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgKiAjIyBQcmltYXJ5IG1lbnVcbiAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LWNvbXBvdW5kLXNlbGVjdG9ycywgbWF4LW5lc3RpbmctZGVwdGgsIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHksIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnMsIG1heC1saW5lLWxlbmd0aCAqL1xuLyogTWVudSB0b2dnbGUgKi9cbi5uby1qcyAubWVudS10b2dnbGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWVudS10b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjBweDtcbiAgcmlnaHQ6IDIwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgYm9yZGVyOiAycHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwZW0pIHtcbiAgLm1lbnUtdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5tZW51LXRvZ2dsZSAuaWNvbiB7XG4gIHRvcDogLTJweDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG5cbi5tZW51LXRvZ2dsZSAuaWNvbi1jbG9zZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZW51LXRvZ2dsZS5pcy1leHBhbmRlZCAuaWNvbi1jbG9zZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm1lbnUtdG9nZ2xlLmlzLWV4cGFuZGVkIC5pY29uLWJhcnMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWFpbi1uYXZpZ2F0aW9uIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzBlbSkge1xuICAubWFpbi1uYXZpZ2F0aW9uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG5cbi5wcmltYXJ5LW1lbnUtd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucHJpbWFyeS1tZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxleC1mbG93OiBjb2x1bW4gd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MGVtKSB7XG4gIC5wcmltYXJ5LW1lbnUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB9XG59XG5cbi5wcmltYXJ5LW1lbnUgLmljb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucHJpbWFyeS1tZW51LmlzLXZpc2libGUsXG4ubm8tanMgLnByaW1hcnktbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5zdWItbWVudSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4vKiBNb2JpbGUgbWVudSBzdHlsaW5nICovXG4ucHJpbWFyeS1tZW51IC5tZW51LWl0ZW0ge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzBlbSkge1xuICAucHJpbWFyeS1tZW51IC5tZW51LWl0ZW0ge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cbn1cblxuLnByaW1hcnktbWVudSAubWVudS1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4ucHJpbWFyeS1tZW51IC5tZW51LWl0ZW0gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAxMHB4O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLnByaW1hcnktbWVudSAubWVudS1pdGVtLmN1cnJlbnQtbWVudS1pdGVtID4gYSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzBlbSkge1xuICAucHJpbWFyeS1tZW51IC5tZW51LWl0ZW0uY3VycmVudC1tZW51LWl0ZW0gPiBhIHtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIH1cbn1cblxuLnByaW1hcnktbWVudSAuc3ViLW1lbnUge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG59XG5cbi5wcmltYXJ5LW1lbnUgLnN1Yi1tZW51IC5tZW51LWl0ZW0ge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4ucHJpbWFyeS1tZW51IC5zdWItbWVudSAubWVudS1pdGVtIGEge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi8qIE1lbnUgdGFibGV0cyBhbmQgdXAgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3MGVtKSB7XG4gIC5wcmltYXJ5LW1lbnUge1xuICAgIC8qIFN1Ym1lbnVzICovXG4gIH1cbiAgLnByaW1hcnktbWVudSAuaWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5wcmltYXJ5LW1lbnUgLmljb24tYXJyb3ctZG93biB7XG4gICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgfVxuICAucHJpbWFyeS1tZW51IC5tZW51LWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB6b29tOiAxO1xuICB9XG4gIC5wcmltYXJ5LW1lbnUgLm1lbnUtaXRlbSBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIC5wcmltYXJ5LW1lbnUgLm1lbnUtaXRlbTpob3ZlciAuc3ViLW1lbnUsXG4gIC5wcmltYXJ5LW1lbnUgLm1lbnUtaXRlbS5mb2N1cyAuc3ViLW1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5wcmltYXJ5LW1lbnUgLm1lbnUtaXRlbTpmb2N1cy13aXRoaW4gLnN1Yi1tZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAucHJpbWFyeS1tZW51IC5tZW51LWl0ZW0gYSxcbiAgLnByaW1hcnktbWVudSAubWVudS1pdGVtLmZvY3VzIGEge1xuICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgfVxuICAucHJpbWFyeS1tZW51IC5tZW51LWl0ZW0gYTpob3ZlciwgLnByaW1hcnktbWVudSAubWVudS1pdGVtIGE6Zm9jdXMsXG4gIC5wcmltYXJ5LW1lbnUgLm1lbnUtaXRlbS5mb2N1cyBhOmhvdmVyLFxuICAucHJpbWFyeS1tZW51IC5tZW51LWl0ZW0uZm9jdXMgYTpmb2N1cyB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIH1cbiAgLnByaW1hcnktbWVudSAuc3ViLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIHRvcDogLTk5OXJlbTtcbiAgICBsZWZ0OiAtOTk5cmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1pbi13aWR0aDogMjUwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3gtc2hhZG93OiAwIDE1cHggNDBweCAwIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAucHJpbWFyeS1tZW51IC5zdWItbWVudSBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAucHJpbWFyeS1tZW51IC5zdWItbWVudSAuaWNvbi1hcnJvdy1kb3duIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogOHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoOTBkZWcpO1xuICB9XG4gIC5wcmltYXJ5LW1lbnUgLnN1Yi1tZW51IC5tZW51LWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5wcmltYXJ5LW1lbnUgLnN1Yi1tZW51IC5tZW51LWl0ZW0gYSB7XG4gICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgIGNvbG9yOiAjNGE0YTRhO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAucHJpbWFyeS1tZW51IC5zdWItbWVudSAubWVudS1pdGVtIGE6aG92ZXIsIC5wcmltYXJ5LW1lbnUgLnN1Yi1tZW51IC5tZW51LWl0ZW0gYTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICM1ODNhYmM7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICAucHJpbWFyeS1tZW51IC5zdWItbWVudSAubWVudS1pdGVtIC5zdWItbWVudSB7XG4gICAgdG9wOiAtOTk5cmVtO1xuICAgIGxlZnQ6IC05OTlyZW07XG4gIH1cbiAgLnByaW1hcnktbWVudSAuc3ViLW1lbnUgLm1lbnUtaXRlbTpob3ZlciA+IC5zdWItbWVudSxcbiAgLnByaW1hcnktbWVudSAuc3ViLW1lbnUgLm1lbnUtaXRlbS5mb2N1cyA+IC5zdWItbWVudSB7XG4gICAgdG9wOiAtMXB4O1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLnByaW1hcnktbWVudSAuc3ViLW1lbnUgLm1lbnUtaXRlbTpmb2N1cy13aXRoaW4gPiAuc3ViLW1lbnUge1xuICAgIHRvcDogLTFweDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5wcmltYXJ5LW1lbnUgLnN1Yi1tZW51IC5tZW51LWl0ZW06Zm9jdXMtd2l0aGluID4gLnN1Yi1tZW51IHtcbiAgICB0b3A6IC0xcHg7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogIyMgR3V0ZW5iZXJnIGJsb2Nrc1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1jb21wb3VuZC1zZWxlY3RvcnMsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgbm8tZHVwbGljYXRlLXNlbGVjdG9ycywgbWF4LWxpbmUtbGVuZ3RoICovXG4uZW50cnktY29udGVudCA+ICoge1xuICBtYXgtd2lkdGg6IDc2MHB4O1xuICBtYXJnaW46IDM2cHggMDtcbn1cblxuLnBhZ2UtdGVtcGxhdGUta25vd2xlZGdlYmFzZSAuZW50cnktY29udGVudCA+ICoge1xuICBtYXgtd2lkdGg6IDc2MHB4O1xuICBtYXJnaW46IDM2cHggYXV0bztcbn1cblxuLmVudHJ5LWNvbnRlbnQgcDpmaXJzdC1vZi10eXBlIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgPiAuYWxpZ253aWRlIHtcbiAgbWF4LXdpZHRoOiAxMTAwcHg7XG59XG5cbi5lbnRyeS1jb250ZW50ID4gLmFsaWduZnVsbCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxLjVlbSAwO1xufVxuXG4uZW50cnktY29udGVudCB1bCxcbi5lbnRyeS1jb250ZW50IG9sIHtcbiAgbWF4LXdpZHRoOiA3NjBweDtcbiAgbWFyZ2luOiAxLjVlbSAwO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xufVxuXG4ud3AtYmxvY2stdmlkZW8gdmlkZW8ge1xuICBtYXgtd2lkdGg6IDc2MHB4O1xufVxuXG4ud3AtYmxvY2staW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi53cC1ibG9jay1pbWFnZS5hbGlnbmxlZnQsXG4ud3AtYmxvY2staW1hZ2UuYWxpZ25yaWdodCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ud3AtYmxvY2staW1hZ2UuYWxpZ25mdWxsIGltZyB7XG4gIHdpZHRoOiAxMDB2dztcbn1cblxuLndwLWJsb2NrLWdhbGxlcnk6bm90KC5jb21wb25lbnRzLXBsYWNlaG9sZGVyKSB7XG4gIG1hcmdpbjogMS41ZW0gYXV0bztcbn1cblxuLndwLWJsb2NrLWNvdmVyLXRleHQgcCB7XG4gIHBhZGRpbmc6IDEuNWVtIDE0cHg7XG59XG5cbnVsLndwLWJsb2NrLWxhdGVzdC1wb3N0cy5hbGlnbndpZGUsXG51bC53cC1ibG9jay1sYXRlc3QtcG9zdHMuYWxpZ25mdWxsLFxudWwud3AtYmxvY2stbGF0ZXN0LXBvc3RzLmlzLWdyaWQuYWxpZ253aWRlLFxudWwud3AtYmxvY2stbGF0ZXN0LXBvc3RzLmlzLWdyaWQuYWxpZ253aWRlIHtcbiAgcGFkZGluZzogMCAxNHB4O1xufVxuXG4ud3AtYmxvY2stdGFibGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLndwLWJsb2NrLXRhYmxlIHRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG5cbi53cC1ibG9jay10YWJsZSB0ZCxcbi53cC1ibG9jay10YWJsZSB0aCB7XG4gIHBhZGRpbmc6IDAuNWVtO1xufVxuXG4uZW50cnktY29udGVudCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDZweDtcbiAgbWFyZ2luLWxlZnQ6IDIuNWVtO1xufVxuXG4uZW50cnktY29udGVudCB1bCB1bCxcbi5lbnRyeS1jb250ZW50IG9sIG9sLFxuLmVudHJ5LWNvbnRlbnQgdWwgb2wsXG4uZW50cnktY29udGVudCBvbCB1bCB7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uZW50cnktY29udGVudCB1bCB1bCBsaSxcbi5lbnRyeS1jb250ZW50IG9sIG9sIGxpLFxuLmVudHJ5LWNvbnRlbnQgdWwgb2wgbGksXG4uZW50cnktY29udGVudCBvbCB1bCBsaSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4ud3AtYmxvY2stZW1iZWQudHlwZS12aWRlbyA+IC53cC1ibG9jay1lbWJlZF9fd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZy10b3A6IDU2LjI1JTtcbn1cblxuLndwLWJsb2NrLWVtYmVkLnR5cGUtdmlkZW8gPiAud3AtYmxvY2stZW1iZWRfX3dyYXBwZXIgPiBpZnJhbWUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLndwLWJsb2NrLXF1b3RlLmlzLWxhcmdlIHtcbiAgbWFyZ2luOiAwIGF1dG8gMTZweDtcbn1cblxuLndwLWJsb2NrLXB1bGxxdW90ZSA+IHA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4ud3AtYmxvY2stc2VwYXJhdG9yIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAzZW0gYXV0bztcbn1cblxuLm1vcmUtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ud3AtYmxvY2stZ3JvdXAgPiAqIHtcbiAgbWF4LXdpZHRoOiA2MTBweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLndwLWJsb2NrLWdyb3VwID4gLmFsaWdud2lkZSB7XG4gIG1heC13aWR0aDogMTEwMHB4O1xufVxuXG4ud3AtYmxvY2stZ3JvdXAgPiAuYWxpZ25mdWxsIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ud3AtYmxvY2stZ3JvdXAuaGFzLWJhY2tncm91bmQgPiAuYWxpZ25mdWxsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtMzBweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDYwcHgpO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSArIDYwcHgpO1xufVxuXG4uZW50cnktY29udGVudCAud3AtYmxvY2stZmlsZSBhLndwLWJsb2NrLWZpbGVfX2J1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IGRvdHRlZCB0aGluIGluaXRpYWw7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMXB4O1xufVxuXG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAqICMjIFBhZ2luYXRpb25cbiAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLm5hdi1saW5rcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAubmF2LWxpbmtzIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbn1cblxuLnBhZ2UtbnVtYmVycyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wYWdlLW51bWJlcnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDIuNXJlbTtcbiAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlYWVhZWE7XG4gICAgbWFyZ2luOiAwLjVyZW07XG4gICAgYmFja2dyb3VuZDogI2VhZWFlYTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyIDAuM3M7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi5wYWdlLW51bWJlcnMuY3VycmVudCB7XG4gIGJvcmRlci1jb2xvcjogI2VhZWFlYTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi5wYWdlLW51bWJlcnMuY3VycmVudCAuc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBjbGlwOiBhdXRvO1xuICAtd2Via2l0LWNsaXAtcGF0aDogaW5pdGlhbDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBhZ2UtbnVtYmVycy5jdXJyZW50IC5zY3JlZW4tcmVhZGVyLXRleHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIH1cbn1cblxuLnBhZ2UtbnVtYmVycy5jdXJyZW50LCAucGFnZS1udW1iZXJzLnByZXYsIC5wYWdlLW51bWJlcnMubmV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBhZ2UtbnVtYmVycy5jdXJyZW50LCAucGFnZS1udW1iZXJzLnByZXYsIC5wYWdlLW51bWJlcnMubmV4dCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG4ucGFnZS1udW1iZXJzLnByZXYsIC5wYWdlLW51bWJlcnMubmV4dCB7XG4gIHBhZGRpbmc6IDAgMC41cmVtO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMCAxcmVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucGFnZS1udW1iZXJzLnByZXYsIC5wYWdlLW51bWJlcnMubmV4dCB7XG4gICAgbWFyZ2luOiAwLjVyZW07XG4gIH1cbiAgLnBhZ2UtbnVtYmVycy5wcmV2OmhvdmVyLCAucGFnZS1udW1iZXJzLm5leHQ6aG92ZXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNhOGE4YTg7XG4gIH1cbn1cblxuLnBhZ2UtbnVtYmVyczpob3Zlcjpub3QoLmN1cnJlbnQpIHtcbiAgYm9yZGVyLWNvbG9yOiAjYThhOGE4O1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAqICMjIE5leHQgUHJldiBMaW5rc1xuICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBhdC1ydWxlLWVtcHR5LWxpbmUtYmVmb3JlICovXG4ucG9zdC1uYXZpZ2F0aW9uIC5tZXRhLW5hdiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuODg4ODg4ODg4OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnBvc3QtbmF2aWdhdGlvbiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC8qIEZpeGVzIGJyb2tlbiBvdXRsaW5lIGluIEZpcmVmb3ggKi9cbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucG9zdC1uYXZpZ2F0aW9uIGE6aG92ZXIgLnBvc3QtdGl0bGUsIC5wb3N0LW5hdmlnYXRpb24gYTpmb2N1cyAucG9zdC10aXRsZSB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjNjAyN2NlO1xufVxuXG4ucG9zdC1uYXZpZ2F0aW9uIC5uYXYtbGlua3Mge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAycmVtIDA7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wb3N0LW5hdmlnYXRpb24gLm5hdi1saW5rcyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLnBvc3QtbmF2aWdhdGlvbiAubmF2LXByZXZpb3VzLFxuLnBvc3QtbmF2aWdhdGlvbiAubmF2LW5leHQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wb3N0LW5hdmlnYXRpb24gLm5hdi1wcmV2aW91cyxcbiAgLnBvc3QtbmF2aWdhdGlvbiAubmF2LW5leHQge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBvc3QtbmF2aWdhdGlvbiAubmF2LXByZXZpb3VzIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucG9zdC1uYXZpZ2F0aW9uIC5uYXYtbmV4dCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICogIyMgQ29tbWVudHNcbiAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4LCBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5LCBhdC1ydWxlLWVtcHR5LWxpbmUtYmVmb3JlLCBtYXgtbGluZS1sZW5ndGggICovXG4uY29tbWVudC1jb250ZW50IGEge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbi5jb21tZW50LWNvbnRlbnQgcCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5jb21tZW50LWNvbnRlbnQgYmxvY2txdW90ZSA+ICoge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYnlwb3N0YXV0aG9yIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jb21tZW50cy10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuXG4uY29tbWVudC1saXN0LFxuLmNvbW1lbnQtbGlzdCAuY2hpbGRyZW4ge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5jb21tZW50LWxpc3QgLmNoaWxkcmVuIHtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG5cbi5jb21tZW50LWxpc3QgbGk6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb21tZW50LWF1dGhvciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgbWFyZ2luLWJvdHRvbTogMC40cmVtO1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5jb21tZW50LWF1dGhvciAuYXZhdGFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtNjVweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4uY29tbWVudC1hdXRob3IgLnNheXMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY29tbWVudC1tZXRhIHtcbiAgcGFkZGluZy1sZWZ0OiA0cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi5jb21tZW50LW1ldGFkYXRhIHtcbiAgY29sb3I6ICM3Njc2NzY7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZm9udC1zaXplOiAwLjYyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTgxOHJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmNvbW1lbnQtbWV0YWRhdGEgYSB7XG4gIGJvcmRlci1jb2xvcjogIzYwMjdjZTtcbiAgY29sb3I6ICM0MjQ4NTE7XG59XG5cbi5jb21tZW50LW1ldGFkYXRhIGE6aG92ZXIsIC5jb21tZW50LW1ldGFkYXRhIGE6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNmYmM5Njc7XG4gIGNvbG9yOiAjNDI0ODUxO1xufVxuXG4uY29tbWVudC1tZXRhZGF0YSAuY29tbWVudC1lZGl0LWxpbmsge1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgY29sb3I6ICM0MjQ4NTE7XG59XG5cbi5jb21tZW50LmRlcHRoLTEge1xuICBib3JkZXItYm90dG9tOiAxcHggZGFzaGVkICNmNGY0ZjQ7XG59XG5cbi5jb21tZW50LWJvZHkge1xuICBwYWRkaW5nOiAxLjVyZW0gMDtcbiAgY29sb3I6ICM0YTRhNGE7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi5jaGlsZHJlbiAuY29tbWVudC1ib2R5IHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmNvbW1lbnQtcmVwbHktbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbn1cblxuLmNvbW1lbnQtcmVwbHktbGluayAuaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAtMnJlbTtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgY29sb3I6ICMyMjI7XG59XG5cbi5jaGlsZHJlbiAuY29tbWVudC1hdXRob3IgLmF2YXRhciB7XG4gIGxlZnQ6IC00NXB4O1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xufVxuXG4ubm8tY29tbWVudHMsXG4uY29tbWVudC1hd2FpdGluZy1tb2RlcmF0aW9uIHtcbiAgY29sb3I6ICM3Njc2NzY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4uY29tbWVudC1yZXNwb25kIHAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uY29tbWVudC1yZXNwb25kIGxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jb21tZW50LXJlc3BvbmQgdGV4dGFyZWEge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Y0ZjRmNDtcbn1cblxuLmNvbW1lbnQtcmVzcG9uZCB0ZXh0YXJlYTpmb2N1cyxcbi5jb21tZW50LXJlc3BvbmQgaW5wdXQ6Zm9jdXMge1xuICBvdXRsaW5lOiBkb3R0ZWQgdGhpbiBpbml0aWFsO1xuICBvdXRsaW5lLW9mZnNldDogLTFweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Y0ZjRmNDtcbn1cblxuLmNvbW1lbnQtZm9ybS1jb29raWVzLWNvbnNlbnQgaW5wdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLmNvbW1lbnQtZm9ybS1jb29raWVzLWNvbnNlbnQgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi5jb21tZW50LW5hdmlnYXRpb24gLm5hdi1saW5rcyB7XG4gIG1hcmdpbjogMnJlbSAwIDRyZW07XG59XG5cbi5jb21tZW50LW5hdmlnYXRpb24gLm5hdi1wcmV2aW91cyxcbi5jb21tZW50LW5hdmlnYXRpb24gLm5hdi1uZXh0IHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmbGV4LWJhc2lzOiAwO1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi5jb21tZW50LW5hdmlnYXRpb24gLm5hdi1uZXh0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jb21tZW50cy1wYWdpbmF0aW9uIHtcbiAgbWFyZ2luOiAycmVtIDAgM3JlbTtcbn1cblxuLmZvcm0tc3VibWl0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5mb3JtLXN1Ym1pdCBpbnB1dCB7XG4gIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzYwMjdjZTtcbiAgYmFja2dyb3VuZDogIzYwMjdjZTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5mb3JtLXN1Ym1pdCBpbnB1dDpmb2N1cyB7XG4gIG91dGxpbmU6IGRvdHRlZCB0aGluIGluaXRpYWw7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMXB4O1xuICBvdXRsaW5lLW9mZnNldDogLTNweDtcbn1cblxuLmZvcm0tc3VibWl0IGlucHV0OmhvdmVyLCAuZm9ybS1zdWJtaXQgaW5wdXQ6Zm9jdXMge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDAuOTtcbn1cblxuLmNvbW1lbnQtZm9ybSBpbnB1dFt0eXBlPSd0ZXh0J10sXG4uY29tbWVudC1mb3JtIGlucHV0W3R5cGU9J2VtYWlsJ10sXG4uY29tbWVudC1mb3JtIGlucHV0W3R5cGU9J3VybCddIHtcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgd2lkdGg6IDUwJTtcbiAgaGVpZ2h0OiA0NHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmNWY2O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI0LCAyMSwgMjYsIDAuMSk7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cblxuLmNvbW1lbnQtZm9ybSB0ZXh0YXJlYSB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIwMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmNWY2O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI0LCAyMSwgMjYsIDAuMSk7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cblxuLmNvbW1lbnQtZm9ybS1jb29raWVzLWNvbnNlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uY29tbWVudC1mb3JtIC5mb3JtLXN1Ym1pdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICogIyMgRm9ybXNcbiAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4LCBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5LCBhdC1ydWxlLWVtcHR5LWxpbmUtYmVmb3JlLCBtYXgtbGluZS1sZW5ndGggICovXG4uc2VhcmNoLWZvcm0ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNlYXJjaC1mb3JtIGxhYmVsLFxuLnNlYXJjaC1mb3JtIC5zZWFyY2gtZmllbGQsXG4uc2VhcmNoLWZvcm0gLnNlYXJjaC1zdWJtaXQge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNlYXJjaC1mb3JtIC5zZWFyY2gtZmllbGQge1xuICBoZWlnaHQ6IDQwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5zZWFyY2gtZm9ybSAuc2VhcmNoLXN1Ym1pdCB7XG4gIGhlaWdodDogNDdweDtcbn1cblxuLnBvc3QtcGFzc3dvcmQtZm9ybSBpbnB1dFt0eXBlPSdwYXNzd29yZCddLFxuLnNlYXJjaC1maWVsZCxcbi5zZWFyY2gtc3VibWl0IHtcbiAgcGFkZGluZzogMC4zNXJlbTtcbn1cblxuLnBvc3QtcGFzc3dvcmQtZm9ybSBpbnB1dFt0eXBlPSdwYXNzd29yZCddOmZvY3VzLFxuLnNlYXJjaC1maWVsZDpmb2N1cyxcbi5zZWFyY2gtc3VibWl0OmZvY3VzIHtcbiAgb3V0bGluZTogZG90dGVkIHRoaW4gaW5pdGlhbDtcbiAgb3V0bGluZS1vZmZzZXQ6IC0xcHg7XG59XG5cbi5zZWFyY2gtZmllbGQsXG4ucG9zdC1wYXNzd29yZC1mb3JtIGlucHV0W3R5cGU9J3Bhc3N3b3JkJ10ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjRmNGY0O1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4uc2VhcmNoLWZpZWxkOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLnBvc3QtcGFzc3dvcmQtZm9ybSBpbnB1dFt0eXBlPSdwYXNzd29yZCddIHtcbiAgcGFkZGluZzogN3B4IDVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Y0ZjRmNDtcbn1cblxuLnBvc3QtcGFzc3dvcmQtZm9ybSBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLnBvc3QtcGFzc3dvcmQtZm9ybSBpbnB1dFt0eXBlPSdzdWJtaXQnXSxcbi5zZWFyY2gtc3VibWl0IHtcbiAgcGFkZGluZzogMC4zNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzYwMjdjZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjAyN2NlO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnBvc3QtcGFzc3dvcmQtZm9ybSBpbnB1dFt0eXBlPSdzdWJtaXQnXTpob3ZlciwgLnBvc3QtcGFzc3dvcmQtZm9ybSBpbnB1dFt0eXBlPSdzdWJtaXQnXTpmb2N1cyxcbi5zZWFyY2gtc3VibWl0OmhvdmVyLFxuLnNlYXJjaC1zdWJtaXQ6Zm9jdXMge1xuICBvcGFjaXR5OiAwLjk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnBvc3QtcGFzc3dvcmQtZm9ybSBpbnB1dFt0eXBlPSdzdWJtaXQnXSB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNmYmM5Njc7XG59XG5cbi5wb3N0LXBhc3N3b3JkLWZvcm0gaW5wdXRbdHlwZT0nc3VibWl0J106aG92ZXIge1xuICBib3JkZXItY29sb3I6ICNmYWMwNGU7XG59XG5cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbi5wcmltYXJ5LXNlYXJjaCB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnByaW1hcnktc2VhcmNoIHtcbiAgICBtYXJnaW4tdG9wOiA3cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDhyZW07XG4gIH1cbn1cblxuLnByaW1hcnktc2VhcmNoIC5pY29uLXNlYXJjaC1pY29uIHtcbiAgd2lkdGg6IDI1cHg7XG4gIGhlaWdodDogMjVweDtcbn1cblxuLnByaW1hcnktc2VhcmNoIC5pY29uLXNlYXJjaC1pY29uID4gKiB7XG4gIHN0cm9rZTogd2hpdGU7XG59XG5cbi5wcmltYXJ5LXNlYXJjaC10aXRsZSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDMwcHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wcmltYXJ5LXNlYXJjaC10aXRsZSB7XG4gICAgZm9udC1zaXplOiA0NXB4O1xuICB9XG59XG5cbi5wcmltYXJ5LXNlYXJjaC1mb3JtIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNjUwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG4gIGhlaWdodDogNTVweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4ucHJpbWFyeS1zZWFyY2gtbGFiZWwge1xuICBmbGV4LWJhc2lzOiAxNTBweDtcbiAgZmxleC1ncm93OiAxO1xufVxuXG4ucHJpbWFyeS1zZWFyY2gtZmllbGQge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1zaXplOiAwLjk0cmVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucHJpbWFyeS1zZWFyY2gtZmllbGQge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuXG4ucHJpbWFyeS1zZWFyY2gtZmllbGQ6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ucHJpbWFyeS1zZWFyY2gtZmllbGQ6Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24sXG4ucHJpbWFyeS1zZWFyY2gtZmllbGQ6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4ucHJpbWFyeS1zZWFyY2gtZmllbGQ6Oi13ZWJraXQtc2VhcmNoLXJlc3VsdHMtYnV0dG9uLFxuLnByaW1hcnktc2VhcmNoLWZpZWxkOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi5wcmltYXJ5LXNlYXJjaC1zdWJtaXQge1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnByaW1hcnktc2VhcmNoLXN1Ym1pdDpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuXG4uc2Vjb25kYXJ5LXNlYXJjaCB7XG4gIHBhZGRpbmc6IDE1cHggMDtcbn1cblxuLnNlY29uZGFyeS1zZWFyY2ggLmljb24tc2VhcmNoLWljb24ge1xuICB3aWR0aDogMjVweDtcbiAgaGVpZ2h0OiAyNXB4O1xufVxuXG4uc2Vjb25kYXJ5LXNlYXJjaCAuaWNvbi1zZWFyY2gtaWNvbiA+ICoge1xuICBzdHJva2U6ICM2OTY5Njk7XG59XG5cbi5zZWNvbmRhcnktc2VhcmNoLWlubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLnNlY29uZGFyeS1zZWFyY2gtZm9ybSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYWVhZWE7XG4gIGhlaWdodDogNDBweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zZWNvbmRhcnktc2VhcmNoLWZvcm0ge1xuICAgIG1heC13aWR0aDogMzIwcHg7XG4gIH1cbn1cblxuLnNlY29uZGFyeS1zZWFyY2gtbGFiZWwge1xuICBmbGV4LWJhc2lzOiAxNTBweDtcbiAgZmxleC1ncm93OiAxO1xufVxuXG4uc2Vjb25kYXJ5LXNlYXJjaC1maWVsZCB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6ICM2OTY5Njk7XG4gIGZvbnQtc2l6ZTogMC45NHJlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlY29uZGFyeS1zZWFyY2gtZmllbGQge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuXG4uc2Vjb25kYXJ5LXNlYXJjaC1maWVsZDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzY5Njk2OTtcbn1cblxuLnNlY29uZGFyeS1zZWFyY2gtZmllbGQ6Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24sXG4uc2Vjb25kYXJ5LXNlYXJjaC1maWVsZDo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbi5zZWNvbmRhcnktc2VhcmNoLWZpZWxkOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWJ1dHRvbixcbi5zZWNvbmRhcnktc2VhcmNoLWZpZWxkOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi5zZWNvbmRhcnktc2VhcmNoLXN1Ym1pdCB7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLnNlY29uZGFyeS1zZWFyY2gtc3VibWl0OmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG5cbi5ib3R0b20tYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjVmNjtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgKiAjIyBXaWRnZXRzICYgU2lkZWJhclxuICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5LCBzZWxlY3Rvci1tYXgtY29tcG91bmQtc2VsZWN0b3JzLCBtYXgtbGluZS1sZW5ndGggKi9cbi53aWRnZXQtYXJlYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLndpZGdldC1hcmVhIHtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICB9XG59XG5cbi53aWRnZXQge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi53aWRnZXQgYSB7XG4gIGJvcmRlci1jb2xvcjogIzYwMjdjZTtcbn1cblxuLndpZGdldCA+IHVsIHtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICBtYXJnaW46IDA7XG59XG5cbi53aWRnZXQgc2VsZWN0IHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ud2lkZ2V0LXRpdGxlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC44NXJlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLndpZGdldC10aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogMS4ycmVtO1xuICB9XG59XG5cbi53aWRnZXRfdGV4dCB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cblxuLndpZGdldF90ZXh0IHVsLFxuLndpZGdldF90ZXh0IG9sIHtcbiAgcGFkZGluZzogMCAxLjVyZW07XG4gIG1hcmdpbjogMDtcbn1cblxuLndpZGdldF90ZXh0IHVsIHtcbiAgbGlzdC1zdHlsZTogZGlzYztcbn1cblxuLndpZGdldF90ZXh0IG9sIHtcbiAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbn1cblxuLndpZGdldF90ZXh0IHVsIGxpLFxuLndpZGdldF90ZXh0IG9sIGxpIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4ud2lkZ2V0X3RleHQgdWwgbGk6bGFzdC1jaGlsZCxcbi53aWRnZXRfdGV4dCBvbCBsaTpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi53aWRnZXRfdGV4dCB1bCBsaSB1bCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLndpZGdldF90ZXh0IHVsIGxpIGxpIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4ud2lkZ2V0X3RleHQgb2wgbGkge1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG59XG5cbi53aWRnZXRfdGV4dCBvbCBsaSArIGxpIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbn1cblxuLyogQ2FsZW5kYXIgd2lkZ2V0ICovXG4uY2FsZW5kYXJfd3JhcCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmNhbGVuZGFyX3dyYXAgYSB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjNjAyN2NlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjNjAyN2NlO1xufVxuXG4uY2FsZW5kYXJfd3JhcCB0YWJsZSBjYXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLmNhbGVuZGFyX3dyYXAgdGhlYWQsXG4uY2FsZW5kYXJfd3JhcCB0aCxcbi5jYWxlbmRhcl93cmFwIHRyLFxuLmNhbGVuZGFyX3dyYXAgdGQsXG4uY2FsZW5kYXJfd3JhcCB0Zm9vdCxcbi5jYWxlbmRhcl93cmFwIHRmb290IHRyIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4ud2lkZ2V0X2NhbGVuZGFyIHRoLFxuLndpZGdldF9jYWxlbmRhciB0ZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLndpZGdldF9jYWxlbmRhciB0Zm9vdCB0ZCB7XG4gIGJvcmRlcjogMDtcbn1cblxuLyogRm9vdGVyIHdpZGdldHMgKi9cbi5mb290ZXItd2lkZ2V0cyB7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4O1xufVxuXG4ud2lkZ2V0LWFyZWEtZm9vdGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLndpZGdldC1hcmVhLWZvb3RlciB7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICB9XG59XG5cbi53aWRnZXQtYXJlYS1mb290ZXIgYSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ud2lkZ2V0LWFyZWEtZm9vdGVyIGE6aG92ZXIsIC53aWRnZXQtYXJlYS1mb290ZXIgYTpmb2N1cyB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLndpZGdldC1hcmVhLWZvb3RlciAud2lkZ2V0LXRpdGxlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG4ud2lkZ2V0LWFyZWEtZm9vdGVyIC53aWRnZXRfY2F0ZWdvcmllcyBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ubWVqcy1ob3Jpem9udGFsLXZvbHVtZS1zbGlkZXIsXG4ud2lkZ2V0X21ldGEgYSxcbi53aWRnZXRfcGFnZXMgYSxcbi53aWRnZXRfdGFnX2Nsb3VkIGEsXG4ud2lkZ2V0X3JlY2VudF9lbnRyaWVzIGEsXG4ud2lkZ2V0X2FyY2hpdmUgYSxcbi53aWRnZXRfbmF2X21lbnUgYSxcbi53aWRnZXRfY2F0ZWdvcmllcyBhLFxuLndpZGdldF9yZWNlbnRfY29tbWVudHMgYSB7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtc2xpZGVyOmhvdmVyLCAubWVqcy1ob3Jpem9udGFsLXZvbHVtZS1zbGlkZXI6Zm9jdXMsXG4ud2lkZ2V0X21ldGEgYTpob3Zlcixcbi53aWRnZXRfbWV0YSBhOmZvY3VzLFxuLndpZGdldF9wYWdlcyBhOmhvdmVyLFxuLndpZGdldF9wYWdlcyBhOmZvY3VzLFxuLndpZGdldF90YWdfY2xvdWQgYTpob3Zlcixcbi53aWRnZXRfdGFnX2Nsb3VkIGE6Zm9jdXMsXG4ud2lkZ2V0X3JlY2VudF9lbnRyaWVzIGE6aG92ZXIsXG4ud2lkZ2V0X3JlY2VudF9lbnRyaWVzIGE6Zm9jdXMsXG4ud2lkZ2V0X2FyY2hpdmUgYTpob3Zlcixcbi53aWRnZXRfYXJjaGl2ZSBhOmZvY3VzLFxuLndpZGdldF9uYXZfbWVudSBhOmhvdmVyLFxuLndpZGdldF9uYXZfbWVudSBhOmZvY3VzLFxuLndpZGdldF9jYXRlZ29yaWVzIGE6aG92ZXIsXG4ud2lkZ2V0X2NhdGVnb3JpZXMgYTpmb2N1cyxcbi53aWRnZXRfcmVjZW50X2NvbW1lbnRzIGE6aG92ZXIsXG4ud2lkZ2V0X3JlY2VudF9jb21tZW50cyBhOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi53aWRnZXQtYXJlYS1mb290ZXIgLm1lanMtaG9yaXpvbnRhbC12b2x1bWUtc2xpZGVyLFxuLndpZGdldC1hcmVhLWZvb3RlciAud2lkZ2V0X21ldGEgYSxcbi53aWRnZXQtYXJlYS1mb290ZXIgLndpZGdldF9wYWdlcyBhLFxuLndpZGdldC1hcmVhLWZvb3RlciAud2lkZ2V0X3RhZ19jbG91ZCBhLFxuLndpZGdldC1hcmVhLWZvb3RlciAud2lkZ2V0X3JlY2VudF9lbnRyaWVzIGEsXG4ud2lkZ2V0LWFyZWEtZm9vdGVyIC53aWRnZXRfYXJjaGl2ZSBhLFxuLndpZGdldC1hcmVhLWZvb3RlciAud2lkZ2V0X25hdl9tZW51IGEsXG4ud2lkZ2V0LWFyZWEtZm9vdGVyIC53aWRnZXRfY2F0ZWdvcmllcyBhLFxuLndpZGdldC1hcmVhLWZvb3RlciAud2lkZ2V0X3JlY2VudF9jb21tZW50cyBhIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ud2lkZ2V0LWFyZWEtZm9vdGVyIC5tZWpzLWhvcml6b250YWwtdm9sdW1lLXNsaWRlcjpob3ZlciwgLndpZGdldC1hcmVhLWZvb3RlciAubWVqcy1ob3Jpem9udGFsLXZvbHVtZS1zbGlkZXI6Zm9jdXMsXG4ud2lkZ2V0LWFyZWEtZm9vdGVyIC53aWRnZXRfbWV0YSBhOmhvdmVyLFxuLndpZGdldC1hcmVhLWZvb3RlciAud2lkZ2V0X21ldGEgYTpmb2N1cyxcbi53aWRnZXQtYXJlYS1mb290ZXIgLndpZGdldF9wYWdlcyBhOmhvdmVyLFxuLndpZGdldC1hcmVhLWZvb3RlciAud2lkZ2V0X3BhZ2VzIGE6Zm9jdXMsXG4ud2lkZ2V0LWFyZWEtZm9vdGVyIC53aWRnZXRfdGFnX2Nsb3VkIGE6aG92ZXIsXG4ud2lkZ2V0LWFyZWEtZm9vdGVyIC53aWRnZXRfdGFnX2Nsb3VkIGE6Zm9jdXMsXG4ud2lkZ2V0LWFyZWEtZm9vdGVyIC53aWRnZXRfcmVjZW50X2VudHJpZXMgYTpob3Zlcixcbi53aWRnZXQtYXJlYS1mb290ZXIgLndpZGdldF9yZWNlbnRfZW50cmllcyBhOmZvY3VzLFxuLndpZGdldC1hcmVhLWZvb3RlciAud2lkZ2V0X2FyY2hpdmUgYTpob3Zlcixcbi53aWRnZXQtYXJlYS1mb290ZXIgLndpZGdldF9hcmNoaXZlIGE6Zm9jdXMsXG4ud2lkZ2V0LWFyZWEtZm9vdGVyIC53aWRnZXRfbmF2X21lbnUgYTpob3Zlcixcbi53aWRnZXQtYXJlYS1mb290ZXIgLndpZGdldF9uYXZfbWVudSBhOmZvY3VzLFxuLndpZGdldC1hcmVhLWZvb3RlciAud2lkZ2V0X2NhdGVnb3JpZXMgYTpob3Zlcixcbi53aWRnZXQtYXJlYS1mb290ZXIgLndpZGdldF9jYXRlZ29yaWVzIGE6Zm9jdXMsXG4ud2lkZ2V0LWFyZWEtZm9vdGVyIC53aWRnZXRfcmVjZW50X2NvbW1lbnRzIGE6aG92ZXIsXG4ud2lkZ2V0LWFyZWEtZm9vdGVyIC53aWRnZXRfcmVjZW50X2NvbW1lbnRzIGE6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBjdXJyZW50Q29sb3I7XG59XG5cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbi5zaWRlYmFyLWxheW91dC1kZWZhdWx0IC5ibG9nLXNpZGViYXIgLndpZGdldCB7XG4gIHBhZGRpbmc6IDJyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2Y1ZjY7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbn1cblxuLnNpZGViYXItbGF5b3V0LWRlZmF1bHQgLmJsb2ctc2lkZWJhciAud2lkZ2V0IHVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5zaWRlYmFyLWxheW91dC1kZWZhdWx0IC5ibG9nLXNpZGViYXIgLndpZGdldCB1bCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5zaWRlYmFyLWxheW91dC1kZWZhdWx0IC5ibG9nLXNpZGViYXIgLndpZGdldCB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnNpZGViYXItbGF5b3V0LWRlZmF1bHQgLmJsb2ctc2lkZWJhciAud2lkZ2V0IHVsIGxpIGEge1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5zaWRlYmFyLWxheW91dC1kZWZhdWx0IC5ibG9nLXNpZGViYXIgLndpZGdldCB1bCBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICM2MDI3Y2U7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnNpZGViYXItbGF5b3V0LWRlZmF1bHQgLmJsb2ctc2lkZWJhciAud2lkZ2V0IHVsIGxpIGE6Zm9jdXMge1xuICBjb2xvcjogIzYwMjdjZTtcbn1cblxuLnNpZGViYXItbGF5b3V0LWRlZmF1bHQgLmJsb2ctc2lkZWJhciAud2lkZ2V0IHVsIGxpLmN1cnJlbnQtY2F0IGEge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnNpZGViYXItbGF5b3V0LWRlZmF1bHQgLmJsb2ctc2lkZWJhciAud2lkZ2V0LXRpdGxlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgZm9udC1zaXplOiAyMHB4O1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogIyBMYXlvdXRcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEyLCAxZnIpO1xufVxuXG4uY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLmNvbnRhaW5lciAuY29udGFpbmVyIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4uY2VsbCB7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDEyL3NwYW4gMTI7XG59XG5cbi5jZWxsLS0xIHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMSAvIHNwYW4gMTtcbn1cblxuLmNlbGwtLTIge1xuICBncmlkLWNvbHVtbjogc3BhbiAyIC8gc3BhbiAyO1xufVxuXG4uY2VsbC0tMyB7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDMgLyBzcGFuIDM7XG59XG5cbi5jZWxsLS00IHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gNCAvIHNwYW4gNDtcbn1cblxuLmNlbGwtLTUge1xuICBncmlkLWNvbHVtbjogc3BhbiA1IC8gc3BhbiA1O1xufVxuXG4uY2VsbC0tNiB7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDYgLyBzcGFuIDY7XG59XG5cbi5jZWxsLS03IHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gNyAvIHNwYW4gNztcbn1cblxuLmNlbGwtLTgge1xuICBncmlkLWNvbHVtbjogc3BhbiA4IC8gc3BhbiA4O1xufVxuXG4uY2VsbC0tOSB7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDkgLyBzcGFuIDk7XG59XG5cbi5jZWxsLS0xMCB7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDEwIC8gc3BhbiAxMDtcbn1cblxuLmNlbGwtLTExIHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMTEgLyBzcGFuIDExO1xufVxuXG4uY2VsbC0tMTIge1xuICBncmlkLWNvbHVtbjogc3BhbiAxMiAvIHNwYW4gMTI7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jZWxsLS0xXFxAbWVkaXVtIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxIC8gc3BhbiAxO1xuICB9XG4gIC5jZWxsLS0yXFxAbWVkaXVtIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAyIC8gc3BhbiAyO1xuICB9XG4gIC5jZWxsLS0zXFxAbWVkaXVtIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAzIC8gc3BhbiAzO1xuICB9XG4gIC5jZWxsLS00XFxAbWVkaXVtIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA0IC8gc3BhbiA0O1xuICB9XG4gIC5jZWxsLS01XFxAbWVkaXVtIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA1IC8gc3BhbiA1O1xuICB9XG4gIC5jZWxsLS02XFxAbWVkaXVtIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA2IC8gc3BhbiA2O1xuICB9XG4gIC5jZWxsLS03XFxAbWVkaXVtIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA3IC8gc3BhbiA3O1xuICB9XG4gIC5jZWxsLS04XFxAbWVkaXVtIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA4IC8gc3BhbiA4O1xuICB9XG4gIC5jZWxsLS05XFxAbWVkaXVtIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA5IC8gc3BhbiA5O1xuICB9XG4gIC5jZWxsLS0xMFxcQG1lZGl1bSB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTAgLyBzcGFuIDEwO1xuICB9XG4gIC5jZWxsLS0xMVxcQG1lZGl1bSB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTEgLyBzcGFuIDExO1xuICB9XG4gIC5jZWxsLS0xMlxcQG1lZGl1bSB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTIgLyBzcGFuIDEyO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MGVtKSB7XG4gIC5jZWxsLS0xXFxAbGFyZ2Uge1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDEgLyBzcGFuIDE7XG4gIH1cbiAgLmNlbGwtLTJcXEBsYXJnZSB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMiAvIHNwYW4gMjtcbiAgfVxuICAuY2VsbC0tM1xcQGxhcmdlIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAzIC8gc3BhbiAzO1xuICB9XG4gIC5jZWxsLS00XFxAbGFyZ2Uge1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDQgLyBzcGFuIDQ7XG4gIH1cbiAgLmNlbGwtLTVcXEBsYXJnZSB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNSAvIHNwYW4gNTtcbiAgfVxuICAuY2VsbC0tNlxcQGxhcmdlIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA2IC8gc3BhbiA2O1xuICB9XG4gIC5jZWxsLS03XFxAbGFyZ2Uge1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDcgLyBzcGFuIDc7XG4gIH1cbiAgLmNlbGwtLThcXEBsYXJnZSB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gOCAvIHNwYW4gODtcbiAgfVxuICAuY2VsbC0tOVxcQGxhcmdlIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA5IC8gc3BhbiA5O1xuICB9XG4gIC5jZWxsLS0xMFxcQGxhcmdlIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMCAvIHNwYW4gMTA7XG4gIH1cbiAgLmNlbGwtLTExXFxAbGFyZ2Uge1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDExIC8gc3BhbiAxMTtcbiAgfVxuICAuY2VsbC0tMTJcXEBsYXJnZSB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTIgLyBzcGFuIDEyO1xuICB9XG59XG5cbi5ncmlkLS1hdXRvLWZpdCB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMCwgMWZyKSk7XG59XG5cbi5ncmlkLS1hdXRvLWZpdC14cyB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMTAwJSwgMWZyKSk7XG59XG5cbi5ncmlkLS1hdXRvLWZpdC1zIHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCg1MCUsIDFmcikpO1xufVxuXG4uZ3JpZC0tYXV0by1maXQtbSB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMzMuMzMzMyUsIDFmcikpO1xufVxuXG4uZ3JpZC0tYXV0by1maXQtbCB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjUlLCAxZnIpKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmdyaWQtLWF1dG8tZml0LXhzXFxAbWVkaXVtIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDEwMCUsIDFmcikpO1xuICB9XG4gIC5ncmlkLS1hdXRvLWZpdC1zXFxAbWVkaXVtIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDUwJSwgMWZyKSk7XG4gIH1cbiAgLmdyaWQtLWF1dG8tZml0LW1cXEBtZWRpdW0ge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMzMuMzMzMyUsIDFmcikpO1xuICB9XG4gIC5ncmlkLS1hdXRvLWZpdC1sXFxAbWVkaXVtIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDI1JSwgMWZyKSk7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwZW0pIHtcbiAgLmdyaWQtLWF1dG8tZml0LXhzXFxAbGFyZ2Uge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMTAwJSwgMWZyKSk7XG4gIH1cbiAgLmdyaWQtLWF1dG8tZml0LXNcXEBsYXJnZSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCg1MCUsIDFmcikpO1xuICB9XG4gIC5ncmlkLS1hdXRvLWZpdC1tXFxAbGFyZ2Uge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMzMuMzMzMyUsIDFmcikpO1xuICB9XG4gIC5ncmlkLS1hdXRvLWZpdC1sXFxAbGFyZ2Uge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjUlLCAxZnIpKTtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogIyBMYXlvdXRcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAqICMjIEhlYWRlclxuICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2l0ZS1icmFuZGluZyB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5zaXRlLWhlYWRlciB7XG4gIGJhY2tncm91bmQ6ICM2YTMwOTM7XG4gIC8qIGZhbGxiYWNrIGZvciBvbGQgYnJvd3NlcnMgKi9cbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICM2MDI3Y2UsICM1ODNhYmMpO1xuICAvKiBDaHJvbWUgMTAtMjUsIFNhZmFyaSA1LjEtNiAqL1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICM2MDI3Y2UsICM1ODNhYmMpO1xuICAvKiBXM0MsIElFIDEwKy8gRWRnZSwgRmlyZWZveCAxNissIENocm9tZSAyNissIE9wZXJhIDEyKywgU2FmYXJpIDcrICovXG59XG5cbi5zaXRlLXRpdGxlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnNpdGUtdGl0bGUgYSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uc2l0ZS1kZXNjcmlwdGlvbiB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgKiAjIyBGb290ZXJcbiAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNpdGUtZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkMmQyZDtcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiA1MHB4IDAgMDtcbn1cblxuLnNpdGUtZm9vdGVyIGEge1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5mb290ZXItd2lkZ2V0cy0wIC5zaXRlLWZvb3RlciB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5zaXRlLWluZm8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWYxZjFmO1xuICBwYWRkaW5nOiAyMHB4IDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc2l0ZS1pbmZvID4gKiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2l0ZS1pbmZvID4gKiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi5zaXRlLWluZm8gLnBvd2VyZWQtYnkge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLnNpdGUtaW5mbyAuc2VwIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNpdGUtaW5mbyAuc2VwIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLnNpdGUtaW5mbyBhIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnNpdGUtaW5mbyBhOmZvY3VzLFxuLnNpdGUtaW5mbyBhOmhvdmVyIHtcbiAgb3BhY2l0eTogMC44O1xufVxuXG4uY29udGFpbmVyLWRlZmF1bHQtd2lkZ2V0cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmdyaWQtYXV0byB7XG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gIC13ZWJraXQtZmxleC1ncm93OiAxO1xuICAtbXMtZmxleC1wb3NpdGl2ZTogMTtcbiAgZmxleC1ncm93OiAxO1xufVxuXG4uZm9vdGVyLXdpZGdldHMtMSAuZm9vdGVyLXdpZGdldHMgLmdyaWQtYXV0byxcbi5mb290ZXItd2lkZ2V0cy0yIC5mb290ZXItd2lkZ2V0cyAuZ3JpZC1hdXRvLFxuLmZvb3Rlci13aWRnZXRzLTMgLmZvb3Rlci13aWRnZXRzIC5ncmlkLWF1dG8sXG4uZm9vdGVyLXdpZGdldHMtNCAuZm9vdGVyLXdpZGdldHMgLmdyaWQtYXV0byxcbi5ncmlkLWF1dG8ge1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLmZvb3Rlci13aWRnZXRzLTEgLmZvb3Rlci13aWRnZXRzIC5ncmlkLWF1dG8sXG4gIC5mb290ZXItd2lkZ2V0cy0yIC5mb290ZXItd2lkZ2V0cyAuZ3JpZC1hdXRvLFxuICAuZm9vdGVyLXdpZGdldHMtMyAuZm9vdGVyLXdpZGdldHMgLmdyaWQtYXV0byxcbiAgLmZvb3Rlci13aWRnZXRzLTQgLmZvb3Rlci13aWRnZXRzIC5ncmlkLWF1dG8ge1xuICAgIG1pbi13aWR0aDogNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDcwcmVtKSB7XG4gIC5mb290ZXItd2lkZ2V0cy0xIC5mb290ZXItd2lkZ2V0cyAuZ3JpZC1hdXRvIHtcbiAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5mb290ZXItd2lkZ2V0cy0yIC5mb290ZXItd2lkZ2V0cyAuZ3JpZC1hdXRvIHtcbiAgICBtaW4td2lkdGg6IDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICAuZm9vdGVyLXdpZGdldHMtMyAuZm9vdGVyLXdpZGdldHMgLmdyaWQtYXV0byB7XG4gICAgbWluLXdpZHRoOiAzMy4zMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMlO1xuICB9XG4gIC5mb290ZXItd2lkZ2V0cy00IC5mb290ZXItd2lkZ2V0cyAuZ3JpZC1hdXRvIHtcbiAgICBtaW4td2lkdGg6IDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxufVxuXG4ua25vd2xlZGdlYmFzZS1sYXlvdXQtMSAubGVhcm5tb3JlLWNhdGVnb3J5IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmtub3dsZWRnZWJhc2UtbGF5b3V0LTEgLmxlYXJubW9yZS1jYXRlZ29yeSB7XG4gICAgcGFkZGluZzogMCA1MHB4IDAgMDtcbiAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICB9XG59XG5cbi5rbm93bGVkZ2ViYXNlLWxheW91dC0xIC5sZWFybm1vcmUtbWV0YSB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZTFlOWViO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ua25vd2xlZGdlYmFzZS1sYXlvdXQtMSAubGVhcm5tb3JlLWNhdGVnb3J5LXRpdGxlIHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4ua25vd2xlZGdlYmFzZS1sYXlvdXQtMSAubGVhcm5tb3JlLWNhdGVnb3J5IHAge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiAjNjk2OTY5O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4ua25vd2xlZGdlYmFzZS1sYXlvdXQtMSAubGVhcm5tb3JlLWNhdGVnb3J5LWNvdW50IHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBjb2xvcjogIzZiNmI2Yjtcbn1cblxuLmtub3dsZWRnZWJhc2UtbGF5b3V0LTEgLmxlYXJubW9yZS1hcnRpY2xlcy1saXN0IHtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5rbm93bGVkZ2ViYXNlLWxheW91dC0xIC5sZWFybm1vcmUtYXJ0aWNsZXMtaXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbi5rbm93bGVkZ2ViYXNlLWxheW91dC0xIC5sZWFybm1vcmUtYXJ0aWNsZXMtbGluayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICM0MjQ4NTE7XG59XG5cbi5rbm93bGVkZ2ViYXNlLWxheW91dC0xIC5sZWFybm1vcmUtYXJ0aWNsZXMtbGluazpob3ZlciB7XG4gIGNvbG9yOiAjNjAyN2NlO1xufVxuXG4ua25vd2xlZGdlYmFzZS1sYXlvdXQtMSAubGVhcm5tb3JlLWNhdGVnb3J5IC5pY29uLW5ld3Mge1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbn1cblxuLmtub3dsZWRnZWJhc2UtbGF5b3V0LTEgLmxlYXJubW9yZS1jYXRlZ29yeS1saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgY29sb3I6ICM3NDZiN2Y7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqICMgVGVtcGxhdGVzXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqICMjIFNpdGVcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2l0ZS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5zaXRlLWNvbnRlbnQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwdmg7XG59XG5cbi5zaXRlLW1haW4ge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2l0ZS1tYWluIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuICB9XG59XG5cbi5zaXRlLWJyZWFkY3J1bWJzIHtcbiAgcGFkZGluZzogMTVweCAwO1xufVxuXG4uc2l0ZS1icmVhZGNydW1icyBhOmhvdmVyIHtcbiAgY29sb3I6ICM2MDI3Y2U7XG59XG5cbi5hcmNoaXZlLWRlc2NyaXB0aW9uIHAge1xuICBjb2xvcjogIzY5Njk2OTtcbn1cblxuLmFyY2hpdmUgLmhlbnRyeSxcbi5ibG9nIC5oZW50cnksXG4uc2VhcmNoLXJlc3VsdHMgLmhlbnRyeSB7XG4gIG1hcmdpbjogMS41cmVtIDA7XG4gIHBhZGRpbmc6IDAgMCAxLjVyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWZlZmVmO1xufVxuXG4uYXJjaGl2ZSAuZW50cnktdGl0bGUsXG4uYmxvZyAuZW50cnktdGl0bGUsXG4uc2VhcmNoLXJlc3VsdHMgLmVudHJ5LXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5hcmNoaXZlIC5lbnRyeS10aXRsZSBhLFxuLmJsb2cgLmVudHJ5LXRpdGxlIGEsXG4uc2VhcmNoLXJlc3VsdHMgLmVudHJ5LXRpdGxlIGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXNpemU6IDE4cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmFyY2hpdmUgLmVudHJ5LXRpdGxlIC5pY29uLW5ld3MsXG4uYmxvZyAuZW50cnktdGl0bGUgLmljb24tbmV3cyxcbi5zZWFyY2gtcmVzdWx0cyAuZW50cnktdGl0bGUgLmljb24tbmV3cyB7XG4gIHdpZHRoOiAyNXB4O1xuICBoZWlnaHQ6IDI1cHg7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICBjb2xvcjogIzY5Njk2OTtcbn1cblxuLmFyY2hpdmUgLmVudHJ5LW1ldGEsXG4uYmxvZyAuZW50cnktbWV0YSxcbi5zZWFyY2gtcmVzdWx0cyAuZW50cnktbWV0YSB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmFyY2hpdmUgLmVudHJ5LW1ldGEsXG4gIC5ibG9nIC5lbnRyeS1tZXRhLFxuICAuc2VhcmNoLXJlc3VsdHMgLmVudHJ5LW1ldGEge1xuICAgIG1hcmdpbi1sZWZ0OiAzOHB4O1xuICB9XG59XG5cbi5hcmNoaXZlIC5lbnRyeS10ZXJtcyBhLFxuLmJsb2cgLmVudHJ5LXRlcm1zIGEsXG4uc2VhcmNoLXJlc3VsdHMgLmVudHJ5LXRlcm1zIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjNjk2OTY5O1xufVxuXG4uYXJjaGl2ZSAuZW50cnktdGVybXMgYTpob3ZlciwgLmFyY2hpdmUgLmVudHJ5LXRlcm1zIGE6Zm9jdXMsXG4uYmxvZyAuZW50cnktdGVybXMgYTpob3Zlcixcbi5ibG9nIC5lbnRyeS10ZXJtcyBhOmZvY3VzLFxuLnNlYXJjaC1yZXN1bHRzIC5lbnRyeS10ZXJtcyBhOmhvdmVyLFxuLnNlYXJjaC1yZXN1bHRzIC5lbnRyeS10ZXJtcyBhOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uYXJjaGl2ZSAuZW50cnktdGVybXMgLnNjcmVlbi1yZWFkZXItdGV4dCxcbi5ibG9nIC5lbnRyeS10ZXJtcyAuc2NyZWVuLXJlYWRlci10ZXh0LFxuLnNlYXJjaC1yZXN1bHRzIC5lbnRyeS10ZXJtcyAuc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgY2xpcDogaW5pdGlhbDtcbiAgY2xpcC1wYXRoOiBpbml0aWFsO1xuICBtYXJnaW46IDAgM3B4IDAgMnB4O1xufVxuXG4uYXJjaGl2ZSAucG9zdGVkLW9uLW91dGVyLFxuLmJsb2cgLnBvc3RlZC1vbi1vdXRlcixcbi5zZWFyY2gtcmVzdWx0cyAucG9zdGVkLW9uLW91dGVyIHtcbiAgY29sb3I6ICM2OTY5Njk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5hcmNoaXZlIC5wb3N0ZWQtb24tb3V0ZXIsXG4gIC5ibG9nIC5wb3N0ZWQtb24tb3V0ZXIsXG4gIC5zZWFyY2gtcmVzdWx0cyAucG9zdGVkLW9uLW91dGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgfVxufVxuXG4uYXJjaGl2ZSAucG9zdGVkLW9uLW91dGVyIGEsXG4uYmxvZyAucG9zdGVkLW9uLW91dGVyIGEsXG4uc2VhcmNoLXJlc3VsdHMgLnBvc3RlZC1vbi1vdXRlciBhIHtcbiAgY29sb3I6ICM2OTY5Njk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmFyY2hpdmUgLnBvc3RlZC1vbi1vdXRlciBhOmhvdmVyLCAuYXJjaGl2ZSAucG9zdGVkLW9uLW91dGVyIGE6Zm9jdXMsXG4uYmxvZyAucG9zdGVkLW9uLW91dGVyIGE6aG92ZXIsXG4uYmxvZyAucG9zdGVkLW9uLW91dGVyIGE6Zm9jdXMsXG4uc2VhcmNoLXJlc3VsdHMgLnBvc3RlZC1vbi1vdXRlciBhOmhvdmVyLFxuLnNlYXJjaC1yZXN1bHRzIC5wb3N0ZWQtb24tb3V0ZXIgYTpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uYXJjaGl2ZSAuZW50cnktbWV0YS1vdXRlcixcbi5ibG9nIC5lbnRyeS1tZXRhLW91dGVyLFxuLnNlYXJjaC1yZXN1bHRzIC5lbnRyeS1tZXRhLW91dGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnRhZ3Mtb3V0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRhZ3Mtb3V0ZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAqICMjIFBvc3RzIGFuZCBwYWdlc1xuICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5ICovXG4ucGFnZS1oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICBtYXgtd2lkdGg6IDYwMHB4O1xufVxuXG4uc3RpY2t5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnN0aWNreSAuaWNvbi1waW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICB0b3A6IC0yM3B4O1xuICB3aWR0aDogMjJweDtcbiAgaGVpZ2h0OiAyMnB4O1xufVxuXG4ucG9zdDpub3QoLnN0aWNreSkgLmljb24tcGluIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmhlbnRyeSB7XG4gIG1hcmdpbjogMnJlbSAwO1xufVxuXG4uYmxvZyAuaGVudHJ5IHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4udXBkYXRlZDpub3QoLnB1Ymxpc2hlZCkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGFnZS1jb250ZW50LFxuLmVudHJ5LWNvbnRlbnQsXG4uZW50cnktc3VtbWFyeSB7XG4gIG1hcmdpbjogMXJlbSAwO1xufVxuXG4uZW50cnktdGl0bGUge1xuICBmb250LXNpemU6IDJyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cblxuLmVudHJ5LXRpdGxlIGEge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBjb2xvcjogIzQyNDg1MTtcbn1cblxuLmVudHJ5LXRpdGxlIGE6aG92ZXIge1xuICBjb2xvcjogIzYwMjdjZTtcbn1cblxuLmVudHJ5LWV4Y2VycHQge1xuICBjb2xvcjogIzY5Njk2OTtcbiAgZm9udC1zaXplOiAxNXB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZW50cnktZXhjZXJwdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgfVxufVxuXG4uZW50cnktZXhjZXJwdCBwIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZW50cnktdGVybXMgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC4xNXJlbSAwLjM1cmVtO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBtYXJnaW46IDAuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXM7XG59XG5cbi5lbnRyeS10ZXJtcyBhOmhvdmVyLCAuZW50cnktdGVybXMgYTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICM2MDI3Y2U7XG59XG5cbi5lbnRyeS1jb250ZW50IGEge1xuICBib3JkZXItY29sb3I6ICM2MDI3Y2U7XG59XG5cbi5lbnRyeS1jb250ZW50IGE6aG92ZXIsIC5lbnRyeS1jb250ZW50IGE6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNmYmM5Njc7XG59XG5cbi5wYWdlLWxpbmtzIHtcbiAgbWFyZ2luOiAwLjVyZW0gMCAxLjVyZW07XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ucGFnZS1saW5rcyA+ICoge1xuICBwYWRkaW5nOiAwLjVyZW07XG59XG5cbi5lbnRyeS1kZXRhaWxzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cblxuLmVudHJ5LWNhdGVnb3JpZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBmb250LXNpemU6IDE1cHg7XG59XG5cbi5wb3N0LWNhdGVnb3JpZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi5wb3N0LWNhdGVnb3JpZXMgbGkge1xuICBtYXJnaW46IDAgMC4yNXJlbTtcbn1cblxuLnBvc3QtdGh1bWJuYWlsIHtcbiAgbWFyZ2luOiAxLjVyZW0gMDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgLmVudHJ5LW1ldGEge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBjb2xvcjogIzQyNDg1MTtcbiAgZm9udC1zaXplOiAxM3B4O1xufVxuXG4uZW50cnktY29udGVudCAuZW50cnktbWV0YSBhIHtcbiAgYm9yZGVyLWNvbG9yOiAjZjRmNGY0O1xuICBjb2xvcjogIzQyNDg1MTtcbn1cblxuLmVudHJ5LWNvbnRlbnQgLmVudHJ5LW1ldGEgYTpob3ZlciwgLmVudHJ5LWNvbnRlbnQgLmVudHJ5LW1ldGEgYTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2ZiYzk2Nztcbn1cblxuLmVudHJ5LXRlcm1zIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjNjk2OTY5O1xufVxuXG4uZW50cnktdGVybXMgYTpob3ZlciwgLmVudHJ5LXRlcm1zIGE6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5lbnRyeS10ZXJtcyAuc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgY2xpcDogaW5pdGlhbDtcbiAgY2xpcC1wYXRoOiBpbml0aWFsO1xuICBtYXJnaW46IDAgM3B4IDAgMnB4O1xufVxuXG4uZW50cnktaGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBvc3RlZC1vbi1vdXRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gIH1cbn1cblxuLnBvc3RlZC1vbi1vdXRlciBhIHtcbiAgY29sb3I6ICM2OTY5Njk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnBvc3RlZC1vbi1vdXRlciBhOmhvdmVyLCAucG9zdGVkLW9uLW91dGVyIGE6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmVudHJ5LW1ldGEtb3V0ZXIge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4uc2luZ2xlLXBvc3QgLnBvc3RlZC1vbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqICMgVXRpbHNcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4udS1hbGlnbi12ZXJ0aWNhbGx5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgKiAjIFByaW50XG4gICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG5AbWVkaWEgcHJpbnQge1xuICAqOjpiZWZvcmUsICo6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICBbaHJlZl06OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoJyBhdHRyKGhyZWYpICcpXCI7XG4gIH1cbiAgW3RpdGxlXTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiICgnIGF0dHIodGl0bGUpICcpXCI7XG4gIH1cbiAgW2hyZWZePScjJ106OmFmdGVyLFxuICBbaHJlZl49J2phdmFzY3JpcHQ6J106OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgfVxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM1MzUzNTM7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gIH1cbiAgdHIsXG4gIGltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgcCxcbiAgaDIsXG4gIGgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMztcbiAgfVxuICBoMixcbiAgaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICB9XG59XG5cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlIG1heC1saW5lLWxlbmd0aCwgc2Nzcy9kb2xsYXItdmFyaWFibGUtcGF0dGVybiwgdmFsdWUta2V5d29yZC1jYXNlICovXG5cbiRmb250X19tYWluOiAnUm9ib3RvJywgc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsXG4gICdSb2JvdG8nLCAnT3h5Z2VuJywgJ1VidW50dScsICdDYW50YXJlbGwnLCAnRmlyYSBTYW5zJywgJ0Ryb2lkIFNhbnMnLFxuICAnSGVsdmV0aWNhIE5ldWUnLCBzYW5zLXNlcmlmO1xuLy8kZm9udF9faGVhZGluZzogc3lzdGVtLXVpLC1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFwiU2Vnb2UgVUlcIixcIlJvYm90b1wiLFwiT3h5Z2VuXCIsXCJVYnVudHVcIixcIkNhbnRhcmVsbFwiLFwiRmlyYSBTYW5zXCIsXCJEcm9pZCBTYW5zXCIsXCJIZWx2ZXRpY2EgTmV1ZVwiLHNhbnMtc2VyaWY7XG4kZm9udF9fY29kZTogJ3NvdXJjZS1jb2RlLXBybycsIG1lbmxvLCBtb25hY28sIGNvbnNvbGFzLCBjb3VyaWVyIG5ldywgbW9ub3NwYWNlO1xuJGZvbnRfX2xpbmUtaGVpZ2h0LWJvZHk6IDEuNjtcbiRmb250X19saW5lLWhlaWdodC1wcmU6IDEuNjtcbi8vJGZvbnRfX2Jhc2Utc2l6ZTogMTZweDtcblxuLyogc3R5bGVsaW5lLWVuYWJsZSAqL1xuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgYXQtcnVsZS1lbXB0eS1saW5lLWJlZm9yZSAqL1xuQGZ1bmN0aW9uIHJhdGlvKCRyYXRpbykge1xuICBAaWYgbWFwLWhhcy1rZXkoJHJhdGlvcywgJHJhdGlvKSB7XG4gICAgJG1hcDogbWFwLWdldCgkcmF0aW9zLCAkcmF0aW8pO1xuICAgICR3aWR0aDogbWFwLWdldCgkbWFwLCB3aWR0aCk7XG4gICAgJGhlaWdodDogbWFwLWdldCgkbWFwLCBoZWlnaHQpO1xuXG4gICAgQHJldHVybiBwZXJjZW50YWdlKCRoZWlnaHQgLyAkd2lkdGgpO1xuICB9IEBlbHNlIHtcbiAgICBAZXJyb3IgJ1JhdGlvIG5vdCBkZWZpbmVkOiAjeyRyYXRpb30nO1xuICB9XG59XG5cbi8qIHN0eWxlbGluZS1lbmFibGUgKi9cbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlIGF0LXJ1bGUtZW1wdHktbGluZS1iZWZvcmUgKi9cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW1iZXIpIHtcbiAgQGlmIHR5cGUtb2YoJG51bWJlcikgPT0gJ251bWJlcicgYW5kIG5vdCB1bml0bGVzcygkbnVtYmVyKSB7XG4gICAgQHJldHVybiAkbnVtYmVyIC8gKCRudW1iZXIgKiAwICsgMSk7XG4gIH1cblxuICBAcmV0dXJuICRudW1iZXI7XG59XG5cbi8qIHN0eWxlbGluZS1lbmFibGUgKi9cbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlIGF0LXJ1bGUtZW1wdHktbGluZS1iZWZvcmUgKi9cbkBtaXhpbiBicmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQpIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywkYnJlYWtwb2ludCkpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGVycm9yIFwiQnJlYWtwb2ludCBub3QgZGVmaW5lZDogI3skYnJlYWtwb2ludH1cIjtcbiAgfVxufVxuXG5AbWl4aW4gYnJlYWtwb2ludC11cCgkdmFsdWUpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICR2YWx1ZSArICdweCcpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICovXG5cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnMsIG1heC1saW5lLWxlbmd0aCwgYXQtcnVsZS1lbXB0eS1saW5lLWJlZm9yZSAqL1xuaHRtbCB7XG4gIEBpbmNsdWRlIGFsaWFzLXRleHQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBjb2xvcjogJGNvbG9yX190ZXh0O1xuICBmb250LWZhbWlseTogJGZvbnRfX21haW47XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAkZm9udF9fbGluZS1oZWlnaHQtYm9keTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNb3JlIHNlbnNpYmxlIGRlZmF1bHQgYm94LXNpemluZzpcbi8vIGNzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbioge1xuICAmLFxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG59XG5cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbiIsIkBtaXhpbiBhbGlhcy10ZXh0IHtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBjb2xvci1uYW1lZFxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTWFpbiBjb2xvcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kY29sb3JfX2FscGhhOiAjNjAyN2NlO1xuJGNvbG9yX19iZXRhOiAjZmJjOTY3O1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQmFja2dyb3VuZCBjb2xvcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kY29sb3JfX2JhY2tncm91bmQtYWxwaGE6ICNmNGY0ZjQ7XG4kY29sb3JfX2JhY2tncm91bmQtYmV0YTogIzQ3NDc0NztcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIDUwIHNoYWRlcyBvZiBncmV5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gJGNvbG9yX19ncmV5OiAjZWFlYWVhO1xuLy8gJGNvbG9yX19ncmV5LS1saWdodDogI2YyZjJmMjtcbi8vICRjb2xvcl9fZ3JleS0tZGFyazogI2U4ZThlODtcbi8vICRjb2xvcl9fZ3JleS0tZGFya2VzdDogI2RhZDlkOTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRleHQgY29sb3JzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGNvbG9yX190ZXh0OiAjNDI0ODUxO1xuJGNvbG9yX190ZXh0LS1hbHRlcm5hdGl2ZTogI2UwZTBlMDtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIExpbmsgY29sb3JzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGNvbG9yX19saW5rOiAkY29sb3JfX2FscGhhO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU2VsZWN0aW9uJGNvbG9yX19hbHBoYVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRjb2xvcl9fc2VsZWN0aW9uOiAjNGE0YTRhO1xuJGNvbG9yX19zZWxlY3Rpb24tYmFja2dyb3VuZDogI2ZmZjtcblxuLy8gc3R5bGVsaW50LWVuYWJsZVxuIiwiYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuZGZuLFxuY2l0ZSxcbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICBib3JkZXItbGVmdDogOHB4IHNvbGlkICRjb2xvcl9fYWxwaGE7XG4gIG1hcmdpbjogMDtcblxuICA+ICoge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuLndpZGdldC1hcmVhIGJsb2NrcXVvdGUsXG4uZm9vdGVyLXdpZGdldHMgYmxvY2txdW90ZSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4uZm9vdGVyLXdpZGdldHMgYmxvY2txdW90ZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG5hZGRyZXNzIHtcbiAgbWFyZ2luOiAwIDAgMS41cmVtO1xufVxuXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxLjZyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19iYWNrZ3JvdW5kLWFscGhhO1xuICBmb250LWZhbWlseTogJGZvbnRfX2NvZGU7XG4gIGZvbnQtc2l6ZTogcmVtKDEzcHgpO1xuICBsaW5lLWhlaWdodDogJGZvbnRfX2xpbmUtaGVpZ2h0LXByZTtcbiAgLy8gd2hpdGUtc3BhY2U6IHByZS13cmFwO1xufVxuXG4ud2lkZ2V0LWFyZWEgcHJlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19iYWNrZ3JvdW5kLWJldGE7XG59XG5cbi5mb290ZXItd2lkZ2V0cyBwcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQtYmV0YTtcbn1cblxuY29kZSxcbmtiZCxcbnR0LFxudmFyIHtcbiAgZm9udC1mYW1pbHk6ICRmb250X19jb2RlO1xuICBmb250LXNpemU6IHJlbSgxM3B4KTtcbn1cblxuYWJicixcbmFjcm9ueW0ge1xuICBjdXJzb3I6IGhlbHA7XG59XG5cbmFiYnJbdGl0bGVdLFxuYWNyb255bSB7XG4gIGJvcmRlci1ib3R0b206IDJweCBkb3R0ZWQgJGNvbG9yX19hbHBoYTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5tYXJrLFxuaW5zIHtcbiAgYmFja2dyb3VuZDogJGNvbG9yX19hbHBoYTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uZm9vdGVyLXdpZGdldHMgaW5zIHtcbiAgY29sb3I6ICRjb2xvcl9fYmFja2dyb3VuZC1iZXRhO1xufVxuXG5iaWcge1xuICBmb250LXNpemU6IDEyNSU7XG59XG5cbi8vIFJlbW92ZSB0aGUgZ2FwIGJldHdlZW4gYXVkaW8sIGNhbnZhcywgaWZyYW1lcyxcbi8vIGltYWdlcywgdmlkZW9zIGFuZCB0aGUgYm90dG9tIG9mIHRoZWlyIGNvbnRhaW5lcnM6XG4vLyBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9pc3N1ZXMvNDQwXG5hdWRpbyxcbmNhbnZhcyxcbmlmcmFtZSxcbmltZyxcbnN2ZyxcbnZpZGVvIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi8vIHN0eWxlbGludC1lbmFibGVcbiIsIi8vIENvbnZlcnRzIHBpeGVscyB0byByZW0gdW5pdHNcbkBmdW5jdGlvbiByZW0oJHRhcmdldCwgJGJhc2U6IDE2cHgpIHtcbiAgJHNpemU6IHN0cmlwLXVuaXQoJHRhcmdldCkgLyBzdHJpcC11bml0KCRiYXNlKTtcblxuICBAcmV0dXJuICN7JHNpemV9cmVtO1xufVxuIiwiLmVudHJ5LXRpdGxlIHtcbiAgZm9udC1zaXplOiByZW0oJGhlYWRpbmdfX2gxKTtcbn1cblxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA2IHtcbiAgLmVudHJ5LWNvbnRlbnQgaCN7JGl9IHtcbiAgICBtYXJnaW46IDNyZW0gMCAycmVtO1xuICB9XG59XG5cbi5lbnRyeS1jb250ZW50IGgxIHtcbiAgZm9udC1zaXplOiByZW0oJGhlYWRpbmdfX2gxKTtcbn1cblxuLmVudHJ5LWNvbnRlbnQgaDIge1xuICBmb250LXNpemU6IHJlbSgkaGVhZGluZ19faDIpO1xufVxuXG4uZW50cnktY29udGVudCBoMyB7XG4gIGZvbnQtc2l6ZTogcmVtKCRoZWFkaW5nX19oMyk7XG59XG5cbi5lbnRyeS1jb250ZW50IGg0IHtcbiAgZm9udC1zaXplOiByZW0oJGhlYWRpbmdfX2g0KTtcbn1cblxuLmVudHJ5LWNvbnRlbnQgaDUge1xuICBmb250LXNpemU6IHJlbSgkaGVhZGluZ19faDUpO1xufVxuXG4uZW50cnktY29udGVudCBoNiB7XG4gIGZvbnQtc2l6ZTogcmVtKCRoZWFkaW5nX19oNik7XG59XG4iLCIvKiBkZWZhdWx0IGxpbmsgc3R5bGluZyAqL1xuYSxcbi5hbmNob3IsXG5hOmxpbmsge1xuICBjb2xvcjogZGFya2VuKCRjb2xvcl9fdGV4dCwgMzAlKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuIiwiaHIge1xuICBoZWlnaHQ6IDNweDtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX3RleHQ7XG59XG4iLCJmaWd1cmUge1xuICBtYXJnaW46IDFyZW0gMDtcbn1cblxuaW1nIHtcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBNYWtpbmcgaW1hZ2VzIGZpdCB3aXRoaW4gdGV4dFxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIEJhc2ljIHJlc3BvbnNpdmUgaW1hZ2VzXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gUmVtb3ZpbmcgdGhlIGdhcCB1bmRlcm5lYXRoIGltYWdlcyBjYXVzZWQgYnkgaW5saW5lYmxvY2tcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuIiwidWwsXG5vbCB7XG4gIHBhZGRpbmc6IDAgMS41cmVtO1xuICBtYXJnaW46IDAgMCAxLjVyZW07XG59XG5cbnVsIHtcbiAgbGlzdC1zdHlsZTogZGlzYztcbn1cblxub2wge1xuICBsaXN0LXN0eWxlOiBkZWNpbWFsO1xufVxuXG5saSA+IHVsLFxubGkgPiBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbnVsIGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4ycmVtO1xufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSZW1vdmluZyBib3R0b20gbWFyZ2luIGZyb20gbmVzdGVkIGxpc3RzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHkgKi9cblxubGkge1xuICBvbCxcbiAgdWwsXG4gIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8qIHN0eWxlbGluZS1lbmFibGUgKi9cblxuZHQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5kZCB7XG4gIG1hcmdpbjogMCAxLjVyZW0gMS41cmVtO1xufVxuIiwiOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKCNmOWY4NzEsIDAuNSk7XG4gIGNvbG9yOiAkY29sb3JfX3NlbGVjdGlvbjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRoaXMgaXMganVzdCBhIG5pY2UgdG8gaGF2ZSB0aGF0IG1ha2VzIHN2Z3Ncbi8vIC0gUmVzcG9uc2l2ZVxuLy8gLSBNYXRjaCB0aGUgY3VycmVudCBjb2xvciBvZiB0aGUgdGV4dFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMC4wNjI1cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLyogTm9ybWFsaXplIHN2ZyBiZWhhdmlvdXIgb24gSUUgMTEgKi9cbkBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIFtzcmMqPScuc3ZnJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbiIsInRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCAwIDEuNXJlbTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcblxuICBjYXB0aW9uIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxudGhlYWQge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY3VycmVudENvbG9yO1xufVxuXG50aCB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xufVxuXG50Zm9vdCB7XG4gIHRyIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHJ1bGUtZW1wdHktbGluZS1iZWZvcmVcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgY3VycmVudENvbG9yO1xuICB9XG59XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHkgKi9cbnRyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cbn1cblxuLyogc3R5bGVsaW5lLWVuYWJsZSAqL1xuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgfVxufVxuIiwidGV4dGFyZWEge1xuICAgIHJlc2l6ZTogdmVydGljYWw7XG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqICMjIEFjY2Vzc2liaWxpdHlcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIFRleHQgbWVhbnQgb25seSBmb3Igc2NyZWVuIHJlYWRlcnMuICovXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogLTFweDtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7IC8qIE1hbnkgc2NyZWVuIHJlYWRlciBhbmQgYnJvd3NlciBjb21iaW5hdGlvbnMgYW5ub3VuY2UgYnJva2VuIHdvcmRzIGFzIHRoZXkgd291bGQgYXBwZWFyIHZpc3VhbGx5LiAqL1xuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDEwMDAwMDsgLyogQWJvdmUgV1AgdG9vbGJhci4gKi9cbiAgICB0b3A6IDVweDtcbiAgICBsZWZ0OiA1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9fYmFja2dyb3VuZC1iZXRhO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gICAgY2xpcDogYXV0byAhaW1wb3J0YW50O1xuICAgIGNsaXAtcGF0aDogbm9uZTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZm9udC1zaXplOiByZW0oMTRweCk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4vKiBEbyBub3Qgc2hvdyB0aGUgb3V0bGluZSBvbiB0aGUgc2tpcCBsaW5rIHRhcmdldC4gKi9cbi5jb250ZW50W3RhYmluZGV4PSctMSddOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLypcbiAgVGhpcyB3aWxsIGhpZGUgdGhlIGZvY3VzIGluZGljYXRvciBpZiB0aGUgZWxlbWVudCByZWNlaXZlcyBmb2N1cyB2aWEgdGhlIG1vdXNlLFxuICBidXQgaXQgd2lsbCBzdGlsbCBzaG93IHVwIG9uIGtleWJvYXJkIGZvY3VzLlxuKi9cbi5qcy1mb2N1cy12aXNpYmxlIDpmb2N1czpub3QoLmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG91dGxpbmUtc3R5bGU6IGRvdHRlZDtcbiAgb3V0bGluZS13aWR0aDogMnB4O1xufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgKiAjIyBBbGlnbm1lbnRcbiAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmFsaWdubGVmdCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uYWxpZ25yaWdodCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uYWxpZ25jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgY2xlYXI6IGJvdGg7XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAqICMjIENsZWFyaW5nc1xuICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLXBzZXVkby1lbGVtZW50LWNvbG9uLW5vdGF0aW9uICovXG4uY2xlYXI6YWZ0ZXIsXG4uZW50cnktY29udGVudDphZnRlcixcbi5lbnRyeS1mb290ZXI6YWZ0ZXIsXG4uY29tbWVudC1jb250ZW50OmFmdGVyLFxuLnNpdGUtaGVhZGVyOmFmdGVyLFxuLnNpdGUtZm9vdGVyOmFmdGVyLFxuLm5hdi1saW5rczphZnRlcixcbi5wYWdpbmF0aW9uOmFmdGVyLFxuLmNvbW1lbnQtYXV0aG9yOmFmdGVyLFxuLndpZGdldC1hcmVhOmFmdGVyLFxuLndpZGdldDphZnRlcixcbi5jb21tZW50LW1ldGE6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmNsZWFyOmJlZm9yZSxcbi5jbGVhcjphZnRlcixcbi5lbnRyeS1jb250ZW50OmJlZm9yZSxcbi5lbnRyeS1jb250ZW50OmFmdGVyLFxuLmVudHJ5LWZvb3RlcjpiZWZvcmUsXG4uZW50cnktZm9vdGVyOmFmdGVyLFxuLmNvbW1lbnQtY29udGVudDpiZWZvcmUsXG4uY29tbWVudC1jb250ZW50OmFmdGVyLFxuLnNpdGUtaGVhZGVyOmJlZm9yZSxcbi5zaXRlLWhlYWRlcjphZnRlcixcbi5zaXRlLWZvb3RlcjpiZWZvcmUsXG4uc2l0ZS1mb290ZXI6YWZ0ZXIsXG4ubmF2LWxpbmtzOmJlZm9yZSxcbi5uYXYtbGlua3M6YWZ0ZXIsXG4ucGFnaW5hdGlvbjpiZWZvcmUsXG4ucGFnaW5hdGlvbjphZnRlcixcbi5jb21tZW50LWF1dGhvcjpiZWZvcmUsXG4uY29tbWVudC1hdXRob3I6YWZ0ZXIsXG4ud2lkZ2V0LWFyZWE6YmVmb3JlLFxuLndpZGdldC1hcmVhOmFmdGVyLFxuLndpZGdldDpiZWZvcmUsXG4ud2lkZ2V0OmFmdGVyLFxuLmNvbW1lbnQtbWV0YTpiZWZvcmUsXG4uY29tbWVudC1tZXRhOmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcnO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xufVxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgKiAjIyBNZWRpYVxuICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucGFnZS1jb250ZW50IC53cC1zbWlsZXksXG4uZW50cnktY29udGVudCAud3Atc21pbGV5LFxuLmNvbW1lbnQtY29udGVudCAud3Atc21pbGV5IHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiBNYWtlIHN1cmUgZW1iZWRzIGFuZCBpZnJhbWVzIGZpdCB0aGVpciBjb250YWluZXJzLiAqL1xuZW1iZWQsXG5pZnJhbWUsXG5vYmplY3Qge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8qIE1ha2Ugc3VyZSBsb2dvIGxpbmsgd3JhcHMgYXJvdW5kIGxvZ28gaW1hZ2UuICovXG4uY3VzdG9tLWxvZ28tbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbiIsIi5nYWxsZXJ5IHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG4uZ2FsbGVyeS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMC4yNXJlbTtcbiAgbWFyZ2luOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4gIC8vIExvb3BzIHRvIGVudW1lcmF0ZSB0aGUgY2xhc3NlcyBmb3IgZ2FsbGVyeSBjb2x1bW5zLlxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIDkge1xuICAgIC5nYWxsZXJ5LWNvbHVtbnMtI3skaX0gJiB7XG4gICAgICBtYXgtd2lkdGg6IG1hcC1nZXQoJGNvbHVtbnMsICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLmdhbGxlcnktY2FwdGlvbixcbi53cC1jYXB0aW9uLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDEwcHggMCAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4iLCIkY29sdW1uczogKFxuICAxOiAxMDAlLFxuICAyOiA1MCUsXG4gIDM6IDMzLjMzJSxcbiAgNDogMjUlLFxuICA1OiAyMCUsXG4gIDY6IDE2LjY2JSxcbiAgNzogMTQuMjglLFxuICA4OiAxMi41JSxcbiAgOTogMTEuMTElLFxuKTtcblxuJGNvbHVtbnNfX21hcmdpbjogMy44JTtcbiIsIi53cC1jYXB0aW9uLXRleHQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4ud3AtY2FwdGlvbiB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSAqL1xuICBpbWdbY2xhc3MqPSd3cC1pbWFnZS0nXSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG4gIC8qIHN0eWxlbGludC1lbmFibGUgKi9cblxuICAud3AtY2FwdGlvbi10ZXh0IHtcbiAgICBtYXJnaW46IDAuODA3NXJlbSAwO1xuICB9XG59XG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSBhdC1ydWxlLWVtcHR5LWxpbmUtYmVmb3JlICovXG4uaW1nLWZpdCB7XG4gIEBpbmNsdWRlIG9iamVjdC1maXQ7XG5cbiAgaW1nIHtcbiAgICBAaW5jbHVkZSBvYmplY3QtZml0LWFzc2V0O1xuICB9XG5cbiAgJi0tZmFsbGJhY2sge1xuICAgIEBpbmNsdWRlIG9iamVjdC1maXQtaW1nLWZhbGxiYWNrO1xuICB9XG59XG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUaGUgaW1hZ2UgZml0IGNsYXNzIG1ha2VzIGEgcmVhbCBpbWFnZSBiZWhhdmVcbi8vIGxpa2UgYSBiYWNrZ3JvdW5kIGltYWdlLlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIG9iamVjdC1maXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWl4aW4gb2JqZWN0LWZpdC1hc3NldCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gT2JqZWN0IGZpdCBkZWNsYXJhdGlvbnNcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgb2JqZWN0LXBvc2l0aW9uOiA1MCUgNTAlO1xufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBXaGVuIG9iamVjdCBmaXQgaXNuJ3Qgc3VwcG9ydGVkIGEgY2xhc3Mgd2lsbFxuLy8gYmUgYWRkZWQgdG8gdGhlIGJvZHkgc28gdGhhdCB0aGUgZm9sbG93aW5nXG4vLyBjbGFzcyBiZWNvbWVzIGFjdGl2ZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIG9iamVjdC1maXQtaW1nLWZhbGxiYWNrIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gIGltZyB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuIiwiLnJlc3BvbnNpdmUtZW1iZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogcmF0aW8oJzE2LTknKTtcblxuICAmLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4iLCIubm9zY3JpcHQtbm90aWZpY2F0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDIwcHggMDtcbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICogIyMgUHJpbWFyeSBtZW51XG4gICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LWNvbXBvdW5kLXNlbGVjdG9ycywgbWF4LW5lc3RpbmctZGVwdGgsIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHksIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnMsIG1heC1saW5lLWxlbmd0aCAqL1xuXG4vLyBtb2JpbGUgbWVudSB2YXJpYWJsZXNcbiRtZW51LW1vYmlsZS1ib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuJG1lbnUtbW9iaWxlLWl0ZW1zLXBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDEwcHg7XG4kbWVudS1tb2JpbGUtdGV4dC1jb2xvcjogd2hpdGU7XG4kbWVudS1tb2JpbGUtc3ViLW1lbnUtcGFkZGluZzogMDtcblxuLy8gZGVza3RvcCB2YXJpYWJsZXNcbiRtZW51LXBhZGRpbmc6IDEwcHggMTVweDtcbiRtZW51LXRleHQtY29sb3I6IHdoaXRlO1xuJG1lbnUtaXRlbS1ob3Zlcjogd2hpdGU7XG5cbi8vIHN1Ym1lbnUgc3R5bGluZ1xuJHN1Ym1lbnUtYmFja2dyb3VuZDogI2ZmZjtcbiRzdWJtZW51LWJvcmRlcjogJG1lbnUtbW9iaWxlLWJvcmRlci10b3A7XG4kc3VibWVudS1mb250c2l6ZTogMTRweDtcbiRzdWJtZW51LXBhZGRpbmc6IDEwcHggMjBweDtcbiRzdWJtZW51LWxpbms6ICM0YTRhNGE7XG4kc3VibWVudS1saW5rLWhvdmVyOiAjNTgzYWJjO1xuJHN1Ym1lbnUtbGluay1ob3Zlci1iZzogdHJhbnNwYXJlbnQ7XG5cbi8qIE1lbnUgdG9nZ2xlICovXG4ubm8tanMgLm1lbnUtdG9nZ2xlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1lbnUtdG9nZ2xlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDIwcHg7XG4gIHJpZ2h0OiAyMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgLy9tYXJnaW46IDAgYXV0byAycmVtO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiB3aGl0ZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5pY29uIHtcbiAgICB0b3A6IC0ycHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gIH1cblxuICAuaWNvbi1jbG9zZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYuaXMtZXhwYW5kZWQge1xuICAgIC5pY29uLWNsb3NlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuaWNvbi1iYXJzIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5tYWluLW5hdmlnYXRpb24ge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cblxuLnByaW1hcnktbWVudS13cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wcmltYXJ5LW1lbnUge1xuICBkaXNwbGF5OiBub25lO1xuICBmbGV4LWZsb3c6IGNvbHVtbiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cblxuICAuaWNvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucHJpbWFyeS1tZW51LmlzLXZpc2libGUsXG4ubm8tanMgLnByaW1hcnktbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5zdWItbWVudSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4vKiBNb2JpbGUgbWVudSBzdHlsaW5nICovXG4ucHJpbWFyeS1tZW51IHtcbiAgLm1lbnUtaXRlbSB7XG4gICAgYm9yZGVyLXRvcDogJG1lbnUtbW9iaWxlLWJvcmRlci10b3A7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAvL2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3JfX2JhY2tncm91bmQtYWxwaGE7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAkbWVudS1tb2JpbGUtaXRlbXMtcGFkZGluZztcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBjb2xvcjogJG1lbnUtbW9iaWxlLXRleHQtY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgICYuY3VycmVudC1tZW51LWl0ZW0gPiBhIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnN1Yi1tZW51IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG5cbiAgICAubWVudS1pdGVtIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG5cbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRtZW51LW1vYmlsZS1zdWItbWVudS1wYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBNZW51IHRhYmxldHMgYW5kIHVwICovXG5AaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gIC5wcmltYXJ5LW1lbnUge1xuICAgIC5pY29uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuaWNvbi1hcnJvdy1kb3duIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB6b29tOiAxO1xuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbTpob3ZlciAuc3ViLW1lbnUsXG4gICAgLm1lbnUtaXRlbS5mb2N1cyAuc3ViLW1lbnUge1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgIC5tZW51LWl0ZW06Zm9jdXMtd2l0aGluIC5zdWItbWVudSB7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICByaWdodDogMDtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbSBhLFxuICAgIC5tZW51LWl0ZW0uZm9jdXMgYSB7XG4gICAgICBwYWRkaW5nOiAkbWVudS1wYWRkaW5nO1xuICAgICAgY29sb3I6ICRtZW51LXRleHQtY29sb3I7XG4gICAgICBtYXJnaW4tbGVmdDogM3B4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzcHg7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRtZW51LWl0ZW0taG92ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qIFN1Ym1lbnVzICovXG4gICAgLnN1Yi1tZW51IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICB0b3A6IC05OTlyZW07XG4gICAgICBsZWZ0OiAtOTk5cmVtO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtaW4td2lkdGg6IDI1MHB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIC8vYm9yZGVyOiAkc3VibWVudS1ib3JkZXI7XG4gICAgICBib3gtc2hhZG93OiAwIDE1cHggNDBweCAwIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3VibWVudS1iYWNrZ3JvdW5kO1xuICAgICAgZm9udC1zaXplOiAkc3VibWVudS1mb250c2l6ZTtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIC5pY29uLWFycm93LWRvd24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA4cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDkwZGVnKTtcbiAgICAgIH1cblxuICAgICAgLm1lbnUtaXRlbSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgcGFkZGluZzogJHN1Ym1lbnUtcGFkZGluZztcbiAgICAgICAgICBjb2xvcjogJHN1Ym1lbnUtbGluaztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHN1Ym1lbnUtbGluay1ob3Zlci1iZztcbiAgICAgICAgICAgIGNvbG9yOiAkc3VibWVudS1saW5rLWhvdmVyO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3ViLW1lbnUge1xuICAgICAgICAgIHRvcDogLTk5OXJlbTtcbiAgICAgICAgICBsZWZ0OiAtOTk5cmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5tZW51LWl0ZW06aG92ZXIgPiAuc3ViLW1lbnUsXG4gICAgICAubWVudS1pdGVtLmZvY3VzID4gLnN1Yi1tZW51IHtcbiAgICAgICAgdG9wOiAtMXB4O1xuICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cblxuICAgICAgLm1lbnUtaXRlbTpmb2N1cy13aXRoaW4gPiAuc3ViLW1lbnUge1xuICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuXG4gICAgICAubWVudS1pdGVtOmZvY3VzLXdpdGhpbiA+IC5zdWItbWVudSB7XG4gICAgICAgIHRvcDogLTFweDtcbiAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzdHlsZWxpbnQgZW5hYmxlXG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICogIyMgR3V0ZW5iZXJnIGJsb2Nrc1xuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LWNvbXBvdW5kLXNlbGVjdG9ycywgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBuby1kdXBsaWNhdGUtc2VsZWN0b3JzLCBtYXgtbGluZS1sZW5ndGggKi9cbi5lbnRyeS1jb250ZW50ID4gKiB7XG4gIG1heC13aWR0aDogNzYwcHg7XG4gIG1hcmdpbjogMzZweCAwO1xufVxuXG4ucGFnZS10ZW1wbGF0ZS1rbm93bGVkZ2ViYXNlIC5lbnRyeS1jb250ZW50ID4gKiB7XG4gIG1heC13aWR0aDogNzYwcHg7XG4gIG1hcmdpbjogMzZweCBhdXRvO1xufVxuXG4uZW50cnktY29udGVudCBwOmZpcnN0LW9mLXR5cGUge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uZW50cnktY29udGVudCA+IC5hbGlnbndpZGUge1xuICBtYXgtd2lkdGg6IDExMDBweDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgPiAuYWxpZ25mdWxsIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDEuNWVtIDA7XG59XG5cbi5lbnRyeS1jb250ZW50IHVsLFxuLmVudHJ5LWNvbnRlbnQgb2wge1xuICBtYXgtd2lkdGg6IDc2MHB4O1xuICBtYXJnaW46IDEuNWVtIDA7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG59XG5cbi53cC1ibG9jay12aWRlbyB2aWRlbyB7XG4gIG1heC13aWR0aDogNzYwcHg7XG59XG5cbi53cC1ibG9jay1pbWFnZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndwLWJsb2NrLWltYWdlLmFsaWdubGVmdCxcbi53cC1ibG9jay1pbWFnZS5hbGlnbnJpZ2h0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi53cC1ibG9jay1pbWFnZS5hbGlnbmZ1bGwgaW1nIHtcbiAgd2lkdGg6IDEwMHZ3O1xufVxuXG4ud3AtYmxvY2stZ2FsbGVyeTpub3QoLmNvbXBvbmVudHMtcGxhY2Vob2xkZXIpIHtcbiAgbWFyZ2luOiAxLjVlbSBhdXRvO1xufVxuXG4ud3AtYmxvY2stY292ZXItdGV4dCBwIHtcbiAgcGFkZGluZzogMS41ZW0gMTRweDtcbn1cblxudWwud3AtYmxvY2stbGF0ZXN0LXBvc3RzLmFsaWdud2lkZSxcbnVsLndwLWJsb2NrLWxhdGVzdC1wb3N0cy5hbGlnbmZ1bGwsXG51bC53cC1ibG9jay1sYXRlc3QtcG9zdHMuaXMtZ3JpZC5hbGlnbndpZGUsXG51bC53cC1ibG9jay1sYXRlc3QtcG9zdHMuaXMtZ3JpZC5hbGlnbndpZGUge1xuICBwYWRkaW5nOiAwIDE0cHg7XG59XG5cbi53cC1ibG9jay10YWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4ud3AtYmxvY2stdGFibGUgdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuLndwLWJsb2NrLXRhYmxlIHRkLFxuLndwLWJsb2NrLXRhYmxlIHRoIHtcbiAgcGFkZGluZzogMC41ZW07XG59XG5cbi5lbnRyeS1jb250ZW50IGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogNnB4O1xuICBtYXJnaW4tbGVmdDogMi41ZW07XG59XG5cbi5lbnRyeS1jb250ZW50IHVsIHVsLFxuLmVudHJ5LWNvbnRlbnQgb2wgb2wsXG4uZW50cnktY29udGVudCB1bCBvbCxcbi5lbnRyeS1jb250ZW50IG9sIHVsIHtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5lbnRyeS1jb250ZW50IHVsIHVsIGxpLFxuLmVudHJ5LWNvbnRlbnQgb2wgb2wgbGksXG4uZW50cnktY29udGVudCB1bCBvbCBsaSxcbi5lbnRyeS1jb250ZW50IG9sIHVsIGxpIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi53cC1ibG9jay1lbWJlZC50eXBlLXZpZGVvID4gLndwLWJsb2NrLWVtYmVkX193cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nLXRvcDogNTYuMjUlO1xufVxuXG4ud3AtYmxvY2stZW1iZWQudHlwZS12aWRlbyA+IC53cC1ibG9jay1lbWJlZF9fd3JhcHBlciA+IGlmcmFtZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ud3AtYmxvY2stcXVvdGUuaXMtbGFyZ2Uge1xuICBtYXJnaW46IDAgYXV0byAxNnB4O1xufVxuXG4ud3AtYmxvY2stcHVsbHF1b3RlID4gcDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi53cC1ibG9jay1zZXBhcmF0b3Ige1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDNlbSBhdXRvO1xufVxuXG4ubW9yZS1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi53cC1ibG9jay1ncm91cCA+ICoge1xuICBtYXgtd2lkdGg6IDYxMHB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4ud3AtYmxvY2stZ3JvdXAgPiAuYWxpZ253aWRlIHtcbiAgbWF4LXdpZHRoOiAxMTAwcHg7XG59XG5cbi53cC1ibG9jay1ncm91cCA+IC5hbGlnbmZ1bGwge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi53cC1ibG9jay1ncm91cC5oYXMtYmFja2dyb3VuZCA+IC5hbGlnbmZ1bGwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0zMHB4O1xuICB3aWR0aDogY2FsYygxMDAlICsgNjBweCk7XG4gIG1heC13aWR0aDogY2FsYygxMDAlICsgNjBweCk7XG59XG5cbi5lbnRyeS1jb250ZW50IC53cC1ibG9jay1maWxlIGEud3AtYmxvY2stZmlsZV9fYnV0dG9uOmZvY3VzIHtcbiAgQGluY2x1ZGUgb3V0bGluZTtcbn1cblxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuIiwiQG1peGluIG91dGxpbmUge1xuICBvdXRsaW5lOiBkb3R0ZWQgdGhpbiBpbml0aWFsO1xuICBvdXRsaW5lLW9mZnNldDogLTFweDtcbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICogIyMgUGFnaW5hdGlvblxuICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubmF2LWxpbmtzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbn1cblxuLnBhZ2UtbnVtYmVycyB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAyLjVyZW07XG4gICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWFlYWVhO1xuICAgIG1hcmdpbjogMC41cmVtO1xuICAgIGJhY2tncm91bmQ6ICNlYWVhZWE7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIHRyYW5zaXRpb246IGJvcmRlciAwLjNzO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICYuY3VycmVudCB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZWFlYWVhO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBjbGlwOiBhdXRvO1xuICAgICAgLXdlYmtpdC1jbGlwLXBhdGg6IGluaXRpYWw7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmN1cnJlbnQsXG4gICYucHJldixcbiAgJi5uZXh0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gIH1cblxuICAmLnByZXYsXG4gICYubmV4dCB7XG4gICAgcGFkZGluZzogMCAwLjVyZW07XG4gICAgYm9yZGVyOiAwO1xuICAgIG1hcmdpbjogMCAxcmVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbjogMC41cmVtO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgZGFya2VuKCRjb2xvcl9fYmFja2dyb3VuZC1hbHBoYSwgMzAlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOmhvdmVyOm5vdCguY3VycmVudCkge1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRjb2xvcl9fYmFja2dyb3VuZC1hbHBoYSwgMzAlKTtcbiAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgKiAjIyBOZXh0IFByZXYgTGlua3NcbiAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBhdC1ydWxlLWVtcHR5LWxpbmUtYmVmb3JlICovXG4ucG9zdC1uYXZpZ2F0aW9uIHtcbiAgLm1ldGEtbmF2IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDAuODg4ODg4ODg4OHJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuXG4gIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrOyAvKiBGaXhlcyBicm9rZW4gb3V0bGluZSBpbiBGaXJlZm94ICovXG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgLnBvc3QtdGl0bGUge1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGNvbG9yX19hbHBoYTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmtzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAvL2p1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBtYXJnaW46IDJyZW0gMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAubmF2LXByZXZpb3VzLFxuICAubmF2LW5leHQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gIH1cblxuICAubmF2LXByZXZpb3VzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1uZXh0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICogIyMgQ29tbWVudHNcbiAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXgsIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHksIGF0LXJ1bGUtZW1wdHktbGluZS1iZWZvcmUsIG1heC1saW5lLWxlbmd0aCAgKi9cblxuLmNvbW1lbnQtY29udGVudCBhIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4uY29tbWVudC1jb250ZW50IHAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uY29tbWVudC1jb250ZW50IGJsb2NrcXVvdGUgPiAqIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmJ5cG9zdGF1dGhvciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY29tbWVudHMtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cblxuLmNvbW1lbnQtbGlzdCxcbi5jb21tZW50LWxpc3QgLmNoaWxkcmVuIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uY29tbWVudC1saXN0IC5jaGlsZHJlbiB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuXG4uY29tbWVudC1saXN0IGxpOjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY29tbWVudC1hdXRob3Ige1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIG1hcmdpbi1ib3R0b206IDAuNHJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4uY29tbWVudC1hdXRob3IgLmF2YXRhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTY1cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLmNvbW1lbnQtYXV0aG9yIC5zYXlzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNvbW1lbnQtbWV0YSB7XG4gIHBhZGRpbmctbGVmdDogNHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG4uY29tbWVudC1tZXRhZGF0YSB7XG4gIGNvbG9yOiAjNzY3Njc2O1xuICBmb250LXNpemU6IDEwcHg7XG4gIGZvbnQtc2l6ZTogMC42MjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjE4MThyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jb21tZW50LW1ldGFkYXRhIGEge1xuICBib3JkZXItY29sb3I6ICRjb2xvcl9fbGluaztcbiAgY29sb3I6ICRjb2xvcl9fdGV4dDtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcl9fYmV0YTtcbiAgICBjb2xvcjogJGNvbG9yX190ZXh0O1xuICB9XG59XG5cbi5jb21tZW50LW1ldGFkYXRhIC5jb21tZW50LWVkaXQtbGluayB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICBjb2xvcjogJGNvbG9yX190ZXh0O1xufVxuXG4uY29tbWVudC5kZXB0aC0xIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAkY29sb3JfX2JhY2tncm91bmQtYWxwaGE7XG59XG5cbi5jb21tZW50LWJvZHkge1xuICBwYWRkaW5nOiAxLjVyZW0gMDtcbiAgY29sb3I6ICM0YTRhNGE7XG4gIGZvbnQtc2l6ZTogcmVtKDE0cHgpO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4uY2hpbGRyZW4gLmNvbW1lbnQtYm9keSB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jb21tZW50LXJlcGx5LWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG5cbiAgLmljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogLTJyZW07XG4gICAgd2lkdGg6IDFyZW07XG4gICAgaGVpZ2h0OiAxcmVtO1xuICAgIGNvbG9yOiAjMjIyO1xuICB9XG59XG5cbi5jaGlsZHJlbiAuY29tbWVudC1hdXRob3IgLmF2YXRhciB7XG4gIGxlZnQ6IC00NXB4O1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xufVxuXG4ubm8tY29tbWVudHMsXG4uY29tbWVudC1hd2FpdGluZy1tb2RlcmF0aW9uIHtcbiAgY29sb3I6ICM3Njc2NzY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4uY29tbWVudC1yZXNwb25kIHtcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIHRleHRhcmVhIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfX2JhY2tncm91bmQtYWxwaGE7XG4gIH1cblxuICB0ZXh0YXJlYSxcbiAgaW5wdXQge1xuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgb3V0bGluZTtcblxuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yX19iYWNrZ3JvdW5kLWFscGhhO1xuICAgIH1cbiAgfVxufVxuXG4uY29tbWVudC1mb3JtLWNvb2tpZXMtY29uc2VudCBpbnB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG4uY29tbWVudC1mb3JtLWNvb2tpZXMtY29uc2VudCBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLmNvbW1lbnQtbmF2aWdhdGlvbiAubmF2LWxpbmtzIHtcbiAgbWFyZ2luOiAycmVtIDAgNHJlbTtcbn1cblxuLmNvbW1lbnQtbmF2aWdhdGlvbiAubmF2LXByZXZpb3VzLFxuLmNvbW1lbnQtbmF2aWdhdGlvbiAubmF2LW5leHQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIGZsZXgtZ3JvdzogMTtcbn1cblxuLmNvbW1lbnQtbmF2aWdhdGlvbiAubmF2LW5leHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmNvbW1lbnRzLXBhZ2luYXRpb24ge1xuICBtYXJnaW46IDJyZW0gMCAzcmVtO1xufVxuXG4uZm9ybS1zdWJtaXQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICBpbnB1dCB7XG4gICAgcGFkZGluZzogMXJlbSAycmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9fYWxwaGE7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yX19hbHBoYTtcbiAgICBjb2xvcjogI2ZmZjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgb3V0bGluZTtcbiAgICAgIG91dGxpbmUtb2Zmc2V0OiAtM3B4O1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBvcGFjaXR5OiAwLjk7XG4gICAgfVxuICB9XG59XG5cbi5jb21tZW50LWZvcm0gaW5wdXRbdHlwZT0ndGV4dCddLFxuLmNvbW1lbnQtZm9ybSBpbnB1dFt0eXBlPSdlbWFpbCddLFxuLmNvbW1lbnQtZm9ybSBpbnB1dFt0eXBlPSd1cmwnXSB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIHdpZHRoOiA1MCU7XG4gIGhlaWdodDogNDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjVmNjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNCwgMjEsIDI2LCAwLjEpO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5cbi5jb21tZW50LWZvcm0gdGV4dGFyZWEge1xuICBwYWRkaW5nOiAxMHB4O1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyMDBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjVmNjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNCwgMjEsIDI2LCAwLjEpO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5cbi5jb21tZW50LWZvcm0tY29va2llcy1jb25zZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmNvbW1lbnQtZm9ybSAuZm9ybS1zdWJtaXQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgKiAjIyBGb3Jtc1xuICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCwgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eSwgYXQtcnVsZS1lbXB0eS1saW5lLWJlZm9yZSwgbWF4LWxpbmUtbGVuZ3RoICAqL1xuLnNlYXJjaC1mb3JtIHtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgbGFiZWwsXG4gIC5zZWFyY2gtZmllbGQsXG4gIC5zZWFyY2gtc3VibWl0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5zZWFyY2gtZmllbGQge1xuICAgIGhlaWdodDogNDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgLnNlYXJjaC1zdWJtaXQge1xuICAgIGhlaWdodDogNDdweDtcbiAgfVxufVxuXG4ucG9zdC1wYXNzd29yZC1mb3JtIGlucHV0W3R5cGU9J3Bhc3N3b3JkJ10sXG4uc2VhcmNoLWZpZWxkLFxuLnNlYXJjaC1zdWJtaXQge1xuICBwYWRkaW5nOiAwLjM1cmVtO1xuXG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIG91dGxpbmUoKTtcbiAgfVxufVxuXG4uc2VhcmNoLWZpZWxkLFxuLnBvc3QtcGFzc3dvcmQtZm9ybSBpbnB1dFt0eXBlPSdwYXNzd29yZCddIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yX19iYWNrZ3JvdW5kLWFscGhhO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4uc2VhcmNoLWZpZWxkOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLnBvc3QtcGFzc3dvcmQtZm9ybSBpbnB1dFt0eXBlPSdwYXNzd29yZCddIHtcbiAgcGFkZGluZzogN3B4IDVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yX19iYWNrZ3JvdW5kLWFscGhhO1xufVxuXG4ucG9zdC1wYXNzd29yZC1mb3JtIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG4ucG9zdC1wYXNzd29yZC1mb3JtIGlucHV0W3R5cGU9J3N1Ym1pdCddLFxuLnNlYXJjaC1zdWJtaXQge1xuICBwYWRkaW5nOiAwLjM1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3JfX2FscGhhO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9fYWxwaGE7XG4gIGNvbG9yOiAjZmZmO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLnBvc3QtcGFzc3dvcmQtZm9ybSBpbnB1dFt0eXBlPSdzdWJtaXQnXSB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvcl9fYmV0YTtcblxuICAmOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkY29sb3JfX2JldGEsIDUlKTtcbiAgfVxufVxuXG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG4iLCIucHJpbWFyeS1zZWFyY2gge1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW4tdG9wOiA3cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDhyZW07XG4gIH1cblxuICAuaWNvbi1zZWFyY2gtaWNvbiB7XG4gICAgd2lkdGg6IDI1cHg7XG4gICAgaGVpZ2h0OiAyNXB4O1xuXG4gICAgPiAqIHtcbiAgICAgIHN0cm9rZTogd2hpdGU7XG4gICAgfVxuICB9XG59XG5cbi5wcmltYXJ5LXNlYXJjaC10aXRsZSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDMwcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBmb250LXNpemU6IDQ1cHg7XG4gIH1cbn1cblxuLnByaW1hcnktc2VhcmNoLWZvcm0ge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA2NTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgaGVpZ2h0OiA1NXB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5wcmltYXJ5LXNlYXJjaC1sYWJlbCB7XG4gIGZsZXgtYmFzaXM6IDE1MHB4O1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi5wcmltYXJ5LXNlYXJjaC1maWVsZCB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDAuOTRyZW07XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cblxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHdoaXRlO1xuICB9XG59XG5cbi5wcmltYXJ5LXNlYXJjaC1maWVsZDo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbixcbi5wcmltYXJ5LXNlYXJjaC1maWVsZDo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbi5wcmltYXJ5LXNlYXJjaC1maWVsZDo6LXdlYmtpdC1zZWFyY2gtcmVzdWx0cy1idXR0b24sXG4ucHJpbWFyeS1zZWFyY2gtZmllbGQ6Oi13ZWJraXQtc2VhcmNoLXJlc3VsdHMtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLnByaW1hcnktc2VhcmNoLXN1Ym1pdCB7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6IHdoaXRlO1xuXG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIH1cbn1cbiIsIiRzZWNvbmRhcnktZ3JleTogIzY5Njk2OTtcblxuLnNlY29uZGFyeS1zZWFyY2gge1xuICBwYWRkaW5nOiAxNXB4IDA7XG5cbiAgLmljb24tc2VhcmNoLWljb24ge1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDtcblxuICAgID4gKiB7XG4gICAgICBzdHJva2U6ICRzZWNvbmRhcnktZ3JleTtcbiAgICB9XG4gIH1cbn1cblxuLnNlY29uZGFyeS1zZWFyY2gtaW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4uc2Vjb25kYXJ5LXNlYXJjaC1mb3JtIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTtcbiAgaGVpZ2h0OiA0MHB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1heC13aWR0aDogMzIwcHg7XG4gIH1cbn1cblxuLnNlY29uZGFyeS1zZWFyY2gtbGFiZWwge1xuICBmbGV4LWJhc2lzOiAxNTBweDtcbiAgZmxleC1ncm93OiAxO1xufVxuXG4uc2Vjb25kYXJ5LXNlYXJjaC1maWVsZCB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6ICRzZWNvbmRhcnktZ3JleTtcbiAgZm9udC1zaXplOiAwLjk0cmVtO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG5cbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWdyZXk7XG4gIH1cbn1cblxuLnNlY29uZGFyeS1zZWFyY2gtZmllbGQ6Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24sXG4uc2Vjb25kYXJ5LXNlYXJjaC1maWVsZDo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbi5zZWNvbmRhcnktc2VhcmNoLWZpZWxkOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWJ1dHRvbixcbi5zZWNvbmRhcnktc2VhcmNoLWZpZWxkOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi5zZWNvbmRhcnktc2VhcmNoLXN1Ym1pdCB7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcblxuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICB9XG59XG4iLCIuYm90dG9tLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2Y1ZjY7XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAqICMjIFdpZGdldHMgJiBTaWRlYmFyXG4gICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogc3R5bGVsaW50LWRpc2FibGUgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eSwgc2VsZWN0b3ItbWF4LWNvbXBvdW5kLXNlbGVjdG9ycywgbWF4LWxpbmUtbGVuZ3RoICovXG5cbi53aWRnZXQtYXJlYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gIH1cbn1cblxuLndpZGdldCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuICBhIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcl9fYWxwaGE7XG4gIH1cblxuICA+IHVsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgc2VsZWN0IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLndpZGdldC10aXRsZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuODVyZW07XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW4tdG9wOiAxLjJyZW07XG4gIH1cbn1cblxuLndpZGdldF90ZXh0IHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4ud2lkZ2V0X3RleHQgdWwsXG4ud2lkZ2V0X3RleHQgb2wge1xuICBwYWRkaW5nOiAwIDEuNXJlbTtcbiAgbWFyZ2luOiAwO1xufVxuXG4ud2lkZ2V0X3RleHQgdWwge1xuICBsaXN0LXN0eWxlOiBkaXNjO1xufVxuXG4ud2lkZ2V0X3RleHQgb2wge1xuICBsaXN0LXN0eWxlOiBkZWNpbWFsO1xufVxuXG4ud2lkZ2V0X3RleHQgdWwgbGksXG4ud2lkZ2V0X3RleHQgb2wgbGkge1xuICBib3JkZXI6IDA7XG59XG5cbi53aWRnZXRfdGV4dCB1bCBsaTpsYXN0LWNoaWxkLFxuLndpZGdldF90ZXh0IG9sIGxpOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLndpZGdldF90ZXh0IHVsIGxpIHVsIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4ud2lkZ2V0X3RleHQgdWwgbGkgbGkge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi53aWRnZXRfdGV4dCBvbCBsaSB7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbn1cblxuLndpZGdldF90ZXh0IG9sIGxpICsgbGkge1xuICBtYXJnaW4tdG9wOiAtMXB4O1xufVxuXG4vKiBDYWxlbmRhciB3aWRnZXQgKi9cbi5jYWxlbmRhcl93cmFwIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuXG4gIGEge1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY29sb3JfX2FscGhhO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogJGNvbG9yX19hbHBoYTtcbiAgfVxuXG4gIHRhYmxlIGNhcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICB0aGVhZCxcbiAgdGgsXG4gIHRyLFxuICB0ZCxcbiAgdGZvb3QsXG4gIHRmb290IHRyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLndpZGdldF9jYWxlbmRhciB0aCxcbi53aWRnZXRfY2FsZW5kYXIgdGQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi53aWRnZXRfY2FsZW5kYXIgdGZvb3QgdGQge1xuICBib3JkZXI6IDA7XG59XG5cbi8qIEZvb3RlciB3aWRnZXRzICovXG5cbi5mb290ZXItd2lkZ2V0cyB7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4O1xufVxuXG4ud2lkZ2V0LWFyZWEtZm9vdGVyIHtcbiAgcGFkZGluZzogMDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgICAvL2NvbG9yOiAkY29sb3JfX2FscGhhO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC53aWRnZXQtdGl0bGUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG5cbi53aWRnZXQtYXJlYS1mb290ZXIgLndpZGdldF9jYXRlZ29yaWVzIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5tZWpzLWhvcml6b250YWwtdm9sdW1lLXNsaWRlcixcbi53aWRnZXRfbWV0YSBhLFxuLndpZGdldF9wYWdlcyBhLFxuLndpZGdldF90YWdfY2xvdWQgYSxcbi53aWRnZXRfcmVjZW50X2VudHJpZXMgYSxcbi53aWRnZXRfYXJjaGl2ZSBhLFxuLndpZGdldF9uYXZfbWVudSBhLFxuLndpZGdldF9jYXRlZ29yaWVzIGEsXG4ud2lkZ2V0X3JlY2VudF9jb21tZW50cyBhIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59XG5cbi53aWRnZXQtYXJlYS1mb290ZXIge1xuICAubWVqcy1ob3Jpem9udGFsLXZvbHVtZS1zbGlkZXIsXG4gIC53aWRnZXRfbWV0YSBhLFxuICAud2lkZ2V0X3BhZ2VzIGEsXG4gIC53aWRnZXRfdGFnX2Nsb3VkIGEsXG4gIC53aWRnZXRfcmVjZW50X2VudHJpZXMgYSxcbiAgLndpZGdldF9hcmNoaXZlIGEsXG4gIC53aWRnZXRfbmF2X21lbnUgYSxcbiAgLndpZGdldF9jYXRlZ29yaWVzIGEsXG4gIC53aWRnZXRfcmVjZW50X2NvbW1lbnRzIGEge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbiIsIi5zaWRlYmFyLWxheW91dC1kZWZhdWx0IHtcbiAgLmJsb2ctc2lkZWJhciB7XG4gICAgLndpZGdldCB7XG4gICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjVmNjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgfVxuXG4gICAgLndpZGdldCB1bCB7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC53aWRnZXQgdWwgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG5cbiAgICAud2lkZ2V0IHVsIGxpOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAud2lkZ2V0IHVsIGxpIGEge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cblxuICAgIC53aWRnZXQgdWwgbGkgYTpob3ZlciB7XG4gICAgICBjb2xvcjogJGNvbG9yX19hbHBoYTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAud2lkZ2V0IHVsIGxpIGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcl9fYWxwaGE7XG4gICAgfVxuXG4gICAgLndpZGdldCB1bCBsaS5jdXJyZW50LWNhdCBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIC53aWRnZXQtdGl0bGUge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEdyaWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoJGdyaWQtY29sdW1ucywgMWZyKTtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ29udGFpbmVyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAkZ3JpZC1jb250YWluZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIHdlIGRvbid0IHdhbnQgdGhlIHBhZGRpbmcgdG8gYmUgaW5jbHVkZWQgaW4gY29udGFpbmVyIHdpZHRoXG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLmNvbnRhaW5lciAuY29udGFpbmVyIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDZWxsXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uY2VsbCB7XG4gIGdyaWQtY29sdW1uOiBzcGFuICRncmlkLWNvbHVtbnMgLyBzcGFuICRncmlkLWNvbHVtbnM7XG59XG5cbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gIC5jZWxsLS0jeyRpfSB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gI3skaX0gLyBzcGFuICN7JGl9O1xuICB9XG59XG5cbkBlYWNoICRrZXksICR2YWx1ZSBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGtleSkge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAuY2VsbC0tI3skaX1cXEAjeyRrZXl9IHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gI3skaX0gLyBzcGFuICN7JGl9O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiJGdyaWQtY29udGFpbmVyOiAxMjAwcHggIWRlZmF1bHQ7XG4kZ3JpZC1jb2x1bW5zOiAxMiAhZGVmYXVsdDtcblxuJGdyaWQtZXh0ZW5zaW9uczogKCdhdXRvLWZpdCcpICFkZWZhdWx0O1xuLy8gJ29mZnNldCcsICdncmlkLWdhcCcsICdhdXRvLWZpdCdcblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgbWVkaXVtOiA0OGVtLFxuICBsYXJnZTogNzBlbSxcbikgIWRlZmF1bHQ7XG5cbiRncmlkLWdhcHM6IChcbiAgZGVmYXVsdDogMXJlbSxcbikgIWRlZmF1bHQ7XG5cbiRncmlkLWF1dG8tZml0LWNvbHM6IChcbiAgeHM6IDEwMCUsXG4gIHM6IDUwJSxcbiAgbTogMzMuMzMzMyUsXG4gIGw6IDI1JSxcbikgIWRlZmF1bHQ7XG4iLCJAaWYgaW5kZXgoJGdyaWQtZXh0ZW5zaW9ucywgJ2F1dG8tZml0Jykge1xuICAuZ3JpZC0tYXV0by1maXQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMCwgMWZyKSk7XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJG1pbi1zaXplIGluICRncmlkLWF1dG8tZml0LWNvbHMge1xuICAgIC5ncmlkLS1hdXRvLWZpdC0jeyRuYW1lfSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KCN7JG1pbi1zaXplfSwgMWZyKSk7XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRrZXkpIHtcbiAgICAgIEBlYWNoICRuYW1lLCAkbWluLXNpemUgaW4gJGdyaWQtYXV0by1maXQtY29scyB7XG4gICAgICAgIC5ncmlkLS1hdXRvLWZpdC0jeyRuYW1lfVxcQCN7JGtleX0ge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoI3skbWluLXNpemV9LCAxZnIpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgKiAjIyBIZWFkZXJcbiAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNpdGUtYnJhbmRpbmcge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uc2l0ZS1oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiAjNmEzMDkzOyAvKiBmYWxsYmFjayBmb3Igb2xkIGJyb3dzZXJzICovXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KFxuICAgIHRvIHJpZ2h0LFxuICAgICM2MDI3Y2UsXG4gICAgIzU4M2FiY1xuICApOyAvKiBDaHJvbWUgMTAtMjUsIFNhZmFyaSA1LjEtNiAqL1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgdG8gcmlnaHQsXG4gICAgIzYwMjdjZSxcbiAgICAjNTgzYWJjXG4gICk7IC8qIFczQywgSUUgMTArLyBFZGdlLCBGaXJlZm94IDE2KywgQ2hyb21lIDI2KywgT3BlcmEgMTIrLCBTYWZhcmkgNysgKi9cbn1cbi5zaXRlLXRpdGxlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnNpdGUtdGl0bGUgYSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uc2l0ZS1kZXNjcmlwdGlvbiB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICogIyMgRm9vdGVyXG4gICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zaXRlLWZvb3RlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZDJkMmQ7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogNTBweCAwIDA7XG5cbiAgYSB7XG4gICAgY29sb3I6IHdoaXRlO1xuICB9XG59XG5cbi5mb290ZXItd2lkZ2V0cy0wIC5zaXRlLWZvb3RlciB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5zaXRlLWluZm8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWYxZjFmO1xuICBwYWRkaW5nOiAyMHB4IDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc2l0ZS1pbmZvID4gKiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi5zaXRlLWluZm8gLnBvd2VyZWQtYnkge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLnNpdGUtaW5mbyAuc2VwIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4uc2l0ZS1pbmZvIGEge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgY3VycmVudENvbG9yO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uc2l0ZS1pbmZvIGE6Zm9jdXMsXG4uc2l0ZS1pbmZvIGE6aG92ZXIge1xuICBvcGFjaXR5OiAwLjg7XG59XG5cbi5jb250YWluZXItZGVmYXVsdC13aWRnZXRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4uZ3JpZC1hdXRvIHtcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgLXdlYmtpdC1mbGV4LWdyb3c6IDE7XG4gIC1tcy1mbGV4LXBvc2l0aXZlOiAxO1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi5mb290ZXItd2lkZ2V0cy0xIC5mb290ZXItd2lkZ2V0cyAuZ3JpZC1hdXRvLFxuLmZvb3Rlci13aWRnZXRzLTIgLmZvb3Rlci13aWRnZXRzIC5ncmlkLWF1dG8sXG4uZm9vdGVyLXdpZGdldHMtMyAuZm9vdGVyLXdpZGdldHMgLmdyaWQtYXV0byxcbi5mb290ZXItd2lkZ2V0cy00IC5mb290ZXItd2lkZ2V0cyAuZ3JpZC1hdXRvLFxuLmdyaWQtYXV0byB7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OHJlbSkge1xuICAuZm9vdGVyLXdpZGdldHMtMSAuZm9vdGVyLXdpZGdldHMgLmdyaWQtYXV0byxcbiAgLmZvb3Rlci13aWRnZXRzLTIgLmZvb3Rlci13aWRnZXRzIC5ncmlkLWF1dG8sXG4gIC5mb290ZXItd2lkZ2V0cy0zIC5mb290ZXItd2lkZ2V0cyAuZ3JpZC1hdXRvLFxuICAuZm9vdGVyLXdpZGdldHMtNCAuZm9vdGVyLXdpZGdldHMgLmdyaWQtYXV0byB7XG4gICAgbWluLXdpZHRoOiA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzByZW0pIHtcbiAgLmZvb3Rlci13aWRnZXRzLTEgLmZvb3Rlci13aWRnZXRzIC5ncmlkLWF1dG8ge1xuICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuZm9vdGVyLXdpZGdldHMtMiAuZm9vdGVyLXdpZGdldHMgLmdyaWQtYXV0byB7XG4gICAgbWluLXdpZHRoOiA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cblxuICAuZm9vdGVyLXdpZGdldHMtMyAuZm9vdGVyLXdpZGdldHMgLmdyaWQtYXV0byB7XG4gICAgbWluLXdpZHRoOiAzMy4zMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMlO1xuICB9XG5cbiAgLmZvb3Rlci13aWRnZXRzLTQgLmZvb3Rlci13aWRnZXRzIC5ncmlkLWF1dG8ge1xuICAgIG1pbi13aWR0aDogMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG59XG4iLCIua25vd2xlZGdlYmFzZS1sYXlvdXQtMSB7XG4gIC5sZWFybm1vcmUtY2F0ZWdvcnkge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiAwIDUwcHggMCAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgICB9XG4gIH1cblxuICAubGVhcm5tb3JlLW1ldGEge1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZTFlOWViO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAubGVhcm5tb3JlLWNhdGVnb3J5LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuXG4gIC5sZWFybm1vcmUtY2F0ZWdvcnkgcCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGNvbG9yOiAjNjk2OTY5O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cblxuICAubGVhcm5tb3JlLWNhdGVnb3J5LWNvdW50IHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgY29sb3I6ICM2YjZiNmI7XG4gIH1cblxuICAubGVhcm5tb3JlLWFydGljbGVzLWxpc3Qge1xuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLmxlYXJubW9yZS1hcnRpY2xlcy1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG5cbiAgLmxlYXJubW9yZS1hcnRpY2xlcy1saW5rIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogIzQyNDg1MTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRjb2xvcl9fYWxwaGE7XG4gICAgfVxuICB9XG5cbiAgLmxlYXJubW9yZS1jYXRlZ29yeSAuaWNvbi1uZXdzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgfVxuXG4gIC5sZWFybm1vcmUtY2F0ZWdvcnktbGluayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIGNvbG9yOiAjNzQ2YjdmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqICMjIFNpdGVcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFdyYXBzIGFsbCBjb250ZW50IG9uIHRoZSBwYWdlIHRvIHByZXZlbnRcbi8vIHNjcm9sbGluZyBob3Jpem9udGFsLiBDYW50IGp1c3QgYXBwbHkgdGhpcyB0b1xuLy8gYSBib2R5IHRhZyBiZWNhdXNlIGJ1Z3MgaW4gYnJvd3NlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5zaXRlLXRpdGxlIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnNpdGUtY29udGVudCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbn1cblxuLnNpdGUtbWFpbiB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuICB9XG59XG5cbi5zaXRlLWJyZWFkY3J1bWJzIHtcbiAgcGFkZGluZzogMTVweCAwO1xufVxuXG4uc2l0ZS1icmVhZGNydW1icyBhOmhvdmVyIHtcbiAgY29sb3I6ICRjb2xvcl9fYWxwaGE7XG59XG4iLCIuYXJjaGl2ZS1kZXNjcmlwdGlvbiBwIHtcbiAgY29sb3I6ICM2OTY5Njk7XG59XG5cbi5hcmNoaXZlLFxuLmJsb2csXG4uc2VhcmNoLXJlc3VsdHMge1xuICAuaGVudHJ5IHtcbiAgICBtYXJnaW46IDEuNXJlbSAwO1xuICAgIHBhZGRpbmc6IDAgMCAxLjVyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZmVmZWY7XG4gIH1cblxuICAuZW50cnktdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuXG4gIC5lbnRyeS10aXRsZSBhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC5lbnRyeS10aXRsZSAuaWNvbi1uZXdzIHtcbiAgICB3aWR0aDogMjVweDtcbiAgICBoZWlnaHQ6IDI1cHg7XG4gICAgbWFyZ2luLXRvcDogMnB4O1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICBjb2xvcjogIzY5Njk2OTtcbiAgfVxuXG4gIC5lbnRyeS1tZXRhIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDM4cHg7XG4gICAgfVxuICB9XG5cbiAgLmVudHJ5LXRlcm1zIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogIzY5Njk2OTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxuXG4gIC5lbnRyeS10ZXJtcyAuc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGNsaXA6IGluaXRpYWw7XG4gICAgY2xpcC1wYXRoOiBpbml0aWFsO1xuICAgIG1hcmdpbjogMCAzcHggMCAycHg7XG4gIH1cblxuICAucG9zdGVkLW9uLW91dGVyIHtcbiAgICBjb2xvcjogIzY5Njk2OTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjNjk2OTY5O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5lbnRyeS1tZXRhLW91dGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG59XG5cbi50YWdzLW91dGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICogIyMgUG9zdHMgYW5kIHBhZ2VzXG4gICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogc3R5bGVsaW50LWRpc2FibGUgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eSAqL1xuLnBhZ2UtaGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgbWF4LXdpZHRoOiA2MDBweDtcbn1cblxuLnN0aWNreSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgLmljb24tcGluIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICB0b3A6IC0yM3B4O1xuICAgIHdpZHRoOiAyMnB4O1xuICAgIGhlaWdodDogMjJweDtcbiAgfVxufVxuXG4ucG9zdDpub3QoLnN0aWNreSkgLmljb24tcGluIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmhlbnRyeSB7XG4gIG1hcmdpbjogMnJlbSAwO1xufVxuXG4uYmxvZyAuaGVudHJ5IHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4udXBkYXRlZDpub3QoLnB1Ymxpc2hlZCkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGFnZS1jb250ZW50LFxuLmVudHJ5LWNvbnRlbnQsXG4uZW50cnktc3VtbWFyeSB7XG4gIG1hcmdpbjogMXJlbSAwO1xufVxuXG4uZW50cnktdGl0bGUge1xuICBmb250LXNpemU6IDJyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICBhIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGNvbG9yOiAkY29sb3JfX3RleHQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkY29sb3JfX2FscGhhO1xuICAgIH1cbiAgfVxufVxuXG4uZW50cnktZXhjZXJwdCB7XG4gIGNvbG9yOiAjNjk2OTY5O1xuICBmb250LXNpemU6IDE1cHg7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmVudHJ5LXRlcm1zIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMTVyZW0gMC4zNXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgbWFyZ2luOiAwLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQtYWxwaGE7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXM7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yX19hbHBoYTtcbiAgfVxufVxuXG4uZW50cnktY29udGVudCBhIHtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JfX2FscGhhO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yX19iZXRhO1xuICB9XG59XG5cbi5wYWdlLWxpbmtzIHtcbiAgbWFyZ2luOiAwLjVyZW0gMCAxLjVyZW07XG4gIGNsZWFyOiBib3RoO1xuXG4gID4gKiB7XG4gICAgcGFkZGluZzogMC41cmVtO1xuICB9XG59XG5cbi5lbnRyeS1kZXRhaWxzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cblxuLmVudHJ5LWNhdGVnb3JpZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBmb250LXNpemU6IDE1cHg7XG59XG5cbi5wb3N0LWNhdGVnb3JpZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgbGkge1xuICAgIG1hcmdpbjogMCAwLjI1cmVtO1xuICB9XG59XG5cbi5wb3N0LXRodW1ibmFpbCB7XG4gIG1hcmdpbjogMS41cmVtIDA7XG59XG5cbi5lbnRyeS1jb250ZW50IHtcbiAgLmVudHJ5LW1ldGEge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgY29sb3I6ICRjb2xvcl9fdGV4dDtcbiAgICBmb250LXNpemU6IDEzcHg7XG5cbiAgICBhIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yX19iYWNrZ3JvdW5kLWFscGhhO1xuICAgICAgY29sb3I6ICRjb2xvcl9fdGV4dDtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcl9fYmV0YTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmVudHJ5LXRlcm1zIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjNjk2OTY5O1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59XG5cbi5lbnRyeS10ZXJtcyAuc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgY2xpcDogaW5pdGlhbDtcbiAgY2xpcC1wYXRoOiBpbml0aWFsO1xuICBtYXJnaW46IDAgM3B4IDAgMnB4O1xufVxuXG4uZW50cnktaGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnBvc3RlZC1vbi1vdXRlciB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogIzY5Njk2OTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG59XG5cbi5lbnRyeS1tZXRhLW91dGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnNpbmdsZS1wb3N0IC5wb3N0ZWQtb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG4iLCIudS1hbGlnbi12ZXJ0aWNhbGx5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEJhc2ljIHByaW50IHN0eWxlc1xuLy8gWW91IG1heSB3YW50IHRvIGV4dGVuZCB0aGVtIHRvIG1hdGNoIHNwZWNpZmljIHByb2plY3Rcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbkBtZWRpYSBwcmludCB7XG4gICoge1xuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaHR0cDovL3d3dy5zYW5iZWlqaS5jb20vYXJjaGl2ZXMvOTUzXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIGEsXG4gIGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cblxuICBbaHJlZl06OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoJyBhdHRyKGhyZWYpICcpXCI7XG4gIH1cblxuICBbdGl0bGVdOjphZnRlciB7XG4gICAgY29udGVudDogXCIgKCcgYXR0cih0aXRsZSkgJylcIjtcbiAgfVxuXG4gIC8vIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXG4gIC8vIG9yIHVzZSB0aGUgYGphdmFzY3JpcHQ6YCBwc2V1ZG8gcHJvdG9jb2xcblxuICBbaHJlZl49JyMnXTo6YWZ0ZXIsXG4gIFtocmVmXj0namF2YXNjcmlwdDonXTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNTM1MzUzO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuXG4gIC8vIFByaW50aW5nIFRhYmxlczpcbiAgLy8gaHR0cDovL2Nzcy1kaXNjdXNzLmluY3V0aW8uY29tL3dpa2kvUHJpbnRpbmdfVGFibGVzXG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gIH1cblxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cblxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgcCxcbiAgaDIsXG4gIGgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMztcbiAgfVxuXG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gIH1cbn1cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbiJdfQ== */
