@charset "UTF-8";
/*
 *  Version 3.6.13
 */
/* ========================================================================
   Component: Base
 ========================================================================== */
/*
 * 1. Set `font-size` to support `rem` units
 *    Not using `font` property because a leading hyphen (e.g. -apple-system) causes the font to break in IE11 and Edge
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Style
 */
html {
	/* 1 */
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	font-size: 16px;
	font-weight: normal;
	line-height: 1.5;
	/* 2 */
	-webkit-text-size-adjust: 100%;
	/* 3 */
	background: #fff;
	color: #666;
}

/*
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/* Links
 ========================================================================== */
/*
 * Remove the outline on focused links when they are also active or hovered
 */
a:active,
a:hover {
	outline: none;
}

/*
 * Style
 */
a,
.uk-link {
	color: #1e87f0;
	text-decoration: none;
	cursor: pointer;
}

a:hover,
.uk-link:hover,
.uk-link-toggle:hover .uk-link,
.uk-link-toggle:focus .uk-link {
	color: #0f6ecd;
	text-decoration: underline;
}

/* Text-level semantics
 ========================================================================== */
/*
 * 1. Add the correct text decoration in Edge.
 * 2. The shorthand declaration `underline dotted` is not supported in Safari.
 */
abbr[title] {
	/* 1 */
	text-decoration: underline dotted;
	/* 2 */
	-webkit-text-decoration-style: dotted;
}

/*
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/*
 * 1. Consolas has a better baseline in running text compared to `Courier`
 * 2. Correct the odd `em` font sizing in all browsers.
 * 3. Style
 */
:not(pre) > code,
:not(pre) > kbd,
:not(pre) > samp {
	/* 1 */
	font-family: Consolas, monaco, monospace;
	/* 2 */
	font-size: 0.875rem;
	/* 3 */
	color: #f0506e;
	white-space: nowrap;
	padding: 2px 6px;
	background: #f8f8f8;
}

/*
 * Emphasize
 */
em {
	color: #f0506e;
}

/*
 * Insert
 */
ins {
	background: #ffd;
	color: #666;
	text-decoration: none;
}

/*
 * Mark
 */
mark {
	background: #ffd;
	color: #666;
}

/*
 * Quote
 */
q {
	font-style: italic;
}

/*
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/*
 * Prevents `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

/* Embedded content
 ========================================================================== */
/*
 * Remove the gap between embedded content and the bottom of their containers.
 */
audio,
canvas,
iframe,
img,
svg,
video {
	vertical-align: middle;
}

/*
 * 1. Add responsiveness.
 * 2. Auto-scale the height. Only needed if `height` attribute is present.
 * 3. Corrects responsive `max-width` behavior if padding and border are used.
 * 4. Exclude SVGs for IE11 because they don't preserve their aspect ratio.
 */
canvas,
img,
video {
	/* 1 */
	max-width: 100%;
	/* 2 */
	height: auto;
	/* 3 */
	box-sizing: border-box;
}

/* 4 */
@supports (display: block) {
	svg {
		max-width: 100%;
		height: auto;
		box-sizing: border-box;
	}
}

/*
 * Hide the overflow in IE.
 */
svg:not(:root) {
	overflow: hidden;
}

/*
 * 1. Fix lazy loading images if parent element is set to `display: inline` and has `overflow: hidden`.
 * 2. Hide `alt` text for lazy loading images.
 * Note: Selector for background while loading img[data-src*='.jpg'][src*='data:image'] { background: grey; }
 */
img:not([src]) {
	/* 1 */
	min-width: 1px;
	/* 2 */
	visibility: hidden;
}

/*
 * Iframe
 * Remove border in all browsers
 */
iframe {
	border: 0;
}

/* Block elements
 ========================================================================== */
/*
 * Margins
 */
p,
ul,
ol,
dl,
pre,
address,
fieldset,
figure {
	margin: 0 0 20px 0;
}

/* Add margin if adjacent element */
* + p,
* + ul,
* + ol,
* + dl,
* + pre,
* + address,
* + fieldset,
* + figure {
	margin-top: 20px;
}

/* Headings
 ========================================================================== */
h1, .uk-h1,
h2, .uk-h2,
h3, .uk-h3,
h4, .uk-h4,
h5, .uk-h5,
h6, .uk-h6,
.uk-heading-small,
.uk-heading-medium,
.uk-heading-large,
.uk-heading-xlarge,
.uk-heading-2xlarge {
	margin: 0 0 20px 0;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	font-weight: normal;
	color: #333;
	text-transform: none;
}

/* Add margin if adjacent element */
* + h1, * + .uk-h1,
* + h2, * + .uk-h2,
* + h3, * + .uk-h3,
* + h4, * + .uk-h4,
* + h5, * + .uk-h5,
* + h6, * + .uk-h6,
* + .uk-heading-small,
* + .uk-heading-medium,
* + .uk-heading-large,
* + .uk-heading-xlarge,
* + .uk-heading-2xlarge {
	margin-top: 40px;
}

/*
 * Sizes
 */
h1, .uk-h1 {
	font-size: 2.23125rem;
	line-height: 1.2;
}

h2, .uk-h2 {
	font-size: 1.7rem;
	line-height: 1.3;
}

h3, .uk-h3 {
	font-size: 1.5rem;
	line-height: 1.4;
}

h4, .uk-h4 {
	font-size: 1.25rem;
	line-height: 1.4;
}

h5, .uk-h5 {
	font-size: 16px;
	line-height: 1.4;
}

h6, .uk-h6 {
	font-size: 0.875rem;
	line-height: 1.4;
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	h1, .uk-h1 {
		font-size: 2.625rem;
	}
	h2, .uk-h2 {
		font-size: 2rem;
	}
}

/* Lists
 ========================================================================== */
ul,
ol {
	padding-left: 30px;
}

/*
 * Reset margin for nested lists
 */
ul > li > ul,
ul > li > ol,
ol > li > ol,
ol > li > ul {
	margin: 0;
}

/* Description lists
 ========================================================================== */
dt {
	font-weight: bold;
}

dd {
	margin-left: 0;
}

/* Horizontal rules
 ========================================================================== */
/*
 * 1. Show the overflow in Chrome, Edge and IE.
 * 2. Add the correct text-align in Edge and IE.
 * 3. Style
 */
hr, .uk-hr {
	/* 1 */
	overflow: visible;
	/* 2 */
	text-align: inherit;
	/* 3 */
	margin: 0 0 20px 0;
	border: 0;
	border-top: 1px solid #396e90;
}

/* Add margin if adjacent element */
* + hr,
* + .uk-hr {
	margin-top: 20px;
}

/* Address
 ========================================================================== */
address {
	font-style: normal;
}

/* Blockquotes
 ========================================================================== */
blockquote {
	margin: 0 0 20px 0;
	font-size: 1.25rem;
	line-height: 1.5;
	font-style: italic;
	color: #333;
}

/* Add margin if adjacent element */
* + blockquote {
	margin-top: 20px;
}

/*
 * Content
 */
blockquote p:last-of-type {
	margin-bottom: 0;
}

blockquote footer {
	margin-top: 10px;
	font-size: 0.875rem;
	line-height: 1.5;
	color: #666;
}

blockquote footer::before {
	content: "— ";
}

/* Preformatted text
 ========================================================================== */
/*
 * 1. Contain overflow in all browsers.
 */
pre {
	font: 0.875rem / 1.5 Consolas, monaco, monospace;
	color: #666;
	-moz-tab-size: 4;
	tab-size: 4;
	/* 1 */
	overflow: auto;
	padding: 10px;
	border: 1px solid #396e90;
	border-radius: 3px;
	background: #fff;
}

pre code {
	font-family: Consolas, monaco, monospace;
}

/* Selection pseudo-element
 ========================================================================== */
::selection {
	background: #39f;
	color: #fff;
	text-shadow: none;
}

/* HTML5 elements
 ========================================================================== */
/*
 * 1. Add the correct display in Edge, IE 10+, and Firefox.
 * 2. Add the correct display in IE.
 */
details,
main {
	/* 2 */
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/*
 * Add the correct display in IE.
 */
template {
	display: none;
}

/* Pass media breakpoints to JS
 ========================================================================== */
/*
 * Breakpoints
 */
.uk-breakpoint-s::before {
	content: "640px";
}

.uk-breakpoint-m::before {
	content: "960px";
}

.uk-breakpoint-l::before {
	content: "1200px";
}

.uk-breakpoint-xl::before {
	content: "1600px";
}

:root {
	--uk-breakpoint-s: 640px;
	--uk-breakpoint-m: 960px;
	--uk-breakpoint-l: 1200px;
	--uk-breakpoint-xl: 1600px;
}

/* ========================================================================
   Component: Link
 ========================================================================== */
/* Muted
 ========================================================================== */
a.uk-link-muted,
.uk-link-muted a {
	color: #999;
}

a.uk-link-muted:hover,
.uk-link-muted a:hover,
.uk-link-toggle:hover .uk-link-muted,
.uk-link-toggle:focus .uk-link-muted {
	color: #666;
}

/* Text
 ========================================================================== */
a.uk-link-text,
.uk-link-text a {
	color: inherit;
}

a.uk-link-text:hover,
.uk-link-text a:hover,
.uk-link-toggle:hover .uk-link-text,
.uk-link-toggle:focus .uk-link-text {
	color: #999;
}

/* Heading
 ========================================================================== */
a.uk-link-heading,
.uk-link-heading a {
	color: inherit;
}

a.uk-link-heading:hover,
.uk-link-heading a:hover,
.uk-link-toggle:hover .uk-link-heading,
.uk-link-toggle:focus .uk-link-heading {
	color: #1e87f0;
	text-decoration: none;
}

/* Reset
 ========================================================================== */
/*
 * `!important` needed to override inverse component
 */
a.uk-link-reset,
.uk-link-reset a {
	color: inherit !important;
	text-decoration: none !important;
}

/* Toggle
 ========================================================================== */
.uk-link-toggle {
	color: inherit !important;
	text-decoration: none !important;
}

.uk-link-toggle:focus {
	outline: none;
}

/* ========================================================================
   Component: Heading
 ========================================================================== */
.uk-heading-small {
	font-size: 2.6rem;
	line-height: 1.2;
}

.uk-heading-medium {
	font-size: 2.8875rem;
	line-height: 1.1;
}

.uk-heading-large {
	font-size: 3.4rem;
	line-height: 1.1;
}

.uk-heading-xlarge {
	font-size: 4rem;
	line-height: 1;
}

.uk-heading-2xlarge {
	font-size: 6rem;
	line-height: 1;
}

/* Tablet Landscape and bigger */
@media (min-width: 960px) {
	.uk-heading-small {
		font-size: 3.25rem;
	}
	.uk-heading-medium {
		font-size: 3.5rem;
	}
	.uk-heading-large {
		font-size: 4rem;
	}
	.uk-heading-xlarge {
		font-size: 6rem;
	}
	.uk-heading-2xlarge {
		font-size: 8rem;
	}
}

/* Laptop and bigger */
@media (min-width: 1200px) {
	.uk-heading-medium {
		font-size: 4rem;
	}
	.uk-heading-large {
		font-size: 6rem;
	}
	.uk-heading-xlarge {
		font-size: 8rem;
	}
	.uk-heading-2xlarge {
		font-size: 11rem;
	}
}

/* Primary
   Deprecated: Use `uk-heading-medium` instead
 ========================================================================== */
/* Tablet landscape and bigger */
/* Desktop and bigger */
/* Hero
   Deprecated: Use `uk-heading-xlarge` instead
 ========================================================================== */
/* Tablet landscape and bigger */
/* Desktop and bigger */
/* Divider
 ========================================================================== */
.uk-heading-divider {
	padding-bottom: calc(5px + 0.1em);
	border-bottom: calc(0.2px + 0.05em) solid #396e90;
}

/* Bullet
 ========================================================================== */
.uk-heading-bullet {
	position: relative;
}

/*
 * 1. Using `inline-block` to make it work with text alignment
 * 2. Center vertically
 * 3. Style
 */
.uk-heading-bullet::before {
	content: "";
	/* 1 */
	display: inline-block;
	/* 2 */
	position: relative;
	top: calc(-0.1 * 1em);
	vertical-align: middle;
	/* 3 */
	height: calc(4px + 0.7em);
	margin-right: calc(5px + 0.2em);
	border-left: calc(5px + 0.1em) solid #396e90;
}

/* Line
 ========================================================================== */
/*
 * Clip the child element
 */
.uk-heading-line {
	overflow: hidden;
}

/*
 * Extra markup is needed to make it work with text align
 */
.uk-heading-line > * {
	display: inline-block;
	position: relative;
}

/*
 * 1. Center vertically
 * 2. Make the element as large as possible. It's clipped by the container.
 * 3. Style
 */
.uk-heading-line > ::before,
.uk-heading-line > ::after {
	content: "";
	/* 1 */
	position: absolute;
	top: calc(50% - (calc(0.2px + 0.05em) / 2));
	/* 2 */
	width: 2000px;
	/* 3 */
	border-bottom: calc(0.2px + 0.05em) solid #396e90;
}

.uk-heading-line > ::before {
	right: 100%;
	margin-right: calc(5px + 0.3em);
}

.uk-heading-line > ::after {
	left: 100%;
	margin-left: calc(5px + 0.3em);
}

/* ========================================================================
   Component: Divider
 ========================================================================== */
/*
 * 1. Reset default `hr`
 * 2. Set margin if a `div` is used for semantical reason
 */
[class*='uk-divider'] {
	/* 1 */
	border: none;
	/* 2 */
	margin-bottom: 20px;
}

/* Add margin if adjacent element */
* + [class*='uk-divider'] {
	margin-top: 20px;
}

/* Icon
 ========================================================================== */
.uk-divider-icon {
	position: relative;
	height: 20px;
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22none%22%20stroke%3D%22%23396e90%22%20stroke-width%3D%222%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%227%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
	background-repeat: no-repeat;
	background-position: 50% 50%;
}

.uk-divider-icon::before,
.uk-divider-icon::after {
	content: "";
	position: absolute;
	top: 50%;
	max-width: calc(50% - (50px / 2));
	border-bottom: 1px solid #396e90;
}

.uk-divider-icon::before {
	right: calc(50% + (50px / 2));
	width: 100%;
}

.uk-divider-icon::after {
	left: calc(50% + (50px / 2));
	width: 100%;
}

/* Small
 ========================================================================== */
/*
 * 1. Fix height because of `inline-block`
 * 2. Using ::after and inline-block to make `text-align` work
 */
/* 1 */
.uk-divider-small {
	line-height: 0;
}

/* 2 */
.uk-divider-small::after {
	content: "";
	display: inline-block;
	width: 100px;
	max-width: 100%;
	border-top: 1px solid #396e90;
	vertical-align: top;
}

/* Vertical
 ========================================================================== */
.uk-divider-vertical {
	width: 1px;
	height: 100px;
	margin-left: auto;
	margin-right: auto;
	border-left: 1px solid #396e90;
}

/* ========================================================================
   Component: List
 ========================================================================== */
.uk-list {
	padding: 0;
	list-style: none;
}

/*
 * Remove margin from the last-child
 */
.uk-list > * > :last-child {
	margin-bottom: 0;
}

/*
 * Style
 */
.uk-list > :nth-child(n+2),
.uk-list > * > ul {
	margin-top: 10px;
}

/* Marker modifiers
 * Moving `::marker` inside `::before` to style it differently
 * To style the `::marker` is currently only supported in Firefox and Safari
 ========================================================================== */
.uk-list-disc > *,
.uk-list-circle > *,
.uk-list-square > *,
.uk-list-decimal > *,
.uk-list-hyphen > * {
	padding-left: 30px;
}

/*
 * Type modifiers
 */
.uk-list-decimal {
	counter-reset: decimal;
}

.uk-list-decimal > * {
	counter-increment: decimal;
}

[class*='uk-list'] > ::before {
	content: '';
	position: relative;
	left: -30px;
	width: 30px;
	height: 1.5em;
	margin-bottom: -1.5em;
	display: list-item;
	list-style-position: inside;
	text-align: right;
}

.uk-list-disc > ::before {
	list-style-type: disc;
}

.uk-list-circle > ::before {
	list-style-type: circle;
}

.uk-list-square > ::before {
	list-style-type: square;
}

.uk-list-decimal > ::before {
	content: counter(decimal, decimal) " . ";
}

.uk-list-hyphen > ::before {
	content: '–\00A0\00A0';
}

/*
 * Color modifiers
 */
.uk-list-muted > ::before {
	color: #999 !important;
}

.uk-list-emphasis > ::before {
	color: #333 !important;
}

.uk-list-primary > ::before {
	color: #1e87f0 !important;
}

.uk-list-secondary > ::before {
	color: #222 !important;
}

/* Image bullet modifier
 ========================================================================== */
.uk-list-bullet > * {
	padding-left: 30px;
}

.uk-list-bullet > ::before {
	content: "";
	position: relative;
	left: -30px;
	width: 30px;
	height: 1.5em;
	margin-bottom: -1.5em;
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22%23666%22%20cx%3D%223%22%20cy%3D%223%22%20r%3D%223%22%20%2F%3E%0A%3C%2Fsvg%3E");
	background-repeat: no-repeat;
	background-position: 50% 50%;
}

/* Style modifiers
 ========================================================================== */
/*
 * Divider
 */
.uk-list-divider > :nth-child(n+2) {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid #396e90;
}

/*
 * Striped
 */
.uk-list-striped > * {
	padding: 10px 10px;
}

.uk-list-striped > *:nth-of-type(odd) {
	border-top: 1px solid #396e90;
	border-bottom: 1px solid #396e90;
}

.uk-list-striped > :nth-of-type(odd) {
	background: #f8f8f8;
}

.uk-list-striped > :nth-child(n+2) {
	margin-top: 0;
}

/* Size modifier
 ========================================================================== */
.uk-list-large > :nth-child(n+2),
.uk-list-large > * > ul {
	margin-top: 20px;
}

.uk-list-collapse > :nth-child(n+2),
.uk-list-collapse > * > ul {
	margin-top: 0;
}

/*
 * Divider
 */
.uk-list-large.uk-list-divider > :nth-child(n+2) {
	margin-top: 20px;
	padding-top: 20px;
}

.uk-list-collapse.uk-list-divider > :nth-child(n+2) {
	margin-top: 0;
	padding-top: 0;
}

/*
 * Striped
 */
.uk-list-large.uk-list-striped > * {
	padding: 20px 10px;
}

.uk-list-collapse.uk-list-striped > * {
	padding-top: 0;
	padding-bottom: 0;
}

.uk-list-large.uk-list-striped > :nth-child(n+2),
.uk-list-collapse.uk-list-striped > :nth-child(n+2) {
	margin-top: 0;
}

/* ========================================================================
   Component: Description list
 ========================================================================== */
/*
 * Term
 */
.uk-description-list > dt {
	color: #333;
	font-size: 0.875rem;
	font-weight: normal;
	text-transform: uppercase;
}

.uk-description-list > dt:nth-child(n+2) {
	margin-top: 20px;
}

/*
 * Description
 */
/* Style modifier
 ========================================================================== */
/*
 * Line
 */
.uk-description-list-divider > dt:nth-child(n+2) {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid #396e90;
}

/* ========================================================================
   Component: Table
 ========================================================================== */
/*
 * 1. Remove most spacing between table cells.
 * 2. Behave like a block element
 * 3. Style
 */
.uk-table {
	/* 1 */
	border-collapse: collapse;
	border-spacing: 0;
	/* 2 */
	width: 100%;
	/* 3 */
	margin-bottom: 20px;
}

/* Add margin if adjacent element */
* + .uk-table {
	margin-top: 20px;
}

/* Header cell
 ========================================================================== */
/*
 * 1. Style
 */
.uk-table th {
	padding: 16px 12px;
	text-align: left;
	vertical-align: bottom;
	/* 1 */
	font-size: 0.875rem;
	font-weight: normal;
	color: #999;
	text-transform: uppercase;
}

/* Cell
 ========================================================================== */
.uk-table td {
	padding: 16px 12px;
	vertical-align: top;
}

/*
 * Remove margin from the last-child
 */
.uk-table td > :last-child {
	margin-bottom: 0;
}

/* Footer
 ========================================================================== */
.uk-table tfoot {
	font-size: 0.875rem;
}

/* Caption
 ========================================================================== */
.uk-table caption {
	font-size: 0.875rem;
	text-align: left;
	color: #999;
}

/* Alignment modifier
 ========================================================================== */
.uk-table-middle,
.uk-table-middle td {
	vertical-align: middle !important;
}

/* Style modifiers
 ========================================================================== */
/*
 * Divider
 */
.uk-table-divider > tr:not(:first-child),
.uk-table-divider > :not(:first-child) > tr,
.uk-table-divider > :first-child > tr:not(:first-child) {
	border-top: 1px solid #c4d0d8;
}

/*
 * Striped
 */
.uk-table-striped > tr:nth-of-type(odd),
.uk-table-striped tbody tr:nth-of-type(odd) {
	background: #f8f8f8;
	border-top: 1px solid #c4d0d8;
	border-bottom: 1px solid #c4d0d8;
}

/*
 * Hover
 */
.uk-table-hover > tr:hover,
.uk-table-hover tbody tr:hover {
	background: #ffd;
}

/* Active state
 ========================================================================== */
.uk-table > tr.uk-active,
.uk-table tbody tr.uk-active {
	background: #ffd;
}

/* Size modifier
 ========================================================================== */
.uk-table-small th,
.uk-table-small td {
	padding: 10px 12px;
}

.uk-table-large th,
.uk-table-large td {
	padding: 22px 12px;
}

/* Justify modifier
 ========================================================================== */
.uk-table-justify th:first-child,
.uk-table-justify td:first-child {
	padding-left: 0;
}

.uk-table-justify th:last-child,
.uk-table-justify td:last-child {
	padding-right: 0;
}

/* Cell size modifier
 ========================================================================== */
.uk-table-shrink {
	width: 1px;
}

.uk-table-expand {
	min-width: 150px;
}

/* Cell link modifier
 ========================================================================== */
/*
 * Does not work with `uk-table-justify` at the moment
 */
.uk-table-link {
	padding: 0 !important;
}

.uk-table-link > a {
	display: block;
	padding: 16px 12px;
}

.uk-table-small .uk-table-link > a {
	padding: 10px 12px;
}

/* Responsive table
 ========================================================================== */
/* Phone landscape and smaller */
@media (max-width: 959px) {
	.uk-table-responsive,
	.uk-table-responsive tbody,
	.uk-table-responsive th,
	.uk-table-responsive td,
	.uk-table-responsive tr {
		display: block;
	}
	.uk-table-responsive thead {
		display: none;
	}
	.uk-table-responsive th,
	.uk-table-responsive td {
		width: auto !important;
		max-width: none !important;
		min-width: 0 !important;
		overflow: visible !important;
		white-space: normal !important;
	}
	.uk-table-responsive th:not(:first-child):not(.uk-table-link),
	.uk-table-responsive td:not(:first-child):not(.uk-table-link),
	.uk-table-responsive .uk-table-link:not(:first-child) > a {
		padding-top: 5px !important;
	}
	.uk-table-responsive th:not(:last-child):not(.uk-table-link),
	.uk-table-responsive td:not(:last-child):not(.uk-table-link),
	.uk-table-responsive .uk-table-link:not(:last-child) > a {
		padding-bottom: 5px !important;
	}
	.uk-table-justify.uk-table-responsive th,
	.uk-table-justify.uk-table-responsive td {
		padding-left: 0;
		padding-right: 0;
	}
}

.uk-table tbody tr {
	transition: background-color 0.1s linear;
}

/* ========================================================================
   Component: Icon
 ========================================================================== */
/*
 * Note: 1. - 7. is required for `button` elements. Needed for Close and Form Icon component.
 * 1. Remove margins in Chrome, Safari and Opera.
 * 2. Remove borders for `button`.
 * 3. Remove border-radius in Chrome.
 * 4. Address `overflow` set to `hidden` in IE.
 * 5. Correct `font` properties and `color` not being inherited for `button`.
 * 6. Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 7. Remove default `button` padding and background color
 * 8. Style
 * 9. Fill all SVG elements with the current text color if no `fill` attribute is set
 * 10. Let the container fit the height of the icon
 */
.uk-icon {
	/* 1 */
	margin: 0;
	/* 2 */
	border: none;
	/* 3 */
	border-radius: 0;
	/* 4 */
	overflow: visible;
	/* 5 */
	font: inherit;
	color: inherit;
	/* 6 */
	text-transform: none;
	/* 7. */
	padding: 0;
	background-color: transparent;
	/* 8 */
	display: inline-block;
	/* 9 */
	fill: currentcolor;
	/* 10 */
	line-height: 0;
}

/* Required for `button`. */
button.uk-icon:not(:disabled) {
	cursor: pointer;
}

/*
 * Remove the inner border and padding in Firefox.
 */
.uk-icon::-moz-focus-inner {
	border: 0;
	padding: 0;
}

/*
 * Set the fill and stroke color of all SVG elements to the current text color
 */
.uk-icon:not(.uk-preserve) [fill*='#']:not(.uk-preserve) {
	fill: currentcolor;
}

.uk-icon:not(.uk-preserve) [stroke*='#']:not(.uk-preserve) {
	stroke: currentcolor;
}

/*
 * Fix Firefox blurry SVG rendering: https://bugzilla.mozilla.org/show_bug.cgi?id=1046835
 */
.uk-icon > * {
	transform: translate(0, 0);
}

/* Image modifier
 ========================================================================== */
/*
 * Display images in icon dimensions
 */
.uk-icon-image {
	width: 20px;
	height: 20px;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
}

/* Style modifiers
 ========================================================================== */
/*
 * Link
 */
.uk-icon-link {
	color: #999;
}

.uk-icon-link:hover,
.uk-icon-link:focus {
	color: #666;
	outline: none;
}

/* OnClick + Active */
.uk-icon-link:active,
.uk-active > .uk-icon-link {
	color: #595959;
}

/*
 * Button
 * 1. Center icon vertically and horizontally
 */
.uk-icon-button {
	box-sizing: border-box;
	width: 36px;
	height: 36px;
	border-radius: 500px;
	background: #f8f8f8;
	color: #999;
	vertical-align: middle;
	/* 1 */
	display: inline-flex;
	justify-content: center;
	align-items: center;
	transition: 0.1s ease-in-out;
	transition-property: color, background-color;
}

/* Hover + Focus */
.uk-icon-button:hover,
.uk-icon-button:focus {
	background-color: #ebebeb;
	color: #666;
	outline: none;
}

/* OnClick + Active */
.uk-icon-button:active,
.uk-active > .uk-icon-button {
	background-color: #dfdfdf;
	color: #666;
}

/* ========================================================================
   Component: Form Range
 ========================================================================== */
/*
 * 1. Normalize and defaults
 * 2. Prevent content overflow if a fixed width is used
 * 3. Take the full width
 * 4. Remove default style
 * 5. Remove white background in Chrome
 * 6. Remove padding in IE11
 */
.uk-range {
	/* 1 */
	box-sizing: border-box;
	margin: 0;
	vertical-align: middle;
	/* 2 */
	max-width: 100%;
	/* 3 */
	width: 100%;
	/* 4 */
	-webkit-appearance: none;
	/* 5 */
	background: transparent;
	/* 6 */
	padding: 0;
}

/* Focus */
.uk-range:focus {
	outline: none;
}

.uk-range::-moz-focus-outer {
	border: none;
}

/* IE11 Reset */
.uk-range::-ms-track {
	height: 15px;
	background: transparent;
	border-color: transparent;
	color: transparent;
}

/*
 * Improves consistency of cursor style for clickable elements
 */
.uk-range:not(:disabled)::-webkit-slider-thumb {
	cursor: pointer;
}

.uk-range:not(:disabled)::-moz-range-thumb {
	cursor: pointer;
}

.uk-range:not(:disabled)::-ms-thumb {
	cursor: pointer;
}

/* Thumb
 ========================================================================== */
/*
 * 1. Reset
 * 2. Style
 */
/* Webkit */
.uk-range::-webkit-slider-thumb {
	/* 1 */
	-webkit-appearance: none;
	margin-top: -7px;
	/* 2 */
	height: 15px;
	width: 15px;
	border-radius: 500px;
	background: #fff;
	border: 1px solid #2b526b;
}

/* Firefox */
.uk-range::-moz-range-thumb {
	/* 1 */
	border: none;
	/* 2 */
	height: 15px;
	width: 15px;
	border-radius: 500px;
	background: #fff;
	border: 1px solid #2b526b;
}

/* Edge */
.uk-range::-ms-thumb {
	/* 1 */
	margin-top: 0;
}

/* IE11 */
.uk-range::-ms-thumb {
	/* 1 */
	border: none;
	/* 2 */
	height: 15px;
	width: 15px;
	border-radius: 500px;
	background: #fff;
	border: 1px solid #2b526b;
}

/* Edge + IE11 */
.uk-range::-ms-tooltip {
	display: none;
}

/* Track
 ========================================================================== */
/*
 * 1. Safari doesn't have a focus state. Using active instead.
 */
/* Webkit */
.uk-range::-webkit-slider-runnable-track {
	height: 3px;
	background: #ebebeb;
	border-radius: 500px;
}

.uk-range:focus::-webkit-slider-runnable-track,
.uk-range:active::-webkit-slider-runnable-track {
	background: #d2d2d2;
}

/* Firefox */
.uk-range::-moz-range-track {
	height: 3px;
	background: #ebebeb;
	border-radius: 500px;
}

.uk-range:focus::-moz-range-track {
	background: #d2d2d2;
}

/* Edge */
.uk-range::-ms-fill-lower,
.uk-range::-ms-fill-upper {
	height: 3px;
	background: #ebebeb;
	border-radius: 500px;
}

.uk-range:focus::-ms-fill-lower,
.uk-range:focus::-ms-fill-upper {
	background: #d2d2d2;
}

/* ========================================================================
   Component: Form
 ========================================================================== */
/*
 * 1. Define consistent box sizing.
 *    Default is `content-box` with following exceptions set to `border-box`
 *    `select`, `input[type="checkbox"]` and `input[type="radio"]`
 *    `input[type="search"]` in Chrome, Safari and Opera
 *    `input[type="color"]` in Firefox
 * 2. Address margins set differently in Firefox/IE and Chrome/Safari/Opera.
 * 3. Remove `border-radius` in iOS.
 * 4. Change font properties to `inherit` in all browsers.
 */
.uk-input,
.uk-select,
.uk-textarea,
.uk-radio,
.uk-checkbox {
	/* 1 */
	box-sizing: border-box;
	/* 2 */
	margin: 0;
	/* 3 */
	border-radius: 0;
	/* 4 */
	font: inherit;
}

/*
 * Show the overflow in Edge.
 */
.uk-input {
	overflow: visible;
}

/*
 * Remove the inheritance of text transform in Firefox.
 */
.uk-select {
	text-transform: none;
}

/*
 * 1. Change font properties to `inherit` in all browsers
 * 2. Don't inherit the `font-weight` and use `bold` instead.
 * NOTE: Both declarations don't work in Chrome, Safari and Opera.
 */
.uk-select optgroup {
	/* 1 */
	font: inherit;
	/* 2 */
	font-weight: bold;
}

/*
 * Remove the default vertical scrollbar in IE 10+.
 */
.uk-textarea {
	overflow: auto;
}

/*
 * Remove the inner padding and cancel buttons in Chrome on OS X and Safari on OS X.
 */
.uk-input[type="search"]::-webkit-search-cancel-button,
.uk-input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/*
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
.uk-input[type="number"]::-webkit-inner-spin-button,
.uk-input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/*
 * Removes placeholder transparency in Firefox.
 */
.uk-input::-moz-placeholder,
.uk-textarea::-moz-placeholder {
	opacity: 1;
}

/*
 * Improves consistency of cursor style for clickable elements
 */
.uk-radio:not(:disabled),
.uk-checkbox:not(:disabled) {
	cursor: pointer;
}

/*
 * Define consistent border, margin, and padding.
 */
.uk-fieldset {
	border: none;
	margin: 0;
	padding: 0;
}

/* Input, select and textarea
 * Allowed: `text`, `password`, `datetime`, `datetime-local`, `date`,  `month`,
            `time`, `week`, `number`, `email`, `url`, `search`, `tel`, `color`
 * Disallowed: `range`, `radio`, `checkbox`, `file`, `submit`, `reset` and `image`
 ========================================================================== */
/*
 * Remove default style in iOS.
 */
.uk-input,
.uk-textarea {
	-webkit-appearance: none;
}

/*
 * 1. Prevent content overflow if a fixed width is used
 * 2. Take the full width
 * 3. Reset default
 * 4. Style
 */
.uk-input,
.uk-select,
.uk-textarea {
	/* 1 */
	max-width: 100%;
	/* 2 */
	width: 100%;
	/* 3 */
	border: 0 none;
	/* 4 */
	padding: 0 10px;
	background: #fff;
	color: #666;
	border: 1px solid #396e90;
	transition: 0.2s ease-in-out;
	transition-property: color, background-color, border;
}

/*
 * Single-line
 * 1. Allow any element to look like an `input` or `select` element
 * 2. Make sure line-height is not larger than height
 *    Also needed to center the text vertically
 */
.uk-input,
.uk-select:not([multiple]):not([size]) {
	height: 40px;
	vertical-align: middle;
	/* 1 */
	display: inline-block;
}

/* 2 */
.uk-input:not(input),
.uk-select:not(select) {
	line-height: 38px;
}

/*
 * Multi-line
 */
.uk-select[multiple],
.uk-select[size],
.uk-textarea {
	padding-top: 4px;
	padding-bottom: 4px;
	vertical-align: top;
}

/* Focus */
.uk-input:focus,
.uk-select:focus,
.uk-textarea:focus {
	outline: none;
	background-color: #fff;
	color: #666;
	border-color: #1e87f0;
}

/* Disabled */
.uk-input:disabled,
.uk-select:disabled,
.uk-textarea:disabled {
	background-color: #f8f8f8;
	color: #999;
	border-color: #396e90;
}

/*
 * Placeholder
 */
.uk-input::-ms-input-placeholder {
	color: #999 !important;
}

.uk-input::placeholder {
	color: #999;
}

.uk-textarea::-ms-input-placeholder {
	color: #999 !important;
}

.uk-textarea::placeholder {
	color: #999;
}

/* Style modifier (`uk-input`, `uk-select` and `uk-textarea`)
 ========================================================================== */
/*
 * Small
 */
.uk-form-small {
	font-size: 0.875rem;
}

.uk-form-small:not(textarea):not([multiple]):not([size]) {
	height: 30px;
	padding-left: 8px;
	padding-right: 8px;
}

.uk-form-small:not(select):not(input):not(textarea) {
	line-height: 28px;
}

/*
 * Large
 */
.uk-form-large {
	font-size: 1.25rem;
}

.uk-form-large:not(textarea):not([multiple]):not([size]) {
	height: 55px;
	padding-left: 12px;
	padding-right: 12px;
}

.uk-form-large:not(select):not(input):not(textarea) {
	line-height: 53px;
}

/* Style modifier (`uk-input`, `uk-select` and `uk-textarea`)
 ========================================================================== */
/*
 * Error
 */
.uk-form-danger,
.uk-form-danger:focus {
	color: #f0506e;
	border-color: #f0506e;
}

/*
 * Success
 */
.uk-form-success,
.uk-form-success:focus {
	color: #32d296;
	border-color: #32d296;
}

/*
 * Blank
 */
.uk-form-blank {
	background: none;
	border-color: transparent;
}

.uk-form-blank:focus {
	border-color: #396e90;
	border-style: dashed;
}

/* Width modifiers (`uk-input`, `uk-select` and `uk-textarea`)
 ========================================================================== */
/*
 * Fixed widths
 * Different widths for mini sized `input` and `select` elements
 */
input.uk-form-width-xsmall {
	width: 50px;
}

select.uk-form-width-xsmall {
	width: 75px;
}

.uk-form-width-small {
	width: 130px;
}

.uk-form-width-medium {
	width: 200px;
}

.uk-form-width-large {
	width: 500px;
}

/* Select
 ========================================================================== */
/*
 * 1. Remove default style. Also works in Firefox
 * 2. Style
 * 3. Remove default style in IE 10/11
 * 4. Set `color` for options in the select dropdown, because the inherited `color` might be too light.
 */
.uk-select:not([multiple]):not([size]) {
	/* 1 */
	-webkit-appearance: none;
	-moz-appearance: none;
	/* 2 */
	padding-right: 20px;
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23666%22%20points%3D%2212%201%209%206%2015%206%22%20%2F%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23666%22%20points%3D%2212%2013%209%208%2015%208%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
	background-repeat: no-repeat;
	background-position: 100% 50%;
}

/* 3 */
.uk-select:not([multiple]):not([size])::-ms-expand {
	display: none;
}

/* 4 */
.uk-select:not([multiple]):not([size]) option {
	color: #444;
}

/*
 * Disabled
 */
.uk-select:not([multiple]):not([size]):disabled {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23999%22%20points%3D%2212%201%209%206%2015%206%22%20%2F%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23999%22%20points%3D%2212%2013%209%208%2015%208%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}

/* Datalist
 ========================================================================== */
/*
 * 1. Remove default style in Chrome
 */
.uk-input[list] {
	padding-right: 20px;
	background-repeat: no-repeat;
	background-position: 100% 50%;
}

.uk-input[list]:hover,
.uk-input[list]:focus {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23666%22%20points%3D%2212%2012%208%206%2016%206%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}

/* 1 */
.uk-input[list]::-webkit-calendar-picker-indicator {
	display: none;
}

/* Radio and checkbox
 * Note: Does not work in IE11
 ========================================================================== */
/*
 * 1. Style
 * 2. Make box more robust so it clips the child element
 * 3. Vertical alignment
 * 4. Remove default style
 * 5. Fix black background on iOS
 * 6. Center icons
 */
.uk-radio,
.uk-checkbox {
	/* 1 */
	display: inline-block;
	height: 16px;
	width: 16px;
	/* 2 */
	overflow: hidden;
	/* 3 */
	margin-top: -4px;
	vertical-align: middle;
	/* 4 */
	-webkit-appearance: none;
	-moz-appearance: none;
	/* 5 */
	background-color: transparent;
	/* 6 */
	background-repeat: no-repeat;
	background-position: 50% 50%;
	border: 1px solid #2b526b;
	transition: 0.2s ease-in-out;
	transition-property: background-color, border;
}

.uk-radio {
	border-radius: 50%;
}

/* Focus */
.uk-radio:focus,
.uk-checkbox:focus {
	outline: none;
	border-color: #1e87f0;
}

/*
 * Checked
 */
.uk-radio:checked,
.uk-checkbox:checked,
.uk-checkbox:indeterminate {
	background-color: #1e87f0;
	border-color: transparent;
}

/* Focus */
.uk-radio:checked:focus,
.uk-checkbox:checked:focus,
.uk-checkbox:indeterminate:focus {
	background-color: #0e6ecd;
}

/*
 * Icons
 */
.uk-radio:checked {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22%23fff%22%20cx%3D%228%22%20cy%3D%228%22%20r%3D%222%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

.uk-checkbox:checked {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2211%22%20viewBox%3D%220%200%2014%2011%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23fff%22%20points%3D%2212%201%205%207.5%202%205%201%205.5%205%2010%2013%201.5%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}

.uk-checkbox:indeterminate {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23fff%22%20x%3D%223%22%20y%3D%228%22%20width%3D%2210%22%20height%3D%221%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

/*
 * Disabled
 */
.uk-radio:disabled,
.uk-checkbox:disabled {
	background-color: #f8f8f8;
	border-color: #396e90;
}

.uk-radio:disabled:checked {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22%23999%22%20cx%3D%228%22%20cy%3D%228%22%20r%3D%222%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

.uk-checkbox:disabled:checked {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2211%22%20viewBox%3D%220%200%2014%2011%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23999%22%20points%3D%2212%201%205%207.5%202%205%201%205.5%205%2010%2013%201.5%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}

.uk-checkbox:disabled:indeterminate {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23999%22%20x%3D%223%22%20y%3D%228%22%20width%3D%2210%22%20height%3D%221%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

/* Legend
 ========================================================================== */
/*
 * Legend
 * 1. Behave like block element
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove padding so people aren't caught out if they zero out fieldsets.
 * 4. Style
 */
.uk-legend {
	/* 1 */
	width: 100%;
	/* 2 */
	color: inherit;
	/* 3 */
	padding: 0;
	/* 4 */
	font-size: 1.5rem;
	line-height: 1.4;
}

/* Custom controls
 ========================================================================== */
/*
 * 1. Container fits its content
 * 2. Create position context
 * 3. Prevent content overflow
 * 4. Behave like most inline-block elements
 */
.uk-form-custom {
	/* 1 */
	display: inline-block;
	/* 2 */
	position: relative;
	/* 3 */
	max-width: 100%;
	/* 4 */
	vertical-align: middle;
}

/*
 * 1. Position and resize the form control to always cover its container
 * 2. Required for Firefox for positioning to the left
 * 3. Required for Webkit to make `height` work
 * 4. Hide controle and show cursor
 * 5. Needed for the cursor
 * 6. Clip height caused by 5. Needed for Webkit only
 */
.uk-form-custom select,
.uk-form-custom input[type="file"] {
	/* 1 */
	position: absolute;
	top: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	/* 2 */
	left: 0;
	/* 3 */
	-webkit-appearance: none;
	/* 4 */
	opacity: 0;
	cursor: pointer;
}

.uk-form-custom input[type="file"] {
	/* 5 */
	font-size: 500px;
	/* 6 */
	overflow: hidden;
}

/* Label
 ========================================================================== */
.uk-form-label {
	color: #333;
	font-size: 0.875rem;
}

/* Layout
 ========================================================================== */
/*
 * Stacked
 */
.uk-form-stacked .uk-form-label {
	display: block;
	margin-bottom: 5px;
}

/*
 * Horizontal
 */
/* Tablet portrait and smaller */
@media (max-width: 959px) {
	/* Behave like `uk-form-stacked` */
	.uk-form-horizontal .uk-form-label {
		display: block;
		margin-bottom: 5px;
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-form-horizontal .uk-form-label {
		width: 200px;
		margin-top: 7px;
		float: left;
	}
	.uk-form-horizontal .uk-form-controls {
		margin-left: 215px;
	}
	/* Better vertical alignment if controls are checkboxes and radio buttons with text */
	.uk-form-horizontal .uk-form-controls-text {
		padding-top: 7px;
	}
}

/* Icons
 ========================================================================== */
/*
 * 1. Set position
 * 2. Set width
 * 3. Center icon vertically and horizontally
 * 4. Style
 */
.uk-form-icon {
	/* 1 */
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	/* 2 */
	width: 40px;
	/* 3 */
	display: inline-flex;
	justify-content: center;
	align-items: center;
	/* 4 */
	color: #999;
}

/*
 * Required for `a`.
 */
.uk-form-icon:hover {
	color: #666;
}

/*
 * Make `input` element clickable through icon, e.g. if it's a `span`
 */
.uk-form-icon:not(a):not(button):not(input) {
	pointer-events: none;
}

/*
 * Input padding
 */
.uk-form-icon:not(.uk-form-icon-flip) ~ .uk-input {
	padding-left: 40px !important;
}

/*
 * Position modifier
 */
.uk-form-icon-flip {
	right: 0;
	left: auto;
}

.uk-form-icon-flip ~ .uk-input {
	padding-right: 40px !important;
}

/* ========================================================================
   Component: Button
 ========================================================================== */
/*
 * 1. Remove margins in Chrome, Safari and Opera.
 * 2. Remove borders for `button`.
 * 3. Address `overflow` set to `hidden` in IE.
 * 4. Correct `font` properties and `color` not being inherited for `button`.
 * 5. Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 6. Remove default style for `input type="submit"`in iOS.
 * 7. Style
 * 8. `line-height` is used to create a height because it also centers the text vertically for `a` elements.
 *    Better would be to use height and flexbox to center the text vertically but flexbox doesn't work in Firefox on `button` elements.
 * 9. Align text if button has a width
 * 10. Required for `a`.
 */
.uk-button {
	/* 1 */
	margin: 0;
	/* 2 */
	border: none;
	/* 3 */
	overflow: visible;
	/* 4 */
	font: inherit;
	color: inherit;
	/* 5 */
	text-transform: none;
	/* 6 */
	-webkit-appearance: none;
	border-radius: 0;
	/* 7 */
	display: inline-block;
	box-sizing: border-box;
	padding: 0 30px;
	vertical-align: middle;
	font-size: 0.875rem;
	/* 8 */
	line-height: 38px;
	/* 9 */
	text-align: center;
	/* 10 */
	text-decoration: none;
	text-transform: uppercase;
	transition: 0.1s ease-in-out;
	transition-property: color, background-color, border-color;
}

.uk-button:not(:disabled) {
	cursor: pointer;
}

/*
 * Remove the inner border and padding in Firefox.
 */
.uk-button::-moz-focus-inner {
	border: 0;
	padding: 0;
}

/* Hover */
.uk-button:hover {
	/* 9 */
	text-decoration: none;
}

/* Focus */
.uk-button:focus {
	outline: none;
}

/* OnClick + Active */
/* Style modifiers
 ========================================================================== */
/*
 * Default
 */
.uk-button-default {
	background-color: transparent;
	color: #333;
	border: 1px solid #396e90;
}

/* Hover + Focus */
.uk-button-default:hover,
.uk-button-default:focus {
	background-color: transparent;
	color: #333;
	border-color: #1c3647;
}

/* OnClick + Active */
.uk-button-default:active,
.uk-button-default.uk-active {
	background-color: transparent;
	color: #333;
	border-color: #0e1a22;
}

/*
 * Primary
 */
.uk-button-primary {
	background-color: #1e87f0;
	color: #fff;
	border: 1px solid transparent;
}

/* Hover + Focus */
.uk-button-primary:hover,
.uk-button-primary:focus {
	background-color: #0f7ae5;
	color: #fff;
}

/* OnClick + Active */
.uk-button-primary:active,
.uk-button-primary.uk-active {
	background-color: #0e6ecd;
	color: #fff;
}

/*
 * Secondary
 */
.uk-button-secondary {
	background-color: #222;
	color: #fff;
	border: 1px solid transparent;
}

/* Hover + Focus */
.uk-button-secondary:hover,
.uk-button-secondary:focus {
	background-color: #151515;
	color: #fff;
}

/* OnClick + Active */
.uk-button-secondary:active,
.uk-button-secondary.uk-active {
	background-color: #090909;
	color: #fff;
}

/*
 * Danger
 */
.uk-button-danger {
	background-color: #f0506e;
	color: #fff;
	border: 1px solid transparent;
}

/* Hover + Focus */
.uk-button-danger:hover,
.uk-button-danger:focus {
	background-color: #ee395b;
	color: #fff;
}

/* OnClick + Active */
.uk-button-danger:active,
.uk-button-danger.uk-active {
	background-color: #ec2147;
	color: #fff;
}

/*
 * Disabled
 * The same for all style modifiers
 */
.uk-button-default:disabled,
.uk-button-primary:disabled,
.uk-button-secondary:disabled,
.uk-button-danger:disabled {
	background-color: transparent;
	color: #999;
	border-color: #396e90;
}

/* Size modifiers
 ========================================================================== */
.uk-button-small {
	padding: 0 15px;
	line-height: 28px;
	font-size: 0.875rem;
}

.uk-button-large {
	padding: 0 40px;
	line-height: 53px;
	font-size: 0.875rem;
}

/* Text modifiers
 ========================================================================== */
/*
 * Text
 * 1. Reset
 * 2. Style
 */
.uk-button-text {
	/* 1 */
	padding: 0;
	line-height: 1.5;
	background: none;
	/* 2 */
	color: #333;
	position: relative;
}

.uk-button-text::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 100%;
	border-bottom: 1px solid #333;
	transition: right 0.3s ease-out;
}

/* Hover + Focus */
.uk-button-text:hover,
.uk-button-text:focus {
	color: #333;
}

.uk-button-text:hover::before,
.uk-button-text:focus::before {
	right: 0;
}

/* Disabled */
.uk-button-text:disabled {
	color: #999;
}

.uk-button-text:disabled::before {
	display: none;
}

/*
 * Link
 * 1. Reset
 * 2. Style
 */
.uk-button-link {
	/* 1 */
	padding: 0;
	line-height: 1.5;
	background: none;
	/* 2 */
	color: #1e87f0;
}

/* Hover + Focus */
.uk-button-link:hover,
.uk-button-link:focus {
	color: #0f6ecd;
	text-decoration: underline;
}

/* Disabled */
.uk-button-link:disabled {
	color: #999;
	text-decoration: none;
}

/* Group
 ========================================================================== */
/*
 * 1. Using `flex` instead of `inline-block` to prevent whitespace betweent child elements
 * 2. Behave like button
 * 3. Create position context
 */
.uk-button-group {
	/* 1 */
	display: inline-flex;
	/* 2 */
	vertical-align: middle;
	/* 3 */
	position: relative;
}

/* Group
     ========================================================================== */
/*
     * Collapse border
     */
.uk-button-group > .uk-button:nth-child(n+2),
.uk-button-group > div:nth-child(n+2) .uk-button {
	margin-left: -1px;
}

/*
     * Create position context to superimpose the successor elements border
     * Known issue: If you use an `a` element as button and an icon inside,
     * the active state will not work if you click the icon inside the button
     * Workaround: Just use a `button` or `input` element as button
     */
.uk-button-group .uk-button:hover,
.uk-button-group .uk-button:focus,
.uk-button-group .uk-button:active,
.uk-button-group .uk-button.uk-active {
	position: relative;
	z-index: 1;
}

/* ========================================================================
   Component: Progress
 ========================================================================== */
/*
 * 1. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 * 2. Remove default style
 * 3. Behave like a block element
 * 4. Remove borders in Firefox and Edge
 * 5. Set background color for progress container in Firefox, IE11 and Edge
 * 6. Style
 */
.uk-progress {
	/* 1 */
	vertical-align: baseline;
	/* 2 */
	-webkit-appearance: none;
	-moz-appearance: none;
	/* 3 */
	display: block;
	width: 100%;
	/* 4 */
	border: 0;
	/* 5 */
	background-color: #f8f8f8;
	/* 6 */
	margin-bottom: 20px;
	height: 15px;
	border-radius: 500px;
	overflow: hidden;
}

/* Add margin if adjacent element */
* + .uk-progress {
	margin-top: 20px;
}

/*
 * Remove animated circles for indeterminate state in IE11 and Edge
 */
.uk-progress:indeterminate {
	color: transparent;
}

/*
 * Progress container
 * 2. Remove progress bar for indeterminate state in Firefox
 */
.uk-progress::-webkit-progress-bar {
	background-color: #f8f8f8;
	border-radius: 500px;
	overflow: hidden;
}

/* 2 */
.uk-progress:indeterminate::-moz-progress-bar {
	width: 0;
}

/*
 * Progress bar
 * 1. Remove right border in IE11 and Edge
 */
.uk-progress::-webkit-progress-value {
	background-color: #1e87f0;
	transition: width 0.6s ease;
}

.uk-progress::-moz-progress-bar {
	background-color: #1e87f0;
}

.uk-progress::-ms-fill {
	background-color: #1e87f0;
	transition: width 0.6s ease;
	/* 1 */
	border: 0;
}

/* ========================================================================
   Component: Section
 ========================================================================== */
/*
 * 1. Make it work with `100vh` and height in general
 */
.uk-section {
	display: flow-root;
	box-sizing: border-box;
	/* 1 */
	padding-top: 40px;
	padding-bottom: 40px;
}

/* Desktop and bigger */
@media (min-width: 960px) {
	.uk-section {
		padding-top: 70px;
		padding-bottom: 70px;
	}
}

/*
 * Remove margin from the last-child
 */
.uk-section > :last-child {
	margin-bottom: 0;
}

/* Size modifiers
 ========================================================================== */
/*
 * XSmall
 */
.uk-section-xsmall {
	padding-top: 20px;
	padding-bottom: 20px;
}

/*
 * Small
 */
.uk-section-small {
	padding-top: 40px;
	padding-bottom: 40px;
}

/*
 * Large
 */
.uk-section-large {
	padding-top: 70px;
	padding-bottom: 70px;
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-section-large {
		padding-top: 140px;
		padding-bottom: 140px;
	}
}

/*
 * XLarge
 */
.uk-section-xlarge {
	padding-top: 140px;
	padding-bottom: 140px;
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-section-xlarge {
		padding-top: 210px;
		padding-bottom: 210px;
	}
}

/* Style modifiers
 ========================================================================== */
/*
 * Default
 */
.uk-section-default {
	background: #fff;
}

/*
 * Muted
 */
.uk-section-muted {
	background: #f8f8f8;
}

/*
 * Primary
 */
.uk-section-primary {
	background: #1e87f0;
}

/*
 * Secondary
 */
.uk-section-secondary {
	background: #222;
}

/* Overlap modifier
 ========================================================================== */
/*
 * Reserved modifier to make a section overlap another section with an border image
 * Implemented by the theme
 */
/* ========================================================================
   Component: Container
 ========================================================================== */
/*
 * 1. Box sizing has to be `content-box` so the max-width is always the same and
 *    unaffected by the padding on different breakpoints. It's important for the size modifiers.
 */
.uk-container {
	display: flow-root;
	/* 1 */
	box-sizing: content-box;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 15px;
	padding-right: 15px;
}

/* Phone landscape and bigger */
@media (min-width: 640px) {
	.uk-container {
		padding-left: 30px;
		padding-right: 30px;
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-container {
		padding-left: 40px;
		padding-right: 40px;
	}
}

/*
 * Remove margin from the last-child
 */
.uk-container > :last-child {
	margin-bottom: 0;
}

/*
 * Remove padding from nested containers
 */
.uk-container .uk-container {
	padding-left: 0;
	padding-right: 0;
}

/* Size modifier
 ========================================================================== */
.uk-container-xsmall {
	max-width: 750px;
}

.uk-container-small {
	max-width: 900px;
}

.uk-container-large {
	max-width: 1400px;
}

.uk-container-xlarge {
	max-width: 1600px;
}

.uk-container-expand {
	max-width: none;
}

/* Expand modifier
 ========================================================================== */
/*
 * Expand one side only
 */
.uk-container-expand-left {
	margin-left: 0;
}

.uk-container-expand-right {
	margin-right: 0;
}

/* Phone landscape and bigger */
@media (min-width: 640px) {
	.uk-container-expand-left.uk-container-xsmall,
	.uk-container-expand-right.uk-container-xsmall {
		max-width: calc(50% + (750px / 2) - 30px);
	}
	.uk-container-expand-left.uk-container-small,
	.uk-container-expand-right.uk-container-small {
		max-width: calc(50% + (900px / 2) - 30px);
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-container-expand-left,
	.uk-container-expand-right {
		max-width: calc(50% + (1200px / 2) - 40px);
	}
	.uk-container-expand-left.uk-container-xsmall,
	.uk-container-expand-right.uk-container-xsmall {
		max-width: calc(50% + (750px / 2) - 40px);
	}
	.uk-container-expand-left.uk-container-small,
	.uk-container-expand-right.uk-container-small {
		max-width: calc(50% + (900px / 2) - 40px);
	}
	.uk-container-expand-left.uk-container-large,
	.uk-container-expand-right.uk-container-large {
		max-width: calc(50% + (1400px / 2) - 40px);
	}
	.uk-container-expand-left.uk-container-xlarge,
	.uk-container-expand-right.uk-container-xlarge {
		max-width: calc(50% + (1600px / 2) - 40px);
	}
}

/* Item
 ========================================================================== */
/*
 * Utility classes to reset container padding on the left or right side
 * Note: It has to be negative margin on the item, because it's specific to the item.
 */
.uk-container-item-padding-remove-left,
.uk-container-item-padding-remove-right {
	width: calc(100% + 15px);
}

.uk-container-item-padding-remove-left {
	margin-left: -15px;
}

.uk-container-item-padding-remove-right {
	margin-right: -15px;
}

/* Phone landscape and bigger */
@media (min-width: 640px) {
	.uk-container-item-padding-remove-left,
	.uk-container-item-padding-remove-right {
		width: calc(100% + 30px);
	}
	.uk-container-item-padding-remove-left {
		margin-left: -30px;
	}
	.uk-container-item-padding-remove-right {
		margin-right: -30px;
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-container-item-padding-remove-left,
	.uk-container-item-padding-remove-right {
		width: calc(100% + 40px);
	}
	.uk-container-item-padding-remove-left {
		margin-left: -40px;
	}
	.uk-container-item-padding-remove-right {
		margin-right: -40px;
	}
}

/* ========================================================================
   Component: Tile
 ========================================================================== */
.uk-tile {
	display: flow-root;
	position: relative;
	box-sizing: border-box;
	padding-left: 15px;
	padding-right: 15px;
	padding-top: 40px;
	padding-bottom: 40px;
}

/* Phone landscape and bigger */
@media (min-width: 640px) {
	.uk-tile {
		padding-left: 30px;
		padding-right: 30px;
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-tile {
		padding-left: 40px;
		padding-right: 40px;
		padding-top: 70px;
		padding-bottom: 70px;
	}
}

/*
 * Remove margin from the last-child
 */
.uk-tile > :last-child {
	margin-bottom: 0;
}

/* Size modifiers
 ========================================================================== */
/*
 * XSmall
 */
.uk-tile-xsmall {
	padding-top: 20px;
	padding-bottom: 20px;
}

/*
 * Small
 */
.uk-tile-small {
	padding-top: 40px;
	padding-bottom: 40px;
}

/*
 * Large
 */
.uk-tile-large {
	padding-top: 70px;
	padding-bottom: 70px;
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-tile-large {
		padding-top: 140px;
		padding-bottom: 140px;
	}
}

/*
 * XLarge
 */
.uk-tile-xlarge {
	padding-top: 140px;
	padding-bottom: 140px;
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-tile-xlarge {
		padding-top: 210px;
		padding-bottom: 210px;
	}
}

/* Style modifiers
 ========================================================================== */
/*
 * Default
 */
.uk-tile-default {
	background: #fff;
}

/*
 * Muted
 */
.uk-tile-muted {
	background: #f8f8f8;
}

/*
 * Primary
 */
.uk-tile-primary {
	background: #1e87f0;
}

/*
 * Secondary
 */
.uk-tile-secondary {
	background: #222;
}

/* ========================================================================
   Component: Card
 ========================================================================== */
.uk-card {
	position: relative;
	box-sizing: border-box;
	transition: box-shadow 0.1s ease-in-out;
}

/* Sections
 ========================================================================== */
.uk-card-body {
	display: flow-root;
	padding: 30px 30px;
}

.uk-card-header {
	display: flow-root;
	padding: 15px 30px;
}

.uk-card-footer {
	display: flow-root;
	padding: 15px 30px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-card-body {
		padding: 40px 40px;
	}
	.uk-card-header {
		padding: 20px 40px;
	}
	.uk-card-footer {
		padding: 20px 40px;
	}
}

/*
 * Remove margin from the last-child
 */
.uk-card-body > :last-child,
.uk-card-header > :last-child,
.uk-card-footer > :last-child {
	margin-bottom: 0;
}

/* Media
 ========================================================================== */
/*
 * Reserved alignment modifier to style the media element, e.g. with `border-radius`
 * Implemented by the theme
 */
/* Title
 ========================================================================== */
.uk-card-title {
	font-size: 1.5rem;
	line-height: 1.4;
}

/* Badge
 ========================================================================== */
.uk-card-badge {
	position: absolute;
	top: 30px;
	right: 30px;
	z-index: 1;
}

/*
 * Remove margin from adjacent element
 */
.uk-card-badge:first-child + * {
	margin-top: 0;
}

/* Hover modifier
 ========================================================================== */
.uk-card-hover:not(.uk-card-default):not(.uk-card-primary):not(.uk-card-secondary):hover {
	background: #fff;
	box-shadow: 0 14px 25px rgba(0, 0, 0, 0.16);
}

/* Style modifiers
 ========================================================================== */
/*
 * Default
 * Note: Header and Footer are only implemented for the default style
 */
.uk-card-default {
	background: #fff;
	color: #666;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
}

.uk-card-default .uk-card-title {
	color: #333;
}

.uk-card-default.uk-card-hover:hover {
	background-color: #fff;
	box-shadow: 0 14px 25px rgba(0, 0, 0, 0.16);
}

.uk-card-default .uk-card-header {
	border-bottom: 1px solid #396e90;
}

.uk-card-default .uk-card-footer {
	border-top: 1px solid #396e90;
}

/*
 * Primary
 */
.uk-card-primary {
	background: #1e87f0;
	color: #fff;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
}

.uk-card-primary .uk-card-title {
	color: #fff;
}

.uk-card-primary.uk-card-hover:hover {
	background-color: #1e87f0;
	box-shadow: 0 14px 25px rgba(0, 0, 0, 0.16);
}

/*
 * Secondary
 */
.uk-card-secondary {
	background: #222;
	color: #fff;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
}

.uk-card-secondary .uk-card-title {
	color: #fff;
}

.uk-card-secondary.uk-card-hover:hover {
	background-color: #222;
	box-shadow: 0 14px 25px rgba(0, 0, 0, 0.16);
}

/* Size modifier
 ========================================================================== */
/*
 * Small
 */
.uk-card-small.uk-card-body,
.uk-card-small .uk-card-body {
	padding: 20px 20px;
}

.uk-card-small .uk-card-header {
	padding: 13px 20px;
}

.uk-card-small .uk-card-footer {
	padding: 13px 20px;
}

/*
 * Large
 */
/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-card-large.uk-card-body,
	.uk-card-large .uk-card-body {
		padding: 70px 70px;
	}
	.uk-card-large .uk-card-header {
		padding: 35px 70px;
	}
	.uk-card-large .uk-card-footer {
		padding: 35px 70px;
	}
}

/*
     * Default
     */
.uk-card-body > .uk-nav-default {
	margin-left: -30px;
	margin-right: -30px;
}

.uk-card-body > .uk-nav-default:only-child {
	margin-top: -15px;
	margin-bottom: -15px;
}

.uk-card-body > .uk-nav-default > li > a,
.uk-card-body > .uk-nav-default .uk-nav-header,
.uk-card-body > .uk-nav-default .uk-nav-divider {
	padding-left: 30px;
	padding-right: 30px;
}

.uk-card-body > .uk-nav-default .uk-nav-sub {
	padding-left: 45px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-card-body > .uk-nav-default {
		margin-left: -40px;
		margin-right: -40px;
	}
	.uk-card-body > .uk-nav-default:only-child {
		margin-top: -25px;
		margin-bottom: -25px;
	}
	.uk-card-body > .uk-nav-default > li > a,
	.uk-card-body > .uk-nav-default .uk-nav-header,
	.uk-card-body > .uk-nav-default .uk-nav-divider {
		padding-left: 40px;
		padding-right: 40px;
	}
	.uk-card-body > .uk-nav-default .uk-nav-sub {
		padding-left: 55px;
	}
}

/*
     * Small
     */
.uk-card-small > .uk-nav-default {
	margin-left: -20px;
	margin-right: -20px;
}

.uk-card-small > .uk-nav-default:only-child {
	margin-top: -5px;
	margin-bottom: -5px;
}

.uk-card-small > .uk-nav-default > li > a,
.uk-card-small > .uk-nav-default .uk-nav-header,
.uk-card-small > .uk-nav-default .uk-nav-divider {
	padding-left: 20px;
	padding-right: 20px;
}

.uk-card-small > .uk-nav-default .uk-nav-sub {
	padding-left: 35px;
}

/*
     * Large
     */
/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-card-large > .uk-nav-default {
		margin: 0;
	}
	.uk-card-large > .uk-nav-default:only-child {
		margin: 0;
	}
	.uk-card-large > .uk-nav-default > li > a,
	.uk-card-large > .uk-nav-default .uk-nav-header,
	.uk-card-large > .uk-nav-default .uk-nav-divider {
		padding-left: 0;
		padding-right: 0;
	}
	.uk-card-large > .uk-nav-default .uk-nav-sub {
		padding-left: 15px;
	}
}

/* ========================================================================
   Component: Close
 ========================================================================== */
/*
 * Adopts `uk-icon`
 */
.uk-close {
	color: #999;
	transition: 0.1s ease-in-out;
	transition-property: color, opacity;
}

/* Hover + Focus */
.uk-close:hover,
.uk-close:focus {
	color: #666;
	outline: none;
}

/* ========================================================================
   Component: Spinner
 ========================================================================== */
/*
 * Adopts `uk-icon`
 */
/* SVG
 ========================================================================== */
.uk-spinner > * {
	animation: uk-spinner-rotate 1.4s linear infinite;
}

@keyframes uk-spinner-rotate {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(270deg);
	}
}

/*
 * Circle
 */
.uk-spinner > * > * {
	stroke-dasharray: 88px;
	stroke-dashoffset: 0;
	transform-origin: center;
	animation: uk-spinner-dash 1.4s ease-in-out infinite;
	stroke-width: 1;
	stroke-linecap: round;
}

@keyframes uk-spinner-dash {
	0% {
		stroke-dashoffset: 88px;
	}
	50% {
		stroke-dashoffset: 22px;
		transform: rotate(135deg);
	}
	100% {
		stroke-dashoffset: 88px;
		transform: rotate(450deg);
	}
}

/* ========================================================================
   Component: Totop
 ========================================================================== */
/*
 * Addopts `uk-icon`
 */
.uk-totop {
	padding: 5px;
	color: #999;
	transition: color 0.1s ease-in-out;
}

/* Hover + Focus */
.uk-totop:hover,
.uk-totop:focus {
	color: #666;
	outline: none;
}

/* OnClick */
.uk-totop:active {
	color: #333;
}

/* ========================================================================
   Component: Marker
 ========================================================================== */
/*
 * Addopts `uk-icon`
 */
.uk-marker {
	padding: 5px;
	background: #222;
	color: #fff;
	border-radius: 500px;
}

/* Hover + Focus */
.uk-marker:hover,
.uk-marker:focus {
	color: #fff;
	outline: none;
}

/* ========================================================================
   Component: Alert
 ========================================================================== */
.uk-alert {
	position: relative;
	margin-bottom: 20px;
	padding: 15px 29px 15px 15px;
	background: #f8f8f8;
	color: #666;
}

/* Add margin if adjacent element */
* + .uk-alert {
	margin-top: 20px;
}

/*
 * Remove margin from the last-child
 */
.uk-alert > :last-child {
	margin-bottom: 0;
}

/* Close
 * Adopts `uk-close`
 ========================================================================== */
.uk-alert-close {
	position: absolute;
	top: 20px;
	right: 15px;
	color: inherit;
	opacity: 0.4;
}

/*
 * Remove margin from adjacent element
 */
.uk-alert-close:first-child + * {
	margin-top: 0;
}

/*
 * Hover + Focus
 */
.uk-alert-close:hover,
.uk-alert-close:focus {
	color: inherit;
	opacity: 0.8;
}

/* Style modifiers
 ========================================================================== */
/*
 * Primary
 */
.uk-alert-primary {
	background: #d8eafc;
	color: #1e87f0;
}

/*
 * Success
 */
.uk-alert-success {
	background: #edfbf6;
	color: #32d296;
}

/*
 * Warning
 */
.uk-alert-warning {
	background: #fef5ee;
	color: #faa05a;
}

/*
 * Danger
 */
.uk-alert-danger {
	background: #fef4f6;
	color: #f0506e;
}

/*
     * Content
     */
.uk-alert h1,
.uk-alert h2,
.uk-alert h3,
.uk-alert h4,
.uk-alert h5,
.uk-alert h6 {
	color: inherit;
}

.uk-alert a:not([class]) {
	color: inherit;
	text-decoration: underline;
}

.uk-alert a:not([class]):hover {
	color: inherit;
	text-decoration: underline;
}

/* ========================================================================
   Component: Placeholder
 ========================================================================== */
.uk-placeholder {
	margin-bottom: 20px;
	padding: 30px 30px;
	background: transparent;
	border: 1px dashed #396e90;
}

/* Add margin if adjacent element */
* + .uk-placeholder {
	margin-top: 20px;
}

/*
 * Remove margin from the last-child
 */
.uk-placeholder > :last-child {
	margin-bottom: 0;
}

/* ========================================================================
   Component: Badge
 ========================================================================== */
/*
 * 1. Style
 * 2. Center child vertically and horizontally
 */
.uk-badge {
	box-sizing: border-box;
	min-width: 22px;
	height: 22px;
	padding: 0 5px;
	border-radius: 500px;
	vertical-align: middle;
	/* 1 */
	background: #1e87f0;
	color: #fff;
	font-size: 0.875rem;
	/* 2 */
	display: inline-flex;
	justify-content: center;
	align-items: center;
}

/*
 * Required for `a`
 */
.uk-badge:hover,
.uk-badge:focus {
	color: #fff;
	text-decoration: none;
	outline: none;
}

/* ========================================================================
   Component: Label
 ========================================================================== */
.uk-label {
	display: inline-block;
	padding: 0 10px;
	background: #1e87f0;
	line-height: 1.5;
	font-size: 0.875rem;
	color: #fff;
	vertical-align: middle;
	white-space: nowrap;
	border-radius: 2px;
	text-transform: uppercase;
}

/* Color modifiers
 ========================================================================== */
/*
 * Success
 */
.uk-label-success {
	background-color: #32d296;
	color: #fff;
}

/*
 * Warning
 */
.uk-label-warning {
	background-color: #faa05a;
	color: #fff;
}

/*
 * Danger
 */
.uk-label-danger {
	background-color: #f0506e;
	color: #fff;
}

/* ========================================================================
   Component: Overlay
 ========================================================================== */
.uk-overlay {
	padding: 30px 30px;
}

/*
 * Remove margin from the last-child
 */
.uk-overlay > :last-child {
	margin-bottom: 0;
}

/* Icon
 ========================================================================== */
/* Style modifiers
 ========================================================================== */
/*
 * Default
 */
.uk-overlay-default {
	background: rgba(255, 255, 255, 0.8);
}

/*
 * Primary
 */
.uk-overlay-primary {
	background: rgba(34, 34, 34, 0.8);
}

/* ========================================================================
   Component: Article
 ========================================================================== */
.uk-article {
	display: flow-root;
}

/*
 * Remove margin from the last-child
 */
.uk-article > :last-child {
	margin-bottom: 0;
}

/* Adjacent sibling
 ========================================================================== */
.uk-article + .uk-article {
	margin-top: 70px;
}

/* Title
 ========================================================================== */
.uk-article-title {
	font-size: 2.23125rem;
	line-height: 1.2;
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-article-title {
		font-size: 2.625rem;
	}
}

/* Meta
 ========================================================================== */
.uk-article-meta {
	font-size: 0.875rem;
	line-height: 1.4;
	color: #999;
}

.uk-article-meta a {
	color: #999;
}

.uk-article-meta a:hover {
	color: #666;
	text-decoration: none;
}

/* ========================================================================
   Component: Comment
 ========================================================================== */
/* Sections
 ========================================================================== */
.uk-comment-body {
	display: flow-root;
	overflow-wrap: break-word;
	word-wrap: break-word;
}

.uk-comment-header {
	display: flow-root;
	margin-bottom: 20px;
}

/*
 * Remove margin from the last-child
 */
.uk-comment-body > :last-child,
.uk-comment-header > :last-child {
	margin-bottom: 0;
}

/* Title
 ========================================================================== */
.uk-comment-title {
	font-size: 1.25rem;
	line-height: 1.4;
}

/* Meta
 ========================================================================== */
.uk-comment-meta {
	font-size: 0.875rem;
	line-height: 1.4;
	color: #999;
}

/* Avatar
 ========================================================================== */
/* List
 ========================================================================== */
.uk-comment-list {
	padding: 0;
	list-style: none;
}

/* Adjacent siblings */
.uk-comment-list > :nth-child(n+2) {
	margin-top: 70px;
}

/*
 * Sublists
 * Note: General sibling selector allows reply block between comment and sublist
 */
.uk-comment-list .uk-comment ~ ul {
	margin: 70px 0 0 0;
	padding-left: 30px;
	list-style: none;
}

/* Tablet and bigger */
@media (min-width: 960px) {
	.uk-comment-list .uk-comment ~ ul {
		padding-left: 100px;
	}
}

/* Adjacent siblings */
.uk-comment-list .uk-comment ~ ul > :nth-child(n+2) {
	margin-top: 70px;
}

/* Style modifier
 ========================================================================== */
.uk-comment-primary {
	padding: 30px;
	background-color: #f8f8f8;
}

/* ========================================================================
   Component: Search
 ========================================================================== */
/*
 * 1. Container fits its content
 * 2. Create position context
 * 3. Prevent content overflow
 * 4. Reset `form`
 */
.uk-search {
	/* 1 */
	display: inline-block;
	/* 2 */
	position: relative;
	/* 3 */
	max-width: 100%;
	/* 4 */
	margin: 0;
}

/* Input
 ========================================================================== */
/*
 * Remove the inner padding and cancel buttons in Chrome on OS X and Safari on OS X.
 */
.uk-search-input::-webkit-search-cancel-button,
.uk-search-input::-webkit-search-decoration {
	-webkit-appearance: none;
}

/*
 * Removes placeholder transparency in Firefox.
 */
.uk-search-input::-moz-placeholder {
	opacity: 1;
}

/*
 * 1. Define consistent box sizing.
 * 2. Address margins set differently in Firefox/IE and Chrome/Safari/Opera.
 * 3. Remove `border-radius` in iOS.
 * 4. Change font properties to `inherit` in all browsers
 * 5. Show the overflow in Edge.
 * 6. Remove default style in iOS.
 * 7. Vertical alignment
 * 8. Take the full container width
 * 9. Style
 */
.uk-search-input {
	/* 1 */
	box-sizing: border-box;
	/* 2 */
	margin: 0;
	/* 3 */
	border-radius: 0;
	/* 4 */
	font: inherit;
	/* 5 */
	overflow: visible;
	/* 6 */
	-webkit-appearance: none;
	/* 7 */
	vertical-align: middle;
	/* 8 */
	width: 100%;
	/* 9 */
	border: none;
	color: #666;
}

.uk-search-input:focus {
	outline: none;
}

/* Placeholder */
.uk-search-input:-ms-input-placeholder {
	color: #999 !important;
}

.uk-search-input::placeholder {
	color: #999;
}

/* Icon (Adopts `uk-icon`)
 ========================================================================== */
/*
 * Remove default focus style
 */
.uk-search-icon:focus {
	outline: none;
}

/*
 * Position above input
 * 1. Set position
 * 2. Center icon vertically and horizontally
 * 3. Style
 */
.uk-search .uk-search-icon {
	/* 1 */
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	/* 2 */
	display: inline-flex;
	justify-content: center;
	align-items: center;
	/* 3 */
	color: #999;
}

/*
 * Required for `a`.
 */
.uk-search .uk-search-icon:hover {
	color: #999;
}

/*
 * Make `input` element clickable through icon, e.g. if it's a `span`
 */
.uk-search .uk-search-icon:not(a):not(button):not(input) {
	pointer-events: none;
}

/*
 * Position modifier
 */
.uk-search .uk-search-icon-flip {
	right: 0;
	left: auto;
}

/* Default modifier
 ========================================================================== */
.uk-search-default {
	width: 180px;
}

/*
 * Input
 */
.uk-search-default .uk-search-input {
	height: 40px;
	padding-left: 6px;
	padding-right: 6px;
	background: transparent;
	border: 1px solid #396e90;
}

/* Focus */
.uk-search-default .uk-search-input:focus {
	background-color: transparent;
}

/*
 * Icon
 */
.uk-search-default .uk-search-icon {
	width: 40px;
}

.uk-search-default .uk-search-icon:not(.uk-search-icon-flip) ~ .uk-search-input {
	padding-left: 40px;
}

.uk-search-default .uk-search-icon-flip ~ .uk-search-input {
	padding-right: 40px;
}

/* Navbar modifier
 ========================================================================== */
.uk-search-navbar {
	width: 400px;
}

/*
 * Input
 */
.uk-search-navbar .uk-search-input {
	height: 40px;
	background: transparent;
	font-size: 1.5rem;
}

/*
 * Icon
 */
.uk-search-navbar .uk-search-icon {
	width: 40px;
}

.uk-search-navbar .uk-search-icon:not(.uk-search-icon-flip) ~ .uk-search-input {
	padding-left: 40px;
}

.uk-search-navbar .uk-search-icon-flip ~ .uk-search-input {
	padding-right: 40px;
}

/* Large modifier
 ========================================================================== */
.uk-search-large {
	width: 500px;
}

/*
 * Input
 */
.uk-search-large .uk-search-input {
	height: 80px;
	background: transparent;
	font-size: 2.625rem;
}

/*
 * Icon
 */
.uk-search-large .uk-search-icon {
	width: 80px;
}

.uk-search-large .uk-search-icon:not(.uk-search-icon-flip) ~ .uk-search-input {
	padding-left: 80px;
}

.uk-search-large .uk-search-icon-flip ~ .uk-search-input {
	padding-right: 80px;
}

/* Toggle
 ========================================================================== */
.uk-search-toggle {
	color: #999;
}

/* Hover + Focus */
.uk-search-toggle:hover,
.uk-search-toggle:focus {
	color: #666;
}

/* ========================================================================
   Component: Accordion
 ========================================================================== */
.uk-accordion {
	padding: 0;
	list-style: none;
}

/* Item
 ========================================================================== */
.uk-accordion > :nth-child(n+2) {
	margin-top: 20px;
}

/* Title
 ========================================================================== */
.uk-accordion-title {
	display: block;
	font-size: 1.25rem;
	line-height: 1.4;
	color: #333;
	overflow: hidden;
}

.uk-accordion-title::before {
	content: "";
	width: 1.4em;
	height: 1.4em;
	margin-left: 10px;
	float: right;
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20width%3D%221%22%20height%3D%2213%22%20x%3D%226%22%20y%3D%220%22%20%2F%3E%0A%3C%2Fsvg%3E");
	background-repeat: no-repeat;
	background-position: 50% 50%;
}

.uk-open > .uk-accordion-title::before {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

/* Hover + Focus */
.uk-accordion-title:hover,
.uk-accordion-title:focus {
	color: #666;
	text-decoration: none;
	outline: none;
}

/* Content
 ========================================================================== */
.uk-accordion-content {
	display: flow-root;
	margin-top: 20px;
}

/*
 * Remove margin from the last-child
 */
.uk-accordion-content > :last-child {
	margin-bottom: 0;
}

/* ========================================================================
   Component: Drop
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Set position
 * 3. Set a default width
 */
.uk-drop {
	/* 1 */
	display: none;
	/* 2 */
	position: absolute;
	z-index: 1020;
	/* 3 */
	box-sizing: border-box;
	width: 300px;
}

/* Show */
.uk-drop.uk-open {
	display: block;
}

/* Direction / Alignment modifiers
 ========================================================================== */
/* Direction */
[class*='uk-drop-top'] {
	margin-top: -20px;
}

[class*='uk-drop-bottom'] {
	margin-top: 20px;
}

[class*='uk-drop-left'] {
	margin-left: -20px;
}

[class*='uk-drop-right'] {
	margin-left: 20px;
}

/* Grid modifiers
 ========================================================================== */
.uk-drop-stack .uk-drop-grid > * {
	width: 100% !important;
}

/* ========================================================================
   Component: Dropdown
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Set position
 * 3. Set a default width
 * 4. Style
 */
.uk-dropdown {
	/* 1 */
	display: none;
	/* 2 */
	position: absolute;
	z-index: 1020;
	/* 3 */
	box-sizing: border-box;
	min-width: 200px;
	/* 4 */
	padding: 25px;
	background: #fff;
	color: #666;
	box-shadow: 0 5px 12px rgba(0, 0, 0, 0.15);
}

/* Show */
.uk-dropdown.uk-open {
	display: block;
}

/* Nav
 * Adopts `uk-nav`
 ========================================================================== */
.uk-dropdown-nav {
	white-space: nowrap;
	font-size: 0.875rem;
}

/*
 * Items
 */
.uk-dropdown-nav > li > a {
	color: #999;
}

/* Hover + Focus + Active */
.uk-dropdown-nav > li > a:hover,
.uk-dropdown-nav > li > a:focus,
.uk-dropdown-nav > li.uk-active > a {
	color: #666;
}

/*
 * Header
 */
.uk-dropdown-nav .uk-nav-header {
	color: #333;
}

/*
 * Divider
 */
.uk-dropdown-nav .uk-nav-divider {
	border-top: 1px solid #396e90;
}

/*
 * Sublists
 */
.uk-dropdown-nav .uk-nav-sub a {
	color: #999;
}

.uk-dropdown-nav .uk-nav-sub a:hover,
.uk-dropdown-nav .uk-nav-sub a:focus,
.uk-dropdown-nav .uk-nav-sub li.uk-active > a {
	color: #666;
}

/* Direction / Alignment modifiers
 ========================================================================== */
/* Direction */
[class*='uk-dropdown-top'] {
	margin-top: -10px;
}

[class*='uk-dropdown-bottom'] {
	margin-top: 10px;
}

[class*='uk-dropdown-left'] {
	margin-left: -10px;
}

[class*='uk-dropdown-right'] {
	margin-left: 10px;
}

/* Grid modifiers
 ========================================================================== */
.uk-dropdown-stack .uk-dropdown-grid > * {
	width: 100% !important;
}

/* ========================================================================
   Component: Modal
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Set position
 * 3. Allow scrolling for the modal dialog
 * 4. Horizontal padding
 * 5. Mask the background page
 * 6. Fade-in transition
 */
.uk-modal {
	/* 1 */
	display: none;
	/* 2 */
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1010;
	/* 3 */
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	/* 4 */
	padding: 15px 15px;
	/* 5 */
	background: rgba(0, 0, 0, 0.6);
	/* 6 */
	opacity: 0;
	transition: opacity 0.15s linear;
}

/* Phone landscape and bigger */
@media (min-width: 640px) {
	.uk-modal {
		padding: 50px 30px;
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-modal {
		padding-left: 40px;
		padding-right: 40px;
	}
}

/*
 * Open
 */
.uk-modal.uk-open {
	opacity: 1;
}

/* Page
 ========================================================================== */
/*
 * Prevent scrollbars
 */
.uk-modal-page {
	overflow: hidden;
}

/* Dialog
 ========================================================================== */
/*
 * 1. Create position context for spinner and close button
 * 2. Dimensions
 * 3. Fix `max-width: 100%` not working in combination with flex and responsive images in IE11
 *    `!important` needed to overwrite `uk-width-auto`. See `#modal-media-image` in tests
 * 4. Style
 * 5. Slide-in transition
 */
.uk-modal-dialog {
	/* 1 */
	position: relative;
	/* 2 */
	box-sizing: border-box;
	margin: 0 auto;
	width: 600px;
	/* 3 */
	max-width: calc(100% - 0.01px) !important;
	/* 4 */
	background: #fff;
	/* 5 */
	opacity: 0;
	transform: translateY(-100px);
	transition: 0.3s linear;
	transition-property: opacity, transform;
}

/*
 * Open
 */
.uk-open > .uk-modal-dialog {
	opacity: 1;
	transform: translateY(0);
}

/* Size modifier
 ========================================================================== */
/*
 * Container size
 * Take the same size as the Container component
 */
.uk-modal-container .uk-modal-dialog {
	width: 1200px;
}

/*
 * Full size
 * 1. Remove padding and background from modal
 * 2. Reset all default declarations from modal dialog
 */
/* 1 */
.uk-modal-full {
	padding: 0;
	background: none;
}

/* 2 */
.uk-modal-full .uk-modal-dialog {
	margin: 0;
	width: 100%;
	max-width: 100%;
	transform: translateY(0);
}

/* Sections
 ========================================================================== */
.uk-modal-body {
	display: flow-root;
	padding: 30px 30px;
}

.uk-modal-header {
	display: flow-root;
	padding: 15px 30px;
	background: #fff;
	border-bottom: 1px solid #396e90;
}

.uk-modal-footer {
	display: flow-root;
	padding: 15px 30px;
	background: #fff;
	border-top: 1px solid #396e90;
}

/*
 * Remove margin from the last-child
 */
.uk-modal-body > :last-child,
.uk-modal-header > :last-child,
.uk-modal-footer > :last-child {
	margin-bottom: 0;
}

/* Title
 ========================================================================== */
.uk-modal-title {
	font-size: 2rem;
	line-height: 1.3;
}

/* Close
 * Adopts `uk-close`
 ========================================================================== */
[class*='uk-modal-close-'] {
	position: absolute;
	z-index: 1010;
	top: 10px;
	right: 10px;
	padding: 5px;
}

/*
 * Remove margin from adjacent element
 */
[class*='uk-modal-close-']:first-child + * {
	margin-top: 0;
}

/*
 * Hover
 */
/*
 * Default
 */
/*
 * Outside
 * 1. Prevent scrollbar on small devices
 */
.uk-modal-close-outside {
	top: 0;
	/* 1 */
	right: -5px;
	transform: translate(0, -100%);
	color: white;
}

.uk-modal-close-outside:hover {
	color: #fff;
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	/* 1 */
	.uk-modal-close-outside {
		right: 0;
		transform: translate(100%, -100%);
	}
}

/*
 * Full
 */
.uk-modal-close-full {
	top: 0;
	right: 0;
	padding: 20px;
	background: #fff;
}

/* ========================================================================
   Component: Slideshow
 ========================================================================== */
/*
 * 1. Prevent tab highlighting on iOS.
 */
.uk-slideshow {
	/* 1 */
	-webkit-tap-highlight-color: transparent;
}

/* Items
 ========================================================================== */
/*
 * 1. Create position and stacking context
 * 2. Reset list
 * 3. Clip child elements
 * 4. Prevent displaying the callout information on iOS.
 */
.uk-slideshow-items {
	/* 1 */
	position: relative;
	z-index: 0;
	/* 2 */
	margin: 0;
	padding: 0;
	list-style: none;
	/* 3 */
	overflow: hidden;
	/* 4 */
	-webkit-touch-callout: none;
}

/* Item
 ========================================================================== */
/*
 * 1. Position items above each other
 * 2. Take the full width
 * 3. Clip child elements, e.g. for `uk-cover`
 * 4. Optimize animation
 * 5. Disable horizontal panning gestures in IE11 and Edge
 * 6. Suppress outline on focus
 */
.uk-slideshow-items > * {
	/* 1 */
	position: absolute;
	top: 0;
	left: 0;
	/* 2 */
	right: 0;
	bottom: 0;
	/* 3 */
	overflow: hidden;
	/* 4 */
	will-change: transform, opacity;
	/* 5 */
	touch-action: pan-y;
}

/* 6 */
.uk-slideshow-items > :focus {
	outline: none;
}

/*
 * Hide not active items
 */
.uk-slideshow-items > :not(.uk-active) {
	display: none;
}

/* ========================================================================
   Component: Slider
 ========================================================================== */
/*
 * 1. Prevent tab highlighting on iOS.
 */
.uk-slider {
	/* 1 */
	-webkit-tap-highlight-color: transparent;
}

/* Container
 ========================================================================== */
/*
 * Clip child elements
 */
.uk-slider-container {
	overflow: hidden;
}

/*
 * Widen container to prevent box-shadows from clipping, `large-box-shadow`
 */
.uk-slider-container-offset {
	margin: -11px -25px -39px -25px;
	padding: 11px 25px 39px 25px;
}

/* Items
 ========================================================================== */
/*
 * 1. Optimize animation
 * 2. Create a containing block. In Safari it's neither created by `transform` nor `will-change`.
 */
.uk-slider-items {
	/* 1 */
	will-change: transform;
	/* 2 */
	position: relative;
}

/*
 * 1. Reset list style without interfering with grid
 * 2. Prevent displaying the callout information on iOS.
 */
.uk-slider-items:not(.uk-grid) {
	display: flex;
	/* 1 */
	margin: 0;
	padding: 0;
	list-style: none;
	/* 2 */
	-webkit-touch-callout: none;
}

.uk-slider-items.uk-grid {
	flex-wrap: nowrap;
}

/* Item
 ========================================================================== */
/*
 * 1. Let items take content dimensions (0 0 auto)
 * 2. Create position context
 * 3. Disable horizontal panning gestures in IE11 and Edge
 * 4. Suppress outline on focus
 */
.uk-slider-items > * {
	/* 1 */
	flex: none;
	/* 2 */
	position: relative;
	/* 3 */
	touch-action: pan-y;
}

/* 4 */
.uk-slider-items > :focus {
	outline: none;
}

/* ========================================================================
   Component: Sticky
 ========================================================================== */
/*
 * 1. Resolve frame rate issues on devices with lower frame rates by forcing hardware acceleration
 */
.uk-sticky-fixed {
	z-index: 980;
	box-sizing: border-box;
	margin: 0 !important;
	/* 1 */
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

/*
 * Faster animations
 */
.uk-sticky[class*='uk-animation-'] {
	animation-duration: 0.2s;
}

.uk-sticky.uk-animation-reverse {
	animation-duration: 0.2s;
}

/* ========================================================================
   Component: Off-canvas
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Set position
 */
.uk-offcanvas {
	/* 1 */
	display: none;
	/* 2 */
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	z-index: 1000;
}

/*
 * Flip modifier
 */
.uk-offcanvas-flip .uk-offcanvas {
	right: 0;
	left: auto;
}

/* Bar
 ========================================================================== */
/*
 * 1. Set position
 * 2. Size and style
 * 3. Allow scrolling
 */
.uk-offcanvas-bar {
	/* 1 */
	position: absolute;
	top: 0;
	bottom: 0;
	left: -270px;
	/* 2 */
	box-sizing: border-box;
	width: 270px;
	padding: 20px 20px;
	background: #222;
	/* 3 */
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-offcanvas-bar {
		left: -350px;
		width: 350px;
		padding: 40px 40px;
	}
}

/* Flip modifier */
.uk-offcanvas-flip .uk-offcanvas-bar {
	left: auto;
	right: -270px;
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-offcanvas-flip .uk-offcanvas-bar {
		right: -350px;
	}
}

/*
 * Open
 */
.uk-open > .uk-offcanvas-bar {
	left: 0;
}

.uk-offcanvas-flip .uk-open > .uk-offcanvas-bar {
	left: auto;
	right: 0;
}

/*
 * Slide Animation (Used in slide and push mode)
 */
.uk-offcanvas-bar-animation {
	transition: left 0.3s ease-out;
}

.uk-offcanvas-flip .uk-offcanvas-bar-animation {
	transition-property: right;
}

/*
 * Reveal Animation
 * 1. Set position
 * 2. Clip the bar
 * 3. Animation
 * 4. Reset position
 */
.uk-offcanvas-reveal {
	/* 1 */
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	/* 2 */
	width: 0;
	overflow: hidden;
	/* 3 */
	transition: width 0.3s ease-out;
}

.uk-offcanvas-reveal .uk-offcanvas-bar {
	/* 4 */
	left: 0;
}

.uk-offcanvas-flip .uk-offcanvas-reveal .uk-offcanvas-bar {
	/* 4 */
	left: auto;
	right: 0;
}

.uk-open > .uk-offcanvas-reveal {
	width: 270px;
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-open > .uk-offcanvas-reveal {
		width: 350px;
	}
}

/*
 * Flip modifier
 */
.uk-offcanvas-flip .uk-offcanvas-reveal {
	right: 0;
	left: auto;
}

/* Close
 * Adopts `uk-close`
 ========================================================================== */
.uk-offcanvas-close {
	position: absolute;
	z-index: 1000;
	top: 20px;
	right: 20px;
	padding: 5px;
}

/* Overlay
 ========================================================================== */
/*
 * Overlay the whole page. Needed for the `::before`
 * 1. Using `100vw` so no modification is needed when off-canvas is flipped
 * 2. Allow for closing with swipe gesture on devices with pointer events.
 */
.uk-offcanvas-overlay {
	/* 1 */
	width: 100vw;
	/* 2 */
	touch-action: none;
}

/*
 * 1. Mask the whole page
 * 2. Fade-in transition
 */
.uk-offcanvas-overlay::before {
	/* 1 */
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(0, 0, 0, 0.1);
	/* 2 */
	opacity: 0;
	transition: opacity 0.15s linear;
}

.uk-offcanvas-overlay.uk-open::before {
	opacity: 1;
}

/* Prevent scrolling
 ========================================================================== */
/*
 * Prevent horizontal scrollbar when the content is slide-out
 * Has to be on the `html` element too to make it work on the `body`
 */
.uk-offcanvas-page,
.uk-offcanvas-container {
	overflow-x: hidden;
}

/* Container
 ========================================================================== */
/*
 * Prepare slide-out animation (Used in reveal and push mode)
 * Using `position: left` instead of `transform` because position `fixed` elements like sticky navbars
 * lose their fixed state and behaves like `absolute` within a transformed container
 * 1. Provide a fixed width and prevent shrinking
 */
.uk-offcanvas-container {
	position: relative;
	left: 0;
	transition: left 0.3s ease-out;
	/* 1 */
	box-sizing: border-box;
	width: 100%;
}

/*
 * Activate slide-out animation
 */
:not(.uk-offcanvas-flip).uk-offcanvas-container-animation {
	left: 270px;
}

.uk-offcanvas-flip.uk-offcanvas-container-animation {
	left: -270px;
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	:not(.uk-offcanvas-flip).uk-offcanvas-container-animation {
		left: 350px;
	}
	.uk-offcanvas-flip.uk-offcanvas-container-animation {
		left: -350px;
	}
}

/* ========================================================================
   Component: Switcher
 ========================================================================== */
/*
 * Reset list
 */
.uk-switcher {
	margin: 0;
	padding: 0;
	list-style: none;
}

/* Items
 ========================================================================== */
/*
 * Hide not active items
 */
.uk-switcher > :not(.uk-active) {
	display: none;
}

/*
 * Remove margin from the last-child
 */
.uk-switcher > * > :last-child {
	margin-bottom: 0;
}

/* ========================================================================
   Component: Leader
 ========================================================================== */
.uk-leader {
	overflow: hidden;
}

/*
 * 1. Place element in text flow
 * 2. Never break into a new line
 * 3. Get a string back with as many repeating characters to fill the container
 * 4. Prevent wrapping. Overflowing characters will be clipped by the container
 */
.uk-leader-fill::after {
	/* 1 */
	display: inline-block;
	margin-left: 15px;
	/* 2 */
	width: 0;
	/* 3 */
	content: attr(data-fill);
	/* 4 */
	white-space: nowrap;
}

/*
 * Hide if media does not match
 */
.uk-leader-fill.uk-leader-hide::after {
	display: none;
}

/*
 * Pass fill character to JS
 */
.uk-leader-fill-content::before {
	content: ".";
}

:root {
	--uk-leader-fill-content: .;
}

/* ========================================================================
   Component: Notification
 ========================================================================== */
/*
 * 1. Set position
 * 2. Dimensions
 */
.uk-notification {
	/* 1 */
	position: fixed;
	top: 10px;
	left: 10px;
	z-index: 1040;
	/* 2 */
	box-sizing: border-box;
	width: 350px;
}

/* Position modifiers
========================================================================== */
.uk-notification-top-right,
.uk-notification-bottom-right {
	left: auto;
	right: 10px;
}

.uk-notification-top-center,
.uk-notification-bottom-center {
	left: 50%;
	margin-left: -175px;
}

.uk-notification-bottom-left,
.uk-notification-bottom-right,
.uk-notification-bottom-center {
	top: auto;
	bottom: 10px;
}

/* Responsiveness
========================================================================== */
/* Phones portrait and smaller */
@media (max-width: 639px) {
	.uk-notification {
		left: 10px;
		right: 10px;
		width: auto;
		margin: 0;
	}
}

/* Message
========================================================================== */
.uk-notification-message {
	position: relative;
	padding: 15px;
	background: #f8f8f8;
	color: #666;
	font-size: 1.25rem;
	line-height: 1.4;
	cursor: pointer;
}

* + .uk-notification-message {
	margin-top: 10px;
}

/* Close
 * Adopts `uk-close`
 ========================================================================== */
.uk-notification-close {
	display: none;
	position: absolute;
	top: 20px;
	right: 15px;
}

.uk-notification-message:hover .uk-notification-close {
	display: block;
}

/* Style modifiers
 ========================================================================== */
/*
 * Primary
 */
.uk-notification-message-primary {
	color: #1e87f0;
}

/*
 * Success
 */
.uk-notification-message-success {
	color: #32d296;
}

/*
 * Warning
 */
.uk-notification-message-warning {
	color: #faa05a;
}

/*
 * Danger
 */
.uk-notification-message-danger {
	color: #f0506e;
}

/* ========================================================================
   Component: Tooltip
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Position
 * 3. Remove tooltip from document flow to keep the UIkit container from changing its size when injected into the document initially
 * 4. Dimensions
 * 5. Style
 */
.uk-tooltip {
	/* 1 */
	display: none;
	/* 2 */
	position: absolute;
	z-index: 1030;
	/* 3 */
	top: 0;
	/* 4 */
	box-sizing: border-box;
	max-width: 200px;
	padding: 3px 6px;
	/* 5 */
	background: #666;
	border-radius: 2px;
	color: #fff;
	font-size: 12px;
}

/* Show */
.uk-tooltip.uk-active {
	display: block;
}

/* Direction / Alignment modifiers
 ========================================================================== */
/* Direction */
[class*='uk-tooltip-top'] {
	margin-top: -10px;
}

[class*='uk-tooltip-bottom'] {
	margin-top: 10px;
}

[class*='uk-tooltip-left'] {
	margin-left: -10px;
}

[class*='uk-tooltip-right'] {
	margin-left: 10px;
}

/* ========================================================================
   Component: Sortable
 ========================================================================== */
.uk-sortable {
	position: relative;
}

/*
 * Remove margin from the last-child
 */
.uk-sortable > :last-child {
	margin-bottom: 0;
}

/* Drag
 ========================================================================== */
.uk-sortable-drag {
	position: fixed !important;
	z-index: 1050 !important;
	pointer-events: none;
}

/* Placeholder
 ========================================================================== */
.uk-sortable-placeholder {
	opacity: 0;
	pointer-events: none;
}

/* Empty modifier
 ========================================================================== */
.uk-sortable-empty {
	min-height: 50px;
}

/* Handle
 ========================================================================== */
/* Hover */
.uk-sortable-handle:hover {
	cursor: move;
}

/* ========================================================================
   Component: Countdown
 ========================================================================== */
/* Item
 ========================================================================== */
/* Number
 ========================================================================== */
/*
 * 1. Make numbers all of the same size to prevent jumping. Must be supported by the font.
 * 2. Style
 */
.uk-countdown-number {
	/* 1 */
	font-variant-numeric: tabular-nums;
	/* 2 */
	font-size: 2rem;
	line-height: 0.8;
}

/* Phone landscape and bigger */
@media (min-width: 640px) {
	.uk-countdown-number {
		font-size: 4rem;
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-countdown-number {
		font-size: 6rem;
	}
}

/* Separator
 ========================================================================== */
.uk-countdown-separator {
	font-size: 1rem;
	line-height: 1.6;
}

/* Phone landscape and bigger */
@media (min-width: 640px) {
	.uk-countdown-separator {
		font-size: 2rem;
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-countdown-separator {
		font-size: 3rem;
	}
}

/* Label
 ========================================================================== */
/* ========================================================================
   Component: Grid
 ========================================================================== */
/*
 * 1. Allow cells to wrap into the next line
 * 2. Reset list
 */
.uk-grid {
	display: flex;
	/* 1 */
	flex-wrap: wrap;
	/* 2 */
	margin: 0;
	padding: 0;
	list-style: none;
}

/*
 * Grid cell
 * Note: Space is allocated solely based on content dimensions, but shrinks: 0 1 auto
 * Reset margin for e.g. paragraphs
 */
.uk-grid > * {
	margin: 0;
}

/*
 * Remove margin from the last-child
 */
.uk-grid > * > :last-child {
	margin-bottom: 0;
}

/* Gutter
 ========================================================================== */
/*
 * Default
 */
/* Horizontal */
.uk-grid {
	margin-left: -30px;
}

.uk-grid > * {
	padding-left: 30px;
}

/* Vertical */
.uk-grid + .uk-grid,
.uk-grid > .uk-grid-margin,
* + .uk-grid-margin {
	margin-top: 30px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	/* Horizontal */
	.uk-grid {
		margin-left: -40px;
	}
	.uk-grid > * {
		padding-left: 40px;
	}
	/* Vertical */
	.uk-grid + .uk-grid,
	.uk-grid > .uk-grid-margin,
	* + .uk-grid-margin {
		margin-top: 40px;
	}
}

/*
 * Small
 */
/* Horizontal */
.uk-grid-small,
.uk-grid-column-small {
	margin-left: -15px;
}

.uk-grid-small > *,
.uk-grid-column-small > * {
	padding-left: 15px;
}

/* Vertical */
.uk-grid + .uk-grid-small,
.uk-grid + .uk-grid-row-small,
.uk-grid-small > .uk-grid-margin,
.uk-grid-row-small > .uk-grid-margin,
* + .uk-grid-margin-small {
	margin-top: 15px;
}

/*
 * Medium
 */
/* Horizontal */
.uk-grid-medium,
.uk-grid-column-medium {
	margin-left: -30px;
}

.uk-grid-medium > *,
.uk-grid-column-medium > * {
	padding-left: 30px;
}

/* Vertical */
.uk-grid + .uk-grid-medium,
.uk-grid + .uk-grid-row-medium,
.uk-grid-medium > .uk-grid-margin,
.uk-grid-row-medium > .uk-grid-margin,
* + .uk-grid-margin-medium {
	margin-top: 30px;
}

/*
 * Large
 */
/* Horizontal */
.uk-grid-large,
.uk-grid-column-large {
	margin-left: -40px;
}

.uk-grid-large > *,
.uk-grid-column-large > * {
	padding-left: 40px;
}

/* Vertical */
.uk-grid + .uk-grid-large,
.uk-grid + .uk-grid-row-large,
.uk-grid-large > .uk-grid-margin,
.uk-grid-row-large > .uk-grid-margin,
* + .uk-grid-margin-large {
	margin-top: 40px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	/* Horizontal */
	.uk-grid-large,
	.uk-grid-column-large {
		margin-left: -70px;
	}
	.uk-grid-large > *,
	.uk-grid-column-large > * {
		padding-left: 70px;
	}
	/* Vertical */
	.uk-grid + .uk-grid-large,
	.uk-grid + .uk-grid-row-large,
	.uk-grid-large > .uk-grid-margin,
	.uk-grid-row-large > .uk-grid-margin,
	* + .uk-grid-margin-large {
		margin-top: 70px;
	}
}

/*
 * Collapse
 */
/* Horizontal */
.uk-grid-collapse,
.uk-grid-column-collapse {
	margin-left: 0;
}

.uk-grid-collapse > *,
.uk-grid-column-collapse > * {
	padding-left: 0;
}

/* Vertical */
.uk-grid + .uk-grid-collapse,
.uk-grid + .uk-grid-row-collapse,
.uk-grid-collapse > .uk-grid-margin,
.uk-grid-row-collapse > .uk-grid-margin {
	margin-top: 0;
}

/* Divider
 ========================================================================== */
.uk-grid-divider > * {
	position: relative;
}

.uk-grid-divider > :not(.uk-first-column)::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	border-left: 1px solid #396e90;
}

/* Vertical */
.uk-grid-divider.uk-grid-stack > .uk-grid-margin::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	border-top: 1px solid #396e90;
}

/*
 * Default
 */
/* Horizontal */
.uk-grid-divider {
	margin-left: -60px;
}

.uk-grid-divider > * {
	padding-left: 60px;
}

.uk-grid-divider > :not(.uk-first-column)::before {
	left: 30px;
}

/* Vertical */
.uk-grid-divider.uk-grid-stack > .uk-grid-margin {
	margin-top: 60px;
}

.uk-grid-divider.uk-grid-stack > .uk-grid-margin::before {
	top: -30px;
	left: 60px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	/* Horizontal */
	.uk-grid-divider {
		margin-left: -80px;
	}
	.uk-grid-divider > * {
		padding-left: 80px;
	}
	.uk-grid-divider > :not(.uk-first-column)::before {
		left: 40px;
	}
	/* Vertical */
	.uk-grid-divider.uk-grid-stack > .uk-grid-margin {
		margin-top: 80px;
	}
	.uk-grid-divider.uk-grid-stack > .uk-grid-margin::before {
		top: -40px;
		left: 80px;
	}
}

/*
 * Small
 */
/* Horizontal */
.uk-grid-divider.uk-grid-small,
.uk-grid-divider.uk-grid-column-small {
	margin-left: -30px;
}

.uk-grid-divider.uk-grid-small > *,
.uk-grid-divider.uk-grid-column-small > * {
	padding-left: 30px;
}

.uk-grid-divider.uk-grid-small > :not(.uk-first-column)::before,
.uk-grid-divider.uk-grid-column-small > :not(.uk-first-column)::before {
	left: 15px;
}

/* Vertical */
.uk-grid-divider.uk-grid-small.uk-grid-stack > .uk-grid-margin,
.uk-grid-divider.uk-grid-row-small.uk-grid-stack > .uk-grid-margin {
	margin-top: 30px;
}

.uk-grid-divider.uk-grid-small.uk-grid-stack > .uk-grid-margin::before {
	top: -15px;
	left: 30px;
}

.uk-grid-divider.uk-grid-row-small.uk-grid-stack > .uk-grid-margin::before {
	top: -15px;
}

.uk-grid-divider.uk-grid-column-small.uk-grid-stack > .uk-grid-margin::before {
	left: 30px;
}

/*
 * Medium
 */
/* Horizontal */
.uk-grid-divider.uk-grid-medium,
.uk-grid-divider.uk-grid-column-medium {
	margin-left: -60px;
}

.uk-grid-divider.uk-grid-medium > *,
.uk-grid-divider.uk-grid-column-medium > * {
	padding-left: 60px;
}

.uk-grid-divider.uk-grid-medium > :not(.uk-first-column)::before,
.uk-grid-divider.uk-grid-column-medium > :not(.uk-first-column)::before {
	left: 30px;
}

/* Vertical */
.uk-grid-divider.uk-grid-medium.uk-grid-stack > .uk-grid-margin,
.uk-grid-divider.uk-grid-row-medium.uk-grid-stack > .uk-grid-margin {
	margin-top: 60px;
}

.uk-grid-divider.uk-grid-medium.uk-grid-stack > .uk-grid-margin::before {
	top: -30px;
	left: 60px;
}

.uk-grid-divider.uk-grid-row-medium.uk-grid-stack > .uk-grid-margin::before {
	top: -30px;
}

.uk-grid-divider.uk-grid-column-medium.uk-grid-stack > .uk-grid-margin::before {
	left: 60px;
}

/*
 * Large
 */
/* Horizontal */
.uk-grid-divider.uk-grid-large,
.uk-grid-divider.uk-grid-column-large {
	margin-left: -80px;
}

.uk-grid-divider.uk-grid-large > *,
.uk-grid-divider.uk-grid-column-large > * {
	padding-left: 80px;
}

.uk-grid-divider.uk-grid-large > :not(.uk-first-column)::before,
.uk-grid-divider.uk-grid-column-large > :not(.uk-first-column)::before {
	left: 40px;
}

/* Vertical */
.uk-grid-divider.uk-grid-large.uk-grid-stack > .uk-grid-margin,
.uk-grid-divider.uk-grid-row-large.uk-grid-stack > .uk-grid-margin {
	margin-top: 80px;
}

.uk-grid-divider.uk-grid-large.uk-grid-stack > .uk-grid-margin::before {
	top: -40px;
	left: 80px;
}

.uk-grid-divider.uk-grid-row-large.uk-grid-stack > .uk-grid-margin::before {
	top: -40px;
}

.uk-grid-divider.uk-grid-column-large.uk-grid-stack > .uk-grid-margin::before {
	left: 80px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	/* Horizontal */
	.uk-grid-divider.uk-grid-large,
	.uk-grid-divider.uk-grid-column-large {
		margin-left: -140px;
	}
	.uk-grid-divider.uk-grid-large > *,
	.uk-grid-divider.uk-grid-column-large > * {
		padding-left: 140px;
	}
	.uk-grid-divider.uk-grid-large > :not(.uk-first-column)::before,
	.uk-grid-divider.uk-grid-column-large > :not(.uk-first-column)::before {
		left: 70px;
	}
	/* Vertical */
	.uk-grid-divider.uk-grid-large.uk-grid-stack > .uk-grid-margin,
	.uk-grid-divider.uk-grid-row-large.uk-grid-stack > .uk-grid-margin {
		margin-top: 140px;
	}
	.uk-grid-divider.uk-grid-large.uk-grid-stack > .uk-grid-margin::before {
		top: -70px;
		left: 140px;
	}
	.uk-grid-divider.uk-grid-row-large.uk-grid-stack > .uk-grid-margin::before {
		top: -70px;
	}
	.uk-grid-divider.uk-grid-column-large.uk-grid-stack > .uk-grid-margin::before {
		left: 140px;
	}
}

/* Match child of a grid cell
 ========================================================================== */
/*
 * Behave like a block element
 * 1. Wrap into the next line
 * 2. Take the full width, at least 100%. Only if no class from the Width component is set.
 * 3. Expand width even if larger than 100%, e.g. because of negative margin (Needed for nested grids)
 */
.uk-grid-match > *,
.uk-grid-item-match {
	display: flex;
	/* 1 */
	flex-wrap: wrap;
}

.uk-grid-match > * > :not([class*='uk-width']),
.uk-grid-item-match > :not([class*='uk-width']) {
	/* 2 */
	box-sizing: border-box;
	width: 100%;
	/* 3 */
	flex: auto;
}

/* ========================================================================
   Component: Nav
 ========================================================================== */
/*
 * Reset
 * 1. Prepare lists
 * 2. Prepare links
 * 3. Remove default focus style
 */
/* 1 */
.uk-nav,
.uk-nav ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

/* 2 */
.uk-nav li > a {
	display: block;
	text-decoration: none;
}

/* 3 */
.uk-nav li > a:focus {
	outline: none;
}

/*
 * Items
 * Must target `a` elements to exclude other elements (e.g. lists)
 */
.uk-nav > li > a {
	padding: 5px 0;
}

/* Sublists
 ========================================================================== */
/*
 * Level 2
 * `ul` needed for higher specificity to override padding
 */
ul.uk-nav-sub {
	padding: 5px 0 5px 15px;
}

/*
 * Level 3 and deeper
 */
.uk-nav-sub ul {
	padding-left: 15px;
}

/*
 * Items
 */
.uk-nav-sub a {
	padding: 2px 0;
}

/* Parent icon modifier
 ========================================================================== */
.uk-nav-parent-icon > .uk-parent > a::after {
	content: "";
	width: 1.5em;
	height: 1.5em;
	float: right;
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22%23666%22%20stroke-width%3D%221.1%22%20points%3D%2210%201%204%207%2010%2013%22%20%2F%3E%0A%3C%2Fsvg%3E");
	background-repeat: no-repeat;
	background-position: 50% 50%;
}

.uk-nav-parent-icon > .uk-parent.uk-open > a::after {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22%23666%22%20stroke-width%3D%221.1%22%20points%3D%221%204%207%2010%2013%204%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

/* Header
 ========================================================================== */
.uk-nav-header {
	padding: 5px 0;
	text-transform: uppercase;
	font-size: 0.875rem;
}

.uk-nav-header:not(:first-child) {
	margin-top: 20px;
}

/* Divider
 ========================================================================== */
.uk-nav-divider {
	margin: 5px 0;
}

/* Default modifier
 ========================================================================== */
.uk-nav-default {
	font-size: 0.875rem;
}

/*
 * Items
 */
.uk-nav-default > li > a {
	color: #999;
}

/* Hover + Focus */
.uk-nav-default > li > a:hover,
.uk-nav-default > li > a:focus {
	color: #666;
}

/* Active */
.uk-nav-default > li.uk-active > a {
	color: #333;
}

/*
 * Header
 */
.uk-nav-default .uk-nav-header {
	color: #333;
}

/*
 * Divider
 */
.uk-nav-default .uk-nav-divider {
	border-top: 1px solid #396e90;
}

/*
 * Sublists
 */
.uk-nav-default .uk-nav-sub a {
	color: #999;
}

.uk-nav-default .uk-nav-sub a:hover,
.uk-nav-default .uk-nav-sub a:focus {
	color: #666;
}

.uk-nav-default .uk-nav-sub li.uk-active > a {
	color: #333;
}

/* Primary modifier
 ========================================================================== */
/*
 * Items
 */
.uk-nav-primary > li > a {
	font-size: 1.5rem;
	line-height: 1.5;
	color: #999;
}

/* Hover + Focus */
.uk-nav-primary > li > a:hover,
.uk-nav-primary > li > a:focus {
	color: #666;
}

/* Active */
.uk-nav-primary > li.uk-active > a {
	color: #333;
}

/*
 * Header
 */
.uk-nav-primary .uk-nav-header {
	color: #333;
}

/*
 * Divider
 */
.uk-nav-primary .uk-nav-divider {
	border-top: 1px solid #396e90;
}

/*
 * Sublists
 */
.uk-nav-primary .uk-nav-sub a {
	color: #999;
}

.uk-nav-primary .uk-nav-sub a:hover,
.uk-nav-primary .uk-nav-sub a:focus {
	color: #666;
}

.uk-nav-primary .uk-nav-sub li.uk-active > a {
	color: #333;
}

/* Alignment modifier
 ========================================================================== */
.uk-nav-center {
	text-align: center;
}

/* Sublists */
.uk-nav-center .uk-nav-sub,
.uk-nav-center .uk-nav-sub ul {
	padding-left: 0;
}

/* Parent icon modifier  */
.uk-nav-center.uk-nav-parent-icon > .uk-parent > a::after {
	position: absolute;
}

/* ========================================================================
   Component: Navbar
 ========================================================================== */
/*
 * 1. Create position context to center navbar group
 */
.uk-navbar {
	display: flex;
	/* 1 */
	position: relative;
}

/* Container
 ========================================================================== */
.uk-navbar-container:not(.uk-navbar-transparent) {
	background: #f8f8f8;
}

/*
 * Remove pseudo elements created by micro clearfix as precaution (if Container component is used)
 */
.uk-navbar-container > ::before,
.uk-navbar-container > ::after {
	display: none !important;
}

/* Groups
 ========================================================================== */
/*
 * 1. Align navs and items vertically if they have a different height
 * 2. Note: IE 11 requires an extra `div` which affects the center selector
 */
.uk-navbar-left,
.uk-navbar-right,
.uk-navbar-center,
.uk-navbar-center-left > *,
.uk-navbar-center-right > * {
	display: flex;
	/* 1 */
	align-items: center;
}

/*
 * Horizontal alignment
 * 1. Create position context for centered navbar with sub groups (left/right)
 * 2. Fix text wrapping if content is larger than 50% of the container.
 * 3. Needed for dropdowns because a new position context is created
 *    `z-index` must be smaller than off-canvas
 * 4. Align sub groups for centered navbar
 */
.uk-navbar-right {
	margin-left: auto;
}

.uk-navbar-center:only-child {
	margin-left: auto;
	margin-right: auto;
	/* 1 */
	position: relative;
}

.uk-navbar-center:not(:only-child) {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	/* 2 */
	width: max-content;
	box-sizing: border-box;
	/* 3 */
	z-index: 990;
}

/* 4 */
.uk-navbar-center-left,
.uk-navbar-center-right {
	position: absolute;
	top: 0;
}

.uk-navbar-center-left {
	right: 100%;
}

.uk-navbar-center-right {
	left: 100%;
}

[class*='uk-navbar-center-'] {
	width: max-content;
	box-sizing: border-box;
}

/* Nav
 ========================================================================== */
/*
 * 1. Reset list
 */
.uk-navbar-nav {
	display: flex;
	/* 1 */
	margin: 0;
	padding: 0;
	list-style: none;
}

/*
 * Allow items to wrap into the next line
 * Only not `absolute` positioned groups
 */
.uk-navbar-left,
.uk-navbar-right,
.uk-navbar-center:only-child {
	flex-wrap: wrap;
}

/*
 * Items
 * 1. Center content vertically and horizontally
 * 2. Dimensions
 * 3. Style
 * 4. Required for `a`
 */
.uk-navbar-nav > li > a,
.uk-navbar-item,
.uk-navbar-toggle {
	/* 1 */
	display: flex;
	justify-content: center;
	align-items: center;
	/* 2 */
	box-sizing: border-box;
	min-height: 80px;
	padding: 0 15px;
	/* 3 */
	font-size: 0.875rem;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	/* 4 */
	text-decoration: none;
}

/*
 * Nav items
 */
.uk-navbar-nav > li > a {
	color: #999;
	text-transform: uppercase;
	transition: 0.1s ease-in-out;
	transition-property: color, background-color;
}

/*
 * Hover
 * Apply hover style also to focus state and if dropdown is opened
 */
.uk-navbar-nav > li:hover > a,
.uk-navbar-nav > li > a:focus,
.uk-navbar-nav > li > a.uk-open {
	color: #666;
	outline: none;
}

/* OnClick */
.uk-navbar-nav > li > a:active {
	color: #333;
}

/* Active */
.uk-navbar-nav > li.uk-active > a {
	color: #333;
}

/* Item
 ========================================================================== */
.uk-navbar-item {
	color: #666;
}

/* Toggle
 ========================================================================== */
.uk-navbar-toggle {
	color: #999;
}

.uk-navbar-toggle:hover,
.uk-navbar-toggle:focus,
.uk-navbar-toggle.uk-open {
	color: #666;
	outline: none;
	text-decoration: none;
}

/*
 * Icon
 * Adopts `uk-icon`
 */
/* Hover + Focus */
/* Subtitle
 ========================================================================== */
.uk-navbar-subtitle {
	font-size: 0.875rem;
}

/* Style modifiers
 ========================================================================== */
/* Dropdown
 ========================================================================== */
/*
 * Adopts `uk-dropdown`
 * 1. Hide by default
 * 2. Set position
 * 3. Set a default width
 * 4. Style
 */
.uk-navbar-dropdown {
	/* 1 */
	display: none;
	/* 2 */
	position: absolute;
	z-index: 1020;
	/* 3 */
	box-sizing: border-box;
	width: 200px;
	/* 4 */
	padding: 25px;
	background: #fff;
	color: #666;
	box-shadow: 0 5px 12px rgba(0, 0, 0, 0.15);
}

/* Show */
.uk-navbar-dropdown.uk-open {
	display: block;
}

/*
 * Direction / Alignment modifiers
 */
/* Direction */
[class*='uk-navbar-dropdown-top'] {
	margin-top: -15px;
}

[class*='uk-navbar-dropdown-bottom'] {
	margin-top: 15px;
}

[class*='uk-navbar-dropdown-left'] {
	margin-left: -15px;
}

[class*='uk-navbar-dropdown-right'] {
	margin-left: 15px;
}

/*
 * Grid
 * Adopts `uk-grid`
 */
/* Gutter Horizontal */
.uk-navbar-dropdown-grid {
	margin-left: -50px;
}

.uk-navbar-dropdown-grid > * {
	padding-left: 50px;
}

/* Gutter Vertical */
.uk-navbar-dropdown-grid > .uk-grid-margin {
	margin-top: 50px;
}

/* Stack */
.uk-navbar-dropdown-stack .uk-navbar-dropdown-grid > * {
	width: 100% !important;
}

/*
 * Width modifier
 */
.uk-navbar-dropdown-width-2:not(.uk-navbar-dropdown-stack) {
	width: 400px;
}

.uk-navbar-dropdown-width-3:not(.uk-navbar-dropdown-stack) {
	width: 600px;
}

.uk-navbar-dropdown-width-4:not(.uk-navbar-dropdown-stack) {
	width: 800px;
}

.uk-navbar-dropdown-width-5:not(.uk-navbar-dropdown-stack) {
	width: 1000px;
}

/*
 * Dropbar modifier
 */
.uk-navbar-dropdown-dropbar {
	margin-top: 0;
	margin-bottom: 0;
	box-shadow: none;
}

/* Dropdown Nav
 * Adopts `uk-nav`
 ========================================================================== */
.uk-navbar-dropdown-nav {
	font-size: 0.875rem;
}

/*
 * Items
 */
.uk-navbar-dropdown-nav > li > a {
	color: #999;
}

/* Hover + Focus */
.uk-navbar-dropdown-nav > li > a:hover,
.uk-navbar-dropdown-nav > li > a:focus {
	color: #666;
}

/* Active */
.uk-navbar-dropdown-nav > li.uk-active > a {
	color: #333;
}

/*
 * Header
 */
.uk-navbar-dropdown-nav .uk-nav-header {
	color: #333;
}

/*
 * Divider
 */
.uk-navbar-dropdown-nav .uk-nav-divider {
	border-top: 1px solid #396e90;
}

/*
 * Sublists
 */
.uk-navbar-dropdown-nav .uk-nav-sub a {
	color: #999;
}

.uk-navbar-dropdown-nav .uk-nav-sub a:hover,
.uk-navbar-dropdown-nav .uk-nav-sub a:focus {
	color: #666;
}

.uk-navbar-dropdown-nav .uk-nav-sub li.uk-active > a {
	color: #333;
}

/* Dropbar
 ========================================================================== */
.uk-navbar-dropbar {
	background: #fff;
}

/*
 * Slide modifier
 */
.uk-navbar-dropbar-slide {
	position: absolute;
	z-index: 980;
	left: 0;
	right: 0;
	box-shadow: 0 5px 7px rgba(0, 0, 0, 0.05);
}

/*
     * Navbar
     */
.uk-navbar-container > .uk-container .uk-navbar-left {
	margin-left: -15px;
	margin-right: -15px;
}

.uk-navbar-container > .uk-container .uk-navbar-right {
	margin-right: -15px;
}

/*
     * Grid Divider
     */
.uk-navbar-dropdown-grid > * {
	position: relative;
}

.uk-navbar-dropdown-grid > :not(.uk-first-column)::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 25px;
	border-left: 1px solid #396e90;
}

/* Vertical */
.uk-navbar-dropdown-grid.uk-grid-stack > .uk-grid-margin::before {
	content: "";
	position: absolute;
	top: -25px;
	left: 50px;
	right: 0;
	border-top: 1px solid #396e90;
}

/* ========================================================================
   Component: Subnav
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Gutter
 * 3. Reset list
 */
.uk-subnav {
	display: flex;
	/* 1 */
	flex-wrap: wrap;
	/* 2 */
	margin-left: -20px;
	/* 3 */
	padding: 0;
	list-style: none;
}

/*
 * 1. Space is allocated solely based on content dimensions: 0 0 auto
 * 2. Gutter
 * 3. Create position context for dropdowns
 */
.uk-subnav > * {
	/* 1 */
	flex: none;
	/* 2 */
	padding-left: 20px;
	/* 3 */
	position: relative;
}

/* Items
 ========================================================================== */
/*
 * Items must target `a` elements to exclude other elements (e.g. dropdowns)
 * Using `:first-child` instead of `a` to support `span` elements for text
 * 1. Prevent gap if child element is `inline-block`, e.g. an icon
 * 2. Style
 */
.uk-subnav > * > :first-child {
	/* 1 */
	display: block;
	/* 2 */
	color: #999;
	font-size: 0.875rem;
	text-transform: uppercase;
	transition: 0.1s ease-in-out;
	transition-property: color, background-color;
}

/* Hover + Focus */
.uk-subnav > * > a:hover,
.uk-subnav > * > a:focus {
	color: #666;
	text-decoration: none;
	outline: none;
}

/* Active */
.uk-subnav > .uk-active > a {
	color: #333;
}

/* Divider modifier
 ========================================================================== */
/*
 * Set gutter 
 */
.uk-subnav-divider {
	margin-left: -41px;
}

/*
 * Align items and divider vertically
 */
.uk-subnav-divider > * {
	display: flex;
	align-items: center;
}

/*
 * Divider
 * 1. `nth-child` makes it also work without JS if it's only one row
 */
.uk-subnav-divider > ::before {
	content: "";
	height: 1.5em;
	margin-left: 0px;
	margin-right: 20px;
	border-left: 1px solid transparent;
}

/* 1 */
.uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before {
	border-left-color: #396e90;
}

/* Pill modifier
 ========================================================================== */
.uk-subnav-pill > * > :first-child {
	padding: 5px 10px;
	background: transparent;
	color: #999;
}

/* Hover + Focus */
.uk-subnav-pill > * > a:hover,
.uk-subnav-pill > * > a:focus {
	background-color: #f8f8f8;
	color: #666;
}

/* OnClick */
.uk-subnav-pill > * > a:active {
	background-color: #f8f8f8;
	color: #666;
}

/* Active */
.uk-subnav-pill > .uk-active > a {
	background-color: #1e87f0;
	color: #fff;
}

/* Disabled
 * The same for all style modifiers
 ========================================================================== */
.uk-subnav > .uk-disabled > a {
	color: #999;
}

/* ========================================================================
   Component: Breadcrumb
 ========================================================================== */
/*
 * Reset list
 */
.uk-breadcrumb {
	padding: 0;
	list-style: none;
}

/*
 * 1. Doesn't generate any box and replaced by child boxes
 */
.uk-breadcrumb > * {
	display: contents;
}

/* Items
 ========================================================================== */
.uk-breadcrumb > * > * {
	font-size: 0.875rem;
	color: #999;
}

/* Hover + Focus */
.uk-breadcrumb > * > :hover,
.uk-breadcrumb > * > :focus {
	color: #666;
	text-decoration: none;
}

/* Disabled */
/* Active */
.uk-breadcrumb > :last-child > span,
.uk-breadcrumb > :last-child > a:not([href]) {
	color: #666;
}

/*
 * Divider
 * `nth-child` makes it also work without JS if it's only one row
 * 1. Remove space between inline block elements.
 * 2. Style
 */
.uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before {
	content: "/";
	display: inline-block;
	/* 1 */
	margin: 0 20px 0 calc(20px - 4px);
	/* 2 */
	font-size: 0.875rem;
	color: #999;
}

/* ========================================================================
   Component: Pagination
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Gutter
 * 3. Reset list
 */
.uk-pagination {
	display: flex;
	/* 1 */
	flex-wrap: wrap;
	/* 2 */
	margin-left: 0;
	/* 3 */
	padding: 0;
	list-style: none;
}

/*
 * 1. Space is allocated solely based on content dimensions: 0 0 auto
 * 2. Gutter
 * 3. Create position context for dropdowns
 */
.uk-pagination > * {
	/* 1 */
	flex: none;
	/* 2 */
	padding-left: 0;
	/* 3 */
	position: relative;
}

/* Items
 ========================================================================== */
/*
 * 1. Prevent gap if child element is `inline-block`, e.g. an icon
 * 2. Style
 */
.uk-pagination > * > * {
	/* 1 */
	display: block;
	/* 2 */
	padding: 5px 10px;
	color: #999;
	transition: color 0.1s ease-in-out;
}

/* Hover + Focus */
.uk-pagination > * > :hover,
.uk-pagination > * > :focus {
	color: #666;
	text-decoration: none;
}

/* Active */
.uk-pagination > .uk-active > * {
	color: #666;
}

/* Disabled */
.uk-pagination > .uk-disabled > * {
	color: #999;
}

/* ========================================================================
   Component: Tab
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Gutter
 * 3. Reset list
 */
.uk-tab {
	display: flex;
	/* 1 */
	flex-wrap: wrap;
	/* 2 */
	margin-left: -20px;
	/* 3 */
	padding: 0;
	list-style: none;
	position: relative;
}

.uk-tab::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 20px;
	right: 0;
	border-bottom: 1px solid #396e90;
}

/*
 * 1. Space is allocated solely based on content dimensions: 0 0 auto
 * 2. Gutter
 * 3. Create position context for dropdowns
 */
.uk-tab > * {
	/* 1 */
	flex: none;
	/* 2 */
	padding-left: 20px;
	/* 3 */
	position: relative;
}

/* Items
 ========================================================================== */
/*
 * Items must target `a` elements to exclude other elements (e.g. dropdowns)
 * 1. Center text if a width is set
 * 2. Style
 */
.uk-tab > * > a {
	/* 1 */
	display: block;
	text-align: center;
	/* 2 */
	padding: 5px 10px;
	color: #999;
	border-bottom: 1px solid transparent;
	font-size: 0.875rem;
	text-transform: uppercase;
	transition: color 0.1s ease-in-out;
}

/* Hover + Focus */
.uk-tab > * > a:hover,
.uk-tab > * > a:focus {
	color: #666;
	text-decoration: none;
}

/* Active */
.uk-tab > .uk-active > a {
	color: #333;
	border-color: #1e87f0;
}

/* Disabled */
.uk-tab > .uk-disabled > a {
	color: #999;
}

/* Position modifier
 ========================================================================== */
/*
 * Bottom
 */
.uk-tab-bottom::before {
	top: 0;
	bottom: auto;
}

.uk-tab-bottom > * > a {
	border-top: 1px solid transparent;
	border-bottom: none;
}

/*
 * Left + Right
 * 1. Reset Gutter
 */
.uk-tab-left,
.uk-tab-right {
	flex-direction: column;
	/* 1 */
	margin-left: 0;
}

/* 1 */
.uk-tab-left > *,
.uk-tab-right > * {
	padding-left: 0;
}

.uk-tab-left::before {
	top: 0;
	bottom: 0;
	left: auto;
	right: 0;
	border-left: 1px solid #396e90;
	border-bottom: none;
}

.uk-tab-right::before {
	top: 0;
	bottom: 0;
	left: 0;
	right: auto;
	border-left: 1px solid #396e90;
	border-bottom: none;
}

.uk-tab-left > * > a {
	text-align: left;
	border-right: 1px solid transparent;
	border-bottom: none;
}

.uk-tab-right > * > a {
	text-align: left;
	border-left: 1px solid transparent;
	border-bottom: none;
}

.uk-tab .uk-dropdown {
	margin-left: 30px;
}

/* ========================================================================
   Component: Slidenav
 ========================================================================== */
/*
 * Adopts `uk-icon`
 */
.uk-slidenav {
	padding: 5px 10px;
	color: rgba(102, 102, 102, 0.5);
	transition: color 0.1s ease-in-out;
}

/* Hover + Focus */
.uk-slidenav:hover,
.uk-slidenav:focus {
	color: rgba(102, 102, 102, 0.9);
	outline: none;
}

/* OnClick */
.uk-slidenav:active {
	color: rgba(102, 102, 102, 0.5);
}

/* Icon modifier
 ========================================================================== */
/*
 * Previous
 */
/*
 * Next
 */
/* Size modifier
 ========================================================================== */
.uk-slidenav-large {
	padding: 10px 10px;
}

/* Container
 ========================================================================== */
.uk-slidenav-container {
	display: flex;
}

/* ========================================================================
   Component: Dotnav
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Reset list
 * 3. Gutter
 */
.uk-dotnav {
	display: flex;
	/* 1 */
	flex-wrap: wrap;
	/* 2 */
	margin: 0;
	padding: 0;
	list-style: none;
	/* 3 */
	margin-left: -12px;
}

/*
 * 1. Space is allocated solely based on content dimensions: 0 0 auto
 * 2. Gutter
 */
.uk-dotnav > * {
	/* 1 */
	flex: none;
	/* 2 */
	padding-left: 12px;
}

/* Items
 ========================================================================== */
/*
 * Items
 * 1. Hide text if present
 */
.uk-dotnav > * > * {
	display: block;
	box-sizing: border-box;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: transparent;
	/* 1 */
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	border: 1px solid rgba(102, 102, 102, 0.4);
	transition: 0.2s ease-in-out;
	transition-property: background-color, border-color;
}

/* Hover + Focus */
.uk-dotnav > * > :hover,
.uk-dotnav > * > :focus {
	background-color: rgba(102, 102, 102, 0.6);
	outline: none;
	border-color: transparent;
}

/* OnClick */
.uk-dotnav > * > :active {
	background-color: rgba(102, 102, 102, 0.2);
	border-color: transparent;
}

/* Active */
.uk-dotnav > .uk-active > * {
	background-color: rgba(102, 102, 102, 0.6);
	border-color: transparent;
}

/* Modifier: 'uk-dotnav-vertical'
 ========================================================================== */
/*
 * 1. Change direction
 * 2. Gutter
 */
.uk-dotnav-vertical {
	/* 1 */
	flex-direction: column;
	/* 2 */
	margin-left: 0;
	margin-top: -12px;
}

/* 2 */
.uk-dotnav-vertical > * {
	padding-left: 0;
	padding-top: 12px;
}

/* ========================================================================
   Component: Thumbnav
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Reset list
 * 3. Gutter
 */
.uk-thumbnav {
	display: flex;
	/* 1 */
	flex-wrap: wrap;
	/* 2 */
	margin: 0;
	padding: 0;
	list-style: none;
	/* 3 */
	margin-left: -15px;
}

/*
 * Space is allocated based on content dimensions, but shrinks: 0 1 auto
 * 1. Gutter
 */
.uk-thumbnav > * {
	/* 1 */
	padding-left: 15px;
}

/* Items
 ========================================================================== */
/*
 * Items
 */
.uk-thumbnav > * > * {
	display: inline-block;
	position: relative;
}

.uk-thumbnav > * > *::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(255, 255, 255, 0.4);
	transition: background-color 0.1s ease-in-out;
}

/* Hover + Focus */
.uk-thumbnav > * > :hover,
.uk-thumbnav > * > :focus {
	outline: none;
}

.uk-thumbnav > * > :hover::after,
.uk-thumbnav > * > :focus::after {
	background-color: transparent;
}

/* Active */
.uk-thumbnav > .uk-active > *::after {
	background-color: transparent;
}

/* Modifier: 'uk-thumbnav-vertical'
 ========================================================================== */
/*
 * 1. Change direction
 * 2. Gutter
 */
.uk-thumbnav-vertical {
	/* 1 */
	flex-direction: column;
	/* 2 */
	margin-left: 0;
	margin-top: -15px;
}

/* 2 */
.uk-thumbnav-vertical > * {
	padding-left: 0;
	padding-top: 15px;
}

/* ========================================================================
   Component: Iconnav
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Reset list
 * 3. Gutter
 */
.uk-iconnav {
	display: flex;
	/* 1 */
	flex-wrap: wrap;
	/* 2 */
	margin: 0;
	padding: 0;
	list-style: none;
	/* 3 */
	margin-left: -10px;
}

/*
 * Space is allocated based on content dimensions, but shrinks: 0 1 auto
 * 1. Gutter
 */
.uk-iconnav > * {
	/* 1 */
	padding-left: 10px;
}

/* Items
 ========================================================================== */
/*
 * Items must target `a` elements to exclude other elements (e.g. dropdowns)
 * 1. Prevent gap if child element is `inline-block`, e.g. an icon
 * 2. Style
 */
.uk-iconnav > * > a {
	/* 1 */
	display: block;
	/* 2 */
	color: #999;
}

/* Hover + Focus */
.uk-iconnav > * > a:hover,
.uk-iconnav > * > a:focus {
	color: #666;
	outline: none;
}

/* Active */
.uk-iconnav > .uk-active > a {
	color: #666;
}

/* Modifier: 'uk-iconnav-vertical'
 ========================================================================== */
/*
 * 1. Change direction
 * 2. Gutter
 */
.uk-iconnav-vertical {
	/* 1 */
	flex-direction: column;
	/* 2 */
	margin-left: 0;
	margin-top: -10px;
}

/* 2 */
.uk-iconnav-vertical > * {
	padding-left: 0;
	padding-top: 10px;
}

/* ========================================================================
   Component: Lightbox
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Set position
 * 3. Allow scrolling for the modal dialog
 * 4. Horizontal padding
 * 5. Mask the background page
 * 6. Fade-in transition
 * 7. Prevent cancellation of pointer events while dragging
 */
.uk-lightbox {
	/* 1 */
	display: none;
	/* 2 */
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1010;
	/* 5 */
	background: #000;
	/* 6 */
	opacity: 0;
	transition: opacity 0.15s linear;
	/* 7 */
	touch-action: pinch-zoom;
}

/*
 * Open
 * 1. Center child
 * 2. Fade-in
 */
.uk-lightbox.uk-open {
	display: block;
	/* 2 */
	opacity: 1;
}

/* Page
 ========================================================================== */
/*
 * Prevent scrollbars
 */
.uk-lightbox-page {
	overflow: hidden;
}

/* Item
 ========================================================================== */
/*
 * 1. Center child within the viewport
 * 2. Not visible by default
 * 3. Color needed for spinner icon
 * 4. Optimize animation
 * 5. Responsiveness
 *    Using `vh` for `max-height` to fix image proportions after resize in Safari and Opera
 *    Using `vh` and `vw` to make responsive image work in IE11
 * 6. Suppress outline on focus
 */
.uk-lightbox-items > * {
	/* 1 */
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	/* 2 */
	display: none;
	justify-content: center;
	align-items: center;
	/* 3 */
	color: rgba(255, 255, 255, 0.7);
	/* 4 */
	will-change: transform, opacity;
}

/* 5 */
.uk-lightbox-items > * > * {
	max-width: 100vw;
	max-height: 100vh;
}

/* 6 */
.uk-lightbox-items > :focus {
	outline: none;
}

.uk-lightbox-items > * > :not(iframe) {
	width: auto;
	height: auto;
}

.uk-lightbox-items > .uk-active {
	display: flex;
}

/* Toolbar
 ========================================================================== */
.uk-lightbox-toolbar {
	padding: 10px 10px;
	background: rgba(0, 0, 0, 0.3);
	color: rgba(255, 255, 255, 0.7);
}

.uk-lightbox-toolbar > * {
	color: rgba(255, 255, 255, 0.7);
}

/* Toolbar Icon (Close)
 ========================================================================== */
.uk-lightbox-toolbar-icon {
	padding: 5px;
	color: rgba(255, 255, 255, 0.7);
}

/*
 * Hover
 */
.uk-lightbox-toolbar-icon:hover {
	color: #fff;
}

/* Button (Slidenav)
 ========================================================================== */
/*
 * 1. Center icon vertically and horizontally
 */
.uk-lightbox-button {
	box-sizing: border-box;
	width: 50px;
	height: 50px;
	background: rgba(0, 0, 0, 0.3);
	color: rgba(255, 255, 255, 0.7);
	/* 1 */
	display: inline-flex;
	justify-content: center;
	align-items: center;
}

/* Hover + Focus */
.uk-lightbox-button:hover,
.uk-lightbox-button:focus {
	color: #fff;
}

/* OnClick */
/* Caption
 ========================================================================== */
.uk-lightbox-caption:empty {
	display: none;
}

/* Iframe
 ========================================================================== */
.uk-lightbox-iframe {
	width: 80%;
	height: 80%;
}

/* ========================================================================
   Component: Animation
 ========================================================================== */
[class*='uk-animation-'] {
	animation-duration: 0.5s;
	animation-timing-function: ease-out;
	animation-fill-mode: both;
}

/* Animations
 ========================================================================== */
/*
 * Fade
 */
.uk-animation-fade {
	animation-name: uk-fade;
	animation-duration: 0.8s;
	animation-timing-function: linear;
}

/*
 * Scale
 */
.uk-animation-scale-up {
	animation-name: uk-fade-scale-02;
}

.uk-animation-scale-down {
	animation-name: uk-fade-scale-18;
}

/*
 * Slide
 */
.uk-animation-slide-top {
	animation-name: uk-fade-top;
}

.uk-animation-slide-bottom {
	animation-name: uk-fade-bottom;
}

.uk-animation-slide-left {
	animation-name: uk-fade-left;
}

.uk-animation-slide-right {
	animation-name: uk-fade-right;
}

/*
 * Slide Small
 */
.uk-animation-slide-top-small {
	animation-name: uk-fade-top-small;
}

.uk-animation-slide-bottom-small {
	animation-name: uk-fade-bottom-small;
}

.uk-animation-slide-left-small {
	animation-name: uk-fade-left-small;
}

.uk-animation-slide-right-small {
	animation-name: uk-fade-right-small;
}

/*
 * Slide Medium
 */
.uk-animation-slide-top-medium {
	animation-name: uk-fade-top-medium;
}

.uk-animation-slide-bottom-medium {
	animation-name: uk-fade-bottom-medium;
}

.uk-animation-slide-left-medium {
	animation-name: uk-fade-left-medium;
}

.uk-animation-slide-right-medium {
	animation-name: uk-fade-right-medium;
}

/*
 * Kenburns
 */
.uk-animation-kenburns {
	animation-name: uk-scale-kenburns;
	animation-duration: 15s;
}

/*
 * Shake
 */
.uk-animation-shake {
	animation-name: uk-shake;
}

/*
 * SVG Stroke
 * The `--uk-animation-stroke` custom property contains the longest path length.
 * Set it manually or use `uk-svg="stroke-animation: true"` to set it automatically.
 * All strokes are animated by the same pace and doesn't end simultaneously.
 * To end simultaneously, `pathLength="1"` could be used, but it's not working in Safari yet.
 */
.uk-animation-stroke {
	animation-name: uk-stroke;
	stroke-dasharray: var(--uk-animation-stroke);
	animation-duration: 2s;
}

/* Direction modifier
 ========================================================================== */
.uk-animation-reverse {
	animation-direction: reverse;
	animation-timing-function: ease-in;
}

/* Duration modifier
 ========================================================================== */
.uk-animation-fast {
	animation-duration: 0.1s;
}

/* Toggle (Hover + Focus)
========================================================================== */
/*
 * The toggle is triggered on touch devices using `:focus` and tabindex
 */
.uk-animation-toggle:not(:hover):not(:focus) [class*='uk-animation-'] {
	animation-name: none;
}

/*
 * 1. Prevent tab highlighting on iOS.
 */
.uk-animation-toggle {
	/* 1 */
	-webkit-tap-highlight-color: transparent;
}

/*
 * Remove outline for `tabindex`
 */
.uk-animation-toggle:focus {
	outline: none;
}

/* Keyframes used by animation classes
 ========================================================================== */
/*
 * Fade
 */
@keyframes uk-fade {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

/*
 * Slide Top
 */
@keyframes uk-fade-top {
	0% {
		opacity: 0;
		transform: translateY(-100%);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

/*
 * Slide Bottom
 */
@keyframes uk-fade-bottom {
	0% {
		opacity: 0;
		transform: translateY(100%);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

/*
 * Slide Left
 */
@keyframes uk-fade-left {
	0% {
		opacity: 0;
		transform: translateX(-100%);
	}
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}

/*
 * Slide Right
 */
@keyframes uk-fade-right {
	0% {
		opacity: 0;
		transform: translateX(100%);
	}
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}

/*
 * Slide Top Small
 */
@keyframes uk-fade-top-small {
	0% {
		opacity: 0;
		transform: translateY(-10px);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

/*
 * Slide Bottom Small
 */
@keyframes uk-fade-bottom-small {
	0% {
		opacity: 0;
		transform: translateY(10px);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

/*
 * Slide Left Small
 */
@keyframes uk-fade-left-small {
	0% {
		opacity: 0;
		transform: translateX(-10px);
	}
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}

/*
 * Slide Right Small
 */
@keyframes uk-fade-right-small {
	0% {
		opacity: 0;
		transform: translateX(10px);
	}
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}

/*
 * Slide Top Medium
 */
@keyframes uk-fade-top-medium {
	0% {
		opacity: 0;
		transform: translateY(-50px);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

/*
 * Slide Bottom Medium
 */
@keyframes uk-fade-bottom-medium {
	0% {
		opacity: 0;
		transform: translateY(50px);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

/*
 * Slide Left Medium
 */
@keyframes uk-fade-left-medium {
	0% {
		opacity: 0;
		transform: translateX(-50px);
	}
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}

/*
 * Slide Right Medium
 */
@keyframes uk-fade-right-medium {
	0% {
		opacity: 0;
		transform: translateX(50px);
	}
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}

/*
 * Scale Up
 */
@keyframes uk-fade-scale-02 {
	0% {
		opacity: 0;
		transform: scale(0.2);
	}
	100% {
		opacity: 1;
		transform: scale(1);
	}
}

/*
 * Scale Down
 */
@keyframes uk-fade-scale-18 {
	0% {
		opacity: 0;
		transform: scale(1.8);
	}
	100% {
		opacity: 1;
		transform: scale(1);
	}
}

/*
 * Kenburns
 */
@keyframes uk-scale-kenburns {
	0% {
		transform: scale(1);
	}
	100% {
		transform: scale(1.2);
	}
}

/*
 * Shake
 */
@keyframes uk-shake {
	0%, 100% {
		transform: translateX(0);
	}
	10% {
		transform: translateX(-9px);
	}
	20% {
		transform: translateX(8px);
	}
	30% {
		transform: translateX(-7px);
	}
	40% {
		transform: translateX(6px);
	}
	50% {
		transform: translateX(-5px);
	}
	60% {
		transform: translateX(4px);
	}
	70% {
		transform: translateX(-3px);
	}
	80% {
		transform: translateX(2px);
	}
	90% {
		transform: translateX(-1px);
	}
}

/*
 * Stroke
 */
@keyframes uk-stroke {
	0% {
		stroke-dashoffset: var(--uk-animation-stroke);
	}
	100% {
		stroke-dashoffset: 0;
	}
}

/* ========================================================================
   Component: Width
 ========================================================================== */
/* Equal child widths
 ========================================================================== */
[class*='uk-child-width'] > * {
	box-sizing: border-box;
	width: 100%;
}

.uk-child-width-1-2 > * {
	width: 50%;
}

.uk-child-width-1-3 > * {
	width: calc(100% * 1 / 3.001);
}

.uk-child-width-1-4 > * {
	width: 25%;
}

.uk-child-width-1-5 > * {
	width: 20%;
}

.uk-child-width-1-6 > * {
	width: calc(100% * 1 / 6.001);
}

.uk-child-width-auto > * {
	width: auto;
}

/*
 * 1. Reset the `min-width`, which is set to auto by default, because
 *    flex items won't shrink below their minimum intrinsic content size.
 *    Using `1px` instead of `0`, so items still wrap into the next line,
 *    if they have zero width and padding and the predecessor is 100% wide.
 */
.uk-child-width-expand > :not([class*='uk-width']) {
	flex: 1;
	/* 1 */
	min-width: 1px;
}

/* Phone landscape and bigger */
@media (min-width: 640px) {
	.uk-child-width-1-1\@s > * {
		width: 100%;
	}
	.uk-child-width-1-2\@s > * {
		width: 50%;
	}
	.uk-child-width-1-3\@s > * {
		width: calc(100% * 1 / 3.001);
	}
	.uk-child-width-1-4\@s > * {
		width: 25%;
	}
	.uk-child-width-1-5\@s > * {
		width: 20%;
	}
	.uk-child-width-1-6\@s > * {
		width: calc(100% * 1 / 6.001);
	}
	.uk-child-width-auto\@s > * {
		width: auto;
	}
	.uk-child-width-expand\@s > :not([class*='uk-width']) {
		flex: 1;
		min-width: 1px;
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-child-width-1-1\@m > * {
		width: 100%;
	}
	.uk-child-width-1-2\@m > * {
		width: 50%;
	}
	.uk-child-width-1-3\@m > * {
		width: calc(100% * 1 / 3.001);
	}
	.uk-child-width-1-4\@m > * {
		width: 25%;
	}
	.uk-child-width-1-5\@m > * {
		width: 20%;
	}
	.uk-child-width-1-6\@m > * {
		width: calc(100% * 1 / 6.001);
	}
	.uk-child-width-auto\@m > * {
		width: auto;
	}
	.uk-child-width-expand\@m > :not([class*='uk-width']) {
		flex: 1;
		min-width: 1px;
	}
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-child-width-1-1\@l > * {
		width: 100%;
	}
	.uk-child-width-1-2\@l > * {
		width: 50%;
	}
	.uk-child-width-1-3\@l > * {
		width: calc(100% * 1 / 3.001);
	}
	.uk-child-width-1-4\@l > * {
		width: 25%;
	}
	.uk-child-width-1-5\@l > * {
		width: 20%;
	}
	.uk-child-width-1-6\@l > * {
		width: calc(100% * 1 / 6.001);
	}
	.uk-child-width-auto\@l > * {
		width: auto;
	}
	.uk-child-width-expand\@l > :not([class*='uk-width']) {
		flex: 1;
		min-width: 1px;
	}
}

/* Large screen and bigger */
@media (min-width: 1600px) {
	.uk-child-width-1-1\@xl > * {
		width: 100%;
	}
	.uk-child-width-1-2\@xl > * {
		width: 50%;
	}
	.uk-child-width-1-3\@xl > * {
		width: calc(100% * 1 / 3.001);
	}
	.uk-child-width-1-4\@xl > * {
		width: 25%;
	}
	.uk-child-width-1-5\@xl > * {
		width: 20%;
	}
	.uk-child-width-1-6\@xl > * {
		width: calc(100% * 1 / 6.001);
	}
	.uk-child-width-auto\@xl > * {
		width: auto;
	}
	.uk-child-width-expand\@xl > :not([class*='uk-width']) {
		flex: 1;
		min-width: 1px;
	}
}

/* Single Widths
 ========================================================================== */
/*
 * 1. `max-width` is needed for the pixel-based classes
 */
[class*='uk-width'] {
	box-sizing: border-box;
	width: 100%;
	/* 1 */
	max-width: 100%;
}

/* Halves */
.uk-width-1-2 {
	width: 50%;
}

/* Thirds */
.uk-width-1-3 {
	width: calc(100% * 1 / 3.001);
}

.uk-width-2-3 {
	width: calc(100% * 2 / 3.001);
}

/* Quarters */
.uk-width-1-4 {
	width: 25%;
}

.uk-width-3-4 {
	width: 75%;
}

/* Fifths */
.uk-width-1-5 {
	width: 20%;
}

.uk-width-2-5 {
	width: 40%;
}

.uk-width-3-5 {
	width: 60%;
}

.uk-width-4-5 {
	width: 80%;
}

/* Sixths */
.uk-width-1-6 {
	width: calc(100% * 1 / 6.001);
}

.uk-width-5-6 {
	width: calc(100% * 5 / 6.001);
}

/* Pixel */
.uk-width-small {
	width: 150px;
}

.uk-width-medium {
	width: 300px;
}

.uk-width-large {
	width: 450px;
}

.uk-width-xlarge {
	width: 600px;
}

.uk-width-2xlarge {
	width: 750px;
}

/* Auto */
.uk-width-auto {
	width: auto;
}

/* Expand */
.uk-width-expand {
	flex: 1;
	min-width: 1px;
}

/* Phone landscape and bigger */
@media (min-width: 640px) {
	/* Whole */
	.uk-width-1-1\@s {
		width: 100%;
	}
	/* Halves */
	.uk-width-1-2\@s {
		width: 50%;
	}
	/* Thirds */
	.uk-width-1-3\@s {
		width: calc(100% * 1 / 3.001);
	}
	.uk-width-2-3\@s {
		width: calc(100% * 2 / 3.001);
	}
	/* Quarters */
	.uk-width-1-4\@s {
		width: 25%;
	}
	.uk-width-3-4\@s {
		width: 75%;
	}
	/* Fifths */
	.uk-width-1-5\@s {
		width: 20%;
	}
	.uk-width-2-5\@s {
		width: 40%;
	}
	.uk-width-3-5\@s {
		width: 60%;
	}
	.uk-width-4-5\@s {
		width: 80%;
	}
	/* Sixths */
	.uk-width-1-6\@s {
		width: calc(100% * 1 / 6.001);
	}
	.uk-width-5-6\@s {
		width: calc(100% * 5 / 6.001);
	}
	/* Pixel */
	.uk-width-small\@s {
		width: 150px;
	}
	.uk-width-medium\@s {
		width: 300px;
	}
	.uk-width-large\@s {
		width: 450px;
	}
	.uk-width-xlarge\@s {
		width: 600px;
	}
	.uk-width-2xlarge\@s {
		width: 750px;
	}
	/* Auto */
	.uk-width-auto\@s {
		width: auto;
	}
	/* Expand */
	.uk-width-expand\@s {
		flex: 1;
		min-width: 1px;
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	/* Whole */
	.uk-width-1-1\@m {
		width: 100%;
	}
	/* Halves */
	.uk-width-1-2\@m {
		width: 50%;
	}
	/* Thirds */
	.uk-width-1-3\@m {
		width: calc(100% * 1 / 3.001);
	}
	.uk-width-2-3\@m {
		width: calc(100% * 2 / 3.001);
	}
	/* Quarters */
	.uk-width-1-4\@m {
		width: 25%;
	}
	.uk-width-3-4\@m {
		width: 75%;
	}
	/* Fifths */
	.uk-width-1-5\@m {
		width: 20%;
	}
	.uk-width-2-5\@m {
		width: 40%;
	}
	.uk-width-3-5\@m {
		width: 60%;
	}
	.uk-width-4-5\@m {
		width: 80%;
	}
	/* Sixths */
	.uk-width-1-6\@m {
		width: calc(100% * 1 / 6.001);
	}
	.uk-width-5-6\@m {
		width: calc(100% * 5 / 6.001);
	}
	/* Pixel */
	.uk-width-small\@m {
		width: 150px;
	}
	.uk-width-medium\@m {
		width: 300px;
	}
	.uk-width-large\@m {
		width: 450px;
	}
	.uk-width-xlarge\@m {
		width: 600px;
	}
	.uk-width-2xlarge\@m {
		width: 750px;
	}
	/* Auto */
	.uk-width-auto\@m {
		width: auto;
	}
	/* Expand */
	.uk-width-expand\@m {
		flex: 1;
		min-width: 1px;
	}
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	/* Whole */
	.uk-width-1-1\@l {
		width: 100%;
	}
	/* Halves */
	.uk-width-1-2\@l {
		width: 50%;
	}
	/* Thirds */
	.uk-width-1-3\@l {
		width: calc(100% * 1 / 3.001);
	}
	.uk-width-2-3\@l {
		width: calc(100% * 2 / 3.001);
	}
	/* Quarters */
	.uk-width-1-4\@l {
		width: 25%;
	}
	.uk-width-3-4\@l {
		width: 75%;
	}
	/* Fifths */
	.uk-width-1-5\@l {
		width: 20%;
	}
	.uk-width-2-5\@l {
		width: 40%;
	}
	.uk-width-3-5\@l {
		width: 60%;
	}
	.uk-width-4-5\@l {
		width: 80%;
	}
	/* Sixths */
	.uk-width-1-6\@l {
		width: calc(100% * 1 / 6.001);
	}
	.uk-width-5-6\@l {
		width: calc(100% * 5 / 6.001);
	}
	/* Pixel */
	.uk-width-small\@l {
		width: 150px;
	}
	.uk-width-medium\@l {
		width: 300px;
	}
	.uk-width-large\@l {
		width: 450px;
	}
	.uk-width-xlarge\@l {
		width: 600px;
	}
	.uk-width-2xlarge\@l {
		width: 750px;
	}
	/* Auto */
	.uk-width-auto\@l {
		width: auto;
	}
	/* Expand */
	.uk-width-expand\@l {
		flex: 1;
		min-width: 1px;
	}
}

/* Large screen and bigger */
@media (min-width: 1600px) {
	/* Whole */
	.uk-width-1-1\@xl {
		width: 100%;
	}
	/* Halves */
	.uk-width-1-2\@xl {
		width: 50%;
	}
	/* Thirds */
	.uk-width-1-3\@xl {
		width: calc(100% * 1 / 3.001);
	}
	.uk-width-2-3\@xl {
		width: calc(100% * 2 / 3.001);
	}
	/* Quarters */
	.uk-width-1-4\@xl {
		width: 25%;
	}
	.uk-width-3-4\@xl {
		width: 75%;
	}
	/* Fifths */
	.uk-width-1-5\@xl {
		width: 20%;
	}
	.uk-width-2-5\@xl {
		width: 40%;
	}
	.uk-width-3-5\@xl {
		width: 60%;
	}
	.uk-width-4-5\@xl {
		width: 80%;
	}
	/* Sixths */
	.uk-width-1-6\@xl {
		width: calc(100% * 1 / 6.001);
	}
	.uk-width-5-6\@xl {
		width: calc(100% * 5 / 6.001);
	}
	/* Pixel */
	.uk-width-small\@xl {
		width: 150px;
	}
	.uk-width-medium\@xl {
		width: 300px;
	}
	.uk-width-large\@xl {
		width: 450px;
	}
	.uk-width-xlarge\@xl {
		width: 600px;
	}
	.uk-width-2xlarge\@xl {
		width: 750px;
	}
	/* Auto */
	.uk-width-auto\@xl {
		width: auto;
	}
	/* Expand */
	.uk-width-expand\@xl {
		flex: 1;
		min-width: 1px;
	}
}

/* ========================================================================
   Component: Height
 ========================================================================== */
[class*='uk-height'] {
	box-sizing: border-box;
}

/*
 * Only works if parent element has a height set
 */
.uk-height-1-1 {
	height: 100%;
}

/*
 * Useful to create image teasers
 */
.uk-height-viewport {
	min-height: 100vh;
}

/*
 * Pixel
 * Useful for `overflow: auto`
 */
.uk-height-small {
	height: 150px;
}

.uk-height-medium {
	height: 300px;
}

.uk-height-large {
	height: 450px;
}

.uk-height-max-small {
	max-height: 150px;
}

.uk-height-max-medium {
	max-height: 300px;
}

.uk-height-max-large {
	max-height: 450px;
}

/* ========================================================================
   Component: Text
 ========================================================================== */
/* Style modifiers
 ========================================================================== */
.uk-text-lead {
	font-size: 1.5rem;
	line-height: 1.5;
	color: #333;
}

.uk-text-meta {
	font-size: 0.875rem;
	line-height: 1.4;
	color: #999;
}

.uk-text-meta a {
	color: #999;
}

.uk-text-meta a:hover {
	color: #666;
	text-decoration: none;
}

/* Size modifiers
 ========================================================================== */
.uk-text-small {
	font-size: 0.875rem;
	line-height: 1.5;
}

.uk-text-large {
	font-size: 1.5rem;
	line-height: 1.5;
}

.uk-text-default {
	font-size: 16px;
	line-height: 1.5;
}

/* Weight modifier
 ========================================================================== */
.uk-text-light {
	font-weight: 300;
}

.uk-text-normal {
	font-weight: 400;
}

.uk-text-bold {
	font-weight: 700;
}

.uk-text-lighter {
	font-weight: lighter;
}

.uk-text-bolder {
	font-weight: bolder;
}

/* Style modifier
 ========================================================================== */
.uk-text-italic {
	font-style: italic;
}

/* Transform modifier
 ========================================================================== */
.uk-text-capitalize {
	text-transform: capitalize !important;
}

.uk-text-uppercase {
	text-transform: uppercase !important;
}

.uk-text-lowercase {
	text-transform: lowercase !important;
}

/* Color modifiers
 ========================================================================== */
.uk-text-muted {
	color: #999 !important;
}

.uk-text-emphasis {
	color: #333 !important;
}

.uk-text-primary {
	color: #1e87f0 !important;
}

.uk-text-secondary {
	color: #222 !important;
}

.uk-text-success {
	color: #32d296 !important;
}

.uk-text-warning {
	color: #faa05a !important;
}

.uk-text-danger {
	color: #f0506e !important;
}

/* Background modifier
 ========================================================================== */
/*
 * 1. The background clips to the foreground text. Works in Chrome, Firefox, Safari, Edge and Opera
 *    Default color is set to transparent
 * 2. Container fits the text
 * 3. Fallback color for IE11
 */
.uk-text-background {
	/* 1 */
	-webkit-background-clip: text;
	/* 2 */
	display: inline-block;
	/* 3 */
	color: #1e87f0 !important;
}

@supports (-webkit-background-clip: text) {
	.uk-text-background {
		background-color: #1e87f0;
		color: transparent !important;
	}
}

/* Alignment modifiers
 ========================================================================== */
.uk-text-left {
	text-align: left !important;
}

.uk-text-right {
	text-align: right !important;
}

.uk-text-center {
	text-align: center !important;
}

.uk-text-justify {
	text-align: justify !important;
}

/* Phone landscape and bigger */
@media (min-width: 640px) {
	.uk-text-left\@s {
		text-align: left !important;
	}
	.uk-text-right\@s {
		text-align: right !important;
	}
	.uk-text-center\@s {
		text-align: center !important;
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-text-left\@m {
		text-align: left !important;
	}
	.uk-text-right\@m {
		text-align: right !important;
	}
	.uk-text-center\@m {
		text-align: center !important;
	}
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-text-left\@l {
		text-align: left !important;
	}
	.uk-text-right\@l {
		text-align: right !important;
	}
	.uk-text-center\@l {
		text-align: center !important;
	}
}

/* Large screen and bigger */
@media (min-width: 1600px) {
	.uk-text-left\@xl {
		text-align: left !important;
	}
	.uk-text-right\@xl {
		text-align: right !important;
	}
	.uk-text-center\@xl {
		text-align: center !important;
	}
}

/*
 * Vertical
 */
.uk-text-top {
	vertical-align: top !important;
}

.uk-text-middle {
	vertical-align: middle !important;
}

.uk-text-bottom {
	vertical-align: bottom !important;
}

.uk-text-baseline {
	vertical-align: baseline !important;
}

/* Wrap modifiers
 ========================================================================== */
/*
 * Prevent text from wrapping onto multiple lines
 */
.uk-text-nowrap {
	white-space: nowrap;
}

/*
 * 1. Make sure a max-width is set after which truncation can occur
 * 2. Prevent text from wrapping onto multiple lines, and truncate with an ellipsis
 * 3. Fix for table cells
 */
.uk-text-truncate {
	/* 1 */
	max-width: 100%;
	/* 2 */
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* 2 */
th.uk-text-truncate,
td.uk-text-truncate {
	max-width: 0;
}

/*
 * 1. Wrap long words onto the next line and break them if they are too long to fit
 * 2. Legacy `word-wrap` as fallback for `overflow-wrap`
 * 3. Fix `overflow-wrap` which doesn't work with table cells in Chrome, Opera, IE11 and Edge
 *    Must use `break-all` to support IE11 and Edge
 * Note: Not using `hyphens: auto;` because it hyphenates text even if not needed
 */
.uk-text-break {
	/* 1 */
	overflow-wrap: break-word;
	/* 2 */
	word-wrap: break-word;
}

/* 3 */
th.uk-text-break,
td.uk-text-break {
	word-break: break-all;
}

/* ========================================================================
   Component: Column
 ========================================================================== */
[class*='uk-column-'] {
	column-gap: 30px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	[class*='uk-column-'] {
		column-gap: 40px;
	}
}

/*
 * Fix image 1px line wrapping into the next column in Chrome
 */
[class*='uk-column-'] img {
	transform: translate3d(0, 0, 0);
}

/* Divider
 ========================================================================== */
/*
 * 1. Double the column gap
 */
.uk-column-divider {
	column-rule: 1px solid #396e90;
	/* 1 */
	column-gap: 60px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-column-divider {
		column-gap: 80px;
	}
}

/* Width modifiers
 ========================================================================== */
.uk-column-1-2 {
	column-count: 2;
}

.uk-column-1-3 {
	column-count: 3;
}

.uk-column-1-4 {
	column-count: 4;
}

.uk-column-1-5 {
	column-count: 5;
}

.uk-column-1-6 {
	column-count: 6;
}

/* Phone landscape and bigger */
@media (min-width: 640px) {
	.uk-column-1-2\@s {
		column-count: 2;
	}
	.uk-column-1-3\@s {
		column-count: 3;
	}
	.uk-column-1-4\@s {
		column-count: 4;
	}
	.uk-column-1-5\@s {
		column-count: 5;
	}
	.uk-column-1-6\@s {
		column-count: 6;
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-column-1-2\@m {
		column-count: 2;
	}
	.uk-column-1-3\@m {
		column-count: 3;
	}
	.uk-column-1-4\@m {
		column-count: 4;
	}
	.uk-column-1-5\@m {
		column-count: 5;
	}
	.uk-column-1-6\@m {
		column-count: 6;
	}
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-column-1-2\@l {
		column-count: 2;
	}
	.uk-column-1-3\@l {
		column-count: 3;
	}
	.uk-column-1-4\@l {
		column-count: 4;
	}
	.uk-column-1-5\@l {
		column-count: 5;
	}
	.uk-column-1-6\@l {
		column-count: 6;
	}
}

/* Large screen and bigger */
@media (min-width: 1600px) {
	.uk-column-1-2\@xl {
		column-count: 2;
	}
	.uk-column-1-3\@xl {
		column-count: 3;
	}
	.uk-column-1-4\@xl {
		column-count: 4;
	}
	.uk-column-1-5\@xl {
		column-count: 5;
	}
	.uk-column-1-6\@xl {
		column-count: 6;
	}
}

/* Make element span across all columns
 * Does not work in Firefox yet
 ========================================================================== */
.uk-column-span {
	column-span: all;
}

/* ========================================================================
   Component: Cover
 ========================================================================== */
/*
 * Works with iframes and embedded content
 * 1. Reset responsiveness for embedded content
 * 2. Center object
 * Note: Percent values on the `top` property only works if this element
 *       is absolute positioned or if the container has a height
 */
.uk-cover {
	/* 1 */
	max-width: none;
	/* 2 */
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}

iframe.uk-cover {
	pointer-events: none;
}

/* Container
 ========================================================================== */
/*
 * 1. Parent container which clips resized object
 * 2. Needed if the child is positioned absolute. See note above
 */
.uk-cover-container {
	/* 1 */
	overflow: hidden;
	/* 2 */
	position: relative;
}

/* ========================================================================
   Component: Background
 ========================================================================== */
/* Color
 ========================================================================== */
.uk-background-default {
	background-color: #fff;
}

.uk-background-muted {
	background-color: #f8f8f8;
}

.uk-background-primary {
	background-color: #1e87f0;
}

.uk-background-secondary {
	background-color: #222;
}

/* Size
 ========================================================================== */
.uk-background-cover,
.uk-background-contain {
	background-position: 50% 50%;
	background-repeat: no-repeat;
}

.uk-background-cover {
	background-size: cover;
}

.uk-background-contain {
	background-size: contain;
}

/* Position
 ========================================================================== */
.uk-background-top-left {
	background-position: 0 0;
}

.uk-background-top-center {
	background-position: 50% 0;
}

.uk-background-top-right {
	background-position: 100% 0;
}

.uk-background-center-left {
	background-position: 0 50%;
}

.uk-background-center-center {
	background-position: 50% 50%;
}

.uk-background-center-right {
	background-position: 100% 50%;
}

.uk-background-bottom-left {
	background-position: 0 100%;
}

.uk-background-bottom-center {
	background-position: 50% 100%;
}

.uk-background-bottom-right {
	background-position: 100% 100%;
}

/* Repeat
 ========================================================================== */
.uk-background-norepeat {
	background-repeat: no-repeat;
}

/* Attachment
 ========================================================================== */
/*
 * 1. Fix bug introduced in Chrome 67: the background image is not visible if any element on the page uses `translate3d`
 */
.uk-background-fixed {
	background-attachment: fixed;
	/* 1 */
	backface-visibility: hidden;
}

/*
 * Exclude touch devices because `fixed` doesn't work on iOS and Android
 */
@media (pointer: coarse) {
	.uk-background-fixed {
		background-attachment: scroll;
	}
}

/* Image
 ========================================================================== */
/* Phone portrait and smaller */
@media (max-width: 639px) {
	.uk-background-image\@s {
		background-image: none !important;
	}
}

/* Phone landscape and smaller */
@media (max-width: 959px) {
	.uk-background-image\@m {
		background-image: none !important;
	}
}

/* Tablet landscape and smaller */
@media (max-width: 1199px) {
	.uk-background-image\@l {
		background-image: none !important;
	}
}

/* Desktop and smaller */
@media (max-width: 1599px) {
	.uk-background-image\@xl {
		background-image: none !important;
	}
}

/* Blend modes
 ========================================================================== */
.uk-background-blend-multiply {
	background-blend-mode: multiply;
}

.uk-background-blend-screen {
	background-blend-mode: screen;
}

.uk-background-blend-overlay {
	background-blend-mode: overlay;
}

.uk-background-blend-darken {
	background-blend-mode: darken;
}

.uk-background-blend-lighten {
	background-blend-mode: lighten;
}

.uk-background-blend-color-dodge {
	background-blend-mode: color-dodge;
}

.uk-background-blend-color-burn {
	background-blend-mode: color-burn;
}

.uk-background-blend-hard-light {
	background-blend-mode: hard-light;
}

.uk-background-blend-soft-light {
	background-blend-mode: soft-light;
}

.uk-background-blend-difference {
	background-blend-mode: difference;
}

.uk-background-blend-exclusion {
	background-blend-mode: exclusion;
}

.uk-background-blend-hue {
	background-blend-mode: hue;
}

.uk-background-blend-saturation {
	background-blend-mode: saturation;
}

.uk-background-blend-color {
	background-blend-mode: color;
}

.uk-background-blend-luminosity {
	background-blend-mode: luminosity;
}

/* ========================================================================
   Component: Align
 ========================================================================== */
/*
 * Default
 */
[class*='uk-align'] {
	display: block;
	margin-bottom: 30px;
}

* + [class*='uk-align'] {
	margin-top: 30px;
}

/*
 * Center
 */
.uk-align-center {
	margin-left: auto;
	margin-right: auto;
}

/*
 * Left/Right
 */
.uk-align-left {
	margin-top: 0;
	margin-right: 30px;
	float: left;
}

.uk-align-right {
	margin-top: 0;
	margin-left: 30px;
	float: right;
}

/* Phone landscape and bigger */
@media (min-width: 640px) {
	.uk-align-left\@s {
		margin-top: 0;
		margin-right: 30px;
		float: left;
	}
	.uk-align-right\@s {
		margin-top: 0;
		margin-left: 30px;
		float: right;
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-align-left\@m {
		margin-top: 0;
		margin-right: 30px;
		float: left;
	}
	.uk-align-right\@m {
		margin-top: 0;
		margin-left: 30px;
		float: right;
	}
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-align-left\@l {
		margin-top: 0;
		float: left;
	}
	.uk-align-right\@l {
		margin-top: 0;
		float: right;
	}
	.uk-align-left,
	.uk-align-left\@s,
	.uk-align-left\@m,
	.uk-align-left\@l {
		margin-right: 40px;
	}
	.uk-align-right,
	.uk-align-right\@s,
	.uk-align-right\@m,
	.uk-align-right\@l {
		margin-left: 40px;
	}
}

/* Large screen and bigger */
@media (min-width: 1600px) {
	.uk-align-left\@xl {
		margin-top: 0;
		margin-right: 40px;
		float: left;
	}
	.uk-align-right\@xl {
		margin-top: 0;
		margin-left: 40px;
		float: right;
	}
}

/* ========================================================================
   Component: SVG
 ========================================================================== */
/*
 * 1. Fill all SVG elements with the current text color if no `fill` attribute is set
 * 2. Set the fill and stroke color of all SVG elements to the current text color
 */
/* 1 */
.uk-svg,
.uk-svg:not(.uk-preserve) [fill*='#']:not(.uk-preserve) {
	fill: currentcolor;
}

.uk-svg:not(.uk-preserve) [stroke*='#']:not(.uk-preserve) {
	stroke: currentcolor;
}

/*
 * Fix Firefox blurry SVG rendering: https://bugzilla.mozilla.org/show_bug.cgi?id=1046835
 */
.uk-svg {
	transform: translate(0, 0);
}

/* ========================================================================
   Component: Utility
 ========================================================================== */
/* Panel
 ========================================================================== */
.uk-panel {
	display: flow-root;
	position: relative;
	box-sizing: border-box;
}

/*
 * Remove margin from the last-child
 */
.uk-panel > :last-child {
	margin-bottom: 0;
}

/*
 * Scrollable
 */
.uk-panel-scrollable {
	height: 170px;
	padding: 10px;
	border: 1px solid #396e90;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	resize: both;
}

/* Clearfix
 ========================================================================== */
/*
 * 1. `table-cell` is used with `::before` because `table` creates a 1px gap when it becomes a flex item, only in Webkit
 * 2. `table` is used again with `::after` because `clear` only works with block elements.
 * Note: `display: block` with `overflow: hidden` is currently not working in the latest Safari
 */
/* 1 */
.uk-clearfix::before {
	content: "";
	display: table-cell;
}

/* 2 */
.uk-clearfix::after {
	content: "";
	display: table;
	clear: both;
}

/* Float
 ========================================================================== */
/*
 * 1. Prevent content overflow
 */
.uk-float-left {
	float: left;
}

.uk-float-right {
	float: right;
}

/* 1 */
[class*='uk-float-'] {
	max-width: 100%;
}

/* Overfow
 ========================================================================== */
.uk-overflow-hidden {
	overflow: hidden;
}

/*
 * Enable scrollbars if content is clipped
 * Note: Firefox ignores `padding-bottom` for the scrollable overflow https://bugzilla.mozilla.org/show_bug.cgi?id=748518
 */
.uk-overflow-auto {
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

.uk-overflow-auto > :last-child {
	margin-bottom: 0;
}

/* Resize
 ========================================================================== */
.uk-resize {
	resize: both;
}

.uk-resize-vertical {
	resize: vertical;
}

/* Display
 ========================================================================== */
.uk-display-block {
	display: block !important;
}

.uk-display-inline {
	display: inline !important;
}

.uk-display-inline-block {
	display: inline-block !important;
}

/* Inline
 ========================================================================== */
/*
 * 1. Container fits its content
 * 2. Create position context
 * 3. Prevent content overflow
 * 4. Behave like most inline-block elements
 * 5. Force hardware acceleration without creating a new stacking context
 *    to fix 1px glitch when combined with overlays and transitions in Webkit
 * 6. Clip child elements
 */
[class*='uk-inline'] {
	/* 1 */
	display: inline-block;
	/* 2 */
	position: relative;
	/* 3 */
	max-width: 100%;
	/* 4 */
	vertical-align: middle;
	/* 5 */
	-webkit-backface-visibility: hidden;
}

.uk-inline-clip {
	/* 6 */
	overflow: hidden;
}

/* Responsive objects
 ========================================================================== */
/*
 * Preserve original dimensions
 * Because `img, `video`, `canvas` and  `audio` are already responsive by default, see Base component
 */
.uk-preserve-width,
.uk-preserve-width canvas,
.uk-preserve-width img,
.uk-preserve-width svg,
.uk-preserve-width video {
	max-width: none;
}

/*
 * Responsiveness
 * Corrects `max-width` and `max-height` behavior if padding and border are used
 */
.uk-responsive-width,
.uk-responsive-height {
	box-sizing: border-box;
}

/*
 * 1. Set a maximum width. `important` needed to override `uk-preserve-width img`
 * 2. Auto scale the height. Only needed if `height` attribute is present
 */
.uk-responsive-width {
	/* 1 */
	max-width: 100% !important;
	/* 2 */
	height: auto;
}

/*
 * 1. Set a maximum height. Only works if the parent element has a fixed height
 * 2. Auto scale the width. Only needed if `width` attribute is present
 * 3. Reset max-width, which `img, `video`, `canvas` and  `audio` already have by default
 */
.uk-responsive-height {
	/* 1 */
	max-height: 100%;
	/* 2 */
	width: auto;
	/* 3 */
	max-width: none;
}

/* Border
 ========================================================================== */
.uk-border-circle {
	border-radius: 50%;
}

.uk-border-pill {
	border-radius: 500px;
}

.uk-border-rounded {
	border-radius: 5px;
}

/*
 * Fix `overflow: hidden` to be ignored with border-radius and CSS transforms in Webkit
 */
.uk-inline-clip[class*='uk-border-'] {
	-webkit-transform: translateZ(0);
}

/* Box-shadow
 ========================================================================== */
.uk-box-shadow-small {
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.uk-box-shadow-medium {
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
}

.uk-box-shadow-large {
	box-shadow: 0 14px 25px rgba(0, 0, 0, 0.16);
}

.uk-box-shadow-xlarge {
	box-shadow: 0 28px 50px rgba(0, 0, 0, 0.16);
}

/*
 * Hover
 */
[class*='uk-box-shadow-hover'] {
	transition: box-shadow 0.1s ease-in-out;
}

.uk-box-shadow-hover-small:hover {
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.uk-box-shadow-hover-medium:hover {
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
}

.uk-box-shadow-hover-large:hover {
	box-shadow: 0 14px 25px rgba(0, 0, 0, 0.16);
}

.uk-box-shadow-hover-xlarge:hover {
	box-shadow: 0 28px 50px rgba(0, 0, 0, 0.16);
}

/* Box-shadow bottom
 ========================================================================== */
/*
 * 1. Set position.
 * 2. Set style
 * 3. Blur doesn't work on pseudo elements with negative `z-index` in Edge.
 *    Solved by using `before` and add position context to child elements.
 */
@supports (filter: blur(0)) {
	.uk-box-shadow-bottom {
		display: inline-block;
		position: relative;
		max-width: 100%;
		vertical-align: middle;
	}
	.uk-box-shadow-bottom::before {
		content: '';
		/* 1 */
		position: absolute;
		bottom: -30px;
		left: 0;
		right: 0;
		/* 2 */
		height: 30px;
		border-radius: 100%;
		background: #444;
		filter: blur(20px);
	}
	/* 3 */
	.uk-box-shadow-bottom > * {
		position: relative;
	}
}

/* Drop cap
 ========================================================================== */
/*
 * 1. Firefox doesn't apply `::first-letter` if the first letter is inside child elements
 *    https://bugzilla.mozilla.org/show_bug.cgi?id=214004
 * 2. In Firefox, a floating `::first-letter` doesn't have a line box and there for no `line-height`
 *    https://bugzilla.mozilla.org/show_bug.cgi?id=317933
 * 3. Caused by 1.: Edge creates two nested `::first-letter` containers, one for each selector
 *    This doubles the `font-size` exponential when using the `em` unit.
 */
.uk-dropcap::first-letter,
.uk-dropcap > p:first-of-type::first-letter {
	display: block;
	margin-right: 10px;
	float: left;
	font-size: 4.5em;
	line-height: 1;
	margin-bottom: -2px;
}

/* 2 */
@-moz-document url-prefix() {
	.uk-dropcap::first-letter,
	.uk-dropcap > p:first-of-type::first-letter {
		margin-top: 1.1%;
	}
}

/* 3 */
@supports (-ms-ime-align: auto) {
	.uk-dropcap > p:first-of-type::first-letter {
		font-size: 1em;
	}
}

/* Logo
 ========================================================================== */
/*
 * 1. Required for `a`
 */
.uk-logo {
	font-size: 1.5rem;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	color: #666;
	/* 1 */
	text-decoration: none;
}

/* Hover + Focus */
.uk-logo:hover,
.uk-logo:focus {
	color: #666;
	outline: none;
	/* 1 */
	text-decoration: none;
}

.uk-logo-inverse {
	display: none;
}

/* Disabled State
 ========================================================================== */
.uk-disabled {
	pointer-events: none;
}

/* Drag State
 ========================================================================== */
/*
 * 1. Needed if moving over elements with have their own cursor on hover, e.g. links or buttons
 * 2. Fix dragging over iframes
 */
.uk-drag,
.uk-drag * {
	cursor: move;
}

/* 2 */
.uk-drag iframe {
	pointer-events: none;
}

/* Dragover State
 ========================================================================== */
/*
 * Create a box-shadow when dragging a file over the upload area
 */
.uk-dragover {
	box-shadow: 0 0 20px rgba(100, 100, 100, 0.3);
}

/* Blend modes
 ========================================================================== */
.uk-blend-multiply {
	mix-blend-mode: multiply;
}

.uk-blend-screen {
	mix-blend-mode: screen;
}

.uk-blend-overlay {
	mix-blend-mode: overlay;
}

.uk-blend-darken {
	mix-blend-mode: darken;
}

.uk-blend-lighten {
	mix-blend-mode: lighten;
}

.uk-blend-color-dodge {
	mix-blend-mode: color-dodge;
}

.uk-blend-color-burn {
	mix-blend-mode: color-burn;
}

.uk-blend-hard-light {
	mix-blend-mode: hard-light;
}

.uk-blend-soft-light {
	mix-blend-mode: soft-light;
}

.uk-blend-difference {
	mix-blend-mode: difference;
}

.uk-blend-exclusion {
	mix-blend-mode: exclusion;
}

.uk-blend-hue {
	mix-blend-mode: hue;
}

.uk-blend-saturation {
	mix-blend-mode: saturation;
}

.uk-blend-color {
	mix-blend-mode: color;
}

.uk-blend-luminosity {
	mix-blend-mode: luminosity;
}

/* Transform
========================================================================== */
.uk-transform-center {
	transform: translate(-50%, -50%);
}

/* Transform Origin
========================================================================== */
.uk-transform-origin-top-left {
	transform-origin: 0 0;
}

.uk-transform-origin-top-center {
	transform-origin: 50% 0;
}

.uk-transform-origin-top-right {
	transform-origin: 100% 0;
}

.uk-transform-origin-center-left {
	transform-origin: 0 50%;
}

.uk-transform-origin-center-right {
	transform-origin: 100% 50%;
}

.uk-transform-origin-bottom-left {
	transform-origin: 0 100%;
}

.uk-transform-origin-bottom-center {
	transform-origin: 50% 100%;
}

.uk-transform-origin-bottom-right {
	transform-origin: 100% 100%;
}

/* ========================================================================
   Component: Flex
 ========================================================================== */
.uk-flex {
	display: flex;
}

.uk-flex-inline {
	display: inline-flex;
}

/*
 * Remove pseudo elements created by micro clearfix as precaution
 */
.uk-flex::before,
.uk-flex::after,
.uk-flex-inline::before,
.uk-flex-inline::after {
	display: none;
}

/* Alignment
 ========================================================================== */
/*
 * Align items along the main axis of the current line of the flex container
 * Row: Horizontal
 */
.uk-flex-left {
	justify-content: flex-start;
}

.uk-flex-center {
	justify-content: center;
}

.uk-flex-right {
	justify-content: flex-end;
}

.uk-flex-between {
	justify-content: space-between;
}

.uk-flex-around {
	justify-content: space-around;
}

/* Phone landscape and bigger */
@media (min-width: 640px) {
	.uk-flex-left\@s {
		justify-content: flex-start;
	}
	.uk-flex-center\@s {
		justify-content: center;
	}
	.uk-flex-right\@s {
		justify-content: flex-end;
	}
	.uk-flex-between\@s {
		justify-content: space-between;
	}
	.uk-flex-around\@s {
		justify-content: space-around;
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-flex-left\@m {
		justify-content: flex-start;
	}
	.uk-flex-center\@m {
		justify-content: center;
	}
	.uk-flex-right\@m {
		justify-content: flex-end;
	}
	.uk-flex-between\@m {
		justify-content: space-between;
	}
	.uk-flex-around\@m {
		justify-content: space-around;
	}
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-flex-left\@l {
		justify-content: flex-start;
	}
	.uk-flex-center\@l {
		justify-content: center;
	}
	.uk-flex-right\@l {
		justify-content: flex-end;
	}
	.uk-flex-between\@l {
		justify-content: space-between;
	}
	.uk-flex-around\@l {
		justify-content: space-around;
	}
}

/* Large screen and bigger */
@media (min-width: 1600px) {
	.uk-flex-left\@xl {
		justify-content: flex-start;
	}
	.uk-flex-center\@xl {
		justify-content: center;
	}
	.uk-flex-right\@xl {
		justify-content: flex-end;
	}
	.uk-flex-between\@xl {
		justify-content: space-between;
	}
	.uk-flex-around\@xl {
		justify-content: space-around;
	}
}

/*
 * Align items in the cross axis of the current line of the flex container
 * Row: Vertical
 */
.uk-flex-stretch {
	align-items: stretch;
}

.uk-flex-top {
	align-items: flex-start;
}

.uk-flex-middle {
	align-items: center;
}

.uk-flex-bottom {
	align-items: flex-end;
}

/* Direction
 ========================================================================== */
.uk-flex-row {
	flex-direction: row;
}

.uk-flex-row-reverse {
	flex-direction: row-reverse;
}

.uk-flex-column {
	flex-direction: column;
}

.uk-flex-column-reverse {
	flex-direction: column-reverse;
}

/* Wrap
 ========================================================================== */
.uk-flex-nowrap {
	flex-wrap: nowrap;
}

.uk-flex-wrap {
	flex-wrap: wrap;
}

.uk-flex-wrap-reverse {
	flex-wrap: wrap-reverse;
}

/*
 * Aligns items within the flex container when there is extra space in the cross-axis
 * Only works if there is more than one line of flex items
 */
.uk-flex-wrap-stretch {
	align-content: stretch;
}

.uk-flex-wrap-top {
	align-content: flex-start;
}

.uk-flex-wrap-middle {
	align-content: center;
}

.uk-flex-wrap-bottom {
	align-content: flex-end;
}

.uk-flex-wrap-between {
	align-content: space-between;
}

.uk-flex-wrap-around {
	align-content: space-around;
}

/* Item ordering
 ========================================================================== */
/*
 * Default is 0
 */
.uk-flex-first {
	order: -1;
}

.uk-flex-last {
	order: 99;
}

/* Phone landscape and bigger */
@media (min-width: 640px) {
	.uk-flex-first\@s {
		order: -1;
	}
	.uk-flex-last\@s {
		order: 99;
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-flex-first\@m {
		order: -1;
	}
	.uk-flex-last\@m {
		order: 99;
	}
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-flex-first\@l {
		order: -1;
	}
	.uk-flex-last\@l {
		order: 99;
	}
}

/* Large screen and bigger */
@media (min-width: 1600px) {
	.uk-flex-first\@xl {
		order: -1;
	}
	.uk-flex-last\@xl {
		order: 99;
	}
}

/* Item dimensions
 ========================================================================== */
/*
 * Initial: 0 1 auto
 * Content dimensions, but shrinks
 */
/*
 * No Flex: 0 0 auto
 * Content dimensions
 */
.uk-flex-none {
	flex: none;
}

/*
 * Relative Flex: 1 1 auto
 * Space is allocated considering content
 */
.uk-flex-auto {
	flex: auto;
}

/*
 * Absolute Flex: 1 1 0%
 * Space is allocated solely based on flex
 */
.uk-flex-1 {
	flex: 1;
}

/* ========================================================================
   Component: Margin
 ========================================================================== */
/*
 * Default
 */
.uk-margin {
	margin-bottom: 20px;
}

* + .uk-margin {
	margin-top: 20px !important;
}

.uk-margin-top {
	margin-top: 20px !important;
}

.uk-margin-bottom {
	margin-bottom: 20px !important;
}

.uk-margin-left {
	margin-left: 20px !important;
}

.uk-margin-right {
	margin-right: 20px !important;
}

/* Small
 ========================================================================== */
.uk-margin-small {
	margin-bottom: 10px;
}

* + .uk-margin-small {
	margin-top: 10px !important;
}

.uk-margin-small-top {
	margin-top: 10px !important;
}

.uk-margin-small-bottom {
	margin-bottom: 10px !important;
}

.uk-margin-small-left {
	margin-left: 10px !important;
}

.uk-margin-small-right {
	margin-right: 10px !important;
}

/* Medium
 ========================================================================== */
.uk-margin-medium {
	margin-bottom: 40px;
}

* + .uk-margin-medium {
	margin-top: 40px !important;
}

.uk-margin-medium-top {
	margin-top: 40px !important;
}

.uk-margin-medium-bottom {
	margin-bottom: 40px !important;
}

.uk-margin-medium-left {
	margin-left: 40px !important;
}

.uk-margin-medium-right {
	margin-right: 40px !important;
}

/* Large
 ========================================================================== */
.uk-margin-large {
	margin-bottom: 40px;
}

* + .uk-margin-large {
	margin-top: 40px !important;
}

.uk-margin-large-top {
	margin-top: 40px !important;
}

.uk-margin-large-bottom {
	margin-bottom: 40px !important;
}

.uk-margin-large-left {
	margin-left: 40px !important;
}

.uk-margin-large-right {
	margin-right: 40px !important;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-margin-large {
		margin-bottom: 70px;
	}
	* + .uk-margin-large {
		margin-top: 70px !important;
	}
	.uk-margin-large-top {
		margin-top: 70px !important;
	}
	.uk-margin-large-bottom {
		margin-bottom: 70px !important;
	}
	.uk-margin-large-left {
		margin-left: 70px !important;
	}
	.uk-margin-large-right {
		margin-right: 70px !important;
	}
}

/* XLarge
 ========================================================================== */
.uk-margin-xlarge {
	margin-bottom: 70px;
}

* + .uk-margin-xlarge {
	margin-top: 70px !important;
}

.uk-margin-xlarge-top {
	margin-top: 70px !important;
}

.uk-margin-xlarge-bottom {
	margin-bottom: 70px !important;
}

.uk-margin-xlarge-left {
	margin-left: 70px !important;
}

.uk-margin-xlarge-right {
	margin-right: 70px !important;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-margin-xlarge {
		margin-bottom: 140px;
	}
	* + .uk-margin-xlarge {
		margin-top: 140px !important;
	}
	.uk-margin-xlarge-top {
		margin-top: 140px !important;
	}
	.uk-margin-xlarge-bottom {
		margin-bottom: 140px !important;
	}
	.uk-margin-xlarge-left {
		margin-left: 140px !important;
	}
	.uk-margin-xlarge-right {
		margin-right: 140px !important;
	}
}

/* Auto
 ========================================================================== */
.uk-margin-auto {
	margin-left: auto !important;
	margin-right: auto !important;
}

.uk-margin-auto-top {
	margin-top: auto !important;
}

.uk-margin-auto-bottom {
	margin-bottom: auto !important;
}

.uk-margin-auto-left {
	margin-left: auto !important;
}

.uk-margin-auto-right {
	margin-right: auto !important;
}

.uk-margin-auto-vertical {
	margin-top: auto !important;
	margin-bottom: auto !important;
}

/* Phone landscape and bigger */
@media (min-width: 640px) {
	.uk-margin-auto\@s {
		margin-left: auto !important;
		margin-right: auto !important;
	}
	.uk-margin-auto-left\@s {
		margin-left: auto !important;
	}
	.uk-margin-auto-right\@s {
		margin-right: auto !important;
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-margin-auto\@m {
		margin-left: auto !important;
		margin-right: auto !important;
	}
	.uk-margin-auto-left\@m {
		margin-left: auto !important;
	}
	.uk-margin-auto-right\@m {
		margin-right: auto !important;
	}
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-margin-auto\@l {
		margin-left: auto !important;
		margin-right: auto !important;
	}
	.uk-margin-auto-left\@l {
		margin-left: auto !important;
	}
	.uk-margin-auto-right\@l {
		margin-right: auto !important;
	}
}

/* Large screen and bigger */
@media (min-width: 1600px) {
	.uk-margin-auto\@xl {
		margin-left: auto !important;
		margin-right: auto !important;
	}
	.uk-margin-auto-left\@xl {
		margin-left: auto !important;
	}
	.uk-margin-auto-right\@xl {
		margin-right: auto !important;
	}
}

/* Remove
 ========================================================================== */
.uk-margin-remove {
	margin: 0 !important;
}

.uk-margin-remove-top {
	margin-top: 0 !important;
}

.uk-margin-remove-bottom {
	margin-bottom: 0 !important;
}

.uk-margin-remove-left {
	margin-left: 0 !important;
}

.uk-margin-remove-right {
	margin-right: 0 !important;
}

.uk-margin-remove-vertical {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.uk-margin-remove-adjacent + *,
.uk-margin-remove-first-child > :first-child {
	margin-top: 0 !important;
}

.uk-margin-remove-last-child > :last-child {
	margin-bottom: 0 !important;
}

/* Phone landscape and bigger */
@media (min-width: 640px) {
	.uk-margin-remove-left\@s {
		margin-left: 0 !important;
	}
	.uk-margin-remove-right\@s {
		margin-right: 0 !important;
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-margin-remove-left\@m {
		margin-left: 0 !important;
	}
	.uk-margin-remove-right\@m {
		margin-right: 0 !important;
	}
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-margin-remove-left\@l {
		margin-left: 0 !important;
	}
	.uk-margin-remove-right\@l {
		margin-right: 0 !important;
	}
}

/* Large screen and bigger */
@media (min-width: 1600px) {
	.uk-margin-remove-left\@xl {
		margin-left: 0 !important;
	}
	.uk-margin-remove-right\@xl {
		margin-right: 0 !important;
	}
}

/* ========================================================================
   Component: Padding
 ========================================================================== */
.uk-padding {
	padding: 30px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-padding {
		padding: 40px;
	}
}

/* Small
 ========================================================================== */
.uk-padding-small {
	padding: 15px;
}

/* Large
 ========================================================================== */
.uk-padding-large {
	padding: 30px;
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-padding-large {
		padding: 70px;
	}
}

/* Remove
 ========================================================================== */
.uk-padding-remove {
	padding: 0 !important;
}

.uk-padding-remove-top {
	padding-top: 0 !important;
}

.uk-padding-remove-bottom {
	padding-bottom: 0 !important;
}

.uk-padding-remove-left {
	padding-left: 0 !important;
}

.uk-padding-remove-right {
	padding-right: 0 !important;
}

.uk-padding-remove-vertical {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.uk-padding-remove-horizontal {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* ========================================================================
   Component: Position
 ========================================================================== */
/* Directions
 ========================================================================== */
/*
 * 1. Prevent content overflow if `max-width: 100%` is used inside position container.
 */
[class*='uk-position-top'],
[class*='uk-position-bottom'],
[class*='uk-position-left'],
[class*='uk-position-right'],
[class*='uk-position-center'] {
	position: absolute !important;
	/* 1 */
	max-width: 100%;
}

/* Edges
 ========================================================================== */
/* Don't use `width: 100%` because it is wrong if the parent has padding. */
.uk-position-top {
	top: 0;
	left: 0;
	right: 0;
}

.uk-position-bottom {
	bottom: 0;
	left: 0;
	right: 0;
}

.uk-position-left {
	top: 0;
	bottom: 0;
	left: 0;
}

.uk-position-right {
	top: 0;
	bottom: 0;
	right: 0;
}

/* Corners
 ========================================================================== */
.uk-position-top-left {
	top: 0;
	left: 0;
}

.uk-position-top-right {
	top: 0;
	right: 0;
}

.uk-position-bottom-left {
	bottom: 0;
	left: 0;
}

.uk-position-bottom-right {
	bottom: 0;
	right: 0;
}

/*
 * Center
 * 1. Fix text wrapping if content is larger than 50% of the container.
 */
.uk-position-center {
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	/* 1 */
	width: max-content;
	max-width: 100%;
	box-sizing: border-box;
}

/* Vertical */
[class*='uk-position-center-left'],
[class*='uk-position-center-right'] {
	top: 50%;
	transform: translateY(-50%);
}

.uk-position-center-left {
	left: 0;
}

.uk-position-center-right {
	right: 0;
}

.uk-position-center-left-out {
	right: 100%;
	width: max-content;
}

.uk-position-center-right-out {
	left: 100%;
	width: max-content;
}

/* Horizontal */
.uk-position-top-center,
.uk-position-bottom-center {
	left: 50%;
	transform: translateX(-50%);
	/* 1 */
	width: max-content;
	max-width: 100%;
	box-sizing: border-box;
}

.uk-position-top-center {
	top: 0;
}

.uk-position-bottom-center {
	bottom: 0;
}

/* Cover
 ========================================================================== */
.uk-position-cover {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

/* Utility
 ========================================================================== */
.uk-position-relative {
	position: relative !important;
}

.uk-position-absolute {
	position: absolute !important;
}

.uk-position-fixed {
	position: fixed !important;
}

.uk-position-z-index {
	z-index: 1;
}

/* Margin modifier
 ========================================================================== */
/*
 * Small
 */
.uk-position-small {
	max-width: calc(100% - (15px * 2));
	margin: 15px;
}

.uk-position-small.uk-position-center {
	transform: translate(-50%, -50%) translate(-15px, -15px);
}

.uk-position-small[class*='uk-position-center-left'],
.uk-position-small[class*='uk-position-center-right'] {
	transform: translateY(-50%) translateY(-15px);
}

.uk-position-small.uk-position-top-center,
.uk-position-small.uk-position-bottom-center {
	transform: translateX(-50%) translateX(-15px);
}

/*
 * Medium
 */
.uk-position-medium {
	max-width: calc(100% - (30px * 2));
	margin: 30px;
}

.uk-position-medium.uk-position-center {
	transform: translate(-50%, -50%) translate(-30px, -30px);
}

.uk-position-medium[class*='uk-position-center-left'],
.uk-position-medium[class*='uk-position-center-right'] {
	transform: translateY(-50%) translateY(-30px);
}

.uk-position-medium.uk-position-top-center,
.uk-position-medium.uk-position-bottom-center {
	transform: translateX(-50%) translateX(-30px);
}

/*
 * Large
 */
.uk-position-large {
	max-width: calc(100% - (30px * 2));
	margin: 30px;
}

.uk-position-large.uk-position-center {
	transform: translate(-50%, -50%) translate(-30px, -30px);
}

.uk-position-large[class*='uk-position-center-left'],
.uk-position-large[class*='uk-position-center-right'] {
	transform: translateY(-50%) translateY(-30px);
}

.uk-position-large.uk-position-top-center,
.uk-position-large.uk-position-bottom-center {
	transform: translateX(-50%) translateX(-30px);
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-position-large {
		max-width: calc(100% - (50px * 2));
		margin: 50px;
	}
	.uk-position-large.uk-position-center {
		transform: translate(-50%, -50%) translate(-50px, -50px);
	}
	.uk-position-large[class*='uk-position-center-left'],
	.uk-position-large[class*='uk-position-center-right'] {
		transform: translateY(-50%) translateY(-50px);
	}
	.uk-position-large.uk-position-top-center,
	.uk-position-large.uk-position-bottom-center {
		transform: translateX(-50%) translateX(-50px);
	}
}

/* ========================================================================
   Component: Transition
 ========================================================================== */
/* Toggle (Hover + Focus)
 ========================================================================== */
/*
 * 1. Prevent tab highlighting on iOS.
 */
.uk-transition-toggle {
	/* 1 */
	-webkit-tap-highlight-color: transparent;
}

/*
 * Remove outline for `tabindex`
 */
.uk-transition-toggle:focus {
	outline: none;
}

/* Transitions
 ========================================================================== */
/*
 * The toggle is triggered on touch devices by two methods:
 * 1. Using `:focus` and tabindex
 * 2. Using `:hover` and a `touchstart` event listener registered on the document
 *    (Doesn't work on Surface touch devices)
 *
 * Note: Transitions don't work with `uk-postion-center-*` classes because they also use `transform`,
 *       therefore it's recommended to use an extra `div` for the transition.
 */
.uk-transition-fade,
[class*='uk-transition-scale'],
[class*='uk-transition-slide'] {
	transition: 0.3s ease-out;
	transition-property: opacity, transform, filter;
	opacity: 0;
}

/*
 * Fade
 */
.uk-transition-toggle:hover .uk-transition-fade,
.uk-transition-toggle:focus .uk-transition-fade,
.uk-transition-active.uk-active .uk-transition-fade {
	opacity: 1;
}

/*
 * Scale
 */
.uk-transition-scale-up {
	transform: scale(1, 1);
}

.uk-transition-scale-down {
	transform: scale(1.1, 1.1);
}

/* Show */
.uk-transition-toggle:hover .uk-transition-scale-up,
.uk-transition-toggle:focus .uk-transition-scale-up,
.uk-transition-active.uk-active .uk-transition-scale-up {
	opacity: 1;
	transform: scale(1.1, 1.1);
}

.uk-transition-toggle:hover .uk-transition-scale-down,
.uk-transition-toggle:focus .uk-transition-scale-down,
.uk-transition-active.uk-active .uk-transition-scale-down {
	opacity: 1;
	transform: scale(1, 1);
}

/*
 * Slide
 */
.uk-transition-slide-top {
	transform: translateY(-100%);
}

.uk-transition-slide-bottom {
	transform: translateY(100%);
}

.uk-transition-slide-left {
	transform: translateX(-100%);
}

.uk-transition-slide-right {
	transform: translateX(100%);
}

.uk-transition-slide-top-small {
	transform: translateY(-10px);
}

.uk-transition-slide-bottom-small {
	transform: translateY(10px);
}

.uk-transition-slide-left-small {
	transform: translateX(-10px);
}

.uk-transition-slide-right-small {
	transform: translateX(10px);
}

.uk-transition-slide-top-medium {
	transform: translateY(-50px);
}

.uk-transition-slide-bottom-medium {
	transform: translateY(50px);
}

.uk-transition-slide-left-medium {
	transform: translateX(-50px);
}

.uk-transition-slide-right-medium {
	transform: translateX(50px);
}

/* Show */
.uk-transition-toggle:hover [class*='uk-transition-slide'],
.uk-transition-toggle:focus [class*='uk-transition-slide'],
.uk-transition-active.uk-active [class*='uk-transition-slide'] {
	opacity: 1;
	transform: translate(0, 0);
}

/* Opacity modifier
 ========================================================================== */
.uk-transition-opaque {
	opacity: 1;
}

/* Duration modifiers
 ========================================================================== */
.uk-transition-slow {
	transition-duration: 0.7s;
}

/* ========================================================================
   Component: Visibility
 ========================================================================== */
/*
 * Hidden
 * `hidden` attribute also set here to make it stronger
 */
[hidden],
.uk-hidden {
	display: none !important;
}

/* Phone landscape and bigger */
@media (min-width: 640px) {
	.uk-hidden\@s {
		display: none !important;
	}
}

/* Tablet landscape and bigger */
@media (min-width: 960px) {
	.uk-hidden\@m {
		display: none !important;
	}
}

/* Desktop and bigger */
@media (min-width: 1200px) {
	.uk-hidden\@l {
		display: none !important;
	}
}

/* Large screen and bigger */
@media (min-width: 1600px) {
	.uk-hidden\@xl {
		display: none !important;
	}
}

/*
 * Visible
 */
/* Phone portrait and smaller */
@media (max-width: 639px) {
	.uk-visible\@s {
		display: none !important;
	}
}

/* Phone landscape and smaller */
@media (max-width: 959px) {
	.uk-visible\@m {
		display: none !important;
	}
}

/* Tablet landscape and smaller */
@media (max-width: 1199px) {
	.uk-visible\@l {
		display: none !important;
	}
}

/* Desktop and smaller */
@media (max-width: 1599px) {
	.uk-visible\@xl {
		display: none !important;
	}
}

/* Visibility
 ========================================================================== */
.uk-invisible {
	visibility: hidden !important;
}

/* Toggle (Hover + Focus)
 ========================================================================== */
/*
 * Hidden
 * 1. The toggle is triggered on touch devices using `:focus` and tabindex
 * 2. The target stays visible if any element within receives focus through keyboard
 *    Doesn't work in Edge, yet.
 * 3. Can't use `display: none` nor `visibility: hidden` because both are not focusable.
 *
 */
/* 1 + 2 */
.uk-visible-toggle:not(:hover):not(:focus) .uk-hidden-hover:not(:focus-within) {
	/* 3 */
	position: absolute !important;
	width: 0 !important;
	height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	overflow: hidden !important;
}

/*
 * Invisible
 */
/* 1 + 2 */
.uk-visible-toggle:not(:hover):not(:focus) .uk-invisible-hover:not(:focus-within) {
	/* 3 */
	opacity: 0 !important;
}

/*
 * 1. Prevent tab highlighting on iOS.
 */
.uk-visible-toggle {
	/* 1 */
	-webkit-tap-highlight-color: transparent;
}

/*
 * Remove outline for `tabindex`
 */
.uk-visible-toggle:focus {
	outline: none;
}

/* Touch
 ========================================================================== */
/*
 * Hide if primary pointing device has limited accuracy, e.g. a touch screen.
 * Works on mobile browsers: Safari, Chrome and Android browser
 */
@media (pointer: coarse) {
	.uk-hidden-touch {
		display: none !important;
	}
}

/*
 * Hide if primary pointing device is accurate, e.g. mouse.
 * 1. Fallback for IE11 and Firefox, because `pointer` is not supported
 * 2. Reset if supported
 */
/* 1 */
.uk-hidden-notouch {
	display: none !important;
}

@media (pointer: coarse) {
	.uk-hidden-notouch {
		display: block !important;
	}
}

/* ========================================================================
   Component: Inverse
 ========================================================================== */
/*
 * Implemented class depends on the general theme color
 * `uk-light` is for light colors on dark backgrounds
 * `uk-dark` is or dark colors on light backgrounds
 */
.uk-light, .uk-section-primary:not(.uk-preserve-color), .uk-section-secondary:not(.uk-preserve-color), .uk-tile-primary:not(.uk-preserve-color), .uk-tile-secondary:not(.uk-preserve-color), .uk-card-primary.uk-card-body, .uk-card-primary > :not([class*='uk-card-media']), .uk-card-secondary.uk-card-body, .uk-card-secondary > :not([class*='uk-card-media']), .uk-overlay-primary, .uk-offcanvas-bar {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light a, .uk-section-primary:not(.uk-preserve-color) a, .uk-section-secondary:not(.uk-preserve-color) a, .uk-tile-primary:not(.uk-preserve-color) a, .uk-tile-secondary:not(.uk-preserve-color) a, .uk-card-primary.uk-card-body a, .uk-card-primary > :not([class*='uk-card-media']) a, .uk-card-secondary.uk-card-body a, .uk-card-secondary > :not([class*='uk-card-media']) a, .uk-overlay-primary a, .uk-offcanvas-bar a,
.uk-light .uk-link,
.uk-section-primary:not(.uk-preserve-color) .uk-link,
.uk-section-secondary:not(.uk-preserve-color) .uk-link,
.uk-tile-primary:not(.uk-preserve-color) .uk-link,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link,
.uk-card-primary.uk-card-body .uk-link,
.uk-card-primary > :not([class*='uk-card-media']) .uk-link,
.uk-card-secondary.uk-card-body .uk-link,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-link,
.uk-overlay-primary .uk-link,
.uk-offcanvas-bar .uk-link {
	color: #fff;
}

.uk-light a:hover, .uk-section-primary:not(.uk-preserve-color) a:hover, .uk-section-secondary:not(.uk-preserve-color) a:hover, .uk-tile-primary:not(.uk-preserve-color) a:hover, .uk-tile-secondary:not(.uk-preserve-color) a:hover, .uk-card-primary.uk-card-body a:hover, .uk-card-primary > :not([class*='uk-card-media']) a:hover, .uk-card-secondary.uk-card-body a:hover, .uk-card-secondary > :not([class*='uk-card-media']) a:hover, .uk-overlay-primary a:hover, .uk-offcanvas-bar a:hover,
.uk-light .uk-link:hover,
.uk-section-primary:not(.uk-preserve-color) .uk-link:hover,
.uk-section-secondary:not(.uk-preserve-color) .uk-link:hover,
.uk-tile-primary:not(.uk-preserve-color) .uk-link:hover,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link:hover,
.uk-card-primary.uk-card-body .uk-link:hover,
.uk-card-primary > :not([class*='uk-card-media']) .uk-link:hover,
.uk-card-secondary.uk-card-body .uk-link:hover,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-link:hover,
.uk-overlay-primary .uk-link:hover,
.uk-offcanvas-bar .uk-link:hover {
	color: #fff;
}

.uk-light :not(pre) > code, .uk-section-primary:not(.uk-preserve-color) :not(pre) > code, .uk-section-secondary:not(.uk-preserve-color) :not(pre) > code, .uk-tile-primary:not(.uk-preserve-color) :not(pre) > code, .uk-tile-secondary:not(.uk-preserve-color) :not(pre) > code, .uk-card-primary.uk-card-body :not(pre) > code, .uk-card-primary > :not([class*='uk-card-media']) :not(pre) > code, .uk-card-secondary.uk-card-body :not(pre) > code, .uk-card-secondary > :not([class*='uk-card-media']) :not(pre) > code, .uk-overlay-primary :not(pre) > code, .uk-offcanvas-bar :not(pre) > code,
.uk-light :not(pre) > kbd,
.uk-section-primary:not(.uk-preserve-color) :not(pre) > kbd,
.uk-section-secondary:not(.uk-preserve-color) :not(pre) > kbd,
.uk-tile-primary:not(.uk-preserve-color) :not(pre) > kbd,
.uk-tile-secondary:not(.uk-preserve-color) :not(pre) > kbd,
.uk-card-primary.uk-card-body :not(pre) > kbd,
.uk-card-primary > :not([class*='uk-card-media']) :not(pre) > kbd,
.uk-card-secondary.uk-card-body :not(pre) > kbd,
.uk-card-secondary > :not([class*='uk-card-media']) :not(pre) > kbd,
.uk-overlay-primary :not(pre) > kbd,
.uk-offcanvas-bar :not(pre) > kbd,
.uk-light :not(pre) > samp,
.uk-section-primary:not(.uk-preserve-color) :not(pre) > samp,
.uk-section-secondary:not(.uk-preserve-color) :not(pre) > samp,
.uk-tile-primary:not(.uk-preserve-color) :not(pre) > samp,
.uk-tile-secondary:not(.uk-preserve-color) :not(pre) > samp,
.uk-card-primary.uk-card-body :not(pre) > samp,
.uk-card-primary > :not([class*='uk-card-media']) :not(pre) > samp,
.uk-card-secondary.uk-card-body :not(pre) > samp,
.uk-card-secondary > :not([class*='uk-card-media']) :not(pre) > samp,
.uk-overlay-primary :not(pre) > samp,
.uk-offcanvas-bar :not(pre) > samp {
	color: rgba(255, 255, 255, 0.7);
	background: rgba(255, 255, 255, 0.1);
}

.uk-light em, .uk-section-primary:not(.uk-preserve-color) em, .uk-section-secondary:not(.uk-preserve-color) em, .uk-tile-primary:not(.uk-preserve-color) em, .uk-tile-secondary:not(.uk-preserve-color) em, .uk-card-primary.uk-card-body em, .uk-card-primary > :not([class*='uk-card-media']) em, .uk-card-secondary.uk-card-body em, .uk-card-secondary > :not([class*='uk-card-media']) em, .uk-overlay-primary em, .uk-offcanvas-bar em {
	color: #fff;
}

.uk-light h1, .uk-section-primary:not(.uk-preserve-color) h1, .uk-section-secondary:not(.uk-preserve-color) h1, .uk-tile-primary:not(.uk-preserve-color) h1, .uk-tile-secondary:not(.uk-preserve-color) h1, .uk-card-primary.uk-card-body h1, .uk-card-primary > :not([class*='uk-card-media']) h1, .uk-card-secondary.uk-card-body h1, .uk-card-secondary > :not([class*='uk-card-media']) h1, .uk-overlay-primary h1, .uk-offcanvas-bar h1, .uk-light .uk-h1, .uk-section-primary:not(.uk-preserve-color) .uk-h1, .uk-section-secondary:not(.uk-preserve-color) .uk-h1, .uk-tile-primary:not(.uk-preserve-color) .uk-h1, .uk-tile-secondary:not(.uk-preserve-color) .uk-h1, .uk-card-primary.uk-card-body .uk-h1, .uk-card-primary > :not([class*='uk-card-media']) .uk-h1, .uk-card-secondary.uk-card-body .uk-h1, .uk-card-secondary > :not([class*='uk-card-media']) .uk-h1, .uk-overlay-primary .uk-h1, .uk-offcanvas-bar .uk-h1,
.uk-light h2,
.uk-section-primary:not(.uk-preserve-color) h2,
.uk-section-secondary:not(.uk-preserve-color) h2,
.uk-tile-primary:not(.uk-preserve-color) h2,
.uk-tile-secondary:not(.uk-preserve-color) h2,
.uk-card-primary.uk-card-body h2,
.uk-card-primary > :not([class*='uk-card-media']) h2,
.uk-card-secondary.uk-card-body h2,
.uk-card-secondary > :not([class*='uk-card-media']) h2,
.uk-overlay-primary h2,
.uk-offcanvas-bar h2, .uk-light .uk-h2, .uk-section-primary:not(.uk-preserve-color) .uk-h2, .uk-section-secondary:not(.uk-preserve-color) .uk-h2, .uk-tile-primary:not(.uk-preserve-color) .uk-h2, .uk-tile-secondary:not(.uk-preserve-color) .uk-h2, .uk-card-primary.uk-card-body .uk-h2, .uk-card-primary > :not([class*='uk-card-media']) .uk-h2, .uk-card-secondary.uk-card-body .uk-h2, .uk-card-secondary > :not([class*='uk-card-media']) .uk-h2, .uk-overlay-primary .uk-h2, .uk-offcanvas-bar .uk-h2,
.uk-light h3,
.uk-section-primary:not(.uk-preserve-color) h3,
.uk-section-secondary:not(.uk-preserve-color) h3,
.uk-tile-primary:not(.uk-preserve-color) h3,
.uk-tile-secondary:not(.uk-preserve-color) h3,
.uk-card-primary.uk-card-body h3,
.uk-card-primary > :not([class*='uk-card-media']) h3,
.uk-card-secondary.uk-card-body h3,
.uk-card-secondary > :not([class*='uk-card-media']) h3,
.uk-overlay-primary h3,
.uk-offcanvas-bar h3, .uk-light .uk-h3, .uk-section-primary:not(.uk-preserve-color) .uk-h3, .uk-section-secondary:not(.uk-preserve-color) .uk-h3, .uk-tile-primary:not(.uk-preserve-color) .uk-h3, .uk-tile-secondary:not(.uk-preserve-color) .uk-h3, .uk-card-primary.uk-card-body .uk-h3, .uk-card-primary > :not([class*='uk-card-media']) .uk-h3, .uk-card-secondary.uk-card-body .uk-h3, .uk-card-secondary > :not([class*='uk-card-media']) .uk-h3, .uk-overlay-primary .uk-h3, .uk-offcanvas-bar .uk-h3,
.uk-light h4,
.uk-section-primary:not(.uk-preserve-color) h4,
.uk-section-secondary:not(.uk-preserve-color) h4,
.uk-tile-primary:not(.uk-preserve-color) h4,
.uk-tile-secondary:not(.uk-preserve-color) h4,
.uk-card-primary.uk-card-body h4,
.uk-card-primary > :not([class*='uk-card-media']) h4,
.uk-card-secondary.uk-card-body h4,
.uk-card-secondary > :not([class*='uk-card-media']) h4,
.uk-overlay-primary h4,
.uk-offcanvas-bar h4, .uk-light .uk-h4, .uk-section-primary:not(.uk-preserve-color) .uk-h4, .uk-section-secondary:not(.uk-preserve-color) .uk-h4, .uk-tile-primary:not(.uk-preserve-color) .uk-h4, .uk-tile-secondary:not(.uk-preserve-color) .uk-h4, .uk-card-primary.uk-card-body .uk-h4, .uk-card-primary > :not([class*='uk-card-media']) .uk-h4, .uk-card-secondary.uk-card-body .uk-h4, .uk-card-secondary > :not([class*='uk-card-media']) .uk-h4, .uk-overlay-primary .uk-h4, .uk-offcanvas-bar .uk-h4,
.uk-light h5,
.uk-section-primary:not(.uk-preserve-color) h5,
.uk-section-secondary:not(.uk-preserve-color) h5,
.uk-tile-primary:not(.uk-preserve-color) h5,
.uk-tile-secondary:not(.uk-preserve-color) h5,
.uk-card-primary.uk-card-body h5,
.uk-card-primary > :not([class*='uk-card-media']) h5,
.uk-card-secondary.uk-card-body h5,
.uk-card-secondary > :not([class*='uk-card-media']) h5,
.uk-overlay-primary h5,
.uk-offcanvas-bar h5, .uk-light .uk-h5, .uk-section-primary:not(.uk-preserve-color) .uk-h5, .uk-section-secondary:not(.uk-preserve-color) .uk-h5, .uk-tile-primary:not(.uk-preserve-color) .uk-h5, .uk-tile-secondary:not(.uk-preserve-color) .uk-h5, .uk-card-primary.uk-card-body .uk-h5, .uk-card-primary > :not([class*='uk-card-media']) .uk-h5, .uk-card-secondary.uk-card-body .uk-h5, .uk-card-secondary > :not([class*='uk-card-media']) .uk-h5, .uk-overlay-primary .uk-h5, .uk-offcanvas-bar .uk-h5,
.uk-light h6,
.uk-section-primary:not(.uk-preserve-color) h6,
.uk-section-secondary:not(.uk-preserve-color) h6,
.uk-tile-primary:not(.uk-preserve-color) h6,
.uk-tile-secondary:not(.uk-preserve-color) h6,
.uk-card-primary.uk-card-body h6,
.uk-card-primary > :not([class*='uk-card-media']) h6,
.uk-card-secondary.uk-card-body h6,
.uk-card-secondary > :not([class*='uk-card-media']) h6,
.uk-overlay-primary h6,
.uk-offcanvas-bar h6, .uk-light .uk-h6, .uk-section-primary:not(.uk-preserve-color) .uk-h6, .uk-section-secondary:not(.uk-preserve-color) .uk-h6, .uk-tile-primary:not(.uk-preserve-color) .uk-h6, .uk-tile-secondary:not(.uk-preserve-color) .uk-h6, .uk-card-primary.uk-card-body .uk-h6, .uk-card-primary > :not([class*='uk-card-media']) .uk-h6, .uk-card-secondary.uk-card-body .uk-h6, .uk-card-secondary > :not([class*='uk-card-media']) .uk-h6, .uk-overlay-primary .uk-h6, .uk-offcanvas-bar .uk-h6,
.uk-light .uk-heading-small,
.uk-section-primary:not(.uk-preserve-color) .uk-heading-small,
.uk-section-secondary:not(.uk-preserve-color) .uk-heading-small,
.uk-tile-primary:not(.uk-preserve-color) .uk-heading-small,
.uk-tile-secondary:not(.uk-preserve-color) .uk-heading-small,
.uk-card-primary.uk-card-body .uk-heading-small,
.uk-card-primary > :not([class*='uk-card-media']) .uk-heading-small,
.uk-card-secondary.uk-card-body .uk-heading-small,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-heading-small,
.uk-overlay-primary .uk-heading-small,
.uk-offcanvas-bar .uk-heading-small,
.uk-light .uk-heading-medium,
.uk-section-primary:not(.uk-preserve-color) .uk-heading-medium,
.uk-section-secondary:not(.uk-preserve-color) .uk-heading-medium,
.uk-tile-primary:not(.uk-preserve-color) .uk-heading-medium,
.uk-tile-secondary:not(.uk-preserve-color) .uk-heading-medium,
.uk-card-primary.uk-card-body .uk-heading-medium,
.uk-card-primary > :not([class*='uk-card-media']) .uk-heading-medium,
.uk-card-secondary.uk-card-body .uk-heading-medium,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-heading-medium,
.uk-overlay-primary .uk-heading-medium,
.uk-offcanvas-bar .uk-heading-medium,
.uk-light .uk-heading-large,
.uk-section-primary:not(.uk-preserve-color) .uk-heading-large,
.uk-section-secondary:not(.uk-preserve-color) .uk-heading-large,
.uk-tile-primary:not(.uk-preserve-color) .uk-heading-large,
.uk-tile-secondary:not(.uk-preserve-color) .uk-heading-large,
.uk-card-primary.uk-card-body .uk-heading-large,
.uk-card-primary > :not([class*='uk-card-media']) .uk-heading-large,
.uk-card-secondary.uk-card-body .uk-heading-large,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-heading-large,
.uk-overlay-primary .uk-heading-large,
.uk-offcanvas-bar .uk-heading-large,
.uk-light .uk-heading-xlarge,
.uk-section-primary:not(.uk-preserve-color) .uk-heading-xlarge,
.uk-section-secondary:not(.uk-preserve-color) .uk-heading-xlarge,
.uk-tile-primary:not(.uk-preserve-color) .uk-heading-xlarge,
.uk-tile-secondary:not(.uk-preserve-color) .uk-heading-xlarge,
.uk-card-primary.uk-card-body .uk-heading-xlarge,
.uk-card-primary > :not([class*='uk-card-media']) .uk-heading-xlarge,
.uk-card-secondary.uk-card-body .uk-heading-xlarge,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-heading-xlarge,
.uk-overlay-primary .uk-heading-xlarge,
.uk-offcanvas-bar .uk-heading-xlarge,
.uk-light .uk-heading-2xlarge,
.uk-section-primary:not(.uk-preserve-color) .uk-heading-2xlarge,
.uk-section-secondary:not(.uk-preserve-color) .uk-heading-2xlarge,
.uk-tile-primary:not(.uk-preserve-color) .uk-heading-2xlarge,
.uk-tile-secondary:not(.uk-preserve-color) .uk-heading-2xlarge,
.uk-card-primary.uk-card-body .uk-heading-2xlarge,
.uk-card-primary > :not([class*='uk-card-media']) .uk-heading-2xlarge,
.uk-card-secondary.uk-card-body .uk-heading-2xlarge,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-heading-2xlarge,
.uk-overlay-primary .uk-heading-2xlarge,
.uk-offcanvas-bar .uk-heading-2xlarge {
	color: #fff;
}

.uk-light blockquote, .uk-section-primary:not(.uk-preserve-color) blockquote, .uk-section-secondary:not(.uk-preserve-color) blockquote, .uk-tile-primary:not(.uk-preserve-color) blockquote, .uk-tile-secondary:not(.uk-preserve-color) blockquote, .uk-card-primary.uk-card-body blockquote, .uk-card-primary > :not([class*='uk-card-media']) blockquote, .uk-card-secondary.uk-card-body blockquote, .uk-card-secondary > :not([class*='uk-card-media']) blockquote, .uk-overlay-primary blockquote, .uk-offcanvas-bar blockquote {
	color: #fff;
}

.uk-light blockquote footer, .uk-section-primary:not(.uk-preserve-color) blockquote footer, .uk-section-secondary:not(.uk-preserve-color) blockquote footer, .uk-tile-primary:not(.uk-preserve-color) blockquote footer, .uk-tile-secondary:not(.uk-preserve-color) blockquote footer, .uk-card-primary.uk-card-body blockquote footer, .uk-card-primary > :not([class*='uk-card-media']) blockquote footer, .uk-card-secondary.uk-card-body blockquote footer, .uk-card-secondary > :not([class*='uk-card-media']) blockquote footer, .uk-overlay-primary blockquote footer, .uk-offcanvas-bar blockquote footer {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light hr, .uk-section-primary:not(.uk-preserve-color) hr, .uk-section-secondary:not(.uk-preserve-color) hr, .uk-tile-primary:not(.uk-preserve-color) hr, .uk-tile-secondary:not(.uk-preserve-color) hr, .uk-card-primary.uk-card-body hr, .uk-card-primary > :not([class*='uk-card-media']) hr, .uk-card-secondary.uk-card-body hr, .uk-card-secondary > :not([class*='uk-card-media']) hr, .uk-overlay-primary hr, .uk-offcanvas-bar hr, .uk-light .uk-hr, .uk-section-primary:not(.uk-preserve-color) .uk-hr, .uk-section-secondary:not(.uk-preserve-color) .uk-hr, .uk-tile-primary:not(.uk-preserve-color) .uk-hr, .uk-tile-secondary:not(.uk-preserve-color) .uk-hr, .uk-card-primary.uk-card-body .uk-hr, .uk-card-primary > :not([class*='uk-card-media']) .uk-hr, .uk-card-secondary.uk-card-body .uk-hr, .uk-card-secondary > :not([class*='uk-card-media']) .uk-hr, .uk-overlay-primary .uk-hr, .uk-offcanvas-bar .uk-hr {
	border-top-color: rgba(255, 255, 255, 0.2);
}

.uk-light a.uk-link-muted, .uk-section-primary:not(.uk-preserve-color) a.uk-link-muted, .uk-section-secondary:not(.uk-preserve-color) a.uk-link-muted, .uk-tile-primary:not(.uk-preserve-color) a.uk-link-muted, .uk-tile-secondary:not(.uk-preserve-color) a.uk-link-muted, .uk-card-primary.uk-card-body a.uk-link-muted, .uk-card-primary > :not([class*='uk-card-media']) a.uk-link-muted, .uk-card-secondary.uk-card-body a.uk-link-muted, .uk-card-secondary > :not([class*='uk-card-media']) a.uk-link-muted, .uk-overlay-primary a.uk-link-muted, .uk-offcanvas-bar a.uk-link-muted,
.uk-light .uk-link-muted a,
.uk-section-primary:not(.uk-preserve-color) .uk-link-muted a,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-muted a,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-muted a,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-muted a,
.uk-card-primary.uk-card-body .uk-link-muted a,
.uk-card-primary > :not([class*='uk-card-media']) .uk-link-muted a,
.uk-card-secondary.uk-card-body .uk-link-muted a,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-link-muted a,
.uk-overlay-primary .uk-link-muted a,
.uk-offcanvas-bar .uk-link-muted a {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light a.uk-link-muted:hover, .uk-section-primary:not(.uk-preserve-color) a.uk-link-muted:hover, .uk-section-secondary:not(.uk-preserve-color) a.uk-link-muted:hover, .uk-tile-primary:not(.uk-preserve-color) a.uk-link-muted:hover, .uk-tile-secondary:not(.uk-preserve-color) a.uk-link-muted:hover, .uk-card-primary.uk-card-body a.uk-link-muted:hover, .uk-card-primary > :not([class*='uk-card-media']) a.uk-link-muted:hover, .uk-card-secondary.uk-card-body a.uk-link-muted:hover, .uk-card-secondary > :not([class*='uk-card-media']) a.uk-link-muted:hover, .uk-overlay-primary a.uk-link-muted:hover, .uk-offcanvas-bar a.uk-link-muted:hover,
.uk-light .uk-link-muted a:hover,
.uk-section-primary:not(.uk-preserve-color) .uk-link-muted a:hover,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-muted a:hover,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-muted a:hover,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-muted a:hover,
.uk-card-primary.uk-card-body .uk-link-muted a:hover,
.uk-card-primary > :not([class*='uk-card-media']) .uk-link-muted a:hover,
.uk-card-secondary.uk-card-body .uk-link-muted a:hover,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-link-muted a:hover,
.uk-overlay-primary .uk-link-muted a:hover,
.uk-offcanvas-bar .uk-link-muted a:hover,
.uk-light .uk-link-toggle:hover .uk-link-muted,
.uk-section-primary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-muted,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-muted,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-muted,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-muted,
.uk-card-primary.uk-card-body .uk-link-toggle:hover .uk-link-muted,
.uk-card-primary > :not([class*='uk-card-media']) .uk-link-toggle:hover .uk-link-muted,
.uk-card-secondary.uk-card-body .uk-link-toggle:hover .uk-link-muted,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-link-toggle:hover .uk-link-muted,
.uk-overlay-primary .uk-link-toggle:hover .uk-link-muted,
.uk-offcanvas-bar .uk-link-toggle:hover .uk-link-muted,
.uk-light .uk-link-toggle:focus .uk-link-muted,
.uk-section-primary:not(.uk-preserve-color) .uk-link-toggle:focus .uk-link-muted,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-toggle:focus .uk-link-muted,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-toggle:focus .uk-link-muted,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-toggle:focus .uk-link-muted,
.uk-card-primary.uk-card-body .uk-link-toggle:focus .uk-link-muted,
.uk-card-primary > :not([class*='uk-card-media']) .uk-link-toggle:focus .uk-link-muted,
.uk-card-secondary.uk-card-body .uk-link-toggle:focus .uk-link-muted,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-link-toggle:focus .uk-link-muted,
.uk-overlay-primary .uk-link-toggle:focus .uk-link-muted,
.uk-offcanvas-bar .uk-link-toggle:focus .uk-link-muted {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light a.uk-link-text:hover, .uk-section-primary:not(.uk-preserve-color) a.uk-link-text:hover, .uk-section-secondary:not(.uk-preserve-color) a.uk-link-text:hover, .uk-tile-primary:not(.uk-preserve-color) a.uk-link-text:hover, .uk-tile-secondary:not(.uk-preserve-color) a.uk-link-text:hover, .uk-card-primary.uk-card-body a.uk-link-text:hover, .uk-card-primary > :not([class*='uk-card-media']) a.uk-link-text:hover, .uk-card-secondary.uk-card-body a.uk-link-text:hover, .uk-card-secondary > :not([class*='uk-card-media']) a.uk-link-text:hover, .uk-overlay-primary a.uk-link-text:hover, .uk-offcanvas-bar a.uk-link-text:hover,
.uk-light .uk-link-text a:hover,
.uk-section-primary:not(.uk-preserve-color) .uk-link-text a:hover,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-text a:hover,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-text a:hover,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-text a:hover,
.uk-card-primary.uk-card-body .uk-link-text a:hover,
.uk-card-primary > :not([class*='uk-card-media']) .uk-link-text a:hover,
.uk-card-secondary.uk-card-body .uk-link-text a:hover,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-link-text a:hover,
.uk-overlay-primary .uk-link-text a:hover,
.uk-offcanvas-bar .uk-link-text a:hover,
.uk-light .uk-link-toggle:hover .uk-link-text,
.uk-section-primary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-text,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-text,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-text,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-text,
.uk-card-primary.uk-card-body .uk-link-toggle:hover .uk-link-text,
.uk-card-primary > :not([class*='uk-card-media']) .uk-link-toggle:hover .uk-link-text,
.uk-card-secondary.uk-card-body .uk-link-toggle:hover .uk-link-text,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-link-toggle:hover .uk-link-text,
.uk-overlay-primary .uk-link-toggle:hover .uk-link-text,
.uk-offcanvas-bar .uk-link-toggle:hover .uk-link-text,
.uk-light .uk-link-toggle:focus .uk-link-text,
.uk-section-primary:not(.uk-preserve-color) .uk-link-toggle:focus .uk-link-text,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-toggle:focus .uk-link-text,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-toggle:focus .uk-link-text,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-toggle:focus .uk-link-text,
.uk-card-primary.uk-card-body .uk-link-toggle:focus .uk-link-text,
.uk-card-primary > :not([class*='uk-card-media']) .uk-link-toggle:focus .uk-link-text,
.uk-card-secondary.uk-card-body .uk-link-toggle:focus .uk-link-text,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-link-toggle:focus .uk-link-text,
.uk-overlay-primary .uk-link-toggle:focus .uk-link-text,
.uk-offcanvas-bar .uk-link-toggle:focus .uk-link-text {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light a.uk-link-heading:hover, .uk-section-primary:not(.uk-preserve-color) a.uk-link-heading:hover, .uk-section-secondary:not(.uk-preserve-color) a.uk-link-heading:hover, .uk-tile-primary:not(.uk-preserve-color) a.uk-link-heading:hover, .uk-tile-secondary:not(.uk-preserve-color) a.uk-link-heading:hover, .uk-card-primary.uk-card-body a.uk-link-heading:hover, .uk-card-primary > :not([class*='uk-card-media']) a.uk-link-heading:hover, .uk-card-secondary.uk-card-body a.uk-link-heading:hover, .uk-card-secondary > :not([class*='uk-card-media']) a.uk-link-heading:hover, .uk-overlay-primary a.uk-link-heading:hover, .uk-offcanvas-bar a.uk-link-heading:hover,
.uk-light .uk-link-heading a:hover,
.uk-section-primary:not(.uk-preserve-color) .uk-link-heading a:hover,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-heading a:hover,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-heading a:hover,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-heading a:hover,
.uk-card-primary.uk-card-body .uk-link-heading a:hover,
.uk-card-primary > :not([class*='uk-card-media']) .uk-link-heading a:hover,
.uk-card-secondary.uk-card-body .uk-link-heading a:hover,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-link-heading a:hover,
.uk-overlay-primary .uk-link-heading a:hover,
.uk-offcanvas-bar .uk-link-heading a:hover,
.uk-light .uk-link-toggle:hover .uk-link-heading,
.uk-section-primary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-heading,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-heading,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-heading,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-toggle:hover .uk-link-heading,
.uk-card-primary.uk-card-body .uk-link-toggle:hover .uk-link-heading,
.uk-card-primary > :not([class*='uk-card-media']) .uk-link-toggle:hover .uk-link-heading,
.uk-card-secondary.uk-card-body .uk-link-toggle:hover .uk-link-heading,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-link-toggle:hover .uk-link-heading,
.uk-overlay-primary .uk-link-toggle:hover .uk-link-heading,
.uk-offcanvas-bar .uk-link-toggle:hover .uk-link-heading,
.uk-light .uk-link-toggle:focus .uk-link-heading,
.uk-section-primary:not(.uk-preserve-color) .uk-link-toggle:focus .uk-link-heading,
.uk-section-secondary:not(.uk-preserve-color) .uk-link-toggle:focus .uk-link-heading,
.uk-tile-primary:not(.uk-preserve-color) .uk-link-toggle:focus .uk-link-heading,
.uk-tile-secondary:not(.uk-preserve-color) .uk-link-toggle:focus .uk-link-heading,
.uk-card-primary.uk-card-body .uk-link-toggle:focus .uk-link-heading,
.uk-card-primary > :not([class*='uk-card-media']) .uk-link-toggle:focus .uk-link-heading,
.uk-card-secondary.uk-card-body .uk-link-toggle:focus .uk-link-heading,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-link-toggle:focus .uk-link-heading,
.uk-overlay-primary .uk-link-toggle:focus .uk-link-heading,
.uk-offcanvas-bar .uk-link-toggle:focus .uk-link-heading {
	color: #fff;
}

.uk-light .uk-heading-divider, .uk-section-primary:not(.uk-preserve-color) .uk-heading-divider, .uk-section-secondary:not(.uk-preserve-color) .uk-heading-divider, .uk-tile-primary:not(.uk-preserve-color) .uk-heading-divider, .uk-tile-secondary:not(.uk-preserve-color) .uk-heading-divider, .uk-card-primary.uk-card-body .uk-heading-divider, .uk-card-primary > :not([class*='uk-card-media']) .uk-heading-divider, .uk-card-secondary.uk-card-body .uk-heading-divider, .uk-card-secondary > :not([class*='uk-card-media']) .uk-heading-divider, .uk-overlay-primary .uk-heading-divider, .uk-offcanvas-bar .uk-heading-divider {
	border-bottom-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-heading-bullet::before, .uk-section-primary:not(.uk-preserve-color) .uk-heading-bullet::before, .uk-section-secondary:not(.uk-preserve-color) .uk-heading-bullet::before, .uk-tile-primary:not(.uk-preserve-color) .uk-heading-bullet::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-heading-bullet::before, .uk-card-primary.uk-card-body .uk-heading-bullet::before, .uk-card-primary > :not([class*='uk-card-media']) .uk-heading-bullet::before, .uk-card-secondary.uk-card-body .uk-heading-bullet::before, .uk-card-secondary > :not([class*='uk-card-media']) .uk-heading-bullet::before, .uk-overlay-primary .uk-heading-bullet::before, .uk-offcanvas-bar .uk-heading-bullet::before {
	border-left-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-heading-line > ::before, .uk-section-primary:not(.uk-preserve-color) .uk-heading-line > ::before, .uk-section-secondary:not(.uk-preserve-color) .uk-heading-line > ::before, .uk-tile-primary:not(.uk-preserve-color) .uk-heading-line > ::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-heading-line > ::before, .uk-card-primary.uk-card-body .uk-heading-line > ::before, .uk-card-primary > :not([class*='uk-card-media']) .uk-heading-line > ::before, .uk-card-secondary.uk-card-body .uk-heading-line > ::before, .uk-card-secondary > :not([class*='uk-card-media']) .uk-heading-line > ::before, .uk-overlay-primary .uk-heading-line > ::before, .uk-offcanvas-bar .uk-heading-line > ::before,
.uk-light .uk-heading-line > ::after,
.uk-section-primary:not(.uk-preserve-color) .uk-heading-line > ::after,
.uk-section-secondary:not(.uk-preserve-color) .uk-heading-line > ::after,
.uk-tile-primary:not(.uk-preserve-color) .uk-heading-line > ::after,
.uk-tile-secondary:not(.uk-preserve-color) .uk-heading-line > ::after,
.uk-card-primary.uk-card-body .uk-heading-line > ::after,
.uk-card-primary > :not([class*='uk-card-media']) .uk-heading-line > ::after,
.uk-card-secondary.uk-card-body .uk-heading-line > ::after,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-heading-line > ::after,
.uk-overlay-primary .uk-heading-line > ::after,
.uk-offcanvas-bar .uk-heading-line > ::after {
	border-bottom-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-divider-icon, .uk-section-primary:not(.uk-preserve-color) .uk-divider-icon, .uk-section-secondary:not(.uk-preserve-color) .uk-divider-icon, .uk-tile-primary:not(.uk-preserve-color) .uk-divider-icon, .uk-tile-secondary:not(.uk-preserve-color) .uk-divider-icon, .uk-card-primary.uk-card-body .uk-divider-icon, .uk-card-primary > :not([class*='uk-card-media']) .uk-divider-icon, .uk-card-secondary.uk-card-body .uk-divider-icon, .uk-card-secondary > :not([class*='uk-card-media']) .uk-divider-icon, .uk-overlay-primary .uk-divider-icon, .uk-offcanvas-bar .uk-divider-icon {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22none%22%20stroke%3D%22rgba(255, 255, 255, 0.2)%22%20stroke-width%3D%222%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%227%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}

.uk-light .uk-divider-icon::before, .uk-section-primary:not(.uk-preserve-color) .uk-divider-icon::before, .uk-section-secondary:not(.uk-preserve-color) .uk-divider-icon::before, .uk-tile-primary:not(.uk-preserve-color) .uk-divider-icon::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-divider-icon::before, .uk-card-primary.uk-card-body .uk-divider-icon::before, .uk-card-primary > :not([class*='uk-card-media']) .uk-divider-icon::before, .uk-card-secondary.uk-card-body .uk-divider-icon::before, .uk-card-secondary > :not([class*='uk-card-media']) .uk-divider-icon::before, .uk-overlay-primary .uk-divider-icon::before, .uk-offcanvas-bar .uk-divider-icon::before,
.uk-light .uk-divider-icon::after,
.uk-section-primary:not(.uk-preserve-color) .uk-divider-icon::after,
.uk-section-secondary:not(.uk-preserve-color) .uk-divider-icon::after,
.uk-tile-primary:not(.uk-preserve-color) .uk-divider-icon::after,
.uk-tile-secondary:not(.uk-preserve-color) .uk-divider-icon::after,
.uk-card-primary.uk-card-body .uk-divider-icon::after,
.uk-card-primary > :not([class*='uk-card-media']) .uk-divider-icon::after,
.uk-card-secondary.uk-card-body .uk-divider-icon::after,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-divider-icon::after,
.uk-overlay-primary .uk-divider-icon::after,
.uk-offcanvas-bar .uk-divider-icon::after {
	border-bottom-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-divider-small::after, .uk-section-primary:not(.uk-preserve-color) .uk-divider-small::after, .uk-section-secondary:not(.uk-preserve-color) .uk-divider-small::after, .uk-tile-primary:not(.uk-preserve-color) .uk-divider-small::after, .uk-tile-secondary:not(.uk-preserve-color) .uk-divider-small::after, .uk-card-primary.uk-card-body .uk-divider-small::after, .uk-card-primary > :not([class*='uk-card-media']) .uk-divider-small::after, .uk-card-secondary.uk-card-body .uk-divider-small::after, .uk-card-secondary > :not([class*='uk-card-media']) .uk-divider-small::after, .uk-overlay-primary .uk-divider-small::after, .uk-offcanvas-bar .uk-divider-small::after {
	border-top-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-divider-vertical, .uk-section-primary:not(.uk-preserve-color) .uk-divider-vertical, .uk-section-secondary:not(.uk-preserve-color) .uk-divider-vertical, .uk-tile-primary:not(.uk-preserve-color) .uk-divider-vertical, .uk-tile-secondary:not(.uk-preserve-color) .uk-divider-vertical, .uk-card-primary.uk-card-body .uk-divider-vertical, .uk-card-primary > :not([class*='uk-card-media']) .uk-divider-vertical, .uk-card-secondary.uk-card-body .uk-divider-vertical, .uk-card-secondary > :not([class*='uk-card-media']) .uk-divider-vertical, .uk-overlay-primary .uk-divider-vertical, .uk-offcanvas-bar .uk-divider-vertical {
	border-left-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-list-muted > ::before, .uk-section-primary:not(.uk-preserve-color) .uk-list-muted > ::before, .uk-section-secondary:not(.uk-preserve-color) .uk-list-muted > ::before, .uk-tile-primary:not(.uk-preserve-color) .uk-list-muted > ::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-list-muted > ::before, .uk-card-primary.uk-card-body .uk-list-muted > ::before, .uk-card-primary > :not([class*='uk-card-media']) .uk-list-muted > ::before, .uk-card-secondary.uk-card-body .uk-list-muted > ::before, .uk-card-secondary > :not([class*='uk-card-media']) .uk-list-muted > ::before, .uk-overlay-primary .uk-list-muted > ::before, .uk-offcanvas-bar .uk-list-muted > ::before {
	color: rgba(255, 255, 255, 0.5) !important;
}

.uk-light .uk-list-emphasis > ::before, .uk-section-primary:not(.uk-preserve-color) .uk-list-emphasis > ::before, .uk-section-secondary:not(.uk-preserve-color) .uk-list-emphasis > ::before, .uk-tile-primary:not(.uk-preserve-color) .uk-list-emphasis > ::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-list-emphasis > ::before, .uk-card-primary.uk-card-body .uk-list-emphasis > ::before, .uk-card-primary > :not([class*='uk-card-media']) .uk-list-emphasis > ::before, .uk-card-secondary.uk-card-body .uk-list-emphasis > ::before, .uk-card-secondary > :not([class*='uk-card-media']) .uk-list-emphasis > ::before, .uk-overlay-primary .uk-list-emphasis > ::before, .uk-offcanvas-bar .uk-list-emphasis > ::before {
	color: #fff !important;
}

.uk-light .uk-list-primary > ::before, .uk-section-primary:not(.uk-preserve-color) .uk-list-primary > ::before, .uk-section-secondary:not(.uk-preserve-color) .uk-list-primary > ::before, .uk-tile-primary:not(.uk-preserve-color) .uk-list-primary > ::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-list-primary > ::before, .uk-card-primary.uk-card-body .uk-list-primary > ::before, .uk-card-primary > :not([class*='uk-card-media']) .uk-list-primary > ::before, .uk-card-secondary.uk-card-body .uk-list-primary > ::before, .uk-card-secondary > :not([class*='uk-card-media']) .uk-list-primary > ::before, .uk-overlay-primary .uk-list-primary > ::before, .uk-offcanvas-bar .uk-list-primary > ::before {
	color: #fff !important;
}

.uk-light .uk-list-secondary > ::before, .uk-section-primary:not(.uk-preserve-color) .uk-list-secondary > ::before, .uk-section-secondary:not(.uk-preserve-color) .uk-list-secondary > ::before, .uk-tile-primary:not(.uk-preserve-color) .uk-list-secondary > ::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-list-secondary > ::before, .uk-card-primary.uk-card-body .uk-list-secondary > ::before, .uk-card-primary > :not([class*='uk-card-media']) .uk-list-secondary > ::before, .uk-card-secondary.uk-card-body .uk-list-secondary > ::before, .uk-card-secondary > :not([class*='uk-card-media']) .uk-list-secondary > ::before, .uk-overlay-primary .uk-list-secondary > ::before, .uk-offcanvas-bar .uk-list-secondary > ::before {
	color: #fff !important;
}

.uk-light .uk-list-bullet > ::before, .uk-section-primary:not(.uk-preserve-color) .uk-list-bullet > ::before, .uk-section-secondary:not(.uk-preserve-color) .uk-list-bullet > ::before, .uk-tile-primary:not(.uk-preserve-color) .uk-list-bullet > ::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-list-bullet > ::before, .uk-card-primary.uk-card-body .uk-list-bullet > ::before, .uk-card-primary > :not([class*='uk-card-media']) .uk-list-bullet > ::before, .uk-card-secondary.uk-card-body .uk-list-bullet > ::before, .uk-card-secondary > :not([class*='uk-card-media']) .uk-list-bullet > ::before, .uk-overlay-primary .uk-list-bullet > ::before, .uk-offcanvas-bar .uk-list-bullet > ::before {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22rgba(255, 255, 255, 0.7)%22%20cx%3D%223%22%20cy%3D%223%22%20r%3D%223%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

.uk-light .uk-list-divider > :nth-child(n+2), .uk-section-primary:not(.uk-preserve-color) .uk-list-divider > :nth-child(n+2), .uk-section-secondary:not(.uk-preserve-color) .uk-list-divider > :nth-child(n+2), .uk-tile-primary:not(.uk-preserve-color) .uk-list-divider > :nth-child(n+2), .uk-tile-secondary:not(.uk-preserve-color) .uk-list-divider > :nth-child(n+2), .uk-card-primary.uk-card-body .uk-list-divider > :nth-child(n+2), .uk-card-primary > :not([class*='uk-card-media']) .uk-list-divider > :nth-child(n+2), .uk-card-secondary.uk-card-body .uk-list-divider > :nth-child(n+2), .uk-card-secondary > :not([class*='uk-card-media']) .uk-list-divider > :nth-child(n+2), .uk-overlay-primary .uk-list-divider > :nth-child(n+2), .uk-offcanvas-bar .uk-list-divider > :nth-child(n+2) {
	border-top-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-list-striped > *:nth-of-type(odd), .uk-section-primary:not(.uk-preserve-color) .uk-list-striped > *:nth-of-type(odd), .uk-section-secondary:not(.uk-preserve-color) .uk-list-striped > *:nth-of-type(odd), .uk-tile-primary:not(.uk-preserve-color) .uk-list-striped > *:nth-of-type(odd), .uk-tile-secondary:not(.uk-preserve-color) .uk-list-striped > *:nth-of-type(odd), .uk-card-primary.uk-card-body .uk-list-striped > *:nth-of-type(odd), .uk-card-primary > :not([class*='uk-card-media']) .uk-list-striped > *:nth-of-type(odd), .uk-card-secondary.uk-card-body .uk-list-striped > *:nth-of-type(odd), .uk-card-secondary > :not([class*='uk-card-media']) .uk-list-striped > *:nth-of-type(odd), .uk-overlay-primary .uk-list-striped > *:nth-of-type(odd), .uk-offcanvas-bar .uk-list-striped > *:nth-of-type(odd) {
	border-top-color: rgba(255, 255, 255, 0.2);
	border-bottom-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-list-striped > :nth-of-type(odd), .uk-section-primary:not(.uk-preserve-color) .uk-list-striped > :nth-of-type(odd), .uk-section-secondary:not(.uk-preserve-color) .uk-list-striped > :nth-of-type(odd), .uk-tile-primary:not(.uk-preserve-color) .uk-list-striped > :nth-of-type(odd), .uk-tile-secondary:not(.uk-preserve-color) .uk-list-striped > :nth-of-type(odd), .uk-card-primary.uk-card-body .uk-list-striped > :nth-of-type(odd), .uk-card-primary > :not([class*='uk-card-media']) .uk-list-striped > :nth-of-type(odd), .uk-card-secondary.uk-card-body .uk-list-striped > :nth-of-type(odd), .uk-card-secondary > :not([class*='uk-card-media']) .uk-list-striped > :nth-of-type(odd), .uk-overlay-primary .uk-list-striped > :nth-of-type(odd), .uk-offcanvas-bar .uk-list-striped > :nth-of-type(odd) {
	background-color: rgba(255, 255, 255, 0.1);
}

.uk-light .uk-icon-link, .uk-section-primary:not(.uk-preserve-color) .uk-icon-link, .uk-section-secondary:not(.uk-preserve-color) .uk-icon-link, .uk-tile-primary:not(.uk-preserve-color) .uk-icon-link, .uk-tile-secondary:not(.uk-preserve-color) .uk-icon-link, .uk-card-primary.uk-card-body .uk-icon-link, .uk-card-primary > :not([class*='uk-card-media']) .uk-icon-link, .uk-card-secondary.uk-card-body .uk-icon-link, .uk-card-secondary > :not([class*='uk-card-media']) .uk-icon-link, .uk-overlay-primary .uk-icon-link, .uk-offcanvas-bar .uk-icon-link {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-icon-link:hover, .uk-section-primary:not(.uk-preserve-color) .uk-icon-link:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-icon-link:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-icon-link:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-icon-link:hover, .uk-card-primary.uk-card-body .uk-icon-link:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-icon-link:hover, .uk-card-secondary.uk-card-body .uk-icon-link:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-icon-link:hover, .uk-overlay-primary .uk-icon-link:hover, .uk-offcanvas-bar .uk-icon-link:hover,
.uk-light .uk-icon-link:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-icon-link:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-icon-link:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-icon-link:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-icon-link:focus,
.uk-card-primary.uk-card-body .uk-icon-link:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-icon-link:focus,
.uk-card-secondary.uk-card-body .uk-icon-link:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-icon-link:focus,
.uk-overlay-primary .uk-icon-link:focus,
.uk-offcanvas-bar .uk-icon-link:focus {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-icon-link:active, .uk-section-primary:not(.uk-preserve-color) .uk-icon-link:active, .uk-section-secondary:not(.uk-preserve-color) .uk-icon-link:active, .uk-tile-primary:not(.uk-preserve-color) .uk-icon-link:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-icon-link:active, .uk-card-primary.uk-card-body .uk-icon-link:active, .uk-card-primary > :not([class*='uk-card-media']) .uk-icon-link:active, .uk-card-secondary.uk-card-body .uk-icon-link:active, .uk-card-secondary > :not([class*='uk-card-media']) .uk-icon-link:active, .uk-overlay-primary .uk-icon-link:active, .uk-offcanvas-bar .uk-icon-link:active,
.uk-light .uk-active > .uk-icon-link,
.uk-section-primary:not(.uk-preserve-color) .uk-active > .uk-icon-link,
.uk-section-secondary:not(.uk-preserve-color) .uk-active > .uk-icon-link,
.uk-tile-primary:not(.uk-preserve-color) .uk-active > .uk-icon-link,
.uk-tile-secondary:not(.uk-preserve-color) .uk-active > .uk-icon-link,
.uk-card-primary.uk-card-body .uk-active > .uk-icon-link,
.uk-card-primary > :not([class*='uk-card-media']) .uk-active > .uk-icon-link,
.uk-card-secondary.uk-card-body .uk-active > .uk-icon-link,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-active > .uk-icon-link,
.uk-overlay-primary .uk-active > .uk-icon-link,
.uk-offcanvas-bar .uk-active > .uk-icon-link {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-icon-button, .uk-section-primary:not(.uk-preserve-color) .uk-icon-button, .uk-section-secondary:not(.uk-preserve-color) .uk-icon-button, .uk-tile-primary:not(.uk-preserve-color) .uk-icon-button, .uk-tile-secondary:not(.uk-preserve-color) .uk-icon-button, .uk-card-primary.uk-card-body .uk-icon-button, .uk-card-primary > :not([class*='uk-card-media']) .uk-icon-button, .uk-card-secondary.uk-card-body .uk-icon-button, .uk-card-secondary > :not([class*='uk-card-media']) .uk-icon-button, .uk-overlay-primary .uk-icon-button, .uk-offcanvas-bar .uk-icon-button {
	background-color: rgba(255, 255, 255, 0.1);
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-icon-button:hover, .uk-section-primary:not(.uk-preserve-color) .uk-icon-button:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-icon-button:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-icon-button:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-icon-button:hover, .uk-card-primary.uk-card-body .uk-icon-button:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-icon-button:hover, .uk-card-secondary.uk-card-body .uk-icon-button:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-icon-button:hover, .uk-overlay-primary .uk-icon-button:hover, .uk-offcanvas-bar .uk-icon-button:hover,
.uk-light .uk-icon-button:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-icon-button:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-icon-button:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-icon-button:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-icon-button:focus,
.uk-card-primary.uk-card-body .uk-icon-button:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-icon-button:focus,
.uk-card-secondary.uk-card-body .uk-icon-button:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-icon-button:focus,
.uk-overlay-primary .uk-icon-button:focus,
.uk-offcanvas-bar .uk-icon-button:focus {
	background-color: rgba(242, 242, 242, 0.1);
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-icon-button:active, .uk-section-primary:not(.uk-preserve-color) .uk-icon-button:active, .uk-section-secondary:not(.uk-preserve-color) .uk-icon-button:active, .uk-tile-primary:not(.uk-preserve-color) .uk-icon-button:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-icon-button:active, .uk-card-primary.uk-card-body .uk-icon-button:active, .uk-card-primary > :not([class*='uk-card-media']) .uk-icon-button:active, .uk-card-secondary.uk-card-body .uk-icon-button:active, .uk-card-secondary > :not([class*='uk-card-media']) .uk-icon-button:active, .uk-overlay-primary .uk-icon-button:active, .uk-offcanvas-bar .uk-icon-button:active {
	background-color: rgba(230, 230, 230, 0.1);
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-input, .uk-section-primary:not(.uk-preserve-color) .uk-input, .uk-section-secondary:not(.uk-preserve-color) .uk-input, .uk-tile-primary:not(.uk-preserve-color) .uk-input, .uk-tile-secondary:not(.uk-preserve-color) .uk-input, .uk-card-primary.uk-card-body .uk-input, .uk-card-primary > :not([class*='uk-card-media']) .uk-input, .uk-card-secondary.uk-card-body .uk-input, .uk-card-secondary > :not([class*='uk-card-media']) .uk-input, .uk-overlay-primary .uk-input, .uk-offcanvas-bar .uk-input,
.uk-light .uk-select,
.uk-section-primary:not(.uk-preserve-color) .uk-select,
.uk-section-secondary:not(.uk-preserve-color) .uk-select,
.uk-tile-primary:not(.uk-preserve-color) .uk-select,
.uk-tile-secondary:not(.uk-preserve-color) .uk-select,
.uk-card-primary.uk-card-body .uk-select,
.uk-card-primary > :not([class*='uk-card-media']) .uk-select,
.uk-card-secondary.uk-card-body .uk-select,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-select,
.uk-overlay-primary .uk-select,
.uk-offcanvas-bar .uk-select,
.uk-light .uk-textarea,
.uk-section-primary:not(.uk-preserve-color) .uk-textarea,
.uk-section-secondary:not(.uk-preserve-color) .uk-textarea,
.uk-tile-primary:not(.uk-preserve-color) .uk-textarea,
.uk-tile-secondary:not(.uk-preserve-color) .uk-textarea,
.uk-card-primary.uk-card-body .uk-textarea,
.uk-card-primary > :not([class*='uk-card-media']) .uk-textarea,
.uk-card-secondary.uk-card-body .uk-textarea,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-textarea,
.uk-overlay-primary .uk-textarea,
.uk-offcanvas-bar .uk-textarea {
	background-color: rgba(255, 255, 255, 0.1);
	color: rgba(255, 255, 255, 0.7);
	background-clip: padding-box;
	border-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-input:focus, .uk-section-primary:not(.uk-preserve-color) .uk-input:focus, .uk-section-secondary:not(.uk-preserve-color) .uk-input:focus, .uk-tile-primary:not(.uk-preserve-color) .uk-input:focus, .uk-tile-secondary:not(.uk-preserve-color) .uk-input:focus, .uk-card-primary.uk-card-body .uk-input:focus, .uk-card-primary > :not([class*='uk-card-media']) .uk-input:focus, .uk-card-secondary.uk-card-body .uk-input:focus, .uk-card-secondary > :not([class*='uk-card-media']) .uk-input:focus, .uk-overlay-primary .uk-input:focus, .uk-offcanvas-bar .uk-input:focus,
.uk-light .uk-select:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-select:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-select:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-select:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-select:focus,
.uk-card-primary.uk-card-body .uk-select:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-select:focus,
.uk-card-secondary.uk-card-body .uk-select:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-select:focus,
.uk-overlay-primary .uk-select:focus,
.uk-offcanvas-bar .uk-select:focus,
.uk-light .uk-textarea:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-textarea:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-textarea:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-textarea:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-textarea:focus,
.uk-card-primary.uk-card-body .uk-textarea:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-textarea:focus,
.uk-card-secondary.uk-card-body .uk-textarea:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-textarea:focus,
.uk-overlay-primary .uk-textarea:focus,
.uk-offcanvas-bar .uk-textarea:focus {
	background-color: rgba(255, 255, 255, 0.1);
	color: rgba(255, 255, 255, 0.7);
	border-color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-input::-ms-input-placeholder, .uk-section-primary:not(.uk-preserve-color) .uk-input::-ms-input-placeholder, .uk-section-secondary:not(.uk-preserve-color) .uk-input::-ms-input-placeholder, .uk-tile-primary:not(.uk-preserve-color) .uk-input::-ms-input-placeholder, .uk-tile-secondary:not(.uk-preserve-color) .uk-input::-ms-input-placeholder, .uk-card-primary.uk-card-body .uk-input::-ms-input-placeholder, .uk-card-primary > :not([class*='uk-card-media']) .uk-input::-ms-input-placeholder, .uk-card-secondary.uk-card-body .uk-input::-ms-input-placeholder, .uk-card-secondary > :not([class*='uk-card-media']) .uk-input::-ms-input-placeholder, .uk-overlay-primary .uk-input::-ms-input-placeholder, .uk-offcanvas-bar .uk-input::-ms-input-placeholder {
	color: rgba(255, 255, 255, 0.5) !important;
}

.uk-light .uk-input::placeholder, .uk-section-primary:not(.uk-preserve-color) .uk-input::placeholder, .uk-section-secondary:not(.uk-preserve-color) .uk-input::placeholder, .uk-tile-primary:not(.uk-preserve-color) .uk-input::placeholder, .uk-tile-secondary:not(.uk-preserve-color) .uk-input::placeholder, .uk-card-primary.uk-card-body .uk-input::placeholder, .uk-card-primary > :not([class*='uk-card-media']) .uk-input::placeholder, .uk-card-secondary.uk-card-body .uk-input::placeholder, .uk-card-secondary > :not([class*='uk-card-media']) .uk-input::placeholder, .uk-overlay-primary .uk-input::placeholder, .uk-offcanvas-bar .uk-input::placeholder {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-textarea::-ms-input-placeholder, .uk-section-primary:not(.uk-preserve-color) .uk-textarea::-ms-input-placeholder, .uk-section-secondary:not(.uk-preserve-color) .uk-textarea::-ms-input-placeholder, .uk-tile-primary:not(.uk-preserve-color) .uk-textarea::-ms-input-placeholder, .uk-tile-secondary:not(.uk-preserve-color) .uk-textarea::-ms-input-placeholder, .uk-card-primary.uk-card-body .uk-textarea::-ms-input-placeholder, .uk-card-primary > :not([class*='uk-card-media']) .uk-textarea::-ms-input-placeholder, .uk-card-secondary.uk-card-body .uk-textarea::-ms-input-placeholder, .uk-card-secondary > :not([class*='uk-card-media']) .uk-textarea::-ms-input-placeholder, .uk-overlay-primary .uk-textarea::-ms-input-placeholder, .uk-offcanvas-bar .uk-textarea::-ms-input-placeholder {
	color: rgba(255, 255, 255, 0.5) !important;
}

.uk-light .uk-textarea::placeholder, .uk-section-primary:not(.uk-preserve-color) .uk-textarea::placeholder, .uk-section-secondary:not(.uk-preserve-color) .uk-textarea::placeholder, .uk-tile-primary:not(.uk-preserve-color) .uk-textarea::placeholder, .uk-tile-secondary:not(.uk-preserve-color) .uk-textarea::placeholder, .uk-card-primary.uk-card-body .uk-textarea::placeholder, .uk-card-primary > :not([class*='uk-card-media']) .uk-textarea::placeholder, .uk-card-secondary.uk-card-body .uk-textarea::placeholder, .uk-card-secondary > :not([class*='uk-card-media']) .uk-textarea::placeholder, .uk-overlay-primary .uk-textarea::placeholder, .uk-offcanvas-bar .uk-textarea::placeholder {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-select:not([multiple]):not([size]), .uk-section-primary:not(.uk-preserve-color) .uk-select:not([multiple]):not([size]), .uk-section-secondary:not(.uk-preserve-color) .uk-select:not([multiple]):not([size]), .uk-tile-primary:not(.uk-preserve-color) .uk-select:not([multiple]):not([size]), .uk-tile-secondary:not(.uk-preserve-color) .uk-select:not([multiple]):not([size]), .uk-card-primary.uk-card-body .uk-select:not([multiple]):not([size]), .uk-card-primary > :not([class*='uk-card-media']) .uk-select:not([multiple]):not([size]), .uk-card-secondary.uk-card-body .uk-select:not([multiple]):not([size]), .uk-card-secondary > :not([class*='uk-card-media']) .uk-select:not([multiple]):not([size]), .uk-overlay-primary .uk-select:not([multiple]):not([size]), .uk-offcanvas-bar .uk-select:not([multiple]):not([size]) {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22rgba(255, 255, 255, 0.7)%22%20points%3D%2212%201%209%206%2015%206%22%20%2F%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22rgba(255, 255, 255, 0.7)%22%20points%3D%2212%2013%209%208%2015%208%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}

.uk-light .uk-input[list]:hover, .uk-section-primary:not(.uk-preserve-color) .uk-input[list]:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-input[list]:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-input[list]:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-input[list]:hover, .uk-card-primary.uk-card-body .uk-input[list]:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-input[list]:hover, .uk-card-secondary.uk-card-body .uk-input[list]:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-input[list]:hover, .uk-overlay-primary .uk-input[list]:hover, .uk-offcanvas-bar .uk-input[list]:hover,
.uk-light .uk-input[list]:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-input[list]:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-input[list]:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-input[list]:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-input[list]:focus,
.uk-card-primary.uk-card-body .uk-input[list]:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-input[list]:focus,
.uk-card-secondary.uk-card-body .uk-input[list]:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-input[list]:focus,
.uk-overlay-primary .uk-input[list]:focus,
.uk-offcanvas-bar .uk-input[list]:focus {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22rgba(255, 255, 255, 0.7)%22%20points%3D%2212%2012%208%206%2016%206%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}

.uk-light .uk-radio, .uk-section-primary:not(.uk-preserve-color) .uk-radio, .uk-section-secondary:not(.uk-preserve-color) .uk-radio, .uk-tile-primary:not(.uk-preserve-color) .uk-radio, .uk-tile-secondary:not(.uk-preserve-color) .uk-radio, .uk-card-primary.uk-card-body .uk-radio, .uk-card-primary > :not([class*='uk-card-media']) .uk-radio, .uk-card-secondary.uk-card-body .uk-radio, .uk-card-secondary > :not([class*='uk-card-media']) .uk-radio, .uk-overlay-primary .uk-radio, .uk-offcanvas-bar .uk-radio,
.uk-light .uk-checkbox,
.uk-section-primary:not(.uk-preserve-color) .uk-checkbox,
.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox,
.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox,
.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox,
.uk-card-primary.uk-card-body .uk-checkbox,
.uk-card-primary > :not([class*='uk-card-media']) .uk-checkbox,
.uk-card-secondary.uk-card-body .uk-checkbox,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-checkbox,
.uk-overlay-primary .uk-checkbox,
.uk-offcanvas-bar .uk-checkbox {
	background-color: rgba(242, 242, 242, 0.1);
	border-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-radio:focus, .uk-section-primary:not(.uk-preserve-color) .uk-radio:focus, .uk-section-secondary:not(.uk-preserve-color) .uk-radio:focus, .uk-tile-primary:not(.uk-preserve-color) .uk-radio:focus, .uk-tile-secondary:not(.uk-preserve-color) .uk-radio:focus, .uk-card-primary.uk-card-body .uk-radio:focus, .uk-card-primary > :not([class*='uk-card-media']) .uk-radio:focus, .uk-card-secondary.uk-card-body .uk-radio:focus, .uk-card-secondary > :not([class*='uk-card-media']) .uk-radio:focus, .uk-overlay-primary .uk-radio:focus, .uk-offcanvas-bar .uk-radio:focus,
.uk-light .uk-checkbox:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:focus,
.uk-card-primary.uk-card-body .uk-checkbox:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-checkbox:focus,
.uk-card-secondary.uk-card-body .uk-checkbox:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-checkbox:focus,
.uk-overlay-primary .uk-checkbox:focus,
.uk-offcanvas-bar .uk-checkbox:focus {
	border-color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-radio:checked, .uk-section-primary:not(.uk-preserve-color) .uk-radio:checked, .uk-section-secondary:not(.uk-preserve-color) .uk-radio:checked, .uk-tile-primary:not(.uk-preserve-color) .uk-radio:checked, .uk-tile-secondary:not(.uk-preserve-color) .uk-radio:checked, .uk-card-primary.uk-card-body .uk-radio:checked, .uk-card-primary > :not([class*='uk-card-media']) .uk-radio:checked, .uk-card-secondary.uk-card-body .uk-radio:checked, .uk-card-secondary > :not([class*='uk-card-media']) .uk-radio:checked, .uk-overlay-primary .uk-radio:checked, .uk-offcanvas-bar .uk-radio:checked,
.uk-light .uk-checkbox:checked,
.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:checked,
.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:checked,
.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:checked,
.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:checked,
.uk-card-primary.uk-card-body .uk-checkbox:checked,
.uk-card-primary > :not([class*='uk-card-media']) .uk-checkbox:checked,
.uk-card-secondary.uk-card-body .uk-checkbox:checked,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-checkbox:checked,
.uk-overlay-primary .uk-checkbox:checked,
.uk-offcanvas-bar .uk-checkbox:checked,
.uk-light .uk-checkbox:indeterminate,
.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate,
.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate,
.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate,
.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate,
.uk-card-primary.uk-card-body .uk-checkbox:indeterminate,
.uk-card-primary > :not([class*='uk-card-media']) .uk-checkbox:indeterminate,
.uk-card-secondary.uk-card-body .uk-checkbox:indeterminate,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-checkbox:indeterminate,
.uk-overlay-primary .uk-checkbox:indeterminate,
.uk-offcanvas-bar .uk-checkbox:indeterminate {
	background-color: #fff;
	border-color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-radio:checked:focus, .uk-section-primary:not(.uk-preserve-color) .uk-radio:checked:focus, .uk-section-secondary:not(.uk-preserve-color) .uk-radio:checked:focus, .uk-tile-primary:not(.uk-preserve-color) .uk-radio:checked:focus, .uk-tile-secondary:not(.uk-preserve-color) .uk-radio:checked:focus, .uk-card-primary.uk-card-body .uk-radio:checked:focus, .uk-card-primary > :not([class*='uk-card-media']) .uk-radio:checked:focus, .uk-card-secondary.uk-card-body .uk-radio:checked:focus, .uk-card-secondary > :not([class*='uk-card-media']) .uk-radio:checked:focus, .uk-overlay-primary .uk-radio:checked:focus, .uk-offcanvas-bar .uk-radio:checked:focus,
.uk-light .uk-checkbox:checked:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:checked:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:checked:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:checked:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:checked:focus,
.uk-card-primary.uk-card-body .uk-checkbox:checked:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-checkbox:checked:focus,
.uk-card-secondary.uk-card-body .uk-checkbox:checked:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-checkbox:checked:focus,
.uk-overlay-primary .uk-checkbox:checked:focus,
.uk-offcanvas-bar .uk-checkbox:checked:focus,
.uk-light .uk-checkbox:indeterminate:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate:focus,
.uk-card-primary.uk-card-body .uk-checkbox:indeterminate:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-checkbox:indeterminate:focus,
.uk-card-secondary.uk-card-body .uk-checkbox:indeterminate:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-checkbox:indeterminate:focus,
.uk-overlay-primary .uk-checkbox:indeterminate:focus,
.uk-offcanvas-bar .uk-checkbox:indeterminate:focus {
	background-color: #e6e6e6;
}

.uk-light .uk-radio:checked, .uk-section-primary:not(.uk-preserve-color) .uk-radio:checked, .uk-section-secondary:not(.uk-preserve-color) .uk-radio:checked, .uk-tile-primary:not(.uk-preserve-color) .uk-radio:checked, .uk-tile-secondary:not(.uk-preserve-color) .uk-radio:checked, .uk-card-primary.uk-card-body .uk-radio:checked, .uk-card-primary > :not([class*='uk-card-media']) .uk-radio:checked, .uk-card-secondary.uk-card-body .uk-radio:checked, .uk-card-secondary > :not([class*='uk-card-media']) .uk-radio:checked, .uk-overlay-primary .uk-radio:checked, .uk-offcanvas-bar .uk-radio:checked {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22%23666%22%20cx%3D%228%22%20cy%3D%228%22%20r%3D%222%22%20%2F%3E%0A%3C%2Fsvg%3E");
}


.uk-light .uk-checkbox:checked,
.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:checked,
.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:checked,
.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:checked,
.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:checked,
.uk-card-primary.uk-card-body .uk-checkbox:checked,
.uk-card-primary > :not([class*='uk-card-media']) .uk-checkbox:checked,
.uk-card-secondary.uk-card-body .uk-checkbox:checked,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-checkbox:checked,
.uk-overlay-primary .uk-checkbox:checked,
.uk-offcanvas-bar .uk-checkbox:checked {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2211%22%20viewBox%3D%220%200%2014%2011%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23666%22%20points%3D%2212%201%205%207.5%202%205%201%205.5%205%2010%2013%201.5%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}


.uk-light .uk-checkbox:indeterminate,
.uk-section-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate,
.uk-section-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate,
.uk-tile-primary:not(.uk-preserve-color) .uk-checkbox:indeterminate,
.uk-tile-secondary:not(.uk-preserve-color) .uk-checkbox:indeterminate,
.uk-card-primary.uk-card-body .uk-checkbox:indeterminate,
.uk-card-primary > :not([class*='uk-card-media']) .uk-checkbox:indeterminate,
.uk-card-secondary.uk-card-body .uk-checkbox:indeterminate,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-checkbox:indeterminate,
.uk-overlay-primary .uk-checkbox:indeterminate,
.uk-offcanvas-bar .uk-checkbox:indeterminate {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20x%3D%223%22%20y%3D%228%22%20width%3D%2210%22%20height%3D%221%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

.uk-light .uk-form-label, .uk-section-primary:not(.uk-preserve-color) .uk-form-label, .uk-section-secondary:not(.uk-preserve-color) .uk-form-label, .uk-tile-primary:not(.uk-preserve-color) .uk-form-label, .uk-tile-secondary:not(.uk-preserve-color) .uk-form-label, .uk-card-primary.uk-card-body .uk-form-label, .uk-card-primary > :not([class*='uk-card-media']) .uk-form-label, .uk-card-secondary.uk-card-body .uk-form-label, .uk-card-secondary > :not([class*='uk-card-media']) .uk-form-label, .uk-overlay-primary .uk-form-label, .uk-offcanvas-bar .uk-form-label {
	color: #fff;
}

.uk-light .uk-form-icon, .uk-section-primary:not(.uk-preserve-color) .uk-form-icon, .uk-section-secondary:not(.uk-preserve-color) .uk-form-icon, .uk-tile-primary:not(.uk-preserve-color) .uk-form-icon, .uk-tile-secondary:not(.uk-preserve-color) .uk-form-icon, .uk-card-primary.uk-card-body .uk-form-icon, .uk-card-primary > :not([class*='uk-card-media']) .uk-form-icon, .uk-card-secondary.uk-card-body .uk-form-icon, .uk-card-secondary > :not([class*='uk-card-media']) .uk-form-icon, .uk-overlay-primary .uk-form-icon, .uk-offcanvas-bar .uk-form-icon {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-form-icon:hover, .uk-section-primary:not(.uk-preserve-color) .uk-form-icon:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-form-icon:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-form-icon:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-form-icon:hover, .uk-card-primary.uk-card-body .uk-form-icon:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-form-icon:hover, .uk-card-secondary.uk-card-body .uk-form-icon:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-form-icon:hover, .uk-overlay-primary .uk-form-icon:hover, .uk-offcanvas-bar .uk-form-icon:hover {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-button-default, .uk-section-primary:not(.uk-preserve-color) .uk-button-default, .uk-section-secondary:not(.uk-preserve-color) .uk-button-default, .uk-tile-primary:not(.uk-preserve-color) .uk-button-default, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-default, .uk-card-primary.uk-card-body .uk-button-default, .uk-card-primary > :not([class*='uk-card-media']) .uk-button-default, .uk-card-secondary.uk-card-body .uk-button-default, .uk-card-secondary > :not([class*='uk-card-media']) .uk-button-default, .uk-overlay-primary .uk-button-default, .uk-offcanvas-bar .uk-button-default {
	background-color: transparent;
	color: #fff;
	border-color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-button-default:hover, .uk-section-primary:not(.uk-preserve-color) .uk-button-default:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-button-default:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-button-default:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-default:hover, .uk-card-primary.uk-card-body .uk-button-default:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-button-default:hover, .uk-card-secondary.uk-card-body .uk-button-default:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-button-default:hover, .uk-overlay-primary .uk-button-default:hover, .uk-offcanvas-bar .uk-button-default:hover,
.uk-light .uk-button-default:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-button-default:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-button-default:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-button-default:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-button-default:focus,
.uk-card-primary.uk-card-body .uk-button-default:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-button-default:focus,
.uk-card-secondary.uk-card-body .uk-button-default:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-button-default:focus,
.uk-overlay-primary .uk-button-default:focus,
.uk-offcanvas-bar .uk-button-default:focus {
	background-color: transparent;
	color: #fff;
	border-color: #fff;
}

.uk-light .uk-button-default:active, .uk-section-primary:not(.uk-preserve-color) .uk-button-default:active, .uk-section-secondary:not(.uk-preserve-color) .uk-button-default:active, .uk-tile-primary:not(.uk-preserve-color) .uk-button-default:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-default:active, .uk-card-primary.uk-card-body .uk-button-default:active, .uk-card-primary > :not([class*='uk-card-media']) .uk-button-default:active, .uk-card-secondary.uk-card-body .uk-button-default:active, .uk-card-secondary > :not([class*='uk-card-media']) .uk-button-default:active, .uk-overlay-primary .uk-button-default:active, .uk-offcanvas-bar .uk-button-default:active,
.uk-light .uk-button-default.uk-active,
.uk-section-primary:not(.uk-preserve-color) .uk-button-default.uk-active,
.uk-section-secondary:not(.uk-preserve-color) .uk-button-default.uk-active,
.uk-tile-primary:not(.uk-preserve-color) .uk-button-default.uk-active,
.uk-tile-secondary:not(.uk-preserve-color) .uk-button-default.uk-active,
.uk-card-primary.uk-card-body .uk-button-default.uk-active,
.uk-card-primary > :not([class*='uk-card-media']) .uk-button-default.uk-active,
.uk-card-secondary.uk-card-body .uk-button-default.uk-active,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-button-default.uk-active,
.uk-overlay-primary .uk-button-default.uk-active,
.uk-offcanvas-bar .uk-button-default.uk-active {
	background-color: transparent;
	color: #fff;
	border-color: #fff;
}

.uk-light .uk-button-primary, .uk-section-primary:not(.uk-preserve-color) .uk-button-primary, .uk-section-secondary:not(.uk-preserve-color) .uk-button-primary, .uk-tile-primary:not(.uk-preserve-color) .uk-button-primary, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-primary, .uk-card-primary.uk-card-body .uk-button-primary, .uk-card-primary > :not([class*='uk-card-media']) .uk-button-primary, .uk-card-secondary.uk-card-body .uk-button-primary, .uk-card-secondary > :not([class*='uk-card-media']) .uk-button-primary, .uk-overlay-primary .uk-button-primary, .uk-offcanvas-bar .uk-button-primary {
	background-color: #fff;
	color: #666;
}

.uk-light .uk-button-primary:hover, .uk-section-primary:not(.uk-preserve-color) .uk-button-primary:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-button-primary:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-button-primary:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-primary:hover, .uk-card-primary.uk-card-body .uk-button-primary:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-button-primary:hover, .uk-card-secondary.uk-card-body .uk-button-primary:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-button-primary:hover, .uk-overlay-primary .uk-button-primary:hover, .uk-offcanvas-bar .uk-button-primary:hover,
.uk-light .uk-button-primary:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-button-primary:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-button-primary:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-button-primary:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-button-primary:focus,
.uk-card-primary.uk-card-body .uk-button-primary:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-button-primary:focus,
.uk-card-secondary.uk-card-body .uk-button-primary:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-button-primary:focus,
.uk-overlay-primary .uk-button-primary:focus,
.uk-offcanvas-bar .uk-button-primary:focus {
	background-color: #f2f2f2;
	color: #666;
}

.uk-light .uk-button-primary:active, .uk-section-primary:not(.uk-preserve-color) .uk-button-primary:active, .uk-section-secondary:not(.uk-preserve-color) .uk-button-primary:active, .uk-tile-primary:not(.uk-preserve-color) .uk-button-primary:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-primary:active, .uk-card-primary.uk-card-body .uk-button-primary:active, .uk-card-primary > :not([class*='uk-card-media']) .uk-button-primary:active, .uk-card-secondary.uk-card-body .uk-button-primary:active, .uk-card-secondary > :not([class*='uk-card-media']) .uk-button-primary:active, .uk-overlay-primary .uk-button-primary:active, .uk-offcanvas-bar .uk-button-primary:active,
.uk-light .uk-button-primary.uk-active,
.uk-section-primary:not(.uk-preserve-color) .uk-button-primary.uk-active,
.uk-section-secondary:not(.uk-preserve-color) .uk-button-primary.uk-active,
.uk-tile-primary:not(.uk-preserve-color) .uk-button-primary.uk-active,
.uk-tile-secondary:not(.uk-preserve-color) .uk-button-primary.uk-active,
.uk-card-primary.uk-card-body .uk-button-primary.uk-active,
.uk-card-primary > :not([class*='uk-card-media']) .uk-button-primary.uk-active,
.uk-card-secondary.uk-card-body .uk-button-primary.uk-active,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-button-primary.uk-active,
.uk-overlay-primary .uk-button-primary.uk-active,
.uk-offcanvas-bar .uk-button-primary.uk-active {
	background-color: #e6e6e6;
	color: #666;
}

.uk-light .uk-button-secondary, .uk-section-primary:not(.uk-preserve-color) .uk-button-secondary, .uk-section-secondary:not(.uk-preserve-color) .uk-button-secondary, .uk-tile-primary:not(.uk-preserve-color) .uk-button-secondary, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-secondary, .uk-card-primary.uk-card-body .uk-button-secondary, .uk-card-primary > :not([class*='uk-card-media']) .uk-button-secondary, .uk-card-secondary.uk-card-body .uk-button-secondary, .uk-card-secondary > :not([class*='uk-card-media']) .uk-button-secondary, .uk-overlay-primary .uk-button-secondary, .uk-offcanvas-bar .uk-button-secondary {
	background-color: #fff;
	color: #666;
}

.uk-light .uk-button-secondary:hover, .uk-section-primary:not(.uk-preserve-color) .uk-button-secondary:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-button-secondary:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-button-secondary:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-secondary:hover, .uk-card-primary.uk-card-body .uk-button-secondary:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-button-secondary:hover, .uk-card-secondary.uk-card-body .uk-button-secondary:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-button-secondary:hover, .uk-overlay-primary .uk-button-secondary:hover, .uk-offcanvas-bar .uk-button-secondary:hover,
.uk-light .uk-button-secondary:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-button-secondary:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-button-secondary:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-button-secondary:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-button-secondary:focus,
.uk-card-primary.uk-card-body .uk-button-secondary:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-button-secondary:focus,
.uk-card-secondary.uk-card-body .uk-button-secondary:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-button-secondary:focus,
.uk-overlay-primary .uk-button-secondary:focus,
.uk-offcanvas-bar .uk-button-secondary:focus {
	background-color: #f2f2f2;
	color: #666;
}

.uk-light .uk-button-secondary:active, .uk-section-primary:not(.uk-preserve-color) .uk-button-secondary:active, .uk-section-secondary:not(.uk-preserve-color) .uk-button-secondary:active, .uk-tile-primary:not(.uk-preserve-color) .uk-button-secondary:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-secondary:active, .uk-card-primary.uk-card-body .uk-button-secondary:active, .uk-card-primary > :not([class*='uk-card-media']) .uk-button-secondary:active, .uk-card-secondary.uk-card-body .uk-button-secondary:active, .uk-card-secondary > :not([class*='uk-card-media']) .uk-button-secondary:active, .uk-overlay-primary .uk-button-secondary:active, .uk-offcanvas-bar .uk-button-secondary:active,
.uk-light .uk-button-secondary.uk-active,
.uk-section-primary:not(.uk-preserve-color) .uk-button-secondary.uk-active,
.uk-section-secondary:not(.uk-preserve-color) .uk-button-secondary.uk-active,
.uk-tile-primary:not(.uk-preserve-color) .uk-button-secondary.uk-active,
.uk-tile-secondary:not(.uk-preserve-color) .uk-button-secondary.uk-active,
.uk-card-primary.uk-card-body .uk-button-secondary.uk-active,
.uk-card-primary > :not([class*='uk-card-media']) .uk-button-secondary.uk-active,
.uk-card-secondary.uk-card-body .uk-button-secondary.uk-active,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-button-secondary.uk-active,
.uk-overlay-primary .uk-button-secondary.uk-active,
.uk-offcanvas-bar .uk-button-secondary.uk-active {
	background-color: #e6e6e6;
	color: #666;
}

.uk-light .uk-button-text, .uk-section-primary:not(.uk-preserve-color) .uk-button-text, .uk-section-secondary:not(.uk-preserve-color) .uk-button-text, .uk-tile-primary:not(.uk-preserve-color) .uk-button-text, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-text, .uk-card-primary.uk-card-body .uk-button-text, .uk-card-primary > :not([class*='uk-card-media']) .uk-button-text, .uk-card-secondary.uk-card-body .uk-button-text, .uk-card-secondary > :not([class*='uk-card-media']) .uk-button-text, .uk-overlay-primary .uk-button-text, .uk-offcanvas-bar .uk-button-text {
	color: #fff;
}

.uk-light .uk-button-text::before, .uk-section-primary:not(.uk-preserve-color) .uk-button-text::before, .uk-section-secondary:not(.uk-preserve-color) .uk-button-text::before, .uk-tile-primary:not(.uk-preserve-color) .uk-button-text::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-text::before, .uk-card-primary.uk-card-body .uk-button-text::before, .uk-card-primary > :not([class*='uk-card-media']) .uk-button-text::before, .uk-card-secondary.uk-card-body .uk-button-text::before, .uk-card-secondary > :not([class*='uk-card-media']) .uk-button-text::before, .uk-overlay-primary .uk-button-text::before, .uk-offcanvas-bar .uk-button-text::before {
	border-bottom-color: #fff;
}

.uk-light .uk-button-text:hover, .uk-section-primary:not(.uk-preserve-color) .uk-button-text:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-button-text:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-button-text:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-text:hover, .uk-card-primary.uk-card-body .uk-button-text:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-button-text:hover, .uk-card-secondary.uk-card-body .uk-button-text:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-button-text:hover, .uk-overlay-primary .uk-button-text:hover, .uk-offcanvas-bar .uk-button-text:hover,
.uk-light .uk-button-text:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-button-text:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-button-text:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-button-text:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-button-text:focus,
.uk-card-primary.uk-card-body .uk-button-text:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-button-text:focus,
.uk-card-secondary.uk-card-body .uk-button-text:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-button-text:focus,
.uk-overlay-primary .uk-button-text:focus,
.uk-offcanvas-bar .uk-button-text:focus {
	color: #fff;
}

.uk-light .uk-button-text:disabled, .uk-section-primary:not(.uk-preserve-color) .uk-button-text:disabled, .uk-section-secondary:not(.uk-preserve-color) .uk-button-text:disabled, .uk-tile-primary:not(.uk-preserve-color) .uk-button-text:disabled, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-text:disabled, .uk-card-primary.uk-card-body .uk-button-text:disabled, .uk-card-primary > :not([class*='uk-card-media']) .uk-button-text:disabled, .uk-card-secondary.uk-card-body .uk-button-text:disabled, .uk-card-secondary > :not([class*='uk-card-media']) .uk-button-text:disabled, .uk-overlay-primary .uk-button-text:disabled, .uk-offcanvas-bar .uk-button-text:disabled {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-button-link, .uk-section-primary:not(.uk-preserve-color) .uk-button-link, .uk-section-secondary:not(.uk-preserve-color) .uk-button-link, .uk-tile-primary:not(.uk-preserve-color) .uk-button-link, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-link, .uk-card-primary.uk-card-body .uk-button-link, .uk-card-primary > :not([class*='uk-card-media']) .uk-button-link, .uk-card-secondary.uk-card-body .uk-button-link, .uk-card-secondary > :not([class*='uk-card-media']) .uk-button-link, .uk-overlay-primary .uk-button-link, .uk-offcanvas-bar .uk-button-link {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-button-link:hover, .uk-section-primary:not(.uk-preserve-color) .uk-button-link:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-button-link:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-button-link:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-button-link:hover, .uk-card-primary.uk-card-body .uk-button-link:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-button-link:hover, .uk-card-secondary.uk-card-body .uk-button-link:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-button-link:hover, .uk-overlay-primary .uk-button-link:hover, .uk-offcanvas-bar .uk-button-link:hover,
.uk-light .uk-button-link:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-button-link:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-button-link:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-button-link:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-button-link:focus,
.uk-card-primary.uk-card-body .uk-button-link:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-button-link:focus,
.uk-card-secondary.uk-card-body .uk-button-link:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-button-link:focus,
.uk-overlay-primary .uk-button-link:focus,
.uk-offcanvas-bar .uk-button-link:focus {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-grid-divider > :not(.uk-first-column)::before, .uk-section-primary:not(.uk-preserve-color) .uk-grid-divider > :not(.uk-first-column)::before, .uk-section-secondary:not(.uk-preserve-color) .uk-grid-divider > :not(.uk-first-column)::before, .uk-tile-primary:not(.uk-preserve-color) .uk-grid-divider > :not(.uk-first-column)::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-grid-divider > :not(.uk-first-column)::before, .uk-card-primary.uk-card-body .uk-grid-divider > :not(.uk-first-column)::before, .uk-card-primary > :not([class*='uk-card-media']) .uk-grid-divider > :not(.uk-first-column)::before, .uk-card-secondary.uk-card-body .uk-grid-divider > :not(.uk-first-column)::before, .uk-card-secondary > :not([class*='uk-card-media']) .uk-grid-divider > :not(.uk-first-column)::before, .uk-overlay-primary .uk-grid-divider > :not(.uk-first-column)::before, .uk-offcanvas-bar .uk-grid-divider > :not(.uk-first-column)::before {
	border-left-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-section-primary:not(.uk-preserve-color) .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-section-secondary:not(.uk-preserve-color) .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-tile-primary:not(.uk-preserve-color) .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-card-primary.uk-card-body .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-card-primary > :not([class*='uk-card-media']) .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-card-secondary.uk-card-body .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-card-secondary > :not([class*='uk-card-media']) .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-overlay-primary .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before, .uk-offcanvas-bar .uk-grid-divider.uk-grid-stack > .uk-grid-margin::before {
	border-top-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-close, .uk-section-primary:not(.uk-preserve-color) .uk-close, .uk-section-secondary:not(.uk-preserve-color) .uk-close, .uk-tile-primary:not(.uk-preserve-color) .uk-close, .uk-tile-secondary:not(.uk-preserve-color) .uk-close, .uk-card-primary.uk-card-body .uk-close, .uk-card-primary > :not([class*='uk-card-media']) .uk-close, .uk-card-secondary.uk-card-body .uk-close, .uk-card-secondary > :not([class*='uk-card-media']) .uk-close, .uk-overlay-primary .uk-close, .uk-offcanvas-bar .uk-close {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-close:hover, .uk-section-primary:not(.uk-preserve-color) .uk-close:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-close:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-close:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-close:hover, .uk-card-primary.uk-card-body .uk-close:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-close:hover, .uk-card-secondary.uk-card-body .uk-close:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-close:hover, .uk-overlay-primary .uk-close:hover, .uk-offcanvas-bar .uk-close:hover,
.uk-light .uk-close:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-close:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-close:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-close:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-close:focus,
.uk-card-primary.uk-card-body .uk-close:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-close:focus,
.uk-card-secondary.uk-card-body .uk-close:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-close:focus,
.uk-overlay-primary .uk-close:focus,
.uk-offcanvas-bar .uk-close:focus {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-totop, .uk-section-primary:not(.uk-preserve-color) .uk-totop, .uk-section-secondary:not(.uk-preserve-color) .uk-totop, .uk-tile-primary:not(.uk-preserve-color) .uk-totop, .uk-tile-secondary:not(.uk-preserve-color) .uk-totop, .uk-card-primary.uk-card-body .uk-totop, .uk-card-primary > :not([class*='uk-card-media']) .uk-totop, .uk-card-secondary.uk-card-body .uk-totop, .uk-card-secondary > :not([class*='uk-card-media']) .uk-totop, .uk-overlay-primary .uk-totop, .uk-offcanvas-bar .uk-totop {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-totop:hover, .uk-section-primary:not(.uk-preserve-color) .uk-totop:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-totop:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-totop:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-totop:hover, .uk-card-primary.uk-card-body .uk-totop:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-totop:hover, .uk-card-secondary.uk-card-body .uk-totop:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-totop:hover, .uk-overlay-primary .uk-totop:hover, .uk-offcanvas-bar .uk-totop:hover,
.uk-light .uk-totop:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-totop:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-totop:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-totop:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-totop:focus,
.uk-card-primary.uk-card-body .uk-totop:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-totop:focus,
.uk-card-secondary.uk-card-body .uk-totop:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-totop:focus,
.uk-overlay-primary .uk-totop:focus,
.uk-offcanvas-bar .uk-totop:focus {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-totop:active, .uk-section-primary:not(.uk-preserve-color) .uk-totop:active, .uk-section-secondary:not(.uk-preserve-color) .uk-totop:active, .uk-tile-primary:not(.uk-preserve-color) .uk-totop:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-totop:active, .uk-card-primary.uk-card-body .uk-totop:active, .uk-card-primary > :not([class*='uk-card-media']) .uk-totop:active, .uk-card-secondary.uk-card-body .uk-totop:active, .uk-card-secondary > :not([class*='uk-card-media']) .uk-totop:active, .uk-overlay-primary .uk-totop:active, .uk-offcanvas-bar .uk-totop:active {
	color: #fff;
}

.uk-light .uk-badge, .uk-section-primary:not(.uk-preserve-color) .uk-badge, .uk-section-secondary:not(.uk-preserve-color) .uk-badge, .uk-tile-primary:not(.uk-preserve-color) .uk-badge, .uk-tile-secondary:not(.uk-preserve-color) .uk-badge, .uk-card-primary.uk-card-body .uk-badge, .uk-card-primary > :not([class*='uk-card-media']) .uk-badge, .uk-card-secondary.uk-card-body .uk-badge, .uk-card-secondary > :not([class*='uk-card-media']) .uk-badge, .uk-overlay-primary .uk-badge, .uk-offcanvas-bar .uk-badge {
	background-color: #fff;
	color: #666;
}

.uk-light .uk-badge:hover, .uk-section-primary:not(.uk-preserve-color) .uk-badge:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-badge:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-badge:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-badge:hover, .uk-card-primary.uk-card-body .uk-badge:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-badge:hover, .uk-card-secondary.uk-card-body .uk-badge:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-badge:hover, .uk-overlay-primary .uk-badge:hover, .uk-offcanvas-bar .uk-badge:hover,
.uk-light .uk-badge:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-badge:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-badge:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-badge:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-badge:focus,
.uk-card-primary.uk-card-body .uk-badge:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-badge:focus,
.uk-card-secondary.uk-card-body .uk-badge:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-badge:focus,
.uk-overlay-primary .uk-badge:focus,
.uk-offcanvas-bar .uk-badge:focus {
	color: #666;
}

.uk-light .uk-label, .uk-section-primary:not(.uk-preserve-color) .uk-label, .uk-section-secondary:not(.uk-preserve-color) .uk-label, .uk-tile-primary:not(.uk-preserve-color) .uk-label, .uk-tile-secondary:not(.uk-preserve-color) .uk-label, .uk-card-primary.uk-card-body .uk-label, .uk-card-primary > :not([class*='uk-card-media']) .uk-label, .uk-card-secondary.uk-card-body .uk-label, .uk-card-secondary > :not([class*='uk-card-media']) .uk-label, .uk-overlay-primary .uk-label, .uk-offcanvas-bar .uk-label {
	background-color: #fff;
	color: #666;
}

.uk-light .uk-article-meta, .uk-section-primary:not(.uk-preserve-color) .uk-article-meta, .uk-section-secondary:not(.uk-preserve-color) .uk-article-meta, .uk-tile-primary:not(.uk-preserve-color) .uk-article-meta, .uk-tile-secondary:not(.uk-preserve-color) .uk-article-meta, .uk-card-primary.uk-card-body .uk-article-meta, .uk-card-primary > :not([class*='uk-card-media']) .uk-article-meta, .uk-card-secondary.uk-card-body .uk-article-meta, .uk-card-secondary > :not([class*='uk-card-media']) .uk-article-meta, .uk-overlay-primary .uk-article-meta, .uk-offcanvas-bar .uk-article-meta {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-search-input, .uk-section-primary:not(.uk-preserve-color) .uk-search-input, .uk-section-secondary:not(.uk-preserve-color) .uk-search-input, .uk-tile-primary:not(.uk-preserve-color) .uk-search-input, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-input, .uk-card-primary.uk-card-body .uk-search-input, .uk-card-primary > :not([class*='uk-card-media']) .uk-search-input, .uk-card-secondary.uk-card-body .uk-search-input, .uk-card-secondary > :not([class*='uk-card-media']) .uk-search-input, .uk-overlay-primary .uk-search-input, .uk-offcanvas-bar .uk-search-input {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-search-input:-ms-input-placeholder, .uk-section-primary:not(.uk-preserve-color) .uk-search-input:-ms-input-placeholder, .uk-section-secondary:not(.uk-preserve-color) .uk-search-input:-ms-input-placeholder, .uk-tile-primary:not(.uk-preserve-color) .uk-search-input:-ms-input-placeholder, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-input:-ms-input-placeholder, .uk-card-primary.uk-card-body .uk-search-input:-ms-input-placeholder, .uk-card-primary > :not([class*='uk-card-media']) .uk-search-input:-ms-input-placeholder, .uk-card-secondary.uk-card-body .uk-search-input:-ms-input-placeholder, .uk-card-secondary > :not([class*='uk-card-media']) .uk-search-input:-ms-input-placeholder, .uk-overlay-primary .uk-search-input:-ms-input-placeholder, .uk-offcanvas-bar .uk-search-input:-ms-input-placeholder {
	color: rgba(255, 255, 255, 0.5) !important;
}

.uk-light .uk-search-input::placeholder, .uk-section-primary:not(.uk-preserve-color) .uk-search-input::placeholder, .uk-section-secondary:not(.uk-preserve-color) .uk-search-input::placeholder, .uk-tile-primary:not(.uk-preserve-color) .uk-search-input::placeholder, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-input::placeholder, .uk-card-primary.uk-card-body .uk-search-input::placeholder, .uk-card-primary > :not([class*='uk-card-media']) .uk-search-input::placeholder, .uk-card-secondary.uk-card-body .uk-search-input::placeholder, .uk-card-secondary > :not([class*='uk-card-media']) .uk-search-input::placeholder, .uk-overlay-primary .uk-search-input::placeholder, .uk-offcanvas-bar .uk-search-input::placeholder {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-search .uk-search-icon, .uk-section-primary:not(.uk-preserve-color) .uk-search .uk-search-icon, .uk-section-secondary:not(.uk-preserve-color) .uk-search .uk-search-icon, .uk-tile-primary:not(.uk-preserve-color) .uk-search .uk-search-icon, .uk-tile-secondary:not(.uk-preserve-color) .uk-search .uk-search-icon, .uk-card-primary.uk-card-body .uk-search .uk-search-icon, .uk-card-primary > :not([class*='uk-card-media']) .uk-search .uk-search-icon, .uk-card-secondary.uk-card-body .uk-search .uk-search-icon, .uk-card-secondary > :not([class*='uk-card-media']) .uk-search .uk-search-icon, .uk-overlay-primary .uk-search .uk-search-icon, .uk-offcanvas-bar .uk-search .uk-search-icon {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-search .uk-search-icon:hover, .uk-section-primary:not(.uk-preserve-color) .uk-search .uk-search-icon:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-search .uk-search-icon:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-search .uk-search-icon:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-search .uk-search-icon:hover, .uk-card-primary.uk-card-body .uk-search .uk-search-icon:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-search .uk-search-icon:hover, .uk-card-secondary.uk-card-body .uk-search .uk-search-icon:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-search .uk-search-icon:hover, .uk-overlay-primary .uk-search .uk-search-icon:hover, .uk-offcanvas-bar .uk-search .uk-search-icon:hover {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-search-default .uk-search-input, .uk-section-primary:not(.uk-preserve-color) .uk-search-default .uk-search-input, .uk-section-secondary:not(.uk-preserve-color) .uk-search-default .uk-search-input, .uk-tile-primary:not(.uk-preserve-color) .uk-search-default .uk-search-input, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-default .uk-search-input, .uk-card-primary.uk-card-body .uk-search-default .uk-search-input, .uk-card-primary > :not([class*='uk-card-media']) .uk-search-default .uk-search-input, .uk-card-secondary.uk-card-body .uk-search-default .uk-search-input, .uk-card-secondary > :not([class*='uk-card-media']) .uk-search-default .uk-search-input, .uk-overlay-primary .uk-search-default .uk-search-input, .uk-offcanvas-bar .uk-search-default .uk-search-input {
	background-color: transparent;
	border-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-search-default .uk-search-input:focus, .uk-section-primary:not(.uk-preserve-color) .uk-search-default .uk-search-input:focus, .uk-section-secondary:not(.uk-preserve-color) .uk-search-default .uk-search-input:focus, .uk-tile-primary:not(.uk-preserve-color) .uk-search-default .uk-search-input:focus, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-default .uk-search-input:focus, .uk-card-primary.uk-card-body .uk-search-default .uk-search-input:focus, .uk-card-primary > :not([class*='uk-card-media']) .uk-search-default .uk-search-input:focus, .uk-card-secondary.uk-card-body .uk-search-default .uk-search-input:focus, .uk-card-secondary > :not([class*='uk-card-media']) .uk-search-default .uk-search-input:focus, .uk-overlay-primary .uk-search-default .uk-search-input:focus, .uk-offcanvas-bar .uk-search-default .uk-search-input:focus {
	background-color: transparent;
}

.uk-light .uk-search-navbar .uk-search-input, .uk-section-primary:not(.uk-preserve-color) .uk-search-navbar .uk-search-input, .uk-section-secondary:not(.uk-preserve-color) .uk-search-navbar .uk-search-input, .uk-tile-primary:not(.uk-preserve-color) .uk-search-navbar .uk-search-input, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-navbar .uk-search-input, .uk-card-primary.uk-card-body .uk-search-navbar .uk-search-input, .uk-card-primary > :not([class*='uk-card-media']) .uk-search-navbar .uk-search-input, .uk-card-secondary.uk-card-body .uk-search-navbar .uk-search-input, .uk-card-secondary > :not([class*='uk-card-media']) .uk-search-navbar .uk-search-input, .uk-overlay-primary .uk-search-navbar .uk-search-input, .uk-offcanvas-bar .uk-search-navbar .uk-search-input {
	background-color: transparent;
}

.uk-light .uk-search-large .uk-search-input, .uk-section-primary:not(.uk-preserve-color) .uk-search-large .uk-search-input, .uk-section-secondary:not(.uk-preserve-color) .uk-search-large .uk-search-input, .uk-tile-primary:not(.uk-preserve-color) .uk-search-large .uk-search-input, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-large .uk-search-input, .uk-card-primary.uk-card-body .uk-search-large .uk-search-input, .uk-card-primary > :not([class*='uk-card-media']) .uk-search-large .uk-search-input, .uk-card-secondary.uk-card-body .uk-search-large .uk-search-input, .uk-card-secondary > :not([class*='uk-card-media']) .uk-search-large .uk-search-input, .uk-overlay-primary .uk-search-large .uk-search-input, .uk-offcanvas-bar .uk-search-large .uk-search-input {
	background-color: transparent;
}

.uk-light .uk-search-toggle, .uk-section-primary:not(.uk-preserve-color) .uk-search-toggle, .uk-section-secondary:not(.uk-preserve-color) .uk-search-toggle, .uk-tile-primary:not(.uk-preserve-color) .uk-search-toggle, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-toggle, .uk-card-primary.uk-card-body .uk-search-toggle, .uk-card-primary > :not([class*='uk-card-media']) .uk-search-toggle, .uk-card-secondary.uk-card-body .uk-search-toggle, .uk-card-secondary > :not([class*='uk-card-media']) .uk-search-toggle, .uk-overlay-primary .uk-search-toggle, .uk-offcanvas-bar .uk-search-toggle {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-search-toggle:hover, .uk-section-primary:not(.uk-preserve-color) .uk-search-toggle:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-search-toggle:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-search-toggle:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-search-toggle:hover, .uk-card-primary.uk-card-body .uk-search-toggle:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-search-toggle:hover, .uk-card-secondary.uk-card-body .uk-search-toggle:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-search-toggle:hover, .uk-overlay-primary .uk-search-toggle:hover, .uk-offcanvas-bar .uk-search-toggle:hover,
.uk-light .uk-search-toggle:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-search-toggle:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-search-toggle:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-search-toggle:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-search-toggle:focus,
.uk-card-primary.uk-card-body .uk-search-toggle:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-search-toggle:focus,
.uk-card-secondary.uk-card-body .uk-search-toggle:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-search-toggle:focus,
.uk-overlay-primary .uk-search-toggle:focus,
.uk-offcanvas-bar .uk-search-toggle:focus {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-nav-parent-icon > .uk-parent > a::after, .uk-section-primary:not(.uk-preserve-color) .uk-nav-parent-icon > .uk-parent > a::after, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-parent-icon > .uk-parent > a::after, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-parent-icon > .uk-parent > a::after, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-parent-icon > .uk-parent > a::after, .uk-card-primary.uk-card-body .uk-nav-parent-icon > .uk-parent > a::after, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-parent-icon > .uk-parent > a::after, .uk-card-secondary.uk-card-body .uk-nav-parent-icon > .uk-parent > a::after, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-parent-icon > .uk-parent > a::after, .uk-overlay-primary .uk-nav-parent-icon > .uk-parent > a::after, .uk-offcanvas-bar .uk-nav-parent-icon > .uk-parent > a::after {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22rgba(255, 255, 255, 0.7)%22%20stroke-width%3D%221.1%22%20points%3D%2210%201%204%207%2010%2013%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

.uk-light .uk-nav-parent-icon > .uk-parent.uk-open > a::after, .uk-section-primary:not(.uk-preserve-color) .uk-nav-parent-icon > .uk-parent.uk-open > a::after, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-parent-icon > .uk-parent.uk-open > a::after, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-parent-icon > .uk-parent.uk-open > a::after, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-parent-icon > .uk-parent.uk-open > a::after, .uk-card-primary.uk-card-body .uk-nav-parent-icon > .uk-parent.uk-open > a::after, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-parent-icon > .uk-parent.uk-open > a::after, .uk-card-secondary.uk-card-body .uk-nav-parent-icon > .uk-parent.uk-open > a::after, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-parent-icon > .uk-parent.uk-open > a::after, .uk-overlay-primary .uk-nav-parent-icon > .uk-parent.uk-open > a::after, .uk-offcanvas-bar .uk-nav-parent-icon > .uk-parent.uk-open > a::after {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22rgba(255, 255, 255, 0.7)%22%20stroke-width%3D%221.1%22%20points%3D%221%204%207%2010%2013%204%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

.uk-light .uk-nav-default > li > a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-default > li > a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-default > li > a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-default > li > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default > li > a, .uk-card-primary.uk-card-body .uk-nav-default > li > a, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-default > li > a, .uk-card-secondary.uk-card-body .uk-nav-default > li > a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-default > li > a, .uk-overlay-primary .uk-nav-default > li > a, .uk-offcanvas-bar .uk-nav-default > li > a {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-nav-default > li > a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-nav-default > li > a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-default > li > a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-default > li > a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default > li > a:hover, .uk-card-primary.uk-card-body .uk-nav-default > li > a:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-default > li > a:hover, .uk-card-secondary.uk-card-body .uk-nav-default > li > a:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-default > li > a:hover, .uk-overlay-primary .uk-nav-default > li > a:hover, .uk-offcanvas-bar .uk-nav-default > li > a:hover,
.uk-light .uk-nav-default > li > a:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-nav-default > li > a:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-nav-default > li > a:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-nav-default > li > a:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default > li > a:focus,
.uk-card-primary.uk-card-body .uk-nav-default > li > a:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-nav-default > li > a:focus,
.uk-card-secondary.uk-card-body .uk-nav-default > li > a:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-default > li > a:focus,
.uk-overlay-primary .uk-nav-default > li > a:focus,
.uk-offcanvas-bar .uk-nav-default > li > a:focus {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-nav-default > li.uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-default > li.uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-default > li.uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-default > li.uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default > li.uk-active > a, .uk-card-primary.uk-card-body .uk-nav-default > li.uk-active > a, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-default > li.uk-active > a, .uk-card-secondary.uk-card-body .uk-nav-default > li.uk-active > a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-default > li.uk-active > a, .uk-overlay-primary .uk-nav-default > li.uk-active > a, .uk-offcanvas-bar .uk-nav-default > li.uk-active > a {
	color: #fff;
}

.uk-light .uk-nav-default .uk-nav-header, .uk-section-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-header, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-header, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-header, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-header, .uk-card-primary.uk-card-body .uk-nav-default .uk-nav-header, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-default .uk-nav-header, .uk-card-secondary.uk-card-body .uk-nav-default .uk-nav-header, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-default .uk-nav-header, .uk-overlay-primary .uk-nav-default .uk-nav-header, .uk-offcanvas-bar .uk-nav-default .uk-nav-header {
	color: #fff;
}

.uk-light .uk-nav-default .uk-nav-divider, .uk-section-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-divider, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-divider, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-divider, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-divider, .uk-card-primary.uk-card-body .uk-nav-default .uk-nav-divider, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-default .uk-nav-divider, .uk-card-secondary.uk-card-body .uk-nav-default .uk-nav-divider, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-default .uk-nav-divider, .uk-overlay-primary .uk-nav-default .uk-nav-divider, .uk-offcanvas-bar .uk-nav-default .uk-nav-divider {
	border-top-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-nav-default .uk-nav-sub a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a, .uk-card-primary.uk-card-body .uk-nav-default .uk-nav-sub a, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-default .uk-nav-sub a, .uk-card-secondary.uk-card-body .uk-nav-default .uk-nav-sub a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-default .uk-nav-sub a, .uk-overlay-primary .uk-nav-default .uk-nav-sub a, .uk-offcanvas-bar .uk-nav-default .uk-nav-sub a {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-nav-default .uk-nav-sub a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:hover, .uk-card-primary.uk-card-body .uk-nav-default .uk-nav-sub a:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-default .uk-nav-sub a:hover, .uk-card-secondary.uk-card-body .uk-nav-default .uk-nav-sub a:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-default .uk-nav-sub a:hover, .uk-overlay-primary .uk-nav-default .uk-nav-sub a:hover, .uk-offcanvas-bar .uk-nav-default .uk-nav-sub a:hover,
.uk-light .uk-nav-default .uk-nav-sub a:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub a:focus,
.uk-card-primary.uk-card-body .uk-nav-default .uk-nav-sub a:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-nav-default .uk-nav-sub a:focus,
.uk-card-secondary.uk-card-body .uk-nav-default .uk-nav-sub a:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-default .uk-nav-sub a:focus,
.uk-overlay-primary .uk-nav-default .uk-nav-sub a:focus,
.uk-offcanvas-bar .uk-nav-default .uk-nav-sub a:focus {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-card-primary.uk-card-body .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-card-secondary.uk-card-body .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-overlay-primary .uk-nav-default .uk-nav-sub li.uk-active > a, .uk-offcanvas-bar .uk-nav-default .uk-nav-sub li.uk-active > a {
	color: #fff;
}

.uk-light .uk-nav-primary > li > a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-primary > li > a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary > li > a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary > li > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary > li > a, .uk-card-primary.uk-card-body .uk-nav-primary > li > a, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-primary > li > a, .uk-card-secondary.uk-card-body .uk-nav-primary > li > a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-primary > li > a, .uk-overlay-primary .uk-nav-primary > li > a, .uk-offcanvas-bar .uk-nav-primary > li > a {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-nav-primary > li > a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-nav-primary > li > a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary > li > a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary > li > a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary > li > a:hover, .uk-card-primary.uk-card-body .uk-nav-primary > li > a:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-primary > li > a:hover, .uk-card-secondary.uk-card-body .uk-nav-primary > li > a:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-primary > li > a:hover, .uk-overlay-primary .uk-nav-primary > li > a:hover, .uk-offcanvas-bar .uk-nav-primary > li > a:hover,
.uk-light .uk-nav-primary > li > a:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-nav-primary > li > a:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary > li > a:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary > li > a:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary > li > a:focus,
.uk-card-primary.uk-card-body .uk-nav-primary > li > a:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-nav-primary > li > a:focus,
.uk-card-secondary.uk-card-body .uk-nav-primary > li > a:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-primary > li > a:focus,
.uk-overlay-primary .uk-nav-primary > li > a:focus,
.uk-offcanvas-bar .uk-nav-primary > li > a:focus {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-nav-primary > li.uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-primary > li.uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary > li.uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary > li.uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary > li.uk-active > a, .uk-card-primary.uk-card-body .uk-nav-primary > li.uk-active > a, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-primary > li.uk-active > a, .uk-card-secondary.uk-card-body .uk-nav-primary > li.uk-active > a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-primary > li.uk-active > a, .uk-overlay-primary .uk-nav-primary > li.uk-active > a, .uk-offcanvas-bar .uk-nav-primary > li.uk-active > a {
	color: #fff;
}

.uk-light .uk-nav-primary .uk-nav-header, .uk-section-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-header, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-header, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-header, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-header, .uk-card-primary.uk-card-body .uk-nav-primary .uk-nav-header, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-primary .uk-nav-header, .uk-card-secondary.uk-card-body .uk-nav-primary .uk-nav-header, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-primary .uk-nav-header, .uk-overlay-primary .uk-nav-primary .uk-nav-header, .uk-offcanvas-bar .uk-nav-primary .uk-nav-header {
	color: #fff;
}

.uk-light .uk-nav-primary .uk-nav-divider, .uk-section-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-divider, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-divider, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-divider, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-divider, .uk-card-primary.uk-card-body .uk-nav-primary .uk-nav-divider, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-primary .uk-nav-divider, .uk-card-secondary.uk-card-body .uk-nav-primary .uk-nav-divider, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-primary .uk-nav-divider, .uk-overlay-primary .uk-nav-primary .uk-nav-divider, .uk-offcanvas-bar .uk-nav-primary .uk-nav-divider {
	border-top-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-nav-primary .uk-nav-sub a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a, .uk-card-primary.uk-card-body .uk-nav-primary .uk-nav-sub a, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-primary .uk-nav-sub a, .uk-card-secondary.uk-card-body .uk-nav-primary .uk-nav-sub a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-primary .uk-nav-sub a, .uk-overlay-primary .uk-nav-primary .uk-nav-sub a, .uk-offcanvas-bar .uk-nav-primary .uk-nav-sub a {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-nav-primary .uk-nav-sub a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:hover, .uk-card-primary.uk-card-body .uk-nav-primary .uk-nav-sub a:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-primary .uk-nav-sub a:hover, .uk-card-secondary.uk-card-body .uk-nav-primary .uk-nav-sub a:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-primary .uk-nav-sub a:hover, .uk-overlay-primary .uk-nav-primary .uk-nav-sub a:hover, .uk-offcanvas-bar .uk-nav-primary .uk-nav-sub a:hover,
.uk-light .uk-nav-primary .uk-nav-sub a:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub a:focus,
.uk-card-primary.uk-card-body .uk-nav-primary .uk-nav-sub a:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-nav-primary .uk-nav-sub a:focus,
.uk-card-secondary.uk-card-body .uk-nav-primary .uk-nav-sub a:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-primary .uk-nav-sub a:focus,
.uk-overlay-primary .uk-nav-primary .uk-nav-sub a:focus,
.uk-offcanvas-bar .uk-nav-primary .uk-nav-sub a:focus {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-card-primary.uk-card-body .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-card-primary > :not([class*='uk-card-media']) .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-card-secondary.uk-card-body .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-overlay-primary .uk-nav-primary .uk-nav-sub li.uk-active > a, .uk-offcanvas-bar .uk-nav-primary .uk-nav-sub li.uk-active > a {
	color: #fff;
}

.uk-light .uk-navbar-nav > li > a, .uk-section-primary:not(.uk-preserve-color) .uk-navbar-nav > li > a, .uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav > li > a, .uk-tile-primary:not(.uk-preserve-color) .uk-navbar-nav > li > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-nav > li > a, .uk-card-primary.uk-card-body .uk-navbar-nav > li > a, .uk-card-primary > :not([class*='uk-card-media']) .uk-navbar-nav > li > a, .uk-card-secondary.uk-card-body .uk-navbar-nav > li > a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-navbar-nav > li > a, .uk-overlay-primary .uk-navbar-nav > li > a, .uk-offcanvas-bar .uk-navbar-nav > li > a {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-navbar-nav > li:hover > a, .uk-section-primary:not(.uk-preserve-color) .uk-navbar-nav > li:hover > a, .uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav > li:hover > a, .uk-tile-primary:not(.uk-preserve-color) .uk-navbar-nav > li:hover > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-nav > li:hover > a, .uk-card-primary.uk-card-body .uk-navbar-nav > li:hover > a, .uk-card-primary > :not([class*='uk-card-media']) .uk-navbar-nav > li:hover > a, .uk-card-secondary.uk-card-body .uk-navbar-nav > li:hover > a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-navbar-nav > li:hover > a, .uk-overlay-primary .uk-navbar-nav > li:hover > a, .uk-offcanvas-bar .uk-navbar-nav > li:hover > a,
.uk-light .uk-navbar-nav > li > a:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-navbar-nav > li > a:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav > li > a:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-navbar-nav > li > a:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-nav > li > a:focus,
.uk-card-primary.uk-card-body .uk-navbar-nav > li > a:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-navbar-nav > li > a:focus,
.uk-card-secondary.uk-card-body .uk-navbar-nav > li > a:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-navbar-nav > li > a:focus,
.uk-overlay-primary .uk-navbar-nav > li > a:focus,
.uk-offcanvas-bar .uk-navbar-nav > li > a:focus,
.uk-light .uk-navbar-nav > li > a.uk-open,
.uk-section-primary:not(.uk-preserve-color) .uk-navbar-nav > li > a.uk-open,
.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav > li > a.uk-open,
.uk-tile-primary:not(.uk-preserve-color) .uk-navbar-nav > li > a.uk-open,
.uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-nav > li > a.uk-open,
.uk-card-primary.uk-card-body .uk-navbar-nav > li > a.uk-open,
.uk-card-primary > :not([class*='uk-card-media']) .uk-navbar-nav > li > a.uk-open,
.uk-card-secondary.uk-card-body .uk-navbar-nav > li > a.uk-open,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-navbar-nav > li > a.uk-open,
.uk-overlay-primary .uk-navbar-nav > li > a.uk-open,
.uk-offcanvas-bar .uk-navbar-nav > li > a.uk-open {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-navbar-nav > li > a:active, .uk-section-primary:not(.uk-preserve-color) .uk-navbar-nav > li > a:active, .uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav > li > a:active, .uk-tile-primary:not(.uk-preserve-color) .uk-navbar-nav > li > a:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-nav > li > a:active, .uk-card-primary.uk-card-body .uk-navbar-nav > li > a:active, .uk-card-primary > :not([class*='uk-card-media']) .uk-navbar-nav > li > a:active, .uk-card-secondary.uk-card-body .uk-navbar-nav > li > a:active, .uk-card-secondary > :not([class*='uk-card-media']) .uk-navbar-nav > li > a:active, .uk-overlay-primary .uk-navbar-nav > li > a:active, .uk-offcanvas-bar .uk-navbar-nav > li > a:active {
	color: #fff;
}

.uk-light .uk-navbar-nav > li.uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-navbar-nav > li.uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-navbar-nav > li.uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-navbar-nav > li.uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-nav > li.uk-active > a, .uk-card-primary.uk-card-body .uk-navbar-nav > li.uk-active > a, .uk-card-primary > :not([class*='uk-card-media']) .uk-navbar-nav > li.uk-active > a, .uk-card-secondary.uk-card-body .uk-navbar-nav > li.uk-active > a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-navbar-nav > li.uk-active > a, .uk-overlay-primary .uk-navbar-nav > li.uk-active > a, .uk-offcanvas-bar .uk-navbar-nav > li.uk-active > a {
	color: #fff;
}

.uk-light .uk-navbar-item, .uk-section-primary:not(.uk-preserve-color) .uk-navbar-item, .uk-section-secondary:not(.uk-preserve-color) .uk-navbar-item, .uk-tile-primary:not(.uk-preserve-color) .uk-navbar-item, .uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-item, .uk-card-primary.uk-card-body .uk-navbar-item, .uk-card-primary > :not([class*='uk-card-media']) .uk-navbar-item, .uk-card-secondary.uk-card-body .uk-navbar-item, .uk-card-secondary > :not([class*='uk-card-media']) .uk-navbar-item, .uk-overlay-primary .uk-navbar-item, .uk-offcanvas-bar .uk-navbar-item {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-navbar-toggle, .uk-section-primary:not(.uk-preserve-color) .uk-navbar-toggle, .uk-section-secondary:not(.uk-preserve-color) .uk-navbar-toggle, .uk-tile-primary:not(.uk-preserve-color) .uk-navbar-toggle, .uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-toggle, .uk-card-primary.uk-card-body .uk-navbar-toggle, .uk-card-primary > :not([class*='uk-card-media']) .uk-navbar-toggle, .uk-card-secondary.uk-card-body .uk-navbar-toggle, .uk-card-secondary > :not([class*='uk-card-media']) .uk-navbar-toggle, .uk-overlay-primary .uk-navbar-toggle, .uk-offcanvas-bar .uk-navbar-toggle {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-navbar-toggle:hover, .uk-section-primary:not(.uk-preserve-color) .uk-navbar-toggle:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-navbar-toggle:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-navbar-toggle:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-toggle:hover, .uk-card-primary.uk-card-body .uk-navbar-toggle:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-navbar-toggle:hover, .uk-card-secondary.uk-card-body .uk-navbar-toggle:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-navbar-toggle:hover, .uk-overlay-primary .uk-navbar-toggle:hover, .uk-offcanvas-bar .uk-navbar-toggle:hover,
.uk-light .uk-navbar-toggle:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-navbar-toggle:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-toggle:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-navbar-toggle:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-toggle:focus,
.uk-card-primary.uk-card-body .uk-navbar-toggle:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-navbar-toggle:focus,
.uk-card-secondary.uk-card-body .uk-navbar-toggle:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-navbar-toggle:focus,
.uk-overlay-primary .uk-navbar-toggle:focus,
.uk-offcanvas-bar .uk-navbar-toggle:focus,
.uk-light .uk-navbar-toggle.uk-open,
.uk-section-primary:not(.uk-preserve-color) .uk-navbar-toggle.uk-open,
.uk-section-secondary:not(.uk-preserve-color) .uk-navbar-toggle.uk-open,
.uk-tile-primary:not(.uk-preserve-color) .uk-navbar-toggle.uk-open,
.uk-tile-secondary:not(.uk-preserve-color) .uk-navbar-toggle.uk-open,
.uk-card-primary.uk-card-body .uk-navbar-toggle.uk-open,
.uk-card-primary > :not([class*='uk-card-media']) .uk-navbar-toggle.uk-open,
.uk-card-secondary.uk-card-body .uk-navbar-toggle.uk-open,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-navbar-toggle.uk-open,
.uk-overlay-primary .uk-navbar-toggle.uk-open,
.uk-offcanvas-bar .uk-navbar-toggle.uk-open {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-subnav > * > :first-child, .uk-section-primary:not(.uk-preserve-color) .uk-subnav > * > :first-child, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav > * > :first-child, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav > * > :first-child, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav > * > :first-child, .uk-card-primary.uk-card-body .uk-subnav > * > :first-child, .uk-card-primary > :not([class*='uk-card-media']) .uk-subnav > * > :first-child, .uk-card-secondary.uk-card-body .uk-subnav > * > :first-child, .uk-card-secondary > :not([class*='uk-card-media']) .uk-subnav > * > :first-child, .uk-overlay-primary .uk-subnav > * > :first-child, .uk-offcanvas-bar .uk-subnav > * > :first-child {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-subnav > * > a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-subnav > * > a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav > * > a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav > * > a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav > * > a:hover, .uk-card-primary.uk-card-body .uk-subnav > * > a:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-subnav > * > a:hover, .uk-card-secondary.uk-card-body .uk-subnav > * > a:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-subnav > * > a:hover, .uk-overlay-primary .uk-subnav > * > a:hover, .uk-offcanvas-bar .uk-subnav > * > a:hover,
.uk-light .uk-subnav > * > a:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-subnav > * > a:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-subnav > * > a:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-subnav > * > a:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-subnav > * > a:focus,
.uk-card-primary.uk-card-body .uk-subnav > * > a:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-subnav > * > a:focus,
.uk-card-secondary.uk-card-body .uk-subnav > * > a:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-subnav > * > a:focus,
.uk-overlay-primary .uk-subnav > * > a:focus,
.uk-offcanvas-bar .uk-subnav > * > a:focus {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-subnav > .uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-subnav > .uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav > .uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav > .uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav > .uk-active > a, .uk-card-primary.uk-card-body .uk-subnav > .uk-active > a, .uk-card-primary > :not([class*='uk-card-media']) .uk-subnav > .uk-active > a, .uk-card-secondary.uk-card-body .uk-subnav > .uk-active > a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-subnav > .uk-active > a, .uk-overlay-primary .uk-subnav > .uk-active > a, .uk-offcanvas-bar .uk-subnav > .uk-active > a {
	color: #fff;
}

.uk-light .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-section-primary:not(.uk-preserve-color) .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-card-primary.uk-card-body .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-card-primary > :not([class*='uk-card-media']) .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-card-secondary.uk-card-body .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-card-secondary > :not([class*='uk-card-media']) .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-overlay-primary .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before, .uk-offcanvas-bar .uk-subnav-divider > :nth-child(n+2):not(.uk-first-column)::before {
	border-left-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-subnav-pill > * > :first-child, .uk-section-primary:not(.uk-preserve-color) .uk-subnav-pill > * > :first-child, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav-pill > * > :first-child, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav-pill > * > :first-child, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav-pill > * > :first-child, .uk-card-primary.uk-card-body .uk-subnav-pill > * > :first-child, .uk-card-primary > :not([class*='uk-card-media']) .uk-subnav-pill > * > :first-child, .uk-card-secondary.uk-card-body .uk-subnav-pill > * > :first-child, .uk-card-secondary > :not([class*='uk-card-media']) .uk-subnav-pill > * > :first-child, .uk-overlay-primary .uk-subnav-pill > * > :first-child, .uk-offcanvas-bar .uk-subnav-pill > * > :first-child {
	background-color: transparent;
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-subnav-pill > * > a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-subnav-pill > * > a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav-pill > * > a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav-pill > * > a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav-pill > * > a:hover, .uk-card-primary.uk-card-body .uk-subnav-pill > * > a:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-subnav-pill > * > a:hover, .uk-card-secondary.uk-card-body .uk-subnav-pill > * > a:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-subnav-pill > * > a:hover, .uk-overlay-primary .uk-subnav-pill > * > a:hover, .uk-offcanvas-bar .uk-subnav-pill > * > a:hover,
.uk-light .uk-subnav-pill > * > a:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-subnav-pill > * > a:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-subnav-pill > * > a:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-subnav-pill > * > a:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-subnav-pill > * > a:focus,
.uk-card-primary.uk-card-body .uk-subnav-pill > * > a:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-subnav-pill > * > a:focus,
.uk-card-secondary.uk-card-body .uk-subnav-pill > * > a:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-subnav-pill > * > a:focus,
.uk-overlay-primary .uk-subnav-pill > * > a:focus,
.uk-offcanvas-bar .uk-subnav-pill > * > a:focus {
	background-color: rgba(255, 255, 255, 0.1);
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-subnav-pill > * > a:active, .uk-section-primary:not(.uk-preserve-color) .uk-subnav-pill > * > a:active, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav-pill > * > a:active, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav-pill > * > a:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav-pill > * > a:active, .uk-card-primary.uk-card-body .uk-subnav-pill > * > a:active, .uk-card-primary > :not([class*='uk-card-media']) .uk-subnav-pill > * > a:active, .uk-card-secondary.uk-card-body .uk-subnav-pill > * > a:active, .uk-card-secondary > :not([class*='uk-card-media']) .uk-subnav-pill > * > a:active, .uk-overlay-primary .uk-subnav-pill > * > a:active, .uk-offcanvas-bar .uk-subnav-pill > * > a:active {
	background-color: rgba(255, 255, 255, 0.1);
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-subnav-pill > .uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-subnav-pill > .uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav-pill > .uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav-pill > .uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav-pill > .uk-active > a, .uk-card-primary.uk-card-body .uk-subnav-pill > .uk-active > a, .uk-card-primary > :not([class*='uk-card-media']) .uk-subnav-pill > .uk-active > a, .uk-card-secondary.uk-card-body .uk-subnav-pill > .uk-active > a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-subnav-pill > .uk-active > a, .uk-overlay-primary .uk-subnav-pill > .uk-active > a, .uk-offcanvas-bar .uk-subnav-pill > .uk-active > a {
	background-color: #fff;
	color: #666;
}

.uk-light .uk-subnav > .uk-disabled > a, .uk-section-primary:not(.uk-preserve-color) .uk-subnav > .uk-disabled > a, .uk-section-secondary:not(.uk-preserve-color) .uk-subnav > .uk-disabled > a, .uk-tile-primary:not(.uk-preserve-color) .uk-subnav > .uk-disabled > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-subnav > .uk-disabled > a, .uk-card-primary.uk-card-body .uk-subnav > .uk-disabled > a, .uk-card-primary > :not([class*='uk-card-media']) .uk-subnav > .uk-disabled > a, .uk-card-secondary.uk-card-body .uk-subnav > .uk-disabled > a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-subnav > .uk-disabled > a, .uk-overlay-primary .uk-subnav > .uk-disabled > a, .uk-offcanvas-bar .uk-subnav > .uk-disabled > a {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-breadcrumb > * > *, .uk-section-primary:not(.uk-preserve-color) .uk-breadcrumb > * > *, .uk-section-secondary:not(.uk-preserve-color) .uk-breadcrumb > * > *, .uk-tile-primary:not(.uk-preserve-color) .uk-breadcrumb > * > *, .uk-tile-secondary:not(.uk-preserve-color) .uk-breadcrumb > * > *, .uk-card-primary.uk-card-body .uk-breadcrumb > * > *, .uk-card-primary > :not([class*='uk-card-media']) .uk-breadcrumb > * > *, .uk-card-secondary.uk-card-body .uk-breadcrumb > * > *, .uk-card-secondary > :not([class*='uk-card-media']) .uk-breadcrumb > * > *, .uk-overlay-primary .uk-breadcrumb > * > *, .uk-offcanvas-bar .uk-breadcrumb > * > * {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-breadcrumb > * > :hover, .uk-section-primary:not(.uk-preserve-color) .uk-breadcrumb > * > :hover, .uk-section-secondary:not(.uk-preserve-color) .uk-breadcrumb > * > :hover, .uk-tile-primary:not(.uk-preserve-color) .uk-breadcrumb > * > :hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-breadcrumb > * > :hover, .uk-card-primary.uk-card-body .uk-breadcrumb > * > :hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-breadcrumb > * > :hover, .uk-card-secondary.uk-card-body .uk-breadcrumb > * > :hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-breadcrumb > * > :hover, .uk-overlay-primary .uk-breadcrumb > * > :hover, .uk-offcanvas-bar .uk-breadcrumb > * > :hover,
.uk-light .uk-breadcrumb > * > :focus,
.uk-section-primary:not(.uk-preserve-color) .uk-breadcrumb > * > :focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-breadcrumb > * > :focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-breadcrumb > * > :focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-breadcrumb > * > :focus,
.uk-card-primary.uk-card-body .uk-breadcrumb > * > :focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-breadcrumb > * > :focus,
.uk-card-secondary.uk-card-body .uk-breadcrumb > * > :focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-breadcrumb > * > :focus,
.uk-overlay-primary .uk-breadcrumb > * > :focus,
.uk-offcanvas-bar .uk-breadcrumb > * > :focus {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-breadcrumb > :last-child > *, .uk-section-primary:not(.uk-preserve-color) .uk-breadcrumb > :last-child > *, .uk-section-secondary:not(.uk-preserve-color) .uk-breadcrumb > :last-child > *, .uk-tile-primary:not(.uk-preserve-color) .uk-breadcrumb > :last-child > *, .uk-tile-secondary:not(.uk-preserve-color) .uk-breadcrumb > :last-child > *, .uk-card-primary.uk-card-body .uk-breadcrumb > :last-child > *, .uk-card-primary > :not([class*='uk-card-media']) .uk-breadcrumb > :last-child > *, .uk-card-secondary.uk-card-body .uk-breadcrumb > :last-child > *, .uk-card-secondary > :not([class*='uk-card-media']) .uk-breadcrumb > :last-child > *, .uk-overlay-primary .uk-breadcrumb > :last-child > *, .uk-offcanvas-bar .uk-breadcrumb > :last-child > * {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-section-primary:not(.uk-preserve-color) .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-section-secondary:not(.uk-preserve-color) .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-tile-primary:not(.uk-preserve-color) .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-card-primary.uk-card-body .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-card-primary > :not([class*='uk-card-media']) .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-card-secondary.uk-card-body .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-card-secondary > :not([class*='uk-card-media']) .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-overlay-primary .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before, .uk-offcanvas-bar .uk-breadcrumb > :nth-child(n+2):not(.uk-first-column)::before {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-pagination > * > *, .uk-section-primary:not(.uk-preserve-color) .uk-pagination > * > *, .uk-section-secondary:not(.uk-preserve-color) .uk-pagination > * > *, .uk-tile-primary:not(.uk-preserve-color) .uk-pagination > * > *, .uk-tile-secondary:not(.uk-preserve-color) .uk-pagination > * > *, .uk-card-primary.uk-card-body .uk-pagination > * > *, .uk-card-primary > :not([class*='uk-card-media']) .uk-pagination > * > *, .uk-card-secondary.uk-card-body .uk-pagination > * > *, .uk-card-secondary > :not([class*='uk-card-media']) .uk-pagination > * > *, .uk-overlay-primary .uk-pagination > * > *, .uk-offcanvas-bar .uk-pagination > * > * {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-pagination > * > :hover, .uk-section-primary:not(.uk-preserve-color) .uk-pagination > * > :hover, .uk-section-secondary:not(.uk-preserve-color) .uk-pagination > * > :hover, .uk-tile-primary:not(.uk-preserve-color) .uk-pagination > * > :hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-pagination > * > :hover, .uk-card-primary.uk-card-body .uk-pagination > * > :hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-pagination > * > :hover, .uk-card-secondary.uk-card-body .uk-pagination > * > :hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-pagination > * > :hover, .uk-overlay-primary .uk-pagination > * > :hover, .uk-offcanvas-bar .uk-pagination > * > :hover,
.uk-light .uk-pagination > * > :focus,
.uk-section-primary:not(.uk-preserve-color) .uk-pagination > * > :focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-pagination > * > :focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-pagination > * > :focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-pagination > * > :focus,
.uk-card-primary.uk-card-body .uk-pagination > * > :focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-pagination > * > :focus,
.uk-card-secondary.uk-card-body .uk-pagination > * > :focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-pagination > * > :focus,
.uk-overlay-primary .uk-pagination > * > :focus,
.uk-offcanvas-bar .uk-pagination > * > :focus {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-pagination > .uk-active > *, .uk-section-primary:not(.uk-preserve-color) .uk-pagination > .uk-active > *, .uk-section-secondary:not(.uk-preserve-color) .uk-pagination > .uk-active > *, .uk-tile-primary:not(.uk-preserve-color) .uk-pagination > .uk-active > *, .uk-tile-secondary:not(.uk-preserve-color) .uk-pagination > .uk-active > *, .uk-card-primary.uk-card-body .uk-pagination > .uk-active > *, .uk-card-primary > :not([class*='uk-card-media']) .uk-pagination > .uk-active > *, .uk-card-secondary.uk-card-body .uk-pagination > .uk-active > *, .uk-card-secondary > :not([class*='uk-card-media']) .uk-pagination > .uk-active > *, .uk-overlay-primary .uk-pagination > .uk-active > *, .uk-offcanvas-bar .uk-pagination > .uk-active > * {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-pagination > .uk-disabled > *, .uk-section-primary:not(.uk-preserve-color) .uk-pagination > .uk-disabled > *, .uk-section-secondary:not(.uk-preserve-color) .uk-pagination > .uk-disabled > *, .uk-tile-primary:not(.uk-preserve-color) .uk-pagination > .uk-disabled > *, .uk-tile-secondary:not(.uk-preserve-color) .uk-pagination > .uk-disabled > *, .uk-card-primary.uk-card-body .uk-pagination > .uk-disabled > *, .uk-card-primary > :not([class*='uk-card-media']) .uk-pagination > .uk-disabled > *, .uk-card-secondary.uk-card-body .uk-pagination > .uk-disabled > *, .uk-card-secondary > :not([class*='uk-card-media']) .uk-pagination > .uk-disabled > *, .uk-overlay-primary .uk-pagination > .uk-disabled > *, .uk-offcanvas-bar .uk-pagination > .uk-disabled > * {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-tab::before, .uk-section-primary:not(.uk-preserve-color) .uk-tab::before, .uk-section-secondary:not(.uk-preserve-color) .uk-tab::before, .uk-tile-primary:not(.uk-preserve-color) .uk-tab::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-tab::before, .uk-card-primary.uk-card-body .uk-tab::before, .uk-card-primary > :not([class*='uk-card-media']) .uk-tab::before, .uk-card-secondary.uk-card-body .uk-tab::before, .uk-card-secondary > :not([class*='uk-card-media']) .uk-tab::before, .uk-overlay-primary .uk-tab::before, .uk-offcanvas-bar .uk-tab::before {
	border-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-tab > * > a, .uk-section-primary:not(.uk-preserve-color) .uk-tab > * > a, .uk-section-secondary:not(.uk-preserve-color) .uk-tab > * > a, .uk-tile-primary:not(.uk-preserve-color) .uk-tab > * > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-tab > * > a, .uk-card-primary.uk-card-body .uk-tab > * > a, .uk-card-primary > :not([class*='uk-card-media']) .uk-tab > * > a, .uk-card-secondary.uk-card-body .uk-tab > * > a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-tab > * > a, .uk-overlay-primary .uk-tab > * > a, .uk-offcanvas-bar .uk-tab > * > a {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-tab > * > a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-tab > * > a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-tab > * > a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-tab > * > a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-tab > * > a:hover, .uk-card-primary.uk-card-body .uk-tab > * > a:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-tab > * > a:hover, .uk-card-secondary.uk-card-body .uk-tab > * > a:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-tab > * > a:hover, .uk-overlay-primary .uk-tab > * > a:hover, .uk-offcanvas-bar .uk-tab > * > a:hover,
.uk-light .uk-tab > * > a:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-tab > * > a:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-tab > * > a:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-tab > * > a:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-tab > * > a:focus,
.uk-card-primary.uk-card-body .uk-tab > * > a:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-tab > * > a:focus,
.uk-card-secondary.uk-card-body .uk-tab > * > a:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-tab > * > a:focus,
.uk-overlay-primary .uk-tab > * > a:focus,
.uk-offcanvas-bar .uk-tab > * > a:focus {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-tab > .uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-tab > .uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-tab > .uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-tab > .uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-tab > .uk-active > a, .uk-card-primary.uk-card-body .uk-tab > .uk-active > a, .uk-card-primary > :not([class*='uk-card-media']) .uk-tab > .uk-active > a, .uk-card-secondary.uk-card-body .uk-tab > .uk-active > a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-tab > .uk-active > a, .uk-overlay-primary .uk-tab > .uk-active > a, .uk-offcanvas-bar .uk-tab > .uk-active > a {
	color: #fff;
	border-color: #fff;
}

.uk-light .uk-tab > .uk-disabled > a, .uk-section-primary:not(.uk-preserve-color) .uk-tab > .uk-disabled > a, .uk-section-secondary:not(.uk-preserve-color) .uk-tab > .uk-disabled > a, .uk-tile-primary:not(.uk-preserve-color) .uk-tab > .uk-disabled > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-tab > .uk-disabled > a, .uk-card-primary.uk-card-body .uk-tab > .uk-disabled > a, .uk-card-primary > :not([class*='uk-card-media']) .uk-tab > .uk-disabled > a, .uk-card-secondary.uk-card-body .uk-tab > .uk-disabled > a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-tab > .uk-disabled > a, .uk-overlay-primary .uk-tab > .uk-disabled > a, .uk-offcanvas-bar .uk-tab > .uk-disabled > a {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-slidenav, .uk-section-primary:not(.uk-preserve-color) .uk-slidenav, .uk-section-secondary:not(.uk-preserve-color) .uk-slidenav, .uk-tile-primary:not(.uk-preserve-color) .uk-slidenav, .uk-tile-secondary:not(.uk-preserve-color) .uk-slidenav, .uk-card-primary.uk-card-body .uk-slidenav, .uk-card-primary > :not([class*='uk-card-media']) .uk-slidenav, .uk-card-secondary.uk-card-body .uk-slidenav, .uk-card-secondary > :not([class*='uk-card-media']) .uk-slidenav, .uk-overlay-primary .uk-slidenav, .uk-offcanvas-bar .uk-slidenav {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-slidenav:hover, .uk-section-primary:not(.uk-preserve-color) .uk-slidenav:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-slidenav:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-slidenav:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-slidenav:hover, .uk-card-primary.uk-card-body .uk-slidenav:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-slidenav:hover, .uk-card-secondary.uk-card-body .uk-slidenav:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-slidenav:hover, .uk-overlay-primary .uk-slidenav:hover, .uk-offcanvas-bar .uk-slidenav:hover,
.uk-light .uk-slidenav:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-slidenav:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-slidenav:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-slidenav:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-slidenav:focus,
.uk-card-primary.uk-card-body .uk-slidenav:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-slidenav:focus,
.uk-card-secondary.uk-card-body .uk-slidenav:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-slidenav:focus,
.uk-overlay-primary .uk-slidenav:focus,
.uk-offcanvas-bar .uk-slidenav:focus {
	color: rgba(255, 255, 255, 0.95);
}

.uk-light .uk-slidenav:active, .uk-section-primary:not(.uk-preserve-color) .uk-slidenav:active, .uk-section-secondary:not(.uk-preserve-color) .uk-slidenav:active, .uk-tile-primary:not(.uk-preserve-color) .uk-slidenav:active, .uk-tile-secondary:not(.uk-preserve-color) .uk-slidenav:active, .uk-card-primary.uk-card-body .uk-slidenav:active, .uk-card-primary > :not([class*='uk-card-media']) .uk-slidenav:active, .uk-card-secondary.uk-card-body .uk-slidenav:active, .uk-card-secondary > :not([class*='uk-card-media']) .uk-slidenav:active, .uk-overlay-primary .uk-slidenav:active, .uk-offcanvas-bar .uk-slidenav:active {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-dotnav > * > *, .uk-section-primary:not(.uk-preserve-color) .uk-dotnav > * > *, .uk-section-secondary:not(.uk-preserve-color) .uk-dotnav > * > *, .uk-tile-primary:not(.uk-preserve-color) .uk-dotnav > * > *, .uk-tile-secondary:not(.uk-preserve-color) .uk-dotnav > * > *, .uk-card-primary.uk-card-body .uk-dotnav > * > *, .uk-card-primary > :not([class*='uk-card-media']) .uk-dotnav > * > *, .uk-card-secondary.uk-card-body .uk-dotnav > * > *, .uk-card-secondary > :not([class*='uk-card-media']) .uk-dotnav > * > *, .uk-overlay-primary .uk-dotnav > * > *, .uk-offcanvas-bar .uk-dotnav > * > * {
	background-color: transparent;
	border-color: rgba(255, 255, 255, 0.9);
}

.uk-light .uk-dotnav > * > :hover, .uk-section-primary:not(.uk-preserve-color) .uk-dotnav > * > :hover, .uk-section-secondary:not(.uk-preserve-color) .uk-dotnav > * > :hover, .uk-tile-primary:not(.uk-preserve-color) .uk-dotnav > * > :hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-dotnav > * > :hover, .uk-card-primary.uk-card-body .uk-dotnav > * > :hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-dotnav > * > :hover, .uk-card-secondary.uk-card-body .uk-dotnav > * > :hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-dotnav > * > :hover, .uk-overlay-primary .uk-dotnav > * > :hover, .uk-offcanvas-bar .uk-dotnav > * > :hover,
.uk-light .uk-dotnav > * > :focus,
.uk-section-primary:not(.uk-preserve-color) .uk-dotnav > * > :focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-dotnav > * > :focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-dotnav > * > :focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-dotnav > * > :focus,
.uk-card-primary.uk-card-body .uk-dotnav > * > :focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-dotnav > * > :focus,
.uk-card-secondary.uk-card-body .uk-dotnav > * > :focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-dotnav > * > :focus,
.uk-overlay-primary .uk-dotnav > * > :focus,
.uk-offcanvas-bar .uk-dotnav > * > :focus {
	background-color: rgba(255, 255, 255, 0.9);
	border-color: transparent;
}

.uk-light .uk-dotnav > * > :active, .uk-section-primary:not(.uk-preserve-color) .uk-dotnav > * > :active, .uk-section-secondary:not(.uk-preserve-color) .uk-dotnav > * > :active, .uk-tile-primary:not(.uk-preserve-color) .uk-dotnav > * > :active, .uk-tile-secondary:not(.uk-preserve-color) .uk-dotnav > * > :active, .uk-card-primary.uk-card-body .uk-dotnav > * > :active, .uk-card-primary > :not([class*='uk-card-media']) .uk-dotnav > * > :active, .uk-card-secondary.uk-card-body .uk-dotnav > * > :active, .uk-card-secondary > :not([class*='uk-card-media']) .uk-dotnav > * > :active, .uk-overlay-primary .uk-dotnav > * > :active, .uk-offcanvas-bar .uk-dotnav > * > :active {
	background-color: rgba(255, 255, 255, 0.5);
	border-color: transparent;
}

.uk-light .uk-dotnav > .uk-active > *, .uk-section-primary:not(.uk-preserve-color) .uk-dotnav > .uk-active > *, .uk-section-secondary:not(.uk-preserve-color) .uk-dotnav > .uk-active > *, .uk-tile-primary:not(.uk-preserve-color) .uk-dotnav > .uk-active > *, .uk-tile-secondary:not(.uk-preserve-color) .uk-dotnav > .uk-active > *, .uk-card-primary.uk-card-body .uk-dotnav > .uk-active > *, .uk-card-primary > :not([class*='uk-card-media']) .uk-dotnav > .uk-active > *, .uk-card-secondary.uk-card-body .uk-dotnav > .uk-active > *, .uk-card-secondary > :not([class*='uk-card-media']) .uk-dotnav > .uk-active > *, .uk-overlay-primary .uk-dotnav > .uk-active > *, .uk-offcanvas-bar .uk-dotnav > .uk-active > * {
	background-color: rgba(255, 255, 255, 0.9);
	border-color: transparent;
}

.uk-light .uk-accordion-title::before, .uk-section-primary:not(.uk-preserve-color) .uk-accordion-title::before, .uk-section-secondary:not(.uk-preserve-color) .uk-accordion-title::before, .uk-tile-primary:not(.uk-preserve-color) .uk-accordion-title::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-accordion-title::before, .uk-card-primary.uk-card-body .uk-accordion-title::before, .uk-card-primary > :not([class*='uk-card-media']) .uk-accordion-title::before, .uk-card-secondary.uk-card-body .uk-accordion-title::before, .uk-card-secondary > :not([class*='uk-card-media']) .uk-accordion-title::before, .uk-overlay-primary .uk-accordion-title::before, .uk-offcanvas-bar .uk-accordion-title::before {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22rgba(255, 255, 255, 0.7)%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%20%20%20%20%3Crect%20fill%3D%22rgba(255, 255, 255, 0.7)%22%20width%3D%221%22%20height%3D%2213%22%20x%3D%226%22%20y%3D%220%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

.uk-light .uk-open > .uk-accordion-title::before, .uk-section-primary:not(.uk-preserve-color) .uk-open > .uk-accordion-title::before, .uk-section-secondary:not(.uk-preserve-color) .uk-open > .uk-accordion-title::before, .uk-tile-primary:not(.uk-preserve-color) .uk-open > .uk-accordion-title::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-open > .uk-accordion-title::before, .uk-card-primary.uk-card-body .uk-open > .uk-accordion-title::before, .uk-card-primary > :not([class*='uk-card-media']) .uk-open > .uk-accordion-title::before, .uk-card-secondary.uk-card-body .uk-open > .uk-accordion-title::before, .uk-card-secondary > :not([class*='uk-card-media']) .uk-open > .uk-accordion-title::before, .uk-overlay-primary .uk-open > .uk-accordion-title::before, .uk-offcanvas-bar .uk-open > .uk-accordion-title::before {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22rgba(255, 255, 255, 0.7)%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

.uk-light .uk-iconnav > * > a, .uk-section-primary:not(.uk-preserve-color) .uk-iconnav > * > a, .uk-section-secondary:not(.uk-preserve-color) .uk-iconnav > * > a, .uk-tile-primary:not(.uk-preserve-color) .uk-iconnav > * > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-iconnav > * > a, .uk-card-primary.uk-card-body .uk-iconnav > * > a, .uk-card-primary > :not([class*='uk-card-media']) .uk-iconnav > * > a, .uk-card-secondary.uk-card-body .uk-iconnav > * > a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-iconnav > * > a, .uk-overlay-primary .uk-iconnav > * > a, .uk-offcanvas-bar .uk-iconnav > * > a {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-iconnav > * > a:hover, .uk-section-primary:not(.uk-preserve-color) .uk-iconnav > * > a:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-iconnav > * > a:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-iconnav > * > a:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-iconnav > * > a:hover, .uk-card-primary.uk-card-body .uk-iconnav > * > a:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-iconnav > * > a:hover, .uk-card-secondary.uk-card-body .uk-iconnav > * > a:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-iconnav > * > a:hover, .uk-overlay-primary .uk-iconnav > * > a:hover, .uk-offcanvas-bar .uk-iconnav > * > a:hover,
.uk-light .uk-iconnav > * > a:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-iconnav > * > a:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-iconnav > * > a:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-iconnav > * > a:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-iconnav > * > a:focus,
.uk-card-primary.uk-card-body .uk-iconnav > * > a:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-iconnav > * > a:focus,
.uk-card-secondary.uk-card-body .uk-iconnav > * > a:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-iconnav > * > a:focus,
.uk-overlay-primary .uk-iconnav > * > a:focus,
.uk-offcanvas-bar .uk-iconnav > * > a:focus {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-iconnav > .uk-active > a, .uk-section-primary:not(.uk-preserve-color) .uk-iconnav > .uk-active > a, .uk-section-secondary:not(.uk-preserve-color) .uk-iconnav > .uk-active > a, .uk-tile-primary:not(.uk-preserve-color) .uk-iconnav > .uk-active > a, .uk-tile-secondary:not(.uk-preserve-color) .uk-iconnav > .uk-active > a, .uk-card-primary.uk-card-body .uk-iconnav > .uk-active > a, .uk-card-primary > :not([class*='uk-card-media']) .uk-iconnav > .uk-active > a, .uk-card-secondary.uk-card-body .uk-iconnav > .uk-active > a, .uk-card-secondary > :not([class*='uk-card-media']) .uk-iconnav > .uk-active > a, .uk-overlay-primary .uk-iconnav > .uk-active > a, .uk-offcanvas-bar .uk-iconnav > .uk-active > a {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-text-lead, .uk-section-primary:not(.uk-preserve-color) .uk-text-lead, .uk-section-secondary:not(.uk-preserve-color) .uk-text-lead, .uk-tile-primary:not(.uk-preserve-color) .uk-text-lead, .uk-tile-secondary:not(.uk-preserve-color) .uk-text-lead, .uk-card-primary.uk-card-body .uk-text-lead, .uk-card-primary > :not([class*='uk-card-media']) .uk-text-lead, .uk-card-secondary.uk-card-body .uk-text-lead, .uk-card-secondary > :not([class*='uk-card-media']) .uk-text-lead, .uk-overlay-primary .uk-text-lead, .uk-offcanvas-bar .uk-text-lead {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-text-meta, .uk-section-primary:not(.uk-preserve-color) .uk-text-meta, .uk-section-secondary:not(.uk-preserve-color) .uk-text-meta, .uk-tile-primary:not(.uk-preserve-color) .uk-text-meta, .uk-tile-secondary:not(.uk-preserve-color) .uk-text-meta, .uk-card-primary.uk-card-body .uk-text-meta, .uk-card-primary > :not([class*='uk-card-media']) .uk-text-meta, .uk-card-secondary.uk-card-body .uk-text-meta, .uk-card-secondary > :not([class*='uk-card-media']) .uk-text-meta, .uk-overlay-primary .uk-text-meta, .uk-offcanvas-bar .uk-text-meta {
	color: rgba(255, 255, 255, 0.5);
}

.uk-light .uk-text-muted, .uk-section-primary:not(.uk-preserve-color) .uk-text-muted, .uk-section-secondary:not(.uk-preserve-color) .uk-text-muted, .uk-tile-primary:not(.uk-preserve-color) .uk-text-muted, .uk-tile-secondary:not(.uk-preserve-color) .uk-text-muted, .uk-card-primary.uk-card-body .uk-text-muted, .uk-card-primary > :not([class*='uk-card-media']) .uk-text-muted, .uk-card-secondary.uk-card-body .uk-text-muted, .uk-card-secondary > :not([class*='uk-card-media']) .uk-text-muted, .uk-overlay-primary .uk-text-muted, .uk-offcanvas-bar .uk-text-muted {
	color: rgba(255, 255, 255, 0.5) !important;
}

.uk-light .uk-text-emphasis, .uk-section-primary:not(.uk-preserve-color) .uk-text-emphasis, .uk-section-secondary:not(.uk-preserve-color) .uk-text-emphasis, .uk-tile-primary:not(.uk-preserve-color) .uk-text-emphasis, .uk-tile-secondary:not(.uk-preserve-color) .uk-text-emphasis, .uk-card-primary.uk-card-body .uk-text-emphasis, .uk-card-primary > :not([class*='uk-card-media']) .uk-text-emphasis, .uk-card-secondary.uk-card-body .uk-text-emphasis, .uk-card-secondary > :not([class*='uk-card-media']) .uk-text-emphasis, .uk-overlay-primary .uk-text-emphasis, .uk-offcanvas-bar .uk-text-emphasis {
	color: #fff !important;
}

.uk-light .uk-text-primary, .uk-section-primary:not(.uk-preserve-color) .uk-text-primary, .uk-section-secondary:not(.uk-preserve-color) .uk-text-primary, .uk-tile-primary:not(.uk-preserve-color) .uk-text-primary, .uk-tile-secondary:not(.uk-preserve-color) .uk-text-primary, .uk-card-primary.uk-card-body .uk-text-primary, .uk-card-primary > :not([class*='uk-card-media']) .uk-text-primary, .uk-card-secondary.uk-card-body .uk-text-primary, .uk-card-secondary > :not([class*='uk-card-media']) .uk-text-primary, .uk-overlay-primary .uk-text-primary, .uk-offcanvas-bar .uk-text-primary {
	color: #fff !important;
}

.uk-light .uk-text-secondary, .uk-section-primary:not(.uk-preserve-color) .uk-text-secondary, .uk-section-secondary:not(.uk-preserve-color) .uk-text-secondary, .uk-tile-primary:not(.uk-preserve-color) .uk-text-secondary, .uk-tile-secondary:not(.uk-preserve-color) .uk-text-secondary, .uk-card-primary.uk-card-body .uk-text-secondary, .uk-card-primary > :not([class*='uk-card-media']) .uk-text-secondary, .uk-card-secondary.uk-card-body .uk-text-secondary, .uk-card-secondary > :not([class*='uk-card-media']) .uk-text-secondary, .uk-overlay-primary .uk-text-secondary, .uk-offcanvas-bar .uk-text-secondary {
	color: #fff !important;
}

.uk-light .uk-column-divider, .uk-section-primary:not(.uk-preserve-color) .uk-column-divider, .uk-section-secondary:not(.uk-preserve-color) .uk-column-divider, .uk-tile-primary:not(.uk-preserve-color) .uk-column-divider, .uk-tile-secondary:not(.uk-preserve-color) .uk-column-divider, .uk-card-primary.uk-card-body .uk-column-divider, .uk-card-primary > :not([class*='uk-card-media']) .uk-column-divider, .uk-card-secondary.uk-card-body .uk-column-divider, .uk-card-secondary > :not([class*='uk-card-media']) .uk-column-divider, .uk-overlay-primary .uk-column-divider, .uk-offcanvas-bar .uk-column-divider {
	column-rule-color: rgba(255, 255, 255, 0.2);
}

.uk-light .uk-logo, .uk-section-primary:not(.uk-preserve-color) .uk-logo, .uk-section-secondary:not(.uk-preserve-color) .uk-logo, .uk-tile-primary:not(.uk-preserve-color) .uk-logo, .uk-tile-secondary:not(.uk-preserve-color) .uk-logo, .uk-card-primary.uk-card-body .uk-logo, .uk-card-primary > :not([class*='uk-card-media']) .uk-logo, .uk-card-secondary.uk-card-body .uk-logo, .uk-card-secondary > :not([class*='uk-card-media']) .uk-logo, .uk-overlay-primary .uk-logo, .uk-offcanvas-bar .uk-logo {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-logo:hover, .uk-section-primary:not(.uk-preserve-color) .uk-logo:hover, .uk-section-secondary:not(.uk-preserve-color) .uk-logo:hover, .uk-tile-primary:not(.uk-preserve-color) .uk-logo:hover, .uk-tile-secondary:not(.uk-preserve-color) .uk-logo:hover, .uk-card-primary.uk-card-body .uk-logo:hover, .uk-card-primary > :not([class*='uk-card-media']) .uk-logo:hover, .uk-card-secondary.uk-card-body .uk-logo:hover, .uk-card-secondary > :not([class*='uk-card-media']) .uk-logo:hover, .uk-overlay-primary .uk-logo:hover, .uk-offcanvas-bar .uk-logo:hover,
.uk-light .uk-logo:focus,
.uk-section-primary:not(.uk-preserve-color) .uk-logo:focus,
.uk-section-secondary:not(.uk-preserve-color) .uk-logo:focus,
.uk-tile-primary:not(.uk-preserve-color) .uk-logo:focus,
.uk-tile-secondary:not(.uk-preserve-color) .uk-logo:focus,
.uk-card-primary.uk-card-body .uk-logo:focus,
.uk-card-primary > :not([class*='uk-card-media']) .uk-logo:focus,
.uk-card-secondary.uk-card-body .uk-logo:focus,
.uk-card-secondary > :not([class*='uk-card-media']) .uk-logo:focus,
.uk-overlay-primary .uk-logo:focus,
.uk-offcanvas-bar .uk-logo:focus {
	color: rgba(255, 255, 255, 0.7);
}

.uk-light .uk-logo > :not(.uk-logo-inverse):not(:only-of-type), .uk-section-primary:not(.uk-preserve-color) .uk-logo > :not(.uk-logo-inverse):not(:only-of-type), .uk-section-secondary:not(.uk-preserve-color) .uk-logo > :not(.uk-logo-inverse):not(:only-of-type), .uk-tile-primary:not(.uk-preserve-color) .uk-logo > :not(.uk-logo-inverse):not(:only-of-type), .uk-tile-secondary:not(.uk-preserve-color) .uk-logo > :not(.uk-logo-inverse):not(:only-of-type), .uk-card-primary.uk-card-body .uk-logo > :not(.uk-logo-inverse):not(:only-of-type), .uk-card-primary > :not([class*='uk-card-media']) .uk-logo > :not(.uk-logo-inverse):not(:only-of-type), .uk-card-secondary.uk-card-body .uk-logo > :not(.uk-logo-inverse):not(:only-of-type), .uk-card-secondary > :not([class*='uk-card-media']) .uk-logo > :not(.uk-logo-inverse):not(:only-of-type), .uk-overlay-primary .uk-logo > :not(.uk-logo-inverse):not(:only-of-type), .uk-offcanvas-bar .uk-logo > :not(.uk-logo-inverse):not(:only-of-type) {
	display: none;
}

.uk-light .uk-logo-inverse, .uk-section-primary:not(.uk-preserve-color) .uk-logo-inverse, .uk-section-secondary:not(.uk-preserve-color) .uk-logo-inverse, .uk-tile-primary:not(.uk-preserve-color) .uk-logo-inverse, .uk-tile-secondary:not(.uk-preserve-color) .uk-logo-inverse, .uk-card-primary.uk-card-body .uk-logo-inverse, .uk-card-primary > :not([class*='uk-card-media']) .uk-logo-inverse, .uk-card-secondary.uk-card-body .uk-logo-inverse, .uk-card-secondary > :not([class*='uk-card-media']) .uk-logo-inverse, .uk-overlay-primary .uk-logo-inverse, .uk-offcanvas-bar .uk-logo-inverse {
	display: inline;
}

/* ========================================================================
   Component: Print
 ========================================================================== */
@media print {
	*,
	*::before,
	*::after {
		background: transparent !important;
		color: black !important;
		box-shadow: none !important;
		text-shadow: none !important;
	}
	a,
	a:visited {
		text-decoration: underline;
	}
	pre,
	blockquote {
		border: 1px solid #999;
		page-break-inside: avoid;
	}
	thead {
		display: table-header-group;
	}
	tr,
	img {
		page-break-inside: avoid;
	}
	img {
		max-width: 100% !important;
	}
	@page {
		margin: 0.5cm;
	}
	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}
	h2,
	h3 {
		page-break-after: avoid;
	}
}

h1, .uk-h1,
h2, .uk-h2,
h3, .uk-h3,
h4, .uk-h4,
h5, .uk-h5,
h6, .uk-h6,
.uk-heading-small,
.uk-heading-medium,
.uk-heading-large,
.uk-heading-xlarge,
.uk-heading-2xlarge {
	font-family: 'Noto Sans Japanese';
	color: inherit;
	font-weight: bold;
}

h1, .uk-h1 {
	margin: -15px -15px 20px;
	padding: 10px;
	border-bottom: 4px solid #c4d0d8;
	font-size: 1.71428571rem;
	line-height: 26px;
}

h2, .uk-h2 {
	margin-top: 20px;
	font-size: 1.57142857rem;
}

h3, .uk-h3 {
	margin-top: 20px;
	margin-bottom: 15px;
	font-size: 1.42857143rem;
}

h4, .uk-h4 {
	margin-top: 20px;
	margin-bottom: 10px;
	font-size: 1.28571429rem;
}

h5, .uk-h5 {
	margin-top: 20px;
	margin-bottom: 5px;
	font-size: 1.14285714rem;
}

h6, .uk-h6 {
	margin-top: 20px;
	margin-bottom: 2px;
	font-size: 1rem;
}

hr, .uk-hr {
	border-color: #c4d0d8;
}

.uk-margin-xsmall {
	margin-bottom: 5px;
}

* + .uk-margin-xsmall {
	margin-top: 5px !important;
}

.uk-margin-xsmall-top {
	margin-top: 5px !important;
}

.uk-margin-xsmall-bottom {
	margin-bottom: 5px !important;
}

.uk-margin-xsmall-left {
	margin-left: 5px !important;
}

.uk-margin-xsmall-right {
	margin-right: 5px !important;
}

.uk-margin-v {
	margin-top: 20px;
	margin-bottom: 20px;
}

.uk-margin-v-small {
	margin-top: 10px;
	margin-bottom: 10px;
}

.uk-margin-v-xsmall {
	margin-top: 5px;
	margin-bottom: 5px;
}

.uk-margin-v-medium {
	margin-top: 40px;
	margin-bottom: 40px;
}

.uk-margin-v-large {
	margin-top: 40px;
	margin-bottom: 40px;
}

@media (min-width: 1200px) {
	.uk-margin-v-large {
		margin-top: 70px;
		margin-bottom: 70px;
	}
}

.uk-margin-v-xlarge {
	margin-top: 70px;
	margin-bottom: 70px;
}

@media (min-width: 1200px) {
	.uk-margin-v-xlarge {
		margin-top: 140px;
		margin-bottom: 140px;
	}
}

.uk-margin-h {
	margin-left: 20px;
	margin-right: 20px;
}

.uk-margin-h-small {
	margin-left: 10px;
	margin-right: 10px;
}

.uk-margin-h-xsmall {
	margin-left: 5px;
	margin-right: 5px;
}

.uk-margin-h-medium {
	margin-left: 40px;
	margin-right: 40px;
}

.uk-margin-h-large {
	margin-left: 40px;
	margin-right: 40px;
}

@media (min-width: 1200px) {
	.uk-margin-h-large {
		margin-left: 70px;
		margin-right: 70px;
	}
}

.uk-margin-h-xlarge {
	margin-left: 70px;
	margin-right: 70px;
}

@media (min-width: 1200px) {
	.uk-margin-h-xlarge {
		margin-left: 140px;
		margin-right: 140px;
	}
}

.uk-padding-top {
	padding-top: 30px !important;
}

.uk-padding-bottom {
	padding-bottom: 30px !important;
}

.uk-padding-left {
	padding-left: 30px !important;
}

.uk-padding-right {
	padding-right: 30px !important;
}

@media (min-width: 1200px) {
	.uk-padding-top {
		padding-top: 40px !important;
	}
	.uk-padding-bottom {
		padding-bottom: 40px !important;
	}
	.uk-padding-left {
		padding-left: 40px !important;
	}
	.uk-padding-right {
		padding-right: 40px !important;
	}
}

.uk-padding-xxsmall {
	padding: 5px !important;
}

.uk-padding-xxsmall-top {
	padding-top: 5px !important;
}

.uk-padding-xxsmall-bottom {
	padding-bottom: 5px !important;
}

.uk-padding-xxsmall-left {
	padding-left: 5px !important;
}

.uk-padding-xxsmall-right {
	padding-right: 5px !important;
}

.uk-padding-xsmall {
	padding: 10px !important;
}

.uk-padding-xsmall-top {
	padding-top: 10px !important;
}

.uk-padding-xsmall-bottom {
	padding-bottom: 10px !important;
}

.uk-padding-xsmall-left {
	padding-left: 10px !important;
}

.uk-padding-xsmall-right {
	padding-right: 10px !important;
}

.uk-padding-small-top {
	padding-top: 15px !important;
}

.uk-padding-small-bottom {
	padding-bottom: 15px !important;
}

.uk-padding-small-left {
	padding-left: 15px !important;
}

.uk-padding-small-right {
	padding-right: 15px !important;
}

.uk-padding-large-top {
	padding-top: 30px !important;
}

.uk-padding-large-bottom {
	padding-bottom: 30px !important;
}

.uk-padding-large-left {
	padding-left: 30px !important;
}

.uk-padding-large-right {
	padding-right: 30px !important;
}

@media (min-width: 1200px) {
	.uk-padding-large-top {
		padding-top: 70px !important;
	}
	.uk-padding-large-bottom {
		padding-bottom: 70px !important;
	}
	.uk-padding-large-left {
		padding-left: 70px !important;
	}
	.uk-padding-large-right {
		padding-right: 70px !important;
	}
}

.uk-table-hover > tr:hover,
.uk-table-hover tbody tr:hover {
	background-color: #f1dbd6;
}

.uk-table-hover > thead tr:hover,
.uk-table-hover tbody thead tr:hover {
	background-color: transparent;
}

.uk-fieldset.border legend,
.uk-fieldset.border .uk-legend {
	padding: 0 .5em;
	width: auto;
}

.uk-legend {
	font-size: 1.2rem;
}

.uk-form-small:not(textarea):not([multiple]):not([size]) {
	height: 24px;
}

.uk-form-small.uk-select:not(textarea):not([multiple]):not([size]) {
	padding-right: 20px;
}

.uk-form-label input,
label input {
	font-size: 1rem;
}

.uk-input,
.uk-select:not([multiple]):not([size]),
.uk-search-default .uk-search-input {
	height: 30px;
}

.uk-input,
.uk-select,
.uk-textarea {
	border-radius: 4px;
	border-color: #506d90;
}

.uk-input:disabled,
.uk-select:disabled,
.uk-textarea:disabled {
	border-color: #aad4ef;
}

.uk-input[type="number"] {
	padding-right: 1px;
}

.uk-input[type="number"]::-webkit-inner-spin-button {
	margin-left: 5px;
}

.uk-select:not([multiple]):not([size]).small {
	height: 22px;
	font-size: 0.875rem;
}

.uk-search-input {
	margin: 0;
	padding-left: 6px;
	padding-right: 6px;
	border: 1px solid #396e90;
	border-radius: 4px;
	background: transparent;
	width: 100%;
	height: 30px;
	overflow: visible;
	-webkit-appearance: none;
	vertical-align: middle;
	color: #666;
	font: inherit;
}

.uk-search-input::-webkit-search-cancel-button {
	-webkit-appearance: auto;
}

.uk-radio,
.uk-checkbox {
	margin-top: -3px;
	margin-left: 5px;
	margin-right: 5px;
	border-color: #396e90;
	background-color: #fff;
	width: 18px;
	height: 18px;
}

.uk-radio:checked,
.uk-checkbox:checked {
	background-color: #fff;
	border-color: #396e90;
}

.uk-radio:checked:focus,
.uk-checkbox:checked:focus {
	background-color: #fff;
}

.uk-radio:disabled,
.uk-checkbox:disabled {
	background-color: #e2e2e2;
	border-color: #7caece;
}

.uk-radio:disabled ~ span,
.uk-checkbox:disabled ~ span {
	opacity: .6;
}

.uk-checkbox {
	border-radius: 3px;
}

.uk-checkbox:checked {
	background-image: url("data:image/svg+xml; charset=UTF-8, %3csvg%20width%3d%2218%22%20height%3d%2218%22%20viewBox%3d%220%200%2018%2018%22%20xmlns%3d%22http%3a%2f%2fwww.w3.org%2f2000%2fsvg%22%3e%3cpolygon%20fill%3d%22%23eb6d45%22%20points%3d%2214.4%2c2.9%206.7%2c10.3%203.6%2c7.2%201.3%2c9.8%206.7%2c15.1%2016.7%2c5.1%22%2f%3e%3c%2fsvg%3e");
	border-color: #396e90;
}

.uk-checkbox:checked:disabled {
	background-image: url("data:image/svg+xml; charset=UTF-8, %3csvg%20width%3d%2218%22%20height%3d%2218%22%20viewBox%3d%220%200%2018%2018%22%20xmlns%3d%22http%3a%2f%2fwww.w3.org%2f2000%2fsvg%22%3e%3cpolygon%20fill%3d%22%23f09175%22%20points%3d%2214.4%2c2.9%206.7%2c10.3%203.6%2c7.2%201.3%2c9.8%206.7%2c15.1%2016.7%2c5.1%22%2f%3e%3c%2fsvg%3e");
}

.uk-checkbox:indeterminate {
	background-color: #fff;
	background-image: url("data:image/svg+xml; charset=UTF-8, %3csvg%20width%3d%2216%22%20height%3d%2216%22%20viewBox%3d%220%200%2016%2016%22%20xmlns%3d%22http%3a%2f%2fwww.w3.org%2f2000%2fsvg%22%3e%3crect%20fill%3d%22%23eb6d45%22%20x%3d%223%22%20y%3d%227%22%20width%3d%2210%22%20height%3d%223%22%20%2f%3e%3c%2fsvg%3e");
	border-color: #396e90;
}

.uk-radio:checked {
	background-image: url("data:image/svg+xml; charset=UTF-8, %3csvg%20width%3d%2218%22%20height%3d%2218%22%20viewBox%3d%220%200%2018%2018%22%20xmlns%3d%22http%3a%2f%2fwww.w3.org%2f2000%2fsvg%22%3e%3ccircle%20fill%3d%22%23eb6d45%22%20cx%3d%229%22%20cy%3d%229%22%20r%3d%226%22%20%2f%3e%3c%2fsvg%3e");
}

.uk-radio:disabled:checked {
	background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg%20width%3d%2218%22%20height%3d%2218%22%20viewBox%3d%220%200%2018%2018%22%20xmlns%3d%22http%3a%2f%2fwww.w3.org%2f2000%2fsvg%22%3e%3ccircle%20fill%3d%22%23999%22%20cx%3d%229%22%20cy%3d%229%22%20r%3d%226%22%20%2f%3e%3c%2fsvg%3e");
}

.uk-select:not([multiple]):not([size]) {
	background-image: url("data:image/svg+xml;charset=UTF-8, %3csvg%20width%3d%2224%22%20height%3d%2216%22%20viewBox%3d%220%200%2024%2016%22%20xmlns%3d%22http%3a%2f%2fwww.w3.org%2f2000%2fsvg%22%3e%3cpolygon%20fill%3d%22%23396e90%22%20points%3d%2212%2c11.3%206.3%2c5.3%2017.7%2c5.3%22%20%2f%3e%3c%2fsvg%3e");
}

.uk-tab::before {
	border-color: #e5e5e5;
}

.uk-tab > * > a {
	border-bottom-width: 2px;
}

.uk-tab > .uk-active > a {
	border-color: #eb6d45;
}

.uk-tab.k-tab-1 {
	margin-left: 0;
	margin-bottom: -1px;
}

.uk-tab.k-tab-1::before {
	content: none;
}

.uk-tab.k-tab-1 > * {
	padding: 0 20px;
	border: 1px solid #ddd;
	background-color: #f5f5f5;
	border-radius: 8px 8px 0 0;
}

.uk-tab.k-tab-1 > * a {
	font-size: 1.28571429rem;
	font-weight: 600;
	color: inherit;
}

.uk-tab.k-tab-1 > *.uk-active {
	border-bottom-color: transparent;
	background-color: #fff;
}

.uk-tab.k-tab-1 > *.uk-active a {
	border: none;
	color: inherit;
}

.uk-tab.k-tab-1 > * + * {
	margin-left: -1px;
}

.uk-tab.k-tab-1 + .uk-switcher {
	border: 1px solid #ddd;
}

.uk-tab.k-tab-2 {
	margin-left: 0;
	margin-bottom: -1px;
	padding: 0 1rem;
}

.uk-tab.k-tab-2::before {
	content: none;
}

.uk-tab.k-tab-2 > * {
	padding: 0;
	border: 1px solid #ddd;
	background-color: #f5f5f5;
	border-radius: 8px 8px 0 0;
}

.uk-tab.k-tab-2 > * a {
	padding: 3px 15px;
	font-size: 1rem;
	font-weight: 600;
	color: inherit;
}

.uk-tab.k-tab-2 > *.uk-active {
	border-bottom-color: transparent;
	background-color: #fff;
}

.uk-tab.k-tab-2 > *.uk-active a {
	border: none;
	color: inherit;
}

.uk-tab.k-tab-2 > * + * {
	margin-left: -1px;
}

.uk-tab.k-tab-2 + * {
	border-top: 1px solid #ddd;
}

.uk-button {
	padding: 5px 15px;
	border-radius: 5px;
	border-color: #396e90;
	min-width: 109px;
	min-height: 30px;
	line-height: 1;
	color: #396e90;
	font-size: 1rem;
	font-weight: 600;
	text-transform: none;
}

.uk-button + .uk-button {
	margin-left: .2em;
}

.uk-button:hover {
	background-color: #f4f7f9;
	border-color: #396e90;
	color: #396e90;
}

.uk-button.disabled, .uk-button[disabled] {
	background-color: #a8b2b9;
	border-color: #a8b2b9;
	color: #fff;
	pointer-events: none;
}

.uk-button small {
	display: block;
	font-size: 10px;
	font-weight: 300;
	line-height: 1rem;
}

.uk-button.r2 {
	min-height: 39px;
}

.uk-button-small {
	padding: 3px 10px;
	line-height: 16px;
	min-height: 22px;
	min-width: auto;
	font-size: 0.85714286rem;
	font-weight: normal;
}

.uk-button-small + .uk-button-small {
	margin-left: .2em;
}

.uk-button-xsmall {
	padding: 3px 6px;
	line-height: 11px;
	min-height: 18px;
	min-width: auto;
	font-size: 0.78571429rem;
	font-weight: normal;
}

.uk-button-xsmall + .uk-button-xsmall {
	margin-left: .2em;
}

.uk-button-large {
	padding: 7 40px;
	line-height: 34px;
}

.uk-button-group {
	margin-left: 1px;
}

.uk-button-group [class*="uk-button-"] {
	border-radius: 0;
}

.uk-button-group [class*="uk-button-"]:first-child {
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
}

.uk-button-group [class*="uk-button-"]:last-child {
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
}

.uk-button-group label.button-default {
	margin: 0 0 0 -1px;
}

.uk-button-group label.button-default [type="radio"] + span,
.uk-button-group label.button-default [type="checkbox"] + span {
	border-radius: 0;
}

.uk-button-group label.button-default:first-child > span {
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
}

.uk-button-group label.button-default:last-child > span {
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
}

.uk-button-group label.button-default + label.button-default [type="radio"]:checked + span,
.uk-button-group label.button-default + label.button-default [type="checkbox"]:checked + span {
	border-left-color: #fff;
}

.uk-button-group > * + * {
	margin-left: -1px;
}

.uk-button-group .uk-button:not(.uk-button-default) + .uk-button:not(.uk-button-default) {
	margin-left: 1px;
}

.uk-button-group.small .uk-button,
.uk-button-group.small .button-default > span {
	padding: 3px 10px;
	line-height: 16px;
	min-height: 22px;
	min-width: auto;
	font-size: 0.85714286rem;
	font-weight: normal;
}

.uk-button-group.xsmall .uk-button,
.uk-button-group.xsmall .button-default > span {
	padding: 3px 6px;
	line-height: 11px;
	min-height: 18px;
	min-width: auto;
	font-size: 0.78571429rem;
	font-weight: normal;
}

.uk-button-basic {
	background-color: #396e90;
	color: #fff;
}

.uk-button-basic:hover {
	background-color: #407ca2;
	border-color: transparent;
	color: #fff;
}

.uk-button-primary {
	border-color: transparent;
	color: #fff;
}

.uk-button-primary:hover {
	background-color: #3694f2;
	border-color: transparent;
	color: #fff;
}

.uk-button-secondary {
	border-color: transparent;
	color: #fff;
}

.uk-button-secondary:hover {
	background-color: #2f2f2f;
	border-color: transparent;
	color: #fff;
}

.uk-button-danger {
	border-color: transparent;
	color: #fff;
}

.uk-button-danger:hover {
	background-color: #f26781;
	border-color: transparent;
	color: #fff;
}

.uk-button-success {
	background-color: #32d296;
	color: #fff;
}

.uk-button-success:hover {
	background-color: #47d7a1;
	border-color: transparent;
	color: #fff;
}

.uk-button-warning {
	background-color: #faa05a;
	color: #fff;
}

.uk-button-warning:hover {
	background-color: #fbae73;
	border-color: transparent;
	color: #fff;
}

.uk-button-gray {
	background-color: #a8b2b9;
	color: #fff;
}

.uk-button-gray:hover {
	background-color: #b6bfc4;
	border-color: transparent;
	color: #fff;
}

.uk-button-orange {
	background-color: #eb6d45;
	color: #fff;
}

.uk-button-orange:hover {
	background-color: #ed7f5c;
	border-color: transparent;
	color: #fff;
}

a.uk-button {
	display: inline-flex;
	align-items: center;
}

.uk-modal {
	background: rgba(0, 0, 0, 0.25);
	width: 100% !important;
}

.uk-modal-page body {
	overflow-y: initial !important;
}

.uk-modal [class*='uk-modal-close-'] {
	border: none;
	top: 18px;
	cursor: pointer;
}

.uk-modal [class*='uk-modal-close-']::before {
	content: '\e00d';
	font-family: icon-ishare;
	font-size: 1.5rem;
	color: #396e90;
}

.uk-modal .uk-modal-dialog {
	box-shadow: 0 0 15px 7px rgba(0, 0, 0, 0.1);
}

.uk-modal .uk-modal-header {
	margin: 15px 15px 0;
	padding: 8px 0 19px;
	border-bottom: 4px solid #c8d0d8;
}

.uk-modal .uk-modal-header h2 {
	margin: 0;
	padding: 0;
	font-size: 1.14285714rem;
}

.uk-modal .uk-modal-body {
	padding: 20px;
}

.uk-modal .uk-modal-footer {
	padding: 20px 15px;
	border: none;
	box-shadow: 0 -12px 12px -7px rgba(0, 0, 0, 0.1);
	position: relative;
}

.uk-modal[class^="height-"] .uk-modal-dialog, .uk-modal[class*=" height-"] .uk-modal-dialog {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.uk-modal[class^="height-"] .uk-modal-dialog > .uk-modal-body, .uk-modal[class*=" height-"] .uk-modal-dialog > .uk-modal-body {
	min-height: auto !important;
	max-height: none !important;
	flex: 1 0 auto;
}

.uk-modal.w-auto .uk-modal-dialog {
	width: auto;
}

.uk-modal.w250 .uk-modal-dialog {
	width: 250px;
}

.uk-modal.w300 .uk-modal-dialog {
	width: 300px;
}

.uk-modal.w350 .uk-modal-dialog {
	width: 350px;
}

.uk-modal.w400 .uk-modal-dialog {
	width: 400px;
}

.uk-modal.w450 .uk-modal-dialog {
	width: 450px;
}

.uk-modal.w500 .uk-modal-dialog {
	width: 500px;
}

.uk-modal.w550 .uk-modal-dialog {
	width: 550px;
}

.uk-modal.w600 .uk-modal-dialog {
	width: 600px;
}

.uk-modal.w650 .uk-modal-dialog {
	width: 650px;
}

.uk-modal.w700 .uk-modal-dialog {
	width: 700px;
}

.uk-modal.w750 .uk-modal-dialog {
	width: 750px;
}

.uk-modal.w800 .uk-modal-dialog {
	width: 800px;
}

.uk-modal.w850 .uk-modal-dialog {
	width: 850px;
}

.uk-modal.w900 .uk-modal-dialog {
	width: 900px;
}

.uk-modal.w950 .uk-modal-dialog {
	width: 950px;
}

.uk-modal.w1000 .uk-modal-dialog {
	width: 1000px;
}

.uk-modal.w1050 .uk-modal-dialog {
	width: 1050px;
}

.uk-modal.w1100 .uk-modal-dialog {
	width: 1100px;
}

.uk-modal.w1150 .uk-modal-dialog {
	width: 1150px;
}

.uk-modal.w1200 .uk-modal-dialog {
	width: 1200px;
}

.uk-modal.w1250 .uk-modal-dialog {
	width: 1250px;
}

.uk-modal.w1300 .uk-modal-dialog {
	width: 1300px;
}

.uk-modal.w1350 .uk-modal-dialog {
	width: 1350px;
}

.uk-modal.w1400 .uk-modal-dialog {
	width: 1400px;
}

.uk-modal.w1450 .uk-modal-dialog {
	width: 1450px;
}

.uk-modal.w1500 .uk-modal-dialog {
	width: 1500px;
}

.uk-modal.w1550 .uk-modal-dialog {
	width: 1550px;
}

.uk-modal.w1600 .uk-modal-dialog {
	width: 1600px;
}

.uk-modal.p25 .uk-modal-dialog {
	width: 25%;
}

.uk-modal.p30 .uk-modal-dialog {
	width: 30%;
}

.uk-modal.p35 .uk-modal-dialog {
	width: 35%;
}

.uk-modal.p40 .uk-modal-dialog {
	width: 40%;
}

.uk-modal.p45 .uk-modal-dialog {
	width: 45%;
}

.uk-modal.p50 .uk-modal-dialog {
	width: 50%;
}

.uk-modal.p55 .uk-modal-dialog {
	width: 55%;
}

.uk-modal.p60 .uk-modal-dialog {
	width: 60%;
}

.uk-modal.p65 .uk-modal-dialog {
	width: 65%;
}

.uk-modal.p70 .uk-modal-dialog {
	width: 70%;
}

.uk-modal.p75 .uk-modal-dialog {
	width: 75%;
}

.uk-modal.p80 .uk-modal-dialog {
	width: 80%;
}

.uk-modal.p85 .uk-modal-dialog {
	width: 85%;
}

.uk-modal.p90 .uk-modal-dialog {
	width: 90%;
}

.uk-modal.p95 .uk-modal-dialog {
	width: 95%;
}

.uk-modal.p100 .uk-modal-dialog {
	width: 100%;
}

.uk-modal.height-100 .uk-modal-dialog {
	height: 100px;
}

.uk-modal.maxheight-100 .uk-modal-dialog {
	max-height: 100px;
}

.uk-modal.minheight-100 .uk-modal-dialog {
	min-height: 100px;
}

.uk-modal.height-125 .uk-modal-dialog {
	height: 125px;
}

.uk-modal.maxheight-125 .uk-modal-dialog {
	max-height: 125px;
}

.uk-modal.minheight-125 .uk-modal-dialog {
	min-height: 125px;
}

.uk-modal.height-150 .uk-modal-dialog {
	height: 150px;
}

.uk-modal.maxheight-150 .uk-modal-dialog {
	max-height: 150px;
}

.uk-modal.minheight-150 .uk-modal-dialog {
	min-height: 150px;
}

.uk-modal.height-175 .uk-modal-dialog {
	height: 175px;
}

.uk-modal.maxheight-175 .uk-modal-dialog {
	max-height: 175px;
}

.uk-modal.minheight-175 .uk-modal-dialog {
	min-height: 175px;
}

.uk-modal.height-200 .uk-modal-dialog {
	height: 200px;
}

.uk-modal.maxheight-200 .uk-modal-dialog {
	max-height: 200px;
}

.uk-modal.minheight-200 .uk-modal-dialog {
	min-height: 200px;
}

.uk-modal.height-225 .uk-modal-dialog {
	height: 225px;
}

.uk-modal.maxheight-225 .uk-modal-dialog {
	max-height: 225px;
}

.uk-modal.minheight-225 .uk-modal-dialog {
	min-height: 225px;
}

.uk-modal.height-250 .uk-modal-dialog {
	height: 250px;
}

.uk-modal.maxheight-250 .uk-modal-dialog {
	max-height: 250px;
}

.uk-modal.minheight-250 .uk-modal-dialog {
	min-height: 250px;
}

.uk-modal.height-275 .uk-modal-dialog {
	height: 275px;
}

.uk-modal.maxheight-275 .uk-modal-dialog {
	max-height: 275px;
}

.uk-modal.minheight-275 .uk-modal-dialog {
	min-height: 275px;
}

.uk-modal.height-300 .uk-modal-dialog {
	height: 300px;
}

.uk-modal.maxheight-300 .uk-modal-dialog {
	max-height: 300px;
}

.uk-modal.minheight-300 .uk-modal-dialog {
	min-height: 300px;
}

.uk-modal.height-325 .uk-modal-dialog {
	height: 325px;
}

.uk-modal.maxheight-325 .uk-modal-dialog {
	max-height: 325px;
}

.uk-modal.minheight-325 .uk-modal-dialog {
	min-height: 325px;
}

.uk-modal.height-350 .uk-modal-dialog {
	height: 350px;
}

.uk-modal.maxheight-350 .uk-modal-dialog {
	max-height: 350px;
}

.uk-modal.minheight-350 .uk-modal-dialog {
	min-height: 350px;
}

.uk-modal.height-375 .uk-modal-dialog {
	height: 375px;
}

.uk-modal.maxheight-375 .uk-modal-dialog {
	max-height: 375px;
}

.uk-modal.minheight-375 .uk-modal-dialog {
	min-height: 375px;
}

.uk-modal.height-400 .uk-modal-dialog {
	height: 400px;
}

.uk-modal.maxheight-400 .uk-modal-dialog {
	max-height: 400px;
}

.uk-modal.minheight-400 .uk-modal-dialog {
	min-height: 400px;
}

.uk-modal.height-425 .uk-modal-dialog {
	height: 425px;
}

.uk-modal.maxheight-425 .uk-modal-dialog {
	max-height: 425px;
}

.uk-modal.minheight-425 .uk-modal-dialog {
	min-height: 425px;
}

.uk-modal.height-450 .uk-modal-dialog {
	height: 450px;
}

.uk-modal.maxheight-450 .uk-modal-dialog {
	max-height: 450px;
}

.uk-modal.minheight-450 .uk-modal-dialog {
	min-height: 450px;
}

.uk-modal.height-475 .uk-modal-dialog {
	height: 475px;
}

.uk-modal.maxheight-475 .uk-modal-dialog {
	max-height: 475px;
}

.uk-modal.minheight-475 .uk-modal-dialog {
	min-height: 475px;
}

.uk-modal.height-500 .uk-modal-dialog {
	height: 500px;
}

.uk-modal.maxheight-500 .uk-modal-dialog {
	max-height: 500px;
}

.uk-modal.minheight-500 .uk-modal-dialog {
	min-height: 500px;
}

.uk-modal.height-525 .uk-modal-dialog {
	height: 525px;
}

.uk-modal.maxheight-525 .uk-modal-dialog {
	max-height: 525px;
}

.uk-modal.minheight-525 .uk-modal-dialog {
	min-height: 525px;
}

.uk-modal.height-550 .uk-modal-dialog {
	height: 550px;
}

.uk-modal.maxheight-550 .uk-modal-dialog {
	max-height: 550px;
}

.uk-modal.minheight-550 .uk-modal-dialog {
	min-height: 550px;
}

.uk-modal.height-575 .uk-modal-dialog {
	height: 575px;
}

.uk-modal.maxheight-575 .uk-modal-dialog {
	max-height: 575px;
}

.uk-modal.minheight-575 .uk-modal-dialog {
	min-height: 575px;
}

.uk-modal.height-600 .uk-modal-dialog {
	height: 600px;
}

.uk-modal.maxheight-600 .uk-modal-dialog {
	max-height: 600px;
}

.uk-modal.minheight-600 .uk-modal-dialog {
	min-height: 600px;
}

.uk-modal.height-625 .uk-modal-dialog {
	height: 625px;
}

.uk-modal.maxheight-625 .uk-modal-dialog {
	max-height: 625px;
}

.uk-modal.minheight-625 .uk-modal-dialog {
	min-height: 625px;
}

.uk-modal.height-650 .uk-modal-dialog {
	height: 650px;
}

.uk-modal.maxheight-650 .uk-modal-dialog {
	max-height: 650px;
}

.uk-modal.minheight-650 .uk-modal-dialog {
	min-height: 650px;
}

.uk-modal.height-675 .uk-modal-dialog {
	height: 675px;
}

.uk-modal.maxheight-675 .uk-modal-dialog {
	max-height: 675px;
}

.uk-modal.minheight-675 .uk-modal-dialog {
	min-height: 675px;
}

.uk-modal.height-700 .uk-modal-dialog {
	height: 700px;
}

.uk-modal.maxheight-700 .uk-modal-dialog {
	max-height: 700px;
}

.uk-modal.minheight-700 .uk-modal-dialog {
	min-height: 700px;
}

.uk-modal.height-725 .uk-modal-dialog {
	height: 725px;
}

.uk-modal.maxheight-725 .uk-modal-dialog {
	max-height: 725px;
}

.uk-modal.minheight-725 .uk-modal-dialog {
	min-height: 725px;
}

.uk-modal.height-750 .uk-modal-dialog {
	height: 750px;
}

.uk-modal.maxheight-750 .uk-modal-dialog {
	max-height: 750px;
}

.uk-modal.minheight-750 .uk-modal-dialog {
	min-height: 750px;
}

.uk-modal.height-775 .uk-modal-dialog {
	height: 775px;
}

.uk-modal.maxheight-775 .uk-modal-dialog {
	max-height: 775px;
}

.uk-modal.minheight-775 .uk-modal-dialog {
	min-height: 775px;
}

.uk-modal.height-800 .uk-modal-dialog {
	height: 800px;
}

.uk-modal.maxheight-800 .uk-modal-dialog {
	max-height: 800px;
}

.uk-modal.minheight-800 .uk-modal-dialog {
	min-height: 800px;
}

.uk-modal.height-825 .uk-modal-dialog {
	height: 825px;
}

.uk-modal.maxheight-825 .uk-modal-dialog {
	max-height: 825px;
}

.uk-modal.minheight-825 .uk-modal-dialog {
	min-height: 825px;
}

.uk-modal.height-850 .uk-modal-dialog {
	height: 850px;
}

.uk-modal.maxheight-850 .uk-modal-dialog {
	max-height: 850px;
}

.uk-modal.minheight-850 .uk-modal-dialog {
	min-height: 850px;
}

.uk-modal.height-875 .uk-modal-dialog {
	height: 875px;
}

.uk-modal.maxheight-875 .uk-modal-dialog {
	max-height: 875px;
}

.uk-modal.minheight-875 .uk-modal-dialog {
	min-height: 875px;
}

.uk-modal.height-900 .uk-modal-dialog {
	height: 900px;
}

.uk-modal.maxheight-900 .uk-modal-dialog {
	max-height: 900px;
}

.uk-modal.minheight-900 .uk-modal-dialog {
	min-height: 900px;
}

.uk-modal.height-925 .uk-modal-dialog {
	height: 925px;
}

.uk-modal.maxheight-925 .uk-modal-dialog {
	max-height: 925px;
}

.uk-modal.minheight-925 .uk-modal-dialog {
	min-height: 925px;
}

.uk-modal.height-950 .uk-modal-dialog {
	height: 950px;
}

.uk-modal.maxheight-950 .uk-modal-dialog {
	max-height: 950px;
}

.uk-modal.minheight-950 .uk-modal-dialog {
	min-height: 950px;
}

.uk-modal.height-975 .uk-modal-dialog {
	height: 975px;
}

.uk-modal.maxheight-975 .uk-modal-dialog {
	max-height: 975px;
}

.uk-modal.minheight-975 .uk-modal-dialog {
	min-height: 975px;
}

.uk-modal.height-1000 .uk-modal-dialog {
	height: 1000px;
}

.uk-modal.maxheight-1000 .uk-modal-dialog {
	max-height: 1000px;
}

.uk-modal.minheight-1000 .uk-modal-dialog {
	min-height: 1000px;
}

.uk-label {
	margin: 0 2px;
	padding: 1px 10px;
	text-transform: none;
}

.uk-label.in-input {
	padding-left: 7px;
	display: inline-flex;
	align-items: center;
}

.uk-label.in-input .uk-radio,
.uk-label.in-input .uk-checkbox {
	margin-left: 0;
	margin-top: -1px;
	width: 16px;
	height: 16px;
}

.uk-label-basic {
	background-color: #396e90;
}

.uk-label-gray {
	background-color: #a8b2b9;
}

.uk-label-darkgray {
	background-color: #5d656a;
}

.uk-label-pink {
	background-color: #fee;
	color: #455267;
}

.uk-label-orange {
	background-color: #eb6d45;
}

.uk-label-red {
	background-color: #f00;
}

.uk-label-darkblue {
	background-color: #0079b9;
}

.uk-table th {
	color: inherit;
	font-size: inherit;
	font-weight: bold;
	vertical-align: top;
	text-transform: none;
}

.uk-table thead th {
	vertical-align: bottom;
}

.uk-table-xsmall {
	margin-bottom: 0;
}

.uk-table-xsmall th,
.uk-table-xsmall td {
	padding: 5px 7px;
}

.uk-table-xsmall .uk-table-link > a {
	padding: 5px 7px;
}

.uk-table-xxsmall {
	margin-bottom: 0;
}

.uk-table-xxsmall th,
.uk-table-xxsmall td {
	padding: 1px 3px;
}

.uk-table-xxsmall .uk-table-link > a {
	padding: 1px 3px;
}

.uk-table-middle tbody th {
	vertical-align: middle !important;
}

.uk-list.uk-flex > :nth-child(n+2) {
	margin-top: auto;
}

.uk-navbar-nav > li > span {
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	min-height: 80px;
	padding: 0 15px;
	text-decoration: none;
	color: #999;
	text-transform: uppercase;
	transition: 0.1s ease-in-out;
	transition-property: color, background-color;
}

.uk-navbar-nav > li > a,
.uk-navbar-item,
.uk-navbar-toggle {
	font-size: 1rem;
}

.uk-navbar-nav > li > a .uk-dropdown, .uk-navbar-item .uk-dropdown, .uk-navbar-toggle .uk-dropdown {
	font-size: 1rem;
}

.uk-navbar-small {
	min-height: 40px;
}

.uk-navbar-small .uk-navbar-nav > li > a,
.uk-navbar-small .uk-navbar-nav > li > span,
.uk-navbar-small .uk-navbar-item,
.uk-navbar-small .uk-navbar-toggle {
	min-height: 40px;
}

.uk-navbar-vertical {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.uk-navbar-vertical .uk-navbar-top {
	justify-content: flex-start;
}

.uk-navbar-vertical .uk-navbar-bottom {
	justify-content: flex-end;
}

.uk-navbar-vertical .uk-navbar-nav {
	display: flex;
	flex-direction: column;
}

.uk-navbar-vertical .uk-navbar-nav > li > a,
.uk-navbar-vertical .uk-navbar-nav > li > span,
.uk-navbar-vertical .uk-navbar-item,
.uk-navbar-vertical .uk-navbar-toggle {
	min-height: 40px;
}

.uk-card-title {
	margin-top: 0;
}

.uk-card-small .uk-card-header {
	padding: 20px;
}

.uk-card-small .uk-card-body {
	padding: 0 20px;
}

.uk-sortable-empty {
	min-height: 1.5rem;
}

.uk-sortable-placeholder-border .uk-sortable-placeholder {
	outline: 1px dashed rgba(255, 0, 0, 0.5);
	opacity: 1;
}

.uk-sortable-placeholder-border .uk-sortable-placeholder > * {
	opacity: 0;
}

.uk-progress.xsmall {
	margin-bottom: 5px;
	height: 3px;
}

.uk-progress.small {
	margin-bottom: 10px;
	height: 6px;
}

.uk-progress.medium {
	margin-bottom: 15px;
	height: 10px;
}

.uk-accordion-title {
	cursor: pointer;
}

.uk-accordion-title::before {
	content: "";
	width: 1em;
	height: 1em;
	margin: 0 5px 0 0;
	display: block;
	background-image: url(data:image/svg+xml;charset=UTF-8,%3csvg%20width%3d%2213%22%20height%3d%2213%22%20viewBox%3d%220%200%2013%2013%22%20xmlns%3d%22http%3a%2f%2fwww.w3.org%2f2000%2fsvg%22%3e%3cpolygon%20style%3d%22fill%3a%23666666%3b%22%20points%3d%2210.1%2c6.5%203.6%2c13%203.6%2c0%20%22%2f%3e%3c%2fsvg%3e);
	background-repeat: no-repeat;
	background-position: 50% 50%;
}

.uk-open > .uk-accordion-title::before {
	background-image: url(data:image/svg+xml;charset=UTF-8,%3csvg%20width%3d%2213%22%20height%3d%2213%22%20viewBox%3d%220%200%2013%2013%22%20xmlns%3d%22http%3a%2f%2fwww.w3.org%2f2000%2fsvg%22%3e%3cpolygon%20style%3d%22fill%3a%23666666%3b%22%20points%3d%2210.6%2c11%201.4%2c10.9%2010.7%2c1.8%22%2f%3e%3c%2fsvg%3e);
}

.uk-alert-small {
	margin-bottom: 10px;
	padding: 7px 29px 7px 10px;
}

* + .uk-alert-small {
	margin-top: 10px;
}

.uk-text-disabled {
	color: #c5c5c5 !important;
}

.uk-text-basic {
	color: #455267;
}

.uk-text-medium {
	font-size: 1.2rem;
}

.uk-text-default {
	font-size: 1rem;
}

.uk-badge.small {
	margin: 0;
	padding: 0 4px;
	height: 18px;
	min-width: 20px;
	font-size: 11px;
}

.uk-badge.gray {
	background: #eee;
	border: 1px solid #ccc;
	color: #777;
}

.uk-badge::before {
	content: attr(data-qua);
}

.uk-notification {
	width: auto;
}

.uk-notification-center {
	margin-left: -175px;
	left: 50%;
	top: 200px;
}

.uk-notification-top-middle-right {
	left: auto;
	right: 40px;
	top: 100px;
}

.uk-notification-message {
	padding-right: 35px;
	background-color: #eee;
	box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
	font-size: 0.875rem;
	width: 350px;
}

.uk-notification-message > div p {
	margin: 0;
}

.uk-notification-message > div p + p {
	margin-top: 1em;
}

.uk-notification-message-info {
	padding-left: 45px;
	border: 1px solid #39f;
	background-color: #fcffeb;
	width: 380px;
}

.uk-notification-message-info::before {
	content: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSIxMCIgY3k9IjE0IiByPSIxIj48L2NpcmNsZT48Y2lyY2xlIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLXdpZHRoPSIxLjEiIGN4PSIxMCIgY3k9IjEwIiByPSI5Ij48L2NpcmNsZT48cGF0aCBkPSJNMTAuOTcsNy43MiBDMTAuODUsOS41NCAxMC41NiwxMS4yOSAxMC41NiwxMS4yOSBDMTAuNTEsMTEuODcgMTAuMjcsMTIgOS45OSwxMiBDOS42OSwxMiA5LjQ5LDExLjg3IDkuNDMsMTEuMjkgQzkuNDMsMTEuMjkgOS4xNiw5LjU0IDkuMDMsNy43MiBDOC45Niw2LjU0IDkuMDMsNiA5LjAzLDYgQzkuMDMsNS40NSA5LjQ2LDUuMDIgOS45OSw1IEMxMC41Myw1LjAxIDEwLjk3LDUuNDQgMTAuOTcsNiBDMTAuOTcsNiAxMS4wNCw2LjU0IDEwLjk3LDcuNzIgTDEwLjk3LDcuNzIgWiI+PC9wYXRoPjwvc3ZnPg==");
	position: absolute;
	left: 15px;
}

.uk-notification-close {
	display: block;
}

.uk-width-xsmall {
	width: 100px;
}

.uk-width-xxsmall {
	width: 75px;
}

.uk-dropdown {
	border: 1px solid #e3e8ec;
}
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliL3Vpa2l0LmNzcyIsInNvdXJjZXMiOlsibGliL3Vpa2l0LnNjc3MiLCJsaWIvdWlraXQvX2N1c3RvbV92YXJpYWJsZXMtdGhlbWUuc2NzcyIsImxpYi91aWtpdC9fbWl4aW5zLXRoZW1lLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9faW1wb3J0LnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fdmFyaWFibGVzLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fbWl4aW4uc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19iYXNlLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fbGluay5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX2hlYWRpbmcuc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19kaXZpZGVyLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fbGlzdC5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX2Rlc2NyaXB0aW9uLWxpc3Quc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL190YWJsZS5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX2ljb24uc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19mb3JtLXJhbmdlLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fZm9ybS5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX3Byb2dyZXNzLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fc2VjdGlvbi5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX2NvbnRhaW5lci5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX3RpbGUuc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19jYXJkLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fY2xvc2Uuc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19zcGlubmVyLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fdG90b3Auc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19tYXJrZXIuc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19hbGVydC5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX3BsYWNlaG9sZGVyLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fYmFkZ2Uuc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19sYWJlbC5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX292ZXJsYXkuc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19hcnRpY2xlLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fY29tbWVudC5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX3NlYXJjaC5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX2Ryb3Auc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19kcm9wZG93bi5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX21vZGFsLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fc2xpZGVzaG93LnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fc2xpZGVyLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fc3RpY2t5LnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fb2ZmY2FudmFzLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fc3dpdGNoZXIuc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19sZWFkZXIuc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19ub3RpZmljYXRpb24uc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL190b29sdGlwLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fc29ydGFibGUuc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19jb3VudGRvd24uc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19ncmlkLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fbmF2LnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fbmF2YmFyLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fc3VibmF2LnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fYnJlYWRjcnVtYi5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL190YWIuc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19zbGlkZW5hdi5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX2RvdG5hdi5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX3RodW1ibmF2LnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9faWNvbm5hdi5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX2xpZ2h0Ym94LnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fYW5pbWF0aW9uLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fd2lkdGguc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19oZWlnaHQuc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL190ZXh0LnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fY29sdW1uLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fY292ZXIuc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19iYWNrZ3JvdW5kLnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fYWxpZ24uc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19zdmcuc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL191dGlsaXR5LnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9fZmxleC5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX21hcmdpbi5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX3BhZGRpbmcuc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL19wb3NpdGlvbi5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX3RyYW5zaXRpb24uc2NzcyIsImxpYi91aWtpdC9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCJsaWIvdWlraXQvY29tcG9uZW50cy9faW52ZXJzZS5zY3NzIiwibGliL3Vpa2l0L2NvbXBvbmVudHMvX3ByaW50LnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX2ltcG9ydC5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL192YXJpYWJsZXMuc2NzcyIsImxpYi91aWtpdC90aGVtZS9fYmFzZS5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL19saW5rLnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX2hlYWRpbmcuc2NzcyIsImxpYi91aWtpdC90aGVtZS9fZGl2aWRlci5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL19saXN0LnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX2Rlc2NyaXB0aW9uLWxpc3Quc2NzcyIsImxpYi91aWtpdC90aGVtZS9fdGFibGUuc2NzcyIsImxpYi91aWtpdC90aGVtZS9faWNvbi5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL19mb3JtLXJhbmdlLnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX2Zvcm0uc2NzcyIsImxpYi91aWtpdC90aGVtZS9fYnV0dG9uLnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX3Byb2dyZXNzLnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX3NlY3Rpb24uc2NzcyIsImxpYi91aWtpdC90aGVtZS9fY29udGFpbmVyLnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX3RpbGUuc2NzcyIsImxpYi91aWtpdC90aGVtZS9fY2FyZC5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL19jbG9zZS5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL19zcGlubmVyLnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX21hcmtlci5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL190b3RvcC5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL19hbGVydC5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL19wbGFjZWhvbGRlci5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL19iYWRnZS5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL19sYWJlbC5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL19vdmVybGF5LnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX2FydGljbGUuc2NzcyIsImxpYi91aWtpdC90aGVtZS9fY29tbWVudC5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL19zZWFyY2guc2NzcyIsImxpYi91aWtpdC90aGVtZS9fYWNjb3JkaW9uLnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX2Ryb3Auc2NzcyIsImxpYi91aWtpdC90aGVtZS9fZHJvcGRvd24uc2NzcyIsImxpYi91aWtpdC90aGVtZS9fbW9kYWwuc2NzcyIsImxpYi91aWtpdC90aGVtZS9fc2xpZGVyLnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX3N0aWNreS5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL19vZmZjYW52YXMuc2NzcyIsImxpYi91aWtpdC90aGVtZS9fbGVhZGVyLnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX25vdGlmaWNhdGlvbi5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL190b29sdGlwLnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX3NvcnRhYmxlLnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX2NvdW50ZG93bi5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL19ncmlkLnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX25hdi5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL19uYXZiYXIuc2NzcyIsImxpYi91aWtpdC90aGVtZS9fc3VibmF2LnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX2JyZWFkY3J1bWIuc2NzcyIsImxpYi91aWtpdC90aGVtZS9fcGFnaW5hdGlvbi5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL190YWIuc2NzcyIsImxpYi91aWtpdC90aGVtZS9fc2xpZGVuYXYuc2NzcyIsImxpYi91aWtpdC90aGVtZS9fZG90bmF2LnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX3RodW1ibmF2LnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX2ljb25uYXYuc2NzcyIsImxpYi91aWtpdC90aGVtZS9fbGlnaHRib3guc2NzcyIsImxpYi91aWtpdC90aGVtZS9fYW5pbWF0aW9uLnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX3dpZHRoLnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX2hlaWdodC5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL190ZXh0LnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX2NvbHVtbi5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL19iYWNrZ3JvdW5kLnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX2FsaWduLnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX3V0aWxpdHkuc2NzcyIsImxpYi91aWtpdC90aGVtZS9fbWFyZ2luLnNjc3MiLCJsaWIvdWlraXQvdGhlbWUvX3BhZGRpbmcuc2NzcyIsImxpYi91aWtpdC90aGVtZS9fcG9zaXRpb24uc2NzcyIsImxpYi91aWtpdC90aGVtZS9fdHJhbnNpdGlvbi5zY3NzIiwibGliL3Vpa2l0L3RoZW1lL19pbnZlcnNlLnNjc3MiLCJsaWIvdWlraXQvX2N1c3RvbV90aGVtZS5zY3NzIiwiY29tbW9uL192YXIuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvL1xuLy8gVGhlbWVcbi8vXG5cbkBpbXBvcnQgXCJ1aWtpdC9jdXN0b21fdmFyaWFibGVzLXRoZW1lXCI7XG5AaW1wb3J0IFwidWlraXQvbWl4aW5zLXRoZW1lXCI7XG5cbkBpbXBvcnQgXCJ1aWtpdC9jb21wb25lbnRzL2ltcG9ydFwiO1xuXG5AaW1wb3J0IFwidWlraXQvdGhlbWUvaW1wb3J0XCI7XG5cbkBpbXBvcnQgXCJ1aWtpdC9jdXN0b21fdGhlbWVcIjtcblxuXG5cbiIsIi8qXG4gKiAgVmVyc2lvbiAzLjYuMTNcbiAqL1xuJGdsb2JhbC1tYXJnaW46IDIwcHggIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWl0ZW0tbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kZ2xvYmFsLW1lZGl1bS1mb250LXNpemU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogJGdsb2JhbC1tZWRpdW0tZm9udC1zaXplICFkZWZhdWx0O1xuJGFjY29yZGlvbi10aXRsZS1saW5lLWhlaWdodDogMS40ICFkZWZhdWx0O1xuJGdsb2JhbC1lbXBoYXNpcy1jb2xvcjogIzMzMyAhZGVmYXVsdDtcbiRhY2NvcmRpb24tdGl0bGUtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kZ2xvYmFsLWNvbG9yOiAjNjY2ICFkZWZhdWx0O1xuJGFjY29yZGlvbi10aXRsZS1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRhY2NvcmRpb24tY29udGVudC1tYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRnbG9iYWwtaW52ZXJzZS1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYWNjb3JkaW9uLXRpdGxlLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1nbG9iYWwtY29sb3I6IHJnYmEoJGdsb2JhbC1pbnZlcnNlLWNvbG9yLCAwLjcpICFkZWZhdWx0O1xuJGludmVyc2UtYWNjb3JkaW9uLXRpdGxlLWhvdmVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLXZlcnRpY2FsOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRnbG9iYWwtc21hbGwtZ3V0dGVyOiAxNXB4ICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmc6ICRnbG9iYWwtc21hbGwtZ3V0dGVyICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmctcmlnaHQ6ICRhbGVydC1wYWRkaW5nICsgMTRweCAhZGVmYXVsdDtcbiRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZDogI2Y4ZjhmOCAhZGVmYXVsdDtcbiRhbGVydC1iYWNrZ3JvdW5kOiAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kYWxlcnQtY2xvc2UtdG9wOiAkYWxlcnQtcGFkZGluZyArIDVweCAhZGVmYXVsdDtcbiRhbGVydC1jbG9zZS1yaWdodDogJGFsZXJ0LXBhZGRpbmcgIWRlZmF1bHQ7XG4kZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZDogIzFlODdmMCAhZGVmYXVsdDtcbiRhbGVydC1wcmltYXJ5LWJhY2tncm91bmQ6IGxpZ2h0ZW4obWl4KHdoaXRlLCAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCwgNDAlKSwgMjAlKSAhZGVmYXVsdDtcbiRhbGVydC1wcmltYXJ5LWNvbG9yOiAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRnbG9iYWwtc3VjY2Vzcy1iYWNrZ3JvdW5kOiAjMzJkMjk2ICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtYmFja2dyb3VuZDogbGlnaHRlbihtaXgod2hpdGUsICRnbG9iYWwtc3VjY2Vzcy1iYWNrZ3JvdW5kLCA0MCUpLCAyNSUpICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtY29sb3I6ICRnbG9iYWwtc3VjY2Vzcy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGdsb2JhbC13YXJuaW5nLWJhY2tncm91bmQ6ICNmYWEwNWEgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy1iYWNrZ3JvdW5kOiBsaWdodGVuKG1peCh3aGl0ZSwgJGdsb2JhbC13YXJuaW5nLWJhY2tncm91bmQsIDQ1JSksIDE1JSkgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy1jb2xvcjogJGdsb2JhbC13YXJuaW5nLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZ2xvYmFsLWRhbmdlci1iYWNrZ3JvdW5kOiAjZjA1MDZlICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1iYWNrZ3JvdW5kOiBsaWdodGVuKG1peCh3aGl0ZSwgJGdsb2JhbC1kYW5nZXItYmFja2dyb3VuZCwgNDAlKSwgMjAlKSAhZGVmYXVsdDtcbiRhbGVydC1kYW5nZXItY29sb3I6ICRnbG9iYWwtZGFuZ2VyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZ2xvYmFsLWd1dHRlcjogMzBweCAhZGVmYXVsdDtcbiRhbGlnbi1tYXJnaW4taG9yaXpvbnRhbDogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kYWxpZ24tbWFyZ2luLXZlcnRpY2FsOiAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRnbG9iYWwtbWVkaXVtLWd1dHRlcjogNDBweCAhZGVmYXVsdDtcbiRhbGlnbi1tYXJnaW4taG9yaXpvbnRhbC1sOiAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XG4kYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjVzICFkZWZhdWx0O1xuJGFuaW1hdGlvbi1mYWRlLWR1cmF0aW9uOiAwLjhzICFkZWZhdWx0O1xuJGFuaW1hdGlvbi1zdHJva2UtZHVyYXRpb246IDJzICFkZWZhdWx0O1xuJGFuaW1hdGlvbi1rZW5idXJucy1kdXJhdGlvbjogMTVzICFkZWZhdWx0O1xuJGFuaW1hdGlvbi1mYXN0LWR1cmF0aW9uOiAwLjFzICFkZWZhdWx0O1xuJGFuaW1hdGlvbi1zbGlkZS1zbWFsbC10cmFuc2xhdGU6IDEwcHggIWRlZmF1bHQ7XG4kYW5pbWF0aW9uLXNsaWRlLW1lZGl1bS10cmFuc2xhdGU6IDUwcHggIWRlZmF1bHQ7XG4kZ2xvYmFsLWxhcmdlLW1hcmdpbjogNzBweCAhZGVmYXVsdDtcbiRhcnRpY2xlLW1hcmdpbi10b3A6ICRnbG9iYWwtbGFyZ2UtbWFyZ2luICFkZWZhdWx0O1xuJGdsb2JhbC0yeGxhcmdlLWZvbnQtc2l6ZTogMi42MjVyZW0gIWRlZmF1bHQ7XG4kYXJ0aWNsZS10aXRsZS1mb250LXNpemUtbTogJGdsb2JhbC0yeGxhcmdlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRhcnRpY2xlLXRpdGxlLWZvbnQtc2l6ZTogJGFydGljbGUtdGl0bGUtZm9udC1zaXplLW0gKiAwLjg1ICFkZWZhdWx0O1xuJGFydGljbGUtdGl0bGUtbGluZS1oZWlnaHQ6IDEuMiAhZGVmYXVsdDtcbiRnbG9iYWwtc21hbGwtZm9udC1zaXplOiAwLjg3NXJlbSAhZGVmYXVsdDtcbiRhcnRpY2xlLW1ldGEtZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRhcnRpY2xlLW1ldGEtbGluZS1oZWlnaHQ6IDEuNCAhZGVmYXVsdDtcbiRnbG9iYWwtbXV0ZWQtY29sb3I6ICM5OTkgIWRlZmF1bHQ7XG4kYXJ0aWNsZS1tZXRhLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yOiByZ2JhKCRnbG9iYWwtaW52ZXJzZS1jb2xvciwgMC41KSAhZGVmYXVsdDtcbiRpbnZlcnNlLWFydGljbGUtbWV0YS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGdsb2JhbC1iYWNrZ3JvdW5kOiAjZmZmICFkZWZhdWx0O1xuJGJhY2tncm91bmQtZGVmYXVsdC1iYWNrZ3JvdW5kOiAkZ2xvYmFsLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kYmFja2dyb3VuZC1tdXRlZC1iYWNrZ3JvdW5kOiAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kYmFja2dyb3VuZC1wcmltYXJ5LWJhY2tncm91bmQ6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGdsb2JhbC1zZWNvbmRhcnktYmFja2dyb3VuZDogIzIyMiAhZGVmYXVsdDtcbiRiYWNrZ3JvdW5kLXNlY29uZGFyeS1iYWNrZ3JvdW5kOiAkZ2xvYmFsLXNlY29uZGFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJhZGdlLXNpemU6IDIycHggIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy12ZXJ0aWNhbDogMCAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLWhvcml6b250YWw6IDVweCAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiA1MDBweCAhZGVmYXVsdDtcbiRiYWRnZS1iYWNrZ3JvdW5kOiAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRiYWRnZS1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtc2l6ZTogJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmFkZ2UtaG92ZXItY29sb3I6ICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQ6ICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJhZGdlLWJhY2tncm91bmQ6ICRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1nbG9iYWwtaW52ZXJzZS1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJhZGdlLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJhZGdlLWhvdmVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRiYXNlLWJvZHktYmFja2dyb3VuZDogJGdsb2JhbC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGdsb2JhbC1mb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGJhc2UtYm9keS1mb250LWZhbWlseTogJGdsb2JhbC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRiYXNlLWJvZHktZm9udC13ZWlnaHQ6IG5vcm1hbCAhZGVmYXVsdDtcbiRnbG9iYWwtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuJGJhc2UtYm9keS1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICFkZWZhdWx0O1xuJGdsb2JhbC1saW5lLWhlaWdodDogMS41ICFkZWZhdWx0O1xuJGJhc2UtYm9keS1saW5lLWhlaWdodDogJGdsb2JhbC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRiYXNlLWJvZHktY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kZ2xvYmFsLWxpbmstY29sb3I6ICMxZTg3ZjAgIWRlZmF1bHQ7XG4kYmFzZS1saW5rLWNvbG9yOiAkZ2xvYmFsLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kYmFzZS1saW5rLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcbiRnbG9iYWwtbGluay1ob3Zlci1jb2xvcjogIzBmNmVjZCAhZGVmYXVsdDtcbiRiYXNlLWxpbmstaG92ZXItY29sb3I6ICRnbG9iYWwtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRiYXNlLWxpbmstaG92ZXItdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4kYmFzZS1zdHJvbmctZm9udC13ZWlnaHQ6IGJvbGRlciAhZGVmYXVsdDtcbiRiYXNlLWNvZGUtZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRiYXNlLWNvZGUtZm9udC1mYW1pbHk6IENvbnNvbGFzLCBtb25hY28sIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRiYXNlLWNvZGUtY29sb3I6ICRnbG9iYWwtZGFuZ2VyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kYmFzZS1lbS1jb2xvcjogJGdsb2JhbC1kYW5nZXItYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRiYXNlLWlucy1iYWNrZ3JvdW5kOiAjZmZkICFkZWZhdWx0O1xuJGJhc2UtaW5zLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGJhc2UtbWFyay1iYWNrZ3JvdW5kOiAjZmZkICFkZWZhdWx0O1xuJGJhc2UtbWFyay1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRiYXNlLXF1b3RlLWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcbiRiYXNlLXNtYWxsLWZvbnQtc2l6ZTogODAlICFkZWZhdWx0O1xuJGJhc2UtbWFyZ2luLXZlcnRpY2FsOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRiYXNlLWhlYWRpbmctZm9udC1mYW1pbHk6ICRnbG9iYWwtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYmFzZS1oZWFkaW5nLWZvbnQtd2VpZ2h0OiBub3JtYWwgIWRlZmF1bHQ7XG4kYmFzZS1oZWFkaW5nLWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGJhc2UtaGVhZGluZy10ZXh0LXRyYW5zZm9ybTogbm9uZSAhZGVmYXVsdDtcbiRnbG9iYWwtbWVkaXVtLW1hcmdpbjogNDBweCAhZGVmYXVsdDtcbiRiYXNlLWhlYWRpbmctbWFyZ2luLXRvcDogJGdsb2JhbC1tZWRpdW0tbWFyZ2luICFkZWZhdWx0O1xuJGJhc2UtaDEtZm9udC1zaXplLW06ICRnbG9iYWwtMnhsYXJnZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmFzZS1oMS1mb250LXNpemU6ICRiYXNlLWgxLWZvbnQtc2l6ZS1tICogMC44NSAhZGVmYXVsdDtcbiRiYXNlLWgxLWxpbmUtaGVpZ2h0OiAxLjIgIWRlZmF1bHQ7XG4kZ2xvYmFsLXhsYXJnZS1mb250LXNpemU6IDJyZW0gIWRlZmF1bHQ7XG4kYmFzZS1oMi1mb250LXNpemUtbTogJGdsb2JhbC14bGFyZ2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGJhc2UtaDItZm9udC1zaXplOiAkYmFzZS1oMi1mb250LXNpemUtbSAqIDAuODUgIWRlZmF1bHQ7XG4kYmFzZS1oMi1saW5lLWhlaWdodDogMS4zICFkZWZhdWx0O1xuJGdsb2JhbC1sYXJnZS1mb250LXNpemU6IDEuNXJlbSAhZGVmYXVsdDtcbiRiYXNlLWgzLWZvbnQtc2l6ZTogJGdsb2JhbC1sYXJnZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmFzZS1oMy1saW5lLWhlaWdodDogMS40ICFkZWZhdWx0O1xuJGJhc2UtaDQtZm9udC1zaXplOiAkZ2xvYmFsLW1lZGl1bS1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmFzZS1oNC1saW5lLWhlaWdodDogMS40ICFkZWZhdWx0O1xuJGJhc2UtaDUtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRiYXNlLWg1LWxpbmUtaGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG4kYmFzZS1oNi1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJhc2UtaDYtbGluZS1oZWlnaHQ6IDEuNCAhZGVmYXVsdDtcbiRiYXNlLWxpc3QtcGFkZGluZy1sZWZ0OiAzMHB4ICFkZWZhdWx0O1xuJGJhc2UtaHItbWFyZ2luLXZlcnRpY2FsOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRnbG9iYWwtYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG4kYmFzZS1oci1ib3JkZXItd2lkdGg6ICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGdsb2JhbC1ib3JkZXI6ICMzOTZlOTAgIWRlZmF1bHQ7Ly8jZTVlNWU1O1xuJGJhc2UtaHItYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRiYXNlLWJsb2NrcXVvdGUtZm9udC1zaXplOiAkZ2xvYmFsLW1lZGl1bS1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmFzZS1ibG9ja3F1b3RlLWxpbmUtaGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG4kYmFzZS1ibG9ja3F1b3RlLWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcbiRiYXNlLWJsb2NrcXVvdGUtbWFyZ2luLXZlcnRpY2FsOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRnbG9iYWwtc21hbGwtbWFyZ2luOiAxMHB4ICFkZWZhdWx0O1xuJGJhc2UtYmxvY2txdW90ZS1mb290ZXItbWFyZ2luLXRvcDogJGdsb2JhbC1zbWFsbC1tYXJnaW4gIWRlZmF1bHQ7XG4kYmFzZS1ibG9ja3F1b3RlLWZvb3Rlci1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJhc2UtYmxvY2txdW90ZS1mb290ZXItbGluZS1oZWlnaHQ6IDEuNSAhZGVmYXVsdDtcbiRiYXNlLXByZS1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJhc2UtcHJlLWxpbmUtaGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG4kYmFzZS1wcmUtZm9udC1mYW1pbHk6ICRiYXNlLWNvZGUtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYmFzZS1wcmUtY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kYmFzZS1zZWxlY3Rpb24tYmFja2dyb3VuZDogIzM5ZiAhZGVmYXVsdDtcbiRiYXNlLXNlbGVjdGlvbi1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYmFzZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYmFzZS1saW5rLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1iYXNlLWxpbmstaG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJhc2UtY29kZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYmFzZS1lbS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYmFzZS1oZWFkaW5nLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1nbG9iYWwtYm9yZGVyOiByZ2JhKCRnbG9iYWwtaW52ZXJzZS1jb2xvciwgMC4yKSAhZGVmYXVsdDtcbiRpbnZlcnNlLWJhc2UtaHItYm9yZGVyOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0taG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLWhvdmVyLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tYWN0aXZlLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogXCIvXCIgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLW1hcmdpbi1ob3Jpem9udGFsOiAyMHB4ICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1mb250LXNpemU6ICRicmVhZGNydW1iLWl0ZW0tZm9udC1zaXplICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJyZWFkY3J1bWItaXRlbS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYnJlYWRjcnVtYi1pdGVtLWhvdmVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1icmVhZGNydW1iLWl0ZW0tYWN0aXZlLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1icmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRnbG9iYWwtY29udHJvbC1oZWlnaHQ6IDQwcHggIWRlZmF1bHQ7XG4kYnV0dG9uLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kYnV0dG9uLWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWNvbnRyb2wtaGVpZ2h0IC0gKCRidXR0b24tYm9yZGVyLXdpZHRoICogMikgIWRlZmF1bHQ7XG4kZ2xvYmFsLWNvbnRyb2wtc21hbGwtaGVpZ2h0OiAzMHB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1zbWFsbC1saW5lLWhlaWdodDogJGdsb2JhbC1jb250cm9sLXNtYWxsLWhlaWdodCAtICgkYnV0dG9uLWJvcmRlci13aWR0aCAqIDIpICFkZWZhdWx0O1xuJGdsb2JhbC1jb250cm9sLWxhcmdlLWhlaWdodDogNTVweCAhZGVmYXVsdDtcbiRidXR0b24tbGFyZ2UtbGluZS1oZWlnaHQ6ICRnbG9iYWwtY29udHJvbC1sYXJnZS1oZWlnaHQgLSAoJGJ1dHRvbi1ib3JkZXItd2lkdGggKiAyKSAhZGVmYXVsdDtcbiRidXR0b24tZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidXR0b24tc21hbGwtZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidXR0b24tbGFyZ2UtZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidXR0b24tcGFkZGluZy1ob3Jpem9udGFsOiAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRidXR0b24tc21hbGwtcGFkZGluZy1ob3Jpem9udGFsOiAkZ2xvYmFsLXNtYWxsLWd1dHRlciAhZGVmYXVsdDtcbiRidXR0b24tbGFyZ2UtcGFkZGluZy1ob3Jpem9udGFsOiAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XG4kYnV0dG9uLWRlZmF1bHQtYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kYnV0dG9uLWRlZmF1bHQtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLWRlZmF1bHQtaG92ZXItYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kYnV0dG9uLWRlZmF1bHQtaG92ZXItY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLWRlZmF1bHQtYWN0aXZlLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWFjdGl2ZS1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tcHJpbWFyeS1iYWNrZ3JvdW5kOiAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRidXR0b24tcHJpbWFyeS1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1wcmltYXJ5LWhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYnV0dG9uLXByaW1hcnktYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGJ1dHRvbi1wcmltYXJ5LWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLXByaW1hcnktYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkYnV0dG9uLXByaW1hcnktYmFja2dyb3VuZCwgMTAlKSAhZGVmYXVsdDtcbiRidXR0b24tcHJpbWFyeS1hY3RpdmUtY29sb3I6ICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tc2Vjb25kYXJ5LWJhY2tncm91bmQ6ICRnbG9iYWwtc2Vjb25kYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kYnV0dG9uLXNlY29uZGFyeS1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1zZWNvbmRhcnktaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRidXR0b24tc2Vjb25kYXJ5LWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRidXR0b24tc2Vjb25kYXJ5LWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUtYmFja2dyb3VuZDogZGFya2VuKCRidXR0b24tc2Vjb25kYXJ5LWJhY2tncm91bmQsIDEwJSkgIWRlZmF1bHQ7XG4kYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUtY29sb3I6ICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tZGFuZ2VyLWJhY2tncm91bmQ6ICRnbG9iYWwtZGFuZ2VyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kYnV0dG9uLWRhbmdlci1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1kYW5nZXItaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRidXR0b24tZGFuZ2VyLWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRidXR0b24tZGFuZ2VyLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLWRhbmdlci1hY3RpdmUtYmFja2dyb3VuZDogZGFya2VuKCRidXR0b24tZGFuZ2VyLWJhY2tncm91bmQsIDEwJSkgIWRlZmF1bHQ7XG4kYnV0dG9uLWRhbmdlci1hY3RpdmUtY29sb3I6ICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kYnV0dG9uLWRpc2FibGVkLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi10ZXh0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ1dHRvbi10ZXh0LWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi10ZXh0LWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi10ZXh0LWRpc2FibGVkLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1saW5rLWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ1dHRvbi1saW5rLWNvbG9yOiAkZ2xvYmFsLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLWxpbmstaG92ZXItY29sb3I6ICRnbG9iYWwtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tbGluay1ob3Zlci10ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhZGVmYXVsdDtcbiRidXR0b24tbGluay1kaXNhYmxlZC1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLWRlZmF1bHQtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWhvdmVyLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLWRlZmF1bHQtaG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWFjdGl2ZS1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWFjdGl2ZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLXByaW1hcnktYmFja2dyb3VuZDogJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1wcmltYXJ5LWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1wcmltYXJ5LWhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkaW52ZXJzZS1idXR0b24tcHJpbWFyeS1iYWNrZ3JvdW5kLCA1JSkgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tcHJpbWFyeS1ob3Zlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tcHJpbWFyeS1hY3RpdmUtYmFja2dyb3VuZDogZGFya2VuKCRpbnZlcnNlLWJ1dHRvbi1wcmltYXJ5LWJhY2tncm91bmQsIDEwJSkgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tcHJpbWFyeS1hY3RpdmUtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1iYWNrZ3JvdW5kOiAkaW52ZXJzZS1nbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkaW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1zZWNvbmRhcnktaG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUtYmFja2dyb3VuZDogZGFya2VuKCRpbnZlcnNlLWJ1dHRvbi1zZWNvbmRhcnktYmFja2dyb3VuZCwgMTAlKSAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1zZWNvbmRhcnktYWN0aXZlLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi10ZXh0LWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tdGV4dC1ob3Zlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLXRleHQtZGlzYWJsZWQtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1saW5rLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tbGluay1ob3Zlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGNhcmQtYm9keS1wYWRkaW5nLWhvcml6b250YWw6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtYm9keS1wYWRkaW5nLXZlcnRpY2FsOiAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWJvZHktcGFkZGluZy1ob3Jpem9udGFsLWw6ICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWJvZHktcGFkZGluZy12ZXJ0aWNhbC1sOiAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsOiAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsOiByb3VuZCgkZ2xvYmFsLWd1dHRlciAvIDIpICFkZWZhdWx0O1xuJGNhcmQtaGVhZGVyLXBhZGRpbmctaG9yaXpvbnRhbC1sOiAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbC1sOiByb3VuZCgkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgLyAyKSAhZGVmYXVsdDtcbiRjYXJkLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWw6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtZm9vdGVyLXBhZGRpbmctdmVydGljYWw6ICgkZ2xvYmFsLWd1dHRlciAvIDIpICFkZWZhdWx0O1xuJGNhcmQtZm9vdGVyLXBhZGRpbmctaG9yaXpvbnRhbC1sOiAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1mb290ZXItcGFkZGluZy12ZXJ0aWNhbC1sOiByb3VuZCgkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgLyAyKSAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLWZvbnQtc2l6ZTogJGdsb2JhbC1sYXJnZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1saW5lLWhlaWdodDogMS40ICFkZWZhdWx0O1xuJGNhcmQtYmFkZ2UtdG9wOiAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWJhZGdlLXJpZ2h0OiAkY2FyZC1iYWRnZS10b3AgIWRlZmF1bHQ7XG4kY2FyZC1ob3Zlci1iYWNrZ3JvdW5kOiAkZ2xvYmFsLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kY2FyZC1kZWZhdWx0LWJhY2tncm91bmQ6ICRnbG9iYWwtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRjYXJkLWRlZmF1bHQtY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1kZWZhdWx0LXRpdGxlLWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGNhcmQtZGVmYXVsdC1ob3Zlci1iYWNrZ3JvdW5kOiAkY2FyZC1kZWZhdWx0LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kY2FyZC1wcmltYXJ5LWJhY2tncm91bmQ6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGNhcmQtcHJpbWFyeS1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGNhcmQtcHJpbWFyeS10aXRsZS1jb2xvcjogJGNhcmQtcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRjYXJkLXByaW1hcnktaG92ZXItYmFja2dyb3VuZDogJGNhcmQtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGNhcmQtcHJpbWFyeS1jb2xvci1tb2RlOiBsaWdodCAhZGVmYXVsdDtcbiRjYXJkLXNlY29uZGFyeS1iYWNrZ3JvdW5kOiAkZ2xvYmFsLXNlY29uZGFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGNhcmQtc2Vjb25kYXJ5LWNvbG9yOiAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1zZWNvbmRhcnktdGl0bGUtY29sb3I6ICRjYXJkLXNlY29uZGFyeS1jb2xvciAhZGVmYXVsdDtcbiRjYXJkLXNlY29uZGFyeS1ob3Zlci1iYWNrZ3JvdW5kOiAkY2FyZC1zZWNvbmRhcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRjYXJkLXNlY29uZGFyeS1jb2xvci1tb2RlOiBsaWdodCAhZGVmYXVsdDtcbiRjYXJkLXNtYWxsLWJvZHktcGFkZGluZy1ob3Jpem9udGFsOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRjYXJkLXNtYWxsLWJvZHktcGFkZGluZy12ZXJ0aWNhbDogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kY2FyZC1zbWFsbC1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRjYXJkLXNtYWxsLWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsOiByb3VuZCgkZ2xvYmFsLW1hcmdpbiAvIDEuNSkgIWRlZmF1bHQ7XG4kY2FyZC1zbWFsbC1mb290ZXItcGFkZGluZy1ob3Jpem9udGFsOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRjYXJkLXNtYWxsLWZvb3Rlci1wYWRkaW5nLXZlcnRpY2FsOiByb3VuZCgkZ2xvYmFsLW1hcmdpbiAvIDEuNSkgIWRlZmF1bHQ7XG4kZ2xvYmFsLWxhcmdlLWd1dHRlcjogNzBweCAhZGVmYXVsdDtcbiRjYXJkLWxhcmdlLWJvZHktcGFkZGluZy1ob3Jpem9udGFsLWw6ICRnbG9iYWwtbGFyZ2UtZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtbGFyZ2UtYm9keS1wYWRkaW5nLXZlcnRpY2FsLWw6ICRnbG9iYWwtbGFyZ2UtZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtbGFyZ2UtaGVhZGVyLXBhZGRpbmctaG9yaXpvbnRhbC1sOiAkZ2xvYmFsLWxhcmdlLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWxhcmdlLWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsLWw6IHJvdW5kKCRnbG9iYWwtbGFyZ2UtZ3V0dGVyIC8gMikgIWRlZmF1bHQ7XG4kY2FyZC1sYXJnZS1mb290ZXItcGFkZGluZy1ob3Jpem9udGFsLWw6ICRnbG9iYWwtbGFyZ2UtZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtbGFyZ2UtZm9vdGVyLXBhZGRpbmctdmVydGljYWwtbDogcm91bmQoJGdsb2JhbC1sYXJnZS1ndXR0ZXIgLyAyKSAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRjbG9zZS1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWNsb3NlLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1jbG9zZS1ob3Zlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGNvbHVtbi1ndXR0ZXI6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGNvbHVtbi1ndXR0ZXItbDogJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuJGNvbHVtbi1kaXZpZGVyLXJ1bGUtY29sb3I6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGNvbHVtbi1kaXZpZGVyLXJ1bGUtd2lkdGg6IDFweCAhZGVmYXVsdDtcbiRpbnZlcnNlLWNvbHVtbi1kaXZpZGVyLXJ1bGUtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kY29tbWVudC1oZWFkZXItbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kY29tbWVudC10aXRsZS1mb250LXNpemU6ICRnbG9iYWwtbWVkaXVtLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjb21tZW50LXRpdGxlLWxpbmUtaGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG4kY29tbWVudC1tZXRhLWZvbnQtc2l6ZTogJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY29tbWVudC1tZXRhLWxpbmUtaGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG4kY29tbWVudC1tZXRhLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGNvbW1lbnQtbGlzdC1tYXJnaW4tdG9wOiAkZ2xvYmFsLWxhcmdlLW1hcmdpbiAhZGVmYXVsdDtcbiRjb21tZW50LWxpc3QtcGFkZGluZy1sZWZ0OiAzMHB4ICFkZWZhdWx0O1xuJGNvbW1lbnQtbGlzdC1wYWRkaW5nLWxlZnQtbTogMTAwcHggIWRlZmF1bHQ7XG4kY29udGFpbmVyLW1heC13aWR0aDogMTIwMHB4ICFkZWZhdWx0O1xuJGNvbnRhaW5lci14c21hbGwtbWF4LXdpZHRoOiA3NTBweCAhZGVmYXVsdDtcbiRjb250YWluZXItc21hbGwtbWF4LXdpZHRoOiA5MDBweCAhZGVmYXVsdDtcbiRjb250YWluZXItbGFyZ2UtbWF4LXdpZHRoOiAxNDAwcHggIWRlZmF1bHQ7XG4kY29udGFpbmVyLXhsYXJnZS1tYXgtd2lkdGg6IDE2MDBweCAhZGVmYXVsdDtcbiRjb250YWluZXItcGFkZGluZy1ob3Jpem9udGFsOiAxNXB4ICFkZWZhdWx0O1xuJGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtczogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbC1tOiAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XG4kY291bnRkb3duLW51bWJlci1saW5lLWhlaWdodDogMC44ICFkZWZhdWx0O1xuJGNvdW50ZG93bi1udW1iZXItZm9udC1zaXplOiAycmVtICFkZWZhdWx0O1xuJGNvdW50ZG93bi1udW1iZXItZm9udC1zaXplLXM6IDRyZW0gIWRlZmF1bHQ7XG4kY291bnRkb3duLW51bWJlci1mb250LXNpemUtbTogNnJlbSAhZGVmYXVsdDtcbiRjb3VudGRvd24tc2VwYXJhdG9yLWxpbmUtaGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG4kY291bnRkb3duLXNlcGFyYXRvci1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG4kY291bnRkb3duLXNlcGFyYXRvci1mb250LXNpemUtczogMnJlbSAhZGVmYXVsdDtcbiRjb3VudGRvd24tc2VwYXJhdG9yLWZvbnQtc2l6ZS1tOiAzcmVtICFkZWZhdWx0O1xuJGRlc2NyaXB0aW9uLWxpc3QtdGVybS1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRkZXNjcmlwdGlvbi1saXN0LXRlcm0tbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kZGVzY3JpcHRpb24tbGlzdC1kaXZpZGVyLXRlcm0tbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kZGVzY3JpcHRpb24tbGlzdC1kaXZpZGVyLXRlcm0tYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkZXNjcmlwdGlvbi1saXN0LWRpdmlkZXItdGVybS1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGRpdmlkZXItbWFyZ2luLXZlcnRpY2FsOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRkaXZpZGVyLWljb24td2lkdGg6IDUwcHggIWRlZmF1bHQ7XG4kZGl2aWRlci1pY29uLWhlaWdodDogMjBweCAhZGVmYXVsdDtcbiRkaXZpZGVyLWljb24tY29sb3I6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGRpdmlkZXItaWNvbi1saW5lLXRvcDogNTAlICFkZWZhdWx0O1xuJGRpdmlkZXItaWNvbi1saW5lLXdpZHRoOiAxMDAlICFkZWZhdWx0O1xuJGRpdmlkZXItaWNvbi1saW5lLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZGl2aWRlci1pY29uLWxpbmUtYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRpbnRlcm5hbC1kaXZpZGVyLWljb24taW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIyMCUyMiUyMGhlaWdodCUzRCUyMjIwJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMjAlMjAyMCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDY2lyY2xlJTIwZmlsbCUzRCUyMm5vbmUlMjIlMjBzdHJva2UlM0QlMjIjMDAwJTIyJTIwc3Ryb2tlLXdpZHRoJTNEJTIyMiUyMiUyMGN4JTNEJTIyMTAlMjIlMjBjeSUzRCUyMjEwJTIyJTIwciUzRCUyMjclMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0UlMEFcIiAhZGVmYXVsdDtcbiRkaXZpZGVyLXNtYWxsLXdpZHRoOiAxMDBweCAhZGVmYXVsdDtcbiRkaXZpZGVyLXNtYWxsLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZGl2aWRlci1zbWFsbC1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGRpdmlkZXItdmVydGljYWwtaGVpZ2h0OiAxMDBweCAhZGVmYXVsdDtcbiRkaXZpZGVyLXZlcnRpY2FsLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZGl2aWRlci12ZXJ0aWNhbC1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGludmVyc2UtZGl2aWRlci1pY29uLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGludmVyc2UtZGl2aWRlci1pY29uLWxpbmUtYm9yZGVyOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGludmVyc2UtZGl2aWRlci1zbWFsbC1ib3JkZXI6ICRpbnZlcnNlLWdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kaW52ZXJzZS1kaXZpZGVyLXZlcnRpY2FsLWJvcmRlcjogJGludmVyc2UtZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRkb3RuYXYtbWFyZ2luLWhvcml6b250YWw6IDEycHggIWRlZmF1bHQ7XG4kZG90bmF2LW1hcmdpbi12ZXJ0aWNhbDogJGRvdG5hdi1tYXJnaW4taG9yaXpvbnRhbCAhZGVmYXVsdDtcbiRkb3RuYXYtaXRlbS13aWR0aDogMTBweCAhZGVmYXVsdDtcbiRkb3RuYXYtaXRlbS1oZWlnaHQ6ICRkb3RuYXYtaXRlbS13aWR0aCAhZGVmYXVsdDtcbiRkb3RuYXYtaXRlbS1ib3JkZXItcmFkaXVzOiA1MCUgIWRlZmF1bHQ7XG4kZG90bmF2LWl0ZW0tYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kZG90bmF2LWl0ZW0taG92ZXItYmFja2dyb3VuZDogcmdiYSgkZ2xvYmFsLWNvbG9yLCAwLjYpICFkZWZhdWx0O1xuJGRvdG5hdi1pdGVtLW9uY2xpY2stYmFja2dyb3VuZDogcmdiYSgkZ2xvYmFsLWNvbG9yLCAwLjIpICFkZWZhdWx0O1xuJGRvdG5hdi1pdGVtLWFjdGl2ZS1iYWNrZ3JvdW5kOiByZ2JhKCRnbG9iYWwtY29sb3IsIDAuNikgIWRlZmF1bHQ7XG4kaW52ZXJzZS1kb3RuYXYtaXRlbS1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRpbnZlcnNlLWRvdG5hdi1pdGVtLWhvdmVyLWJhY2tncm91bmQ6IHJnYmEoJGludmVyc2UtZ2xvYmFsLWNvbG9yLCAwLjkpICFkZWZhdWx0O1xuJGludmVyc2UtZG90bmF2LWl0ZW0tb25jbGljay1iYWNrZ3JvdW5kOiByZ2JhKCRpbnZlcnNlLWdsb2JhbC1jb2xvciwgMC41KSAhZGVmYXVsdDtcbiRpbnZlcnNlLWRvdG5hdi1pdGVtLWFjdGl2ZS1iYWNrZ3JvdW5kOiByZ2JhKCRpbnZlcnNlLWdsb2JhbC1jb2xvciwgMC45KSAhZGVmYXVsdDtcbiRnbG9iYWwtei1pbmRleDogMTAwMCAhZGVmYXVsdDtcbiRkcm9wLXotaW5kZXg6ICRnbG9iYWwtei1pbmRleCArIDIwICFkZWZhdWx0O1xuJGRyb3Atd2lkdGg6IDMwMHB4ICFkZWZhdWx0O1xuJGRyb3AtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRkcm9wZG93bi16LWluZGV4OiAkZ2xvYmFsLXotaW5kZXggKyAyMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1taW4td2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmc6IDI1cHggIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGdsb2JhbC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLW1hcmdpbjogJGdsb2JhbC1zbWFsbC1tYXJnaW4gIWRlZmF1bHQ7XG4kZHJvcGRvd24tbmF2LWl0ZW0tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbmF2LWl0ZW0taG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbmF2LWhlYWRlci1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1uYXYtZGl2aWRlci1ib3JkZXItd2lkdGg6ICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLW5hdi1kaXZpZGVyLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbmF2LXN1Ymxpc3QtaXRlbS1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1uYXYtc3VibGlzdC1pdGVtLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0OiAxNXB4ICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogNTAwcHggIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1iYWNrZ3JvdW5kOiAkZ2xvYmFsLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ6IDNweCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJhY2tncm91bmQ6IGRhcmtlbigkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWZvY3VzLWJhY2tncm91bmQ6IGRhcmtlbigkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQsIDE1JSkgIWRlZmF1bHQ7XG4kZm9ybS1oZWlnaHQ6ICRnbG9iYWwtY29udHJvbC1oZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1ib3JkZXItd2lkdGg6ICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tbGluZS1oZWlnaHQ6ICRmb3JtLWhlaWdodCAtICgyKiAkZm9ybS1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGZvcm0tcGFkZGluZy1ob3Jpem9udGFsOiAxMHB4ICFkZWZhdWx0O1xuJGZvcm0tcGFkZGluZy12ZXJ0aWNhbDogNHB4ICFkZWZhdWx0O1xuJGZvcm0tYmFja2dyb3VuZDogJGdsb2JhbC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGZvcm0tY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mb2N1cy1iYWNrZ3JvdW5kOiAkZ2xvYmFsLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZm9ybS1mb2N1cy1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWRpc2FibGVkLWJhY2tncm91bmQ6ICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRmb3JtLWRpc2FibGVkLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tcGxhY2Vob2xkZXItY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zbWFsbC1oZWlnaHQ6ICRnbG9iYWwtY29udHJvbC1zbWFsbC1oZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1zbWFsbC1wYWRkaW5nLWhvcml6b250YWw6IDhweCAhZGVmYXVsdDtcbiRmb3JtLXNtYWxsLWxpbmUtaGVpZ2h0OiAkZm9ybS1zbWFsbC1oZWlnaHQgLSAoMiogJGZvcm0tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRmb3JtLXNtYWxsLWZvbnQtc2l6ZTogJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1sYXJnZS1oZWlnaHQ6ICRnbG9iYWwtY29udHJvbC1sYXJnZS1oZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1sYXJnZS1wYWRkaW5nLWhvcml6b250YWw6IDEycHggIWRlZmF1bHQ7XG4kZm9ybS1sYXJnZS1saW5lLWhlaWdodDogJGZvcm0tbGFyZ2UtaGVpZ2h0IC0gKDIqICRmb3JtLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kZm9ybS1sYXJnZS1mb250LXNpemU6ICRnbG9iYWwtbWVkaXVtLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWRhbmdlci1jb2xvcjogJGdsb2JhbC1kYW5nZXItYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRmb3JtLXN1Y2Nlc3MtY29sb3I6ICRnbG9iYWwtc3VjY2Vzcy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGZvcm0td2lkdGgteHNtYWxsOiA1MHB4ICFkZWZhdWx0O1xuJGZvcm0td2lkdGgtc21hbGw6IDEzMHB4ICFkZWZhdWx0O1xuJGZvcm0td2lkdGgtbWVkaXVtOiAyMDBweCAhZGVmYXVsdDtcbiRmb3JtLXdpZHRoLWxhcmdlOiA1MDBweCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXJpZ2h0OiAyMHB4ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWljb24tY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3Qtb3B0aW9uLWNvbG9yOiAjNDQ0ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWljb24tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1kYXRhbGlzdC1wYWRkaW5nLXJpZ2h0OiAyMHB4ICFkZWZhdWx0O1xuJGZvcm0tZGF0YWxpc3QtaWNvbi1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLXNpemU6IDE2cHggIWRlZmF1bHQ7XG4kZm9ybS1yYWRpby1tYXJnaW4tdG9wOiAtNHB4ICFkZWZhdWx0O1xuJGZvcm0tcmFkaW8tYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kZm9ybS1yYWRpby1jaGVja2VkLWJhY2tncm91bmQ6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGZvcm0tcmFkaW8tY2hlY2tlZC1pY29uLWNvbG9yOiAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1yYWRpby1jaGVja2VkLWZvY3VzLWJhY2tncm91bmQ6IGRhcmtlbigkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCwgMTAlKSAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWRpc2FibGVkLWJhY2tncm91bmQ6ICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWRpc2FibGVkLWljb24tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1sZWdlbmQtZm9udC1zaXplOiAkZ2xvYmFsLWxhcmdlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWxlZ2VuZC1saW5lLWhlaWdodDogMS40ICFkZWZhdWx0O1xuJGZvcm0tc3RhY2tlZC1tYXJnaW4tYm90dG9tOiA1cHggIWRlZmF1bHQ7XG4kZm9ybS1ob3Jpem9udGFsLWxhYmVsLXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcbiRmb3JtLWhvcml6b250YWwtbGFiZWwtbWFyZ2luLXRvcDogN3B4ICFkZWZhdWx0O1xuJGZvcm0taG9yaXpvbnRhbC1jb250cm9scy1tYXJnaW4tbGVmdDogMjE1cHggIWRlZmF1bHQ7XG4kZm9ybS1ob3Jpem9udGFsLWNvbnRyb2xzLXRleHQtcGFkZGluZy10b3A6IDdweCAhZGVmYXVsdDtcbiRmb3JtLWljb24td2lkdGg6ICRmb3JtLWhlaWdodCAhZGVmYXVsdDtcbiRmb3JtLWljb24tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1pY29uLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludGVybmFsLWZvcm0tc2VsZWN0LWltYWdlOiBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIxNiUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDI0JTIwMTYlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3BvbHlnb24lMjBmaWxsJTNEJTIyIzAwMCUyMiUyMHBvaW50cyUzRCUyMjEyJTIwMSUyMDklMjA2JTIwMTUlMjA2JTIyJTIwJTJGJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwcG9pbnRzJTNEJTIyMTIlMjAxMyUyMDklMjA4JTIwMTUlMjA4JTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFJTBBXCIgIWRlZmF1bHQ7XG4kaW50ZXJuYWwtZm9ybS1kYXRhbGlzdC1pbWFnZTogXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMTYlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAyNCUyMDE2JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwZmlsbCUzRCUyMiMwMDAlMjIlMjBwb2ludHMlM0QlMjIxMiUyMDEyJTIwOCUyMDYlMjAxNiUyMDYlMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0UlMEFcIiAhZGVmYXVsdDtcbiRpbnRlcm5hbC1mb3JtLXJhZGlvLWltYWdlOiBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTYlMjIlMjBoZWlnaHQlM0QlMjIxNiUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDE2JTIwMTYlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ2NpcmNsZSUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwY3glM0QlMjI4JTIyJTIwY3klM0QlMjI4JTIyJTIwciUzRCUyMjIlMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0VcIiAhZGVmYXVsdDtcbiRpbnRlcm5hbC1mb3JtLWNoZWNrYm94LWltYWdlOiBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTQlMjIlMjBoZWlnaHQlM0QlMjIxMSUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDE0JTIwMTElMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3BvbHlnb24lMjBmaWxsJTNEJTIyIzAwMCUyMiUyMHBvaW50cyUzRCUyMjEyJTIwMSUyMDUlMjA3LjUlMjAyJTIwNSUyMDElMjA1LjUlMjA1JTIwMTAlMjAxMyUyMDEuNSUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRSUwQVwiICFkZWZhdWx0O1xuJGludGVybmFsLWZvcm0tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1pbWFnZTogXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjE2JTIyJTIwaGVpZ2h0JTNEJTIyMTYlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAxNiUyMDE2JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0NyZWN0JTIwZmlsbCUzRCUyMiMwMDAlMjIlMjB4JTNEJTIyMyUyMiUyMHklM0QlMjI4JTIyJTIwd2lkdGglM0QlMjIxMCUyMiUyMGhlaWdodCUzRCUyMjElMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0VcIiAhZGVmYXVsdDtcbiRpbnZlcnNlLWdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kOiByZ2JhKCRnbG9iYWwtaW52ZXJzZS1jb2xvciwgMC4xKSAhZGVmYXVsdDtcbiRpbnZlcnNlLWZvcm0tYmFja2dyb3VuZDogJGludmVyc2UtZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1mb3JtLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1mb3JtLWZvY3VzLWJhY2tncm91bmQ6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2UtZm9ybS1mb2N1cy1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtZm9ybS1wbGFjZWhvbGRlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtZm9ybS1zZWxlY3QtaWNvbi1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtZm9ybS1kYXRhbGlzdC1pY29uLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1mb3JtLXJhZGlvLWJhY2tncm91bmQ6IGRhcmtlbigkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGludmVyc2UtZm9ybS1yYWRpby1jaGVja2VkLWJhY2tncm91bmQ6ICRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1mb3JtLXJhZGlvLWNoZWNrZWQtaWNvbi1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1mb3JtLXJhZGlvLWNoZWNrZWQtZm9jdXMtYmFja2dyb3VuZDogZGFya2VuKCRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQsIDEwJSkgIWRlZmF1bHQ7XG4kaW52ZXJzZS1mb3JtLWljb24tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWZvcm0taWNvbi1ob3Zlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLWhvcml6b250YWw6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXZlcnRpY2FsOiAkZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbCAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci1ob3Jpem9udGFsLWw6ICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci12ZXJ0aWNhbC1sOiAkZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbC1sICFkZWZhdWx0O1xuJGdyaWQtc21hbGwtZ3V0dGVyLWhvcml6b250YWw6ICRnbG9iYWwtc21hbGwtZ3V0dGVyICFkZWZhdWx0O1xuJGdyaWQtc21hbGwtZ3V0dGVyLXZlcnRpY2FsOiAkZ3JpZC1zbWFsbC1ndXR0ZXItaG9yaXpvbnRhbCAhZGVmYXVsdDtcbiRncmlkLW1lZGl1bS1ndXR0ZXItaG9yaXpvbnRhbDogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kZ3JpZC1tZWRpdW0tZ3V0dGVyLXZlcnRpY2FsOiAkZ3JpZC1tZWRpdW0tZ3V0dGVyLWhvcml6b250YWwgIWRlZmF1bHQ7XG4kZ3JpZC1sYXJnZS1ndXR0ZXItaG9yaXpvbnRhbDogJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuJGdyaWQtbGFyZ2UtZ3V0dGVyLXZlcnRpY2FsOiAkZ3JpZC1sYXJnZS1ndXR0ZXItaG9yaXpvbnRhbCAhZGVmYXVsdDtcbiRncmlkLWxhcmdlLWd1dHRlci1ob3Jpem9udGFsLWw6ICRnbG9iYWwtbGFyZ2UtZ3V0dGVyICFkZWZhdWx0O1xuJGdyaWQtbGFyZ2UtZ3V0dGVyLXZlcnRpY2FsLWw6ICRncmlkLWxhcmdlLWd1dHRlci1ob3Jpem9udGFsLWwgIWRlZmF1bHQ7XG4kZ3JpZC1kaXZpZGVyLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZ3JpZC1kaXZpZGVyLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kaW52ZXJzZS1ncmlkLWRpdmlkZXItYm9yZGVyOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1sOiA0cmVtICFkZWZhdWx0O1xuJGhlYWRpbmctc21hbGwtZm9udC1zaXplLW06ICRoZWFkaW5nLW1lZGl1bS1mb250LXNpemUtbCAqIDAuODEyNSAhZGVmYXVsdDtcbiRoZWFkaW5nLXNtYWxsLWZvbnQtc2l6ZTogJGhlYWRpbmctc21hbGwtZm9udC1zaXplLW0gKiAwLjggIWRlZmF1bHQ7XG4kaGVhZGluZy1tZWRpdW0tZm9udC1zaXplLW06ICRoZWFkaW5nLW1lZGl1bS1mb250LXNpemUtbCAqIDAuODc1ICFkZWZhdWx0O1xuJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZTogJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1tICogMC44MjUgIWRlZmF1bHQ7XG4kaGVhZGluZy1sYXJnZS1mb250LXNpemUtbTogJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1sICFkZWZhdWx0O1xuJGhlYWRpbmctbGFyZ2UtZm9udC1zaXplOiAkaGVhZGluZy1sYXJnZS1mb250LXNpemUtbSAqIDAuODUgIWRlZmF1bHQ7XG4kaGVhZGluZy14bGFyZ2UtZm9udC1zaXplOiAkaGVhZGluZy1sYXJnZS1mb250LXNpemUtbSAhZGVmYXVsdDtcbiRoZWFkaW5nLWxhcmdlLWZvbnQtc2l6ZS1sOiA2cmVtICFkZWZhdWx0O1xuJGhlYWRpbmcteGxhcmdlLWZvbnQtc2l6ZS1tOiAkaGVhZGluZy1sYXJnZS1mb250LXNpemUtbCAhZGVmYXVsdDtcbiRoZWFkaW5nLTJ4bGFyZ2UtZm9udC1zaXplOiAkaGVhZGluZy14bGFyZ2UtZm9udC1zaXplLW0gIWRlZmF1bHQ7XG4kaGVhZGluZy14bGFyZ2UtZm9udC1zaXplLWw6IDhyZW0gIWRlZmF1bHQ7XG4kaGVhZGluZy0yeGxhcmdlLWZvbnQtc2l6ZS1tOiAkaGVhZGluZy14bGFyZ2UtZm9udC1zaXplLWwgIWRlZmF1bHQ7XG4kaGVhZGluZy0yeGxhcmdlLWZvbnQtc2l6ZS1sOiAxMXJlbSAhZGVmYXVsdDtcbiRoZWFkaW5nLXNtYWxsLWxpbmUtaGVpZ2h0OiAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZy1tZWRpdW0tbGluZS1oZWlnaHQ6IDEuMSAhZGVmYXVsdDtcbiRoZWFkaW5nLWxhcmdlLWxpbmUtaGVpZ2h0OiAxLjEgIWRlZmF1bHQ7XG4kaGVhZGluZy14bGFyZ2UtbGluZS1oZWlnaHQ6IDEgIWRlZmF1bHQ7XG4kaGVhZGluZy0yeGxhcmdlLWxpbmUtaGVpZ2h0OiAxICFkZWZhdWx0O1xuJGhlYWRpbmctZGl2aWRlci1wYWRkaW5nLWJvdHRvbTogdW5xdW90ZSgnY2FsYyg1cHggKyAwLjFlbSknKSAhZGVmYXVsdDtcbiRoZWFkaW5nLWRpdmlkZXItYm9yZGVyLXdpZHRoOiB1bnF1b3RlKCdjYWxjKDAuMnB4ICsgMC4wNWVtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctZGl2aWRlci1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGhlYWRpbmctYnVsbGV0LXRvcDogdW5xdW90ZSgnY2FsYygtMC4xICogMWVtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctYnVsbGV0LWhlaWdodDogdW5xdW90ZSgnY2FsYyg0cHggKyAwLjdlbSknKSAhZGVmYXVsdDtcbiRoZWFkaW5nLWJ1bGxldC1tYXJnaW4tcmlnaHQ6IHVucXVvdGUoJ2NhbGMoNXB4ICsgMC4yZW0pJykgIWRlZmF1bHQ7XG4kaGVhZGluZy1idWxsZXQtYm9yZGVyLXdpZHRoOiB1bnF1b3RlKCdjYWxjKDVweCArIDAuMWVtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctYnVsbGV0LWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kaGVhZGluZy1saW5lLXRvcDogNTAlICFkZWZhdWx0O1xuJGhlYWRpbmctbGluZS1ib3JkZXItd2lkdGg6IHVucXVvdGUoJ2NhbGMoMC4ycHggKyAwLjA1ZW0pJykgIWRlZmF1bHQ7XG4kaGVhZGluZy1saW5lLWhlaWdodDogJGhlYWRpbmctbGluZS1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaGVhZGluZy1saW5lLXdpZHRoOiAyMDAwcHggIWRlZmF1bHQ7XG4kaGVhZGluZy1saW5lLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kaGVhZGluZy1saW5lLW1hcmdpbi1ob3Jpem9udGFsOiB1bnF1b3RlKCdjYWxjKDVweCArIDAuM2VtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctcHJpbWFyeS1mb250LXNpemUtbDogMy43NXJlbSAhZGVmYXVsdDtcbiRoZWFkaW5nLXByaW1hcnktbGluZS1oZWlnaHQtbDogMS4xICFkZWZhdWx0O1xuJGhlYWRpbmctcHJpbWFyeS1mb250LXNpemUtbTogJGhlYWRpbmctcHJpbWFyeS1mb250LXNpemUtbCAqIDAuOSAhZGVmYXVsdDtcbiRoZWFkaW5nLXByaW1hcnktZm9udC1zaXplOiAkaGVhZGluZy1wcmltYXJ5LWZvbnQtc2l6ZS1sICogMC44ICFkZWZhdWx0O1xuJGhlYWRpbmctcHJpbWFyeS1saW5lLWhlaWdodDogMS4yICFkZWZhdWx0O1xuJGhlYWRpbmctaGVyby1mb250LXNpemUtbDogOHJlbSAhZGVmYXVsdDtcbiRoZWFkaW5nLWhlcm8tbGluZS1oZWlnaHQtbDogMSAhZGVmYXVsdDtcbiRoZWFkaW5nLWhlcm8tZm9udC1zaXplLW06ICRoZWFkaW5nLWhlcm8tZm9udC1zaXplLWwgKiAwLjc1ICFkZWZhdWx0O1xuJGhlYWRpbmctaGVyby1saW5lLWhlaWdodC1tOiAxICFkZWZhdWx0O1xuJGhlYWRpbmctaGVyby1mb250LXNpemU6ICRoZWFkaW5nLWhlcm8tZm9udC1zaXplLWwgKiAwLjUgIWRlZmF1bHQ7XG4kaGVhZGluZy1oZXJvLWxpbmUtaGVpZ2h0OiAxLjEgIWRlZmF1bHQ7XG4kaW52ZXJzZS1oZWFkaW5nLWRpdmlkZXItYm9yZGVyOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGludmVyc2UtaGVhZGluZy1idWxsZXQtYm9yZGVyOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGludmVyc2UtaGVhZGluZy1saW5lLWJvcmRlcjogJGludmVyc2UtZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRoZWlnaHQtc21hbGwtaGVpZ2h0OiAxNTBweCAhZGVmYXVsdDtcbiRoZWlnaHQtbWVkaXVtLWhlaWdodDogMzAwcHggIWRlZmF1bHQ7XG4kaGVpZ2h0LWxhcmdlLWhlaWdodDogNDUwcHggIWRlZmF1bHQ7XG4kaWNvbi1pbWFnZS1zaXplOiAyMHB4ICFkZWZhdWx0O1xuJGljb24tbGluay1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpY29uLWxpbmstaG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaWNvbi1saW5rLWFjdGl2ZS1jb2xvcjogZGFya2VuKCRnbG9iYWwtY29sb3IsIDUlKSAhZGVmYXVsdDtcbiRpY29uLWJ1dHRvbi1zaXplOiAzNnB4ICFkZWZhdWx0O1xuJGljb24tYnV0dG9uLWJvcmRlci1yYWRpdXM6IDUwMHB4ICFkZWZhdWx0O1xuJGljb24tYnV0dG9uLWJhY2tncm91bmQ6ICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpY29uLWJ1dHRvbi1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpY29uLWJ1dHRvbi1ob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGljb24tYnV0dG9uLWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRpY29uLWJ1dHRvbi1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpY29uLWJ1dHRvbi1hY3RpdmUtYmFja2dyb3VuZDogZGFya2VuKCRpY29uLWJ1dHRvbi1iYWNrZ3JvdW5kLCAxMCUpICFkZWZhdWx0O1xuJGljb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWljb24tbGluay1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtaWNvbi1saW5rLWhvdmVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1pY29uLWxpbmstYWN0aXZlLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1pY29uLWJ1dHRvbi1iYWNrZ3JvdW5kOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWljb24tYnV0dG9uLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1pY29uLWJ1dHRvbi1ob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGludmVyc2UtaWNvbi1idXR0b24tYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGludmVyc2UtaWNvbi1idXR0b24taG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWljb24tYnV0dG9uLWFjdGl2ZS1iYWNrZ3JvdW5kOiBkYXJrZW4oJGludmVyc2UtaWNvbi1idXR0b24tYmFja2dyb3VuZCwgMTAlKSAhZGVmYXVsdDtcbiRpbnZlcnNlLWljb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGljb25uYXYtbWFyZ2luLWhvcml6b250YWw6ICRnbG9iYWwtc21hbGwtbWFyZ2luICFkZWZhdWx0O1xuJGljb25uYXYtbWFyZ2luLXZlcnRpY2FsOiAkaWNvbm5hdi1tYXJnaW4taG9yaXpvbnRhbCAhZGVmYXVsdDtcbiRpY29ubmF2LWl0ZW0tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaWNvbm5hdi1pdGVtLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGljb25uYXYtaXRlbS1hY3RpdmUtY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1pY29ubmF2LWl0ZW0tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWljb25uYXYtaXRlbS1ob3Zlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtaWNvbm5hdi1pdGVtLWFjdGl2ZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtZ2xvYmFsLWNvbG9yLW1vZGU6IGxpZ2h0ICFkZWZhdWx0O1xuJGxhYmVsLXBhZGRpbmctdmVydGljYWw6IDAgIWRlZmF1bHQ7XG4kbGFiZWwtcGFkZGluZy1ob3Jpem9udGFsOiAkZ2xvYmFsLXNtYWxsLW1hcmdpbiAhZGVmYXVsdDtcbiRsYWJlbC1iYWNrZ3JvdW5kOiAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRsYWJlbC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRsYWJlbC1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGxhYmVsLWNvbG9yOiAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kbGFiZWwtc3VjY2Vzcy1iYWNrZ3JvdW5kOiAkZ2xvYmFsLXN1Y2Nlc3MtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRsYWJlbC1zdWNjZXNzLWNvbG9yOiAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kbGFiZWwtd2FybmluZy1iYWNrZ3JvdW5kOiAkZ2xvYmFsLXdhcm5pbmctYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRsYWJlbC13YXJuaW5nLWNvbG9yOiAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kbGFiZWwtZGFuZ2VyLWJhY2tncm91bmQ6ICRnbG9iYWwtZGFuZ2VyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbGFiZWwtZGFuZ2VyLWNvbG9yOiAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1sYWJlbC1iYWNrZ3JvdW5kOiAkaW52ZXJzZS1nbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2UtbGFiZWwtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGxlYWRlci1maWxsLWNvbnRlbnQ6IHVucXVvdGUoJy4nKSAhZGVmYXVsdDtcbiRsZWFkZXItZmlsbC1tYXJnaW4tbGVmdDogJGdsb2JhbC1zbWFsbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kbGlnaHRib3gtei1pbmRleDogJGdsb2JhbC16LWluZGV4ICsgMTAgIWRlZmF1bHQ7XG4kbGlnaHRib3gtYmFja2dyb3VuZDogIzAwMCAhZGVmYXVsdDtcbiRsaWdodGJveC1pdGVtLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNykgIWRlZmF1bHQ7XG4kbGlnaHRib3gtaXRlbS1tYXgtd2lkdGg6IDEwMHZ3ICFkZWZhdWx0O1xuJGxpZ2h0Ym94LWl0ZW0tbWF4LWhlaWdodDogMTAwdmggIWRlZmF1bHQ7XG4kbGlnaHRib3gtdG9vbGJhci1wYWRkaW5nLXZlcnRpY2FsOiAxMHB4ICFkZWZhdWx0O1xuJGxpZ2h0Ym94LXRvb2xiYXItcGFkZGluZy1ob3Jpem9udGFsOiAxMHB4ICFkZWZhdWx0O1xuJGxpZ2h0Ym94LXRvb2xiYXItYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjMpICFkZWZhdWx0O1xuJGxpZ2h0Ym94LXRvb2xiYXItY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC43KSAhZGVmYXVsdDtcbiRsaWdodGJveC10b29sYmFyLWljb24tcGFkZGluZzogNXB4ICFkZWZhdWx0O1xuJGxpZ2h0Ym94LXRvb2xiYXItaWNvbi1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjcpICFkZWZhdWx0O1xuJGxpZ2h0Ym94LXRvb2xiYXItaWNvbi1ob3Zlci1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRsaWdodGJveC1idXR0b24tc2l6ZTogNTBweCAhZGVmYXVsdDtcbiRsaWdodGJveC1idXR0b24tYmFja2dyb3VuZDogJGxpZ2h0Ym94LXRvb2xiYXItYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRsaWdodGJveC1idXR0b24tY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC43KSAhZGVmYXVsdDtcbiRsaWdodGJveC1idXR0b24taG92ZXItY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kbGluay1tdXRlZC1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRsaW5rLW11dGVkLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGxpbmstdGV4dC1ob3Zlci1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRsaW5rLWhlYWRpbmctaG92ZXItY29sb3I6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxpbmstaGVhZGluZy1ob3Zlci10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG4kaW52ZXJzZS1saW5rLW11dGVkLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1saW5rLW11dGVkLWhvdmVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1saW5rLXRleHQtaG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpbmstaGVhZGluZy1ob3Zlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRsaXN0LW1hcmdpbi10b3A6ICRnbG9iYWwtc21hbGwtbWFyZ2luICFkZWZhdWx0O1xuJGxpc3QtcGFkZGluZy1sZWZ0OiAzMHB4ICFkZWZhdWx0O1xuJGxpc3QtbWFya2VyLWhlaWdodDogKCRnbG9iYWwtbGluZS1oZWlnaHQgKiAxZW0pICFkZWZhdWx0O1xuJGxpc3QtbXV0ZWQtY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1lbXBoYXNpcy1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LXByaW1hcnktY29sb3I6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxpc3Qtc2Vjb25kYXJ5LWNvbG9yOiAkZ2xvYmFsLXNlY29uZGFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxpc3QtYnVsbGV0LWljb24tY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1kaXZpZGVyLW1hcmdpbi10b3A6ICRnbG9iYWwtc21hbGwtbWFyZ2luICFkZWZhdWx0O1xuJGxpc3QtZGl2aWRlci1ib3JkZXItd2lkdGg6ICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZGl2aWRlci1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGxpc3Qtc3RyaXBlZC1wYWRkaW5nLXZlcnRpY2FsOiAkZ2xvYmFsLXNtYWxsLW1hcmdpbiAhZGVmYXVsdDtcbiRsaXN0LXN0cmlwZWQtcGFkZGluZy1ob3Jpem9udGFsOiAkZ2xvYmFsLXNtYWxsLW1hcmdpbiAhZGVmYXVsdDtcbiRsaXN0LXN0cmlwZWQtYmFja2dyb3VuZDogJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxpc3QtbGFyZ2UtbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kbGlzdC1sYXJnZS1kaXZpZGVyLW1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGxpc3QtbGFyZ2Utc3RyaXBlZC1wYWRkaW5nLXZlcnRpY2FsOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRsaXN0LWxhcmdlLXN0cmlwZWQtcGFkZGluZy1ob3Jpem9udGFsOiAkZ2xvYmFsLXNtYWxsLW1hcmdpbiAhZGVmYXVsdDtcbiRpbnRlcm5hbC1saXN0LWJ1bGxldC1pbWFnZTogXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjYlMjIlMjBoZWlnaHQlM0QlMjI2JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwNiUyMDYlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ2NpcmNsZSUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwY3glM0QlMjIzJTIyJTIwY3klM0QlMjIzJTIyJTIwciUzRCUyMjMlMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0VcIiAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpc3QtbXV0ZWQtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpc3QtZW1waGFzaXMtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpc3QtcHJpbWFyeS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpc3Qtc2Vjb25kYXJ5LWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2UtbGlzdC1kaXZpZGVyLWJvcmRlcjogJGludmVyc2UtZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpc3Qtc3RyaXBlZC1iYWNrZ3JvdW5kOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpc3QtYnVsbGV0LWljb24tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRtYXJnaW4tbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRtYXJnaW4tc21hbGwtbWFyZ2luOiAkZ2xvYmFsLXNtYWxsLW1hcmdpbiAhZGVmYXVsdDtcbiRtYXJnaW4tbWVkaXVtLW1hcmdpbjogJGdsb2JhbC1tZWRpdW0tbWFyZ2luICFkZWZhdWx0O1xuJG1hcmdpbi1sYXJnZS1tYXJnaW46ICRnbG9iYWwtbWVkaXVtLW1hcmdpbiAhZGVmYXVsdDtcbiRtYXJnaW4tbGFyZ2UtbWFyZ2luLWw6ICRnbG9iYWwtbGFyZ2UtbWFyZ2luICFkZWZhdWx0O1xuJG1hcmdpbi14bGFyZ2UtbWFyZ2luOiAkZ2xvYmFsLWxhcmdlLW1hcmdpbiAhZGVmYXVsdDtcbiRnbG9iYWwteGxhcmdlLW1hcmdpbjogMTQwcHggIWRlZmF1bHQ7XG4kbWFyZ2luLXhsYXJnZS1tYXJnaW4tbDogJGdsb2JhbC14bGFyZ2UtbWFyZ2luICFkZWZhdWx0O1xuJG1hcmtlci1wYWRkaW5nOiA1cHggIWRlZmF1bHQ7XG4kbWFya2VyLWJhY2tncm91bmQ6ICRnbG9iYWwtc2Vjb25kYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbWFya2VyLWNvbG9yOiAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kbWFya2VyLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1tYXJrZXItYmFja2dyb3VuZDogJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2UtbWFya2VyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbWFya2VyLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLXotaW5kZXg6ICRnbG9iYWwtei1pbmRleCArIDEwICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC42KSAhZGVmYXVsdDtcbiRtb2RhbC1wYWRkaW5nLWhvcml6b250YWw6IDE1cHggIWRlZmF1bHQ7XG4kbW9kYWwtcGFkZGluZy1ob3Jpem9udGFsLXM6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJG1vZGFsLXBhZGRpbmctaG9yaXpvbnRhbC1tOiAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XG4kbW9kYWwtcGFkZGluZy12ZXJ0aWNhbDogJG1vZGFsLXBhZGRpbmctaG9yaXpvbnRhbCAhZGVmYXVsdDtcbiRtb2RhbC1wYWRkaW5nLXZlcnRpY2FsLXM6IDUwcHggIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLXdpZHRoOiA2MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctYmFja2dyb3VuZDogJGdsb2JhbC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRhaW5lci13aWR0aDogMTIwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLWJvZHktcGFkZGluZy1ob3Jpem9udGFsOiAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRtb2RhbC1ib2R5LXBhZGRpbmctdmVydGljYWw6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWw6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsOiAoJG1vZGFsLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWwgLyAyKSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYmFja2dyb3VuZDogJG1vZGFsLWRpYWxvZy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWw6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1wYWRkaW5nLXZlcnRpY2FsOiAoJG1vZGFsLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWwgLyAyKSAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYmFja2dyb3VuZDogJG1vZGFsLWRpYWxvZy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJG1vZGFsLXRpdGxlLWZvbnQtc2l6ZTogJGdsb2JhbC14bGFyZ2UtZm9udC1zaXplICFkZWZhdWx0O1xuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAxLjMgIWRlZmF1bHQ7XG4kbW9kYWwtY2xvc2UtcG9zaXRpb246ICRnbG9iYWwtc21hbGwtbWFyZ2luICFkZWZhdWx0O1xuJG1vZGFsLWNsb3NlLXBhZGRpbmc6IDVweCAhZGVmYXVsdDtcbiRtb2RhbC1jbG9zZS1vdXRzaWRlLXBvc2l0aW9uOiAwICFkZWZhdWx0O1xuJG1vZGFsLWNsb3NlLW91dHNpZGUtdHJhbnNsYXRlOiAxMDAlICFkZWZhdWx0O1xuJG1vZGFsLWNsb3NlLW91dHNpZGUtY29sb3I6IGxpZ2h0ZW4oJGdsb2JhbC1pbnZlcnNlLWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuJG1vZGFsLWNsb3NlLW91dHNpZGUtaG92ZXItY29sb3I6ICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtaXRlbS1wYWRkaW5nLXZlcnRpY2FsOiA1cHggIWRlZmF1bHQ7XG4kbmF2LWl0ZW0tcGFkZGluZy1ob3Jpem9udGFsOiAwICFkZWZhdWx0O1xuJG5hdi1zdWJsaXN0LXBhZGRpbmctdmVydGljYWw6IDVweCAhZGVmYXVsdDtcbiRuYXYtc3VibGlzdC1wYWRkaW5nLWxlZnQ6IDE1cHggIWRlZmF1bHQ7XG4kbmF2LXN1Ymxpc3QtZGVlcGVyLXBhZGRpbmctbGVmdDogMTVweCAhZGVmYXVsdDtcbiRuYXYtc3VibGlzdC1pdGVtLXBhZGRpbmctdmVydGljYWw6IDJweCAhZGVmYXVsdDtcbiRuYXYtcGFyZW50LWljb24td2lkdGg6ICgkZ2xvYmFsLWxpbmUtaGVpZ2h0ICogMWVtKSAhZGVmYXVsdDtcbiRuYXYtcGFyZW50LWljb24taGVpZ2h0OiAkbmF2LXBhcmVudC1pY29uLXdpZHRoICFkZWZhdWx0O1xuJG5hdi1wYXJlbnQtaWNvbi1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRuYXYtaGVhZGVyLXBhZGRpbmctdmVydGljYWw6ICRuYXYtaXRlbS1wYWRkaW5nLXZlcnRpY2FsICFkZWZhdWx0O1xuJG5hdi1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsOiAkbmF2LWl0ZW0tcGFkZGluZy1ob3Jpem9udGFsICFkZWZhdWx0O1xuJG5hdi1oZWFkZXItZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRuYXYtaGVhZGVyLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kbmF2LWhlYWRlci1tYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlci1tYXJnaW4tdmVydGljYWw6IDVweCAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlci1tYXJnaW4taG9yaXpvbnRhbDogMCAhZGVmYXVsdDtcbiRuYXYtZGVmYXVsdC1pdGVtLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1kZWZhdWx0LWl0ZW0taG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LWRlZmF1bHQtaXRlbS1hY3RpdmUtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LWRlZmF1bHQtaGVhZGVyLWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1kZWZhdWx0LWRpdmlkZXItYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXYtZGVmYXVsdC1kaXZpZGVyLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kbmF2LWRlZmF1bHQtc3VibGlzdC1pdGVtLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1kZWZhdWx0LXN1Ymxpc3QtaXRlbS1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRuYXYtZGVmYXVsdC1zdWJsaXN0LWl0ZW0tYWN0aXZlLWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1wcmltYXJ5LWl0ZW0tZm9udC1zaXplOiAkZ2xvYmFsLWxhcmdlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRuYXYtcHJpbWFyeS1pdGVtLWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJG5hdi1wcmltYXJ5LWl0ZW0tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXByaW1hcnktaXRlbS1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcHJpbWFyeS1pdGVtLWFjdGl2ZS1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcHJpbWFyeS1oZWFkZXItY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXByaW1hcnktZGl2aWRlci1ib3JkZXItd2lkdGg6ICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi1wcmltYXJ5LWRpdmlkZXItYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRuYXYtcHJpbWFyeS1zdWJsaXN0LWl0ZW0tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXByaW1hcnktc3VibGlzdC1pdGVtLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1wcmltYXJ5LXN1Ymxpc3QtaXRlbS1hY3RpdmUtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW50ZXJuYWwtbmF2LXBhcmVudC1jbG9zZS1pbWFnZTogXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjE0JTIyJTIwaGVpZ2h0JTNEJTIyMTQlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAxNCUyMDE0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5bGluZSUyMGZpbGwlM0QlMjJub25lJTIyJTIwc3Ryb2tlJTNEJTIyIzAwMCUyMiUyMHN0cm9rZS13aWR0aCUzRCUyMjEuMSUyMiUyMHBvaW50cyUzRCUyMjEwJTIwMSUyMDQlMjA3JTIwMTAlMjAxMyUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRVwiICFkZWZhdWx0O1xuJGludGVybmFsLW5hdi1wYXJlbnQtb3Blbi1pbWFnZTogXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjE0JTIyJTIwaGVpZ2h0JTNEJTIyMTQlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAxNCUyMDE0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5bGluZSUyMGZpbGwlM0QlMjJub25lJTIyJTIwc3Ryb2tlJTNEJTIyIzAwMCUyMiUyMHN0cm9rZS13aWR0aCUzRCUyMjEuMSUyMiUyMHBvaW50cyUzRCUyMjElMjA0JTIwNyUyMDEwJTIwMTMlMjA0JTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFXCIgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtcGFyZW50LWljb24tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0taG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0tYWN0aXZlLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtZGVmYXVsdC1oZWFkZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1kZWZhdWx0LWRpdmlkZXItYm9yZGVyOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGludmVyc2UtbmF2LWRlZmF1bHQtc3VibGlzdC1pdGVtLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtZGVmYXVsdC1zdWJsaXN0LWl0ZW0taG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1kZWZhdWx0LXN1Ymxpc3QtaXRlbS1hY3RpdmUtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0taG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0tYWN0aXZlLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtcHJpbWFyeS1oZWFkZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1wcmltYXJ5LWRpdmlkZXItYm9yZGVyOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGludmVyc2UtbmF2LXByaW1hcnktc3VibGlzdC1pdGVtLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtcHJpbWFyeS1zdWJsaXN0LWl0ZW0taG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1wcmltYXJ5LXN1Ymxpc3QtaXRlbS1hY3RpdmUtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItYmFja2dyb3VuZDogJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJG5hdmJhci1jb2xvci1tb2RlOiBub25lICFkZWZhdWx0O1xuJG5hdmJhci1uYXYtaXRlbS1oZWlnaHQ6IDgwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLW5hdi1pdGVtLXBhZGRpbmctaG9yaXpvbnRhbDogMTVweCAhZGVmYXVsdDtcbiRuYXZiYXItbmF2LWl0ZW0tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLW5hdi1pdGVtLWZvbnQtc2l6ZTogJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kbmF2YmFyLW5hdi1pdGVtLWZvbnQtZmFtaWx5OiAkZ2xvYmFsLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJG5hdmJhci1uYXYtaXRlbS1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbmF2LWl0ZW0tb25jbGljay1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbmF2LWl0ZW0tYWN0aXZlLWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1pdGVtLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGUtY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZS1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItc3VidGl0bGUtZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tei1pbmRleDogJGdsb2JhbC16LWluZGV4ICsgMjAgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbWFyZ2luOiAxNXB4ICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1wYWRkaW5nOiAyNXB4ICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1iYWNrZ3JvdW5kOiAkZ2xvYmFsLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1ncmlkLWd1dHRlci1ob3Jpem9udGFsOiAoJG5hdmJhci1kcm9wZG93bi1wYWRkaW5nICogMikgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLWdyaWQtZ3V0dGVyLXZlcnRpY2FsOiAkbmF2YmFyLWRyb3Bkb3duLWdyaWQtZ3V0dGVyLWhvcml6b250YWwgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXItbWFyZ2luLXRvcDogMCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tZHJvcGJhci1tYXJnaW4tYm90dG9tOiAkbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXItbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbmF2LWl0ZW0tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLW5hdi1pdGVtLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1uYXYtaXRlbS1hY3RpdmUtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLW5hdi1oZWFkZXItY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLW5hdi1kaXZpZGVyLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLW5hdi1kaXZpZGVyLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLW5hdi1zdWJsaXN0LWl0ZW0tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLW5hdi1zdWJsaXN0LWl0ZW0taG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLW5hdi1zdWJsaXN0LWl0ZW0tYWN0aXZlLWNvbG9yOiAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wYmFyLWJhY2tncm91bmQ6ICRuYXZiYXItZHJvcGRvd24tYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGJhci16LWluZGV4OiAkZ2xvYmFsLXotaW5kZXggLSAyMCAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdmJhci1uYXYtaXRlbS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbmF2YmFyLW5hdi1pdGVtLWhvdmVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0tb25jbGljay1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbmF2YmFyLW5hdi1pdGVtLWFjdGl2ZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbmF2YmFyLWl0ZW0tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdmJhci10b2dnbGUtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdmJhci10b2dnbGUtaG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRub3RpZmljYXRpb24tcG9zaXRpb246IDEwcHggIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLXotaW5kZXg6ICRnbG9iYWwtei1pbmRleCArIDQwICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi13aWR0aDogMzUwcHggIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLW1lc3NhZ2UtbWFyZ2luLXRvcDogMTBweCAhZGVmYXVsdDtcbiRub3RpZmljYXRpb24tbWVzc2FnZS1wYWRkaW5nOiAkZ2xvYmFsLXNtYWxsLWd1dHRlciAhZGVmYXVsdDtcbiRub3RpZmljYXRpb24tbWVzc2FnZS1iYWNrZ3JvdW5kOiAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLW1lc3NhZ2UtY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLW1lc3NhZ2UtZm9udC1zaXplOiAkZ2xvYmFsLW1lZGl1bS1mb250LXNpemUgIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLW1lc3NhZ2UtbGluZS1oZWlnaHQ6IDEuNCAhZGVmYXVsdDtcbiRub3RpZmljYXRpb24tY2xvc2UtdG9wOiAkbm90aWZpY2F0aW9uLW1lc3NhZ2UtcGFkZGluZyArIDVweCAhZGVmYXVsdDtcbiRub3RpZmljYXRpb24tY2xvc2UtcmlnaHQ6ICRub3RpZmljYXRpb24tbWVzc2FnZS1wYWRkaW5nICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1tZXNzYWdlLXByaW1hcnktY29sb3I6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1tZXNzYWdlLXN1Y2Nlc3MtY29sb3I6ICRnbG9iYWwtc3VjY2Vzcy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1tZXNzYWdlLXdhcm5pbmctY29sb3I6ICRnbG9iYWwtd2FybmluZy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1tZXNzYWdlLWRhbmdlci1jb2xvcjogJGdsb2JhbC1kYW5nZXItYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtei1pbmRleDogJGdsb2JhbC16LWluZGV4ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYXItd2lkdGg6IDI3MHB4ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYXItcGFkZGluZy12ZXJ0aWNhbDogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhci1wYWRkaW5nLWhvcml6b250YWw6ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYXItYmFja2dyb3VuZDogJGdsb2JhbC1zZWNvbmRhcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmFyLWNvbG9yLW1vZGU6IGxpZ2h0ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYXItd2lkdGgtbTogMzUwcHggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhci1wYWRkaW5nLXZlcnRpY2FsLW06ICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmFyLXBhZGRpbmctaG9yaXpvbnRhbC1tOiAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWNsb3NlLXBvc2l0aW9uOiAyMHB4ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1jbG9zZS1wYWRkaW5nOiA1cHggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjEpICFkZWZhdWx0O1xuJG92ZXJsYXktcGFkZGluZy1ob3Jpem9udGFsOiAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRvdmVybGF5LXBhZGRpbmctdmVydGljYWw6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJG92ZXJsYXktZGVmYXVsdC1iYWNrZ3JvdW5kOiByZ2JhKCRnbG9iYWwtYmFja2dyb3VuZCwgMC44KSAhZGVmYXVsdDtcbiRvdmVybGF5LXByaW1hcnktYmFja2dyb3VuZDogcmdiYSgkZ2xvYmFsLXNlY29uZGFyeS1iYWNrZ3JvdW5kLCAwLjgpICFkZWZhdWx0O1xuJG92ZXJsYXktcHJpbWFyeS1jb2xvci1tb2RlOiBsaWdodCAhZGVmYXVsdDtcbiRwYWRkaW5nLXBhZGRpbmc6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJHBhZGRpbmctcGFkZGluZy1sOiAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XG4kcGFkZGluZy1zbWFsbC1wYWRkaW5nOiAkZ2xvYmFsLXNtYWxsLWd1dHRlciAhZGVmYXVsdDtcbiRwYWRkaW5nLWxhcmdlLXBhZGRpbmc6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJHBhZGRpbmctbGFyZ2UtcGFkZGluZy1sOiAkZ2xvYmFsLWxhcmdlLWd1dHRlciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLW1hcmdpbi1ob3Jpem9udGFsOiAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLXZlcnRpY2FsOiA1cHggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmctaG9yaXpvbnRhbDogMTBweCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1pdGVtLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taXRlbS1ob3Zlci10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1pdGVtLWFjdGl2ZS1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQtY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXBhZ2luYXRpb24taXRlbS1ob3Zlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtcGFnaW5hdGlvbi1pdGVtLWFjdGl2ZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kcGxhY2Vob2xkZXItbWFyZ2luLXZlcnRpY2FsOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRwbGFjZWhvbGRlci1wYWRkaW5nLXZlcnRpY2FsOiAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRwbGFjZWhvbGRlci1wYWRkaW5nLWhvcml6b250YWw6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJHBsYWNlaG9sZGVyLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHBvc2l0aW9uLXNtYWxsLW1hcmdpbjogJGdsb2JhbC1zbWFsbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kcG9zaXRpb24tbWVkaXVtLW1hcmdpbjogJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kcG9zaXRpb24tbGFyZ2UtbWFyZ2luOiAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRwb3NpdGlvbi1sYXJnZS1tYXJnaW4tbDogNTBweCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1oZWlnaHQ6IDE1cHggIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtbWFyZ2luLXZlcnRpY2FsOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYWNrZ3JvdW5kOiAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJhY2tncm91bmQ6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHNlYXJjaC1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRzZWFyY2gtcGxhY2Vob2xkZXItY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kc2VhcmNoLWljb24tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kc2VhcmNoLWRlZmF1bHQtd2lkdGg6IDE4MHB4ICFkZWZhdWx0O1xuJHNlYXJjaC1kZWZhdWx0LWhlaWdodDogJGdsb2JhbC1jb250cm9sLWhlaWdodCAhZGVmYXVsdDtcbiRzZWFyY2gtZGVmYXVsdC1wYWRkaW5nLWhvcml6b250YWw6IDZweCAhZGVmYXVsdDtcbiRzZWFyY2gtZGVmYXVsdC1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRzZWFyY2gtZGVmYXVsdC1mb2N1cy1iYWNrZ3JvdW5kOiAkc2VhcmNoLWRlZmF1bHQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRzZWFyY2gtZGVmYXVsdC1pY29uLXdpZHRoOiAkZ2xvYmFsLWNvbnRyb2wtaGVpZ2h0ICFkZWZhdWx0O1xuJHNlYXJjaC1uYXZiYXItd2lkdGg6IDQwMHB4ICFkZWZhdWx0O1xuJHNlYXJjaC1uYXZiYXItaGVpZ2h0OiA0MHB4ICFkZWZhdWx0O1xuJHNlYXJjaC1uYXZiYXItYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kc2VhcmNoLW5hdmJhci1mb250LXNpemU6ICRnbG9iYWwtbGFyZ2UtZm9udC1zaXplICFkZWZhdWx0O1xuJHNlYXJjaC1uYXZiYXItaWNvbi13aWR0aDogNDBweCAhZGVmYXVsdDtcbiRzZWFyY2gtbGFyZ2Utd2lkdGg6IDUwMHB4ICFkZWZhdWx0O1xuJHNlYXJjaC1sYXJnZS1oZWlnaHQ6IDgwcHggIWRlZmF1bHQ7XG4kc2VhcmNoLWxhcmdlLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHNlYXJjaC1sYXJnZS1mb250LXNpemU6ICRnbG9iYWwtMnhsYXJnZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kc2VhcmNoLWxhcmdlLWljb24td2lkdGg6IDgwcHggIWRlZmF1bHQ7XG4kc2VhcmNoLXRvZ2dsZS1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRzZWFyY2gtdG9nZ2xlLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2Utc2VhcmNoLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zZWFyY2gtcGxhY2Vob2xkZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXNlYXJjaC1pY29uLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zZWFyY2gtZGVmYXVsdC1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRpbnZlcnNlLXNlYXJjaC1kZWZhdWx0LWZvY3VzLWJhY2tncm91bmQ6ICRpbnZlcnNlLXNlYXJjaC1kZWZhdWx0LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zZWFyY2gtbmF2YmFyLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGludmVyc2Utc2VhcmNoLWxhcmdlLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGludmVyc2Utc2VhcmNoLXRvZ2dsZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2Utc2VhcmNoLXRvZ2dsZS1ob3Zlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJHNlY3Rpb24tcGFkZGluZy12ZXJ0aWNhbDogJGdsb2JhbC1tZWRpdW0tbWFyZ2luICFkZWZhdWx0O1xuJHNlY3Rpb24tcGFkZGluZy12ZXJ0aWNhbC1tOiAkZ2xvYmFsLWxhcmdlLW1hcmdpbiAhZGVmYXVsdDtcbiRzZWN0aW9uLXhzbWFsbC1wYWRkaW5nLXZlcnRpY2FsOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRzZWN0aW9uLXNtYWxsLXBhZGRpbmctdmVydGljYWw6ICRnbG9iYWwtbWVkaXVtLW1hcmdpbiAhZGVmYXVsdDtcbiRzZWN0aW9uLWxhcmdlLXBhZGRpbmctdmVydGljYWw6ICRnbG9iYWwtbGFyZ2UtbWFyZ2luICFkZWZhdWx0O1xuJHNlY3Rpb24tbGFyZ2UtcGFkZGluZy12ZXJ0aWNhbC1tOiAkZ2xvYmFsLXhsYXJnZS1tYXJnaW4gIWRlZmF1bHQ7XG4kc2VjdGlvbi14bGFyZ2UtcGFkZGluZy12ZXJ0aWNhbDogJGdsb2JhbC14bGFyZ2UtbWFyZ2luICFkZWZhdWx0O1xuJHNlY3Rpb24teGxhcmdlLXBhZGRpbmctdmVydGljYWwtbTogKCRnbG9iYWwtbGFyZ2UtbWFyZ2luICsgJGdsb2JhbC14bGFyZ2UtbWFyZ2luKSAhZGVmYXVsdDtcbiRzZWN0aW9uLWRlZmF1bHQtYmFja2dyb3VuZDogJGdsb2JhbC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHNlY3Rpb24tbXV0ZWQtYmFja2dyb3VuZDogJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHNlY3Rpb24tcHJpbWFyeS1iYWNrZ3JvdW5kOiAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRzZWN0aW9uLXByaW1hcnktY29sb3ItbW9kZTogbGlnaHQgIWRlZmF1bHQ7XG4kc2VjdGlvbi1zZWNvbmRhcnktYmFja2dyb3VuZDogJGdsb2JhbC1zZWNvbmRhcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRzZWN0aW9uLXNlY29uZGFyeS1jb2xvci1tb2RlOiBsaWdodCAhZGVmYXVsdDtcbiRzbGlkZW5hdi1wYWRkaW5nLXZlcnRpY2FsOiA1cHggIWRlZmF1bHQ7XG4kc2xpZGVuYXYtcGFkZGluZy1ob3Jpem9udGFsOiAxMHB4ICFkZWZhdWx0O1xuJHNsaWRlbmF2LWNvbG9yOiByZ2JhKCRnbG9iYWwtY29sb3IsIDAuNSkgIWRlZmF1bHQ7XG4kc2xpZGVuYXYtaG92ZXItY29sb3I6IHJnYmEoJGdsb2JhbC1jb2xvciwgMC45KSAhZGVmYXVsdDtcbiRzbGlkZW5hdi1hY3RpdmUtY29sb3I6IHJnYmEoJGdsb2JhbC1jb2xvciwgMC41KSAhZGVmYXVsdDtcbiRzbGlkZW5hdi1sYXJnZS1wYWRkaW5nLXZlcnRpY2FsOiAxMHB4ICFkZWZhdWx0O1xuJHNsaWRlbmF2LWxhcmdlLXBhZGRpbmctaG9yaXpvbnRhbDogJHNsaWRlbmF2LWxhcmdlLXBhZGRpbmctdmVydGljYWwgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zbGlkZW5hdi1jb2xvcjogcmdiYSgkaW52ZXJzZS1nbG9iYWwtY29sb3IsIDAuNykgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zbGlkZW5hdi1ob3Zlci1jb2xvcjogcmdiYSgkaW52ZXJzZS1nbG9iYWwtY29sb3IsIDAuOTUpICFkZWZhdWx0O1xuJGludmVyc2Utc2xpZGVuYXYtYWN0aXZlLWNvbG9yOiByZ2JhKCRpbnZlcnNlLWdsb2JhbC1jb2xvciwgMC43KSAhZGVmYXVsdDtcbiRzbGlkZXItY29udGFpbmVyLW1hcmdpbi10b3A6IC0xMXB4ICFkZWZhdWx0O1xuJHNsaWRlci1jb250YWluZXItbWFyZ2luLWJvdHRvbTogLTM5cHggIWRlZmF1bHQ7XG4kc2xpZGVyLWNvbnRhaW5lci1tYXJnaW4tbGVmdDogLTI1cHggIWRlZmF1bHQ7XG4kc2xpZGVyLWNvbnRhaW5lci1tYXJnaW4tcmlnaHQ6IC0yNXB4ICFkZWZhdWx0O1xuJHNvcnRhYmxlLWRyYWdnZWQtei1pbmRleDogJGdsb2JhbC16LWluZGV4ICsgNTAgIWRlZmF1bHQ7XG4kc29ydGFibGUtcGxhY2Vob2xkZXItb3BhY2l0eTogMCAhZGVmYXVsdDtcbiRzb3J0YWJsZS1lbXB0eS1oZWlnaHQ6IDUwcHggIWRlZmF1bHQ7XG4kc3Bpbm5lci1zaXplOiAzMHB4ICFkZWZhdWx0O1xuJHNwaW5uZXItc3Ryb2tlLXdpZHRoOiAxICFkZWZhdWx0O1xuJHNwaW5uZXItcmFkaXVzOiBmbG9vcigoJHNwaW5uZXItc2l6ZSAtICRzcGlubmVyLXN0cm9rZS13aWR0aCkgLyAyKSAhZGVmYXVsdDtcbiRzcGlubmVyLWNpcmN1bWZlcmVuY2U6IHJvdW5kKDIgKiAzLjE0MSAqICRzcGlubmVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kc3Bpbm5lci1kdXJhdGlvbjogMS40cyAhZGVmYXVsdDtcbiRzdGlja3ktei1pbmRleDogJGdsb2JhbC16LWluZGV4IC0gMjAgIWRlZmF1bHQ7XG4kc3RpY2t5LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4ycyAhZGVmYXVsdDtcbiRzdGlja3ktcmV2ZXJzZS1hbmltYXRpb24tZHVyYXRpb246IDAuMnMgIWRlZmF1bHQ7XG4kc3VibmF2LW1hcmdpbi1ob3Jpem9udGFsOiAyMHB4ICFkZWZhdWx0O1xuJHN1Ym5hdi1pdGVtLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJHN1Ym5hdi1pdGVtLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJHN1Ym5hdi1pdGVtLWhvdmVyLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcbiRzdWJuYXYtaXRlbS1hY3RpdmUtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kc3VibmF2LWRpdmlkZXItbWFyZ2luLWhvcml6b250YWw6ICRzdWJuYXYtbWFyZ2luLWhvcml6b250YWwgIWRlZmF1bHQ7XG4kc3VibmF2LWRpdmlkZXItYm9yZGVyLWhlaWdodDogMS41ZW0gIWRlZmF1bHQ7XG4kc3VibmF2LWRpdmlkZXItYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRzdWJuYXYtZGl2aWRlci1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJHN1Ym5hdi1waWxsLWl0ZW0tcGFkZGluZy12ZXJ0aWNhbDogNXB4ICFkZWZhdWx0O1xuJHN1Ym5hdi1waWxsLWl0ZW0tcGFkZGluZy1ob3Jpem9udGFsOiAxMHB4ICFkZWZhdWx0O1xuJHN1Ym5hdi1waWxsLWl0ZW0tYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kc3VibmF2LXBpbGwtaXRlbS1jb2xvcjogJHN1Ym5hdi1pdGVtLWNvbG9yICFkZWZhdWx0O1xuJHN1Ym5hdi1waWxsLWl0ZW0taG92ZXItYmFja2dyb3VuZDogJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHN1Ym5hdi1waWxsLWl0ZW0taG92ZXItY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kc3VibmF2LXBpbGwtaXRlbS1vbmNsaWNrLWJhY2tncm91bmQ6ICRzdWJuYXYtcGlsbC1pdGVtLWhvdmVyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kc3VibmF2LXBpbGwtaXRlbS1vbmNsaWNrLWNvbG9yOiAkc3VibmF2LXBpbGwtaXRlbS1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRzdWJuYXYtcGlsbC1pdGVtLWFjdGl2ZS1iYWNrZ3JvdW5kOiAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRzdWJuYXYtcGlsbC1pdGVtLWFjdGl2ZS1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJHN1Ym5hdi1pdGVtLWRpc2FibGVkLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2Utc3VibmF2LWl0ZW0tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXN1Ym5hdi1pdGVtLWhvdmVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zdWJuYXYtaXRlbS1hY3RpdmUtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXN1Ym5hdi1kaXZpZGVyLWJvcmRlcjogJGludmVyc2UtZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRpbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0tYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLWhvdmVyLWJhY2tncm91bmQ6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1ob3Zlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1vbmNsaWNrLWJhY2tncm91bmQ6ICRpbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0taG92ZXItYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0tb25jbGljay1jb2xvcjogJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0tYWN0aXZlLWJhY2tncm91bmQ6ICRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLWFjdGl2ZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zdWJuYXYtaXRlbS1kaXNhYmxlZC1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJHRhYi1tYXJnaW4taG9yaXpvbnRhbDogMjBweCAhZGVmYXVsdDtcbiR0YWItaXRlbS1wYWRkaW5nLWhvcml6b250YWw6IDEwcHggIWRlZmF1bHQ7XG4kdGFiLWl0ZW0tcGFkZGluZy12ZXJ0aWNhbDogNXB4ICFkZWZhdWx0O1xuJHRhYi1pdGVtLWNvbG9yOiAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJHRhYi1pdGVtLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJHRhYi1pdGVtLWhvdmVyLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcbiR0YWItaXRlbS1hY3RpdmUtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kdGFiLWl0ZW0tZGlzYWJsZWQtY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS10YWItaXRlbS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtdGFiLWl0ZW0taG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXRhYi1pdGVtLWFjdGl2ZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtdGFiLWl0ZW0tZGlzYWJsZWQtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1tYXJnaW4tdmVydGljYWw6ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy12ZXJ0aWNhbDogMTZweCAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmctaG9yaXpvbnRhbDogMTJweCAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkZXItY2VsbC1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJHRhYmxlLWhlYWRlci1jZWxsLWZvbnQtd2VpZ2h0OiBub3JtYWwgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZGVyLWNlbGwtY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtZm9vdGVyLWZvbnQtc2l6ZTogJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kdGFibGUtY2FwdGlvbi1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJHRhYmxlLWNhcHRpb24tY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtcm93LWFjdGl2ZS1iYWNrZ3JvdW5kOiAjZmZkICFkZWZhdWx0O1xuJHRhYmxlLWRpdmlkZXItYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1kaXZpZGVyLWJvcmRlcjogI2M0ZDBkOCAhZGVmYXVsdDsvLyRnbG9iYWwtYm9yZGVyICFkZWZhdWx0OyBcbiR0YWJsZS1zdHJpcGVkLXJvdy1iYWNrZ3JvdW5kOiAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItcm93LWJhY2tncm91bmQ6ICR0YWJsZS1yb3ctYWN0aXZlLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kdGFibGUtc21hbGwtY2VsbC1wYWRkaW5nLXZlcnRpY2FsOiAxMHB4ICFkZWZhdWx0O1xuJHRhYmxlLXNtYWxsLWNlbGwtcGFkZGluZy1ob3Jpem9udGFsOiAxMnB4ICFkZWZhdWx0O1xuJHRhYmxlLWxhcmdlLWNlbGwtcGFkZGluZy12ZXJ0aWNhbDogMjJweCAhZGVmYXVsdDtcbiR0YWJsZS1sYXJnZS1jZWxsLXBhZGRpbmctaG9yaXpvbnRhbDogMTJweCAhZGVmYXVsdDtcbiR0YWJsZS1leHBhbmQtbWluLXdpZHRoOiAxNTBweCAhZGVmYXVsdDtcbiRpbnZlcnNlLXRhYmxlLWhlYWRlci1jZWxsLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS10YWJsZS1jYXB0aW9uLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS10YWJsZS1yb3ctYWN0aXZlLWJhY2tncm91bmQ6IGZhZGUtb3V0KCRpbnZlcnNlLWdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kLCAwLjAyKSAhZGVmYXVsdDtcbiRpbnZlcnNlLXRhYmxlLWRpdmlkZXItYm9yZGVyOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGludmVyc2UtdGFibGUtc3RyaXBlZC1yb3ctYmFja2dyb3VuZDogJGludmVyc2UtZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW52ZXJzZS10YWJsZS1ob3Zlci1yb3ctYmFja2dyb3VuZDogJGludmVyc2UtdGFibGUtcm93LWFjdGl2ZS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHRleHQtbGVhZC1mb250LXNpemU6ICRnbG9iYWwtbGFyZ2UtZm9udC1zaXplICFkZWZhdWx0O1xuJHRleHQtbGVhZC1saW5lLWhlaWdodDogMS41ICFkZWZhdWx0O1xuJHRleHQtbGVhZC1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiR0ZXh0LW1ldGEtZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiR0ZXh0LW1ldGEtbGluZS1oZWlnaHQ6IDEuNCAhZGVmYXVsdDtcbiR0ZXh0LW1ldGEtY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kdGV4dC1zbWFsbC1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJHRleHQtc21hbGwtbGluZS1oZWlnaHQ6IDEuNSAhZGVmYXVsdDtcbiR0ZXh0LWxhcmdlLWZvbnQtc2l6ZTogJGdsb2JhbC1sYXJnZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kdGV4dC1sYXJnZS1saW5lLWhlaWdodDogMS41ICFkZWZhdWx0O1xuJHRleHQtbXV0ZWQtY29sb3I6ICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kdGV4dC1lbXBoYXNpcy1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiR0ZXh0LXByaW1hcnktY29sb3I6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHRleHQtc2Vjb25kYXJ5LWNvbG9yOiAkZ2xvYmFsLXNlY29uZGFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHRleHQtc3VjY2Vzcy1jb2xvcjogJGdsb2JhbC1zdWNjZXNzLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kdGV4dC13YXJuaW5nLWNvbG9yOiAkZ2xvYmFsLXdhcm5pbmctYmFja2dyb3VuZCAhZGVmYXVsdDtcbiR0ZXh0LWRhbmdlci1jb2xvcjogJGdsb2JhbC1kYW5nZXItYmFja2dyb3VuZCAhZGVmYXVsdDtcbiR0ZXh0LWJhY2tncm91bmQtY29sb3I6ICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2UtdGV4dC1sZWFkLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS10ZXh0LW1ldGEtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXRleHQtbXV0ZWQtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXRleHQtZW1waGFzaXMtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXRleHQtcHJpbWFyeS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLXRleHQtc2Vjb25kYXJ5LWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHRodW1ibmF2LW1hcmdpbi1ob3Jpem9udGFsOiAxNXB4ICFkZWZhdWx0O1xuJHRodW1ibmF2LW1hcmdpbi12ZXJ0aWNhbDogJHRodW1ibmF2LW1hcmdpbi1ob3Jpem9udGFsICFkZWZhdWx0O1xuJHRpbGUtcGFkZGluZy1ob3Jpem9udGFsOiAxNXB4ICFkZWZhdWx0O1xuJHRpbGUtcGFkZGluZy1ob3Jpem9udGFsLXM6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJHRpbGUtcGFkZGluZy1ob3Jpem9udGFsLW06ICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcbiR0aWxlLXBhZGRpbmctdmVydGljYWw6ICRnbG9iYWwtbWVkaXVtLW1hcmdpbiAhZGVmYXVsdDtcbiR0aWxlLXBhZGRpbmctdmVydGljYWwtbTogJGdsb2JhbC1sYXJnZS1tYXJnaW4gIWRlZmF1bHQ7XG4kdGlsZS14c21hbGwtcGFkZGluZy12ZXJ0aWNhbDogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kdGlsZS1zbWFsbC1wYWRkaW5nLXZlcnRpY2FsOiAkZ2xvYmFsLW1lZGl1bS1tYXJnaW4gIWRlZmF1bHQ7XG4kdGlsZS1sYXJnZS1wYWRkaW5nLXZlcnRpY2FsOiAkZ2xvYmFsLWxhcmdlLW1hcmdpbiAhZGVmYXVsdDtcbiR0aWxlLWxhcmdlLXBhZGRpbmctdmVydGljYWwtbTogJGdsb2JhbC14bGFyZ2UtbWFyZ2luICFkZWZhdWx0O1xuJHRpbGUteGxhcmdlLXBhZGRpbmctdmVydGljYWw6ICRnbG9iYWwteGxhcmdlLW1hcmdpbiAhZGVmYXVsdDtcbiR0aWxlLXhsYXJnZS1wYWRkaW5nLXZlcnRpY2FsLW06ICgkZ2xvYmFsLWxhcmdlLW1hcmdpbiArICRnbG9iYWwteGxhcmdlLW1hcmdpbikgIWRlZmF1bHQ7XG4kdGlsZS1kZWZhdWx0LWJhY2tncm91bmQ6ICRnbG9iYWwtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiR0aWxlLW11dGVkLWJhY2tncm91bmQ6ICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiR0aWxlLXByaW1hcnktYmFja2dyb3VuZDogJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kdGlsZS1wcmltYXJ5LWNvbG9yLW1vZGU6IGxpZ2h0ICFkZWZhdWx0O1xuJHRpbGUtc2Vjb25kYXJ5LWJhY2tncm91bmQ6ICRnbG9iYWwtc2Vjb25kYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kdGlsZS1zZWNvbmRhcnktY29sb3ItbW9kZTogbGlnaHQgIWRlZmF1bHQ7XG4kdG9vbHRpcC16LWluZGV4OiAkZ2xvYmFsLXotaW5kZXggKyAzMCAhZGVmYXVsdDtcbiR0b29sdGlwLW1heC13aWR0aDogMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXZlcnRpY2FsOiAzcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLWhvcml6b250YWw6IDZweCAhZGVmYXVsdDtcbiR0b29sdGlwLWJhY2tncm91bmQ6ICM2NjYgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAycHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJHRvb2x0aXAtZm9udC1zaXplOiAxMnB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAxMHB4ICFkZWZhdWx0O1xuJHRvdG9wLXBhZGRpbmc6IDVweCAhZGVmYXVsdDtcbiR0b3RvcC1jb2xvcjogJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiR0b3RvcC1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiR0b3RvcC1hY3RpdmUtY29sb3I6ICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS10b3RvcC1jb2xvcjogJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtdG90b3AtaG92ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXRvdG9wLWFjdGl2ZS1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3MgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1zY2FsZTogMS4xICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tc2xpZGUtc21hbGwtdHJhbnNsYXRlOiAxMHB4ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tc2xpZGUtbWVkaXVtLXRyYW5zbGF0ZTogNTBweCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLXNsb3ctZHVyYXRpb246IDAuN3MgIWRlZmF1bHQ7XG4kcGFuZWwtc2Nyb2xsYWJsZS1oZWlnaHQ6IDE3MHB4ICFkZWZhdWx0O1xuJHBhbmVsLXNjcm9sbGFibGUtcGFkZGluZzogMTBweCAhZGVmYXVsdDtcbiRwYW5lbC1zY3JvbGxhYmxlLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcGFuZWwtc2Nyb2xsYWJsZS1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGJvcmRlci1yb3VuZGVkLWJvcmRlci1yYWRpdXM6IDVweCAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWR1cmF0aW9uOiAwLjFzICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctYm90dG9tLWhlaWdodDogMzBweCAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWJvdHRvbS1ib3JkZXItcmFkaXVzOiAxMDAlICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctYm90dG9tLWJhY2tncm91bmQ6ICM0NDQgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1ib3R0b20tYmx1cjogMjBweCAhZGVmYXVsdDtcbiRkcm9wY2FwLW1hcmdpbi1yaWdodDogMTBweCAhZGVmYXVsdDtcbiRkcm9wY2FwLWZvbnQtc2l6ZTogKCgkZ2xvYmFsLWxpbmUtaGVpZ2h0ICogMykgKiAxZW0pICFkZWZhdWx0O1xuJGxvZ28tZm9udC1zaXplOiAkZ2xvYmFsLWxhcmdlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRsb2dvLWZvbnQtZmFtaWx5OiAkZ2xvYmFsLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGxvZ28tY29sb3I6ICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kbG9nby1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRkcmFnb3Zlci1ib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDEwMCwxMDAsMTAwLDAuMykgIWRlZmF1bHQ7XG4kaW52ZXJzZS1sb2dvLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1sb2dvLWhvdmVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kZGVwcmVjYXRlZDogZmFsc2UgIWRlZmF1bHQ7XG4kYnJlYWtwb2ludC1zbWFsbDogNjQwcHggIWRlZmF1bHQ7XG4kYnJlYWtwb2ludC1tZWRpdW06IDk2MHB4ICFkZWZhdWx0O1xuJGJyZWFrcG9pbnQtbGFyZ2U6IDEyMDBweCAhZGVmYXVsdDtcbiRicmVha3BvaW50LXhsYXJnZTogMTYwMHB4ICFkZWZhdWx0O1xuJGJyZWFrcG9pbnQteHNtYWxsLW1heDogKCRicmVha3BvaW50LXNtYWxsIC0gMSkgIWRlZmF1bHQ7XG4kYnJlYWtwb2ludC1zbWFsbC1tYXg6ICgkYnJlYWtwb2ludC1tZWRpdW0gLSAxKSAhZGVmYXVsdDtcbiRicmVha3BvaW50LW1lZGl1bS1tYXg6ICgkYnJlYWtwb2ludC1sYXJnZSAtIDEpICFkZWZhdWx0O1xuJGJyZWFrcG9pbnQtbGFyZ2UtbWF4OiAoJGJyZWFrcG9pbnQteGxhcmdlIC0gMSkgIWRlZmF1bHQ7XG4kZ2xvYmFsLXNtYWxsLWJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsMCwwLDAuMDgpICFkZWZhdWx0O1xuJGdsb2JhbC1tZWRpdW0tYm94LXNoYWRvdzogMCA1cHggMTVweCByZ2JhKDAsMCwwLDAuMDgpICFkZWZhdWx0O1xuJGdsb2JhbC1sYXJnZS1ib3gtc2hhZG93OiAwIDE0cHggMjVweCByZ2JhKDAsMCwwLDAuMTYpICFkZWZhdWx0O1xuJGdsb2JhbC14bGFyZ2UtYm94LXNoYWRvdzogMCAyOHB4IDUwcHggcmdiYSgwLDAsMCwwLjE2KSAhZGVmYXVsdDtcbiR3aWR0aC1zbWFsbC13aWR0aDogMTUwcHggIWRlZmF1bHQ7XG4kd2lkdGgtbWVkaXVtLXdpZHRoOiAzMDBweCAhZGVmYXVsdDtcbiR3aWR0aC1sYXJnZS13aWR0aDogNDUwcHggIWRlZmF1bHQ7XG4kd2lkdGgteGxhcmdlLXdpZHRoOiA2MDBweCAhZGVmYXVsdDtcbiR3aWR0aC0yeGxhcmdlLXdpZHRoOiA3NTBweCAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi1tYXJnaW4tbGVmdDogMTBweCAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnRlcm5hbC1hY2NvcmRpb24tb3Blbi1pbWFnZTogXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM0NzdmclMjB3aWR0aCUzRCUyMjEzJTIyJTIwaGVpZ2h0JTNEJTIyMTMlMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAxMyUyMDEzJTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0NyZWN0JTIwZmlsbCUzRCUyMiMwMDAlMjIlMjB3aWR0aCUzRCUyMjEzJTIyJTIwaGVpZ2h0JTNEJTIyMSUyMiUyMHglM0QlMjIwJTIyJTIweSUzRCUyMjYlMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0VcIiAhZGVmYXVsdDtcbiRpbnRlcm5hbC1hY2NvcmRpb24tY2xvc2UtaW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIxMyUyMiUyMGhlaWdodCUzRCUyMjEzJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTMlMjAxMyUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcmVjdCUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwd2lkdGglM0QlMjIxMyUyMiUyMGhlaWdodCUzRCUyMjElMjIlMjB4JTNEJTIyMCUyMiUyMHklM0QlMjI2JTIyJTIwJTJGJTNFJTBBJTIwJTIwJTIwJTIwJTNDcmVjdCUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwd2lkdGglM0QlMjIxJTIyJTIwaGVpZ2h0JTNEJTIyMTMlMjIlMjB4JTNEJTIyNiUyMiUyMHklM0QlMjIwJTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFXCIgIWRlZmF1bHQ7XG4kYWxlcnQtY2xvc2Utb3BhY2l0eTogMC40ICFkZWZhdWx0O1xuJGFsZXJ0LWNsb3NlLWhvdmVyLW9wYWNpdHk6IDAuOCAhZGVmYXVsdDtcbiRhcnRpY2xlLW1ldGEtbGluay1jb2xvcjogJGFydGljbGUtbWV0YS1jb2xvciAhZGVmYXVsdDtcbiRhcnRpY2xlLW1ldGEtbGluay1ob3Zlci1jb2xvcjogJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRiYXNlLWNvZGUtcGFkZGluZy1ob3Jpem9udGFsOiA2cHggIWRlZmF1bHQ7XG4kYmFzZS1jb2RlLXBhZGRpbmctdmVydGljYWw6IDJweCAhZGVmYXVsdDtcbiRiYXNlLWNvZGUtYmFja2dyb3VuZDogJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJhc2UtYmxvY2txdW90ZS1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRiYXNlLWJsb2NrcXVvdGUtZm9vdGVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGJhc2UtcHJlLXBhZGRpbmc6IDEwcHggIWRlZmF1bHQ7XG4kYmFzZS1wcmUtYmFja2dyb3VuZDogJGdsb2JhbC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJhc2UtcHJlLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kYmFzZS1wcmUtYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRiYXNlLXByZS1ib3JkZXItcmFkaXVzOiAzcHggIWRlZmF1bHQ7XG4kaW52ZXJzZS1iYXNlLWJsb2NrcXVvdGUtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJhc2UtYmxvY2txdW90ZS1mb290ZXItY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhZGVmYXVsdDtcbiRidXR0b24tZGVmYXVsdC1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWhvdmVyLWJvcmRlcjogZGFya2VuKCRnbG9iYWwtYm9yZGVyLCAyMCUpICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWFjdGl2ZS1ib3JkZXI6IGRhcmtlbigkZ2xvYmFsLWJvcmRlciwgMzAlKSAhZGVmYXVsdDtcbiRidXR0b24tZGlzYWJsZWQtYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRidXR0b24tdGV4dC1ib3JkZXItd2lkdGg6ICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGJ1dHRvbi10ZXh0LWJvcmRlcjogJGJ1dHRvbi10ZXh0LWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJGNhcmQtaG92ZXItYm94LXNoYWRvdzogJGdsb2JhbC1sYXJnZS1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGNhcmQtZGVmYXVsdC1ib3gtc2hhZG93OiAkZ2xvYmFsLW1lZGl1bS1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGNhcmQtZGVmYXVsdC1ob3Zlci1ib3gtc2hhZG93OiAkZ2xvYmFsLWxhcmdlLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY2FyZC1kZWZhdWx0LWhlYWRlci1ib3JkZXItd2lkdGg6ICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtZGVmYXVsdC1oZWFkZXItYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRjYXJkLWRlZmF1bHQtZm9vdGVyLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY2FyZC1kZWZhdWx0LWZvb3Rlci1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGNhcmQtcHJpbWFyeS1ib3gtc2hhZG93OiAkZ2xvYmFsLW1lZGl1bS1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGNhcmQtcHJpbWFyeS1ob3Zlci1ib3gtc2hhZG93OiAkZ2xvYmFsLWxhcmdlLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY2FyZC1zZWNvbmRhcnktYm94LXNoYWRvdzogJGdsb2JhbC1tZWRpdW0tYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjYXJkLXNlY29uZGFyeS1ob3Zlci1ib3gtc2hhZG93OiAkZ2xvYmFsLWxhcmdlLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY29tbWVudC1wcmltYXJ5LXBhZGRpbmc6ICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGNvbW1lbnQtcHJpbWFyeS1iYWNrZ3JvdW5kOiAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZGVzY3JpcHRpb24tbGlzdC10ZXJtLWZvbnQtc2l6ZTogJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZGVzY3JpcHRpb24tbGlzdC10ZXJtLWZvbnQtd2VpZ2h0OiBub3JtYWwgIWRlZmF1bHQ7XG4kZGVzY3JpcHRpb24tbGlzdC10ZXJtLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kZG90bmF2LWl0ZW0tYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG4kZG90bmF2LWl0ZW0tYm9yZGVyOiByZ2JhKCRnbG9iYWwtY29sb3IsIDAuNCkgIWRlZmF1bHQ7XG4kZG90bmF2LWl0ZW0taG92ZXItYm9yZGVyOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRkb3RuYXYtaXRlbS1vbmNsaWNrLWJvcmRlcjogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kZG90bmF2LWl0ZW0tYWN0aXZlLWJvcmRlcjogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbmF2LWZvbnQtc2l6ZTogJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogMCA1cHggMTJweCByZ2JhKDAsMCwwLDAuMTUpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjogZGFya2VuKCRnbG9iYWwtYm9yZGVyLCAxMCUpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogNTAwcHggIWRlZmF1bHQ7XG4kZm9ybS1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGZvcm0tZm9jdXMtYm9yZGVyOiAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRmb3JtLWRpc2FibGVkLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kZm9ybS1kYW5nZXItYm9yZGVyOiAkZ2xvYmFsLWRhbmdlci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGZvcm0tc3VjY2Vzcy1ib3JkZXI6ICRnbG9iYWwtc3VjY2Vzcy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGZvcm0tYmxhbmstZm9jdXMtYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRmb3JtLWJsYW5rLWZvY3VzLWJvcmRlci1zdHlsZTogZGFzaGVkICFkZWZhdWx0O1xuJGZvcm0tcmFkaW8tYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWJvcmRlcjogZGFya2VuKCRnbG9iYWwtYm9yZGVyLCAxMCUpICFkZWZhdWx0O1xuJGZvcm0tcmFkaW8tZm9jdXMtYm9yZGVyOiAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWNoZWNrZWQtYm9yZGVyOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRmb3JtLXJhZGlvLWRpc2FibGVkLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1jb2xvcjogJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW52ZXJzZS1mb3JtLWxhYmVsLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kbGFiZWwtYm9yZGVyLXJhZGl1czogMnB4ICFkZWZhdWx0O1xuJGxhYmVsLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kbGlzdC1zdHJpcGVkLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1zdHJpcGVkLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kbW9kYWwtY2xvc2UtZnVsbC1wYWRkaW5nOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRtb2RhbC1jbG9zZS1mdWxsLWJhY2tncm91bmQ6ICRtb2RhbC1kaWFsb2ctYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRuYXYtZGVmYXVsdC1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJG5hdmJhci1uYXYtaXRlbS10ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1uYXYtZm9udC1zaXplOiAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tYm94LXNoYWRvdzogMCA1cHggMTJweCByZ2JhKDAsMCwwLDAuMTUpICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wYmFyLWJveC1zaGFkb3c6IDAgNXB4IDdweCByZ2JhKDAsIDAsIDAsIDAuMDUpICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1ncmlkLWRpdmlkZXItYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tZ3JpZC1kaXZpZGVyLWJvcmRlcjogJG5hdmJhci1kcm9wZG93bi1uYXYtZGl2aWRlci1ib3JkZXIgIWRlZmF1bHQ7XG4kcGxhY2Vob2xkZXItYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwbGFjZWhvbGRlci1ib3JkZXI6ICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6IDUwMHB4ICFkZWZhdWx0O1xuJHNlYXJjaC1kZWZhdWx0LWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kc2VhcmNoLWRlZmF1bHQtYm9yZGVyOiAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRzdWJuYXYtaXRlbS1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJHN1Ym5hdi1pdGVtLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kdGFiLWJvcmRlci13aWR0aDogJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGFiLWJvcmRlcjogJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kdGFiLWl0ZW0tYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWItaXRlbS1mb250LXNpemU6ICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJHRhYi1pdGVtLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kdGFiLWl0ZW0tYWN0aXZlLWJvcmRlcjogJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW52ZXJzZS10YWItYm9yZGVyOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYm9yZGVyLXdpZHRoOiAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1zdHJpcGVkLWJvcmRlcjogI2M0ZDBkOCAhZGVmYXVsdDsvLyRnbG9iYWwtYm9yZGVyO1xuJHRleHQtbWV0YS1saW5rLWNvbG9yOiAkdGV4dC1tZXRhLWNvbG9yICFkZWZhdWx0O1xuJHRleHQtbWV0YS1saW5rLWhvdmVyLWNvbG9yOiAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJHRodW1ibmF2LWl0ZW0tYmFja2dyb3VuZDogcmdiYSgkZ2xvYmFsLWJhY2tncm91bmQsIDAuNCkgIWRlZmF1bHQ7XG4kdGh1bWJuYXYtaXRlbS1ob3Zlci1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiR0aHVtYm5hdi1pdGVtLWFjdGl2ZS1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhZGVmYXVsdDsiLCJAbWl4aW4gaG9vay1hY2NvcmRpb24oKXt9XG5AbWl4aW4gaG9vay1hY2NvcmRpb24taXRlbSgpe31cbkBtaXhpbiBob29rLWFjY29yZGlvbi10aXRsZSgpe1xuXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHdpZHRoOiAoJGFjY29yZGlvbi10aXRsZS1saW5lLWhlaWdodCAqIDFlbSk7XG4gICAgICAgIGhlaWdodDogKCRhY2NvcmRpb24tdGl0bGUtbGluZS1oZWlnaHQgKiAxZW0pO1xuICAgICAgICBtYXJnaW4tbGVmdDogJGFjY29yZGlvbi1pY29uLW1hcmdpbi1sZWZ0O1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1hY2NvcmRpb24tY2xvc2UtaW1hZ2UsIFwiIzAwMFwiLCAkYWNjb3JkaW9uLWljb24tY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICAgIH1cblxuICAgIC51ay1vcGVuID4gJjo6YmVmb3JlIHsgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWFjY29yZGlvbi1vcGVuLWltYWdlLCBcIiMwMDBcIiwgJGFjY29yZGlvbi1pY29uLWNvbG9yKTsgfVxuXG59XG5AbWl4aW4gaG9vay1hY2NvcmRpb24tdGl0bGUtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1hY2NvcmRpb24tY29udGVudCgpe31cbkBtaXhpbiBob29rLWFjY29yZGlvbi1taXNjKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1hY2NvcmRpb24taXRlbSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtYWNjb3JkaW9uLXRpdGxlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1hY2NvcmRpb24tdGl0bGUtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC1hY2NvcmRpb24oKXtcblxuICAgIC51ay1hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7IEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1hY2NvcmRpb24tY2xvc2UtaW1hZ2UsIFwiIzAwMFwiLCAkaW52ZXJzZS1nbG9iYWwtY29sb3IpOyB9XG5cbiAgICAudWstb3BlbiA+IC51ay1hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7IEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1hY2NvcmRpb24tb3Blbi1pbWFnZSwgXCIjMDAwXCIsICRpbnZlcnNlLWdsb2JhbC1jb2xvcik7IH1cblxufVxuQG1peGluIGhvb2stYWxlcnQoKXt9XG5AbWl4aW4gaG9vay1hbGVydC1jbG9zZSgpe1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIG9wYWNpdHk6ICRhbGVydC1jbG9zZS1vcGFjaXR5O1xufVxuQG1peGluIGhvb2stYWxlcnQtY2xvc2UtaG92ZXIoKXtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBvcGFjaXR5OiAkYWxlcnQtY2xvc2UtaG92ZXItb3BhY2l0eTtcbn1cbkBtaXhpbiBob29rLWFsZXJ0LXByaW1hcnkoKXt9XG5AbWl4aW4gaG9vay1hbGVydC1zdWNjZXNzKCl7fVxuQG1peGluIGhvb2stYWxlcnQtd2FybmluZygpe31cbkBtaXhpbiBob29rLWFsZXJ0LWRhbmdlcigpe31cbkBtaXhpbiBob29rLWFsZXJ0LW1pc2MoKXtcblxuICAgIC8qXG4gICAgICogQ29udGVudFxuICAgICAqL1xuXG4gICAgLnVrLWFsZXJ0IGgxLFxuICAgIC51ay1hbGVydCBoMixcbiAgICAudWstYWxlcnQgaDMsXG4gICAgLnVrLWFsZXJ0IGg0LFxuICAgIC51ay1hbGVydCBoNSxcbiAgICAudWstYWxlcnQgaDYgeyBjb2xvcjogaW5oZXJpdDsgfVxuXG4gICAgLnVrLWFsZXJ0IGE6bm90KFtjbGFzc10pIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgIC51ay1hbGVydCBhOm5vdChbY2xhc3NdKTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLWFsaWduLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1hbmltYXRpb24tbWlzYygpe31cbkBtaXhpbiBob29rLWFydGljbGUoKXt9XG5AbWl4aW4gaG9vay1hcnRpY2xlLWFkamFjZW50KCl7fVxuQG1peGluIGhvb2stYXJ0aWNsZS10aXRsZSgpe31cbkBtaXhpbiBob29rLWFydGljbGUtbWV0YSgpe1xuXG4gICAgYSB7IGNvbG9yOiAkYXJ0aWNsZS1tZXRhLWxpbmstY29sb3I7IH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGFydGljbGUtbWV0YS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1hcnRpY2xlLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWFydGljbGUtdGl0bGUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWFydGljbGUtbWV0YSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LWFydGljbGUoKXtcblxuICAgIC51ay1hcnRpY2xlLXRpdGxlICB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWFydGljbGUtdGl0bGUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWFydGljbGUtdGl0bGUoKTt9XG4gICAgfVxuXG4gICAgLnVrLWFydGljbGUtbWV0YSAge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtYXJ0aWNsZS1tZXRhLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1hcnRpY2xlLW1ldGEpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWFydGljbGUtbWV0YSgpO31cbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLWJhY2tncm91bmQtbWlzYygpe31cbkBtaXhpbiBob29rLWJhZGdlKCl7fVxuQG1peGluIGhvb2stYmFkZ2UtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1iYWRnZS1taXNjKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1iYWRnZSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtYmFkZ2UtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC1iYWRnZSgpe1xuXG4gICAgLnVrLWJhZGdlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtYmFkZ2UtYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWJhZGdlLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1iYWRnZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYmFkZ2UoKTt9XG4gICAgfVxuXG4gICAgLnVrLWJhZGdlOmhvdmVyLFxuICAgIC51ay1iYWRnZTpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1iYWRnZS1ob3Zlci1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtYmFkZ2UtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJhZGdlLWhvdmVyKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2stYmFzZS1ib2R5KCl7fVxuQG1peGluIGhvb2stYmFzZS1saW5rKCl7fVxuQG1peGluIGhvb2stYmFzZS1saW5rLWhvdmVyKCl7fVxuQG1peGluIGhvb2stYmFzZS1jb2RlKCl7XG4gICAgcGFkZGluZzogJGJhc2UtY29kZS1wYWRkaW5nLXZlcnRpY2FsICRiYXNlLWNvZGUtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGJhY2tncm91bmQ6ICRiYXNlLWNvZGUtYmFja2dyb3VuZDtcbn1cbkBtaXhpbiBob29rLWJhc2UtaGVhZGluZygpe31cbkBtaXhpbiBob29rLWJhc2UtaDEoKXt9XG5AbWl4aW4gaG9vay1iYXNlLWgyKCl7fVxuQG1peGluIGhvb2stYmFzZS1oMygpe31cbkBtaXhpbiBob29rLWJhc2UtaDQoKXt9XG5AbWl4aW4gaG9vay1iYXNlLWg1KCl7fVxuQG1peGluIGhvb2stYmFzZS1oNigpe31cbkBtaXhpbiBob29rLWJhc2UtaHIoKXt9XG5AbWl4aW4gaG9vay1iYXNlLWJsb2NrcXVvdGUoKXtcbiAgICBjb2xvcjogJGJhc2UtYmxvY2txdW90ZS1jb2xvcjtcbn1cbkBtaXhpbiBob29rLWJhc2UtYmxvY2txdW90ZS1mb290ZXIoKXtcblxuICAgIGNvbG9yOiAkYmFzZS1ibG9ja3F1b3RlLWZvb3Rlci1jb2xvcjtcblxuICAgICY6OmJlZm9yZSB7IGNvbnRlbnQ6IFwi4oCUIFwiOyB9XG5cbn1cbkBtaXhpbiBob29rLWJhc2UtcHJlKCl7XG4gICAgcGFkZGluZzogJGJhc2UtcHJlLXBhZGRpbmc7XG4gICAgYm9yZGVyOiAkYmFzZS1wcmUtYm9yZGVyLXdpZHRoIHNvbGlkICRiYXNlLXByZS1ib3JkZXI7XG4gICAgYm9yZGVyLXJhZGl1czogJGJhc2UtcHJlLWJvcmRlci1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogJGJhc2UtcHJlLWJhY2tncm91bmQ7XG59XG5AbWl4aW4gaG9vay1iYXNlLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtbGluaygpe31cbkBtaXhpbiBob29rLWludmVyc2UtYmFzZS1saW5rLWhvdmVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWNvZGUoKXtcbiAgICBiYWNrZ3JvdW5kOiAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtYmFja2dyb3VuZDtcbn1cbkBtaXhpbiBob29rLWludmVyc2UtYmFzZS1oZWFkaW5nKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWgxKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWgyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWgzKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWg0KCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWg1KCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWg2KCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWJsb2NrcXVvdGUoKXsgY29sb3I6ICRpbnZlcnNlLWJhc2UtYmxvY2txdW90ZS1jb2xvcjsgfVxuQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWJsb2NrcXVvdGUtZm9vdGVyKCl7IGNvbG9yOiAkaW52ZXJzZS1iYXNlLWJsb2NrcXVvdGUtZm9vdGVyLWNvbG9yOyB9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtaHIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC1iYXNlKCl7XG5cbiAgICBjb2xvcjogJGludmVyc2UtYmFzZS1jb2xvcjtcblxuICAgIC8vIEJhc2VcbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAgIC8vXG4gICAgLy8gTGlua1xuICAgIC8vXG5cbiAgICBhLFxuICAgIC51ay1saW5rICB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1iYXNlLWxpbmstY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJhc2UtbGluaykpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYmFzZS1saW5rKCk7fVxuICAgIH1cblxuICAgIGE6aG92ZXIsXG4gICAgLnVrLWxpbms6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtYmFzZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1iYXNlLWxpbmstaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJhc2UtbGluay1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIENvZGVcbiAgICAvL1xuXG4gICAgOm5vdChwcmUpID4gY29kZSxcbiAgICA6bm90KHByZSkgPiBrYmQsXG4gICAgOm5vdChwcmUpID4gc2FtcCB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1iYXNlLWNvZGUtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJhc2UtY29kZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYmFzZS1jb2RlKCk7fVxuICAgIH1cblxuICAgIC8vXG4gICAgLy8gRW1waGFzaXplXG4gICAgLy9cblxuICAgIGVtIHsgY29sb3I6ICRpbnZlcnNlLWJhc2UtZW0tY29sb3I7IH1cblxuICAgIC8vXG4gICAgLy8gSGVhZGluZ3NcbiAgICAvL1xuXG4gICAgaDEsIC51ay1oMSxcbiAgICBoMiwgLnVrLWgyLFxuICAgIGgzLCAudWstaDMsXG4gICAgaDQsIC51ay1oNCxcbiAgICBoNSwgLnVrLWg1LFxuICAgIGg2LCAudWstaDYsXG4gICAgLnVrLWhlYWRpbmctc21hbGwsXG4gICAgLnVrLWhlYWRpbmctbWVkaXVtLFxuICAgIC51ay1oZWFkaW5nLWxhcmdlLFxuICAgIC51ay1oZWFkaW5nLXhsYXJnZSxcbiAgICAudWstaGVhZGluZy0yeGxhcmdlIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWJhc2UtaGVhZGluZy1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtYmFzZS1oZWFkaW5nKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1iYXNlLWhlYWRpbmcoKTt9XG4gICAgfVxuXG4gICAgaDEsIC51ay1oMSB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJhc2UtaDEpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJhc2UtaDEoKTt9XG4gICAgfVxuXG4gICAgaDIsIC51ay1oMiB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJhc2UtaDIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJhc2UtaDIoKTt9XG4gICAgfVxuXG4gICAgaDMsIC51ay1oMyB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJhc2UtaDMpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJhc2UtaDMoKTt9XG4gICAgfVxuXG4gICAgaDQsIC51ay1oNCB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJhc2UtaDQpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJhc2UtaDQoKTt9XG4gICAgfVxuXG4gICAgaDUsIC51ay1oNSB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJhc2UtaDUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJhc2UtaDUoKTt9XG4gICAgfVxuXG4gICAgaDYsIC51ay1oNiB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJhc2UtaDYpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJhc2UtaDYoKTt9XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBCbG9ja3F1b3Rlc1xuICAgIC8vXG5cbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtYmFzZS1ibG9ja3F1b3RlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1iYXNlLWJsb2NrcXVvdGUoKTt9XG4gICAgfVxuXG4gICAgYmxvY2txdW90ZSBmb290ZXIge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1iYXNlLWJsb2NrcXVvdGUtZm9vdGVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1iYXNlLWJsb2NrcXVvdGUtZm9vdGVyKCk7fVxuICAgIH1cblxuICAgIC8vXG4gICAgLy8gSG9yaXpvbnRhbCBydWxlc1xuICAgIC8vXG5cbiAgICBociwgLnVrLWhyIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGludmVyc2UtYmFzZS1oci1ib3JkZXI7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJhc2UtaHIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJhc2UtaHIoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1icmVhZGNydW1iKCl7fVxuQG1peGluIGhvb2stYnJlYWRjcnVtYi1pdGVtKCl7fVxuQG1peGluIGhvb2stYnJlYWRjcnVtYi1pdGVtLWhvdmVyKCl7fVxuQG1peGluIGhvb2stYnJlYWRjcnVtYi1pdGVtLWRpc2FibGVkKCl7fVxuQG1peGluIGhvb2stYnJlYWRjcnVtYi1pdGVtLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWJyZWFkY3J1bWItZGl2aWRlcigpe31cbkBtaXhpbiBob29rLWJyZWFkY3J1bWItbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtYnJlYWRjcnVtYi1pdGVtKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1icmVhZGNydW1iLWl0ZW0taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbS1kaXNhYmxlZCgpe31cbkBtaXhpbiBob29rLWludmVyc2UtYnJlYWRjcnVtYi1pdGVtLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtYnJlYWRjcnVtYi1kaXZpZGVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtYnJlYWRjcnVtYigpe1xuXG4gICAgLnVrLWJyZWFkY3J1bWIgPiAqID4gKiB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1icmVhZGNydW1iLWl0ZW0tY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYnJlYWRjcnVtYi1pdGVtKCk7fVxuICAgIH1cblxuICAgIC51ay1icmVhZGNydW1iID4gKiA+IDpob3ZlcixcbiAgICAudWstYnJlYWRjcnVtYiA+ICogPiA6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtYnJlYWRjcnVtYi1pdGVtLWhvdmVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1icmVhZGNydW1iLWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbS1ob3ZlcigpO31cbiAgICB9XG5cblxuICAgIC51ay1icmVhZGNydW1iID4gLnVrLWRpc2FibGVkID4gKiB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbS1kaXNhYmxlZCkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYnJlYWRjcnVtYi1pdGVtLWRpc2FibGVkKCk7fVxuICAgIH1cblxuICAgIC51ay1icmVhZGNydW1iID4gOmxhc3QtY2hpbGQgPiAqIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUoKTt9XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBEaXZpZGVyXG4gICAgLy9cblxuICAgIC51ay1icmVhZGNydW1iID4gOm50aC1jaGlsZChuKzIpOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtYnJlYWRjcnVtYi1kaXZpZGVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1icmVhZGNydW1iLWRpdmlkZXIoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1idXR0b24oKXtcbiAgICB0ZXh0LXRyYW5zZm9ybTogJGJ1dHRvbi10ZXh0LXRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uOiAwLjFzIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yLCBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXItY29sb3I7XG59XG5AbWl4aW4gaG9vay1idXR0b24taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1idXR0b24tZm9jdXMoKXt9XG5AbWl4aW4gaG9vay1idXR0b24tYWN0aXZlKCl7fVxuQG1peGluIGhvb2stYnV0dG9uLWRlZmF1bHQoKXsgYm9yZGVyOiAkYnV0dG9uLWJvcmRlci13aWR0aCBzb2xpZCAkYnV0dG9uLWRlZmF1bHQtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1idXR0b24tZGVmYXVsdC1ob3ZlcigpeyBib3JkZXItY29sb3I6ICRidXR0b24tZGVmYXVsdC1ob3Zlci1ib3JkZXI7IH1cbkBtaXhpbiBob29rLWJ1dHRvbi1kZWZhdWx0LWFjdGl2ZSgpeyBib3JkZXItY29sb3I6ICRidXR0b24tZGVmYXVsdC1hY3RpdmUtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1idXR0b24tcHJpbWFyeSgpeyBib3JkZXI6ICRidXR0b24tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyB9XG5AbWl4aW4gaG9vay1idXR0b24tcHJpbWFyeS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWJ1dHRvbi1wcmltYXJ5LWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWJ1dHRvbi1zZWNvbmRhcnkoKXsgYm9yZGVyOiAkYnV0dG9uLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuQG1peGluIGhvb2stYnV0dG9uLXNlY29uZGFyeS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWJ1dHRvbi1zZWNvbmRhcnktYWN0aXZlKCl7fVxuQG1peGluIGhvb2stYnV0dG9uLWRhbmdlcigpeyBib3JkZXI6ICRidXR0b24tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyB9XG5AbWl4aW4gaG9vay1idXR0b24tZGFuZ2VyLWhvdmVyKCl7fVxuQG1peGluIGhvb2stYnV0dG9uLWRhbmdlci1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1idXR0b24tZGlzYWJsZWQoKXsgYm9yZGVyLWNvbG9yOiAkYnV0dG9uLWRpc2FibGVkLWJvcmRlcjsgfVxuQG1peGluIGhvb2stYnV0dG9uLXNtYWxsKCl7fVxuQG1peGluIGhvb2stYnV0dG9uLWxhcmdlKCl7fVxuQG1peGluIGhvb2stYnV0dG9uLXRleHQoKXtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJGJ1dHRvbi10ZXh0LWJvcmRlci13aWR0aCBzb2xpZCAkYnV0dG9uLXRleHQtYm9yZGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiByaWdodCAwLjNzIGVhc2Utb3V0O1xuICAgIH1cblxufVxuQG1peGluIGhvb2stYnV0dG9uLXRleHQtaG92ZXIoKXtcblxuICAgICY6OmJlZm9yZSB7IHJpZ2h0OiAwOyB9XG5cbn1cbkBtaXhpbiBob29rLWJ1dHRvbi10ZXh0LWRpc2FibGVkKCl7XG5cbiAgICAmOjpiZWZvcmUgeyBkaXNwbGF5OiBub25lOyB9XG5cbn1cbkBtaXhpbiBob29rLWJ1dHRvbi1saW5rKCl7fVxuQG1peGluIGhvb2stYnV0dG9uLW1pc2MoKXtcblxuICAgIC8qIEdyb3VwXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKlxuICAgICAqIENvbGxhcHNlIGJvcmRlclxuICAgICAqL1xuXG4gICAgLnVrLWJ1dHRvbi1ncm91cCA+IC51ay1idXR0b246bnRoLWNoaWxkKG4rMiksXG4gICAgLnVrLWJ1dHRvbi1ncm91cCA+IGRpdjpudGgtY2hpbGQobisyKSAudWstYnV0dG9uIHsgbWFyZ2luLWxlZnQ6ICgtJGJ1dHRvbi1ib3JkZXItd2lkdGgpOyB9XG5cbiAgICAvKlxuICAgICAqIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0IHRvIHN1cGVyaW1wb3NlIHRoZSBzdWNjZXNzb3IgZWxlbWVudHMgYm9yZGVyXG4gICAgICogS25vd24gaXNzdWU6IElmIHlvdSB1c2UgYW4gYGFgIGVsZW1lbnQgYXMgYnV0dG9uIGFuZCBhbiBpY29uIGluc2lkZSxcbiAgICAgKiB0aGUgYWN0aXZlIHN0YXRlIHdpbGwgbm90IHdvcmsgaWYgeW91IGNsaWNrIHRoZSBpY29uIGluc2lkZSB0aGUgYnV0dG9uXG4gICAgICogV29ya2Fyb3VuZDogSnVzdCB1c2UgYSBgYnV0dG9uYCBvciBgaW5wdXRgIGVsZW1lbnQgYXMgYnV0dG9uXG4gICAgICovXG5cbiAgICAudWstYnV0dG9uLWdyb3VwIC51ay1idXR0b246aG92ZXIsXG4gICAgLnVrLWJ1dHRvbi1ncm91cCAudWstYnV0dG9uOmZvY3VzLFxuICAgIC51ay1idXR0b24tZ3JvdXAgLnVrLWJ1dHRvbjphY3RpdmUsXG4gICAgLnVrLWJ1dHRvbi1ncm91cCAudWstYnV0dG9uLnVrLWFjdGl2ZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLWRlZmF1bHQoKXsgYm9yZGVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3I7IH1cbkBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLWRlZmF1bHQtaG92ZXIoKXsgYm9yZGVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3I7IH1cbkBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLWRlZmF1bHQtYWN0aXZlKCl7IGJvcmRlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yOyB9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJ1dHRvbi1wcmltYXJ5KCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tcHJpbWFyeS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLXByaW1hcnktYWN0aXZlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5KCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWhvdmVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLXRleHQoKXtcbiAgICAmOjpiZWZvcmUgeyBib3JkZXItYm90dG9tLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3I7IH1cbn1cbkBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLXRleHQtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWJ1dHRvbi10ZXh0LWRpc2FibGVkKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tbGluaygpe31cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LWJ1dHRvbigpe1xuXG4gICAgLy9cbiAgICAvLyBEZWZhdWx0XG4gICAgLy9cblxuICAgIC51ay1idXR0b24tZGVmYXVsdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1idXR0b24tZGVmYXVsdC1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtYnV0dG9uLWRlZmF1bHQpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJ1dHRvbi1kZWZhdWx0KCk7fVxuICAgIH1cblxuICAgIC51ay1idXR0b24tZGVmYXVsdDpob3ZlcixcbiAgICAudWstYnV0dG9uLWRlZmF1bHQ6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1idXR0b24tZGVmYXVsdC1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGludmVyc2UtYnV0dG9uLWRlZmF1bHQtaG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1idXR0b24tZGVmYXVsdC1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAudWstYnV0dG9uLWRlZmF1bHQ6YWN0aXZlLFxuICAgIC51ay1idXR0b24tZGVmYXVsdC51ay1hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1idXR0b24tZGVmYXVsdC1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtYnV0dG9uLWRlZmF1bHQtYWN0aXZlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1idXR0b24tZGVmYXVsdC1hY3RpdmUoKTt9XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBQcmltYXJ5XG4gICAgLy9cblxuICAgIC51ay1idXR0b24tcHJpbWFyeSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWJ1dHRvbi1wcmltYXJ5LWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1idXR0b24tcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtYnV0dG9uLXByaW1hcnkpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJ1dHRvbi1wcmltYXJ5KCk7fVxuICAgIH1cblxuICAgIC51ay1idXR0b24tcHJpbWFyeTpob3ZlcixcbiAgICAudWstYnV0dG9uLXByaW1hcnk6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1idXR0b24tcHJpbWFyeS1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGludmVyc2UtYnV0dG9uLXByaW1hcnktaG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJ1dHRvbi1wcmltYXJ5LWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1idXR0b24tcHJpbWFyeS1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAudWstYnV0dG9uLXByaW1hcnk6YWN0aXZlLFxuICAgIC51ay1idXR0b24tcHJpbWFyeS51ay1hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1idXR0b24tcHJpbWFyeS1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWJ1dHRvbi1wcmltYXJ5LWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtYnV0dG9uLXByaW1hcnktYWN0aXZlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1idXR0b24tcHJpbWFyeS1hY3RpdmUoKTt9XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBTZWNvbmRhcnlcbiAgICAvL1xuXG4gICAgLnVrLWJ1dHRvbi1zZWNvbmRhcnkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5KSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5KCk7fVxuICAgIH1cblxuICAgIC51ay1idXR0b24tc2Vjb25kYXJ5OmhvdmVyLFxuICAgIC51ay1idXR0b24tc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1ob3Zlci1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAudWstYnV0dG9uLXNlY29uZGFyeTphY3RpdmUsXG4gICAgLnVrLWJ1dHRvbi1zZWNvbmRhcnkudWstYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWJ1dHRvbi1zZWNvbmRhcnktYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUoKTt9XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBUZXh0XG4gICAgLy9cblxuICAgIC51ay1idXR0b24tdGV4dCB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1idXR0b24tdGV4dC1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtYnV0dG9uLXRleHQpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWJ1dHRvbi10ZXh0KCk7fVxuICAgIH1cblxuICAgIC51ay1idXR0b24tdGV4dDpob3ZlcixcbiAgICAudWstYnV0dG9uLXRleHQ6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtYnV0dG9uLXRleHQtaG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJ1dHRvbi10ZXh0LWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1idXR0b24tdGV4dC1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAudWstYnV0dG9uLXRleHQ6ZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtYnV0dG9uLXRleHQtZGlzYWJsZWQtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWJ1dHRvbi10ZXh0LWRpc2FibGVkKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1idXR0b24tdGV4dC1kaXNhYmxlZCgpO31cbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIExpbmtcbiAgICAvL1xuXG4gICAgLnVrLWJ1dHRvbi1saW5rIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWJ1dHRvbi1saW5rLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1idXR0b24tbGluaykpIHtAaW5jbHVkZSBob29rLWludmVyc2UtYnV0dG9uLWxpbmsoKTt9XG4gICAgfVxuXG4gICAgLnVrLWJ1dHRvbi1saW5rOmhvdmVyLFxuICAgIC51ay1idXR0b24tbGluazpmb2N1cyB7IGNvbG9yOiAkaW52ZXJzZS1idXR0b24tbGluay1ob3Zlci1jb2xvcjsgfVxuXG5cbn1cbkBtaXhpbiBob29rLWNhcmQoKXsgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjFzIGVhc2UtaW4tb3V0OyB9XG5AbWl4aW4gaG9vay1jYXJkLWJvZHkoKXt9XG5AbWl4aW4gaG9vay1jYXJkLWhlYWRlcigpe31cbkBtaXhpbiBob29rLWNhcmQtZm9vdGVyKCl7fVxuQG1peGluIGhvb2stY2FyZC1tZWRpYSgpe31cbkBtaXhpbiBob29rLWNhcmQtbWVkaWEtdG9wKCl7fVxuQG1peGluIGhvb2stY2FyZC1tZWRpYS1ib3R0b20oKXt9XG5AbWl4aW4gaG9vay1jYXJkLW1lZGlhLWxlZnQoKXt9XG5AbWl4aW4gaG9vay1jYXJkLW1lZGlhLXJpZ2h0KCl7fVxuQG1peGluIGhvb2stY2FyZC10aXRsZSgpe31cbkBtaXhpbiBob29rLWNhcmQtYmFkZ2UoKXt9XG5AbWl4aW4gaG9vay1jYXJkLWhvdmVyKCl7IGJveC1zaGFkb3c6ICRjYXJkLWhvdmVyLWJveC1zaGFkb3c7IH1cbkBtaXhpbiBob29rLWNhcmQtZGVmYXVsdCgpeyBib3gtc2hhZG93OiAkY2FyZC1kZWZhdWx0LWJveC1zaGFkb3c7IH1cbkBtaXhpbiBob29rLWNhcmQtZGVmYXVsdC10aXRsZSgpe31cbkBtaXhpbiBob29rLWNhcmQtZGVmYXVsdC1ob3ZlcigpeyBib3gtc2hhZG93OiAkY2FyZC1kZWZhdWx0LWhvdmVyLWJveC1zaGFkb3c7IH1cbkBtaXhpbiBob29rLWNhcmQtZGVmYXVsdC1oZWFkZXIoKXsgYm9yZGVyLWJvdHRvbTogJGNhcmQtZGVmYXVsdC1oZWFkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWRlZmF1bHQtaGVhZGVyLWJvcmRlcjsgfVxuQG1peGluIGhvb2stY2FyZC1kZWZhdWx0LWZvb3RlcigpeyBib3JkZXItdG9wOiAkY2FyZC1kZWZhdWx0LWZvb3Rlci1ib3JkZXItd2lkdGggIHNvbGlkICRjYXJkLWRlZmF1bHQtZm9vdGVyLWJvcmRlcjsgfVxuQG1peGluIGhvb2stY2FyZC1wcmltYXJ5KCl7IGJveC1zaGFkb3c6ICRjYXJkLXByaW1hcnktYm94LXNoYWRvdzsgfVxuQG1peGluIGhvb2stY2FyZC1wcmltYXJ5LXRpdGxlKCl7fVxuQG1peGluIGhvb2stY2FyZC1wcmltYXJ5LWhvdmVyKCl7IGJveC1zaGFkb3c6ICRjYXJkLXByaW1hcnktaG92ZXItYm94LXNoYWRvdzsgfVxuQG1peGluIGhvb2stY2FyZC1zZWNvbmRhcnkoKXsgYm94LXNoYWRvdzogJGNhcmQtc2Vjb25kYXJ5LWJveC1zaGFkb3c7IH1cbkBtaXhpbiBob29rLWNhcmQtc2Vjb25kYXJ5LXRpdGxlKCl7fVxuQG1peGluIGhvb2stY2FyZC1zZWNvbmRhcnktaG92ZXIoKXsgYm94LXNoYWRvdzogJGNhcmQtc2Vjb25kYXJ5LWhvdmVyLWJveC1zaGFkb3c7IH1cbkBtaXhpbiBob29rLWNhcmQtbWlzYygpe1xuXG4gICAgLypcbiAgICAgKiBEZWZhdWx0XG4gICAgICovXG5cbiAgICAudWstY2FyZC1ib2R5ID4gLnVrLW5hdi1kZWZhdWx0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgtJGNhcmQtYm9keS1wYWRkaW5nLWhvcml6b250YWwpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICgtJGNhcmQtYm9keS1wYWRkaW5nLWhvcml6b250YWwpO1xuICAgIH1cbiAgICAudWstY2FyZC1ib2R5ID4gLnVrLW5hdi1kZWZhdWx0Om9ubHktY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAoLSRjYXJkLWJvZHktcGFkZGluZy12ZXJ0aWNhbCArIDE1cHgpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAoLSRjYXJkLWJvZHktcGFkZGluZy12ZXJ0aWNhbCArIDE1cHgpO1xuICAgIH1cblxuICAgIC51ay1jYXJkLWJvZHkgPiAudWstbmF2LWRlZmF1bHQgPiBsaSA+IGEsXG4gICAgLnVrLWNhcmQtYm9keSA+IC51ay1uYXYtZGVmYXVsdCAudWstbmF2LWhlYWRlcixcbiAgICAudWstY2FyZC1ib2R5ID4gLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtZGl2aWRlciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGNhcmQtYm9keS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJkLWJvZHktcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIH1cblxuICAgIC51ay1jYXJkLWJvZHkgPiAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgeyBwYWRkaW5nLWxlZnQ6ICRuYXYtc3VibGlzdC1kZWVwZXItcGFkZGluZy1sZWZ0ICsgJGNhcmQtYm9keS1wYWRkaW5nLWhvcml6b250YWw7IH1cblxuXG4gICAgLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAgICAgLnVrLWNhcmQtYm9keSA+IC51ay1uYXYtZGVmYXVsdCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogKC0kY2FyZC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbC1sKTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogKC0kY2FyZC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbC1sKTtcbiAgICAgICAgfVxuICAgICAgICAudWstY2FyZC1ib2R5ID4gLnVrLW5hdi1kZWZhdWx0Om9ubHktY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogKC0kY2FyZC1ib2R5LXBhZGRpbmctdmVydGljYWwtbCArIDE1cHgpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogKC0kY2FyZC1ib2R5LXBhZGRpbmctdmVydGljYWwtbCArIDE1cHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnVrLWNhcmQtYm9keSA+IC51ay1uYXYtZGVmYXVsdCA+IGxpID4gYSxcbiAgICAgICAgLnVrLWNhcmQtYm9keSA+IC51ay1uYXYtZGVmYXVsdCAudWstbmF2LWhlYWRlcixcbiAgICAgICAgLnVrLWNhcmQtYm9keSA+IC51ay1uYXYtZGVmYXVsdCAudWstbmF2LWRpdmlkZXIge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkY2FyZC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbC1sO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGNhcmQtYm9keS1wYWRkaW5nLWhvcml6b250YWwtbDtcbiAgICAgICAgfVxuXG4gICAgICAgIC51ay1jYXJkLWJvZHkgPiAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgeyBwYWRkaW5nLWxlZnQ6ICRuYXYtc3VibGlzdC1kZWVwZXItcGFkZGluZy1sZWZ0ICsgJGNhcmQtYm9keS1wYWRkaW5nLWhvcml6b250YWwtbDsgfVxuXG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBTbWFsbFxuICAgICAqL1xuXG4gICAgLnVrLWNhcmQtc21hbGwgPiAudWstbmF2LWRlZmF1bHQge1xuICAgICAgICBtYXJnaW4tbGVmdDogKC0kY2FyZC1zbWFsbC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbCk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogKC0kY2FyZC1zbWFsbC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbCk7XG4gICAgfVxuICAgIC51ay1jYXJkLXNtYWxsID4gLnVrLW5hdi1kZWZhdWx0Om9ubHktY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAoLSRjYXJkLXNtYWxsLWJvZHktcGFkZGluZy12ZXJ0aWNhbCArIDE1cHgpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAoLSRjYXJkLXNtYWxsLWJvZHktcGFkZGluZy12ZXJ0aWNhbCArIDE1cHgpO1xuICAgIH1cblxuICAgIC51ay1jYXJkLXNtYWxsID4gLnVrLW5hdi1kZWZhdWx0ID4gbGkgPiBhLFxuICAgIC51ay1jYXJkLXNtYWxsID4gLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtaGVhZGVyLFxuICAgIC51ay1jYXJkLXNtYWxsID4gLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtZGl2aWRlciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGNhcmQtc21hbGwtYm9keS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJkLXNtYWxsLWJvZHktcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIH1cblxuICAgIC51ay1jYXJkLXNtYWxsID4gLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIHsgcGFkZGluZy1sZWZ0OiAkbmF2LXN1Ymxpc3QtZGVlcGVyLXBhZGRpbmctbGVmdCArICRjYXJkLXNtYWxsLWJvZHktcGFkZGluZy1ob3Jpem9udGFsOyB9XG5cbiAgICAvKlxuICAgICAqIExhcmdlXG4gICAgICovXG5cbiAgICAvKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgICAgICAudWstY2FyZC1sYXJnZSA+IC51ay1uYXYtZGVmYXVsdCB7IG1hcmdpbjogMDsgfVxuICAgICAgICAudWstY2FyZC1sYXJnZSA+IC51ay1uYXYtZGVmYXVsdDpvbmx5LWNoaWxkIHsgbWFyZ2luOiAwOyB9XG5cbiAgICAgICAgLnVrLWNhcmQtbGFyZ2UgPiAudWstbmF2LWRlZmF1bHQgPiBsaSA+IGEsXG4gICAgICAgIC51ay1jYXJkLWxhcmdlID4gLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtaGVhZGVyLFxuICAgICAgICAudWstY2FyZC1sYXJnZSA+IC51ay1uYXYtZGVmYXVsdCAudWstbmF2LWRpdmlkZXIge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC51ay1jYXJkLWxhcmdlID4gLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIHsgcGFkZGluZy1sZWZ0OiAkbmF2LXN1Ymxpc3QtZGVlcGVyLXBhZGRpbmctbGVmdDsgfVxuXG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1jbG9zZSgpe1xuICAgIHRyYW5zaXRpb246IDAuMXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3IsIG9wYWNpdHk7XG59XG5AbWl4aW4gaG9vay1jbG9zZS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWNsb3NlLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNsb3NlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jbG9zZS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LWNsb3NlKCl7XG5cbiAgICAudWstY2xvc2Uge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtY2xvc2UtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWNsb3NlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1jbG9zZSgpO31cbiAgICB9XG5cbiAgICAudWstY2xvc2U6aG92ZXIsXG4gICAgLnVrLWNsb3NlOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWNsb3NlLWhvdmVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1jbG9zZS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtY2xvc2UtaG92ZXIoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1jb2x1bW4tbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LWNvbHVtbigpe1xuXG4gICAgLnVrLWNvbHVtbi1kaXZpZGVyIHsgY29sdW1uLXJ1bGUtY29sb3I6ICRpbnZlcnNlLWNvbHVtbi1kaXZpZGVyLXJ1bGUtY29sb3I7IH1cblxufVxuQG1peGluIGhvb2stY29tbWVudCgpe31cbkBtaXhpbiBob29rLWNvbW1lbnQtYm9keSgpe31cbkBtaXhpbiBob29rLWNvbW1lbnQtaGVhZGVyKCl7fVxuQG1peGluIGhvb2stY29tbWVudC10aXRsZSgpe31cbkBtaXhpbiBob29rLWNvbW1lbnQtbWV0YSgpe31cbkBtaXhpbiBob29rLWNvbW1lbnQtYXZhdGFyKCl7fVxuQG1peGluIGhvb2stY29tbWVudC1saXN0LWFkamFjZW50KCl7fVxuQG1peGluIGhvb2stY29tbWVudC1saXN0LXN1Yigpe31cbkBtaXhpbiBob29rLWNvbW1lbnQtbGlzdC1zdWItYWRqYWNlbnQoKXt9XG5AbWl4aW4gaG9vay1jb21tZW50LXByaW1hcnkoKXtcbiAgICBwYWRkaW5nOiAkY29tbWVudC1wcmltYXJ5LXBhZGRpbmc7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbW1lbnQtcHJpbWFyeS1iYWNrZ3JvdW5kO1xufVxuQG1peGluIGhvb2stY29tbWVudC1taXNjKCl7fVxuQG1peGluIGhvb2stY29udGFpbmVyLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1jb3VudGRvd24oKXt9XG5AbWl4aW4gaG9vay1jb3VudGRvd24taXRlbSgpe31cbkBtaXhpbiBob29rLWNvdW50ZG93bi1udW1iZXIoKXt9XG5AbWl4aW4gaG9vay1jb3VudGRvd24tc2VwYXJhdG9yKCl7fVxuQG1peGluIGhvb2stY291bnRkb3duLWxhYmVsKCl7fVxuQG1peGluIGhvb2stY291bnRkb3duLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvdW50ZG93bi1pdGVtKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb3VudGRvd24tbnVtYmVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb3VudGRvd24tc2VwYXJhdG9yKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb3VudGRvd24tbGFiZWwoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC1jb3VudGRvd24oKXtcblxuICAgIC51ay1jb3VudGRvd24tbnVtYmVyLFxuICAgIC51ay1jb3VudGRvd24tc2VwYXJhdG9yIHtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtY291bnRkb3duLWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWNvdW50ZG93bi1pdGVtKCk7fVxuICAgIH1cblxuICAgIC51ay1jb3VudGRvd24tbnVtYmVyIHtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtY291bnRkb3duLW51bWJlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtY291bnRkb3duLW51bWJlcigpO31cbiAgICB9XG5cbiAgICAudWstY291bnRkb3duLXNlcGFyYXRvciB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWNvdW50ZG93bi1zZXBhcmF0b3IpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWNvdW50ZG93bi1zZXBhcmF0b3IoKTt9XG4gICAgfVxuXG4gICAgLnVrLWNvdW50ZG93bi1sYWJlbCB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWNvdW50ZG93bi1sYWJlbCkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtY291bnRkb3duLWxhYmVsKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2stY292ZXItbWlzYygpe31cbkBtaXhpbiBob29rLWRlc2NyaXB0aW9uLWxpc3QtdGVybSgpe1xuICAgIGZvbnQtc2l6ZTogJGRlc2NyaXB0aW9uLWxpc3QtdGVybS1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6ICRkZXNjcmlwdGlvbi1saXN0LXRlcm0tZm9udC13ZWlnaHQ7XG4gICAgdGV4dC10cmFuc2Zvcm06ICRkZXNjcmlwdGlvbi1saXN0LXRlcm0tdGV4dC10cmFuc2Zvcm07XG59XG5AbWl4aW4gaG9vay1kZXNjcmlwdGlvbi1saXN0LWRlc2NyaXB0aW9uKCl7fVxuQG1peGluIGhvb2stZGVzY3JpcHRpb24tbGlzdC1kaXZpZGVyLXRlcm0oKXt9XG5AbWl4aW4gaG9vay1kZXNjcmlwdGlvbi1saXN0LW1pc2MoKXt9XG5AbWl4aW4gc3ZnLWZpbGwoJHNyYywgJGNvbG9yLWRlZmF1bHQsICRjb2xvci1uZXcsICRwcm9wZXJ0eTogYmFja2dyb3VuZC1pbWFnZSl7XG5cbiAgICAkZXNjYXBlLWNvbG9yLWRlZmF1bHQ6ICBlc2NhcGUoJGNvbG9yLWRlZmF1bHQpICFkZWZhdWx0O1xuICAgICRlc2NhcGUtY29sb3ItbmV3OiAgZXNjYXBlKFwiI3skY29sb3ItbmV3fVwiKSAhZGVmYXVsdDtcblxuICAgICRkYXRhLXVyaTogIGRhdGEtdXJpKCdpbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgnLCBcIiN7JHNyY31cIikgIWRlZmF1bHQ7XG4gICAgJHJlcGxhY2Utc3JjOiAgcmVwbGFjZShcIiN7JGRhdGEtdXJpfVwiLCBcIiN7JGVzY2FwZS1jb2xvci1kZWZhdWx0fVwiLCBcIiN7JGVzY2FwZS1jb2xvci1uZXd9XCIsIFwiZ1wiKSAhZGVmYXVsdDtcblxuICAgICN7JHByb3BlcnR5fTogdW5xdW90ZSgkcmVwbGFjZS1zcmMpO1xufVxuQG1peGluIGhvb2stZGl2aWRlci1pY29uKCl7fVxuQG1peGluIGhvb2stZGl2aWRlci1pY29uLWxpbmUoKXt9XG5AbWl4aW4gaG9vay1kaXZpZGVyLWljb24tbGluZS1sZWZ0KCl7fVxuQG1peGluIGhvb2stZGl2aWRlci1pY29uLWxpbmUtcmlnaHQoKXt9XG5AbWl4aW4gaG9vay1kaXZpZGVyLXNtYWxsKCl7fVxuQG1peGluIGhvb2stZGl2aWRlci12ZXJ0aWNhbCgpe31cbkBtaXhpbiBob29rLWRpdmlkZXItbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtZGl2aWRlci1pY29uKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1kaXZpZGVyLWljb24tbGluZSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtZGl2aWRlci1zbWFsbCgpe31cbkBtaXhpbiBob29rLWludmVyc2UtZGl2aWRlci12ZXJ0aWNhbCgpe31cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LWRpdmlkZXIoKXtcblxuICAgIC51ay1kaXZpZGVyLWljb24ge1xuICAgICAgICBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtZGl2aWRlci1pY29uLWltYWdlLCBcIiMwMDBcIiwgJGludmVyc2UtZGl2aWRlci1pY29uLWNvbG9yKTtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtZGl2aWRlci1pY29uKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1kaXZpZGVyLWljb24oKTt9XG4gICAgfVxuXG4gICAgLnVrLWRpdmlkZXItaWNvbjo6YmVmb3JlLFxuICAgIC51ay1kaXZpZGVyLWljb246OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGludmVyc2UtZGl2aWRlci1pY29uLWxpbmUtYm9yZGVyO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1kaXZpZGVyLWljb24tbGluZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtZGl2aWRlci1pY29uLWxpbmUoKTt9XG4gICAgfVxuXG4gICAgLnVrLWRpdmlkZXItc21hbGw6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGludmVyc2UtZGl2aWRlci1zbWFsbC1ib3JkZXI7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWRpdmlkZXItc21hbGwpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWRpdmlkZXItc21hbGwoKTt9XG4gICAgfVxuXG4gICAgLnVrLWRpdmlkZXItdmVydGljYWwge1xuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJGludmVyc2UtZGl2aWRlci12ZXJ0aWNhbC1ib3JkZXI7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWRpdmlkZXItdmVydGljYWwpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWRpdmlkZXItdmVydGljYWwoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1kb3RuYXYoKXt9XG5AbWl4aW4gaG9vay1kb3RuYXYtaXRlbSgpe1xuICAgIGJvcmRlcjogJGRvdG5hdi1pdGVtLWJvcmRlci13aWR0aCBzb2xpZCAkZG90bmF2LWl0ZW0tYm9yZGVyO1xuICAgIHRyYW5zaXRpb246IDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuZC1jb2xvciwgYm9yZGVyLWNvbG9yO1xufVxuQG1peGluIGhvb2stZG90bmF2LWl0ZW0taG92ZXIoKXsgYm9yZGVyLWNvbG9yOiAkZG90bmF2LWl0ZW0taG92ZXItYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1kb3RuYXYtaXRlbS1vbmNsaWNrKCl7IGJvcmRlci1jb2xvcjogJGRvdG5hdi1pdGVtLW9uY2xpY2stYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1kb3RuYXYtaXRlbS1hY3RpdmUoKXsgYm9yZGVyLWNvbG9yOiAkZG90bmF2LWl0ZW0tYWN0aXZlLWJvcmRlcjsgfVxuQG1peGluIGhvb2stZG90bmF2LW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWRvdG5hdi1pdGVtKCl7IGJvcmRlci1jb2xvcjogcmdiYSgkaW52ZXJzZS1nbG9iYWwtY29sb3IsIDAuOSk7IH1cbkBtaXhpbiBob29rLWludmVyc2UtZG90bmF2LWl0ZW0taG92ZXIoKXsgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuQG1peGluIGhvb2staW52ZXJzZS1kb3RuYXYtaXRlbS1vbmNsaWNrKCl7IGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbkBtaXhpbiBob29rLWludmVyc2UtZG90bmF2LWl0ZW0tYWN0aXZlKCl7IGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LWRvdG5hdigpe1xuXG4gICAgLnVrLWRvdG5hdiA+ICogPiAqIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtZG90bmF2LWl0ZW0tYmFja2dyb3VuZDtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtZG90bmF2LWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWRvdG5hdi1pdGVtKCk7fVxuICAgIH1cblxuICAgIC51ay1kb3RuYXYgPiAqID4gOmhvdmVyLFxuICAgIC51ay1kb3RuYXYgPiAqID4gOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtZG90bmF2LWl0ZW0taG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtZG90bmF2LWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWRvdG5hdi1pdGVtLWhvdmVyKCk7fVxuICAgIH1cblxuICAgIC51ay1kb3RuYXYgPiAqID4gOmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWRvdG5hdi1pdGVtLW9uY2xpY2stYmFja2dyb3VuZDtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtZG90bmF2LWl0ZW0tb25jbGljaykpIHtAaW5jbHVkZSBob29rLWludmVyc2UtZG90bmF2LWl0ZW0tb25jbGljaygpO31cbiAgICB9XG5cbiAgICAudWstZG90bmF2ID4gLnVrLWFjdGl2ZSA+ICoge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1kb3RuYXYtaXRlbS1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtZG90bmF2LWl0ZW0tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1kb3RuYXYtaXRlbS1hY3RpdmUoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1kcm9wLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1kcm9wZG93bigpeyBib3gtc2hhZG93OiAkZHJvcGRvd24tYm94LXNoYWRvdzsgfVxuQG1peGluIGhvb2stZHJvcGRvd24tbmF2KCl7IGZvbnQtc2l6ZTogJGRyb3Bkb3duLW5hdi1mb250LXNpemU7IH1cbkBtaXhpbiBob29rLWRyb3Bkb3duLW5hdi1pdGVtKCl7fVxuQG1peGluIGhvb2stZHJvcGRvd24tbmF2LWl0ZW0taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1kcm9wZG93bi1uYXYtaGVhZGVyKCl7fVxuQG1peGluIGhvb2stZHJvcGRvd24tbmF2LWRpdmlkZXIoKXt9XG5AbWl4aW4gaG9vay1kcm9wZG93bi1taXNjKCl7fVxuQG1peGluIGhvb2stZmxleC1taXNjKCl7fVxuQG1peGluIGhvb2stZm9ybS1yYW5nZSgpe31cbkBtaXhpbiBob29rLWZvcm0tcmFuZ2UtdGh1bWIoKXsgYm9yZGVyOiAkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItd2lkdGggc29saWQgJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1mb3JtLXJhbmdlLXRyYWNrKCl7IGJvcmRlci1yYWRpdXM6ICRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM7IH1cbkBtaXhpbiBob29rLWZvcm0tcmFuZ2UtdHJhY2stZm9jdXMoKXt9XG5AbWl4aW4gaG9vay1mb3JtLXJhbmdlLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1mb3JtKCl7XG4gICAgYm9yZGVyOiAkZm9ybS1ib3JkZXItd2lkdGggc29saWQgJGZvcm0tYm9yZGVyO1xuICAgIHRyYW5zaXRpb246IDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3IsIGJhY2tncm91bmQtY29sb3IsIGJvcmRlcjtcbn1cbkBtaXhpbiBob29rLWZvcm0tc2luZ2xlLWxpbmUoKXt9XG5AbWl4aW4gaG9vay1mb3JtLW11bHRpLWxpbmUoKXt9XG5AbWl4aW4gaG9vay1mb3JtLWZvY3VzKCl7IGJvcmRlci1jb2xvcjogJGZvcm0tZm9jdXMtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1mb3JtLWRpc2FibGVkKCl7IGJvcmRlci1jb2xvcjogJGZvcm0tZGlzYWJsZWQtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1mb3JtLWRhbmdlcigpeyBib3JkZXItY29sb3I6ICRmb3JtLWRhbmdlci1ib3JkZXI7IH1cbkBtaXhpbiBob29rLWZvcm0tc3VjY2VzcygpeyBib3JkZXItY29sb3I6ICRmb3JtLXN1Y2Nlc3MtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1mb3JtLWJsYW5rKCl7IGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbkBtaXhpbiBob29rLWZvcm0tYmxhbmstZm9jdXMoKXtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWJsYW5rLWZvY3VzLWJvcmRlcjtcbiAgICBib3JkZXItc3R5bGU6ICRmb3JtLWJsYW5rLWZvY3VzLWJvcmRlci1zdHlsZTtcbn1cbkBtaXhpbiBob29rLWZvcm0tcmFkaW8oKXtcbiAgICBib3JkZXI6ICRmb3JtLXJhZGlvLWJvcmRlci13aWR0aCBzb2xpZCAkZm9ybS1yYWRpby1ib3JkZXI7XG4gICAgdHJhbnNpdGlvbjogMC4ycyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLCBib3JkZXI7XG59XG5AbWl4aW4gaG9vay1mb3JtLXJhZGlvLWZvY3VzKCl7IGJvcmRlci1jb2xvcjogJGZvcm0tcmFkaW8tZm9jdXMtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1mb3JtLXJhZGlvLWNoZWNrZWQoKXsgYm9yZGVyLWNvbG9yOiAkZm9ybS1yYWRpby1jaGVja2VkLWJvcmRlcjsgfVxuQG1peGluIGhvb2stZm9ybS1yYWRpby1jaGVja2VkLWZvY3VzKCl7fVxuQG1peGluIGhvb2stZm9ybS1yYWRpby1kaXNhYmxlZCgpeyBib3JkZXItY29sb3I6ICRmb3JtLXJhZGlvLWRpc2FibGVkLWJvcmRlcjsgfVxuQG1peGluIGhvb2stZm9ybS1sZWdlbmQoKXt9XG5AbWl4aW4gaG9vay1mb3JtLWxhYmVsKCl7XG4gICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xufVxuQG1peGluIGhvb2stZm9ybS1zdGFja2VkLWxhYmVsKCl7fVxuQG1peGluIGhvb2stZm9ybS1ob3Jpem9udGFsLWxhYmVsKCl7fVxuQG1peGluIGhvb2stZm9ybS1taXNjKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1mb3JtKCl7IGJvcmRlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWJvcmRlcjsgfVxuQG1peGluIGhvb2staW52ZXJzZS1mb3JtLWZvY3VzKCl7IGJvcmRlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yOyB9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0tcmFkaW8oKXsgYm9yZGVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0tcmFkaW8tZm9jdXMoKXsgYm9yZGVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtY29sb3I7IH1cbkBtaXhpbiBob29rLWludmVyc2UtZm9ybS1yYWRpby1jaGVja2VkKCl7IGJvcmRlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLWNvbG9yOyB9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0tcmFkaW8tY2hlY2tlZC1mb2N1cygpe31cbkBtaXhpbiBob29rLWludmVyc2UtZm9ybS1sYWJlbCgpeyBjb2xvcjogJGludmVyc2UtZm9ybS1sYWJlbC1jb2xvcjsgfVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtZm9ybSgpe1xuXG4gICAgLnVrLWlucHV0LFxuICAgIC51ay1zZWxlY3QsXG4gICAgLnVrLXRleHRhcmVhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtZm9ybS1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGludmVyc2UtZm9ybS1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtZm9ybSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtZm9ybSgpO31cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWZvcm0tZm9jdXMtYmFja2dyb3VuZDtcbiAgICAgICAgICAgIGNvbG9yOiAkaW52ZXJzZS1mb3JtLWZvY3VzLWNvbG9yO1xuICAgICAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtZm9ybS1mb2N1cykpIHtAaW5jbHVkZSBob29rLWludmVyc2UtZm9ybS1mb2N1cygpO31cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vXG4gICAgLy8gUGxhY2Vob2xkZXJcbiAgICAvL1xuXG4gICAgLnVrLWlucHV0OjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogJGludmVyc2UtZm9ybS1wbGFjZWhvbGRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4gICAgLnVrLWlucHV0OjpwbGFjZWhvbGRlciB7IGNvbG9yOiAkaW52ZXJzZS1mb3JtLXBsYWNlaG9sZGVyLWNvbG9yOyB9XG5cbiAgICAudWstdGV4dGFyZWE6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkaW52ZXJzZS1mb3JtLXBsYWNlaG9sZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbiAgICAudWstdGV4dGFyZWE6OnBsYWNlaG9sZGVyIHsgY29sb3I6ICRpbnZlcnNlLWZvcm0tcGxhY2Vob2xkZXItY29sb3I7IH1cblxuICAgIC8vXG4gICAgLy8gU2VsZWN0XG4gICAgLy9cblxuICAgIC51ay1zZWxlY3Q6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pIHsgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWZvcm0tc2VsZWN0LWltYWdlLCBcIiMwMDBcIiwgJGludmVyc2UtZm9ybS1zZWxlY3QtaWNvbi1jb2xvcik7IH1cblxuICAgIC8vXG4gICAgLy8gRGF0YWxpc3RcbiAgICAvL1xuXG4gICAgLnVrLWlucHV0W2xpc3RdOmhvdmVyLFxuICAgIC51ay1pbnB1dFtsaXN0XTpmb2N1cyB7IEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1mb3JtLWRhdGFsaXN0LWltYWdlLCBcIiMwMDBcIiwgJGludmVyc2UtZm9ybS1kYXRhbGlzdC1pY29uLWNvbG9yKTsgfVxuXG4gICAgLy9cbiAgICAvLyBSYWRpbyBhbmQgY2hlY2tib3hcbiAgICAvL1xuXG4gICAgLnVrLXJhZGlvLFxuICAgIC51ay1jaGVja2JveCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWZvcm0tcmFkaW8tYmFja2dyb3VuZDtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtZm9ybS1yYWRpbykpIHtAaW5jbHVkZSBob29rLWludmVyc2UtZm9ybS1yYWRpbygpO31cbiAgICB9XG5cbiAgICAvLyBGb2N1c1xuICAgIC51ay1yYWRpbzpmb2N1cyxcbiAgICAudWstY2hlY2tib3g6Zm9jdXMge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1mb3JtLXJhZGlvLWZvY3VzKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1mb3JtLXJhZGlvLWZvY3VzKCk7fVxuICAgIH1cblxuICAgIC8vIENoZWNrZWRcbiAgICAudWstcmFkaW86Y2hlY2tlZCxcbiAgICAudWstY2hlY2tib3g6Y2hlY2tlZCxcbiAgICAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWZvcm0tcmFkaW8tY2hlY2tlZC1iYWNrZ3JvdW5kO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1mb3JtLXJhZGlvLWNoZWNrZWQpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWZvcm0tcmFkaW8tY2hlY2tlZCgpO31cbiAgICB9XG5cbiAgICAvLyBGb2N1c1xuICAgIC51ay1yYWRpbzpjaGVja2VkOmZvY3VzLFxuICAgIC51ay1jaGVja2JveDpjaGVja2VkOmZvY3VzLFxuICAgIC51ay1jaGVja2JveDppbmRldGVybWluYXRlOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtZm9ybS1yYWRpby1jaGVja2VkLWZvY3VzLWJhY2tncm91bmQ7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWZvcm0tcmFkaW8tY2hlY2tlZC1mb2N1cykpIHtAaW5jbHVkZSBob29rLWludmVyc2UtZm9ybS1yYWRpby1jaGVja2VkLWZvY3VzKCk7fVxuICAgIH1cblxuICAgIC8vIEljb25cbiAgICAudWstcmFkaW86Y2hlY2tlZCB7IEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1mb3JtLXJhZGlvLWltYWdlLCBcIiMwMDBcIiwgJGludmVyc2UtZm9ybS1yYWRpby1jaGVja2VkLWljb24tY29sb3IpOyB9XG4gICAgLnVrLWNoZWNrYm94OmNoZWNrZWQgeyBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtZm9ybS1jaGVja2JveC1pbWFnZSwgXCIjMDAwXCIsICRpbnZlcnNlLWZvcm0tcmFkaW8tY2hlY2tlZC1pY29uLWNvbG9yKTsgfVxuICAgIC51ay1jaGVja2JveDppbmRldGVybWluYXRlIHsgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWZvcm0tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1pbWFnZSwgXCIjMDAwXCIsICRpbnZlcnNlLWZvcm0tcmFkaW8tY2hlY2tlZC1pY29uLWNvbG9yKTsgfVxuXG4gICAgLy8gTGFiZWxcbiAgICAudWstZm9ybS1sYWJlbCB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWZvcm0tbGFiZWwpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWZvcm0tbGFiZWwoKTt9XG4gICAgfVxuXG4gICAgLy8gSWNvblxuICAgIC51ay1mb3JtLWljb24geyBjb2xvcjogJGludmVyc2UtZm9ybS1pY29uLWNvbG9yOyB9XG4gICAgLnVrLWZvcm0taWNvbjpob3ZlciB7IGNvbG9yOiAkaW52ZXJzZS1mb3JtLWljb24taG92ZXItY29sb3I7IH1cblxufVxuQG1peGluIGhvb2stZ3JpZC1taXNjKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtZ3JpZCgpe1xuXG4gICAgLnVrLWdyaWQtZGl2aWRlciA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSB7IGJvcmRlci1sZWZ0LWNvbG9yOiAkaW52ZXJzZS1ncmlkLWRpdmlkZXItYm9yZGVyOyB9XG4gICAgLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luOjpiZWZvcmUgeyBib3JkZXItdG9wLWNvbG9yOiAkaW52ZXJzZS1ncmlkLWRpdmlkZXItYm9yZGVyOyB9XG5cbn1cbkBtaXhpbiBob29rLWhlYWRpbmctc21hbGwoKXt9XG5AbWl4aW4gaG9vay1oZWFkaW5nLW1lZGl1bSgpe31cbkBtaXhpbiBob29rLWhlYWRpbmctbGFyZ2UoKXt9XG5AbWl4aW4gaG9vay1oZWFkaW5nLXhsYXJnZSgpe31cbkBtaXhpbiBob29rLWhlYWRpbmctMnhsYXJnZSgpe31cbkBtaXhpbiBob29rLWhlYWRpbmctcHJpbWFyeSgpe31cbkBtaXhpbiBob29rLWhlYWRpbmctaGVybygpe31cbkBtaXhpbiBob29rLWhlYWRpbmctZGl2aWRlcigpe31cbkBtaXhpbiBob29rLWhlYWRpbmctYnVsbGV0KCl7fVxuQG1peGluIGhvb2staGVhZGluZy1saW5lKCl7fVxuQG1peGluIGhvb2staGVhZGluZy1taXNjKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLXNtYWxsKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLW1lZGl1bSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtaGVhZGluZy1sYXJnZSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtaGVhZGluZy14bGFyZ2UoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWhlYWRpbmctMnhsYXJnZSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtaGVhZGluZy1wcmltYXJ5KCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLWhlcm8oKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWhlYWRpbmctZGl2aWRlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtaGVhZGluZy1idWxsZXQoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWhlYWRpbmctbGluZSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LWhlYWRpbmcoKXtcblxuICAgIC51ay1oZWFkaW5nLXNtYWxsIHtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtaGVhZGluZy1zbWFsbCkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtaGVhZGluZy1zbWFsbCgpO31cbiAgICB9XG5cbiAgICAudWstaGVhZGluZy1tZWRpdW0ge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1oZWFkaW5nLW1lZGl1bSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtaGVhZGluZy1tZWRpdW0oKTt9XG4gICAgfVxuXG4gICAgLnVrLWhlYWRpbmctbGFyZ2Uge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1oZWFkaW5nLWxhcmdlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1oZWFkaW5nLWxhcmdlKCk7fVxuICAgIH1cblxuICAgIC51ay1oZWFkaW5nLXhsYXJnZSB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWhlYWRpbmcteGxhcmdlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1oZWFkaW5nLXhsYXJnZSgpO31cbiAgICB9XG5cbiAgICAudWstaGVhZGluZy0yeGxhcmdlIHtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtaGVhZGluZy0yeGxhcmdlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1oZWFkaW5nLTJ4bGFyZ2UoKTt9XG4gICAgfVxuXG4gICAgQGlmICgkZGVwcmVjYXRlZCA9PSB0cnVlKSB7IC51ay1oZWFkaW5nLXByaW1hcnkgeyBAaWYgKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtaGVhZGluZy1wcmltYXJ5KSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1oZWFkaW5nLXByaW1hcnkoKTt9fX1cblxuICAgIEBpZiAoJGRlcHJlY2F0ZWQgPT0gdHJ1ZSkgeyAudWstaGVhZGluZy1oZXJvIHsgQGlmIChtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWhlYWRpbmctaGVybykpIHtAaW5jbHVkZSBob29rLWludmVyc2UtaGVhZGluZy1oZXJvKCk7fX19XG5cbiAgICAudWstaGVhZGluZy1kaXZpZGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGludmVyc2UtaGVhZGluZy1kaXZpZGVyLWJvcmRlcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtaGVhZGluZy1kaXZpZGVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1oZWFkaW5nLWRpdmlkZXIoKTt9XG4gICAgfVxuXG4gICAgLnVrLWhlYWRpbmctYnVsbGV0OjpiZWZvcmUge1xuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJGludmVyc2UtaGVhZGluZy1idWxsZXQtYm9yZGVyO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1oZWFkaW5nLWJ1bGxldCkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtaGVhZGluZy1idWxsZXQoKTt9XG4gICAgfVxuXG4gICAgLnVrLWhlYWRpbmctbGluZSA+IDo6YmVmb3JlLFxuICAgIC51ay1oZWFkaW5nLWxpbmUgPiA6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGludmVyc2UtaGVhZGluZy1saW5lLWJvcmRlcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtaGVhZGluZy1saW5lKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1oZWFkaW5nLWxpbmUoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1oZWlnaHQtbWlzYygpe31cbkBtaXhpbiBob29rLWljb24tbGluaygpe31cbkBtaXhpbiBob29rLWljb24tbGluay1ob3Zlcigpe31cbkBtaXhpbiBob29rLWljb24tbGluay1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1pY29uLWJ1dHRvbigpe1xuICAgIHRyYW5zaXRpb246IDAuMXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3IsIGJhY2tncm91bmQtY29sb3I7XG59XG5AbWl4aW4gaG9vay1pY29uLWJ1dHRvbi1ob3Zlcigpe31cbkBtaXhpbiBob29rLWljb24tYnV0dG9uLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWljb24tbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtaWNvbi1saW5rKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1pY29uLWxpbmstaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWljb24tbGluay1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWljb24tYnV0dG9uKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1pY29uLWJ1dHRvbi1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtaWNvbi1idXR0b24tYWN0aXZlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtaWNvbigpe1xuXG4gICAgLy9cbiAgICAvLyBMaW5rXG4gICAgLy9cblxuICAgIC51ay1pY29uLWxpbmsge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtaWNvbi1saW5rLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1pY29uLWxpbmspKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWljb24tbGluaygpO31cbiAgICB9XG5cbiAgICAudWstaWNvbi1saW5rOmhvdmVyLFxuICAgIC51ay1pY29uLWxpbms6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtaWNvbi1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1pY29uLWxpbmstaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWljb24tbGluay1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAudWstaWNvbi1saW5rOmFjdGl2ZSxcbiAgICAudWstYWN0aXZlID4gLnVrLWljb24tbGluayB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1pY29uLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1pY29uLWxpbmstYWN0aXZlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1pY29uLWxpbmstYWN0aXZlKCk7fVxuICAgIH1cblxuICAgIC8vXG4gICAgLy8gQnV0dG9uXG4gICAgLy9cblxuICAgIC51ay1pY29uLWJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWljb24tYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1pY29uLWJ1dHRvbi1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtaWNvbi1idXR0b24pKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWljb24tYnV0dG9uKCk7fVxuICAgIH1cblxuICAgIC51ay1pY29uLWJ1dHRvbjpob3ZlcixcbiAgICAudWstaWNvbi1idXR0b246Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1pY29uLWJ1dHRvbi1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGludmVyc2UtaWNvbi1idXR0b24taG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWljb24tYnV0dG9uLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1pY29uLWJ1dHRvbi1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAudWstaWNvbi1idXR0b246YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtaWNvbi1idXR0b24tYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1pY29uLWJ1dHRvbi1hY3RpdmUtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWljb24tYnV0dG9uLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtaWNvbi1idXR0b24tYWN0aXZlKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2staWNvbm5hdigpe31cbkBtaXhpbiBob29rLWljb25uYXYtaXRlbSgpe31cbkBtaXhpbiBob29rLWljb25uYXYtaXRlbS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWljb25uYXYtaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1pY29ubmF2LW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWljb25uYXYtaXRlbSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtaWNvbm5hdi1pdGVtLWhvdmVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1pY29ubmF2LWl0ZW0tYWN0aXZlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtaWNvbm5hdigpe1xuXG4gICAgLnVrLWljb25uYXYgPiAqID4gYSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1pY29ubmF2LWl0ZW0tY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWljb25uYXYtaXRlbSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtaWNvbm5hdi1pdGVtKCk7fVxuICAgIH1cblxuICAgIC51ay1pY29ubmF2ID4gKiA+IGE6aG92ZXIsXG4gICAgLnVrLWljb25uYXYgPiAqID4gYTpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1pY29ubmF2LWl0ZW0taG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWljb25uYXYtaXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtaWNvbm5hdi1pdGVtLWhvdmVyKCk7fVxuICAgIH1cblxuICAgIC51ay1pY29ubmF2ID4gLnVrLWFjdGl2ZSA+IGEge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtaWNvbm5hdi1pdGVtLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtaWNvbm5hdi1pdGVtLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtaWNvbm5hdi1pdGVtLWFjdGl2ZSgpO31cbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LWxpbmsoKXtcblxuICAgIGEudWstbGluay1tdXRlZCxcbiAgICAudWstbGluay1tdXRlZCBhIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWxpbmstbXV0ZWQtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWxpbmstbXV0ZWQpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWxpbmstbXV0ZWQoKTt9XG4gICAgfVxuXG4gICAgYS51ay1saW5rLW11dGVkOmhvdmVyLFxuICAgIC51ay1saW5rLW11dGVkIGE6aG92ZXIsXG4gICAgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLW11dGVkLFxuICAgIC51ay1saW5rLXRvZ2dsZTpmb2N1cyAudWstbGluay1tdXRlZCAge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtbGluay1tdXRlZC1ob3Zlci1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtbGluay1tdXRlZC1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbGluay1tdXRlZC1ob3ZlcigpO31cbiAgICB9XG5cbiAgICBhLnVrLWxpbmstdGV4dDpob3ZlcixcbiAgICAudWstbGluay10ZXh0IGE6aG92ZXIsXG4gICAgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLXRleHQsXG4gICAgLnVrLWxpbmstdG9nZ2xlOmZvY3VzIC51ay1saW5rLXRleHQge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtbGluay10ZXh0LWhvdmVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1saW5rLXRleHQtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWxpbmstdGV4dC1ob3ZlcigpO31cbiAgICB9XG5cbiAgICBhLnVrLWxpbmstaGVhZGluZzpob3ZlcixcbiAgICAudWstbGluay1oZWFkaW5nIGE6aG92ZXIsXG4gICAgLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLWhlYWRpbmcsXG4gICAgLnVrLWxpbmstdG9nZ2xlOmZvY3VzIC51ay1saW5rLWhlYWRpbmcge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtbGluay1oZWFkaW5nLWhvdmVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1saW5rLWhlYWRpbmctaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWxpbmstaGVhZGluZy1ob3ZlcigpO31cbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LWxpc3QoKXtcblxuICAgIC51ay1saXN0LW11dGVkID4gOjpiZWZvcmUgeyBjb2xvcjogJGludmVyc2UtbGlzdC1tdXRlZC1jb2xvciAhaW1wb3J0YW50OyB9XG4gICAgLnVrLWxpc3QtZW1waGFzaXMgPiA6OmJlZm9yZSB7IGNvbG9yOiAkaW52ZXJzZS1saXN0LWVtcGhhc2lzLWNvbG9yICFpbXBvcnRhbnQ7IH1cbiAgICAudWstbGlzdC1wcmltYXJ5ID4gOjpiZWZvcmUgeyBjb2xvcjogJGludmVyc2UtbGlzdC1wcmltYXJ5LWNvbG9yICFpbXBvcnRhbnQ7IH1cbiAgICAudWstbGlzdC1zZWNvbmRhcnkgPiA6OmJlZm9yZSB7IGNvbG9yOiAkaW52ZXJzZS1saXN0LXNlY29uZGFyeS1jb2xvciAhaW1wb3J0YW50OyB9XG5cbiAgICAudWstbGlzdC1idWxsZXQgPiA6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1saXN0LWJ1bGxldC1pbWFnZSwgXCIjMDAwXCIsICRpbnZlcnNlLWxpc3QtYnVsbGV0LWljb24tY29sb3IpO1xuICAgIH1cblxuICAgIC51ay1saXN0LWRpdmlkZXIgPiA6bnRoLWNoaWxkKG4rMikge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkaW52ZXJzZS1saXN0LWRpdmlkZXItYm9yZGVyO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1saXN0LWRpdmlkZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWxpc3QtZGl2aWRlcigpO31cbiAgICB9XG5cbiAgICAudWstbGlzdC1zdHJpcGVkID4gKiB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWxpc3Qtc3RyaXBlZCkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbGlzdC1zdHJpcGVkKCk7fVxuICAgIH1cblxuICAgIC51ay1saXN0LXN0cmlwZWQgPiA6bnRoLW9mLXR5cGUob2RkKSB7IGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWxpc3Qtc3RyaXBlZC1iYWNrZ3JvdW5kOyB9XG5cbn1cbkBtaXhpbiBob29rLWludmVyc2UtY29tcG9uZW50LXRvdG9wKCl7XG5cbiAgICAudWstdG90b3Age1xuICAgICAgICBjb2xvcjogJGludmVyc2UtdG90b3AtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXRvdG9wKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS10b3RvcCgpO31cbiAgICB9XG5cbiAgICAudWstdG90b3A6aG92ZXIsXG4gICAgLnVrLXRvdG9wOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLXRvdG9wLWhvdmVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS10b3RvcC1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtdG90b3AtaG92ZXIoKTt9XG4gICAgfVxuXG4gICAgLnVrLXRvdG9wOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS10b3RvcC1hY3RpdmUtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXRvdG9wLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtdG90b3AtYWN0aXZlKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtbGFiZWwoKXtcblxuICAgIC51ay1sYWJlbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLWxhYmVsLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1sYWJlbC1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtbGFiZWwpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWxhYmVsKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtc2VhcmNoKCl7XG5cbiAgICAvL1xuICAgIC8vIElucHV0XG4gICAgLy9cblxuICAgIC51ay1zZWFyY2gtaW5wdXQgeyBjb2xvcjogJGludmVyc2Utc2VhcmNoLWNvbG9yOyB9XG5cbiAgICAudWstc2VhcmNoLWlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkaW52ZXJzZS1zZWFyY2gtcGxhY2Vob2xkZXItY29sb3IgIWltcG9ydGFudDsgfVxuICAgIC51ay1zZWFyY2gtaW5wdXQ6OnBsYWNlaG9sZGVyIHsgY29sb3I6ICRpbnZlcnNlLXNlYXJjaC1wbGFjZWhvbGRlci1jb2xvcjsgfVxuXG5cbiAgICAvL1xuICAgIC8vIEljb25cbiAgICAvL1xuXG4gICAgLnVrLXNlYXJjaCAudWstc2VhcmNoLWljb24geyBjb2xvcjogJGludmVyc2Utc2VhcmNoLWljb24tY29sb3I7IH1cbiAgICAudWstc2VhcmNoIC51ay1zZWFyY2gtaWNvbjpob3ZlciB7IGNvbG9yOiAkaW52ZXJzZS1zZWFyY2gtaWNvbi1jb2xvcjsgfVxuXG4gICAgLy9cbiAgICAvLyBTdHlsZSBtb2RpZmllclxuICAgIC8vXG5cbiAgICAudWstc2VhcmNoLWRlZmF1bHQgLnVrLXNlYXJjaC1pbnB1dCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLXNlYXJjaC1kZWZhdWx0LWJhY2tncm91bmQ7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXNlYXJjaC1kZWZhdWx0LWlucHV0KSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1zZWFyY2gtZGVmYXVsdC1pbnB1dCgpO31cbiAgICB9XG4gICAgXG4gICAgLnVrLXNlYXJjaC1kZWZhdWx0IC51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1zZWFyY2gtZGVmYXVsdC1mb2N1cy1iYWNrZ3JvdW5kO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1zZWFyY2gtZGVmYXVsdC1pbnB1dC1mb2N1cykpIHtAaW5jbHVkZSBob29rLWludmVyc2Utc2VhcmNoLWRlZmF1bHQtaW5wdXQtZm9jdXMoKTt9XG4gICAgfVxuXG4gICAgLnVrLXNlYXJjaC1uYXZiYXIgLnVrLXNlYXJjaC1pbnB1dCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLXNlYXJjaC1uYXZiYXItYmFja2dyb3VuZDtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2Utc2VhcmNoLW5hdmJhci1pbnB1dCkpIHtAaW5jbHVkZSBob29rLWludmVyc2Utc2VhcmNoLW5hdmJhci1pbnB1dCgpO31cbiAgICB9XG5cbiAgICAudWstc2VhcmNoLWxhcmdlIC51ay1zZWFyY2gtaW5wdXQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1zZWFyY2gtbGFyZ2UtYmFja2dyb3VuZDtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2Utc2VhcmNoLWxhcmdlLWlucHV0KSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1zZWFyY2gtbGFyZ2UtaW5wdXQoKTt9XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBUb2dnbGVcbiAgICAvL1xuXG4gICAgLnVrLXNlYXJjaC10b2dnbGUge1xuICAgICAgICBjb2xvcjogJGludmVyc2Utc2VhcmNoLXRvZ2dsZS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2Utc2VhcmNoLXRvZ2dsZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2Utc2VhcmNoLXRvZ2dsZSgpO31cbiAgICB9XG5cbiAgICAudWstc2VhcmNoLXRvZ2dsZTpob3ZlcixcbiAgICAudWstc2VhcmNoLXRvZ2dsZTpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1zZWFyY2gtdG9nZ2xlLWhvdmVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1zZWFyY2gtdG9nZ2xlLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1zZWFyY2gtdG9nZ2xlLWhvdmVyKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtbmF2KCl7XG5cbiAgICAvL1xuICAgIC8vIFBhcmVudCBpY29uIG1vZGlmaWVyXG4gICAgLy9cblxuICAgIC51ay1uYXYtcGFyZW50LWljb24gPiAudWstcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtbmF2LXBhcmVudC1jbG9zZS1pbWFnZSwgXCIjMDAwXCIsICRpbnZlcnNlLW5hdi1wYXJlbnQtaWNvbi1jb2xvcik7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdi1wYXJlbnQtaWNvbikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbmF2LXBhcmVudC1pY29uKCk7fVxuICAgIH1cblxuICAgIC51ay1uYXYtcGFyZW50LWljb24gPiAudWstcGFyZW50LnVrLW9wZW4gPiBhOjphZnRlciB7IEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1uYXYtcGFyZW50LW9wZW4taW1hZ2UsIFwiIzAwMFwiLCAkaW52ZXJzZS1uYXYtcGFyZW50LWljb24tY29sb3IpOyB9XG5cbiAgICAvL1xuICAgIC8vIERlZmF1bHRcbiAgICAvL1xuXG4gICAgLnVrLW5hdi1kZWZhdWx0ID4gbGkgPiBhIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0tY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0oKTt9XG4gICAgfVxuXG4gICAgLnVrLW5hdi1kZWZhdWx0ID4gbGkgPiBhOmhvdmVyLFxuICAgIC51ay1uYXYtZGVmYXVsdCA+IGxpID4gYTpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1uYXYtZGVmYXVsdC1pdGVtLWhvdmVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1uYXYtZGVmYXVsdC1pdGVtLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1uYXYtZGVmYXVsdC1pdGVtLWhvdmVyKCk7fVxuICAgIH1cblxuICAgIC51ay1uYXYtZGVmYXVsdCA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtbmF2LWRlZmF1bHQtaXRlbS1hY3RpdmUtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1uYXYtZGVmYXVsdC1pdGVtLWFjdGl2ZSgpO31cbiAgICB9XG5cbiAgICAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1oZWFkZXIge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtbmF2LWRlZmF1bHQtaGVhZGVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1uYXYtZGVmYXVsdC1oZWFkZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWhlYWRlcigpO31cbiAgICB9XG5cbiAgICAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1kaXZpZGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGludmVyc2UtbmF2LWRlZmF1bHQtZGl2aWRlci1ib3JkZXI7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWRpdmlkZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWRpdmlkZXIoKTt9XG4gICAgfVxuXG4gICAgLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIGEgeyBjb2xvcjogJGludmVyc2UtbmF2LWRlZmF1bHQtc3VibGlzdC1pdGVtLWNvbG9yOyB9XG5cbiAgICAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgYTpob3ZlcixcbiAgICAudWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgYTpmb2N1cyB7IGNvbG9yOiAkaW52ZXJzZS1uYXYtZGVmYXVsdC1zdWJsaXN0LWl0ZW0taG92ZXItY29sb3I7IH1cblxuICAgIC51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhIHsgY29sb3I6ICRpbnZlcnNlLW5hdi1kZWZhdWx0LXN1Ymxpc3QtaXRlbS1hY3RpdmUtY29sb3I7IH1cblxuICAgIC8vXG4gICAgLy8gUHJpbWFyeVxuICAgIC8vXG5cbiAgICAudWstbmF2LXByaW1hcnkgPiBsaSA+IGEge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtbmF2LXByaW1hcnktaXRlbS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtbmF2LXByaW1hcnktaXRlbSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbmF2LXByaW1hcnktaXRlbSgpO31cbiAgICB9XG5cbiAgICAudWstbmF2LXByaW1hcnkgPiBsaSA+IGE6aG92ZXIsXG4gICAgLnVrLW5hdi1wcmltYXJ5ID4gbGkgPiBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0taG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0taG92ZXIoKTt9XG4gICAgfVxuXG4gICAgLnVrLW5hdi1wcmltYXJ5ID4gbGkudWstYWN0aXZlID4gYSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1uYXYtcHJpbWFyeS1pdGVtLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtbmF2LXByaW1hcnktaXRlbS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0tYWN0aXZlKCk7fVxuICAgIH1cblxuICAgIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LWhlYWRlciB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1uYXYtcHJpbWFyeS1oZWFkZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWhlYWRlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbmF2LXByaW1hcnktaGVhZGVyKCk7fVxuICAgIH1cblxuICAgIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LWRpdmlkZXIge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkaW52ZXJzZS1uYXYtcHJpbWFyeS1kaXZpZGVyLWJvcmRlcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtbmF2LXByaW1hcnktZGl2aWRlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbmF2LXByaW1hcnktZGl2aWRlcigpO31cbiAgICB9XG5cbiAgICAudWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgYSB7IGNvbG9yOiAkaW52ZXJzZS1uYXYtcHJpbWFyeS1zdWJsaXN0LWl0ZW0tY29sb3I7IH1cblxuICAgIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LXN1YiBhOmhvdmVyLFxuICAgIC51ay1uYXYtcHJpbWFyeSAudWstbmF2LXN1YiBhOmZvY3VzIHsgY29sb3I6ICRpbnZlcnNlLW5hdi1wcmltYXJ5LXN1Ymxpc3QtaXRlbS1ob3Zlci1jb2xvcjsgfVxuXG4gICAgLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtc3ViIGxpLnVrLWFjdGl2ZSA+IGEgeyBjb2xvcjogJGludmVyc2UtbmF2LXByaW1hcnktc3VibGlzdC1pdGVtLWFjdGl2ZS1jb2xvcjsgfVxuXG59XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC1uYXZiYXIoKXtcblxuICAgIC51ay1uYXZiYXItbmF2ID4gbGkgPiBhIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLW5hdmJhci1uYXYtaXRlbS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtbmF2YmFyLW5hdi1pdGVtKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0oKTt9XG4gICAgfVxuXG4gICAgLnVrLW5hdmJhci1uYXYgPiBsaTpob3ZlciA+IGEsXG4gICAgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGE6Zm9jdXMsXG4gICAgLnVrLW5hdmJhci1uYXYgPiBsaSA+IGEudWstb3BlbiB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0taG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdmJhci1uYXYtaXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbmF2YmFyLW5hdi1pdGVtLWhvdmVyKCk7fVxuICAgIH1cblxuICAgIC51ay1uYXZiYXItbmF2ID4gbGkgPiBhOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0tb25jbGljay1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtbmF2YmFyLW5hdi1pdGVtLW9uY2xpY2spKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdmJhci1uYXYtaXRlbS1vbmNsaWNrKCk7fVxuICAgIH1cblxuICAgIC51ay1uYXZiYXItbmF2ID4gbGkudWstYWN0aXZlID4gYSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0tYWN0aXZlKCk7fVxuICAgIH1cblxuICAgIC51ay1uYXZiYXItaXRlbSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1uYXZiYXItaXRlbS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtbmF2YmFyLWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdmJhci1pdGVtKCk7fVxuICAgIH1cblxuICAgIC51ay1uYXZiYXItdG9nZ2xlIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLW5hdmJhci10b2dnbGUtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW5hdmJhci10b2dnbGUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLW5hdmJhci10b2dnbGUoKTt9XG4gICAgfVxuXG4gICAgLnVrLW5hdmJhci10b2dnbGU6aG92ZXIsXG4gICAgLnVrLW5hdmJhci10b2dnbGU6Zm9jdXMsXG4gICAgLnVrLW5hdmJhci10b2dnbGUudWstb3BlbiB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1uYXZiYXItdG9nZ2xlLWhvdmVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1uYXZiYXItdG9nZ2xlLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1uYXZiYXItdG9nZ2xlLWhvdmVyKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtc3VibmF2KCl7XG5cbiAgICAudWstc3VibmF2ID4gKiA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1zdWJuYXYtaXRlbS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2Utc3VibmF2LWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXN1Ym5hdi1pdGVtKCk7fVxuICAgIH1cblxuICAgIC51ay1zdWJuYXYgPiAqID4gYTpob3ZlcixcbiAgICAudWstc3VibmF2ID4gKiA+IGE6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJGludmVyc2Utc3VibmF2LWl0ZW0taG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXN1Ym5hdi1pdGVtLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1zdWJuYXYtaXRlbS1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAudWstc3VibmF2ID4gLnVrLWFjdGl2ZSA+IGEge1xuICAgICAgICBjb2xvcjogJGludmVyc2Utc3VibmF2LWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1zdWJuYXYtaXRlbS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXN1Ym5hdi1pdGVtLWFjdGl2ZSgpO31cbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIERpdmlkZXJcbiAgICAvL1xuXG4gICAgLnVrLXN1Ym5hdi1kaXZpZGVyID4gOm50aC1jaGlsZChuKzIpOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRpbnZlcnNlLXN1Ym5hdi1kaXZpZGVyLWJvcmRlcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2Utc3VibmF2LWRpdmlkZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXN1Ym5hdi1kaXZpZGVyKCk7fVxuICAgIH1cblxuICAgIC8vXG4gICAgLy8gUGlsbFxuICAgIC8vXG5cbiAgICAudWstc3VibmF2LXBpbGwgPiAqID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2Utc3VibmF2LXBpbGwtaXRlbSkpIHtAaW5jbHVkZSBob29rLWludmVyc2Utc3VibmF2LXBpbGwtaXRlbSgpO31cbiAgICB9XG5cbiAgICAudWstc3VibmF2LXBpbGwgPiAqID4gYTpob3ZlcixcbiAgICAudWstc3VibmF2LXBpbGwgPiAqID4gYTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0taG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0taG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0taG92ZXIoKTt9XG4gICAgfVxuXG4gICAgLnVrLXN1Ym5hdi1waWxsID4gKiA+IGE6YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1vbmNsaWNrLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLW9uY2xpY2stY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0tb25jbGljaykpIHtAaW5jbHVkZSBob29rLWludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1vbmNsaWNrKCk7fVxuICAgIH1cblxuICAgIC51ay1zdWJuYXYtcGlsbCA+IC51ay1hY3RpdmUgPiBhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1hY3RpdmUoKTt9XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBEaXNhYmxlZFxuICAgIC8vXG5cbiAgICAudWstc3VibmF2ID4gLnVrLWRpc2FibGVkID4gYSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1zdWJuYXYtaXRlbS1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2Utc3VibmF2LWl0ZW0tZGlzYWJsZWQpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXN1Ym5hdi1pdGVtLWRpc2FibGVkKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtcGFnaW5hdGlvbigpe1xuXG4gICAgLnVrLXBhZ2luYXRpb24gPiAqID4gKiB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0tY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXBhZ2luYXRpb24taXRlbSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtcGFnaW5hdGlvbi1pdGVtKCk7fVxuICAgIH1cblxuICAgIC51ay1wYWdpbmF0aW9uID4gKiA+IDpob3ZlcixcbiAgICAudWstcGFnaW5hdGlvbiA+ICogPiA6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtcGFnaW5hdGlvbi1pdGVtLWhvdmVyLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXBhZ2luYXRpb24taXRlbS1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAudWstcGFnaW5hdGlvbiA+IC51ay1hY3RpdmUgPiAqIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLXBhZ2luYXRpb24taXRlbS1hY3RpdmUtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXBhZ2luYXRpb24taXRlbS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXBhZ2luYXRpb24taXRlbS1hY3RpdmUoKTt9XG4gICAgfVxuXG4gICAgLnVrLXBhZ2luYXRpb24gPiAudWstZGlzYWJsZWQgPiAqIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLXBhZ2luYXRpb24taXRlbS1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC10YWIoKXtcblxuICAgIC51ay10YWIge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS10YWIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXRhYigpO31cbiAgICB9XG5cbiAgICAudWstdGFiID4gKiA+IGEge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtdGFiLWl0ZW0tY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXRhYi1pdGVtKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS10YWItaXRlbSgpO31cbiAgICB9XG5cbiAgICAudWstdGFiID4gKiA+IGE6aG92ZXIsXG4gICAgLnVrLXRhYiA+ICogPiBhOmZvY3Vze1xuICAgICAgICBjb2xvcjogJGludmVyc2UtdGFiLWl0ZW0taG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXRhYi1pdGVtLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS10YWItaXRlbS1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAudWstdGFiID4gLnVrLWFjdGl2ZSA+IGEge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtdGFiLWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS10YWItaXRlbS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXRhYi1pdGVtLWFjdGl2ZSgpO31cbiAgICB9XG5cbiAgICAudWstdGFiID4gLnVrLWRpc2FibGVkID4gYSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS10YWItaXRlbS1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtdGFiLWl0ZW0tZGlzYWJsZWQpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXRhYi1pdGVtLWRpc2FibGVkKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtc2xpZGVuYXYoKXtcblxuICAgIC51ay1zbGlkZW5hdiB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1zbGlkZW5hdi1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2Utc2xpZGVuYXYpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXNsaWRlbmF2KCk7fVxuICAgIH1cblxuICAgIC51ay1zbGlkZW5hdjpob3ZlcixcbiAgICAudWstc2xpZGVuYXY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJGludmVyc2Utc2xpZGVuYXYtaG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXNsaWRlbmF2LWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1zbGlkZW5hdi1ob3ZlcigpO31cbiAgICB9XG5cbiAgICAudWstc2xpZGVuYXY6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLXNsaWRlbmF2LWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2Utc2xpZGVuYXYtYWN0aXZlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1zbGlkZW5hdi1hY3RpdmUoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC10ZXh0KCl7XG5cbiAgICAudWstdGV4dC1sZWFkIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLXRleHQtbGVhZC1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtdGV4dC1sZWFkKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS10ZXh0LWxlYWQoKTt9XG4gICAgfVxuXG4gICAgLnVrLXRleHQtbWV0YSB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS10ZXh0LW1ldGEtY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXRleHQtbWV0YSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtdGV4dC1tZXRhKCk7fVxuICAgIH1cblxuICAgIC51ay10ZXh0LW11dGVkIHsgY29sb3I6ICRpbnZlcnNlLXRleHQtbXV0ZWQtY29sb3IgIWltcG9ydGFudDsgfVxuICAgIC51ay10ZXh0LWVtcGhhc2lzIHsgY29sb3I6ICRpbnZlcnNlLXRleHQtZW1waGFzaXMtY29sb3IgIWltcG9ydGFudDsgfVxuICAgIC51ay10ZXh0LXByaW1hcnkgeyBjb2xvcjogJGludmVyc2UtdGV4dC1wcmltYXJ5LWNvbG9yICFpbXBvcnRhbnQ7IH1cbiAgICAudWstdGV4dC1zZWNvbmRhcnkgeyBjb2xvcjogJGludmVyc2UtdGV4dC1zZWNvbmRhcnktY29sb3IgIWltcG9ydGFudDsgfVxuXG59XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC11dGlsaXR5KCl7XG5cbiAgICAudWstZHJvcGNhcDo6Zmlyc3QtbGV0dGVyLFxuICAgIC51ay1kcm9wY2FwIHA6Zmlyc3Qtb2YtdHlwZTo6Zmlyc3QtbGV0dGVyIHtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtZHJvcGNhcCkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtZHJvcGNhcCgpO31cbiAgICB9XG5cbiAgICAudWstbG9nbyB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1sb2dvLWNvbG9yO1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1sb2dvKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS1sb2dvKCk7fVxuICAgIH1cblxuICAgIC51ay1sb2dvOmhvdmVyLFxuICAgIC51ay1sb2dvOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLWxvZ28taG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLWxvZ28taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWxvZ28taG92ZXIoKTt9XG4gICAgfVxuXG4gICAgLnVrLWxvZ28gPiA6bm90KC51ay1sb2dvLWludmVyc2UpOm5vdCg6b25seS1vZi10eXBlKSB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAudWstbG9nby1pbnZlcnNlIHsgZGlzcGxheTogaW5saW5lOyB9XG5cbn1cbkBtaXhpbiBob29rLWludmVyc2UoKXtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LWJhc2UoKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LWxpbmsoKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LWhlYWRpbmcoKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LWRpdmlkZXIoKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LWxpc3QoKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LWljb24oKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LWZvcm0oKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LWJ1dHRvbigpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtZ3JpZCgpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtY2xvc2UoKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LXRvdG9wKCk7XG4gICAgQGluY2x1ZGUgaG9vay1pbnZlcnNlLWNvbXBvbmVudC1iYWRnZSgpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtbGFiZWwoKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LWFydGljbGUoKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LXNlYXJjaCgpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtbmF2KCk7XG4gICAgQGluY2x1ZGUgaG9vay1pbnZlcnNlLWNvbXBvbmVudC1uYXZiYXIoKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LXN1Ym5hdigpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtYnJlYWRjcnVtYigpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtcGFnaW5hdGlvbigpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtdGFiKCk7XG4gICAgQGluY2x1ZGUgaG9vay1pbnZlcnNlLWNvbXBvbmVudC1zbGlkZW5hdigpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtZG90bmF2KCk7XG4gICAgQGluY2x1ZGUgaG9vay1pbnZlcnNlLWNvbXBvbmVudC1hY2NvcmRpb24oKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LWljb25uYXYoKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LXRleHQoKTtcbiAgICBAaW5jbHVkZSBob29rLWludmVyc2UtY29tcG9uZW50LWNvbHVtbigpO1xuICAgIEBpbmNsdWRlIGhvb2staW52ZXJzZS1jb21wb25lbnQtdXRpbGl0eSgpO1xufVxuQG1peGluIGhvb2stbGFiZWwoKXtcbiAgICBib3JkZXItcmFkaXVzOiAkbGFiZWwtYm9yZGVyLXJhZGl1cztcbiAgICB0ZXh0LXRyYW5zZm9ybTogJGxhYmVsLXRleHQtdHJhbnNmb3JtO1xufVxuQG1peGluIGhvb2stbGFiZWwtc3VjY2Vzcygpe31cbkBtaXhpbiBob29rLWxhYmVsLXdhcm5pbmcoKXt9XG5AbWl4aW4gaG9vay1sYWJlbC1kYW5nZXIoKXt9XG5AbWl4aW4gaG9vay1sYWJlbC1taXNjKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1sYWJlbCgpe31cbkBtaXhpbiBob29rLWxlYWRlcigpe31cbkBtaXhpbiBob29rLWxlYWRlci1taXNjKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1sZWFkZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC1sZWFkZXIoKXtcblxuICAgIC51ay1sZWFkZXItZmlsbDo6YWZ0ZXIge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS1sZWFkZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLWxlYWRlcigpO31cbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLWxpZ2h0Ym94KCl7fVxuQG1peGluIGhvb2stbGlnaHRib3gtaXRlbSgpe31cbkBtaXhpbiBob29rLWxpZ2h0Ym94LXRvb2xiYXIoKXt9XG5AbWl4aW4gaG9vay1saWdodGJveC10b29sYmFyLWljb24oKXt9XG5AbWl4aW4gaG9vay1saWdodGJveC10b29sYmFyLWljb24taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1saWdodGJveC1idXR0b24oKXt9XG5AbWl4aW4gaG9vay1saWdodGJveC1idXR0b24taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1saWdodGJveC1idXR0b24tYWN0aXZlKCl7fVxuQG1peGluIGhvb2stbGlnaHRib3gtbWlzYygpe31cbkBtaXhpbiBob29rLWxpbmstbXV0ZWQoKXt9XG5AbWl4aW4gaG9vay1saW5rLW11dGVkLWhvdmVyKCl7fVxuQG1peGluIGhvb2stbGluay10ZXh0KCl7fVxuQG1peGluIGhvb2stbGluay10ZXh0LWhvdmVyKCl7fVxuQG1peGluIGhvb2stbGluay1oZWFkaW5nKCl7fVxuQG1peGluIGhvb2stbGluay1oZWFkaW5nLWhvdmVyKCl7fVxuQG1peGluIGhvb2stbGluay1yZXNldCgpe31cbkBtaXhpbiBob29rLWxpbmstbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtbGluay1tdXRlZCgpe31cbkBtaXhpbiBob29rLWludmVyc2UtbGluay1tdXRlZC1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtbGluay10ZXh0LWhvdmVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1saW5rLWhlYWRpbmctaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1saXN0LWRpdmlkZXIoKXt9XG5AbWl4aW4gaG9vay1saXN0LXN0cmlwZWQoKXtcblxuICAgICY6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgICAgIGJvcmRlci10b3A6ICRsaXN0LXN0cmlwZWQtYm9yZGVyLXdpZHRoIHNvbGlkICRsaXN0LXN0cmlwZWQtYm9yZGVyO1xuICAgICAgICBib3JkZXItYm90dG9tOiAkbGlzdC1zdHJpcGVkLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1zdHJpcGVkLWJvcmRlcjtcbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLWxpc3QtbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtbGlzdC1kaXZpZGVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1saXN0LXN0cmlwZWQoKXtcblxuICAgICY6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1ib3JkZXI7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1ib3JkZXI7XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay1tYXJnaW4tbWlzYygpe31cbkBtaXhpbiBob29rLW1hcmtlcigpe1xuICAgIGJvcmRlci1yYWRpdXM6IDUwMHB4O1xufVxuQG1peGluIGhvb2stbWFya2VyLWhvdmVyKCl7fVxuQG1peGluIGhvb2stbWFya2VyLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW1hcmtlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtbWFya2VyLWhvdmVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtbWFya2VyKCl7XG5cbiAgICAudWstbWFya2VyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGludmVyc2UtbWFya2VyLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1tYXJrZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW1hcmtlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbWFya2VyKCk7fVxuICAgIH1cblxuICAgIC51ay1tYXJrZXI6aG92ZXIsXG4gICAgLnVrLW1hcmtlcjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1tYXJrZXItaG92ZXItY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLW1hcmtlci1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtbWFya2VyLWhvdmVyKCk7fVxuICAgIH1cblxufVxuQG1peGluIGhvb2stbW9kYWwoKXt9XG5AbWl4aW4gaG9vay1tb2RhbC1kaWFsb2coKXt9XG5AbWl4aW4gaG9vay1tb2RhbC1mdWxsKCl7fVxuQG1peGluIGhvb2stbW9kYWwtYm9keSgpe31cbkBtaXhpbiBob29rLW1vZGFsLWhlYWRlcigpeyBib3JkZXItYm90dG9tOiAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlcjsgfVxuQG1peGluIGhvb2stbW9kYWwtZm9vdGVyKCl7IGJvcmRlci10b3A6ICRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1mb290ZXItYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1tb2RhbC10aXRsZSgpe31cbkBtaXhpbiBob29rLW1vZGFsLWNsb3NlKCl7fVxuQG1peGluIGhvb2stbW9kYWwtY2xvc2UtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1tb2RhbC1jbG9zZS1kZWZhdWx0KCl7fVxuQG1peGluIGhvb2stbW9kYWwtY2xvc2UtZGVmYXVsdC1ob3Zlcigpe31cbkBtaXhpbiBob29rLW1vZGFsLWNsb3NlLW91dHNpZGUoKXt9XG5AbWl4aW4gaG9vay1tb2RhbC1jbG9zZS1vdXRzaWRlLWhvdmVyKCl7fVxuQG1peGluIGhvb2stbW9kYWwtY2xvc2UtZnVsbCgpe1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBwYWRkaW5nOiAkbW9kYWwtY2xvc2UtZnVsbC1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQ6ICRtb2RhbC1jbG9zZS1mdWxsLWJhY2tncm91bmQ7XG59XG5AbWl4aW4gaG9vay1tb2RhbC1jbG9zZS1mdWxsLWhvdmVyKCl7fVxuQG1peGluIGhvb2stbW9kYWwtbWlzYygpe31cbkBtaXhpbiBob29rLW5hdi1zdWIoKXt9XG5AbWl4aW4gaG9vay1uYXYtcGFyZW50LWljb24oKXt9XG5AbWl4aW4gaG9vay1uYXYtaGVhZGVyKCl7fVxuQG1peGluIGhvb2stbmF2LWRpdmlkZXIoKXt9XG5AbWl4aW4gaG9vay1uYXYtZGVmYXVsdCgpeyBmb250LXNpemU6ICRuYXYtZGVmYXVsdC1mb250LXNpemU7IH1cbkBtaXhpbiBob29rLW5hdi1kZWZhdWx0LWl0ZW0oKXt9XG5AbWl4aW4gaG9vay1uYXYtZGVmYXVsdC1pdGVtLWhvdmVyKCl7fVxuQG1peGluIGhvb2stbmF2LWRlZmF1bHQtaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1uYXYtZGVmYXVsdC1oZWFkZXIoKXt9XG5AbWl4aW4gaG9vay1uYXYtZGVmYXVsdC1kaXZpZGVyKCl7fVxuQG1peGluIGhvb2stbmF2LXByaW1hcnkoKXt9XG5AbWl4aW4gaG9vay1uYXYtcHJpbWFyeS1pdGVtKCl7fVxuQG1peGluIGhvb2stbmF2LXByaW1hcnktaXRlbS1ob3Zlcigpe31cbkBtaXhpbiBob29rLW5hdi1wcmltYXJ5LWl0ZW0tYWN0aXZlKCl7fVxuQG1peGluIGhvb2stbmF2LXByaW1hcnktaGVhZGVyKCl7fVxuQG1peGluIGhvb2stbmF2LXByaW1hcnktZGl2aWRlcigpe31cbkBtaXhpbiBob29rLW5hdi1taXNjKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1uYXYtcGFyZW50LWljb24oKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0oKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0tYWN0aXZlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1uYXYtZGVmYXVsdC1oZWFkZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWRpdmlkZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0oKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0tYWN0aXZlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1uYXYtcHJpbWFyeS1oZWFkZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWRpdmlkZXIoKXt9XG5AbWl4aW4gaG9vay1uYXZiYXIoKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItY29udGFpbmVyKCl7fVxuQG1peGluIGhvb2stbmF2YmFyLW5hdi1pdGVtKCl7XG4gICAgdGV4dC10cmFuc2Zvcm06ICRuYXZiYXItbmF2LWl0ZW0tdGV4dC10cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbjogMC4xcyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYmFja2dyb3VuZC1jb2xvcjtcbn1cbkBtaXhpbiBob29rLW5hdmJhci1uYXYtaXRlbS1ob3Zlcigpe31cbkBtaXhpbiBob29rLW5hdmJhci1uYXYtaXRlbS1vbmNsaWNrKCl7fVxuQG1peGluIGhvb2stbmF2YmFyLW5hdi1pdGVtLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLW5hdmJhci1pdGVtKCl7fVxuQG1peGluIGhvb2stbmF2YmFyLXRvZ2dsZSgpe31cbkBtaXhpbiBob29rLW5hdmJhci10b2dnbGUtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItdG9nZ2xlLWljb24oKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItdG9nZ2xlLWljb24taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItc3VidGl0bGUoKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItcHJpbWFyeSgpe31cbkBtaXhpbiBob29rLW5hdmJhci10cmFuc3BhcmVudCgpe31cbkBtaXhpbiBob29rLW5hdmJhci1zdGlja3koKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24oKXsgYm94LXNoYWRvdzogJG5hdmJhci1kcm9wZG93bi1ib3gtc2hhZG93OyB9XG5AbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24tZHJvcGJhcigpeyBib3gtc2hhZG93OiBub25lOyB9XG5AbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24tbmF2KCl7IGZvbnQtc2l6ZTogJG5hdmJhci1kcm9wZG93bi1uYXYtZm9udC1zaXplOyB9XG5AbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24tbmF2LWl0ZW0oKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24tbmF2LWl0ZW0taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24tbmF2LWl0ZW0tYWN0aXZlKCl7fVxuQG1peGluIGhvb2stbmF2YmFyLWRyb3Bkb3duLW5hdi1oZWFkZXIoKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24tbmF2LWRpdmlkZXIoKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItZHJvcGJhcigpe31cbkBtaXhpbiBob29rLW5hdmJhci1kcm9wYmFyLXNsaWRlKCl7IGJveC1zaGFkb3c6ICRuYXZiYXItZHJvcGJhci1ib3gtc2hhZG93OyB9XG5AbWl4aW4gaG9vay1uYXZiYXItbWlzYygpe1xuXG4gICAgLypcbiAgICAgKiBOYXZiYXJcbiAgICAgKi9cblxuICAgIC51ay1uYXZiYXItY29udGFpbmVyID4gLnVrLWNvbnRhaW5lciAudWstbmF2YmFyLWxlZnQge1xuICAgICAgICBtYXJnaW4tbGVmdDogKC0kbmF2YmFyLW5hdi1pdGVtLXBhZGRpbmctaG9yaXpvbnRhbCk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogKC0kbmF2YmFyLW5hdi1pdGVtLXBhZGRpbmctaG9yaXpvbnRhbCk7XG4gICAgfVxuICAgIC51ay1uYXZiYXItY29udGFpbmVyID4gLnVrLWNvbnRhaW5lciAudWstbmF2YmFyLXJpZ2h0IHsgbWFyZ2luLXJpZ2h0OiAoLSRuYXZiYXItbmF2LWl0ZW0tcGFkZGluZy1ob3Jpem9udGFsKTsgfVxuXG4gICAgLypcbiAgICAgKiBHcmlkIERpdmlkZXJcbiAgICAgKi9cblxuICAgIC51ay1uYXZiYXItZHJvcGRvd24tZ3JpZCA+ICogeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuICAgIC51ay1uYXZiYXItZHJvcGRvd24tZ3JpZCA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6ICgkbmF2YmFyLWRyb3Bkb3duLWdyaWQtZ3V0dGVyLWhvcml6b250YWwgLyAyKTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6ICRuYXZiYXItZHJvcGRvd24tZ3JpZC1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbmF2YmFyLWRyb3Bkb3duLWdyaWQtZGl2aWRlci1ib3JkZXI7XG4gICAgfVxuXG4gICAgLyogVmVydGljYWwgKi9cbiAgICAudWstbmF2YmFyLWRyb3Bkb3duLWdyaWQudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0oJG5hdmJhci1kcm9wZG93bi1ncmlkLWd1dHRlci12ZXJ0aWNhbCAvIDIpO1xuICAgICAgICBsZWZ0OiAkbmF2YmFyLWRyb3Bkb3duLWdyaWQtZ3V0dGVyLWhvcml6b250YWw7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3JkZXItdG9wOiAkbmF2YmFyLWRyb3Bkb3duLWdyaWQtZGl2aWRlci1ib3JkZXItd2lkdGggc29saWQgJG5hdmJhci1kcm9wZG93bi1ncmlkLWRpdmlkZXItYm9yZGVyO1xuICAgIH1cblxufVxuQG1peGluIGhvb2staW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0oKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdmJhci1uYXYtaXRlbS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtbmF2YmFyLW5hdi1pdGVtLW9uY2xpY2soKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdmJhci1uYXYtaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLW5hdmJhci1pdGVtKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1uYXZiYXItdG9nZ2xlKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1uYXZiYXItdG9nZ2xlLWhvdmVyKCl7fVxuQG1peGluIGhvb2stbm90aWZpY2F0aW9uKCl7fVxuQG1peGluIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2UoKXt9XG5AbWl4aW4gaG9vay1ub3RpZmljYXRpb24tY2xvc2UoKXt9XG5AbWl4aW4gaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZS1wcmltYXJ5KCl7fVxuQG1peGluIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2Utc3VjY2Vzcygpe31cbkBtaXhpbiBob29rLW5vdGlmaWNhdGlvbi1tZXNzYWdlLXdhcm5pbmcoKXt9XG5AbWl4aW4gaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZS1kYW5nZXIoKXt9XG5AbWl4aW4gaG9vay1ub3RpZmljYXRpb24tbWlzYygpe31cbkBtaXhpbiBob29rLW9mZmNhbnZhcy1iYXIoKXt9XG5AbWl4aW4gaG9vay1vZmZjYW52YXMtY2xvc2UoKXt9XG5AbWl4aW4gaG9vay1vZmZjYW52YXMtb3ZlcmxheSgpe31cbkBtaXhpbiBob29rLW9mZmNhbnZhcy1taXNjKCl7fVxuQG1peGluIGhvb2stb3ZlcmxheSgpe31cbkBtaXhpbiBob29rLW92ZXJsYXktaWNvbigpe31cbkBtaXhpbiBob29rLW92ZXJsYXktZGVmYXVsdCgpe31cbkBtaXhpbiBob29rLW92ZXJsYXktcHJpbWFyeSgpe31cbkBtaXhpbiBob29rLW92ZXJsYXktbWlzYygpe31cbkBtaXhpbiBob29rLXBhZGRpbmctbWlzYygpe31cbkBtaXhpbiBob29rLXBhZ2luYXRpb24oKXt9XG5AbWl4aW4gaG9vay1wYWdpbmF0aW9uLWl0ZW0oKXsgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlLWluLW91dDsgfVxuQG1peGluIGhvb2stcGFnaW5hdGlvbi1pdGVtLWhvdmVyKCl7fVxuQG1peGluIGhvb2stcGFnaW5hdGlvbi1pdGVtLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLXBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCgpe31cbkBtaXhpbiBob29rLXBhZ2luYXRpb24tbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtcGFnaW5hdGlvbi1pdGVtKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXBhZ2luYXRpb24taXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCgpe31cbkBtaXhpbiBob29rLXBsYWNlaG9sZGVyKCl7IGJvcmRlcjogJHBsYWNlaG9sZGVyLWJvcmRlci13aWR0aCBkYXNoZWQgJHBsYWNlaG9sZGVyLWJvcmRlcjsgfVxuQG1peGluIGhvb2stcGxhY2Vob2xkZXItbWlzYygpe31cbkBtaXhpbiBob29rLXBvc2l0aW9uLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1wcmludCgpe31cbkBtaXhpbiBob29rLXByb2dyZXNzKCl7XG4gICAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLWJvcmRlci1yYWRpdXM7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbkBtaXhpbiBob29rLXByb2dyZXNzLWJhcigpe31cbkBtaXhpbiBob29rLXByb2dyZXNzLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1zZWFyY2gtaW5wdXQoKXt9XG5AbWl4aW4gaG9vay1zZWFyY2gtZGVmYXVsdC1pbnB1dCgpeyBib3JkZXI6ICRzZWFyY2gtZGVmYXVsdC1ib3JkZXItd2lkdGggc29saWQgJHNlYXJjaC1kZWZhdWx0LWJvcmRlcjsgfVxuQG1peGluIGhvb2stc2VhcmNoLWRlZmF1bHQtaW5wdXQtZm9jdXMoKXt9XG5AbWl4aW4gaG9vay1zZWFyY2gtbmF2YmFyLWlucHV0KCl7fVxuQG1peGluIGhvb2stc2VhcmNoLWxhcmdlLWlucHV0KCl7fVxuQG1peGluIGhvb2stc2VhcmNoLXRvZ2dsZSgpe31cbkBtaXhpbiBob29rLXNlYXJjaC10b2dnbGUtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1zZWFyY2gtbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2Utc2VhcmNoLWRlZmF1bHQtaW5wdXQoKXsgYm9yZGVyLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC1kZWZhdWx0LWlucHV0LWZvY3VzKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1zZWFyY2gtbmF2YmFyLWlucHV0KCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1zZWFyY2gtbGFyZ2UtaW5wdXQoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC10b2dnbGUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC10b2dnbGUtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1zZWN0aW9uKCl7fVxuQG1peGluIGhvb2stc2VjdGlvbi1kZWZhdWx0KCl7fVxuQG1peGluIGhvb2stc2VjdGlvbi1tdXRlZCgpe31cbkBtaXhpbiBob29rLXNlY3Rpb24tcHJpbWFyeSgpe31cbkBtaXhpbiBob29rLXNlY3Rpb24tc2Vjb25kYXJ5KCl7fVxuQG1peGluIGhvb2stc2VjdGlvbi1vdmVybGFwKCl7fVxuQG1peGluIGhvb2stc2VjdGlvbi1taXNjKCl7fVxuQG1peGluIGhvb2stc2xpZGVuYXYoKXsgdHJhbnNpdGlvbjogY29sb3IgMC4xcyBlYXNlLWluLW91dDsgfVxuQG1peGluIGhvb2stc2xpZGVuYXYtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1zbGlkZW5hdi1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1zbGlkZW5hdi1wcmV2aW91cygpe31cbkBtaXhpbiBob29rLXNsaWRlbmF2LW5leHQoKXt9XG5AbWl4aW4gaG9vay1zbGlkZW5hdi1sYXJnZSgpe31cbkBtaXhpbiBob29rLXNsaWRlbmF2LWNvbnRhaW5lcigpe31cbkBtaXhpbiBob29rLXNsaWRlbmF2LW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXNsaWRlbmF2KCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1zbGlkZW5hdi1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2Utc2xpZGVuYXYtYWN0aXZlKCl7fVxuQG1peGluIGhvb2stc2xpZGVyKCl7fVxuQG1peGluIGhvb2stc2xpZGVyLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1zbGlkZXNob3coKXt9XG5AbWl4aW4gaG9vay1zbGlkZXNob3ctbWlzYygpe31cbkBtaXhpbiBob29rLXNvcnRhYmxlKCl7fVxuQG1peGluIGhvb2stc29ydGFibGUtZHJhZygpe31cbkBtaXhpbiBob29rLXNvcnRhYmxlLXBsYWNlaG9sZGVyKCl7fVxuQG1peGluIGhvb2stc29ydGFibGUtZW1wdHkoKXt9XG5AbWl4aW4gaG9vay1zb3J0YWJsZS1taXNjKCl7fVxuQG1peGluIGhvb2stc3Bpbm5lcigpe31cbkBtaXhpbiBob29rLXNwaW5uZXItbWlzYygpe31cbkBtaXhpbiBob29rLXN0aWNreS1taXNjKCl7fVxuQG1peGluIGhvb2stc3VibmF2KCl7fVxuQG1peGluIGhvb2stc3VibmF2LWl0ZW0oKXtcbiAgICBmb250LXNpemU6ICRzdWJuYXYtaXRlbS1mb250LXNpemU7XG4gICAgdGV4dC10cmFuc2Zvcm06ICRzdWJuYXYtaXRlbS10ZXh0LXRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uOiAwLjFzIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yLCBiYWNrZ3JvdW5kLWNvbG9yO1xufVxuQG1peGluIGhvb2stc3VibmF2LWl0ZW0taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1zdWJuYXYtaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1zdWJuYXYtZGl2aWRlcigpe31cbkBtaXhpbiBob29rLXN1Ym5hdi1waWxsLWl0ZW0oKXt9XG5AbWl4aW4gaG9vay1zdWJuYXYtcGlsbC1pdGVtLWhvdmVyKCl7fVxuQG1peGluIGhvb2stc3VibmF2LXBpbGwtaXRlbS1vbmNsaWNrKCl7fVxuQG1peGluIGhvb2stc3VibmF2LXBpbGwtaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1zdWJuYXYtaXRlbS1kaXNhYmxlZCgpe31cbkBtaXhpbiBob29rLXN1Ym5hdi1taXNjKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtaXRlbSgpe31cbkBtaXhpbiBob29rLWludmVyc2Utc3VibmF2LWl0ZW0taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXN1Ym5hdi1pdGVtLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWludmVyc2Utc3VibmF2LWRpdmlkZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0oKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0tb25jbGljaygpe31cbkBtaXhpbiBob29rLWludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXN1Ym5hdi1pdGVtLWRpc2FibGVkKCl7fVxuQG1peGluIGhvb2stc3ZnLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1zd2l0Y2hlci1taXNjKCl7fVxuQG1peGluIGhvb2stdGFiKCl7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogJHRhYi1tYXJnaW4taG9yaXpvbnRhbDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICR0YWItYm9yZGVyLXdpZHRoIHNvbGlkICR0YWItYm9yZGVyO1xuICAgIH1cblxufVxuQG1peGluIGhvb2stdGFiLWl0ZW0oKXtcbiAgICBib3JkZXItYm90dG9tOiAkdGFiLWl0ZW0tYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGZvbnQtc2l6ZTogJHRhYi1pdGVtLWZvbnQtc2l6ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogJHRhYi1pdGVtLXRleHQtdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZS1pbi1vdXQ7XG59XG5AbWl4aW4gaG9vay10YWItaXRlbS1ob3Zlcigpe31cbkBtaXhpbiBob29rLXRhYi1pdGVtLWFjdGl2ZSgpeyBib3JkZXItY29sb3I6ICR0YWItaXRlbS1hY3RpdmUtYm9yZGVyOyB9XG5AbWl4aW4gaG9vay10YWItaXRlbS1kaXNhYmxlZCgpe31cbkBtaXhpbiBob29rLXRhYi1ib3R0b20oKXtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgIH1cblxufVxuQG1peGluIGhvb2stdGFiLWJvdHRvbS1pdGVtKCl7XG4gICAgYm9yZGVyLXRvcDogJHRhYi1pdGVtLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xufVxuQG1peGluIGhvb2stdGFiLWxlZnQoKXtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6ICR0YWItYm9yZGVyLXdpZHRoIHNvbGlkICR0YWItYm9yZGVyO1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIH1cblxufVxuQG1peGluIGhvb2stdGFiLXJpZ2h0KCl7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlci1sZWZ0OiAkdGFiLWJvcmRlci13aWR0aCBzb2xpZCAkdGFiLWJvcmRlcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLXRhYi1sZWZ0LWl0ZW0oKXtcbiAgICBib3JkZXItcmlnaHQ6ICR0YWItaXRlbS1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbkBtaXhpbiBob29rLXRhYi1yaWdodC1pdGVtKCl7XG4gICAgYm9yZGVyLWxlZnQ6ICR0YWItaXRlbS1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbkBtaXhpbiBob29rLXRhYi1taXNjKCl7XG5cbiAgICAudWstdGFiIC51ay1kcm9wZG93biB7IG1hcmdpbi1sZWZ0OiAoJHRhYi1tYXJnaW4taG9yaXpvbnRhbCArICR0YWItaXRlbS1wYWRkaW5nLWhvcml6b250YWwpIH1cblxufVxuQG1peGluIGhvb2staW52ZXJzZS10YWIoKXtcblxuICAgICY6OmJlZm9yZSB7IGJvcmRlci1jb2xvcjogJGludmVyc2UtdGFiLWJvcmRlcjsgfVxuXG59XG5AbWl4aW4gaG9vay1pbnZlcnNlLXRhYi1pdGVtKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS10YWItaXRlbS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtdGFiLWl0ZW0tYWN0aXZlKCl7IGJvcmRlci1jb2xvcjogJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZDsgfVxuQG1peGluIGhvb2staW52ZXJzZS10YWItaXRlbS1kaXNhYmxlZCgpe31cbkBtaXhpbiBob29rLXRhYmxlKCl7fVxuQG1peGluIGhvb2stdGFibGUtaGVhZGVyLWNlbGwoKXsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuQG1peGluIGhvb2stdGFibGUtY2VsbCgpe31cbkBtaXhpbiBob29rLXRhYmxlLWZvb3Rlcigpe31cbkBtaXhpbiBob29rLXRhYmxlLWNhcHRpb24oKXt9XG5AbWl4aW4gaG9vay10YWJsZS1kaXZpZGVyKCl7fVxuQG1peGluIGhvb2stdGFibGUtc3RyaXBlZCgpe1xuICAgIGJvcmRlci10b3A6ICR0YWJsZS1zdHJpcGVkLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtc3RyaXBlZC1ib3JkZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogJHRhYmxlLXN0cmlwZWQtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1zdHJpcGVkLWJvcmRlcjtcbn1cbkBtaXhpbiBob29rLXRhYmxlLWhvdmVyKCl7fVxuQG1peGluIGhvb2stdGFibGUtcm93LWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLXRhYmxlLXNtYWxsKCl7fVxuQG1peGluIGhvb2stdGFibGUtbGFyZ2UoKXt9XG5AbWl4aW4gaG9vay10YWJsZS1taXNjKCl7XG5cbiAgICAudWstdGFibGUgdGJvZHkgdHIgeyB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXMgbGluZWFyOyB9XG5cbn1cbkBtaXhpbiBob29rLWludmVyc2UtdGFibGUtaGVhZGVyLWNlbGwoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLWNhcHRpb24oKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLXJvdy1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLWRpdmlkZXIoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLXN0cmlwZWQoKXtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRpbnZlcnNlLWdsb2JhbC1ib3JkZXI7XG59XG5AbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLWhvdmVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS1jb21wb25lbnQtdGFibGUoKXtcblxuICAgIC51ay10YWJsZSB0aCB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS10YWJsZS1oZWFkZXItY2VsbC1jb2xvcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtdGFibGUtaGVhZGVyLWNlbGwpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXRhYmxlLWhlYWRlci1jZWxsKCk7fVxuICAgIH1cblxuICAgIC51ay10YWJsZSBjYXB0aW9uIHtcbiAgICAgICAgY29sb3I6ICRpbnZlcnNlLXRhYmxlLWNhcHRpb24tY29sb3I7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXRhYmxlLWNhcHRpb24pKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXRhYmxlLWNhcHRpb24oKTt9XG4gICAgfVxuXG4gICAgLnVrLXRhYmxlID4gdHIudWstYWN0aXZlLFxuICAgIC51ay10YWJsZSB0Ym9keSB0ci51ay1hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkaW52ZXJzZS10YWJsZS1yb3ctYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXRhYmxlLXJvdy1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXRhYmxlLXJvdy1hY3RpdmUoKTt9XG4gICAgfVxuXG4gICAgLnVrLXRhYmxlLWRpdmlkZXIgPiB0cjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAudWstdGFibGUtZGl2aWRlciA+IDpub3QoOmZpcnN0LWNoaWxkKSA+IHRyLFxuICAgIC51ay10YWJsZS1kaXZpZGVyID4gOmZpcnN0LWNoaWxkID4gdHI6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkaW52ZXJzZS10YWJsZS1kaXZpZGVyLWJvcmRlcjtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWludmVyc2UtdGFibGUtZGl2aWRlcikpIHtAaW5jbHVkZSBob29rLWludmVyc2UtdGFibGUtZGl2aWRlcigpO31cbiAgICB9XG5cbiAgICAudWstdGFibGUtc3RyaXBlZCA+IHRyOm50aC1vZi10eXBlKG9kZCksXG4gICAgLnVrLXRhYmxlLXN0cmlwZWQgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRpbnZlcnNlLXRhYmxlLXN0cmlwZWQtcm93LWJhY2tncm91bmQ7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXRhYmxlLXN0cmlwZWQpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXRhYmxlLXN0cmlwZWQoKTt9XG4gICAgfVxuXG4gICAgLnVrLXRhYmxlLWhvdmVyID4gdHI6aG92ZXIsXG4gICAgLnVrLXRhYmxlLWhvdmVyIHRib2R5IHRyOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGludmVyc2UtdGFibGUtaG92ZXItcm93LWJhY2tncm91bmQ7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXRhYmxlLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS10YWJsZS1ob3ZlcigpO31cbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLXRleHQtbGVhZCgpe31cbkBtaXhpbiBob29rLXRleHQtbWV0YSgpe1xuXG4gICAgYSB7IGNvbG9yOiAkdGV4dC1tZXRhLWxpbmstY29sb3I7IH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHRleHQtbWV0YS1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay10ZXh0LXNtYWxsKCl7fVxuQG1peGluIGhvb2stdGV4dC1sYXJnZSgpe31cbkBtaXhpbiBob29rLXRleHQtYmFja2dyb3VuZCgpe31cbkBtaXhpbiBob29rLXRleHQtbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtdGV4dC1sZWFkKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS10ZXh0LW1ldGEoKXt9XG5AbWl4aW4gaG9vay10aHVtYm5hdigpe31cbkBtaXhpbiBob29rLXRodW1ibmF2LWl0ZW0oKXtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICR0aHVtYm5hdi1pdGVtLWJhY2tncm91bmQ7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLWluLW91dDtcbiAgICB9XG5cbn1cbkBtaXhpbiBob29rLXRodW1ibmF2LWl0ZW0taG92ZXIoKXtcbiAgICAmOjphZnRlciB7IGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5hdi1pdGVtLWhvdmVyLWJhY2tncm91bmQ7IH1cbn1cbkBtaXhpbiBob29rLXRodW1ibmF2LWl0ZW0tYWN0aXZlKCl7XG4gICAgJjo6YWZ0ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYXYtaXRlbS1hY3RpdmUtYmFja2dyb3VuZDsgfVxufVxuQG1peGluIGhvb2stdGh1bWJuYXYtbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtdGh1bWJuYXYtaXRlbSgpe31cbkBtaXhpbiBob29rLWludmVyc2UtdGh1bWJuYXYtaXRlbS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWludmVyc2UtdGh1bWJuYXYtaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWNvbXBvbmVudC10aHVtYm5hdigpe1xuXG4gICAgLnVrLXRodW1ibmF2ID4gKiA+ICoge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS10aHVtYm5hdi1pdGVtKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZS10aHVtYm5hdi1pdGVtKCk7fVxuICAgIH1cblxuICAgIC51ay10aHVtYm5hdiA+ICogPiA6aG92ZXIsXG4gICAgLnVrLXRodW1ibmF2ID4gKiA+IDpmb2N1cyB7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlLXRodW1ibmF2LWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlLXRodW1ibmF2LWl0ZW0taG92ZXIoKTt9XG4gICAgfVxuXG4gICAgLnVrLXRodW1ibmF2ID4gLnVrLWFjdGl2ZSA+ICoge1xuICAgICAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staW52ZXJzZS10aHVtYm5hdi1pdGVtLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWludmVyc2UtdGh1bWJuYXYtaXRlbS1hY3RpdmUoKTt9XG4gICAgfVxuXG59XG5AbWl4aW4gaG9vay10aWxlKCl7fVxuQG1peGluIGhvb2stdGlsZS1kZWZhdWx0KCl7fVxuQG1peGluIGhvb2stdGlsZS1tdXRlZCgpe31cbkBtaXhpbiBob29rLXRpbGUtcHJpbWFyeSgpe31cbkBtaXhpbiBob29rLXRpbGUtc2Vjb25kYXJ5KCl7fVxuQG1peGluIGhvb2stdGlsZS1taXNjKCl7fVxuQG1peGluIGhvb2stdG9vbHRpcCgpe31cbkBtaXhpbiBob29rLXRvb2x0aXAtbWlzYygpe31cbkBtaXhpbiBob29rLXRvdG9wKCl7IHRyYW5zaXRpb246IGNvbG9yIDAuMXMgZWFzZS1pbi1vdXQ7IH1cbkBtaXhpbiBob29rLXRvdG9wLWhvdmVyKCl7fVxuQG1peGluIGhvb2stdG90b3AtYWN0aXZlKCl7fVxuQG1peGluIGhvb2stdG90b3AtbWlzYygpe31cbkBtaXhpbiBob29rLWludmVyc2UtdG90b3AoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLXRvdG9wLWhvdmVyKCl7fVxuQG1peGluIGhvb2staW52ZXJzZS10b3RvcC1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay10cmFuc2l0aW9uLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1wYW5lbC1zY3JvbGxhYmxlKCl7fVxuQG1peGluIGhvb2stYm94LXNoYWRvdy1ib3R0b20oKXt9XG5AbWl4aW4gaG9vay1kcm9wY2FwKCl7XG4gICAgLy8gUHJldmVudCBsaW5lIHdyYXBcbiAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xufVxuQG1peGluIGhvb2stbG9nbygpe31cbkBtaXhpbiBob29rLWxvZ28taG92ZXIoKXt9XG5AbWl4aW4gaG9vay11dGlsaXR5LW1pc2MoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWRyb3BjYXAoKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWxvZ28oKXt9XG5AbWl4aW4gaG9vay1pbnZlcnNlLWxvZ28taG92ZXIoKXt9XG5AbWl4aW4gaG9vay12aXNpYmlsaXR5LW1pc2MoKXt9XG5AbWl4aW4gaG9vay13aWR0aC1taXNjKCl7fSIsIi8vIEJhc2VcbkBpbXBvcnQgXCJ2YXJpYWJsZXMuc2Nzc1wiO1xuQGltcG9ydCBcIm1peGluLnNjc3NcIjtcbkBpbXBvcnQgXCJiYXNlLnNjc3NcIjtcblxuLy8gRWxlbWVudHNcbkBpbXBvcnQgXCJsaW5rLnNjc3NcIjtcbkBpbXBvcnQgXCJoZWFkaW5nLnNjc3NcIjtcbkBpbXBvcnQgXCJkaXZpZGVyLnNjc3NcIjtcbkBpbXBvcnQgXCJsaXN0LnNjc3NcIjtcbkBpbXBvcnQgXCJkZXNjcmlwdGlvbi1saXN0LnNjc3NcIjtcbkBpbXBvcnQgXCJ0YWJsZS5zY3NzXCI7XG5AaW1wb3J0IFwiaWNvbi5zY3NzXCI7XG5AaW1wb3J0IFwiZm9ybS1yYW5nZS5zY3NzXCI7XG5AaW1wb3J0IFwiZm9ybS5zY3NzXCI7IC8vIEFmdGVyOiBJY29uLCBGb3JtIFJhbmdlXG5AaW1wb3J0IFwiYnV0dG9uLnNjc3NcIjtcbkBpbXBvcnQgXCJwcm9ncmVzcy5zY3NzXCI7XG5cbi8vIExheW91dFxuQGltcG9ydCBcInNlY3Rpb24uc2Nzc1wiO1xuQGltcG9ydCBcImNvbnRhaW5lci5zY3NzXCI7XG5AaW1wb3J0IFwidGlsZS5zY3NzXCI7XG5AaW1wb3J0IFwiY2FyZC5zY3NzXCI7XG5cbi8vIENvbW1vblxuQGltcG9ydCBcImNsb3NlLnNjc3NcIjsgLy8gQWZ0ZXI6IEljb25cbkBpbXBvcnQgXCJzcGlubmVyLnNjc3NcIjsgLy8gQWZ0ZXI6IEljb25cbkBpbXBvcnQgXCJ0b3RvcC5zY3NzXCI7IC8vIEFmdGVyOiBJY29uXG5AaW1wb3J0IFwibWFya2VyLnNjc3NcIjsgLy8gQWZ0ZXI6IEljb25cbkBpbXBvcnQgXCJhbGVydC5zY3NzXCI7IC8vIEFmdGVyOiBDbG9zZVxuQGltcG9ydCBcInBsYWNlaG9sZGVyLnNjc3NcIjtcbkBpbXBvcnQgXCJiYWRnZS5zY3NzXCI7XG5AaW1wb3J0IFwibGFiZWwuc2Nzc1wiO1xuQGltcG9ydCBcIm92ZXJsYXkuc2Nzc1wiOyAvLyBBZnRlcjogSWNvblxuQGltcG9ydCBcImFydGljbGUuc2Nzc1wiO1xuQGltcG9ydCBcImNvbW1lbnQuc2Nzc1wiO1xuQGltcG9ydCBcInNlYXJjaC5zY3NzXCI7IC8vIEFmdGVyOiBJY29uXG5cbi8vIEphdmFTY3JpcHRcbkBpbXBvcnQgXCJhY2NvcmRpb24uc2Nzc1wiO1xuQGltcG9ydCBcImRyb3Auc2Nzc1wiOyAvLyBBZnRlcjogQ2FyZFxuQGltcG9ydCBcImRyb3Bkb3duLnNjc3NcIjsgLy8gQWZ0ZXI6IENhcmRcbkBpbXBvcnQgXCJtb2RhbC5zY3NzXCI7IC8vIEFmdGVyOiBDbG9zZVxuQGltcG9ydCBcInNsaWRlc2hvdy5zY3NzXCI7XG5AaW1wb3J0IFwic2xpZGVyLnNjc3NcIjtcbkBpbXBvcnQgXCJzdGlja3kuc2Nzc1wiO1xuQGltcG9ydCBcIm9mZmNhbnZhcy5zY3NzXCI7XG5AaW1wb3J0IFwic3dpdGNoZXIuc2Nzc1wiO1xuQGltcG9ydCBcImxlYWRlci5zY3NzXCI7XG5AaW1wb3J0IFwibm90aWZpY2F0aW9uLnNjc3NcIjtcbkBpbXBvcnQgXCJ0b29sdGlwLnNjc3NcIjtcbkBpbXBvcnQgXCJzb3J0YWJsZS5zY3NzXCI7XG5AaW1wb3J0IFwiY291bnRkb3duLnNjc3NcIjtcbi8vIFNjcm9sbHNweVxuLy8gVG9nZ2xlXG4vLyBTY3JvbGxcblxuQGltcG9ydCBcImdyaWQuc2Nzc1wiO1xuXG4vLyBOYXZzXG5AaW1wb3J0IFwibmF2LnNjc3NcIjtcbkBpbXBvcnQgXCJuYXZiYXIuc2Nzc1wiOyAvLyBBZnRlcjogQ2FyZCwgR3JpZCwgTmF2LCBJY29uLCBTZWFyY2hcbkBpbXBvcnQgXCJzdWJuYXYuc2Nzc1wiO1xuQGltcG9ydCBcImJyZWFkY3J1bWIuc2Nzc1wiO1xuQGltcG9ydCBcInBhZ2luYXRpb24uc2Nzc1wiO1xuQGltcG9ydCBcInRhYi5zY3NzXCI7XG5AaW1wb3J0IFwic2xpZGVuYXYuc2Nzc1wiOyAvLyBBZnRlcjogSWNvblxuQGltcG9ydCBcImRvdG5hdi5zY3NzXCI7XG5AaW1wb3J0IFwidGh1bWJuYXYuc2Nzc1wiO1xuQGltcG9ydCBcImljb25uYXYuc2Nzc1wiO1xuXG5AaW1wb3J0IFwibGlnaHRib3guc2Nzc1wiOyAvLyBBZnRlcjogQ2xvc2UsIFNsaWRlbmF2XG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcImFuaW1hdGlvbi5zY3NzXCI7XG5AaW1wb3J0IFwid2lkdGguc2Nzc1wiO1xuQGltcG9ydCBcImhlaWdodC5zY3NzXCI7XG5AaW1wb3J0IFwidGV4dC5zY3NzXCI7XG5AaW1wb3J0IFwiY29sdW1uLnNjc3NcIjtcbkBpbXBvcnQgXCJjb3Zlci5zY3NzXCI7XG5AaW1wb3J0IFwiYmFja2dyb3VuZC5zY3NzXCI7XG5AaW1wb3J0IFwiYWxpZ24uc2Nzc1wiO1xuQGltcG9ydCBcInN2Zy5zY3NzXCI7XG5AaW1wb3J0IFwidXRpbGl0eS5zY3NzXCI7XG5AaW1wb3J0IFwiZmxleC5zY3NzXCI7IC8vIEFmdGVyOiBVdGlsaXR5XG5AaW1wb3J0IFwibWFyZ2luLnNjc3NcIjtcbkBpbXBvcnQgXCJwYWRkaW5nLnNjc3NcIjtcbkBpbXBvcnQgXCJwb3NpdGlvbi5zY3NzXCI7XG5AaW1wb3J0IFwidHJhbnNpdGlvbi5zY3NzXCI7XG5AaW1wb3J0IFwidmlzaWJpbGl0eS5zY3NzXCI7XG5AaW1wb3J0IFwiaW52ZXJzZS5zY3NzXCI7XG5cbi8vIE5lZWQgdG8gYmUgbG9hZGVkIGxhc3RcbkBpbXBvcnQgXCJwcmludC5zY3NzXCI7XG4iLCIvL1xuLy8gQ29tcG9uZW50OiAgICAgICBWYXJpYWJsZXNcbi8vIERlc2NyaXB0aW9uOiAgICAgRGVmaW5lcyBjb21tb24gdmFsdWVzIHdoaWNoIGFyZSB1c2VkIGFjcm9zcyBhbGwgY29tcG9uZW50c1xuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIExvYWQgZGVwcmVjYXRlZCBjb21wb25lbnRzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGRlcHJlY2F0ZWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG5cblxuLy8gQnJlYWtwb2ludHNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBQaG9uZSBQb3J0cmFpdDogICBHYWxheHkgKDM2MHg2NDApLCBpUGhvbmUgNiAoMzc1eDY2NyksIGlQaG9uZSA2KyAoNDE0eDczNilcbi8vIFBob25lIExhbmRzY2FwZTogIEdhbGF4eSAoNjQweDM2MCksIGlQaG9uZSA2ICg2Njd4Mzc1KSwgaVBob25lIDYrICg3MzZ4NDE0KVxuLy8gVGFibGV0IFBvcnRyYWl0OiAgaVBhZCAoNzY4eDEwMjQpLCBHYWxheHkgVGFiICg4MDB4MTI4MCksXG4vLyBUYWJsZXQgTGFuZHNjYXBlOiBpUGFkICgxMDI0eDc2OCksIGlQYWQgUHJvICgxMDI0eDEzNjYpLFxuLy8gRGVza3RvcDogICAgICAgICAgR2FsYXh5IFRhYiAoMTI4MHg4MDApLCBpUGFkIFBybyAoMTM2NngxMDI0KVxuXG4kYnJlYWtwb2ludC1zbWFsbDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA2NDBweCAhZGVmYXVsdDsgIC8vIFBob25lIGxhbmRzY2FwZVxuJGJyZWFrcG9pbnQtbWVkaXVtOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOTYwcHggIWRlZmF1bHQ7ICAvLyBUYWJsZXQgTGFuZHNjYXBlXG4kYnJlYWtwb2ludC1sYXJnZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMjAwcHggIWRlZmF1bHQ7IC8vIERlc2t0b3BcbiRicmVha3BvaW50LXhsYXJnZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE2MDBweCAhZGVmYXVsdDsgLy8gTGFyZ2UgU2NyZWVuc1xuXG4kYnJlYWtwb2ludC14c21hbGwtbWF4OiAgICAgICAgICAgICAgICAgICAgICAgICAoJGJyZWFrcG9pbnQtc21hbGwgLSAxKSAhZGVmYXVsdDtcbiRicmVha3BvaW50LXNtYWxsLW1heDogICAgICAgICAgICAgICAgICAgICAgICAgICgkYnJlYWtwb2ludC1tZWRpdW0gLSAxKSAhZGVmYXVsdDtcbiRicmVha3BvaW50LW1lZGl1bS1tYXg6ICAgICAgICAgICAgICAgICAgICAgICAgICgkYnJlYWtwb2ludC1sYXJnZSAtIDEpICFkZWZhdWx0O1xuJGJyZWFrcG9pbnQtbGFyZ2UtbWF4OiAgICAgICAgICAgICAgICAgICAgICAgICAgKCRicmVha3BvaW50LXhsYXJnZSAtIDEpICFkZWZhdWx0O1xuXG5cbi8vIEdsb2JhbCB2YXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gVHlwb2dyYXBoeVxuLy9cblxuJGdsb2JhbC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAgICAgICAgIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRnbG9iYWwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNnB4ICFkZWZhdWx0O1xuJGdsb2JhbC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDsgICAgICAvLyAyNHB4XG5cbiRnbG9iYWwtMnhsYXJnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAyLjYyNXJlbSAhZGVmYXVsdDsgLy8gNDJweFxuJGdsb2JhbC14bGFyZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7ICAgICAvLyAzMnB4XG4kZ2xvYmFsLWxhcmdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgMS41cmVtICFkZWZhdWx0OyAgIC8vIDI0cHhcbiRnbG9iYWwtbWVkaXVtLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0OyAgLy8gMjBweFxuJGdsb2JhbC1zbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgIDAuODc1cmVtICFkZWZhdWx0OyAvLyAxNHB4XG5cbi8vXG4vLyBDb2xvcnNcbi8vXG5cbiRnbG9iYWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNjY2ICFkZWZhdWx0O1xuJGdsb2JhbC1lbXBoYXNpcy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kZ2xvYmFsLW11dGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuJGdsb2JhbC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMxZTg3ZjAgIWRlZmF1bHQ7XG4kZ2xvYmFsLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIzBmNmVjZCAhZGVmYXVsdDtcblxuJGdsb2JhbC1pbnZlcnNlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbi8vXG4vLyBCYWNrZ3JvdW5kc1xuLy9cblxuJGdsb2JhbC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAjZjhmOGY4ICFkZWZhdWx0O1xuJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICMxZTg3ZjAgIWRlZmF1bHQ7XG4kZ2xvYmFsLXNlY29uZGFyeS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgIzIyMiAhZGVmYXVsdDtcblxuJGdsb2JhbC1zdWNjZXNzLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICMzMmQyOTYgIWRlZmF1bHQ7XG4kZ2xvYmFsLXdhcm5pbmctYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgI2ZhYTA1YSAhZGVmYXVsdDtcbiRnbG9iYWwtZGFuZ2VyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAjZjA1MDZlICFkZWZhdWx0O1xuXG4vL1xuLy8gQm9yZGVyc1xuLy9cblxuJGdsb2JhbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRnbG9iYWwtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuXG4vL1xuLy8gQm94LVNoYWRvd3Ncbi8vXG5cbiRnbG9iYWwtc21hbGwtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAwIDJweCA4cHggcmdiYSgwLDAsMCwwLjA4KSAhZGVmYXVsdDtcbiRnbG9iYWwtbWVkaXVtLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAwIDVweCAxNXB4IHJnYmEoMCwwLDAsMC4wOCkgIWRlZmF1bHQ7XG4kZ2xvYmFsLWxhcmdlLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgMCAxNHB4IDI1cHggcmdiYSgwLDAsMCwwLjE2KSAhZGVmYXVsdDtcbiRnbG9iYWwteGxhcmdlLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAwIDI4cHggNTBweCByZ2JhKDAsMCwwLDAuMTYpICFkZWZhdWx0O1xuXG4vL1xuLy8gU3BhY2luZ3Ncbi8vXG5cbi8vIFVzZWQgaW4gbWFyZ2luLCBzZWN0aW9uLCBsaXN0XG4kZ2xvYmFsLW1hcmdpbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcbiRnbG9iYWwtc21hbGwtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJGdsb2JhbC1tZWRpdW0tbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgICAgICAgIDQwcHggIWRlZmF1bHQ7XG4kZ2xvYmFsLWxhcmdlLW1hcmdpbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgNzBweCAhZGVmYXVsdDtcbiRnbG9iYWwteGxhcmdlLW1hcmdpbjogICAgICAgICAgICAgICAgICAgICAgICAgICAxNDBweCAhZGVmYXVsdDtcblxuLy8gVXNlZCBpbiBncmlkLCBjb2x1bW4sIGNvbnRhaW5lciwgYWxpZ24sIGNhcmQsIHBhZGRpbmdcbiRnbG9iYWwtZ3V0dGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGdsb2JhbC1zbWFsbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kZ2xvYmFsLW1lZGl1bS1ndXR0ZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgNDBweCAhZGVmYXVsdDtcbiRnbG9iYWwtbGFyZ2UtZ3V0dGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICA3MHB4ICFkZWZhdWx0O1xuXG4vL1xuLy8gQ29udHJvbHNcbi8vXG5cbiRnbG9iYWwtY29udHJvbC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA0MHB4ICFkZWZhdWx0O1xuJGdsb2JhbC1jb250cm9sLXNtYWxsLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kZ2xvYmFsLWNvbnRyb2wtbGFyZ2UtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgNTVweCAhZGVmYXVsdDtcblxuLy9cbi8vIFotaW5kZXhcbi8vXG5cbiRnbG9iYWwtei1pbmRleDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuIiwiLy9cbi8vIENvbXBvbmVudDogICAgICAgTWl4aW5cbi8vIERlc2NyaXB0aW9uOiAgICAgRGVmaW5lcyBtaXhpbnMgd2hpY2ggYXJlIHVzZWQgYWNyb3NzIGFsbCBjb21wb25lbnRzXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gU1ZHXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8vIFJlcGxhY2UgYCRzZWFyY2hgIHdpdGggYCRyZXBsYWNlYCBpbiBgJHN0cmluZ2Bcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEluaXRpYWwgc3RyaW5nXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBTdWJzdHJpbmcgdG8gcmVwbGFjZVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIFVwZGF0ZWQgc3RyaW5nXG5AZnVuY3Rpb24gc3RyLXJlcGxhY2UoJHN0cmluZywgJHNlYXJjaCwgJHJlcGxhY2U6ICcnKSB7XG4gICRpbmRleDogc3RyLWluZGV4KCRzdHJpbmcsICRzZWFyY2gpO1xuXG4gIEBpZiAkaW5kZXgge1xuICAgIEByZXR1cm4gc3RyLXNsaWNlKCRzdHJpbmcsIDEsICRpbmRleCAtIDEpICsgJHJlcGxhY2UgKyBzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuQG1peGluIHN2Zy1maWxsKCRzcmMsICRjb2xvci1kZWZhdWx0LCAkY29sb3ItbmV3KXtcblxuICAgICRyZXBsYWNlLXNyYzogc3RyLXJlcGxhY2UoJHNyYywgJGNvbG9yLWRlZmF1bHQsICRjb2xvci1uZXcpICFkZWZhdWx0O1xuICAgICRyZXBsYWNlLXNyYzogc3RyLXJlcGxhY2UoJHJlcGxhY2Utc3JjLCBcIiNcIiwgXCIlMjNcIik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHF1b3RlKCRyZXBsYWNlLXNyYykpO1xufSIsIi8vIE5hbWU6ICAgICAgICAgICAgQmFzZVxuLy8gRGVzY3JpcHRpb246ICAgICBEZWZhdWx0IHZhbHVlcyBmb3IgSFRNTCBlbGVtZW50c1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWxpbmtgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1oMWAsIGB1ay1oMmAsIGB1ay1oM2AsIGB1ay1oNGAsIGB1ay1oNWAsIGB1ay1oNmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWhyYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRiYXNlLWJvZHktYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kYmFzZS1ib2R5LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRiYXNlLWJvZHktZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XG4kYmFzZS1ib2R5LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmFzZS1ib2R5LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRiYXNlLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kYmFzZS1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJGJhc2UtbGluay10ZXh0LWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kYmFzZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1saW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJGJhc2UtbGluay1ob3Zlci10ZXh0LWRlY29yYXRpb246ICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcblxuJGJhc2Utc3Ryb25nLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcbiRiYXNlLWNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRiYXNlLWNvZGUtZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgICAgICBDb25zb2xhcywgbW9uYWNvLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kYmFzZS1jb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1kYW5nZXItYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRiYXNlLWVtLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWRhbmdlci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJhc2UtaW5zLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmQgIWRlZmF1bHQ7XG4kYmFzZS1pbnMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRiYXNlLW1hcmstYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZkICFkZWZhdWx0O1xuJGJhc2UtbWFyay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kYmFzZS1xdW90ZS1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgICAgICAgICAgaXRhbGljICFkZWZhdWx0O1xuJGJhc2Utc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgIDgwJSAhZGVmYXVsdDtcblxuJGJhc2UtbWFyZ2luLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4kYmFzZS1oZWFkaW5nLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRiYXNlLWhlYWRpbmctZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XG4kYmFzZS1oZWFkaW5nLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRiYXNlLWhlYWRpbmctdGV4dC10cmFuc2Zvcm06ICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGJhc2UtaGVhZGluZy1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLW1hcmdpbiAhZGVmYXVsdDtcbiRiYXNlLWgxLWZvbnQtc2l6ZS1tOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLTJ4bGFyZ2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGJhc2UtaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRiYXNlLWgxLWZvbnQtc2l6ZS1tICogMC44NSAhZGVmYXVsdDtcbiRiYXNlLWgxLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kYmFzZS1oMi1mb250LXNpemUtbTogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC14bGFyZ2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGJhc2UtaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRiYXNlLWgyLWZvbnQtc2l6ZS1tICogMC44NSAhZGVmYXVsdDtcbiRiYXNlLWgyLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjMgIWRlZmF1bHQ7XG4kYmFzZS1oMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1sYXJnZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmFzZS1oMy1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgMS40ICFkZWZhdWx0O1xuJGJhc2UtaDQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRiYXNlLWg0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjQgIWRlZmF1bHQ7XG4kYmFzZS1oNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmFzZS1oNS1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgMS40ICFkZWZhdWx0O1xuJGJhc2UtaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJhc2UtaDYtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEuNCAhZGVmYXVsdDtcblxuJGJhc2UtbGlzdC1wYWRkaW5nLWxlZnQ6ICAgICAgICAgICAgICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG5cbiRiYXNlLWhyLW1hcmdpbi12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRiYXNlLWhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRiYXNlLWhyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcblxuJGJhc2UtYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRiYXNlLWJsb2NrcXVvdGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kYmFzZS1ibG9ja3F1b3RlLWZvbnQtc3R5bGU6ICAgICAgICAgICAgICAgICAgICAgaXRhbGljICFkZWZhdWx0O1xuJGJhc2UtYmxvY2txdW90ZS1tYXJnaW4tdmVydGljYWw6ICAgICAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGJhc2UtYmxvY2txdW90ZS1mb290ZXItbWFyZ2luLXRvcDogICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtbWFyZ2luICFkZWZhdWx0O1xuJGJhc2UtYmxvY2txdW90ZS1mb290ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJhc2UtYmxvY2txdW90ZS1mb290ZXItbGluZS1oZWlnaHQ6ICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJhc2UtcHJlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJhc2UtcHJlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRiYXNlLXByZS1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAgICAgICAkYmFzZS1jb2RlLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJhc2UtcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbiRiYXNlLXNlbGVjdGlvbi1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAjMzlmICFkZWZhdWx0O1xuJGJhc2Utc2VsZWN0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQmFzZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBTZXQgYGZvbnQtc2l6ZWAgdG8gc3VwcG9ydCBgcmVtYCB1bml0c1xuICogICAgTm90IHVzaW5nIGBmb250YCBwcm9wZXJ0eSBiZWNhdXNlIGEgbGVhZGluZyBoeXBoZW4gKGUuZy4gLWFwcGxlLXN5c3RlbSkgY2F1c2VzIHRoZSBmb250IHRvIGJyZWFrIGluIElFMTEgYW5kIEVkZ2VcbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICogMy4gU3R5bGVcbiAqL1xuXG5odG1sIHtcbiAgICAvKiAxICovXG4gICAgZm9udC1mYW1pbHk6ICRiYXNlLWJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOiAkYmFzZS1ib2R5LWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogJGJhc2UtYm9keS1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGJhc2UtYm9keS1saW5lLWhlaWdodDtcbiAgICAvKiAyICovXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAgIC8qIDMgKi9cbiAgICBiYWNrZ3JvdW5kOiAkYmFzZS1ib2R5LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRiYXNlLWJvZHktY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJhc2UtYm9keSkpIHtAaW5jbHVkZSBob29rLWJhc2UtYm9keSgpO31cbn1cblxuLypcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5ib2R5IHsgbWFyZ2luOiAwOyB9XG5cblxuLyogTGlua3NcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gKi9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHsgb3V0bGluZTogbm9uZTsgfVxuXG4vKlxuICogU3R5bGVcbiAqL1xuXG5hLFxuLnVrLWxpbmsge1xuICAgIGNvbG9yOiAkYmFzZS1saW5rLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGJhc2UtbGluay10ZXh0LWRlY29yYXRpb247XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWxpbmspKSB7QGluY2x1ZGUgaG9vay1iYXNlLWxpbmsoKTt9XG59XG5cbmE6aG92ZXIsXG4udWstbGluazpob3Zlcixcbi51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluayxcbi51ay1saW5rLXRvZ2dsZTpmb2N1cyAudWstbGluayB7XG4gICAgY29sb3I6ICRiYXNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkYmFzZS1saW5rLWhvdmVyLXRleHQtZGVjb3JhdGlvbjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYmFzZS1saW5rLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stYmFzZS1saW5rLWhvdmVyKCk7fVxufVxuXG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gRWRnZS5cbiAqIDIuIFRoZSBzaG9ydGhhbmQgZGVjbGFyYXRpb24gYHVuZGVybGluZSBkb3R0ZWRgIGlzIG5vdCBzdXBwb3J0ZWQgaW4gU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgICAvKiAxICovXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAgIC8qIDIgKi9cbiAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1zdHlsZTogZG90dGVkO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHsgZm9udC13ZWlnaHQ6ICRiYXNlLXN0cm9uZy1mb250LXdlaWdodDsgfVxuXG4vKlxuICogMS4gQ29uc29sYXMgaGFzIGEgYmV0dGVyIGJhc2VsaW5lIGluIHJ1bm5pbmcgdGV4dCBjb21wYXJlZCB0byBgQ291cmllcmBcbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqIDMuIFN0eWxlXG4gKi9cblxuOm5vdChwcmUpID4gY29kZSxcbjpub3QocHJlKSA+IGtiZCxcbjpub3QocHJlKSA+IHNhbXAge1xuICAgIC8qIDEgKi9cbiAgICBmb250LWZhbWlseTogJGJhc2UtY29kZS1mb250LWZhbWlseTtcbiAgICAvKiAyICovXG4gICAgZm9udC1zaXplOiAkYmFzZS1jb2RlLWZvbnQtc2l6ZTtcbiAgICAvKiAzICovXG4gICAgY29sb3I6ICRiYXNlLWNvZGUtY29sb3I7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYmFzZS1jb2RlKSkge0BpbmNsdWRlIGhvb2stYmFzZS1jb2RlKCk7fVxufVxuXG4vKlxuICogRW1waGFzaXplXG4gKi9cblxuZW0geyBjb2xvcjogJGJhc2UtZW0tY29sb3I7IH1cblxuLypcbiAqIEluc2VydFxuICovXG5cbmlucyB7XG4gICAgYmFja2dyb3VuZDogJGJhc2UtaW5zLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRiYXNlLWlucy1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qXG4gKiBNYXJrXG4gKi9cblxubWFyayB7XG4gICAgYmFja2dyb3VuZDogJGJhc2UtbWFyay1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYmFzZS1tYXJrLWNvbG9yO1xufVxuXG4vKlxuICogUXVvdGVcbiAqL1xuXG5xIHsgZm9udC1zdHlsZTogJGJhc2UtcXVvdGUtZm9udC1zdHlsZTsgfVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwgeyBmb250LXNpemU6ICRiYXNlLXNtYWxsLWZvbnQtc2l6ZTsgfVxuXG4vKlxuICogUHJldmVudHMgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7IHRvcDogLTAuNWVtOyB9XG5zdWIgeyBib3R0b206IC0wLjI1ZW07IH1cblxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFJlbW92ZSB0aGUgZ2FwIGJldHdlZW4gZW1iZWRkZWQgY29udGVudCBhbmQgdGhlIGJvdHRvbSBvZiB0aGVpciBjb250YWluZXJzLlxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxuaWZyYW1lLFxuaW1nLFxuc3ZnLFxudmlkZW8geyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi8qXG4gKiAxLiBBZGQgcmVzcG9uc2l2ZW5lc3MuXG4gKiAyLiBBdXRvLXNjYWxlIHRoZSBoZWlnaHQuIE9ubHkgbmVlZGVkIGlmIGBoZWlnaHRgIGF0dHJpYnV0ZSBpcyBwcmVzZW50LlxuICogMy4gQ29ycmVjdHMgcmVzcG9uc2l2ZSBgbWF4LXdpZHRoYCBiZWhhdmlvciBpZiBwYWRkaW5nIGFuZCBib3JkZXIgYXJlIHVzZWQuXG4gKiA0LiBFeGNsdWRlIFNWR3MgZm9yIElFMTEgYmVjYXVzZSB0aGV5IGRvbid0IHByZXNlcnZlIHRoZWlyIGFzcGVjdCByYXRpby5cbiAqL1xuXG5jYW52YXMsXG5pbWcsXG52aWRlbyB7XG4gICAgLyogMSAqL1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAvKiAyICovXG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC8qIDMgKi9cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vKiA0ICovXG5Ac3VwcG9ydHMgKGRpc3BsYXk6IGJsb2NrKSB7XG5cbiAgIHN2ZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cblxufVxuXG4vKlxuICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKi9cblxuc3ZnOm5vdCg6cm9vdCkgeyBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qXG4gKiAxLiBGaXggbGF6eSBsb2FkaW5nIGltYWdlcyBpZiBwYXJlbnQgZWxlbWVudCBpcyBzZXQgdG8gYGRpc3BsYXk6IGlubGluZWAgYW5kIGhhcyBgb3ZlcmZsb3c6IGhpZGRlbmAuXG4gKiAyLiBIaWRlIGBhbHRgIHRleHQgZm9yIGxhenkgbG9hZGluZyBpbWFnZXMuXG4gKiBOb3RlOiBTZWxlY3RvciBmb3IgYmFja2dyb3VuZCB3aGlsZSBsb2FkaW5nIGltZ1tkYXRhLXNyYyo9Jy5qcGcnXVtzcmMqPSdkYXRhOmltYWdlJ10geyBiYWNrZ3JvdW5kOiBncmV5OyB9XG4gKi9cblxuaW1nOm5vdChbc3JjXSkge1xuICAgIC8qIDEgKi9cbiAgICBtaW4td2lkdGg6IDFweDtcbiAgICAvKiAyICovXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKlxuICogSWZyYW1lXG4gKiBSZW1vdmUgYm9yZGVyIGluIGFsbCBicm93c2Vyc1xuICovXG5cbmlmcmFtZSB7IGJvcmRlcjogMDsgfVxuXG5cbi8qIEJsb2NrIGVsZW1lbnRzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIE1hcmdpbnNcbiAqL1xuXG5wLFxudWwsXG5vbCxcbmRsLFxucHJlLFxuYWRkcmVzcyxcbmZpZWxkc2V0LFxuZmlndXJlIHsgbWFyZ2luOiAwIDAgJGJhc2UtbWFyZ2luLXZlcnRpY2FsIDA7IH1cblxuLyogQWRkIG1hcmdpbiBpZiBhZGphY2VudCBlbGVtZW50ICovXG4qICsgcCxcbiogKyB1bCxcbiogKyBvbCxcbiogKyBkbCxcbiogKyBwcmUsXG4qICsgYWRkcmVzcyxcbiogKyBmaWVsZHNldCxcbiogKyBmaWd1cmUgeyBtYXJnaW4tdG9wOiAkYmFzZS1tYXJnaW4tdmVydGljYWw7IH1cblxuXG4vKiBIZWFkaW5nc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmgxLCAudWstaDEsXG5oMiwgLnVrLWgyLFxuaDMsIC51ay1oMyxcbmg0LCAudWstaDQsXG5oNSwgLnVrLWg1LFxuaDYsIC51ay1oNixcbi51ay1oZWFkaW5nLXNtYWxsLFxuLnVrLWhlYWRpbmctbWVkaXVtLFxuLnVrLWhlYWRpbmctbGFyZ2UsXG4udWstaGVhZGluZy14bGFyZ2UsXG4udWstaGVhZGluZy0yeGxhcmdlIHtcbiAgICBtYXJnaW46IDAgMCAkYmFzZS1tYXJnaW4tdmVydGljYWwgMDtcbiAgICBmb250LWZhbWlseTogJGJhc2UtaGVhZGluZy1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGJhc2UtaGVhZGluZy1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGJhc2UtaGVhZGluZy1jb2xvcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogJGJhc2UtaGVhZGluZy10ZXh0LXRyYW5zZm9ybTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYmFzZS1oZWFkaW5nKSkge0BpbmNsdWRlIGhvb2stYmFzZS1oZWFkaW5nKCk7fVxufVxuXG4vKiBBZGQgbWFyZ2luIGlmIGFkamFjZW50IGVsZW1lbnQgKi9cbiogKyBoMSwgKiArIC51ay1oMSxcbiogKyBoMiwgKiArIC51ay1oMixcbiogKyBoMywgKiArIC51ay1oMyxcbiogKyBoNCwgKiArIC51ay1oNCxcbiogKyBoNSwgKiArIC51ay1oNSxcbiogKyBoNiwgKiArIC51ay1oNixcbiogKyAudWstaGVhZGluZy1zbWFsbCxcbiogKyAudWstaGVhZGluZy1tZWRpdW0sXG4qICsgLnVrLWhlYWRpbmctbGFyZ2UsXG4qICsgLnVrLWhlYWRpbmcteGxhcmdlLFxuKiArIC51ay1oZWFkaW5nLTJ4bGFyZ2UgeyBtYXJnaW4tdG9wOiAkYmFzZS1oZWFkaW5nLW1hcmdpbi10b3A7IH1cblxuLypcbiAqIFNpemVzXG4gKi9cblxuaDEsIC51ay1oMSB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1oMS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWgxLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWgxKSkge0BpbmNsdWRlIGhvb2stYmFzZS1oMSgpO31cbn1cblxuaDIsIC51ay1oMiB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1oMi1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWgyLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWgyKSkge0BpbmNsdWRlIGhvb2stYmFzZS1oMigpO31cbn1cblxuaDMsIC51ay1oMyB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1oMy1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWgzLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWgzKSkge0BpbmNsdWRlIGhvb2stYmFzZS1oMygpO31cbn1cblxuaDQsIC51ay1oNCB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1oNC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWg0LWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWg0KSkge0BpbmNsdWRlIGhvb2stYmFzZS1oNCgpO31cbn1cblxuaDUsIC51ay1oNSB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1oNS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWg1LWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWg1KSkge0BpbmNsdWRlIGhvb2stYmFzZS1oNSgpO31cbn1cblxuaDYsIC51ay1oNiB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1oNi1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWg2LWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWg2KSkge0BpbmNsdWRlIGhvb2stYmFzZS1oNigpO31cbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICBoMSwgLnVrLWgxIHsgZm9udC1zaXplOiAkYmFzZS1oMS1mb250LXNpemUtbTsgfVxuICAgIGgyLCAudWstaDIgeyBmb250LXNpemU6ICRiYXNlLWgyLWZvbnQtc2l6ZS1tOyB9XG5cbn1cblxuXG4vKiBMaXN0c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbnVsLFxub2wgeyBwYWRkaW5nLWxlZnQ6ICRiYXNlLWxpc3QtcGFkZGluZy1sZWZ0OyB9XG5cbi8qXG4gKiBSZXNldCBtYXJnaW4gZm9yIG5lc3RlZCBsaXN0c1xuICovXG5cbnVsID4gbGkgPiB1bCxcbnVsID4gbGkgPiBvbCxcbm9sID4gbGkgPiBvbCxcbm9sID4gbGkgPiB1bCB7IG1hcmdpbjogMDsgfVxuXG5cbi8qIERlc2NyaXB0aW9uIGxpc3RzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuZHQgeyBmb250LXdlaWdodDogYm9sZDsgfVxuZGQgeyBtYXJnaW4tbGVmdDogMDsgfVxuXG5cbi8qIEhvcml6b250YWwgcnVsZXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gQ2hyb21lLCBFZGdlIGFuZCBJRS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0LWFsaWduIGluIEVkZ2UgYW5kIElFLlxuICogMy4gU3R5bGVcbiAqL1xuXG5ociwgLnVrLWhyIHtcbiAgICAvKiAxICovXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgLyogMiAqL1xuICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgLyogMyAqL1xuICAgIG1hcmdpbjogMCAwICRiYXNlLWhyLW1hcmdpbi12ZXJ0aWNhbCAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItdG9wOiAkYmFzZS1oci1ib3JkZXItd2lkdGggc29saWQgJGJhc2UtaHItYm9yZGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWhyKSkge0BpbmNsdWRlIGhvb2stYmFzZS1ocigpO31cbn1cblxuLyogQWRkIG1hcmdpbiBpZiBhZGphY2VudCBlbGVtZW50ICovXG4qICsgaHIsXG4qICsgLnVrLWhyIHsgbWFyZ2luLXRvcDogJGJhc2UtaHItbWFyZ2luLXZlcnRpY2FsIH1cblxuXG4vKiBBZGRyZXNzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuYWRkcmVzcyB7IGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5cbi8qIEJsb2NrcXVvdGVzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwIDAgJGJhc2UtYmxvY2txdW90ZS1tYXJnaW4tdmVydGljYWwgMDtcbiAgICBmb250LXNpemU6ICRiYXNlLWJsb2NrcXVvdGUtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkYmFzZS1ibG9ja3F1b3RlLWxpbmUtaGVpZ2h0O1xuICAgIGZvbnQtc3R5bGU6ICRiYXNlLWJsb2NrcXVvdGUtZm9udC1zdHlsZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYmFzZS1ibG9ja3F1b3RlKSkge0BpbmNsdWRlIGhvb2stYmFzZS1ibG9ja3F1b3RlKCk7fVxufVxuXG4vKiBBZGQgbWFyZ2luIGlmIGFkamFjZW50IGVsZW1lbnQgKi9cbiogKyBibG9ja3F1b3RlIHsgbWFyZ2luLXRvcDogJGJhc2UtYmxvY2txdW90ZS1tYXJnaW4tdmVydGljYWw7IH1cblxuLypcbiAqIENvbnRlbnRcbiAqL1xuXG5ibG9ja3F1b3RlIHA6bGFzdC1vZi10eXBlIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5ibG9ja3F1b3RlIGZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogICRiYXNlLWJsb2NrcXVvdGUtZm9vdGVyLW1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkYmFzZS1ibG9ja3F1b3RlLWZvb3Rlci1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWJsb2NrcXVvdGUtZm9vdGVyLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLWJsb2NrcXVvdGUtZm9vdGVyKSkge0BpbmNsdWRlIGhvb2stYmFzZS1ibG9ja3F1b3RlLWZvb3RlcigpO31cbn1cblxuXG4vKiBQcmVmb3JtYXR0ZWQgdGV4dFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICAgIGZvbnQ6ICRiYXNlLXByZS1mb250LXNpemUgdW5xdW90ZShcIi9cIikgJGJhc2UtcHJlLWxpbmUtaGVpZ2h0ICRiYXNlLXByZS1mb250LWZhbWlseTtcbiAgICBjb2xvcjogJGJhc2UtcHJlLWNvbG9yO1xuICAgIC1tb3otdGFiLXNpemU6IDQ7XG4gICAgdGFiLXNpemU6IDQ7XG4gICAgLyogMSAqL1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLXByZSkpIHtAaW5jbHVkZSBob29rLWJhc2UtcHJlKCk7fVxufVxuXG5wcmUgY29kZSB7IGZvbnQtZmFtaWx5OiAkYmFzZS1wcmUtZm9udC1mYW1pbHk7IH1cblxuXG4vKiBTZWxlY3Rpb24gcHNldWRvLWVsZW1lbnRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG46OnNlbGVjdGlvbiB7XG4gICAgYmFja2dyb3VuZDogJGJhc2Utc2VsZWN0aW9uLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRiYXNlLXNlbGVjdGlvbi1jb2xvcjtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuXG4vKiBIVE1MNSBlbGVtZW50c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cblxuZGV0YWlscywgLyogMSAqL1xubWFpbiB7IC8qIDIgKi9cbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHsgZGlzcGxheTogbGlzdC1pdGVtOyB9XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG50ZW1wbGF0ZSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuXG4vKiBQYXNzIG1lZGlhIGJyZWFrcG9pbnRzIHRvIEpTXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEJyZWFrcG9pbnRzXG4gKi9cblxuLnVrLWJyZWFrcG9pbnQtczo6YmVmb3JlICB7IGNvbnRlbnQ6ICcjeyRicmVha3BvaW50LXNtYWxsfSc7IH1cbi51ay1icmVha3BvaW50LW06OmJlZm9yZSAgeyBjb250ZW50OiAnI3skYnJlYWtwb2ludC1tZWRpdW19JzsgfVxuLnVrLWJyZWFrcG9pbnQtbDo6YmVmb3JlICB7IGNvbnRlbnQ6ICcjeyRicmVha3BvaW50LWxhcmdlfSc7IH1cbi51ay1icmVha3BvaW50LXhsOjpiZWZvcmUgeyBjb250ZW50OiAnI3skYnJlYWtwb2ludC14bGFyZ2V9JzsgfVxuXG46cm9vdCB7XG4gICAgLS11ay1icmVha3BvaW50LXM6ICN7JGJyZWFrcG9pbnQtc21hbGx9O1xuICAgIC0tdWstYnJlYWtwb2ludC1tOiAjeyRicmVha3BvaW50LW1lZGl1bX07XG4gICAgLS11ay1icmVha3BvaW50LWw6ICN7JGJyZWFrcG9pbnQtbGFyZ2V9O1xuICAgIC0tdWstYnJlYWtwb2ludC14bDogI3skYnJlYWtwb2ludC14bGFyZ2V9O1xufVxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1iYXNlLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1iYXNlLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWJhc2UtYm9keSgpe31cbi8vIEBtaXhpbiBob29rLWJhc2UtbGluaygpe31cbi8vIEBtaXhpbiBob29rLWJhc2UtbGluay1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWJhc2UtY29kZSgpe31cbi8vIEBtaXhpbiBob29rLWJhc2UtaGVhZGluZygpe31cbi8vIEBtaXhpbiBob29rLWJhc2UtaDEoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLWgyKCl7fVxuLy8gQG1peGluIGhvb2stYmFzZS1oMygpe31cbi8vIEBtaXhpbiBob29rLWJhc2UtaDQoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLWg1KCl7fVxuLy8gQG1peGluIGhvb2stYmFzZS1oNigpe31cbi8vIEBtaXhpbiBob29rLWJhc2UtaHIoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLWJsb2NrcXVvdGUoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLWJsb2NrcXVvdGUtZm9vdGVyKCl7fVxuLy8gQG1peGluIGhvb2stYmFzZS1wcmUoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRpbnZlcnNlLWJhc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJhc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJhc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJhc2UtY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJhc2UtZW0tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJhc2UtaGVhZGluZy1jb2xvcjogICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJhc2UtaHItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtbGluaygpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYmFzZS1saW5rLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWNvZGUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtaGVhZGluZygpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYmFzZS1oMSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYmFzZS1oMigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYmFzZS1oMygpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYmFzZS1oNCgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYmFzZS1oNSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYmFzZS1oNigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYmFzZS1ibG9ja3F1b3RlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWJsb2NrcXVvdGUtZm9vdGVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWhyKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBMaW5rXG4vLyBEZXNjcmlwdGlvbjogICAgIFN0eWxlcyBmb3IgbGlua3Ncbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1saW5rLW11dGVkYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGluay10ZXh0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGluay1oZWFkaW5nYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGluay1yZXNldGBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1saW5rLXRvZ2dsZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kbGluay1tdXRlZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRsaW5rLW11dGVkLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kbGluay10ZXh0LWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcblxuJGxpbmstaGVhZGluZy1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxpbmstaGVhZGluZy1ob3Zlci10ZXh0LWRlY29yYXRpb246ICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IExpbmtcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qIE11dGVkXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuYS51ay1saW5rLW11dGVkLFxuLnVrLWxpbmstbXV0ZWQgYSB7XG4gICAgY29sb3I6ICRsaW5rLW11dGVkLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1saW5rLW11dGVkKSkge0BpbmNsdWRlIGhvb2stbGluay1tdXRlZCgpO31cbn1cblxuYS51ay1saW5rLW11dGVkOmhvdmVyLFxuLnVrLWxpbmstbXV0ZWQgYTpob3Zlcixcbi51ay1saW5rLXRvZ2dsZTpob3ZlciAudWstbGluay1tdXRlZCxcbi51ay1saW5rLXRvZ2dsZTpmb2N1cyAudWstbGluay1tdXRlZCB7XG4gICAgY29sb3I6ICRsaW5rLW11dGVkLWhvdmVyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1saW5rLW11dGVkLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stbGluay1tdXRlZC1ob3ZlcigpO31cbn1cblxuXG4vKiBUZXh0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuYS51ay1saW5rLXRleHQsXG4udWstbGluay10ZXh0IGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1saW5rLXRleHQpKSB7QGluY2x1ZGUgaG9vay1saW5rLXRleHQoKTt9XG59XG5cbmEudWstbGluay10ZXh0OmhvdmVyLFxuLnVrLWxpbmstdGV4dCBhOmhvdmVyLFxuLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLXRleHQsXG4udWstbGluay10b2dnbGU6Zm9jdXMgLnVrLWxpbmstdGV4dCB7XG4gICAgY29sb3I6ICRsaW5rLXRleHQtaG92ZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWxpbmstdGV4dC1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWxpbmstdGV4dC1ob3ZlcigpO31cbn1cblxuXG4vKiBIZWFkaW5nXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuYS51ay1saW5rLWhlYWRpbmcsXG4udWstbGluay1oZWFkaW5nIGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1saW5rLWhlYWRpbmcpKSB7QGluY2x1ZGUgaG9vay1saW5rLWhlYWRpbmcoKTt9XG59XG5cbmEudWstbGluay1oZWFkaW5nOmhvdmVyLFxuLnVrLWxpbmstaGVhZGluZyBhOmhvdmVyLFxuLnVrLWxpbmstdG9nZ2xlOmhvdmVyIC51ay1saW5rLWhlYWRpbmcsXG4udWstbGluay10b2dnbGU6Zm9jdXMgLnVrLWxpbmstaGVhZGluZyB7XG4gICAgY29sb3I6ICRsaW5rLWhlYWRpbmctaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1oZWFkaW5nLWhvdmVyLXRleHQtZGVjb3JhdGlvbjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbGluay1oZWFkaW5nLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stbGluay1oZWFkaW5nLWhvdmVyKCk7fVxufVxuXG5cbi8qIFJlc2V0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIGAhaW1wb3J0YW50YCBuZWVkZWQgdG8gb3ZlcnJpZGUgaW52ZXJzZSBjb21wb25lbnRcbiAqL1xuXG5hLnVrLWxpbmstcmVzZXQsXG4udWstbGluay1yZXNldCBhIHtcbiAgICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1saW5rLXJlc2V0KSkge0BpbmNsdWRlIGhvb2stbGluay1yZXNldCgpO31cbn1cblxuXG4vKiBUb2dnbGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbGluay10b2dnbGUge1xuICAgIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG4gXG4udWstbGluay10b2dnbGU6Zm9jdXMgeyBvdXRsaW5lOiBub25lOyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stbGluay1taXNjKSkge0BpbmNsdWRlIGhvb2stbGluay1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1saW5rLW11dGVkKCl7fVxuLy8gQG1peGluIGhvb2stbGluay1tdXRlZC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWxpbmstdGV4dCgpe31cbi8vIEBtaXhpbiBob29rLWxpbmstdGV4dC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWxpbmstaGVhZGluZygpe31cbi8vIEBtaXhpbiBob29rLWxpbmstaGVhZGluZy1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWxpbmstcmVzZXQoKXt9XG4vLyBAbWl4aW4gaG9vay1saW5rLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRpbnZlcnNlLWxpbmstbXV0ZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpbmstbXV0ZWQtaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpbmstdGV4dC1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpbmstaGVhZGluZy1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWxpbmstbXV0ZWQoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWxpbmstbXV0ZWQtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWxpbmstdGV4dC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbGluay1oZWFkaW5nLWhvdmVyKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBIZWFkaW5nXG4vLyBEZXNjcmlwdGlvbjogICAgIFN0eWxlcyBmb3IgaGVhZGluZ3Ncbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1oZWFkaW5nLXByaW1hcnlgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1oZWFkaW5nLWhlcm9gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1oZWFkaW5nLWRpdmlkZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1oZWFkaW5nLWJ1bGxldGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWhlYWRpbmctbGluZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kaGVhZGluZy1zbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctc21hbGwtZm9udC1zaXplLW0gKiAwLjggIWRlZmF1bHQ7ICAgICAgLy8gMzhweCAwLjczXG4kaGVhZGluZy1tZWRpdW0tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1tICogMC44MjUgIWRlZmF1bHQ7ICAgICAvLyA0MHB4IDAuNzE0XG4kaGVhZGluZy1sYXJnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbGFyZ2UtZm9udC1zaXplLW0gKiAwLjg1ICFkZWZhdWx0OyAgICAgIC8vIDUwcHggMC43OFxuJGhlYWRpbmcteGxhcmdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLWxhcmdlLWZvbnQtc2l6ZS1tICFkZWZhdWx0OyAgICAgICAgICAgICAvLyA0cmVtIC8gNjRweFxuJGhlYWRpbmctMnhsYXJnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICRoZWFkaW5nLXhsYXJnZS1mb250LXNpemUtbSAhZGVmYXVsdDsgICAgICAgICAgICAvLyA2cmVtIC8gOTZweFxuXG4kaGVhZGluZy1zbWFsbC1mb250LXNpemUtbTogICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1sICogMC44MTI1ICFkZWZhdWx0OyAgIC8vIDMuMjVyZW0gLyA1MnB4XG4kaGVhZGluZy1tZWRpdW0tZm9udC1zaXplLW06ICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1sICogMC44NzUgIWRlZmF1bHQ7ICAgIC8vIDMuNXJlbSAvIDU2cHhcbiRoZWFkaW5nLWxhcmdlLWZvbnQtc2l6ZS1tOiAgICAgICAgICAgICAgICAgICAgICAkaGVhZGluZy1tZWRpdW0tZm9udC1zaXplLWwgIWRlZmF1bHQ7ICAgICAgICAgICAgLy8gNHJlbSAvIDY0cHhcbiRoZWFkaW5nLXhsYXJnZS1mb250LXNpemUtbTogICAgICAgICAgICAgICAgICAgICAkaGVhZGluZy1sYXJnZS1mb250LXNpemUtbCAhZGVmYXVsdDsgICAgICAgICAgICAgLy8gNnJlbSAvIDk2cHhcbiRoZWFkaW5nLTJ4bGFyZ2UtZm9udC1zaXplLW06ICAgICAgICAgICAgICAgICAgICAkaGVhZGluZy14bGFyZ2UtZm9udC1zaXplLWwgIWRlZmF1bHQ7ICAgICAgICAgICAgLy8gOHJlbSAvIDEyOHB4XG5cbiRoZWFkaW5nLW1lZGl1bS1mb250LXNpemUtbDogICAgICAgICAgICAgICAgICAgICA0cmVtICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gNjRweFxuJGhlYWRpbmctbGFyZ2UtZm9udC1zaXplLWw6ICAgICAgICAgICAgICAgICAgICAgIDZyZW0gIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyA5NnB4XG4kaGVhZGluZy14bGFyZ2UtZm9udC1zaXplLWw6ICAgICAgICAgICAgICAgICAgICAgOHJlbSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIDEyOHB4XG4kaGVhZGluZy0yeGxhcmdlLWZvbnQtc2l6ZS1sOiAgICAgICAgICAgICAgICAgICAgMTFyZW0gIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIDE3NnB4XG5cbiRoZWFkaW5nLXNtYWxsLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZy1tZWRpdW0tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgMS4xICFkZWZhdWx0O1xuJGhlYWRpbmctbGFyZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgIDEuMSAhZGVmYXVsdDtcbiRoZWFkaW5nLXhsYXJnZS1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAxICFkZWZhdWx0O1xuJGhlYWRpbmctMnhsYXJnZS1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDEgIWRlZmF1bHQ7XG5cbiRoZWFkaW5nLWRpdmlkZXItcGFkZGluZy1ib3R0b206ICAgICAgICAgICAgICAgICB1bnF1b3RlKCdjYWxjKDVweCArIDAuMWVtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctZGl2aWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgIHVucXVvdGUoJ2NhbGMoMC4ycHggKyAwLjA1ZW0pJykgIWRlZmF1bHQ7XG4kaGVhZGluZy1kaXZpZGVyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRoZWFkaW5nLWJ1bGxldC10b3A6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnF1b3RlKCdjYWxjKC0wLjEgKiAxZW0pJykgIWRlZmF1bHQ7XG4kaGVhZGluZy1idWxsZXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgdW5xdW90ZSgnY2FsYyg0cHggKyAwLjdlbSknKSAhZGVmYXVsdDtcbiRoZWFkaW5nLWJ1bGxldC1tYXJnaW4tcmlnaHQ6ICAgICAgICAgICAgICAgICAgICB1bnF1b3RlKCdjYWxjKDVweCArIDAuMmVtKScpICFkZWZhdWx0O1xuJGhlYWRpbmctYnVsbGV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgIHVucXVvdGUoJ2NhbGMoNXB4ICsgMC4xZW0pJykgIWRlZmF1bHQ7XG4kaGVhZGluZy1idWxsZXQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRoZWFkaW5nLWxpbmUtdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kaGVhZGluZy1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctbGluZS1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaGVhZGluZy1saW5lLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjAwMHB4ICFkZWZhdWx0O1xuJGhlYWRpbmctbGluZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIHVucXVvdGUoJ2NhbGMoMC4ycHggKyAwLjA1ZW0pJykgIWRlZmF1bHQ7XG4kaGVhZGluZy1saW5lLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kaGVhZGluZy1saW5lLW1hcmdpbi1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgdW5xdW90ZSgnY2FsYyg1cHggKyAwLjNlbSknKSAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogSGVhZGluZ1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1oZWFkaW5nLXNtYWxsIHtcbiAgICBmb250LXNpemU6ICRoZWFkaW5nLXNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGhlYWRpbmctc21hbGwtbGluZS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWhlYWRpbmctc21hbGwpKSB7QGluY2x1ZGUgaG9vay1oZWFkaW5nLXNtYWxsKCk7fVxufVxuXG4udWstaGVhZGluZy1tZWRpdW0ge1xuICAgIGZvbnQtc2l6ZTogJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGhlYWRpbmctbWVkaXVtLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1oZWFkaW5nLW1lZGl1bSkpIHtAaW5jbHVkZSBob29rLWhlYWRpbmctbWVkaXVtKCk7fVxufVxuXG4udWstaGVhZGluZy1sYXJnZSB7XG4gICAgZm9udC1zaXplOiAkaGVhZGluZy1sYXJnZS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRoZWFkaW5nLWxhcmdlLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1oZWFkaW5nLWxhcmdlKSkge0BpbmNsdWRlIGhvb2staGVhZGluZy1sYXJnZSgpO31cbn1cblxuLnVrLWhlYWRpbmcteGxhcmdlIHtcbiAgICBmb250LXNpemU6ICRoZWFkaW5nLXhsYXJnZS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRoZWFkaW5nLXhsYXJnZS1saW5lLWhlaWdodDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staGVhZGluZy14bGFyZ2UpKSB7QGluY2x1ZGUgaG9vay1oZWFkaW5nLXhsYXJnZSgpO31cbn1cblxuLnVrLWhlYWRpbmctMnhsYXJnZSB7XG4gICAgZm9udC1zaXplOiAkaGVhZGluZy0yeGxhcmdlLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGhlYWRpbmctMnhsYXJnZS1saW5lLWhlaWdodDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staGVhZGluZy0yeGxhcmdlKSkge0BpbmNsdWRlIGhvb2staGVhZGluZy0yeGxhcmdlKCk7fVxufVxuXG4vKiBUYWJsZXQgTGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1oZWFkaW5nLXNtYWxsIHsgZm9udC1zaXplOiAkaGVhZGluZy1zbWFsbC1mb250LXNpemUtbTsgfVxuICAgIC51ay1oZWFkaW5nLW1lZGl1bSB7IGZvbnQtc2l6ZTogJGhlYWRpbmctbWVkaXVtLWZvbnQtc2l6ZS1tOyB9XG4gICAgLnVrLWhlYWRpbmctbGFyZ2UgeyBmb250LXNpemU6ICRoZWFkaW5nLWxhcmdlLWZvbnQtc2l6ZS1tOyB9XG4gICAgLnVrLWhlYWRpbmcteGxhcmdlIHsgZm9udC1zaXplOiAkaGVhZGluZy14bGFyZ2UtZm9udC1zaXplLW07IH1cbiAgICAudWstaGVhZGluZy0yeGxhcmdlIHsgZm9udC1zaXplOiAkaGVhZGluZy0yeGxhcmdlLWZvbnQtc2l6ZS1tOyB9XG5cbn1cblxuLyogTGFwdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgLnVrLWhlYWRpbmctbWVkaXVtIHsgZm9udC1zaXplOiAkaGVhZGluZy1tZWRpdW0tZm9udC1zaXplLWw7IH1cbiAgICAudWstaGVhZGluZy1sYXJnZSB7IGZvbnQtc2l6ZTogJGhlYWRpbmctbGFyZ2UtZm9udC1zaXplLWw7IH1cbiAgICAudWstaGVhZGluZy14bGFyZ2UgeyBmb250LXNpemU6ICRoZWFkaW5nLXhsYXJnZS1mb250LXNpemUtbDsgfVxuICAgIC51ay1oZWFkaW5nLTJ4bGFyZ2UgeyBmb250LXNpemU6ICRoZWFkaW5nLTJ4bGFyZ2UtZm9udC1zaXplLWw7IH1cblxufVxuXG5cbi8qIFByaW1hcnlcbiAgIERlcHJlY2F0ZWQ6IFVzZSBgdWstaGVhZGluZy1tZWRpdW1gIGluc3RlYWRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4kaGVhZGluZy1wcmltYXJ5LWZvbnQtc2l6ZS1sOiAgICAgICAgICAgICAgICAgICAgMy43NXJlbSAhZGVmYXVsdDsgIC8vIDYwcHhcbiRoZWFkaW5nLXByaW1hcnktbGluZS1oZWlnaHQtbDogICAgICAgICAgICAgICAgICAxLjEgIWRlZmF1bHQ7XG5cbiRoZWFkaW5nLXByaW1hcnktZm9udC1zaXplLW06ICAgICAgICAgICAgICAgICAgICAkaGVhZGluZy1wcmltYXJ5LWZvbnQtc2l6ZS1sICogMC45ICFkZWZhdWx0OyAvLyA1NHB4XG5cbiRoZWFkaW5nLXByaW1hcnktZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAkaGVhZGluZy1wcmltYXJ5LWZvbnQtc2l6ZS1sICogMC44ICFkZWZhdWx0OyAvLyA0OHB4XG4kaGVhZGluZy1wcmltYXJ5LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgMS4yICFkZWZhdWx0O1xuXG5AaWYgKCRkZXByZWNhdGVkID09IHRydWUpIHtcbi51ay1oZWFkaW5nLXByaW1hcnkge1xuICAgIGZvbnQtc2l6ZTogJGhlYWRpbmctcHJpbWFyeS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRoZWFkaW5nLXByaW1hcnktbGluZS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWhlYWRpbmctcHJpbWFyeSkpIHtAaW5jbHVkZSBob29rLWhlYWRpbmctcHJpbWFyeSgpO31cbn1cbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICBAaWYgKCRkZXByZWNhdGVkID09IHRydWUpIHtcbi51ay1oZWFkaW5nLXByaW1hcnkgeyBmb250LXNpemU6ICRoZWFkaW5nLXByaW1hcnktZm9udC1zaXplLW07IH1cbn1cblxufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgQGlmICgkZGVwcmVjYXRlZCA9PSB0cnVlKSB7XG4udWstaGVhZGluZy1wcmltYXJ5IHtcbiAgICAgICAgZm9udC1zaXplOiAkaGVhZGluZy1wcmltYXJ5LWZvbnQtc2l6ZS1sO1xuICAgICAgICBsaW5lLWhlaWdodDogJGhlYWRpbmctcHJpbWFyeS1saW5lLWhlaWdodC1sO1xuICAgIH1cbn1cblxufVxuXG5cbi8qIEhlcm9cbiAgIERlcHJlY2F0ZWQ6IFVzZSBgdWstaGVhZGluZy14bGFyZ2VgIGluc3RlYWRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4kaGVhZGluZy1oZXJvLWZvbnQtc2l6ZS1sOiAgICAgICAgICAgICAgICAgICAgICAgOHJlbSAhZGVmYXVsdDsgLy8gMTI4cHhcbiRoZWFkaW5nLWhlcm8tbGluZS1oZWlnaHQtbDogICAgICAgICAgICAgICAgICAgICAxICFkZWZhdWx0O1xuXG4kaGVhZGluZy1oZXJvLWZvbnQtc2l6ZS1tOiAgICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctaGVyby1mb250LXNpemUtbCAqIDAuNzUgIWRlZmF1bHQ7IC8vIDk2cHhcbiRoZWFkaW5nLWhlcm8tbGluZS1oZWlnaHQtbTogICAgICAgICAgICAgICAgICAgICAxICFkZWZhdWx0O1xuXG4kaGVhZGluZy1oZXJvLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgJGhlYWRpbmctaGVyby1mb250LXNpemUtbCAqIDAuNSAhZGVmYXVsdDsgLy8gNjRweFxuJGhlYWRpbmctaGVyby1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIDEuMSAhZGVmYXVsdDtcblxuQGlmICgkZGVwcmVjYXRlZCA9PSB0cnVlKSB7XG4udWstaGVhZGluZy1oZXJvIHtcbiAgICBmb250LXNpemU6ICRoZWFkaW5nLWhlcm8tZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGluZy1oZXJvLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1oZWFkaW5nLWhlcm8pKSB7QGluY2x1ZGUgaG9vay1oZWFkaW5nLWhlcm8oKTt9XG59XG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgQGlmICgkZGVwcmVjYXRlZCA9PSB0cnVlKSB7XG4udWstaGVhZGluZy1oZXJvIHtcbiAgICAgICAgZm9udC1zaXplOiAkaGVhZGluZy1oZXJvLWZvbnQtc2l6ZS1tO1xuICAgICAgICBsaW5lLWhlaWdodDogJGhlYWRpbmctaGVyby1saW5lLWhlaWdodC1tO1xuICAgIH1cbn1cblxufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgQGlmICgkZGVwcmVjYXRlZCA9PSB0cnVlKSB7XG4udWstaGVhZGluZy1oZXJvIHtcbiAgICAgICAgZm9udC1zaXplOiAkaGVhZGluZy1oZXJvLWZvbnQtc2l6ZS1sO1xuICAgICAgICBsaW5lLWhlaWdodDogJGhlYWRpbmctaGVyby1saW5lLWhlaWdodC1sO1xuICAgIH1cbn1cblxufVxuXG5cbi8qIERpdmlkZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstaGVhZGluZy1kaXZpZGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGhlYWRpbmctZGl2aWRlci1wYWRkaW5nLWJvdHRvbTtcbiAgICBib3JkZXItYm90dG9tOiAkaGVhZGluZy1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkaGVhZGluZy1kaXZpZGVyLWJvcmRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staGVhZGluZy1kaXZpZGVyKSkge0BpbmNsdWRlIGhvb2staGVhZGluZy1kaXZpZGVyKCk7fVxufVxuXG5cbi8qIEJ1bGxldFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1oZWFkaW5nLWJ1bGxldCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4vKlxuICogMS4gVXNpbmcgYGlubGluZS1ibG9ja2AgdG8gbWFrZSBpdCB3b3JrIHdpdGggdGV4dCBhbGlnbm1lbnRcbiAqIDIuIENlbnRlciB2ZXJ0aWNhbGx5XG4gKiAzLiBTdHlsZVxuICovXG5cbi51ay1oZWFkaW5nLWJ1bGxldDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIC8qIDEgKi9cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgLyogMiAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6ICRoZWFkaW5nLWJ1bGxldC10b3A7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAvKiAzICovXG4gICAgaGVpZ2h0OiAkaGVhZGluZy1idWxsZXQtaGVpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogJGhlYWRpbmctYnVsbGV0LW1hcmdpbi1yaWdodDtcbiAgICBib3JkZXItbGVmdDogJGhlYWRpbmctYnVsbGV0LWJvcmRlci13aWR0aCBzb2xpZCAkaGVhZGluZy1idWxsZXQtYm9yZGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1oZWFkaW5nLWJ1bGxldCkpIHtAaW5jbHVkZSBob29rLWhlYWRpbmctYnVsbGV0KCk7fVxufVxuXG5cbi8qIExpbmVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQ2xpcCB0aGUgY2hpbGQgZWxlbWVudFxuICovXG5cbi51ay1oZWFkaW5nLWxpbmUgeyBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qXG4gKiBFeHRyYSBtYXJrdXAgaXMgbmVlZGVkIHRvIG1ha2UgaXQgd29yayB3aXRoIHRleHQgYWxpZ25cbiAqL1xuXG4udWstaGVhZGluZy1saW5lID4gKiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLypcbiAqIDEuIENlbnRlciB2ZXJ0aWNhbGx5XG4gKiAyLiBNYWtlIHRoZSBlbGVtZW50IGFzIGxhcmdlIGFzIHBvc3NpYmxlLiBJdCdzIGNsaXBwZWQgYnkgdGhlIGNvbnRhaW5lci5cbiAqIDMuIFN0eWxlXG4gKi9cblxuLnVrLWhlYWRpbmctbGluZSA+IDo6YmVmb3JlLFxuLnVrLWhlYWRpbmctbGluZSA+IDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgLyogMSAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IHVucXVvdGUoJ2NhbGMoI3skaGVhZGluZy1saW5lLXRvcH0gLSAoI3skaGVhZGluZy1saW5lLWhlaWdodH0gLyAyKSknKTtcbiAgICAvKiAyICovXG4gICAgd2lkdGg6ICRoZWFkaW5nLWxpbmUtd2lkdGg7XG4gICAgLyogMyAqL1xuICAgIGJvcmRlci1ib3R0b206ICRoZWFkaW5nLWxpbmUtYm9yZGVyLXdpZHRoIHNvbGlkICRoZWFkaW5nLWxpbmUtYm9yZGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1oZWFkaW5nLWxpbmUpKSB7QGluY2x1ZGUgaG9vay1oZWFkaW5nLWxpbmUoKTt9XG59XG5cbi51ay1oZWFkaW5nLWxpbmUgPiA6OmJlZm9yZSB7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAkaGVhZGluZy1saW5lLW1hcmdpbi1ob3Jpem9udGFsO1xufVxuLnVrLWhlYWRpbmctbGluZSA+IDo6YWZ0ZXIge1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6ICRoZWFkaW5nLWxpbmUtbWFyZ2luLWhvcml6b250YWw7XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2staGVhZGluZy1taXNjKSkge0BpbmNsdWRlIGhvb2staGVhZGluZy1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1oZWFkaW5nLXNtYWxsKCl7fVxuLy8gQG1peGluIGhvb2staGVhZGluZy1tZWRpdW0oKXt9XG4vLyBAbWl4aW4gaG9vay1oZWFkaW5nLWxhcmdlKCl7fVxuLy8gQG1peGluIGhvb2staGVhZGluZy14bGFyZ2UoKXt9XG4vLyBAbWl4aW4gaG9vay1oZWFkaW5nLTJ4bGFyZ2UoKXt9XG4vLyBAbWl4aW4gaG9vay1oZWFkaW5nLXByaW1hcnkoKXt9XG4vLyBAbWl4aW4gaG9vay1oZWFkaW5nLWhlcm8oKXt9XG4vLyBAbWl4aW4gaG9vay1oZWFkaW5nLWRpdmlkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1oZWFkaW5nLWJ1bGxldCgpe31cbi8vIEBtaXhpbiBob29rLWhlYWRpbmctbGluZSgpe31cbi8vIEBtaXhpbiBob29rLWhlYWRpbmctbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGludmVyc2UtaGVhZGluZy1kaXZpZGVyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRpbnZlcnNlLWhlYWRpbmctYnVsbGV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kaW52ZXJzZS1oZWFkaW5nLWxpbmUtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLXNtYWxsKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLW1lZGl1bSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtaGVhZGluZy1sYXJnZSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtaGVhZGluZy14bGFyZ2UoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWhlYWRpbmctMnhsYXJnZSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtaGVhZGluZy1wcmltYXJ5KCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLWhlcm8oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWhlYWRpbmctZGl2aWRlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtaGVhZGluZy1idWxsZXQoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWhlYWRpbmctbGluZSgpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgRGl2aWRlclxuLy8gRGVzY3JpcHRpb246ICAgICBTdHlsZXMgZm9yIGRpdmlkZXJzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstZGl2aWRlci1pY29uYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZGl2aWRlci1zbWFsbGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRpdmlkZXItdmVydGljYWxgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGRpdmlkZXItbWFyZ2luLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4kZGl2aWRlci1pY29uLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcbiRkaXZpZGVyLWljb24taGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuJGRpdmlkZXItaWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGRpdmlkZXItaWNvbi1saW5lLXRvcDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRkaXZpZGVyLWljb24tbGluZS13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGRpdmlkZXItaWNvbi1saW5lLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRpdmlkZXItaWNvbi1saW5lLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuXG4kaW50ZXJuYWwtZGl2aWRlci1pY29uLWltYWdlOiBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjAlMjIlMjBoZWlnaHQlM0QlMjIyMCUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDIwJTIwMjAlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ2NpcmNsZSUyMGZpbGwlM0QlMjJub25lJTIyJTIwc3Ryb2tlJTNEJTIyIzAwMCUyMiUyMHN0cm9rZS13aWR0aCUzRCUyMjIlMjIlMjBjeCUzRCUyMjEwJTIyJTIwY3klM0QlMjIxMCUyMiUyMHIlM0QlMjI3JTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFJTBBXCIgIWRlZmF1bHQ7XG5cbiRkaXZpZGVyLXNtYWxsLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMDBweCAhZGVmYXVsdDtcbiRkaXZpZGVyLXNtYWxsLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkaXZpZGVyLXNtYWxsLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcblxuJGRpdmlkZXItdmVydGljYWwtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgIDEwMHB4ICFkZWZhdWx0O1xuJGRpdmlkZXItdmVydGljYWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRpdmlkZXItdmVydGljYWwtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBEaXZpZGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFJlc2V0IGRlZmF1bHQgYGhyYFxuICogMi4gU2V0IG1hcmdpbiBpZiBhIGBkaXZgIGlzIHVzZWQgZm9yIHNlbWFudGljYWwgcmVhc29uXG4gKi9cblxuW2NsYXNzKj0ndWstZGl2aWRlciddIHtcbiAgICAvKiAxICovXG4gICAgYm9yZGVyOiBub25lO1xuICAgIC8qIDIgKi9cbiAgICBtYXJnaW4tYm90dG9tOiAkZGl2aWRlci1tYXJnaW4tdmVydGljYWw7XG59XG5cbi8qIEFkZCBtYXJnaW4gaWYgYWRqYWNlbnQgZWxlbWVudCAqL1xuKiArIFtjbGFzcyo9J3VrLWRpdmlkZXInXSB7IG1hcmdpbi10b3A6ICRkaXZpZGVyLW1hcmdpbi12ZXJ0aWNhbDsgfVxuXG5cbi8qIEljb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstZGl2aWRlci1pY29uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAkZGl2aWRlci1pY29uLWhlaWdodDtcbiAgICBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtZGl2aWRlci1pY29uLWltYWdlLCBcIiMwMDBcIiwgJGRpdmlkZXItaWNvbi1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1kaXZpZGVyLWljb24pKSB7QGluY2x1ZGUgaG9vay1kaXZpZGVyLWljb24oKTt9XG59XG5cbi51ay1kaXZpZGVyLWljb246OmJlZm9yZSxcbi51ay1kaXZpZGVyLWljb246OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICRkaXZpZGVyLWljb24tbGluZS10b3A7XG4gICAgbWF4LXdpZHRoOiB1bnF1b3RlKCdjYWxjKDUwJSAtICgjeyRkaXZpZGVyLWljb24td2lkdGh9IC8gMikpJyk7XG4gICAgYm9yZGVyLWJvdHRvbTogJGRpdmlkZXItaWNvbi1saW5lLWJvcmRlci13aWR0aCBzb2xpZCAkZGl2aWRlci1pY29uLWxpbmUtYm9yZGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1kaXZpZGVyLWljb24tbGluZSkpIHtAaW5jbHVkZSBob29rLWRpdmlkZXItaWNvbi1saW5lKCk7fVxufVxuXG4udWstZGl2aWRlci1pY29uOjpiZWZvcmUge1xuICAgIHJpZ2h0OiB1bnF1b3RlKCdjYWxjKDUwJSArICgjeyRkaXZpZGVyLWljb24td2lkdGh9IC8gMikpJyk7XG4gICAgd2lkdGg6ICRkaXZpZGVyLWljb24tbGluZS13aWR0aDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZGl2aWRlci1pY29uLWxpbmUtbGVmdCkpIHtAaW5jbHVkZSBob29rLWRpdmlkZXItaWNvbi1saW5lLWxlZnQoKTt9XG59XG5cbi51ay1kaXZpZGVyLWljb246OmFmdGVyIHtcbiAgICBsZWZ0OiB1bnF1b3RlKCdjYWxjKDUwJSArICgjeyRkaXZpZGVyLWljb24td2lkdGh9IC8gMikpJyk7XG4gICAgd2lkdGg6ICRkaXZpZGVyLWljb24tbGluZS13aWR0aDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZGl2aWRlci1pY29uLWxpbmUtcmlnaHQpKSB7QGluY2x1ZGUgaG9vay1kaXZpZGVyLWljb24tbGluZS1yaWdodCgpO31cbn1cblxuXG4vKiBTbWFsbFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBGaXggaGVpZ2h0IGJlY2F1c2Ugb2YgYGlubGluZS1ibG9ja2BcbiAqIDIuIFVzaW5nIDo6YWZ0ZXIgYW5kIGlubGluZS1ibG9jayB0byBtYWtlIGB0ZXh0LWFsaWduYCB3b3JrXG4gKi9cblxuLyogMSAqL1xuLnVrLWRpdmlkZXItc21hbGwgeyBsaW5lLWhlaWdodDogMDsgfVxuXG4vKiAyICovXG4udWstZGl2aWRlci1zbWFsbDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAkZGl2aWRlci1zbWFsbC13aWR0aDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXRvcDogJGRpdmlkZXItc21hbGwtYm9yZGVyLXdpZHRoIHNvbGlkICRkaXZpZGVyLXNtYWxsLWJvcmRlcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1kaXZpZGVyLXNtYWxsKSkge0BpbmNsdWRlIGhvb2stZGl2aWRlci1zbWFsbCgpO31cbn1cblxuXG4vKiBWZXJ0aWNhbFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1kaXZpZGVyLXZlcnRpY2FsIHtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogJGRpdmlkZXItdmVydGljYWwtaGVpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBib3JkZXItbGVmdDogJGRpdmlkZXItdmVydGljYWwtYm9yZGVyLXdpZHRoIHNvbGlkICRkaXZpZGVyLXZlcnRpY2FsLWJvcmRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZGl2aWRlci12ZXJ0aWNhbCkpIHtAaW5jbHVkZSBob29rLWRpdmlkZXItdmVydGljYWwoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stZGl2aWRlci1taXNjKSkge0BpbmNsdWRlIGhvb2stZGl2aWRlci1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1kaXZpZGVyLWljb24oKXt9XG4vLyBAbWl4aW4gaG9vay1kaXZpZGVyLWljb24tbGluZSgpe31cbi8vIEBtaXhpbiBob29rLWRpdmlkZXItaWNvbi1saW5lLWxlZnQoKXt9XG4vLyBAbWl4aW4gaG9vay1kaXZpZGVyLWljb24tbGluZS1yaWdodCgpe31cbi8vIEBtaXhpbiBob29rLWRpdmlkZXItc21hbGwoKXt9XG4vLyBAbWl4aW4gaG9vay1kaXZpZGVyLXZlcnRpY2FsKCl7fVxuLy8gQG1peGluIGhvb2stZGl2aWRlci1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kaW52ZXJzZS1kaXZpZGVyLWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGludmVyc2UtZGl2aWRlci1pY29uLWxpbmUtYm9yZGVyOiAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRpbnZlcnNlLWRpdmlkZXItc21hbGwtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kaW52ZXJzZS1kaXZpZGVyLXZlcnRpY2FsLWJvcmRlcjogICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1kaXZpZGVyLWljb24oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWRpdmlkZXItaWNvbi1saW5lKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1kaXZpZGVyLXNtYWxsKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1kaXZpZGVyLXZlcnRpY2FsKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBMaXN0XG4vLyBEZXNjcmlwdGlvbjogICAgIFN0eWxlcyBmb3IgbGlzdHNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1saXN0YFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLWxpc3QtZGlzY2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxpc3QtY2lyY2xlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGlzdC1zcXVhcmVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saXN0LWRlY2ltYWxgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saXN0LWh5cGhlbmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxpc3QtbXV0ZWRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saXN0LWVtcGhhc2lzYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGlzdC1wcmltYXJ5YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGlzdC1zZWNvbmRhcnlgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saXN0LWJ1bGxldGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxpc3QtZGl2aWRlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxpc3Qtc3RyaXBlZGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxpc3QtbGFyZ2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saXN0LWNvbGxhcHNlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRsaXN0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLW1hcmdpbiAhZGVmYXVsdDtcblxuJGxpc3QtcGFkZGluZy1sZWZ0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG5cbiRsaXN0LW1hcmtlci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoJGdsb2JhbC1saW5lLWhlaWdodCAqIDFlbSkgIWRlZmF1bHQ7XG5cbiRsaXN0LW11dGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZW1waGFzaXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbGlzdC1zZWNvbmRhcnktY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zZWNvbmRhcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuJGxpc3QtYnVsbGV0LWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWRpdmlkZXItbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLW1hcmdpbiAhZGVmYXVsdDtcbiRsaXN0LWRpdmlkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWRpdmlkZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcblxuJGxpc3Qtc3RyaXBlZC1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtbWFyZ2luICFkZWZhdWx0O1xuJGxpc3Qtc3RyaXBlZC1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtbWFyZ2luICFkZWZhdWx0O1xuJGxpc3Qtc3RyaXBlZC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuJGxpc3QtbGFyZ2UtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGxpc3QtbGFyZ2UtZGl2aWRlci1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGxpc3QtbGFyZ2Utc3RyaXBlZC1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGxpc3QtbGFyZ2Utc3RyaXBlZC1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICRnbG9iYWwtc21hbGwtbWFyZ2luICFkZWZhdWx0O1xuXG4kaW50ZXJuYWwtbGlzdC1idWxsZXQtaW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjI2JTIyJTIwaGVpZ2h0JTNEJTIyNiUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDYlMjA2JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlMEElMjAlMjAlMjAlMjAlM0NjaXJjbGUlMjBmaWxsJTNEJTIyIzAwMCUyMiUyMGN4JTNEJTIyMyUyMiUyMGN5JTNEJTIyMyUyMiUyMHIlM0QlMjIzJTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFXCIgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IExpc3RcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbGlzdCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cblxuLnVrLWxpc3QgPiAqID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi8qXG4gKiBTdHlsZVxuICovXG5cbi51ay1saXN0ID4gOm50aC1jaGlsZChuKzIpLFxuLnVrLWxpc3QgPiAqID4gdWwgeyBtYXJnaW4tdG9wOiAkbGlzdC1tYXJnaW4tdG9wOyB9XG5cblxuLyogTWFya2VyIG1vZGlmaWVyc1xuICogTW92aW5nIGA6Om1hcmtlcmAgaW5zaWRlIGA6OmJlZm9yZWAgdG8gc3R5bGUgaXQgZGlmZmVyZW50bHlcbiAqIFRvIHN0eWxlIHRoZSBgOjptYXJrZXJgIGlzIGN1cnJlbnRseSBvbmx5IHN1cHBvcnRlZCBpbiBGaXJlZm94IGFuZCBTYWZhcmlcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbGlzdC1kaXNjID4gKixcbi51ay1saXN0LWNpcmNsZSA+ICosXG4udWstbGlzdC1zcXVhcmUgPiAqLFxuLnVrLWxpc3QtZGVjaW1hbCA+ICosXG4udWstbGlzdC1oeXBoZW4gPiAqIHsgcGFkZGluZy1sZWZ0OiAkbGlzdC1wYWRkaW5nLWxlZnQ7IH1cblxuLypcbiAqIFR5cGUgbW9kaWZpZXJzXG4gKi9cblxuLnVrLWxpc3QtZGVjaW1hbCB7IGNvdW50ZXItcmVzZXQ6IGRlY2ltYWw7IH1cbi51ay1saXN0LWRlY2ltYWwgPiAqIHsgY291bnRlci1pbmNyZW1lbnQ6IGRlY2ltYWw7IH1cblxuW2NsYXNzKj0ndWstbGlzdCddID4gOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAoLSRsaXN0LXBhZGRpbmctbGVmdCk7XG4gICAgd2lkdGg6ICRsaXN0LXBhZGRpbmctbGVmdDtcbiAgICBoZWlnaHQ6ICRsaXN0LW1hcmtlci1oZWlnaHQ7XG4gICAgbWFyZ2luLWJvdHRvbTogKC0kbGlzdC1tYXJrZXItaGVpZ2h0KTtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udWstbGlzdC1kaXNjID4gOjpiZWZvcmUgeyBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7IH1cbi51ay1saXN0LWNpcmNsZSA+IDo6YmVmb3JlIHsgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7IH1cbi51ay1saXN0LXNxdWFyZSA+IDo6YmVmb3JlIHsgbGlzdC1zdHlsZS10eXBlOiBzcXVhcmU7IH1cbi51ay1saXN0LWRlY2ltYWwgPiA6OmJlZm9yZSB7IGNvbnRlbnQ6IGNvdW50ZXIoZGVjaW1hbCwgZGVjaW1hbCkgJ1xcMjAwQS5cXDAwQTAnOyB9XG4udWstbGlzdC1oeXBoZW4gPiA6OmJlZm9yZSB7IGNvbnRlbnQ6ICfigJNcXDAwQTBcXDAwQTAnOyB9XG5cbi8qXG4gKiBDb2xvciBtb2RpZmllcnNcbiAqL1xuXG4udWstbGlzdC1tdXRlZCA+IDo6YmVmb3JlIHsgY29sb3I6ICRsaXN0LW11dGVkLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi51ay1saXN0LWVtcGhhc2lzID4gOjpiZWZvcmUgeyBjb2xvcjogJGxpc3QtZW1waGFzaXMtY29sb3IgIWltcG9ydGFudDsgfVxuLnVrLWxpc3QtcHJpbWFyeSA+IDo6YmVmb3JlIHsgY29sb3I6ICRsaXN0LXByaW1hcnktY29sb3IgIWltcG9ydGFudDsgfVxuLnVrLWxpc3Qtc2Vjb25kYXJ5ID4gOjpiZWZvcmUgeyBjb2xvcjogJGxpc3Qtc2Vjb25kYXJ5LWNvbG9yICFpbXBvcnRhbnQ7IH1cblxuXG4vKiBJbWFnZSBidWxsZXQgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbGlzdC1idWxsZXQgPiAqIHsgcGFkZGluZy1sZWZ0OiAkbGlzdC1wYWRkaW5nLWxlZnQ7IH1cblxuLnVrLWxpc3QtYnVsbGV0ID4gOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6ICgtJGxpc3QtcGFkZGluZy1sZWZ0KTtcbiAgICB3aWR0aDogJGxpc3QtcGFkZGluZy1sZWZ0O1xuICAgIGhlaWdodDogJGxpc3QtbWFya2VyLWhlaWdodDtcbiAgICBtYXJnaW4tYm90dG9tOiAoLSRsaXN0LW1hcmtlci1oZWlnaHQpO1xuICAgIEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1saXN0LWJ1bGxldC1pbWFnZSwgXCIjMDAwXCIsICRsaXN0LWJ1bGxldC1pY29uLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG59XG5cblxuLyogU3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIERpdmlkZXJcbiAqL1xuXG4udWstbGlzdC1kaXZpZGVyID4gOm50aC1jaGlsZChuKzIpIHtcbiAgICBtYXJnaW4tdG9wOiAkbGlzdC1kaXZpZGVyLW1hcmdpbi10b3A7XG4gICAgcGFkZGluZy10b3A6ICRsaXN0LWRpdmlkZXItbWFyZ2luLXRvcDtcbiAgICBib3JkZXItdG9wOiAkbGlzdC1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1kaXZpZGVyLWJvcmRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbGlzdC1kaXZpZGVyKSkge0BpbmNsdWRlIGhvb2stbGlzdC1kaXZpZGVyKCk7fVxufVxuXG4vKlxuICogU3RyaXBlZFxuICovXG5cbi51ay1saXN0LXN0cmlwZWQgPiAqIHtcbiAgICBwYWRkaW5nOiAkbGlzdC1zdHJpcGVkLXBhZGRpbmctdmVydGljYWwgJGxpc3Qtc3RyaXBlZC1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWxpc3Qtc3RyaXBlZCkpIHtAaW5jbHVkZSBob29rLWxpc3Qtc3RyaXBlZCgpO31cbn1cblxuLnVrLWxpc3Qtc3RyaXBlZCA+IDpudGgtb2YtdHlwZShvZGQpIHsgYmFja2dyb3VuZDogJGxpc3Qtc3RyaXBlZC1iYWNrZ3JvdW5kOyB9XG5cbi51ay1saXN0LXN0cmlwZWQgPiA6bnRoLWNoaWxkKG4rMikgeyBtYXJnaW4tdG9wOiAwOyB9XG5cblxuLyogU2l6ZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1saXN0LWxhcmdlID4gOm50aC1jaGlsZChuKzIpLFxuLnVrLWxpc3QtbGFyZ2UgPiAqID4gdWwgeyBtYXJnaW4tdG9wOiAkbGlzdC1sYXJnZS1tYXJnaW4tdG9wOyB9XG5cbi51ay1saXN0LWNvbGxhcHNlID4gOm50aC1jaGlsZChuKzIpLFxuLnVrLWxpc3QtY29sbGFwc2UgPiAqID4gdWwgeyBtYXJnaW4tdG9wOiAwOyB9XG5cbi8qXG4gKiBEaXZpZGVyXG4gKi9cblxuLnVrLWxpc3QtbGFyZ2UudWstbGlzdC1kaXZpZGVyID4gOm50aC1jaGlsZChuKzIpIHtcbiAgICBtYXJnaW4tdG9wOiAkbGlzdC1sYXJnZS1kaXZpZGVyLW1hcmdpbi10b3A7XG4gICAgcGFkZGluZy10b3A6ICRsaXN0LWxhcmdlLWRpdmlkZXItbWFyZ2luLXRvcDtcbn1cblxuLnVrLWxpc3QtY29sbGFwc2UudWstbGlzdC1kaXZpZGVyID4gOm50aC1jaGlsZChuKzIpIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xufVxuXG4vKlxuICogU3RyaXBlZFxuICovXG5cbi51ay1saXN0LWxhcmdlLnVrLWxpc3Qtc3RyaXBlZCA+ICogeyBwYWRkaW5nOiAkbGlzdC1sYXJnZS1zdHJpcGVkLXBhZGRpbmctdmVydGljYWwgJGxpc3QtbGFyZ2Utc3RyaXBlZC1wYWRkaW5nLWhvcml6b250YWw7IH1cblxuLnVrLWxpc3QtY29sbGFwc2UudWstbGlzdC1zdHJpcGVkID4gKiB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi51ay1saXN0LWxhcmdlLnVrLWxpc3Qtc3RyaXBlZCA+IDpudGgtY2hpbGQobisyKSxcbi51ay1saXN0LWNvbGxhcHNlLnVrLWxpc3Qtc3RyaXBlZCA+IDpudGgtY2hpbGQobisyKSB7IG1hcmdpbi10b3A6IDA7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1saXN0LW1pc2MpKSB7QGluY2x1ZGUgaG9vay1saXN0LW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWxpc3QtZGl2aWRlcigpe31cbi8vIEBtaXhpbiBob29rLWxpc3Qtc3RyaXBlZCgpe31cbi8vIEBtaXhpbiBob29rLWxpc3QtbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGludmVyc2UtbGlzdC1tdXRlZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbGlzdC1lbXBoYXNpcy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbGlzdC1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWxpc3Qtc2Vjb25kYXJ5LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiRpbnZlcnNlLWxpc3QtZGl2aWRlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kaW52ZXJzZS1saXN0LXN0cmlwZWQtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuJGludmVyc2UtbGlzdC1idWxsZXQtaWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1saXN0LWRpdmlkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWxpc3Qtc3RyaXBlZCgpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgRGVzY3JpcHRpb24gbGlzdFxuLy8gRGVzY3JpcHRpb246ICAgICBTdHlsZXMgZm9yIGRlc2NyaXB0aW9uIGxpc3RzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstZGVzY3JpcHRpb24tbGlzdGBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1kZXNjcmlwdGlvbi1saXN0LWRpdmlkZXJgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGRlc2NyaXB0aW9uLWxpc3QtdGVybS1jb2xvcjogICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kZGVzY3JpcHRpb24tbGlzdC10ZXJtLW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRkZXNjcmlwdGlvbi1saXN0LWRpdmlkZXItdGVybS1tYXJnaW4tdG9wOiAgICAgICAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRkZXNjcmlwdGlvbi1saXN0LWRpdmlkZXItdGVybS1ib3JkZXItd2lkdGg6ICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkZXNjcmlwdGlvbi1saXN0LWRpdmlkZXItdGVybS1ib3JkZXI6ICAgICAgICAgICAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogRGVzY3JpcHRpb24gbGlzdFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBUZXJtXG4gKi9cblxuLnVrLWRlc2NyaXB0aW9uLWxpc3QgPiBkdCB7XG4gICAgY29sb3I6ICRkZXNjcmlwdGlvbi1saXN0LXRlcm0tY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRlc2NyaXB0aW9uLWxpc3QtdGVybSkpIHtAaW5jbHVkZSBob29rLWRlc2NyaXB0aW9uLWxpc3QtdGVybSgpO31cbn1cblxuLnVrLWRlc2NyaXB0aW9uLWxpc3QgPiBkdDpudGgtY2hpbGQobisyKSB7XG4gICAgbWFyZ2luLXRvcDogJGRlc2NyaXB0aW9uLWxpc3QtdGVybS1tYXJnaW4tdG9wO1xufVxuXG4vKlxuICogRGVzY3JpcHRpb25cbiAqL1xuXG4udWstZGVzY3JpcHRpb24tbGlzdCA+IGRkIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZGVzY3JpcHRpb24tbGlzdC1kZXNjcmlwdGlvbikpIHtAaW5jbHVkZSBob29rLWRlc2NyaXB0aW9uLWxpc3QtZGVzY3JpcHRpb24oKTt9XG59XG5cblxuLyogU3R5bGUgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogTGluZVxuICovXG5cbi51ay1kZXNjcmlwdGlvbi1saXN0LWRpdmlkZXIgPiBkdDpudGgtY2hpbGQobisyKSB7XG4gICAgbWFyZ2luLXRvcDogJGRlc2NyaXB0aW9uLWxpc3QtZGl2aWRlci10ZXJtLW1hcmdpbi10b3A7XG4gICAgcGFkZGluZy10b3A6ICRkZXNjcmlwdGlvbi1saXN0LWRpdmlkZXItdGVybS1tYXJnaW4tdG9wO1xuICAgIGJvcmRlci10b3A6ICRkZXNjcmlwdGlvbi1saXN0LWRpdmlkZXItdGVybS1ib3JkZXItd2lkdGggc29saWQgJGRlc2NyaXB0aW9uLWxpc3QtZGl2aWRlci10ZXJtLWJvcmRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZGVzY3JpcHRpb24tbGlzdC1kaXZpZGVyLXRlcm0pKSB7QGluY2x1ZGUgaG9vay1kZXNjcmlwdGlvbi1saXN0LWRpdmlkZXItdGVybSgpO31cbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1kZXNjcmlwdGlvbi1saXN0LW1pc2MpKSB7QGluY2x1ZGUgaG9vay1kZXNjcmlwdGlvbi1saXN0LW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWRlc2NyaXB0aW9uLWxpc3QtdGVybSgpe31cbi8vIEBtaXhpbiBob29rLWRlc2NyaXB0aW9uLWxpc3QtZGVzY3JpcHRpb24oKXt9XG4vLyBAbWl4aW4gaG9vay1kZXNjcmlwdGlvbi1saXN0LWRpdmlkZXItdGVybSgpe31cbi8vIEBtaXhpbiBob29rLWRlc2NyaXB0aW9uLWxpc3QtbWlzYygpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIFRhYmxlXG4vLyBEZXNjcmlwdGlvbjogICAgIFN0eWxlcyBmb3IgdGFibGVzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstdGFibGVgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstdGFibGUtbWlkZGxlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdGFibGUtZGl2aWRlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRhYmxlLXN0cmlwZWRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10YWJsZS1ob3ZlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRhYmxlLXNtYWxsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdGFibGUtanVzdGlmeWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRhYmxlLXNocmlua2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRhYmxlLWV4cGFuZGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRhYmxlLWxpbmtgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10YWJsZS1yZXNwb25zaXZlYFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLWFjdGl2ZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kdGFibGUtbWFyZ2luLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jZWxsLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAxNnB4ICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgIDEycHggIWRlZmF1bHQ7XG5cbiR0YWJsZS1oZWFkZXItY2VsbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkZXItY2VsbC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICBib2xkICFkZWZhdWx0O1xuJHRhYmxlLWhlYWRlci1jZWxsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1mb290ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJHRhYmxlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1yb3ctYWN0aXZlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAjZmZkICFkZWZhdWx0O1xuXG4kdGFibGUtZGl2aWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGFibGUtZGl2aWRlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLXJvdy1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ob3Zlci1yb3ctYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAkdGFibGUtcm93LWFjdGl2ZS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4kdGFibGUtc21hbGwtY2VsbC1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiR0YWJsZS1zbWFsbC1jZWxsLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAxMnB4ICFkZWZhdWx0O1xuXG4kdGFibGUtbGFyZ2UtY2VsbC1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgMjJweCAhZGVmYXVsdDtcbiR0YWJsZS1sYXJnZS1jZWxsLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAxMnB4ICFkZWZhdWx0O1xuXG4kdGFibGUtZXhwYW5kLW1pbi13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgMTUwcHggIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFRhYmxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAqIDIuIEJlaGF2ZSBsaWtlIGEgYmxvY2sgZWxlbWVudFxuICogMy4gU3R5bGVcbiAqL1xuXG4udWstdGFibGUge1xuICAgIC8qIDEgKi9cbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgIC8qIDIgKi9cbiAgICB3aWR0aDogMTAwJTtcbiAgICAvKiAzICovXG4gICAgbWFyZ2luLWJvdHRvbTogJHRhYmxlLW1hcmdpbi12ZXJ0aWNhbDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFibGUpKSB7QGluY2x1ZGUgaG9vay10YWJsZSgpO31cbn1cblxuLyogQWRkIG1hcmdpbiBpZiBhZGphY2VudCBlbGVtZW50ICovXG4qICsgLnVrLXRhYmxlIHsgbWFyZ2luLXRvcDogJHRhYmxlLW1hcmdpbi12ZXJ0aWNhbDsgfVxuXG5cbi8qIEhlYWRlciBjZWxsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFN0eWxlXG4gKi9cblxuLnVrLXRhYmxlIHRoIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXZlcnRpY2FsICR0YWJsZS1jZWxsLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogJHRhYmxlLWhlYWRlci1jZWxsLWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogJHRhYmxlLWhlYWRlci1jZWxsLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZGVyLWNlbGwtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRhYmxlLWhlYWRlci1jZWxsKSkge0BpbmNsdWRlIGhvb2stdGFibGUtaGVhZGVyLWNlbGwoKTt9XG59XG5cblxuLyogQ2VsbFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay10YWJsZSB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy12ZXJ0aWNhbCAkdGFibGUtY2VsbC1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFibGUtY2VsbCkpIHtAaW5jbHVkZSBob29rLXRhYmxlLWNlbGwoKTt9XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstdGFibGUgdGQgPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuXG4vKiBGb290ZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdGFibGUgdGZvb3Qge1xuICAgIGZvbnQtc2l6ZTogJHRhYmxlLWZvb3Rlci1mb250LXNpemU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRhYmxlLWZvb3RlcikpIHtAaW5jbHVkZSBob29rLXRhYmxlLWZvb3RlcigpO31cbn1cblxuXG4vKiBDYXB0aW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRhYmxlIGNhcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogJHRhYmxlLWNhcHRpb24tZm9udC1zaXplO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10YWJsZS1jYXB0aW9uKSkge0BpbmNsdWRlIGhvb2stdGFibGUtY2FwdGlvbigpO31cbn1cblxuXG4vKiBBbGlnbm1lbnQgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdGFibGUtbWlkZGxlLFxuLnVrLXRhYmxlLW1pZGRsZSB0ZCB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDsgfVxuXG5cbi8qIFN0eWxlIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBEaXZpZGVyXG4gKi9cblxuLnVrLXRhYmxlLWRpdmlkZXIgPiB0cjpub3QoOmZpcnN0LWNoaWxkKSxcbi51ay10YWJsZS1kaXZpZGVyID4gOm5vdCg6Zmlyc3QtY2hpbGQpID4gdHIsXG4udWstdGFibGUtZGl2aWRlciA+IDpmaXJzdC1jaGlsZCA+IHRyOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBib3JkZXItdG9wOiAkdGFibGUtZGl2aWRlci1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWRpdmlkZXItYm9yZGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10YWJsZS1kaXZpZGVyKSkge0BpbmNsdWRlIGhvb2stdGFibGUtZGl2aWRlcigpO31cbn1cblxuLypcbiAqIFN0cmlwZWRcbiAqL1xuXG4udWstdGFibGUtc3RyaXBlZCA+IHRyOm50aC1vZi10eXBlKG9kZCksXG4udWstdGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShvZGQpIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtc3RyaXBlZC1yb3ctYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFibGUtc3RyaXBlZCkpIHtAaW5jbHVkZSBob29rLXRhYmxlLXN0cmlwZWQoKTt9XG59XG5cbi8qXG4gKiBIb3ZlclxuICovXG5cbi51ay10YWJsZS1ob3ZlciA+IHRyOmhvdmVyLFxuLnVrLXRhYmxlLWhvdmVyIHRib2R5IHRyOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtaG92ZXItcm93LWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRhYmxlLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stdGFibGUtaG92ZXIoKTt9XG59XG5cblxuLyogQWN0aXZlIHN0YXRlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRhYmxlID4gdHIudWstYWN0aXZlLFxuLnVrLXRhYmxlIHRib2R5IHRyLnVrLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLXJvdy1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFibGUtcm93LWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLXRhYmxlLXJvdy1hY3RpdmUoKTt9XG59XG5cbi8qIFNpemUgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdGFibGUtc21hbGwgdGgsXG4udWstdGFibGUtc21hbGwgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1zbWFsbC1jZWxsLXBhZGRpbmctdmVydGljYWwgJHRhYmxlLXNtYWxsLWNlbGwtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10YWJsZS1zbWFsbCkpIHtAaW5jbHVkZSBob29rLXRhYmxlLXNtYWxsKCk7fVxufVxuXG4udWstdGFibGUtbGFyZ2UgdGgsXG4udWstdGFibGUtbGFyZ2UgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1sYXJnZS1jZWxsLXBhZGRpbmctdmVydGljYWwgJHRhYmxlLWxhcmdlLWNlbGwtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10YWJsZS1sYXJnZSkpIHtAaW5jbHVkZSBob29rLXRhYmxlLWxhcmdlKCk7fVxufVxuXG5cbi8qIEp1c3RpZnkgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdGFibGUtanVzdGlmeSB0aDpmaXJzdC1jaGlsZCxcbi51ay10YWJsZS1qdXN0aWZ5IHRkOmZpcnN0LWNoaWxkIHsgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi51ay10YWJsZS1qdXN0aWZ5IHRoOmxhc3QtY2hpbGQsXG4udWstdGFibGUtanVzdGlmeSB0ZDpsYXN0LWNoaWxkIHsgcGFkZGluZy1yaWdodDogMDsgfVxuXG5cbi8qIENlbGwgc2l6ZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay10YWJsZS1zaHJpbmsgeyB3aWR0aDogMXB4OyB9XG4udWstdGFibGUtZXhwYW5kIHsgbWluLXdpZHRoOiAkdGFibGUtZXhwYW5kLW1pbi13aWR0aDsgfVxuXG5cbi8qIENlbGwgbGluayBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBEb2VzIG5vdCB3b3JrIHdpdGggYHVrLXRhYmxlLWp1c3RpZnlgIGF0IHRoZSBtb21lbnRcbiAqL1xuXG4udWstdGFibGUtbGluayB7IHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuXG4udWstdGFibGUtbGluayA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmctdmVydGljYWwgJHRhYmxlLWNlbGwtcGFkZGluZy1ob3Jpem9udGFsO1xufVxuXG4udWstdGFibGUtc21hbGwgLnVrLXRhYmxlLWxpbmsgPiBhIHsgcGFkZGluZzogJHRhYmxlLXNtYWxsLWNlbGwtcGFkZGluZy12ZXJ0aWNhbCAkdGFibGUtc21hbGwtY2VsbC1wYWRkaW5nLWhvcml6b250YWw7IH1cblxuXG4vKiBSZXNwb25zaXZlIHRhYmxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIHNtYWxsZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbC1tYXgpIHtcblxuICAgIC51ay10YWJsZS1yZXNwb25zaXZlLFxuICAgIC51ay10YWJsZS1yZXNwb25zaXZlIHRib2R5LFxuICAgIC51ay10YWJsZS1yZXNwb25zaXZlIHRoLFxuICAgIC51ay10YWJsZS1yZXNwb25zaXZlIHRkLFxuICAgIC51ay10YWJsZS1yZXNwb25zaXZlIHRyIHsgZGlzcGxheTogYmxvY2s7IH1cblxuICAgIC51ay10YWJsZS1yZXNwb25zaXZlIHRoZWFkIHsgZGlzcGxheTogbm9uZTsgfVxuXG4gICAgLnVrLXRhYmxlLXJlc3BvbnNpdmUgdGgsXG4gICAgLnVrLXRhYmxlLXJlc3BvbnNpdmUgdGQge1xuICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAudWstdGFibGUtcmVzcG9uc2l2ZSB0aDpub3QoOmZpcnN0LWNoaWxkKTpub3QoLnVrLXRhYmxlLWxpbmspLFxuICAgIC51ay10YWJsZS1yZXNwb25zaXZlIHRkOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCgudWstdGFibGUtbGluayksXG4gICAgLnVrLXRhYmxlLXJlc3BvbnNpdmUgLnVrLXRhYmxlLWxpbms6bm90KDpmaXJzdC1jaGlsZCkgPiBhIHsgcGFkZGluZy10b3A6IHJvdW5kKCR0YWJsZS1jZWxsLXBhZGRpbmctdmVydGljYWwgLyAzKSAhaW1wb3J0YW50OyB9XG5cbiAgICAudWstdGFibGUtcmVzcG9uc2l2ZSB0aDpub3QoOmxhc3QtY2hpbGQpOm5vdCgudWstdGFibGUtbGluayksXG4gICAgLnVrLXRhYmxlLXJlc3BvbnNpdmUgdGQ6bm90KDpsYXN0LWNoaWxkKTpub3QoLnVrLXRhYmxlLWxpbmspLFxuICAgIC51ay10YWJsZS1yZXNwb25zaXZlIC51ay10YWJsZS1saW5rOm5vdCg6bGFzdC1jaGlsZCkgPiBhIHsgcGFkZGluZy1ib3R0b206IHJvdW5kKCR0YWJsZS1jZWxsLXBhZGRpbmctdmVydGljYWwgLyAzKSAhaW1wb3J0YW50OyB9XG5cbiAgICAudWstdGFibGUtanVzdGlmeS51ay10YWJsZS1yZXNwb25zaXZlIHRoLFxuICAgIC51ay10YWJsZS1qdXN0aWZ5LnVrLXRhYmxlLXJlc3BvbnNpdmUgdGQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuXG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stdGFibGUtbWlzYykpIHtAaW5jbHVkZSBob29rLXRhYmxlLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXRhYmxlKCl7fVxuLy8gQG1peGluIGhvb2stdGFibGUtaGVhZGVyLWNlbGwoKXt9XG4vLyBAbWl4aW4gaG9vay10YWJsZS1jZWxsKCl7fVxuLy8gQG1peGluIGhvb2stdGFibGUtZm9vdGVyKCl7fVxuLy8gQG1peGluIGhvb2stdGFibGUtY2FwdGlvbigpe31cbi8vIEBtaXhpbiBob29rLXRhYmxlLXJvdy1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay10YWJsZS1kaXZpZGVyKCl7fVxuLy8gQG1peGluIGhvb2stdGFibGUtc3RyaXBlZCgpe31cbi8vIEBtaXhpbiBob29rLXRhYmxlLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stdGFibGUtc21hbGwoKXt9XG4vLyBAbWl4aW4gaG9vay10YWJsZS1sYXJnZSgpe31cbi8vIEBtaXhpbiBob29rLXRhYmxlLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRpbnZlcnNlLXRhYmxlLWhlYWRlci1jZWxsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXRhYmxlLXJvdy1hY3RpdmUtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgIGZhZGUtb3V0KCRpbnZlcnNlLWdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kLCAwLjAyKSAhZGVmYXVsdDtcbiRpbnZlcnNlLXRhYmxlLWRpdmlkZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kaW52ZXJzZS10YWJsZS1zdHJpcGVkLXJvdy1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLXRhYmxlLWhvdmVyLXJvdy1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLXRhYmxlLXJvdy1hY3RpdmUtYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtdGFibGUtaGVhZGVyLWNlbGwoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLWNhcHRpb24oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLXJvdy1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLWRpdmlkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLXN0cmlwZWQoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLWhvdmVyKCl7fSIsIi8vIE5hbWU6ICAgICAgICAgICAgSWNvblxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGljb25zXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstaWNvbmBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1pY29uLWltYWdlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstaWNvbi1saW5rYFxuLy8gICAgICAgICAgICAgICAgICBgdWstaWNvbi1idXR0b25gXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstcHJlc2VydmVgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGljb24taW1hZ2Utc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRpY29uLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGljb24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaWNvbi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRnbG9iYWwtY29sb3IsIDUlKSAhZGVmYXVsdDtcblxuJGljb24tYnV0dG9uLXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDM2cHggIWRlZmF1bHQ7XG4kaWNvbi1idXR0b24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kaWNvbi1idXR0b24tYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGljb24tYnV0dG9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRpY29uLWJ1dHRvbi1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGljb24tYnV0dG9uLWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRpY29uLWJ1dHRvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kaWNvbi1idXR0b24tYWN0aXZlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgZGFya2VuKCRpY29uLWJ1dHRvbi1iYWNrZ3JvdW5kLCAxMCUpICFkZWZhdWx0O1xuJGljb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IEljb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogTm90ZTogMS4gLSA3LiBpcyByZXF1aXJlZCBmb3IgYGJ1dHRvbmAgZWxlbWVudHMuIE5lZWRlZCBmb3IgQ2xvc2UgYW5kIEZvcm0gSWNvbiBjb21wb25lbnQuXG4gKiAxLiBSZW1vdmUgbWFyZ2lucyBpbiBDaHJvbWUsIFNhZmFyaSBhbmQgT3BlcmEuXG4gKiAyLiBSZW1vdmUgYm9yZGVycyBmb3IgYGJ1dHRvbmAuXG4gKiAzLiBSZW1vdmUgYm9yZGVyLXJhZGl1cyBpbiBDaHJvbWUuXG4gKiA0LiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFLlxuICogNS4gQ29ycmVjdCBgZm9udGAgcHJvcGVydGllcyBhbmQgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGZvciBgYnV0dG9uYC5cbiAqIDYuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogNy4gUmVtb3ZlIGRlZmF1bHQgYGJ1dHRvbmAgcGFkZGluZyBhbmQgYmFja2dyb3VuZCBjb2xvclxuICogOC4gU3R5bGVcbiAqIDkuIEZpbGwgYWxsIFNWRyBlbGVtZW50cyB3aXRoIHRoZSBjdXJyZW50IHRleHQgY29sb3IgaWYgbm8gYGZpbGxgIGF0dHJpYnV0ZSBpcyBzZXRcbiAqIDEwLiBMZXQgdGhlIGNvbnRhaW5lciBmaXQgdGhlIGhlaWdodCBvZiB0aGUgaWNvblxuICovXG5cbi51ay1pY29uIHtcbiAgICAvKiAxICovXG4gICAgbWFyZ2luOiAwO1xuICAgIC8qIDIgKi9cbiAgICBib3JkZXI6IG5vbmU7XG4gICAgLyogMyAqL1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgLyogNCAqL1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIC8qIDUgKi9cbiAgICBmb250OiBpbmhlcml0O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIC8qIDYgKi9cbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAvKiA3LiAqL1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLyogOCAqL1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvKiA5ICovXG4gICAgZmlsbDogY3VycmVudGNvbG9yO1xuICAgIC8qIDEwICovXG4gICAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbi8qIFJlcXVpcmVkIGZvciBgYnV0dG9uYC4gKi9cbmJ1dHRvbi51ay1pY29uOm5vdCg6ZGlzYWJsZWQpIHsgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi8qXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbi51ay1pY29uOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLypcbiAqIFNldCB0aGUgZmlsbCBhbmQgc3Ryb2tlIGNvbG9yIG9mIGFsbCBTVkcgZWxlbWVudHMgdG8gdGhlIGN1cnJlbnQgdGV4dCBjb2xvclxuICovXG5cbi51ay1pY29uOm5vdCgudWstcHJlc2VydmUpIFtmaWxsKj0nIyddOm5vdCgudWstcHJlc2VydmUpIHsgZmlsbDogY3VycmVudGNvbG9yOyB9XG4udWstaWNvbjpub3QoLnVrLXByZXNlcnZlKSBbc3Ryb2tlKj0nIyddOm5vdCgudWstcHJlc2VydmUpIHsgc3Ryb2tlOiBjdXJyZW50Y29sb3I7IH1cblxuLypcbiAqIEZpeCBGaXJlZm94IGJsdXJyeSBTVkcgcmVuZGVyaW5nOiBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQ2ODM1XG4gKi9cblxuLnVrLWljb24gPiAqIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwwKTsgfVxuXG5cbi8qIEltYWdlIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIERpc3BsYXkgaW1hZ2VzIGluIGljb24gZGltZW5zaW9uc1xuICovXG5cbi51ay1pY29uLWltYWdlIHtcbiAgICB3aWR0aDogJGljb24taW1hZ2Utc2l6ZTtcbiAgICBoZWlnaHQ6ICRpY29uLWltYWdlLXNpemU7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8qIFN0eWxlIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBMaW5rXG4gKi9cblxuLnVrLWljb24tbGluayB7XG4gICAgY29sb3I6ICRpY29uLWxpbmstY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWljb24tbGluaykpIHtAaW5jbHVkZSBob29rLWljb24tbGluaygpO31cbn1cblxuLnVrLWljb24tbGluazpob3Zlcixcbi51ay1pY29uLWxpbms6Zm9jdXMge1xuICAgIGNvbG9yOiAkaWNvbi1saW5rLWhvdmVyLWNvbG9yO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWljb24tbGluay1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWljb24tbGluay1ob3ZlcigpO31cbn1cblxuLyogT25DbGljayArIEFjdGl2ZSAqL1xuLnVrLWljb24tbGluazphY3RpdmUsXG4udWstYWN0aXZlID4gLnVrLWljb24tbGluayB7XG4gICAgY29sb3I6ICRpY29uLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pY29uLWxpbmstYWN0aXZlKSkge0BpbmNsdWRlIGhvb2staWNvbi1saW5rLWFjdGl2ZSgpO31cbn1cblxuLypcbiAqIEJ1dHRvblxuICogMS4gQ2VudGVyIGljb24gdmVydGljYWxseSBhbmQgaG9yaXpvbnRhbGx5XG4gKi9cblxuLnVrLWljb24tYnV0dG9uIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAkaWNvbi1idXR0b24tc2l6ZTtcbiAgICBoZWlnaHQ6ICRpY29uLWJ1dHRvbi1zaXplO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpY29uLWJ1dHRvbi1ib3JkZXItcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6ICRpY29uLWJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkaWNvbi1idXR0b24tY29sb3I7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staWNvbi1idXR0b24pKSB7QGluY2x1ZGUgaG9vay1pY29uLWJ1dHRvbigpO31cbn1cblxuLyogSG92ZXIgKyBGb2N1cyAqL1xuLnVrLWljb24tYnV0dG9uOmhvdmVyLFxuLnVrLWljb24tYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaWNvbi1idXR0b24taG92ZXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGljb24tYnV0dG9uLWhvdmVyLWNvbG9yO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWljb24tYnV0dG9uLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staWNvbi1idXR0b24taG92ZXIoKTt9XG59XG5cbi8qIE9uQ2xpY2sgKyBBY3RpdmUgKi9cbi51ay1pY29uLWJ1dHRvbjphY3RpdmUsXG4udWstYWN0aXZlID4gLnVrLWljb24tYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaWNvbi1idXR0b24tYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRpY29uLWJ1dHRvbi1hY3RpdmUtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWljb24tYnV0dG9uLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWljb24tYnV0dG9uLWFjdGl2ZSgpO31cbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1pY29uLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1pY29uLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWljb24tbGluaygpe31cbi8vIEBtaXhpbiBob29rLWljb24tbGluay1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWljb24tbGluay1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pY29uLWJ1dHRvbigpe31cbi8vIEBtaXhpbiBob29rLWljb24tYnV0dG9uLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staWNvbi1idXR0b24tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2staWNvbi1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kaW52ZXJzZS1pY29uLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1pY29uLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1pY29uLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1pY29uLWJ1dHRvbi1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWljb24tYnV0dG9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWljb24tYnV0dG9uLWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgIGRhcmtlbigkaW52ZXJzZS1pY29uLWJ1dHRvbi1iYWNrZ3JvdW5kLCA1JSkgIWRlZmF1bHQ7XG4kaW52ZXJzZS1pY29uLWJ1dHRvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1pY29uLWJ1dHRvbi1hY3RpdmUtYmFja2dyb3VuZDogICAgICAgICBkYXJrZW4oJGludmVyc2UtaWNvbi1idXR0b24tYmFja2dyb3VuZCwgMTAlKSAhZGVmYXVsdDtcbiRpbnZlcnNlLWljb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtaWNvbi1saW5rKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1pY29uLWxpbmstaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWljb24tbGluay1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWljb24tYnV0dG9uKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1pY29uLWJ1dHRvbi1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtaWNvbi1idXR0b24tYWN0aXZlKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBGb3JtIFJhbmdlXG4vLyBEZXNjcmlwdGlvbjogICAgIFN0eWxlcyBmb3IgdGhlIHJhbmdlIGlucHV0IHR5cGVcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1yYW5nZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgIGRhcmtlbigkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWZvY3VzLWJhY2tncm91bmQ6ICAgICAgICAgICAgICBkYXJrZW4oJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kLCAxNSUpICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBGb3JtIFJhbmdlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIE5vcm1hbGl6ZSBhbmQgZGVmYXVsdHNcbiAqIDIuIFByZXZlbnQgY29udGVudCBvdmVyZmxvdyBpZiBhIGZpeGVkIHdpZHRoIGlzIHVzZWRcbiAqIDMuIFRha2UgdGhlIGZ1bGwgd2lkdGhcbiAqIDQuIFJlbW92ZSBkZWZhdWx0IHN0eWxlXG4gKiA1LiBSZW1vdmUgd2hpdGUgYmFja2dyb3VuZCBpbiBDaHJvbWVcbiAqIDYuIFJlbW92ZSBwYWRkaW5nIGluIElFMTFcbiAqL1xuXG4udWstcmFuZ2Uge1xuICAgIC8qIDEgKi9cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1hcmdpbjogMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIC8qIDIgKi9cbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLyogMyAqL1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8qIDQgKi9cbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLyogNSAqL1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIC8qIDYgKi9cbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLXJhbmdlKSkge0BpbmNsdWRlIGhvb2stZm9ybS1yYW5nZSgpO31cbn1cblxuLyogRm9jdXMgKi9cbi51ay1yYW5nZTpmb2N1cyB7IG91dGxpbmU6IG5vbmU7IH1cbi51ay1yYW5nZTo6LW1vei1mb2N1cy1vdXRlciB7IGJvcmRlcjogbm9uZTsgfVxuXG4vKiBJRTExIFJlc2V0ICovXG4udWstcmFuZ2U6Oi1tcy10cmFjayB7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qXG4gKiBJbXByb3ZlcyBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgZm9yIGNsaWNrYWJsZSBlbGVtZW50c1xuICovXG5cbi51ay1yYW5nZTpub3QoOmRpc2FibGVkKTo6LXdlYmtpdC1zbGlkZXItdGh1bWIgeyBjdXJzb3I6IHBvaW50ZXI7IH1cbi51ay1yYW5nZTpub3QoOmRpc2FibGVkKTo6LW1vei1yYW5nZS10aHVtYiB7IGN1cnNvcjogcG9pbnRlcjsgfVxuLnVrLXJhbmdlOm5vdCg6ZGlzYWJsZWQpOjotbXMtdGh1bWIgeyBjdXJzb3I6IHBvaW50ZXI7IH1cblxuXG4vKiBUaHVtYlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBSZXNldFxuICogMi4gU3R5bGVcbiAqL1xuXG4vKiBXZWJraXQgKi9cbi51ay1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgIC8qIDEgKi9cbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogKGZsb29yKCRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCAvIDIpICogLTEpO1xuICAgIC8qIDIgKi9cbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogJGZvcm0tcmFuZ2UtdGh1bWItYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1yYW5nZS10aHVtYikpIHtAaW5jbHVkZSBob29rLWZvcm0tcmFuZ2UtdGh1bWIoKTt9XG59XG5cbi8qIEZpcmVmb3ggKi9cbi51ay1yYW5nZTo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgLyogMSAqL1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICAvKiAyICovXG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6ICRmb3JtLXJhbmdlLXRodW1iLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tcmFuZ2UtdGh1bWIpKSB7QGluY2x1ZGUgaG9vay1mb3JtLXJhbmdlLXRodW1iKCk7fVxufVxuXG4vKiBFZGdlICovXG4udWstcmFuZ2U6Oi1tcy10aHVtYiB7XG4gICAgLyogMSAqL1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG5cbi8qIElFMTEgKi9cbi51ay1yYW5nZTo6LW1zLXRodW1iIHtcbiAgICAvKiAxICovXG4gICAgYm9yZGVyOiBub25lO1xuICAgIC8qIDIgKi9cbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogJGZvcm0tcmFuZ2UtdGh1bWItYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1yYW5nZS10aHVtYikpIHtAaW5jbHVkZSBob29rLWZvcm0tcmFuZ2UtdGh1bWIoKTt9XG59XG5cbi8qIEVkZ2UgKyBJRTExICovXG4udWstcmFuZ2U6Oi1tcy10b29sdGlwIHsgZGlzcGxheTogbm9uZTsgfVxuXG5cbi8qIFRyYWNrXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFNhZmFyaSBkb2Vzbid0IGhhdmUgYSBmb2N1cyBzdGF0ZS4gVXNpbmcgYWN0aXZlIGluc3RlYWQuXG4gKi9cblxuLyogV2Via2l0ICovXG4udWstcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBiYWNrZ3JvdW5kOiAkZm9ybS1yYW5nZS10cmFjay1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLXJhbmdlLXRyYWNrKSkge0BpbmNsdWRlIGhvb2stZm9ybS1yYW5nZS10cmFjaygpO31cbn1cblxuLnVrLXJhbmdlOmZvY3VzOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayxcbi8qIDEgKi9cbi51ay1yYW5nZTphY3RpdmU6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiAkZm9ybS1yYW5nZS10cmFjay1mb2N1cy1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLXJhbmdlLXRyYWNrLWZvY3VzKSkge0BpbmNsdWRlIGhvb2stZm9ybS1yYW5nZS10cmFjay1mb2N1cygpO31cbn1cblxuLyogRmlyZWZveCAqL1xuLnVrLXJhbmdlOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBiYWNrZ3JvdW5kOiAkZm9ybS1yYW5nZS10cmFjay1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLXJhbmdlLXRyYWNrKSkge0BpbmNsdWRlIGhvb2stZm9ybS1yYW5nZS10cmFjaygpO31cbn1cblxuLnVrLXJhbmdlOmZvY3VzOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiAkZm9ybS1yYW5nZS10cmFjay1mb2N1cy1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLXJhbmdlLXRyYWNrLWZvY3VzKSkge0BpbmNsdWRlIGhvb2stZm9ybS1yYW5nZS10cmFjay1mb2N1cygpO31cbn1cblxuLyogRWRnZSAqL1xuLnVrLXJhbmdlOjotbXMtZmlsbC1sb3dlcixcbi51ay1yYW5nZTo6LW1zLWZpbGwtdXBwZXIge1xuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGJhY2tncm91bmQ6ICRmb3JtLXJhbmdlLXRyYWNrLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tcmFuZ2UtdHJhY2spKSB7QGluY2x1ZGUgaG9vay1mb3JtLXJhbmdlLXRyYWNrKCk7fVxufVxuXG4udWstcmFuZ2U6Zm9jdXM6Oi1tcy1maWxsLWxvd2VyLFxuLnVrLXJhbmdlOmZvY3VzOjotbXMtZmlsbC11cHBlciB7XG4gICAgYmFja2dyb3VuZDogJGZvcm0tcmFuZ2UtdHJhY2stZm9jdXMtYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1yYW5nZS10cmFjay1mb2N1cykpIHtAaW5jbHVkZSBob29rLWZvcm0tcmFuZ2UtdHJhY2stZm9jdXMoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1yYW5nZS1taXNjKSkge0BpbmNsdWRlIGhvb2stZm9ybS1yYW5nZS1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1mb3JtLXJhbmdlKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1yYW5nZS10aHVtYigpe31cbi8vIEBtaXhpbiBob29rLWZvcm0tcmFuZ2UtdHJhY2soKXt9XG4vLyBAbWl4aW4gaG9vay1mb3JtLXJhbmdlLXRyYWNrLWZvY3VzKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1yYW5nZS1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBGb3JtXG4vLyBEZXNjcmlwdGlvbjogICAgIFN0eWxlcyBmb3IgZm9ybXNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1mb3JtLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1pbnB1dGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNlbGVjdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRleHRhcmVhYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcmFkaW9gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jaGVja2JveGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxlZ2VuZGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWZpZWxkc2V0YFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLWZvcm0tY3VzdG9tYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZm9ybS1zdGFja2VkYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZm9ybS1ob3Jpem9udGFsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZm9ybS1sYWJlbGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWZvcm0tY29udHJvbHNgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1mb3JtLWljb25gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1mb3JtLWljb24tZmxpcGBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1mb3JtLXNtYWxsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZm9ybS1sYXJnZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWZvcm0tZGFuZ2VyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZm9ybS1zdWNjZXNzYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZm9ybS1ibGFua2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWZvcm0td2lkdGgteHNtYWxsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZm9ybS13aWR0aC1zbWFsbGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWZvcm0td2lkdGgtbWVkaXVtYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZm9ybS13aWR0aC1sYXJnZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWZvcm0tY29udHJvbHMtdGV4dGBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kZm9ybS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb250cm9sLWhlaWdodCAhZGVmYXVsdDtcbiRmb3JtLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZm9ybS1oZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRmb3JtLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAgICAgICA0cHggIWRlZmF1bHQ7XG5cbiRmb3JtLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZm9ybS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcblxuJGZvcm0tZm9jdXMtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRmb3JtLWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1kaXNhYmxlZC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGZvcm0tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRmb3JtLXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1zbWFsbC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb250cm9sLXNtYWxsLWhlaWdodCAhZGVmYXVsdDtcbiRmb3JtLXNtYWxsLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgICA4cHggIWRlZmF1bHQ7XG4kZm9ybS1zbWFsbC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgJGZvcm0tc21hbGwtaGVpZ2h0ICFkZWZhdWx0O1xuJGZvcm0tc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4kZm9ybS1sYXJnZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb250cm9sLWxhcmdlLWhlaWdodCAhZGVmYXVsdDtcbiRmb3JtLWxhcmdlLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgICAxMnB4ICFkZWZhdWx0O1xuJGZvcm0tbGFyZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICRmb3JtLWxhcmdlLWhlaWdodCAhZGVmYXVsdDtcbiRmb3JtLWxhcmdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW1lZGl1bS1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRmb3JtLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWRhbmdlci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGZvcm0tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc3VjY2Vzcy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4kZm9ybS13aWR0aC14c21hbGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcbiRmb3JtLXdpZHRoLXNtYWxsOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMzBweCAhZGVmYXVsdDtcbiRmb3JtLXdpZHRoLW1lZGl1bTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiRmb3JtLXdpZHRoLWxhcmdlOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXBhZGRpbmctcmlnaHQ6ICAgICAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1vcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWljb24tY29sb3I6ICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRmb3JtLWRhdGFsaXN0LXBhZGRpbmctcmlnaHQ6ICAgICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuJGZvcm0tZGF0YWxpc3QtaWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbiRmb3JtLXJhZGlvLXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNnB4ICFkZWZhdWx0O1xuJGZvcm0tcmFkaW8tbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAgICAgICAgIC00cHggIWRlZmF1bHQ7XG4kZm9ybS1yYWRpby1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuXG4kZm9ybS1yYWRpby1jaGVja2VkLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kZm9ybS1yYWRpby1jaGVja2VkLWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1yYWRpby1jaGVja2VkLWZvY3VzLWJhY2tncm91bmQ6ICAgICAgICAgICAgZGFya2VuKCRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kLCAxMCUpICFkZWZhdWx0O1xuXG4kZm9ybS1yYWRpby1kaXNhYmxlZC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGZvcm0tcmFkaW8tZGlzYWJsZWQtaWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRmb3JtLWxlZ2VuZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWxhcmdlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWxlZ2VuZC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAxLjQgIWRlZmF1bHQ7XG5cbiRmb3JtLXN0YWNrZWQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLW1hcmdpbiAhZGVmYXVsdDtcblxuJGZvcm0taG9yaXpvbnRhbC1sYWJlbC13aWR0aDogICAgICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJGZvcm0taG9yaXpvbnRhbC1sYWJlbC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgIDdweCAhZGVmYXVsdDtcbiRmb3JtLWhvcml6b250YWwtY29udHJvbHMtbWFyZ2luLWxlZnQ6ICAgICAgICAgICAyMTVweCAhZGVmYXVsdDtcbiRmb3JtLWhvcml6b250YWwtY29udHJvbHMtdGV4dC1wYWRkaW5nLXRvcDogICAgICA3cHggIWRlZmF1bHQ7XG5cbiRmb3JtLWljb24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZm9ybS1oZWlnaHQgIWRlZmF1bHQ7XG4kZm9ybS1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWljb24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kaW50ZXJuYWwtZm9ybS1zZWxlY3QtaW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjE2JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMjQlMjAxNiUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwcG9pbnRzJTNEJTIyMTIlMjAxJTIwOSUyMDYlMjAxNSUyMDYlMjIlMjAlMkYlM0UlMEElMjAlMjAlMjAlMjAlM0Nwb2x5Z29uJTIwZmlsbCUzRCUyMiMwMDAlMjIlMjBwb2ludHMlM0QlMjIxMiUyMDEzJTIwOSUyMDglMjAxNSUyMDglMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0UlMEFcIiAhZGVmYXVsdDtcbiRpbnRlcm5hbC1mb3JtLWRhdGFsaXN0LWltYWdlOiBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIxNiUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDI0JTIwMTYlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3BvbHlnb24lMjBmaWxsJTNEJTIyIzAwMCUyMiUyMHBvaW50cyUzRCUyMjEyJTIwMTIlMjA4JTIwNiUyMDE2JTIwNiUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRSUwQVwiICFkZWZhdWx0O1xuJGludGVybmFsLWZvcm0tcmFkaW8taW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIxNiUyMiUyMGhlaWdodCUzRCUyMjE2JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTYlMjAxNiUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDY2lyY2xlJTIwZmlsbCUzRCUyMiMwMDAlMjIlMjBjeCUzRCUyMjglMjIlMjBjeSUzRCUyMjglMjIlMjByJTNEJTIyMiUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRVwiICFkZWZhdWx0O1xuJGludGVybmFsLWZvcm0tY2hlY2tib3gtaW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIxNCUyMiUyMGhlaWdodCUzRCUyMjExJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTQlMjAxMSUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcG9seWdvbiUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwcG9pbnRzJTNEJTIyMTIlMjAxJTIwNSUyMDcuNSUyMDIlMjA1JTIwMSUyMDUuNSUyMDUlMjAxMCUyMDEzJTIwMS41JTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFJTBBXCIgIWRlZmF1bHQ7XG4kaW50ZXJuYWwtZm9ybS1jaGVja2JveC1pbmRldGVybWluYXRlLWltYWdlOiBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTYlMjIlMjBoZWlnaHQlM0QlMjIxNiUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDE2JTIwMTYlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3JlY3QlMjBmaWxsJTNEJTIyIzAwMCUyMiUyMHglM0QlMjIzJTIyJTIweSUzRCUyMjglMjIlMjB3aWR0aCUzRCUyMjEwJTIyJTIwaGVpZ2h0JTNEJTIyMSUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRVwiICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBGb3JtXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIERlZmluZSBjb25zaXN0ZW50IGJveCBzaXppbmcuXG4gKiAgICBEZWZhdWx0IGlzIGBjb250ZW50LWJveGAgd2l0aCBmb2xsb3dpbmcgZXhjZXB0aW9ucyBzZXQgdG8gYGJvcmRlci1ib3hgXG4gKiAgICBgc2VsZWN0YCwgYGlucHV0W3R5cGU9XCJjaGVja2JveFwiXWAgYW5kIGBpbnB1dFt0eXBlPVwicmFkaW9cIl1gXG4gKiAgICBgaW5wdXRbdHlwZT1cInNlYXJjaFwiXWAgaW4gQ2hyb21lLCBTYWZhcmkgYW5kIE9wZXJhXG4gKiAgICBgaW5wdXRbdHlwZT1cImNvbG9yXCJdYCBpbiBGaXJlZm94XG4gKiAyLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3gvSUUgYW5kIENocm9tZS9TYWZhcmkvT3BlcmEuXG4gKiAzLiBSZW1vdmUgYGJvcmRlci1yYWRpdXNgIGluIGlPUy5cbiAqIDQuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG4udWstaW5wdXQsXG4udWstc2VsZWN0LFxuLnVrLXRleHRhcmVhLFxuLnVrLXJhZGlvLFxuLnVrLWNoZWNrYm94IHtcbiAgICAvKiAxICovXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAvKiAyICovXG4gICAgbWFyZ2luOiAwO1xuICAgIC8qIDMgKi9cbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIC8qIDQgKi9cbiAgICBmb250OiBpbmhlcml0O1xufVxuXG4vKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG4udWstaW5wdXQgeyBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbi51ay1zZWxlY3QgeyB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4vKlxuICogMS4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gYWxsIGJyb3dzZXJzXG4gKiAyLiBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIGFuZCB1c2UgYGJvbGRgIGluc3RlYWQuXG4gKiBOT1RFOiBCb3RoIGRlY2xhcmF0aW9ucyBkb24ndCB3b3JrIGluIENocm9tZSwgU2FmYXJpIGFuZCBPcGVyYS5cbiAqL1xuXG4udWstc2VsZWN0IG9wdGdyb3VwIHtcbiAgICAvKiAxICovXG4gICAgZm9udDogaW5oZXJpdDtcbiAgICAvKiAyICovXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xuXG4udWstdGV4dGFyZWEgeyBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgb24gT1MgWCBhbmQgU2FmYXJpIG9uIE9TIFguXG4gKi9cblxuLnVrLWlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4udWstaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7IC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG5cbi8qXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuLnVrLWlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4udWstaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7IGhlaWdodDogYXV0bzsgfVxuXG4vKlxuICogUmVtb3ZlcyBwbGFjZWhvbGRlciB0cmFuc3BhcmVuY3kgaW4gRmlyZWZveC5cbiAqL1xuXG4udWstaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIsXG4udWstdGV4dGFyZWE6Oi1tb3otcGxhY2Vob2xkZXIgeyBvcGFjaXR5OiAxOyB9XG5cbi8qXG4gKiBJbXByb3ZlcyBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgZm9yIGNsaWNrYWJsZSBlbGVtZW50c1xuICovXG5cbi51ay1yYWRpbzpub3QoOmRpc2FibGVkKSxcbi51ay1jaGVja2JveDpub3QoOmRpc2FibGVkKSB7IGN1cnNvcjogcG9pbnRlcjsgfVxuXG4vKlxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICovXG5cbi51ay1maWVsZHNldCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG5cbi8qIElucHV0LCBzZWxlY3QgYW5kIHRleHRhcmVhXG4gKiBBbGxvd2VkOiBgdGV4dGAsIGBwYXNzd29yZGAsIGBkYXRldGltZWAsIGBkYXRldGltZS1sb2NhbGAsIGBkYXRlYCwgIGBtb250aGAsXG4gICAgICAgICAgICBgdGltZWAsIGB3ZWVrYCwgYG51bWJlcmAsIGBlbWFpbGAsIGB1cmxgLCBgc2VhcmNoYCwgYHRlbGAsIGBjb2xvcmBcbiAqIERpc2FsbG93ZWQ6IGByYW5nZWAsIGByYWRpb2AsIGBjaGVja2JveGAsIGBmaWxlYCwgYHN1Ym1pdGAsIGByZXNldGAgYW5kIGBpbWFnZWBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUmVtb3ZlIGRlZmF1bHQgc3R5bGUgaW4gaU9TLlxuICovXG5cbi51ay1pbnB1dCxcbi51ay10ZXh0YXJlYSB7IC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKlxuICogMS4gUHJldmVudCBjb250ZW50IG92ZXJmbG93IGlmIGEgZml4ZWQgd2lkdGggaXMgdXNlZFxuICogMi4gVGFrZSB0aGUgZnVsbCB3aWR0aFxuICogMy4gUmVzZXQgZGVmYXVsdFxuICogNC4gU3R5bGVcbiAqL1xuXG4udWstaW5wdXQsXG4udWstc2VsZWN0LFxuLnVrLXRleHRhcmVhIHtcbiAgICAvKiAxICovXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC8qIDIgKi9cbiAgICB3aWR0aDogMTAwJTtcbiAgICAvKiAzICovXG4gICAgYm9yZGVyOiAwIG5vbmU7XG4gICAgLyogNCAqL1xuICAgIHBhZGRpbmc6IDAgJGZvcm0tcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGJhY2tncm91bmQ6ICRmb3JtLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRmb3JtLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtKSkge0BpbmNsdWRlIGhvb2stZm9ybSgpO31cbn1cblxuLypcbiAqIFNpbmdsZS1saW5lXG4gKiAxLiBBbGxvdyBhbnkgZWxlbWVudCB0byBsb29rIGxpa2UgYW4gYGlucHV0YCBvciBgc2VsZWN0YCBlbGVtZW50XG4gKiAyLiBNYWtlIHN1cmUgbGluZS1oZWlnaHQgaXMgbm90IGxhcmdlciB0aGFuIGhlaWdodFxuICogICAgQWxzbyBuZWVkZWQgdG8gY2VudGVyIHRoZSB0ZXh0IHZlcnRpY2FsbHlcbiAqL1xuXG4udWstaW5wdXQsXG4udWstc2VsZWN0Om5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSB7XG4gICAgaGVpZ2h0OiAkZm9ybS1oZWlnaHQ7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLXNpbmdsZS1saW5lKSkge0BpbmNsdWRlIGhvb2stZm9ybS1zaW5nbGUtbGluZSgpO31cbn1cblxuLyogMiAqL1xuLnVrLWlucHV0Om5vdChpbnB1dCksXG4udWstc2VsZWN0Om5vdChzZWxlY3QpIHsgbGluZS1oZWlnaHQ6ICRmb3JtLWxpbmUtaGVpZ2h0OyB9XG5cbi8qXG4gKiBNdWx0aS1saW5lXG4gKi9cblxuLnVrLXNlbGVjdFttdWx0aXBsZV0sXG4udWstc2VsZWN0W3NpemVdLFxuLnVrLXRleHRhcmVhIHtcbiAgICBwYWRkaW5nLXRvcDogJGZvcm0tcGFkZGluZy12ZXJ0aWNhbDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tcGFkZGluZy12ZXJ0aWNhbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLW11bHRpLWxpbmUpKSB7QGluY2x1ZGUgaG9vay1mb3JtLW11bHRpLWxpbmUoKTt9XG59XG5cbi8qIEZvY3VzICovXG4udWstaW5wdXQ6Zm9jdXMsXG4udWstc2VsZWN0OmZvY3VzLFxuLnVrLXRleHRhcmVhOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWZvY3VzLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRmb3JtLWZvY3VzLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLWZvY3VzKSkge0BpbmNsdWRlIGhvb2stZm9ybS1mb2N1cygpO31cbn1cblxuLyogRGlzYWJsZWQgKi9cbi51ay1pbnB1dDpkaXNhYmxlZCxcbi51ay1zZWxlY3Q6ZGlzYWJsZWQsXG4udWstdGV4dGFyZWE6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWRpc2FibGVkLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRmb3JtLWRpc2FibGVkLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLWRpc2FibGVkKSkge0BpbmNsdWRlIGhvb2stZm9ybS1kaXNhYmxlZCgpO31cbn1cblxuLypcbiAqIFBsYWNlaG9sZGVyXG4gKi9cblxuLnVrLWlucHV0OjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogJGZvcm0tcGxhY2Vob2xkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLnVrLWlucHV0OjpwbGFjZWhvbGRlciB7IGNvbG9yOiAkZm9ybS1wbGFjZWhvbGRlci1jb2xvcjsgfVxuXG4udWstdGV4dGFyZWE6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkZm9ybS1wbGFjZWhvbGRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4udWstdGV4dGFyZWE6OnBsYWNlaG9sZGVyIHsgY29sb3I6ICRmb3JtLXBsYWNlaG9sZGVyLWNvbG9yOyB9XG5cblxuLyogU3R5bGUgbW9kaWZpZXIgKGB1ay1pbnB1dGAsIGB1ay1zZWxlY3RgIGFuZCBgdWstdGV4dGFyZWFgKVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBTbWFsbFxuICovXG5cbi51ay1mb3JtLXNtYWxsIHsgZm9udC1zaXplOiAkZm9ybS1zbWFsbC1mb250LXNpemU7IH1cblxuLnVrLWZvcm0tc21hbGw6bm90KHRleHRhcmVhKTpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSkge1xuICAgIGhlaWdodDogJGZvcm0tc21hbGwtaGVpZ2h0O1xuICAgIHBhZGRpbmctbGVmdDogJGZvcm0tc21hbGwtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNtYWxsLXBhZGRpbmctaG9yaXpvbnRhbDtcbn1cblxuLnVrLWZvcm0tc21hbGw6bm90KHNlbGVjdCk6bm90KGlucHV0KTpub3QodGV4dGFyZWEpIHsgbGluZS1oZWlnaHQ6ICRmb3JtLXNtYWxsLWxpbmUtaGVpZ2h0OyB9XG5cbi8qXG4gKiBMYXJnZVxuICovXG5cbi51ay1mb3JtLWxhcmdlIHsgZm9udC1zaXplOiAkZm9ybS1sYXJnZS1mb250LXNpemU7IH1cblxuLnVrLWZvcm0tbGFyZ2U6bm90KHRleHRhcmVhKTpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSkge1xuICAgIGhlaWdodDogJGZvcm0tbGFyZ2UtaGVpZ2h0O1xuICAgIHBhZGRpbmctbGVmdDogJGZvcm0tbGFyZ2UtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLWxhcmdlLXBhZGRpbmctaG9yaXpvbnRhbDtcbn1cblxuLnVrLWZvcm0tbGFyZ2U6bm90KHNlbGVjdCk6bm90KGlucHV0KTpub3QodGV4dGFyZWEpIHsgbGluZS1oZWlnaHQ6ICRmb3JtLWxhcmdlLWxpbmUtaGVpZ2h0OyB9XG5cblxuLyogU3R5bGUgbW9kaWZpZXIgKGB1ay1pbnB1dGAsIGB1ay1zZWxlY3RgIGFuZCBgdWstdGV4dGFyZWFgKVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBFcnJvclxuICovXG5cbi51ay1mb3JtLWRhbmdlcixcbi51ay1mb3JtLWRhbmdlcjpmb2N1cyB7XG4gICAgY29sb3I6ICRmb3JtLWRhbmdlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1kYW5nZXIpKSB7QGluY2x1ZGUgaG9vay1mb3JtLWRhbmdlcigpO31cbn1cblxuLypcbiAqIFN1Y2Nlc3NcbiAqL1xuXG4udWstZm9ybS1zdWNjZXNzLFxuLnVrLWZvcm0tc3VjY2Vzczpmb2N1cyAge1xuICAgIGNvbG9yOiAkZm9ybS1zdWNjZXNzLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLXN1Y2Nlc3MpKSB7QGluY2x1ZGUgaG9vay1mb3JtLXN1Y2Nlc3MoKTt9XG59XG5cbi8qXG4gKiBCbGFua1xuICovXG5cbi51ay1mb3JtLWJsYW5rIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLWJsYW5rKSkge0BpbmNsdWRlIGhvb2stZm9ybS1ibGFuaygpO31cbn1cblxuLnVrLWZvcm0tYmxhbms6Zm9jdXMge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLWJsYW5rLWZvY3VzKSkge0BpbmNsdWRlIGhvb2stZm9ybS1ibGFuay1mb2N1cygpO31cbn1cblxuXG4vKiBXaWR0aCBtb2RpZmllcnMgKGB1ay1pbnB1dGAsIGB1ay1zZWxlY3RgIGFuZCBgdWstdGV4dGFyZWFgKVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBGaXhlZCB3aWR0aHNcbiAqIERpZmZlcmVudCB3aWR0aHMgZm9yIG1pbmkgc2l6ZWQgYGlucHV0YCBhbmQgYHNlbGVjdGAgZWxlbWVudHNcbiAqL1xuXG5pbnB1dC51ay1mb3JtLXdpZHRoLXhzbWFsbCB7IHdpZHRoOiAkZm9ybS13aWR0aC14c21hbGw7IH1cblxuc2VsZWN0LnVrLWZvcm0td2lkdGgteHNtYWxsIHsgd2lkdGg6ICgkZm9ybS13aWR0aC14c21hbGwgKyAyNXB4KTsgfVxuXG4udWstZm9ybS13aWR0aC1zbWFsbCB7IHdpZHRoOiAkZm9ybS13aWR0aC1zbWFsbDsgfVxuXG4udWstZm9ybS13aWR0aC1tZWRpdW0geyB3aWR0aDogJGZvcm0td2lkdGgtbWVkaXVtOyB9XG5cbi51ay1mb3JtLXdpZHRoLWxhcmdlIHsgd2lkdGg6ICRmb3JtLXdpZHRoLWxhcmdlOyB9XG5cblxuLyogU2VsZWN0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFJlbW92ZSBkZWZhdWx0IHN0eWxlLiBBbHNvIHdvcmtzIGluIEZpcmVmb3hcbiAqIDIuIFN0eWxlXG4gKiAzLiBSZW1vdmUgZGVmYXVsdCBzdHlsZSBpbiBJRSAxMC8xMVxuICogNC4gU2V0IGBjb2xvcmAgZm9yIG9wdGlvbnMgaW4gdGhlIHNlbGVjdCBkcm9wZG93biwgYmVjYXVzZSB0aGUgaW5oZXJpdGVkIGBjb2xvcmAgbWlnaHQgYmUgdG9vIGxpZ2h0LlxuICovXG5cbi51ay1zZWxlY3Q6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pIHtcbiAgICAvKiAxICovXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAvKiAyICovXG4gICAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LXBhZGRpbmctcmlnaHQ7XG4gICAgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWZvcm0tc2VsZWN0LWltYWdlLCBcIiMwMDBcIiwgJGZvcm0tc2VsZWN0LWljb24tY29sb3IpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSA1MCU7XG59XG5cbi8qIDMgKi9cbi51ay1zZWxlY3Q6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pOjotbXMtZXhwYW5kIHsgZGlzcGxheTogbm9uZTsgfVxuXG4vKiA0ICovXG4udWstc2VsZWN0Om5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSBvcHRpb24geyBjb2xvcjogJGZvcm0tc2VsZWN0LW9wdGlvbi1jb2xvcjsgfVxuXG4vKlxuICogRGlzYWJsZWRcbiAqL1xuXG4udWstc2VsZWN0Om5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKTpkaXNhYmxlZCB7IEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1mb3JtLXNlbGVjdC1pbWFnZSwgXCIjMDAwXCIsICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1pY29uLWNvbG9yKTsgfVxuXG5cbi8qIERhdGFsaXN0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFJlbW92ZSBkZWZhdWx0IHN0eWxlIGluIENocm9tZVxuICovXG5cbiAudWstaW5wdXRbbGlzdF0ge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLWRhdGFsaXN0LXBhZGRpbmctcmlnaHQ7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTtcbn1cblxuLnVrLWlucHV0W2xpc3RdOmhvdmVyLFxuLnVrLWlucHV0W2xpc3RdOmZvY3VzIHsgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWZvcm0tZGF0YWxpc3QtaW1hZ2UsIFwiIzAwMFwiLCAkZm9ybS1kYXRhbGlzdC1pY29uLWNvbG9yKTsgfVxuXG4vKiAxICovXG4udWstaW5wdXRbbGlzdF06Oi13ZWJraXQtY2FsZW5kYXItcGlja2VyLWluZGljYXRvciB7IGRpc3BsYXk6IG5vbmU7IH1cblxuXG4vKiBSYWRpbyBhbmQgY2hlY2tib3hcbiAqIE5vdGU6IERvZXMgbm90IHdvcmsgaW4gSUUxMVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBTdHlsZVxuICogMi4gTWFrZSBib3ggbW9yZSByb2J1c3Qgc28gaXQgY2xpcHMgdGhlIGNoaWxkIGVsZW1lbnRcbiAqIDMuIFZlcnRpY2FsIGFsaWdubWVudFxuICogNC4gUmVtb3ZlIGRlZmF1bHQgc3R5bGVcbiAqIDUuIEZpeCBibGFjayBiYWNrZ3JvdW5kIG9uIGlPU1xuICogNi4gQ2VudGVyIGljb25zXG4gKi9cblxuLnVrLXJhZGlvLFxuLnVrLWNoZWNrYm94IHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogJGZvcm0tcmFkaW8tc2l6ZTtcbiAgICB3aWR0aDogJGZvcm0tcmFkaW8tc2l6ZTtcbiAgICAvKiAyICovXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvKiAzICovXG4gICAgbWFyZ2luLXRvcDogJGZvcm0tcmFkaW8tbWFyZ2luLXRvcDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIC8qIDQgKi9cbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIC8qIDUgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYWRpby1iYWNrZ3JvdW5kO1xuICAgIC8qIDYgKi9cbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tcmFkaW8pKSB7QGluY2x1ZGUgaG9vay1mb3JtLXJhZGlvKCk7fVxufVxuXG4udWstcmFkaW8geyBib3JkZXItcmFkaXVzOiA1MCU7IH1cblxuLyogRm9jdXMgKi9cbi51ay1yYWRpbzpmb2N1cyxcbi51ay1jaGVja2JveDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1yYWRpby1mb2N1cykpIHtAaW5jbHVkZSBob29rLWZvcm0tcmFkaW8tZm9jdXMoKTt9XG59XG5cbi8qXG4gKiBDaGVja2VkXG4gKi9cblxuLnVrLXJhZGlvOmNoZWNrZWQsXG4udWstY2hlY2tib3g6Y2hlY2tlZCxcbi51ay1jaGVja2JveDppbmRldGVybWluYXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYWRpby1jaGVja2VkLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tcmFkaW8tY2hlY2tlZCkpIHtAaW5jbHVkZSBob29rLWZvcm0tcmFkaW8tY2hlY2tlZCgpO31cbn1cblxuLyogRm9jdXMgKi9cbi51ay1yYWRpbzpjaGVja2VkOmZvY3VzLFxuLnVrLWNoZWNrYm94OmNoZWNrZWQ6Zm9jdXMsXG4udWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFkaW8tY2hlY2tlZC1mb2N1cy1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLXJhZGlvLWNoZWNrZWQtZm9jdXMpKSB7QGluY2x1ZGUgaG9vay1mb3JtLXJhZGlvLWNoZWNrZWQtZm9jdXMoKTt9XG59XG5cbi8qXG4gKiBJY29uc1xuICovXG5cbi51ay1yYWRpbzpjaGVja2VkIHsgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWZvcm0tcmFkaW8taW1hZ2UsIFwiIzAwMFwiLCAkZm9ybS1yYWRpby1jaGVja2VkLWljb24tY29sb3IpOyB9XG4udWstY2hlY2tib3g6Y2hlY2tlZCB7IEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1mb3JtLWNoZWNrYm94LWltYWdlLCBcIiMwMDBcIiwgJGZvcm0tcmFkaW8tY2hlY2tlZC1pY29uLWNvbG9yKTsgfVxuLnVrLWNoZWNrYm94OmluZGV0ZXJtaW5hdGUgeyBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtZm9ybS1jaGVja2JveC1pbmRldGVybWluYXRlLWltYWdlLCBcIiMwMDBcIiwgJGZvcm0tcmFkaW8tY2hlY2tlZC1pY29uLWNvbG9yKTsgfVxuXG4vKlxuICogRGlzYWJsZWRcbiAqL1xuXG4udWstcmFkaW86ZGlzYWJsZWQsXG4udWstY2hlY2tib3g6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhZGlvLWRpc2FibGVkLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tcmFkaW8tZGlzYWJsZWQpKSB7QGluY2x1ZGUgaG9vay1mb3JtLXJhZGlvLWRpc2FibGVkKCk7fVxufVxuXG4udWstcmFkaW86ZGlzYWJsZWQ6Y2hlY2tlZCB7IEBpbmNsdWRlIHN2Zy1maWxsKCRpbnRlcm5hbC1mb3JtLXJhZGlvLWltYWdlLCBcIiMwMDBcIiwgJGZvcm0tcmFkaW8tZGlzYWJsZWQtaWNvbi1jb2xvcik7IH1cbi51ay1jaGVja2JveDpkaXNhYmxlZDpjaGVja2VkIHsgQGluY2x1ZGUgc3ZnLWZpbGwoJGludGVybmFsLWZvcm0tY2hlY2tib3gtaW1hZ2UsIFwiIzAwMFwiLCAkZm9ybS1yYWRpby1kaXNhYmxlZC1pY29uLWNvbG9yKTsgfVxuLnVrLWNoZWNrYm94OmRpc2FibGVkOmluZGV0ZXJtaW5hdGUgeyBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtZm9ybS1jaGVja2JveC1pbmRldGVybWluYXRlLWltYWdlLCBcIiMwMDBcIiwgJGZvcm0tcmFkaW8tZGlzYWJsZWQtaWNvbi1jb2xvcik7IH1cblxuXG4vKiBMZWdlbmRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogTGVnZW5kXG4gKiAxLiBCZWhhdmUgbGlrZSBibG9jayBlbGVtZW50XG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4gKiA0LiBTdHlsZVxuICovXG5cbi51ay1sZWdlbmQge1xuICAgIC8qIDEgKi9cbiAgICB3aWR0aDogMTAwJTtcbiAgICAvKiAyICovXG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgLyogMyAqL1xuICAgIHBhZGRpbmc6IDA7XG4gICAgLyogNCAqL1xuICAgIGZvbnQtc2l6ZTogJGZvcm0tbGVnZW5kLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tbGVnZW5kLWxpbmUtaGVpZ2h0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLWxlZ2VuZCkpIHtAaW5jbHVkZSBob29rLWZvcm0tbGVnZW5kKCk7fVxufVxuXG5cbi8qIEN1c3RvbSBjb250cm9sc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBDb250YWluZXIgZml0cyBpdHMgY29udGVudFxuICogMi4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHRcbiAqIDMuIFByZXZlbnQgY29udGVudCBvdmVyZmxvd1xuICogNC4gQmVoYXZlIGxpa2UgbW9zdCBpbmxpbmUtYmxvY2sgZWxlbWVudHNcbiAqL1xuXG4udWstZm9ybS1jdXN0b20ge1xuICAgIC8qIDEgKi9cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgLyogMiAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvKiAzICovXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC8qIDQgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKlxuICogMS4gUG9zaXRpb24gYW5kIHJlc2l6ZSB0aGUgZm9ybSBjb250cm9sIHRvIGFsd2F5cyBjb3ZlciBpdHMgY29udGFpbmVyXG4gKiAyLiBSZXF1aXJlZCBmb3IgRmlyZWZveCBmb3IgcG9zaXRpb25pbmcgdG8gdGhlIGxlZnRcbiAqIDMuIFJlcXVpcmVkIGZvciBXZWJraXQgdG8gbWFrZSBgaGVpZ2h0YCB3b3JrXG4gKiA0LiBIaWRlIGNvbnRyb2xlIGFuZCBzaG93IGN1cnNvclxuICogNS4gTmVlZGVkIGZvciB0aGUgY3Vyc29yXG4gKiA2LiBDbGlwIGhlaWdodCBjYXVzZWQgYnkgNS4gTmVlZGVkIGZvciBXZWJraXQgb25seVxuICovXG5cbi51ay1mb3JtLWN1c3RvbSBzZWxlY3QsXG4udWstZm9ybS1jdXN0b20gaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICAgIC8qIDEgKi9cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIC8qIDIgKi9cbiAgICBsZWZ0OiAwO1xuICAgIC8qIDMgKi9cbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLyogNCAqL1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4udWstZm9ybS1jdXN0b20gaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICAgIC8qIDUgKi9cbiAgICBmb250LXNpemU6IDUwMHB4O1xuICAgIC8qIDYgKi9cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5cbi8qIExhYmVsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWZvcm0tbGFiZWwge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLWxhYmVsKSkge0BpbmNsdWRlIGhvb2stZm9ybS1sYWJlbCgpO31cbn1cblxuXG4vKiBMYXlvdXRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogU3RhY2tlZFxuICovXG5cbi51ay1mb3JtLXN0YWNrZWQgLnVrLWZvcm0tbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXN0YWNrZWQtbWFyZ2luLWJvdHRvbTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZm9ybS1zdGFja2VkLWxhYmVsKSkge0BpbmNsdWRlIGhvb2stZm9ybS1zdGFja2VkLWxhYmVsKCk7fVxufVxuXG4vKlxuICogSG9yaXpvbnRhbFxuICovXG5cbi8qIFRhYmxldCBwb3J0cmFpdCBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXNtYWxsLW1heCkge1xuXG4gICAgLyogQmVoYXZlIGxpa2UgYHVrLWZvcm0tc3RhY2tlZGAgKi9cbiAgICAudWstZm9ybS1ob3Jpem9udGFsIC51ay1mb3JtLWxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXN0YWNrZWQtbWFyZ2luLWJvdHRvbTtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLWZvcm0tc3RhY2tlZC1sYWJlbCkpIHtAaW5jbHVkZSBob29rLWZvcm0tc3RhY2tlZC1sYWJlbCgpO31cbiAgICB9XG5cbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstZm9ybS1ob3Jpem9udGFsIC51ay1mb3JtLWxhYmVsIHtcbiAgICAgICAgd2lkdGg6ICRmb3JtLWhvcml6b250YWwtbGFiZWwtd2lkdGg7XG4gICAgICAgIG1hcmdpbi10b3A6ICRmb3JtLWhvcml6b250YWwtbGFiZWwtbWFyZ2luLXRvcDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLWhvcml6b250YWwtbGFiZWwpKSB7QGluY2x1ZGUgaG9vay1mb3JtLWhvcml6b250YWwtbGFiZWwoKTt9XG4gICAgfVxuXG4gICAgLnVrLWZvcm0taG9yaXpvbnRhbCAudWstZm9ybS1jb250cm9scyB7IG1hcmdpbi1sZWZ0OiAkZm9ybS1ob3Jpem9udGFsLWNvbnRyb2xzLW1hcmdpbi1sZWZ0OyB9XG5cbiAgICAvKiBCZXR0ZXIgdmVydGljYWwgYWxpZ25tZW50IGlmIGNvbnRyb2xzIGFyZSBjaGVja2JveGVzIGFuZCByYWRpbyBidXR0b25zIHdpdGggdGV4dCAqL1xuICAgIC51ay1mb3JtLWhvcml6b250YWwgLnVrLWZvcm0tY29udHJvbHMtdGV4dCB7IHBhZGRpbmctdG9wOiAkZm9ybS1ob3Jpem9udGFsLWNvbnRyb2xzLXRleHQtcGFkZGluZy10b3A7IH1cblxufVxuXG5cbi8qIEljb25zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFNldCBwb3NpdGlvblxuICogMi4gU2V0IHdpZHRoXG4gKiAzLiBDZW50ZXIgaWNvbiB2ZXJ0aWNhbGx5IGFuZCBob3Jpem9udGFsbHlcbiAqIDQuIFN0eWxlXG4gKi9cblxuLnVrLWZvcm0taWNvbiB7XG4gICAgLyogMSAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgLyogMiAqL1xuICAgIHdpZHRoOiAkZm9ybS1pY29uLXdpZHRoO1xuICAgIC8qIDMgKi9cbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIC8qIDQgKi9cbiAgICBjb2xvcjogJGZvcm0taWNvbi1jb2xvcjtcbn1cblxuLypcbiAqIFJlcXVpcmVkIGZvciBgYWAuXG4gKi9cblxuLnVrLWZvcm0taWNvbjpob3ZlciB7IGNvbG9yOiAkZm9ybS1pY29uLWhvdmVyLWNvbG9yOyB9XG5cbi8qXG4gKiBNYWtlIGBpbnB1dGAgZWxlbWVudCBjbGlja2FibGUgdGhyb3VnaCBpY29uLCBlLmcuIGlmIGl0J3MgYSBgc3BhbmBcbiAqL1xuXG4udWstZm9ybS1pY29uOm5vdChhKTpub3QoYnV0dG9uKTpub3QoaW5wdXQpIHsgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLypcbiAqIElucHV0IHBhZGRpbmdcbiAqL1xuXG4udWstZm9ybS1pY29uOm5vdCgudWstZm9ybS1pY29uLWZsaXApIH4gLnVrLWlucHV0IHsgcGFkZGluZy1sZWZ0OiAkZm9ybS1pY29uLXdpZHRoICFpbXBvcnRhbnQ7IH1cblxuLypcbiAqIFBvc2l0aW9uIG1vZGlmaWVyXG4gKi9cblxuLnVrLWZvcm0taWNvbi1mbGlwIHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xufVxuXG4udWstZm9ybS1pY29uLWZsaXAgfiAudWstaW5wdXQgeyBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1pY29uLXdpZHRoICFpbXBvcnRhbnQ7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1mb3JtLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1mb3JtLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWZvcm0oKXt9XG4vLyBAbWl4aW4gaG9vay1mb3JtLXNpbmdsZS1saW5lKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1tdWx0aS1saW5lKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1mb2N1cygpe31cbi8vIEBtaXhpbiBob29rLWZvcm0tZGlzYWJsZWQoKXt9XG4vLyBAbWl4aW4gaG9vay1mb3JtLWRhbmdlcigpe31cbi8vIEBtaXhpbiBob29rLWZvcm0tc3VjY2Vzcygpe31cbi8vIEBtaXhpbiBob29rLWZvcm0tYmxhbmsoKXt9XG4vLyBAbWl4aW4gaG9vay1mb3JtLWJsYW5rLWZvY3VzKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1yYWRpbygpe31cbi8vIEBtaXhpbiBob29rLWZvcm0tcmFkaW8tZm9jdXMoKXt9XG4vLyBAbWl4aW4gaG9vay1mb3JtLXJhZGlvLWNoZWNrZWQoKXt9XG4vLyBAbWl4aW4gaG9vay1mb3JtLXJhZGlvLWNoZWNrZWQtZm9jdXMoKXt9XG4vLyBAbWl4aW4gaG9vay1mb3JtLXJhZGlvLWRpc2FibGVkKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1sZWdlbmQoKXt9XG4vLyBAbWl4aW4gaG9vay1mb3JtLWxhYmVsKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1zdGFja2VkLWxhYmVsKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1ob3Jpem9udGFsLWxhYmVsKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kaW52ZXJzZS1mb3JtLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWZvcm0tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWZvcm0tZm9jdXMtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2UtZm9ybS1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtZm9ybS1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kaW52ZXJzZS1mb3JtLXNlbGVjdC1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnZlcnNlLWZvcm0tZGF0YWxpc3QtaWNvbi1jb2xvcjogICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcblxuJGludmVyc2UtZm9ybS1yYWRpby1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgZGFya2VuKCRpbnZlcnNlLWdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kLCA1JSkgIWRlZmF1bHQ7XG5cbiRpbnZlcnNlLWZvcm0tcmFkaW8tY2hlY2tlZC1iYWNrZ3JvdW5kOiAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1mb3JtLXJhZGlvLWNoZWNrZWQtaWNvbi1jb2xvcjogICAgICAgICAkaW52ZXJzZS1nbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcblxuJGludmVyc2UtZm9ybS1yYWRpby1jaGVja2VkLWZvY3VzLWJhY2tncm91bmQ6ICAgZGFya2VuKCRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQsIDEwJSkgIWRlZmF1bHQ7XG5cbiRpbnZlcnNlLWZvcm0taWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWZvcm0taWNvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtZm9ybSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtZm9ybS1mb2N1cygpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtZm9ybS1yYWRpbygpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtZm9ybS1yYWRpby1mb2N1cygpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtZm9ybS1yYWRpby1jaGVja2VkKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1mb3JtLXJhZGlvLWNoZWNrZWQtZm9jdXMoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWZvcm0tbGFiZWwoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIEJ1dHRvblxuLy8gRGVzY3JpcHRpb246ICAgICBTdHlsZXMgZm9yIGJ1dHRvbnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1idXR0b25gXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstYnV0dG9uLWdyb3VwYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLWJ1dHRvbi1kZWZhdWx0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstYnV0dG9uLXByaW1hcnlgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1idXR0b24tc2Vjb25kYXJ5YFxuLy8gICAgICAgICAgICAgICAgICBgdWstYnV0dG9uLWRhbmdlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWJ1dHRvbi10ZXh0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstYnV0dG9uLWxpbmtgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1idXR0b24tc21hbGxgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1idXR0b24tbGFyZ2VgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRidXR0b24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbnRyb2wtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ1dHRvbi1zbWFsbC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29udHJvbC1zbWFsbC1oZWlnaHQgIWRlZmF1bHQ7XG4kYnV0dG9uLWxhcmdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb250cm9sLWxhcmdlLWhlaWdodCAhZGVmYXVsdDtcblxuJGJ1dHRvbi1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJ1dHRvbi1zbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJ1dHRvbi1sYXJnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJGJ1dHRvbi1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGJ1dHRvbi1zbWFsbC1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZ3V0dGVyICFkZWZhdWx0O1xuJGJ1dHRvbi1sYXJnZS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcblxuJGJ1dHRvbi1kZWZhdWx0LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRidXR0b24tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnV0dG9uLWRlZmF1bHQtYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLWRlZmF1bHQtYWN0aXZlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgZGFya2VuKCRidXR0b24tZGVmYXVsdC1iYWNrZ3JvdW5kLCAxMCUpICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRidXR0b24tcHJpbWFyeS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRidXR0b24tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLXByaW1hcnktaG92ZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgZGFya2VuKCRidXR0b24tcHJpbWFyeS1iYWNrZ3JvdW5kLCA1JSkgIWRlZmF1bHQ7XG4kYnV0dG9uLXByaW1hcnktaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1wcmltYXJ5LWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgIGRhcmtlbigkYnV0dG9uLXByaW1hcnktYmFja2dyb3VuZCwgMTAlKSAhZGVmYXVsdDtcbiRidXR0b24tcHJpbWFyeS1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG5cbiRidXR0b24tc2Vjb25kYXJ5LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNlY29uZGFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJ1dHRvbi1zZWNvbmRhcnktY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tc2Vjb25kYXJ5LWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICBkYXJrZW4oJGJ1dHRvbi1zZWNvbmRhcnktYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGJ1dHRvbi1zZWNvbmRhcnktaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tc2Vjb25kYXJ5LWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICBkYXJrZW4oJGJ1dHRvbi1zZWNvbmRhcnktYmFja2dyb3VuZCwgMTAlKSAhZGVmYXVsdDtcbiRidXR0b24tc2Vjb25kYXJ5LWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG5cbiRidXR0b24tZGFuZ2VyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWRhbmdlci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJ1dHRvbi1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tZGFuZ2VyLWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICBkYXJrZW4oJGJ1dHRvbi1kYW5nZXItYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGJ1dHRvbi1kYW5nZXItaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tZGFuZ2VyLWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICBkYXJrZW4oJGJ1dHRvbi1kYW5nZXItYmFja2dyb3VuZCwgMTAlKSAhZGVmYXVsdDtcbiRidXR0b24tZGFuZ2VyLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG5cbiRidXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kYnV0dG9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcblxuJGJ1dHRvbi10ZXh0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kYnV0dG9uLXRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tdGV4dC1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi10ZXh0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRidXR0b24tbGluay1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ1dHRvbi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbGluay1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLWxpbmstaG92ZXItdGV4dC1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuJGJ1dHRvbi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IEJ1dHRvblxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBSZW1vdmUgbWFyZ2lucyBpbiBDaHJvbWUsIFNhZmFyaSBhbmQgT3BlcmEuXG4gKiAyLiBSZW1vdmUgYm9yZGVycyBmb3IgYGJ1dHRvbmAuXG4gKiAzLiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFLlxuICogNC4gQ29ycmVjdCBgZm9udGAgcHJvcGVydGllcyBhbmQgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGZvciBgYnV0dG9uYC5cbiAqIDUuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogNi4gUmVtb3ZlIGRlZmF1bHQgc3R5bGUgZm9yIGBpbnB1dCB0eXBlPVwic3VibWl0XCJgaW4gaU9TLlxuICogNy4gU3R5bGVcbiAqIDguIGBsaW5lLWhlaWdodGAgaXMgdXNlZCB0byBjcmVhdGUgYSBoZWlnaHQgYmVjYXVzZSBpdCBhbHNvIGNlbnRlcnMgdGhlIHRleHQgdmVydGljYWxseSBmb3IgYGFgIGVsZW1lbnRzLlxuICogICAgQmV0dGVyIHdvdWxkIGJlIHRvIHVzZSBoZWlnaHQgYW5kIGZsZXhib3ggdG8gY2VudGVyIHRoZSB0ZXh0IHZlcnRpY2FsbHkgYnV0IGZsZXhib3ggZG9lc24ndCB3b3JrIGluIEZpcmVmb3ggb24gYGJ1dHRvbmAgZWxlbWVudHMuXG4gKiA5LiBBbGlnbiB0ZXh0IGlmIGJ1dHRvbiBoYXMgYSB3aWR0aFxuICogMTAuIFJlcXVpcmVkIGZvciBgYWAuXG4gKi9cblxuLnVrLWJ1dHRvbiB7XG4gICAgLyogMSAqL1xuICAgIG1hcmdpbjogMDtcbiAgICAvKiAyICovXG4gICAgYm9yZGVyOiBub25lO1xuICAgIC8qIDMgKi9cbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAvKiA0ICovXG4gICAgZm9udDogaW5oZXJpdDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAvKiA1ICovXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgLyogNiAqL1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIC8qIDcgKi9cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwYWRkaW5nOiAwICRidXR0b24tcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC1zaXplOiAkYnV0dG9uLWZvbnQtc2l6ZTtcbiAgICAvKiA4ICovXG4gICAgbGluZS1oZWlnaHQ6ICRidXR0b24tbGluZS1oZWlnaHQ7XG4gICAgLyogOSAqL1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAvKiAxMCAqL1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uKSkge0BpbmNsdWRlIGhvb2stYnV0dG9uKCk7fVxufVxuXG4udWstYnV0dG9uOm5vdCg6ZGlzYWJsZWQpIHsgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi8qXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbi51ay1idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4vKiBIb3ZlciAqL1xuLnVrLWJ1dHRvbjpob3ZlciB7XG4gICAgLyogOSAqL1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLWhvdmVyKCk7fVxufVxuXG4vKiBGb2N1cyAqL1xuLnVrLWJ1dHRvbjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLWZvY3VzKSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLWZvY3VzKCk7fVxufVxuXG4vKiBPbkNsaWNrICsgQWN0aXZlICovXG4udWstYnV0dG9uOmFjdGl2ZSxcbi51ay1idXR0b24udWstYWN0aXZlIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1hY3RpdmUoKTt9XG59XG5cblxuLyogU3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIERlZmF1bHRcbiAqL1xuXG4udWstYnV0dG9uLWRlZmF1bHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tZGVmYXVsdC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLWRlZmF1bHQtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJ1dHRvbi1kZWZhdWx0KSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLWRlZmF1bHQoKTt9XG59XG5cbi8qIEhvdmVyICsgRm9jdXMgKi9cbi51ay1idXR0b24tZGVmYXVsdDpob3Zlcixcbi51ay1idXR0b24tZGVmYXVsdDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1kZWZhdWx0LWhvdmVyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tZGVmYXVsdC1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLWRlZmF1bHQtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tZGVmYXVsdC1ob3ZlcigpO31cbn1cblxuLyogT25DbGljayArIEFjdGl2ZSAqL1xuLnVrLWJ1dHRvbi1kZWZhdWx0OmFjdGl2ZSxcbi51ay1idXR0b24tZGVmYXVsdC51ay1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tZGVmYXVsdC1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJ1dHRvbi1kZWZhdWx0LWFjdGl2ZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLWRlZmF1bHQtYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLWRlZmF1bHQtYWN0aXZlKCk7fVxufVxuXG4vKlxuICogUHJpbWFyeVxuICovXG5cbi51ay1idXR0b24tcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1wcmltYXJ5LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tcHJpbWFyeS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXByaW1hcnkpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tcHJpbWFyeSgpO31cbn1cblxuLyogSG92ZXIgKyBGb2N1cyAqL1xuLnVrLWJ1dHRvbi1wcmltYXJ5OmhvdmVyLFxuLnVrLWJ1dHRvbi1wcmltYXJ5OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLXByaW1hcnktaG92ZXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJ1dHRvbi1wcmltYXJ5LWhvdmVyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24tcHJpbWFyeS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1wcmltYXJ5LWhvdmVyKCk7fVxufVxuXG4vKiBPbkNsaWNrICsgQWN0aXZlICovXG4udWstYnV0dG9uLXByaW1hcnk6YWN0aXZlLFxuLnVrLWJ1dHRvbi1wcmltYXJ5LnVrLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1wcmltYXJ5LWFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLXByaW1hcnktYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24tcHJpbWFyeS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tcHJpbWFyeS1hY3RpdmUoKTt9XG59XG5cbi8qXG4gKiBTZWNvbmRhcnlcbiAqL1xuXG4udWstYnV0dG9uLXNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1zZWNvbmRhcnktYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJ1dHRvbi1zZWNvbmRhcnktY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJ1dHRvbi1zZWNvbmRhcnkpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tc2Vjb25kYXJ5KCk7fVxufVxuXG4vKiBIb3ZlciArIEZvY3VzICovXG4udWstYnV0dG9uLXNlY29uZGFyeTpob3Zlcixcbi51ay1idXR0b24tc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLXNlY29uZGFyeS1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLXNlY29uZGFyeS1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXNlY29uZGFyeS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1zZWNvbmRhcnktaG92ZXIoKTt9XG59XG5cbi8qIE9uQ2xpY2sgKyBBY3RpdmUgKi9cbi51ay1idXR0b24tc2Vjb25kYXJ5OmFjdGl2ZSxcbi51ay1idXR0b24tc2Vjb25kYXJ5LnVrLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1zZWNvbmRhcnktYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tc2Vjb25kYXJ5LWFjdGl2ZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tc2Vjb25kYXJ5LWFjdGl2ZSgpO31cbn1cblxuLypcbiAqIERhbmdlclxuICovXG5cbi51ay1idXR0b24tZGFuZ2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWRhbmdlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLWRhbmdlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLWRhbmdlcikpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1kYW5nZXIoKTt9XG59XG5cbi8qIEhvdmVyICsgRm9jdXMgKi9cbi51ay1idXR0b24tZGFuZ2VyOmhvdmVyLFxuLnVrLWJ1dHRvbi1kYW5nZXI6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tZGFuZ2VyLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tZGFuZ2VyLWhvdmVyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24tZGFuZ2VyLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLWRhbmdlci1ob3ZlcigpO31cbn1cblxuLyogT25DbGljayArIEFjdGl2ZSAqL1xuLnVrLWJ1dHRvbi1kYW5nZXI6YWN0aXZlLFxuLnVrLWJ1dHRvbi1kYW5nZXIudWstYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWRhbmdlci1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJ1dHRvbi1kYW5nZXItYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24tZGFuZ2VyLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1kYW5nZXItYWN0aXZlKCk7fVxufVxuXG4vKlxuICogRGlzYWJsZWRcbiAqIFRoZSBzYW1lIGZvciBhbGwgc3R5bGUgbW9kaWZpZXJzXG4gKi9cblxuLnVrLWJ1dHRvbi1kZWZhdWx0OmRpc2FibGVkLFxuLnVrLWJ1dHRvbi1wcmltYXJ5OmRpc2FibGVkLFxuLnVrLWJ1dHRvbi1zZWNvbmRhcnk6ZGlzYWJsZWQsXG4udWstYnV0dG9uLWRhbmdlcjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLWRpc2FibGVkLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24tZGlzYWJsZWQpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tZGlzYWJsZWQoKTt9XG59XG5cblxuLyogU2l6ZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYnV0dG9uLXNtYWxsIHtcbiAgICBwYWRkaW5nOiAwICRidXR0b24tc21hbGwtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkYnV0dG9uLXNtYWxsLWxpbmUtaGVpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJGJ1dHRvbi1zbWFsbC1mb250LXNpemU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJ1dHRvbi1zbWFsbCkpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1zbWFsbCgpO31cbn1cblxuLnVrLWJ1dHRvbi1sYXJnZSB7XG4gICAgcGFkZGluZzogMCAkYnV0dG9uLWxhcmdlLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBsaW5lLWhlaWdodDogJGJ1dHRvbi1sYXJnZS1saW5lLWhlaWdodDtcbiAgICBmb250LXNpemU6ICRidXR0b24tbGFyZ2UtZm9udC1zaXplO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24tbGFyZ2UpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tbGFyZ2UoKTt9XG59XG5cblxuLyogVGV4dCBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogVGV4dFxuICogMS4gUmVzZXRcbiAqIDIuIFN0eWxlXG4gKi9cblxuLnVrLWJ1dHRvbi10ZXh0IHtcbiAgICAvKiAxICovXG4gICAgcGFkZGluZzogMDtcbiAgICBsaW5lLWhlaWdodDogJGJ1dHRvbi10ZXh0LWxpbmUtaGVpZ2h0O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgLyogMiAqL1xuICAgIGNvbG9yOiAkYnV0dG9uLXRleHQtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJ1dHRvbi10ZXh0KSkge0BpbmNsdWRlIGhvb2stYnV0dG9uLXRleHQoKTt9XG59XG5cbi8qIEhvdmVyICsgRm9jdXMgKi9cbi51ay1idXR0b24tdGV4dDpob3Zlcixcbi51ay1idXR0b24tdGV4dDpmb2N1cyB7XG4gICAgY29sb3I6ICRidXR0b24tdGV4dC1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXRleHQtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tdGV4dC1ob3ZlcigpO31cbn1cblxuLyogRGlzYWJsZWQgKi9cbi51ay1idXR0b24tdGV4dDpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRidXR0b24tdGV4dC1kaXNhYmxlZC1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnV0dG9uLXRleHQtZGlzYWJsZWQpKSB7QGluY2x1ZGUgaG9vay1idXR0b24tdGV4dC1kaXNhYmxlZCgpO31cbn1cblxuLypcbiAqIExpbmtcbiAqIDEuIFJlc2V0XG4gKiAyLiBTdHlsZVxuICovXG5cbi51ay1idXR0b24tbGluayB7XG4gICAgLyogMSAqL1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6ICRidXR0b24tbGluay1saW5lLWhlaWdodDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIC8qIDIgKi9cbiAgICBjb2xvcjogJGJ1dHRvbi1saW5rLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24tbGluaykpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1saW5rKCk7fVxufVxuXG4vKiBIb3ZlciArIEZvY3VzICovXG4udWstYnV0dG9uLWxpbms6aG92ZXIsXG4udWstYnV0dG9uLWxpbms6Zm9jdXMge1xuICAgIGNvbG9yOiAkYnV0dG9uLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkYnV0dG9uLWxpbmstaG92ZXItdGV4dC1kZWNvcmF0aW9uO1xufVxuXG4vKiBEaXNhYmxlZCAqL1xuLnVrLWJ1dHRvbi1saW5rOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGJ1dHRvbi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuXG4vKiBHcm91cFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBVc2luZyBgZmxleGAgaW5zdGVhZCBvZiBgaW5saW5lLWJsb2NrYCB0byBwcmV2ZW50IHdoaXRlc3BhY2UgYmV0d2VlbnQgY2hpbGQgZWxlbWVudHNcbiAqIDIuIEJlaGF2ZSBsaWtlIGJ1dHRvblxuICogMy4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHRcbiAqL1xuXG4udWstYnV0dG9uLWdyb3VwIHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgLyogMiAqL1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgLyogMyAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1idXR0b24tbWlzYykpIHtAaW5jbHVkZSBob29rLWJ1dHRvbi1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1idXR0b24oKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tZm9jdXMoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stYnV0dG9uLWRlZmF1bHQoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tZGVmYXVsdC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1kZWZhdWx0LWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1wcmltYXJ5KCl7fVxuLy8gQG1peGluIGhvb2stYnV0dG9uLXByaW1hcnktaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tcHJpbWFyeS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tc2Vjb25kYXJ5KCl7fVxuLy8gQG1peGluIGhvb2stYnV0dG9uLXNlY29uZGFyeS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1zZWNvbmRhcnktYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stYnV0dG9uLWRhbmdlcigpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1kYW5nZXItaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tZGFuZ2VyLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1kaXNhYmxlZCgpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1zbWFsbCgpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1sYXJnZSgpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi10ZXh0KCl7fVxuLy8gQG1peGluIGhvb2stYnV0dG9uLXRleHQtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tdGV4dC1kaXNhYmxlZCgpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1saW5rKCl7fVxuLy8gQG1peGluIGhvb2stYnV0dG9uLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRpbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWJhY2tncm91bmQ6ICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWhvdmVyLWJhY2tncm91bmQ6ICAgICAgIGRhcmtlbigkaW52ZXJzZS1idXR0b24tZGVmYXVsdC1iYWNrZ3JvdW5kLCA1JSkgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tZGVmYXVsdC1ob3Zlci1jb2xvcjogICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgIGRhcmtlbigkaW52ZXJzZS1idXR0b24tZGVmYXVsdC1iYWNrZ3JvdW5kLCAxMCUpICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLWRlZmF1bHQtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tcHJpbWFyeS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tcHJpbWFyeS1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICBkYXJrZW4oJGludmVyc2UtYnV0dG9uLXByaW1hcnktYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLXByaW1hcnktaG92ZXItY29sb3I6ICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tcHJpbWFyeS1hY3RpdmUtYmFja2dyb3VuZDogICAgICBkYXJrZW4oJGludmVyc2UtYnV0dG9uLXByaW1hcnktYmFja2dyb3VuZCwgMTAlKSAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1wcmltYXJ5LWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1iYWNrZ3JvdW5kOiAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1zZWNvbmRhcnktY29sb3I6ICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgZGFya2VuKCRpbnZlcnNlLWJ1dHRvbi1zZWNvbmRhcnktYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1ob3Zlci1jb2xvcjogICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICBkYXJrZW4oJGludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1iYWNrZ3JvdW5kLCAxMCUpICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUtY29sb3I6ICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tdGV4dC1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tdGV4dC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJ1dHRvbi1kZWZhdWx0KCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tZGVmYXVsdC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLWRlZmF1bHQtYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tcHJpbWFyeSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLXByaW1hcnktaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJ1dHRvbi1wcmltYXJ5LWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLXNlY29uZGFyeSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJ1dHRvbi10ZXh0KCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tdGV4dC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLXRleHQtZGlzYWJsZWQoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJ1dHRvbi1saW5rKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBQcm9ncmVzc1xuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIHByb2dyZXNzIGJhcnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1wcm9ncmVzc2Bcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1tYXJnaW4tdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiRwcm9ncmVzcy1iYXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogUHJvZ3Jlc3NcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqIDIuIFJlbW92ZSBkZWZhdWx0IHN0eWxlXG4gKiAzLiBCZWhhdmUgbGlrZSBhIGJsb2NrIGVsZW1lbnRcbiAqIDQuIFJlbW92ZSBib3JkZXJzIGluIEZpcmVmb3ggYW5kIEVkZ2VcbiAqIDUuIFNldCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBwcm9ncmVzcyBjb250YWluZXIgaW4gRmlyZWZveCwgSUUxMSBhbmQgRWRnZVxuICogNi4gU3R5bGVcbiAqL1xuXG4udWstcHJvZ3Jlc3Mge1xuICAgIC8qIDEgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgLyogMiAqL1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLyogMyAqL1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8qIDQgKi9cbiAgICBib3JkZXI6IDA7XG4gICAgLyogNSAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYWNrZ3JvdW5kO1xuICAgIC8qIDYgKi9cbiAgICBtYXJnaW4tYm90dG9tOiAkcHJvZ3Jlc3MtbWFyZ2luLXZlcnRpY2FsO1xuICAgIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stcHJvZ3Jlc3MpKSB7QGluY2x1ZGUgaG9vay1wcm9ncmVzcygpO31cbn1cblxuLyogQWRkIG1hcmdpbiBpZiBhZGphY2VudCBlbGVtZW50ICovXG4qICsgLnVrLXByb2dyZXNzIHsgbWFyZ2luLXRvcDogJHByb2dyZXNzLW1hcmdpbi12ZXJ0aWNhbDsgfVxuXG4vKlxuICogUmVtb3ZlIGFuaW1hdGVkIGNpcmNsZXMgZm9yIGluZGV0ZXJtaW5hdGUgc3RhdGUgaW4gSUUxMSBhbmQgRWRnZVxuICovXG5cbi51ay1wcm9ncmVzczppbmRldGVybWluYXRlIHsgY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi8qXG4gKiBQcm9ncmVzcyBjb250YWluZXJcbiAqIDIuIFJlbW92ZSBwcm9ncmVzcyBiYXIgZm9yIGluZGV0ZXJtaW5hdGUgc3RhdGUgaW4gRmlyZWZveFxuICovXG5cbi51ay1wcm9ncmVzczo6LXdlYmtpdC1wcm9ncmVzcy1iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFja2dyb3VuZDtcbiAgQGlmKG1peGluLWV4aXN0cyhob29rLXByb2dyZXNzKSkge0BpbmNsdWRlIGhvb2stcHJvZ3Jlc3MoKTt9XG59XG5cbi8qIDIgKi9cbi51ay1wcm9ncmVzczppbmRldGVybWluYXRlOjotbW96LXByb2dyZXNzLWJhciB7IHdpZHRoOiAwOyB9XG5cbi8qXG4gKiBQcm9ncmVzcyBiYXJcbiAqIDEuIFJlbW92ZSByaWdodCBib3JkZXIgaW4gSUUxMSBhbmQgRWRnZVxuICovXG5cbi51ay1wcm9ncmVzczo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iYWNrZ3JvdW5kO1xuICAgIHRyYW5zaXRpb246IHdpZHRoIDAuNnMgZWFzZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stcHJvZ3Jlc3MtYmFyKSkge0BpbmNsdWRlIGhvb2stcHJvZ3Jlc3MtYmFyKCk7fVxufVxuXG4udWstcHJvZ3Jlc3M6Oi1tb3otcHJvZ3Jlc3MtYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXByb2dyZXNzLWJhcikpIHtAaW5jbHVkZSBob29rLXByb2dyZXNzLWJhcigpO31cbn1cblxuLnVrLXByb2dyZXNzOjotbXMtZmlsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iYWNrZ3JvdW5kO1xuICAgIHRyYW5zaXRpb246IHdpZHRoIDAuNnMgZWFzZTtcbiAgICAvKiAxICovXG4gICAgYm9yZGVyOiAwO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1wcm9ncmVzcy1iYXIpKSB7QGluY2x1ZGUgaG9vay1wcm9ncmVzcy1iYXIoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stcHJvZ3Jlc3MtbWlzYykpIHtAaW5jbHVkZSBob29rLXByb2dyZXNzLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXByb2dyZXNzKCl7fVxuLy8gQG1peGluIGhvb2stcHJvZ3Jlc3MtYmFyKCl7fVxuLy8gQG1peGluIGhvb2stcHJvZ3Jlc3MtbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgU2VjdGlvblxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGhvcml6b250YWwgbGF5b3V0IHNlY3Rpb25cbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1zZWN0aW9uYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLXNlY3Rpb24teHNtYWxsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstc2VjdGlvbi1zbWFsbGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNlY3Rpb24tbGFyZ2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zZWN0aW9uLXhsYXJnZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNlY3Rpb24tZGVmYXVsdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNlY3Rpb24tbXV0ZWRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zZWN0aW9uLXByaW1hcnlgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zZWN0aW9uLXNlY29uZGFyeWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNlY3Rpb24tb3ZlcmxhcGBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1wcmVzZXJ2ZS1jb2xvcmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kc2VjdGlvbi1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW1lZGl1bS1tYXJnaW4gIWRlZmF1bHQ7XG4kc2VjdGlvbi1wYWRkaW5nLXZlcnRpY2FsLW06ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWxhcmdlLW1hcmdpbiAhZGVmYXVsdDtcblxuJHNlY3Rpb24teHNtYWxsLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRzZWN0aW9uLXNtYWxsLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLW1hcmdpbiAhZGVmYXVsdDtcblxuJHNlY3Rpb24tbGFyZ2UtcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgJGdsb2JhbC1sYXJnZS1tYXJnaW4gIWRlZmF1bHQ7XG4kc2VjdGlvbi1sYXJnZS1wYWRkaW5nLXZlcnRpY2FsLW06ICAgICAgICAgICAgICAgICAkZ2xvYmFsLXhsYXJnZS1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRzZWN0aW9uLXhsYXJnZS1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICRnbG9iYWwteGxhcmdlLW1hcmdpbiAhZGVmYXVsdDtcbiRzZWN0aW9uLXhsYXJnZS1wYWRkaW5nLXZlcnRpY2FsLW06ICAgICAgICAgICAgICAgICgkZ2xvYmFsLWxhcmdlLW1hcmdpbiArICRnbG9iYWwteGxhcmdlLW1hcmdpbikgIWRlZmF1bHQ7XG5cbiRzZWN0aW9uLWRlZmF1bHQtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuJHNlY3Rpb24tbXV0ZWQtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4kc2VjdGlvbi1wcmltYXJ5LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRzZWN0aW9uLXByaW1hcnktY29sb3ItbW9kZTogICAgICAgICAgICAgICAgICAgICAgIGxpZ2h0ICFkZWZhdWx0O1xuXG4kc2VjdGlvbi1zZWNvbmRhcnktYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNlY29uZGFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHNlY3Rpb24tc2Vjb25kYXJ5LWNvbG9yLW1vZGU6ICAgICAgICAgICAgICAgICAgICAgbGlnaHQgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFNlY3Rpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gTWFrZSBpdCB3b3JrIHdpdGggYDEwMHZoYCBhbmQgaGVpZ2h0IGluIGdlbmVyYWxcbiAqL1xuXG4udWstc2VjdGlvbiB7XG4gICAgZGlzcGxheTogZmxvdy1yb290O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICBwYWRkaW5nLXRvcDogJHNlY3Rpb24tcGFkZGluZy12ZXJ0aWNhbDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNlY3Rpb24tcGFkZGluZy12ZXJ0aWNhbDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2VjdGlvbikpIHtAaW5jbHVkZSBob29rLXNlY3Rpb24oKTt9XG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLXNlY3Rpb24ge1xuICAgICAgICBwYWRkaW5nLXRvcDogJHNlY3Rpb24tcGFkZGluZy12ZXJ0aWNhbC1tO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHNlY3Rpb24tcGFkZGluZy12ZXJ0aWNhbC1tO1xuICAgIH1cblxufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cblxuLnVrLXNlY3Rpb24gPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuXG4vKiBTaXplIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBYU21hbGxcbiAqL1xuXG4udWstc2VjdGlvbi14c21hbGwge1xuICAgIHBhZGRpbmctdG9wOiAkc2VjdGlvbi14c21hbGwtcGFkZGluZy12ZXJ0aWNhbDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNlY3Rpb24teHNtYWxsLXBhZGRpbmctdmVydGljYWw7XG59XG5cbi8qXG4gKiBTbWFsbFxuICovXG5cbi51ay1zZWN0aW9uLXNtYWxsIHtcbiAgICBwYWRkaW5nLXRvcDogJHNlY3Rpb24tc21hbGwtcGFkZGluZy12ZXJ0aWNhbDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNlY3Rpb24tc21hbGwtcGFkZGluZy12ZXJ0aWNhbDtcbn1cblxuLypcbiAqIExhcmdlXG4gKi9cblxuLnVrLXNlY3Rpb24tbGFyZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAkc2VjdGlvbi1sYXJnZS1wYWRkaW5nLXZlcnRpY2FsO1xuICAgIHBhZGRpbmctYm90dG9tOiAkc2VjdGlvbi1sYXJnZS1wYWRkaW5nLXZlcnRpY2FsO1xufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1zZWN0aW9uLWxhcmdlIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRzZWN0aW9uLWxhcmdlLXBhZGRpbmctdmVydGljYWwtbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRzZWN0aW9uLWxhcmdlLXBhZGRpbmctdmVydGljYWwtbTtcbiAgICB9XG5cbn1cblxuXG4vKlxuICogWExhcmdlXG4gKi9cblxuLnVrLXNlY3Rpb24teGxhcmdlIHtcbiAgICBwYWRkaW5nLXRvcDogJHNlY3Rpb24teGxhcmdlLXBhZGRpbmctdmVydGljYWw7XG4gICAgcGFkZGluZy1ib3R0b206ICRzZWN0aW9uLXhsYXJnZS1wYWRkaW5nLXZlcnRpY2FsO1xufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1zZWN0aW9uLXhsYXJnZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkc2VjdGlvbi14bGFyZ2UtcGFkZGluZy12ZXJ0aWNhbC1tO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHNlY3Rpb24teGxhcmdlLXBhZGRpbmctdmVydGljYWwtbTtcbiAgICB9XG5cbn1cblxuXG4vKiBTdHlsZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogRGVmYXVsdFxuICovXG5cbi51ay1zZWN0aW9uLWRlZmF1bHQge1xuICAgIGJhY2tncm91bmQ6ICRzZWN0aW9uLWRlZmF1bHQtYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2VjdGlvbi1kZWZhdWx0KSkge0BpbmNsdWRlIGhvb2stc2VjdGlvbi1kZWZhdWx0KCk7fVxufVxuXG4vKlxuICogTXV0ZWRcbiAqL1xuXG4udWstc2VjdGlvbi1tdXRlZCB7XG4gICAgYmFja2dyb3VuZDogJHNlY3Rpb24tbXV0ZWQtYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2VjdGlvbi1tdXRlZCkpIHtAaW5jbHVkZSBob29rLXNlY3Rpb24tbXV0ZWQoKTt9XG59XG5cbi8qXG4gKiBQcmltYXJ5XG4gKi9cblxuLnVrLXNlY3Rpb24tcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogJHNlY3Rpb24tcHJpbWFyeS1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zZWN0aW9uLXByaW1hcnkpKSB7QGluY2x1ZGUgaG9vay1zZWN0aW9uLXByaW1hcnkoKTt9XG59XG5cbkBpZiAoICRzZWN0aW9uLXByaW1hcnktY29sb3ItbW9kZSA9PSBsaWdodCApIHsgLnVrLXNlY3Rpb24tcHJpbWFyeTpub3QoLnVrLXByZXNlcnZlLWNvbG9yKSB7IEBleHRlbmQgLnVrLWxpZ2h0ICFvcHRpb25hbDt9IH1cbkBpZiAoICRzZWN0aW9uLXByaW1hcnktY29sb3ItbW9kZSA9PSBkYXJrICkgeyAudWstc2VjdGlvbi1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIHsgQGV4dGVuZCAudWstZGFyayAhb3B0aW9uYWw7fSB9XG5cblxuLypcbiAqIFNlY29uZGFyeVxuICovXG5cbi51ay1zZWN0aW9uLXNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogJHNlY3Rpb24tc2Vjb25kYXJ5LWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNlY3Rpb24tc2Vjb25kYXJ5KSkge0BpbmNsdWRlIGhvb2stc2VjdGlvbi1zZWNvbmRhcnkoKTt9XG59XG5cbkBpZiAoICRzZWN0aW9uLXNlY29uZGFyeS1jb2xvci1tb2RlID09IGxpZ2h0ICkgeyAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgeyBAZXh0ZW5kIC51ay1saWdodCAhb3B0aW9uYWw7fSB9XG5AaWYgKCAkc2VjdGlvbi1zZWNvbmRhcnktY29sb3ItbW9kZSA9PSBkYXJrICkgeyAudWstc2VjdGlvbi1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgeyBAZXh0ZW5kIC51ay1kYXJrICFvcHRpb25hbDt9IH1cblxuXG4vKiBPdmVybGFwIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFJlc2VydmVkIG1vZGlmaWVyIHRvIG1ha2UgYSBzZWN0aW9uIG92ZXJsYXAgYW5vdGhlciBzZWN0aW9uIHdpdGggYW4gYm9yZGVyIGltYWdlXG4gKiBJbXBsZW1lbnRlZCBieSB0aGUgdGhlbWVcbiAqL1xuXG4udWstc2VjdGlvbi1vdmVybGFwIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2VjdGlvbi1vdmVybGFwKSkge0BpbmNsdWRlIGhvb2stc2VjdGlvbi1vdmVybGFwKCk7fVxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLXNlY3Rpb24tbWlzYykpIHtAaW5jbHVkZSBob29rLXNlY3Rpb24tbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stc2VjdGlvbigpe31cbi8vIEBtaXhpbiBob29rLXNlY3Rpb24tZGVmYXVsdCgpe31cbi8vIEBtaXhpbiBob29rLXNlY3Rpb24tbXV0ZWQoKXt9XG4vLyBAbWl4aW4gaG9vay1zZWN0aW9uLXNlY29uZGFyeSgpe31cbi8vIEBtaXhpbiBob29rLXNlY3Rpb24tcHJpbWFyeSgpe31cbi8vIEBtaXhpbiBob29rLXNlY3Rpb24tb3ZlcmxhcCgpe31cbi8vIEBtaXhpbiBob29rLXNlY3Rpb24tbWlzYygpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIENvbnRhaW5lclxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gYWxpZ24gYW5kIGNlbnRlciB5b3VyIHNpdGUgYW5kIGdyaWQgY29udGVudFxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWNvbnRhaW5lcmBcbi8vXG4vLyBNb2RpZmllcjogICAgICAgIGB1ay1jb250YWluZXItc21hbGxgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jb250YWluZXItbGFyZ2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jb250YWluZXItZXhwYW5kYFxuLy8gICAgICAgICAgICAgICAgICBgdWstY29udGFpbmVyLWV4cGFuZC1sZWZ0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstY29udGFpbmVyLWV4cGFuZC1yaWdodGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWNvbnRhaW5lci1pdGVtLXBhZGRpbmctcmVtb3ZlLWxlZnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jb250YWluZXItaXRlbS1wYWRkaW5nLXJlbW92ZS1yaWdodGBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kY29udGFpbmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgIDEyMDBweCAhZGVmYXVsdDtcbiRjb250YWluZXIteHNtYWxsLW1heC13aWR0aDogICAgICAgICAgICAgNzUwcHggIWRlZmF1bHQ7XG4kY29udGFpbmVyLXNtYWxsLW1heC13aWR0aDogICAgICAgICAgICAgIDkwMHB4ICFkZWZhdWx0O1xuJGNvbnRhaW5lci1sYXJnZS1tYXgtd2lkdGg6ICAgICAgICAgICAgICAxNDAwcHggIWRlZmF1bHQ7XG4kY29udGFpbmVyLXhsYXJnZS1tYXgtd2lkdGg6ICAgICAgICAgICAgIDE2MDBweCAhZGVmYXVsdDtcblxuJGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtczogICAgICAgICAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRjb250YWluZXItcGFkZGluZy1ob3Jpem9udGFsLW06ICAgICAgICAgJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBDb250YWluZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQm94IHNpemluZyBoYXMgdG8gYmUgYGNvbnRlbnQtYm94YCBzbyB0aGUgbWF4LXdpZHRoIGlzIGFsd2F5cyB0aGUgc2FtZSBhbmRcbiAqICAgIHVuYWZmZWN0ZWQgYnkgdGhlIHBhZGRpbmcgb24gZGlmZmVyZW50IGJyZWFrcG9pbnRzLiBJdCdzIGltcG9ydGFudCBmb3IgdGhlIHNpemUgbW9kaWZpZXJzLlxuICovXG5cbi51ay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgICAvKiAxICovXG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAkY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbDtcbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtcztcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtcztcbiAgICB9XG5cbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbC1tO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbC1tO1xuICAgIH1cblxufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cblxuLnVrLWNvbnRhaW5lciA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4vKlxuICogUmVtb3ZlIHBhZGRpbmcgZnJvbSBuZXN0ZWQgY29udGFpbmVyc1xuICovXG5cbi51ay1jb250YWluZXIgLnVrLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cblxuLyogU2l6ZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb250YWluZXIteHNtYWxsIHsgbWF4LXdpZHRoOiAkY29udGFpbmVyLXhzbWFsbC1tYXgtd2lkdGg7IH1cblxuLnVrLWNvbnRhaW5lci1zbWFsbCB7IG1heC13aWR0aDogJGNvbnRhaW5lci1zbWFsbC1tYXgtd2lkdGg7IH1cblxuLnVrLWNvbnRhaW5lci1sYXJnZSB7IG1heC13aWR0aDogJGNvbnRhaW5lci1sYXJnZS1tYXgtd2lkdGg7IH1cblxuLnVrLWNvbnRhaW5lci14bGFyZ2UgeyBtYXgtd2lkdGg6ICRjb250YWluZXIteGxhcmdlLW1heC13aWR0aDsgfVxuXG4udWstY29udGFpbmVyLWV4cGFuZCB7IG1heC13aWR0aDogbm9uZTsgfVxuXG5cbi8qIEV4cGFuZCBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBFeHBhbmQgb25lIHNpZGUgb25seVxuICovXG5cbi51ay1jb250YWluZXItZXhwYW5kLWxlZnQgeyBtYXJnaW4tbGVmdDogMDsgfVxuLnVrLWNvbnRhaW5lci1leHBhbmQtcmlnaHQgeyBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWNvbnRhaW5lci1leHBhbmQtbGVmdC51ay1jb250YWluZXIteHNtYWxsLFxuICAgIC51ay1jb250YWluZXItZXhwYW5kLXJpZ2h0LnVrLWNvbnRhaW5lci14c21hbGwgeyBtYXgtd2lkdGg6IHVucXVvdGUoJ2NhbGMoNTAlICsgKCN7JGNvbnRhaW5lci14c21hbGwtbWF4LXdpZHRofSAvIDIpIC0gI3skY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbC1zfSknKTsgfVxuXG4gICAgLnVrLWNvbnRhaW5lci1leHBhbmQtbGVmdC51ay1jb250YWluZXItc21hbGwsXG4gICAgLnVrLWNvbnRhaW5lci1leHBhbmQtcmlnaHQudWstY29udGFpbmVyLXNtYWxsIHsgbWF4LXdpZHRoOiB1bnF1b3RlKCdjYWxjKDUwJSArICgjeyRjb250YWluZXItc21hbGwtbWF4LXdpZHRofSAvIDIpIC0gI3skY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbC1zfSknKTsgfVxuXG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLWNvbnRhaW5lci1leHBhbmQtbGVmdCxcbiAgICAudWstY29udGFpbmVyLWV4cGFuZC1yaWdodCB7IG1heC13aWR0aDogdW5xdW90ZSgnY2FsYyg1MCUgKyAoI3skY29udGFpbmVyLW1heC13aWR0aH0gLyAyKSAtICN7JGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtbX0pJyk7IH1cblxuICAgIC51ay1jb250YWluZXItZXhwYW5kLWxlZnQudWstY29udGFpbmVyLXhzbWFsbCxcbiAgICAudWstY29udGFpbmVyLWV4cGFuZC1yaWdodC51ay1jb250YWluZXIteHNtYWxsIHsgbWF4LXdpZHRoOiB1bnF1b3RlKCdjYWxjKDUwJSArICgjeyRjb250YWluZXIteHNtYWxsLW1heC13aWR0aH0gLyAyKSAtICN7JGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtbX0pJyk7IH1cblxuICAgIC51ay1jb250YWluZXItZXhwYW5kLWxlZnQudWstY29udGFpbmVyLXNtYWxsLFxuICAgIC51ay1jb250YWluZXItZXhwYW5kLXJpZ2h0LnVrLWNvbnRhaW5lci1zbWFsbCB7IG1heC13aWR0aDogdW5xdW90ZSgnY2FsYyg1MCUgKyAoI3skY29udGFpbmVyLXNtYWxsLW1heC13aWR0aH0gLyAyKSAtICN7JGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtbX0pJyk7IH1cblxuICAgIC51ay1jb250YWluZXItZXhwYW5kLWxlZnQudWstY29udGFpbmVyLWxhcmdlLFxuICAgIC51ay1jb250YWluZXItZXhwYW5kLXJpZ2h0LnVrLWNvbnRhaW5lci1sYXJnZSB7IG1heC13aWR0aDogdW5xdW90ZSgnY2FsYyg1MCUgKyAoI3skY29udGFpbmVyLWxhcmdlLW1heC13aWR0aH0gLyAyKSAtICN7JGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtbX0pJyk7IH1cblxuICAgIC51ay1jb250YWluZXItZXhwYW5kLWxlZnQudWstY29udGFpbmVyLXhsYXJnZSxcbiAgICAudWstY29udGFpbmVyLWV4cGFuZC1yaWdodC51ay1jb250YWluZXIteGxhcmdlIHsgbWF4LXdpZHRoOiB1bnF1b3RlKCdjYWxjKDUwJSArICgjeyRjb250YWluZXIteGxhcmdlLW1heC13aWR0aH0gLyAyKSAtICN7JGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtbX0pJyk7IH1cblxufVxuXG5cbi8qIEl0ZW1cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogVXRpbGl0eSBjbGFzc2VzIHRvIHJlc2V0IGNvbnRhaW5lciBwYWRkaW5nIG9uIHRoZSBsZWZ0IG9yIHJpZ2h0IHNpZGVcbiAqIE5vdGU6IEl0IGhhcyB0byBiZSBuZWdhdGl2ZSBtYXJnaW4gb24gdGhlIGl0ZW0sIGJlY2F1c2UgaXQncyBzcGVjaWZpYyB0byB0aGUgaXRlbS5cbiAqL1xuXG4udWstY29udGFpbmVyLWl0ZW0tcGFkZGluZy1yZW1vdmUtbGVmdCxcbi51ay1jb250YWluZXItaXRlbS1wYWRkaW5nLXJlbW92ZS1yaWdodCB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgKyAjeyRjb250YWluZXItcGFkZGluZy1ob3Jpem9udGFsfSknKSB9XG5cbi51ay1jb250YWluZXItaXRlbS1wYWRkaW5nLXJlbW92ZS1sZWZ0IHsgbWFyZ2luLWxlZnQ6ICgtJGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwpOyB9XG4udWstY29udGFpbmVyLWl0ZW0tcGFkZGluZy1yZW1vdmUtcmlnaHQgeyBtYXJnaW4tcmlnaHQ6ICgtJGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwpOyB9XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcblxuICAgIC51ay1jb250YWluZXItaXRlbS1wYWRkaW5nLXJlbW92ZS1sZWZ0LFxuICAgIC51ay1jb250YWluZXItaXRlbS1wYWRkaW5nLXJlbW92ZS1yaWdodCB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgKyAjeyRjb250YWluZXItcGFkZGluZy1ob3Jpem9udGFsLXN9KScpIH1cblxuICAgIC51ay1jb250YWluZXItaXRlbS1wYWRkaW5nLXJlbW92ZS1sZWZ0IHsgbWFyZ2luLWxlZnQ6ICgtJGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtcyk7IH1cbiAgICAudWstY29udGFpbmVyLWl0ZW0tcGFkZGluZy1yZW1vdmUtcmlnaHQgeyBtYXJnaW4tcmlnaHQ6ICgtJGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtcyk7IH1cblxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1jb250YWluZXItaXRlbS1wYWRkaW5nLXJlbW92ZS1sZWZ0LFxuICAgIC51ay1jb250YWluZXItaXRlbS1wYWRkaW5nLXJlbW92ZS1yaWdodCB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgKyAjeyRjb250YWluZXItcGFkZGluZy1ob3Jpem9udGFsLW19KScpIH1cblxuICAgIC51ay1jb250YWluZXItaXRlbS1wYWRkaW5nLXJlbW92ZS1sZWZ0IHsgbWFyZ2luLWxlZnQ6ICgtJGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtbSk7IH1cbiAgICAudWstY29udGFpbmVyLWl0ZW0tcGFkZGluZy1yZW1vdmUtcmlnaHQgeyBtYXJnaW4tcmlnaHQ6ICgtJGNvbnRhaW5lci1wYWRkaW5nLWhvcml6b250YWwtbSk7IH1cblxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWNvbnRhaW5lci1taXNjKSkge0BpbmNsdWRlIGhvb2stY29udGFpbmVyLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWNvbnRhaW5lci1taXNjKCl7fSIsIi8vIE5hbWU6ICAgICAgICAgICAgVGlsZVxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIHRpbGVkIGJveGVzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstdGlsZWBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay10aWxlLXhzbWFsbGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRpbGUtc21hbGxgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10aWxlLWxhcmdlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdGlsZS14bGFyZ2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10aWxlLWRlZmF1bHRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10aWxlLW11dGVkYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdGlsZS1wcmltYXJ5YFxuLy8gICAgICAgICAgICAgICAgICBgdWstdGlsZS1zZWNvbmRhcnlgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstcHJlc2VydmUtY29sb3JgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHRpbGUtcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiR0aWxlLXBhZGRpbmctaG9yaXpvbnRhbC1zOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJHRpbGUtcGFkZGluZy1ob3Jpem9udGFsLW06ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuJHRpbGUtcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tbWFyZ2luICFkZWZhdWx0O1xuJHRpbGUtcGFkZGluZy12ZXJ0aWNhbC1tOiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1sYXJnZS1tYXJnaW4gIWRlZmF1bHQ7XG5cbiR0aWxlLXhzbWFsbC1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4kdGlsZS1zbWFsbC1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW1lZGl1bS1tYXJnaW4gIWRlZmF1bHQ7XG5cbiR0aWxlLWxhcmdlLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbGFyZ2UtbWFyZ2luICFkZWZhdWx0O1xuJHRpbGUtbGFyZ2UtcGFkZGluZy12ZXJ0aWNhbC1tOiAgICAgICAgICAgICAgICAgJGdsb2JhbC14bGFyZ2UtbWFyZ2luICFkZWZhdWx0O1xuXG4kdGlsZS14bGFyZ2UtcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAkZ2xvYmFsLXhsYXJnZS1tYXJnaW4gIWRlZmF1bHQ7XG4kdGlsZS14bGFyZ2UtcGFkZGluZy12ZXJ0aWNhbC1tOiAgICAgICAgICAgICAgICAoJGdsb2JhbC1sYXJnZS1tYXJnaW4gKyAkZ2xvYmFsLXhsYXJnZS1tYXJnaW4pICFkZWZhdWx0O1xuXG4kdGlsZS1kZWZhdWx0LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiR0aWxlLW11dGVkLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuJHRpbGUtcHJpbWFyeS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kdGlsZS1wcmltYXJ5LWNvbG9yLW1vZGU6ICAgICAgICAgICAgICAgICAgICAgICBsaWdodCAhZGVmYXVsdDtcblxuJHRpbGUtc2Vjb25kYXJ5LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zZWNvbmRhcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiR0aWxlLXNlY29uZGFyeS1jb2xvci1tb2RlOiAgICAgICAgICAgICAgICAgICAgIGxpZ2h0ICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBUaWxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRpbGUge1xuICAgIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwYWRkaW5nLWxlZnQ6ICR0aWxlLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkdGlsZS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgcGFkZGluZy10b3A6ICR0aWxlLXBhZGRpbmctdmVydGljYWw7XG4gICAgcGFkZGluZy1ib3R0b206ICR0aWxlLXBhZGRpbmctdmVydGljYWw7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRpbGUpKSB7QGluY2x1ZGUgaG9vay10aWxlKCk7fVxufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG5cbiAgICAudWstdGlsZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJHRpbGUtcGFkZGluZy1ob3Jpem9udGFsLXM7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICR0aWxlLXBhZGRpbmctaG9yaXpvbnRhbC1zO1xuICAgIH1cblxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay10aWxlIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkdGlsZS1wYWRkaW5nLWhvcml6b250YWwtbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHRpbGUtcGFkZGluZy1ob3Jpem9udGFsLW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAkdGlsZS1wYWRkaW5nLXZlcnRpY2FsLW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkdGlsZS1wYWRkaW5nLXZlcnRpY2FsLW07XG4gICAgfVxuXG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstdGlsZSA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8qIFNpemUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFhTbWFsbFxuICovXG5cbi51ay10aWxlLXhzbWFsbCB7XG4gICAgcGFkZGluZy10b3A6ICR0aWxlLXhzbWFsbC1wYWRkaW5nLXZlcnRpY2FsO1xuICAgIHBhZGRpbmctYm90dG9tOiAkdGlsZS14c21hbGwtcGFkZGluZy12ZXJ0aWNhbDtcbn1cblxuLypcbiAqIFNtYWxsXG4gKi9cblxuLnVrLXRpbGUtc21hbGwge1xuICAgIHBhZGRpbmctdG9wOiAkdGlsZS1zbWFsbC1wYWRkaW5nLXZlcnRpY2FsO1xuICAgIHBhZGRpbmctYm90dG9tOiAkdGlsZS1zbWFsbC1wYWRkaW5nLXZlcnRpY2FsO1xufVxuXG4vKlxuICogTGFyZ2VcbiAqL1xuXG4udWstdGlsZS1sYXJnZSB7XG4gICAgcGFkZGluZy10b3A6ICR0aWxlLWxhcmdlLXBhZGRpbmctdmVydGljYWw7XG4gICAgcGFkZGluZy1ib3R0b206ICR0aWxlLWxhcmdlLXBhZGRpbmctdmVydGljYWw7XG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLXRpbGUtbGFyZ2Uge1xuICAgICAgICBwYWRkaW5nLXRvcDogJHRpbGUtbGFyZ2UtcGFkZGluZy12ZXJ0aWNhbC1tO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHRpbGUtbGFyZ2UtcGFkZGluZy12ZXJ0aWNhbC1tO1xuICAgIH1cblxufVxuXG5cbi8qXG4gKiBYTGFyZ2VcbiAqL1xuXG4udWstdGlsZS14bGFyZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAkdGlsZS14bGFyZ2UtcGFkZGluZy12ZXJ0aWNhbDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHRpbGUteGxhcmdlLXBhZGRpbmctdmVydGljYWw7XG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLXRpbGUteGxhcmdlIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICR0aWxlLXhsYXJnZS1wYWRkaW5nLXZlcnRpY2FsLW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkdGlsZS14bGFyZ2UtcGFkZGluZy12ZXJ0aWNhbC1tO1xuICAgIH1cblxufVxuXG5cbi8qIFN0eWxlIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBEZWZhdWx0XG4gKi9cblxuLnVrLXRpbGUtZGVmYXVsdCB7XG4gICAgYmFja2dyb3VuZDogJHRpbGUtZGVmYXVsdC1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10aWxlLWRlZmF1bHQpKSB7QGluY2x1ZGUgaG9vay10aWxlLWRlZmF1bHQoKTt9XG59XG5cbi8qXG4gKiBNdXRlZFxuICovXG5cbi51ay10aWxlLW11dGVkIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGlsZS1tdXRlZC1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10aWxlLW11dGVkKSkge0BpbmNsdWRlIGhvb2stdGlsZS1tdXRlZCgpO31cbn1cblxuLypcbiAqIFByaW1hcnlcbiAqL1xuXG4udWstdGlsZS1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAkdGlsZS1wcmltYXJ5LWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRpbGUtcHJpbWFyeSkpIHtAaW5jbHVkZSBob29rLXRpbGUtcHJpbWFyeSgpO31cbn1cblxuLy8gQ29sb3IgTW9kZVxuQGlmICggJHRpbGUtcHJpbWFyeS1jb2xvci1tb2RlID09IGxpZ2h0ICkgeyAudWstdGlsZS1wcmltYXJ5Om5vdCgudWstcHJlc2VydmUtY29sb3IpIHsgQGV4dGVuZCAudWstbGlnaHQgIW9wdGlvbmFsO30gfVxuQGlmICggJHRpbGUtcHJpbWFyeS1jb2xvci1tb2RlID09IGRhcmsgKSB7IC51ay10aWxlLXByaW1hcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgeyBAZXh0ZW5kIC51ay1kYXJrICFvcHRpb25hbDt9IH1cblxuLypcbiAqIFNlY29uZGFyeVxuICovXG5cbi51ay10aWxlLXNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogJHRpbGUtc2Vjb25kYXJ5LWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRpbGUtc2Vjb25kYXJ5KSkge0BpbmNsdWRlIGhvb2stdGlsZS1zZWNvbmRhcnkoKTt9XG59XG5cbi8vIENvbG9yIE1vZGVcbkBpZiAoICR0aWxlLXNlY29uZGFyeS1jb2xvci1tb2RlID09IGxpZ2h0ICkgeyAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgeyBAZXh0ZW5kIC51ay1saWdodCAhb3B0aW9uYWw7fSB9XG5AaWYgKCAkdGlsZS1zZWNvbmRhcnktY29sb3ItbW9kZSA9PSBkYXJrICkgeyAudWstdGlsZS1zZWNvbmRhcnk6bm90KC51ay1wcmVzZXJ2ZS1jb2xvcikgeyBAZXh0ZW5kIC51ay1kYXJrICFvcHRpb25hbDt9IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay10aWxlLW1pc2MpKSB7QGluY2x1ZGUgaG9vay10aWxlLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXRpbGUoKXt9XG4vLyBAbWl4aW4gaG9vay10aWxlLWRlZmF1bHQoKXt9XG4vLyBAbWl4aW4gaG9vay10aWxlLW11dGVkKCl7fVxuLy8gQG1peGluIGhvb2stdGlsZS1wcmltYXJ5KCl7fVxuLy8gQG1peGluIGhvb2stdGlsZS1zZWNvbmRhcnkoKXt9XG4vLyBAbWl4aW4gaG9vay10aWxlLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIENhcmRcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBib3hlZCBjb250ZW50IGNvbnRhaW5lcnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1jYXJkYFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLWNhcmQtYm9keWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWNhcmQtaGVhZGVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstY2FyZC1mb290ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jYXJkLW1lZGlhLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jYXJkLXRpdGxlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstY2FyZC1iYWRnZWBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1jYXJkLWhvdmVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstY2FyZC1kZWZhdWx0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstY2FyZC1wcmltYXJ5YFxuLy8gICAgICAgICAgICAgICAgICBgdWstY2FyZC1zZWNvbmRhcnlgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jYXJkLXNtYWxsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstY2FyZC1sYXJnZWBcbi8vXG4vLyBVc2VzOiAgICAgICAgICAgIGB1ay1ncmlkLXN0YWNrYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRjYXJkLWJvZHktcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtYm9keS1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG5cbiRjYXJkLWJvZHktcGFkZGluZy1ob3Jpem9udGFsLWw6ICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWJvZHktcGFkZGluZy12ZXJ0aWNhbC1sOiAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcblxuJGNhcmQtaGVhZGVyLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICByb3VuZCgkZ2xvYmFsLWd1dHRlciAvIDIpICFkZWZhdWx0O1xuXG4kY2FyZC1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsLWw6ICAgICAgICAgICAgICAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbC1sOiAgICAgICAgICAgICAgICByb3VuZCgkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgLyAyKSAhZGVmYXVsdDtcblxuJGNhcmQtZm9vdGVyLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1mb290ZXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAoJGdsb2JhbC1ndXR0ZXIgLyAyKSAhZGVmYXVsdDtcblxuJGNhcmQtZm9vdGVyLXBhZGRpbmctaG9yaXpvbnRhbC1sOiAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtZm9vdGVyLXBhZGRpbmctdmVydGljYWwtbDogICAgICAgICAgICAgICAgcm91bmQoJGdsb2JhbC1tZWRpdW0tZ3V0dGVyIC8gMikgIWRlZmF1bHQ7XG5cbiRjYXJkLXRpdGxlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbGFyZ2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGNhcmQtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgMS40ICFkZWZhdWx0O1xuXG4kY2FyZC1iYWRnZS10b3A6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWJhZGdlLXJpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjYXJkLWJhZGdlLXRvcCAhZGVmYXVsdDtcblxuJGNhcmQtaG92ZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4kY2FyZC1kZWZhdWx0LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kY2FyZC1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGNhcmQtZGVmYXVsdC10aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRjYXJkLWRlZmF1bHQtaG92ZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgIGRhcmtlbigkY2FyZC1kZWZhdWx0LWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcblxuJGNhcmQtcHJpbWFyeS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kY2FyZC1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1wcmltYXJ5LXRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAkY2FyZC1wcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGNhcmQtcHJpbWFyeS1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgZGFya2VuKCRjYXJkLXByaW1hcnktYmFja2dyb3VuZCwgNSUpICFkZWZhdWx0O1xuJGNhcmQtcHJpbWFyeS1jb2xvci1tb2RlOiAgICAgICAgICAgICAgICAgICAgICAgbGlnaHQgIWRlZmF1bHQ7XG5cbiRjYXJkLXNlY29uZGFyeS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc2Vjb25kYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kY2FyZC1zZWNvbmRhcnktY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1zZWNvbmRhcnktdGl0bGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAkY2FyZC1zZWNvbmRhcnktY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1zZWNvbmRhcnktaG92ZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICBkYXJrZW4oJGNhcmQtc2Vjb25kYXJ5LWJhY2tncm91bmQsIDUlKSAhZGVmYXVsdDtcbiRjYXJkLXNlY29uZGFyeS1jb2xvci1tb2RlOiAgICAgICAgICAgICAgICAgICAgIGxpZ2h0ICFkZWZhdWx0O1xuXG4kY2FyZC1zbWFsbC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRjYXJkLXNtYWxsLWJvZHktcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJGNhcmQtc21hbGwtaGVhZGVyLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kY2FyZC1zbWFsbC1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICByb3VuZCgkZ2xvYmFsLW1hcmdpbiAvIDEuNSkgIWRlZmF1bHQ7XG4kY2FyZC1zbWFsbC1mb290ZXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRjYXJkLXNtYWxsLWZvb3Rlci1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgIHJvdW5kKCRnbG9iYWwtbWFyZ2luIC8gMS41KSAhZGVmYXVsdDtcblxuJGNhcmQtbGFyZ2UtYm9keS1wYWRkaW5nLWhvcml6b250YWwtbDogICAgICAgICAgJGdsb2JhbC1sYXJnZS1ndXR0ZXIgIWRlZmF1bHQ7XG4kY2FyZC1sYXJnZS1ib2R5LXBhZGRpbmctdmVydGljYWwtbDogICAgICAgICAgICAkZ2xvYmFsLWxhcmdlLWd1dHRlciAhZGVmYXVsdDtcbiRjYXJkLWxhcmdlLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWwtbDogICAgICAgICRnbG9iYWwtbGFyZ2UtZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtbGFyZ2UtaGVhZGVyLXBhZGRpbmctdmVydGljYWwtbDogICAgICAgICAgcm91bmQoJGdsb2JhbC1sYXJnZS1ndXR0ZXIgLyAyKSAhZGVmYXVsdDtcbiRjYXJkLWxhcmdlLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWwtbDogICAgICAgICRnbG9iYWwtbGFyZ2UtZ3V0dGVyICFkZWZhdWx0O1xuJGNhcmQtbGFyZ2UtZm9vdGVyLXBhZGRpbmctdmVydGljYWwtbDogICAgICAgICAgcm91bmQoJGdsb2JhbC1sYXJnZS1ndXR0ZXIgLyAyKSAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQ2FyZFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jYXJkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZCkpIHtAaW5jbHVkZSBob29rLWNhcmQoKTt9XG59XG5cblxuLyogU2VjdGlvbnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstY2FyZC1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbG93LXJvb3Q7XG4gICAgcGFkZGluZzogJGNhcmQtYm9keS1wYWRkaW5nLXZlcnRpY2FsICRjYXJkLWJvZHktcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLWJvZHkpKSB7QGluY2x1ZGUgaG9vay1jYXJkLWJvZHkoKTt9XG59XG5cbi51ay1jYXJkLWhlYWRlciB7XG4gICAgZGlzcGxheTogZmxvdy1yb290O1xuICAgIHBhZGRpbmc6ICRjYXJkLWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsICRjYXJkLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtaGVhZGVyKSkge0BpbmNsdWRlIGhvb2stY2FyZC1oZWFkZXIoKTt9XG59XG5cbi51ay1jYXJkLWZvb3RlciB7XG4gICAgZGlzcGxheTogZmxvdy1yb290O1xuICAgIHBhZGRpbmc6ICRjYXJkLWZvb3Rlci1wYWRkaW5nLXZlcnRpY2FsICRjYXJkLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtZm9vdGVyKSkge0BpbmNsdWRlIGhvb2stY2FyZC1mb290ZXIoKTt9XG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAudWstY2FyZC1ib2R5IHsgcGFkZGluZzogJGNhcmQtYm9keS1wYWRkaW5nLXZlcnRpY2FsLWwgJGNhcmQtYm9keS1wYWRkaW5nLWhvcml6b250YWwtbDsgfVxuXG4gICAgLnVrLWNhcmQtaGVhZGVyIHsgcGFkZGluZzogJGNhcmQtaGVhZGVyLXBhZGRpbmctdmVydGljYWwtbCAkY2FyZC1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsLWw7IH1cblxuICAgIC51ay1jYXJkLWZvb3RlciB7IHBhZGRpbmc6ICRjYXJkLWZvb3Rlci1wYWRkaW5nLXZlcnRpY2FsLWwgJGNhcmQtZm9vdGVyLXBhZGRpbmctaG9yaXpvbnRhbC1sOyB9XG5cbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG5cbi51ay1jYXJkLWJvZHkgPiA6bGFzdC1jaGlsZCxcbi51ay1jYXJkLWhlYWRlciA+IDpsYXN0LWNoaWxkLFxuLnVrLWNhcmQtZm9vdGVyID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cblxuLyogTWVkaWFcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUmVzZXJ2ZWQgYWxpZ25tZW50IG1vZGlmaWVyIHRvIHN0eWxlIHRoZSBtZWRpYSBlbGVtZW50LCBlLmcuIHdpdGggYGJvcmRlci1yYWRpdXNgXG4gKiBJbXBsZW1lbnRlZCBieSB0aGUgdGhlbWVcbiAqL1xuXG5bY2xhc3MqPSd1ay1jYXJkLW1lZGlhJ10ge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLW1lZGlhKSkge0BpbmNsdWRlIGhvb2stY2FyZC1tZWRpYSgpO31cbn1cblxuLnVrLWNhcmQtbWVkaWEtdG9wLFxuLnVrLWdyaWQtc3RhY2sgPiAudWstY2FyZC1tZWRpYS1sZWZ0LFxuLnVrLWdyaWQtc3RhY2sgPiAudWstY2FyZC1tZWRpYS1yaWdodCAge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLW1lZGlhLXRvcCkpIHtAaW5jbHVkZSBob29rLWNhcmQtbWVkaWEtdG9wKCk7fVxufVxuXG4udWstY2FyZC1tZWRpYS1ib3R0b20ge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLW1lZGlhLWJvdHRvbSkpIHtAaW5jbHVkZSBob29rLWNhcmQtbWVkaWEtYm90dG9tKCk7fVxufVxuXG46bm90KC51ay1ncmlkLXN0YWNrKSA+IC51ay1jYXJkLW1lZGlhLWxlZnQge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLW1lZGlhLWxlZnQpKSB7QGluY2x1ZGUgaG9vay1jYXJkLW1lZGlhLWxlZnQoKTt9XG59XG5cbjpub3QoLnVrLWdyaWQtc3RhY2spID4gLnVrLWNhcmQtbWVkaWEtcmlnaHQge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLW1lZGlhLXJpZ2h0KSkge0BpbmNsdWRlIGhvb2stY2FyZC1tZWRpYS1yaWdodCgpO31cbn1cblxuXG4vKiBUaXRsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jYXJkLXRpdGxlIHtcbiAgICBmb250LXNpemU6ICRjYXJkLXRpdGxlLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGNhcmQtdGl0bGUtbGluZS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtdGl0bGUpKSB7QGluY2x1ZGUgaG9vay1jYXJkLXRpdGxlKCk7fVxufVxuXG5cbi8qIEJhZGdlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWNhcmQtYmFkZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICRjYXJkLWJhZGdlLXRvcDtcbiAgICByaWdodDogJGNhcmQtYmFkZ2UtcmlnaHQ7XG4gICAgei1pbmRleDogMTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1iYWRnZSkpIHtAaW5jbHVkZSBob29rLWNhcmQtYmFkZ2UoKTt9XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gYWRqYWNlbnQgZWxlbWVudFxuICovXG5cbi51ay1jYXJkLWJhZGdlOmZpcnN0LWNoaWxkICsgKiB7IG1hcmdpbi10b3A6IDA7IH1cblxuXG4vKiBIb3ZlciBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jYXJkLWhvdmVyOm5vdCgudWstY2FyZC1kZWZhdWx0KTpub3QoLnVrLWNhcmQtcHJpbWFyeSk6bm90KC51ay1jYXJkLXNlY29uZGFyeSk6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICRjYXJkLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1jYXJkLWhvdmVyKCk7fVxufVxuXG5cbi8qIFN0eWxlIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBEZWZhdWx0XG4gKiBOb3RlOiBIZWFkZXIgYW5kIEZvb3RlciBhcmUgb25seSBpbXBsZW1lbnRlZCBmb3IgdGhlIGRlZmF1bHQgc3R5bGVcbiAqL1xuXG4udWstY2FyZC1kZWZhdWx0IHtcbiAgICBiYWNrZ3JvdW5kOiAkY2FyZC1kZWZhdWx0LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjYXJkLWRlZmF1bHQtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtZGVmYXVsdCkpIHtAaW5jbHVkZSBob29rLWNhcmQtZGVmYXVsdCgpO31cbn1cblxuLnVrLWNhcmQtZGVmYXVsdCAudWstY2FyZC10aXRsZSB7XG4gICAgY29sb3I6ICRjYXJkLWRlZmF1bHQtdGl0bGUtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtZGVmYXVsdC10aXRsZSkpIHtAaW5jbHVkZSBob29rLWNhcmQtZGVmYXVsdC10aXRsZSgpO31cbn1cblxuLnVrLWNhcmQtZGVmYXVsdC51ay1jYXJkLWhvdmVyOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1kZWZhdWx0LWhvdmVyLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtZGVmYXVsdC1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWNhcmQtZGVmYXVsdC1ob3ZlcigpO31cbn1cblxuLnVrLWNhcmQtZGVmYXVsdCAudWstY2FyZC1oZWFkZXIge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLWRlZmF1bHQtaGVhZGVyKSkge0BpbmNsdWRlIGhvb2stY2FyZC1kZWZhdWx0LWhlYWRlcigpO31cbn1cblxuLnVrLWNhcmQtZGVmYXVsdCAudWstY2FyZC1mb290ZXIge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLWRlZmF1bHQtZm9vdGVyKSkge0BpbmNsdWRlIGhvb2stY2FyZC1kZWZhdWx0LWZvb3RlcigpO31cbn1cblxuLypcbiAqIFByaW1hcnlcbiAqL1xuXG4udWstY2FyZC1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAkY2FyZC1wcmltYXJ5LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjYXJkLXByaW1hcnktY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtcHJpbWFyeSkpIHtAaW5jbHVkZSBob29rLWNhcmQtcHJpbWFyeSgpO31cbn1cblxuLnVrLWNhcmQtcHJpbWFyeSAudWstY2FyZC10aXRsZSB7XG4gICAgY29sb3I6ICRjYXJkLXByaW1hcnktdGl0bGUtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtcHJpbWFyeS10aXRsZSkpIHtAaW5jbHVkZSBob29rLWNhcmQtcHJpbWFyeS10aXRsZSgpO31cbn1cblxuLnVrLWNhcmQtcHJpbWFyeS51ay1jYXJkLWhvdmVyOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1wcmltYXJ5LWhvdmVyLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtcHJpbWFyeS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWNhcmQtcHJpbWFyeS1ob3ZlcigpO31cbn1cblxuLy8gQ29sb3IgTW9kZVxuQGlmICggJGNhcmQtcHJpbWFyeS1jb2xvci1tb2RlID09IGxpZ2h0ICkgeyAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSB7IEBleHRlbmQgLnVrLWxpZ2h0ICFvcHRpb25hbDt9IH1cbkBpZiAoICRjYXJkLXByaW1hcnktY29sb3ItbW9kZSA9PSBsaWdodCApIHsgLnVrLWNhcmQtcHJpbWFyeSA+IDpub3QoW2NsYXNzKj0ndWstY2FyZC1tZWRpYSddKSB7IEBleHRlbmQgLnVrLWxpZ2h0ICFvcHRpb25hbDt9IH1cbkBpZiAoICRjYXJkLXByaW1hcnktY29sb3ItbW9kZSA9PSBkYXJrICkgeyAudWstY2FyZC1wcmltYXJ5LnVrLWNhcmQtYm9keSB7IEBleHRlbmQgLnVrLWRhcmsgIW9wdGlvbmFsO30gfVxuQGlmICggJGNhcmQtcHJpbWFyeS1jb2xvci1tb2RlID09IGRhcmsgKSB7IC51ay1jYXJkLXByaW1hcnkgPiA6bm90KFtjbGFzcyo9J3VrLWNhcmQtbWVkaWEnXSkgeyBAZXh0ZW5kIC51ay1kYXJrICFvcHRpb25hbDt9IH1cblxuLypcbiAqIFNlY29uZGFyeVxuICovXG5cbi51ay1jYXJkLXNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogJGNhcmQtc2Vjb25kYXJ5LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjYXJkLXNlY29uZGFyeS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1zZWNvbmRhcnkpKSB7QGluY2x1ZGUgaG9vay1jYXJkLXNlY29uZGFyeSgpO31cbn1cblxuLnVrLWNhcmQtc2Vjb25kYXJ5IC51ay1jYXJkLXRpdGxlIHtcbiAgICBjb2xvcjogJGNhcmQtc2Vjb25kYXJ5LXRpdGxlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jYXJkLXNlY29uZGFyeS10aXRsZSkpIHtAaW5jbHVkZSBob29rLWNhcmQtc2Vjb25kYXJ5LXRpdGxlKCk7fVxufVxuXG4udWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ob3Zlcjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtc2Vjb25kYXJ5LWhvdmVyLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNhcmQtc2Vjb25kYXJ5LWhvdmVyKSkge0BpbmNsdWRlIGhvb2stY2FyZC1zZWNvbmRhcnktaG92ZXIoKTt9XG59XG5cbi8vIENvbG9yIE1vZGVcbkBpZiAoICRjYXJkLXNlY29uZGFyeS1jb2xvci1tb2RlID09IGxpZ2h0ICkgeyAudWstY2FyZC1zZWNvbmRhcnkudWstY2FyZC1ib2R5IHsgQGV4dGVuZCAudWstbGlnaHQgIW9wdGlvbmFsO30gfVxuQGlmICggJGNhcmQtc2Vjb25kYXJ5LWNvbG9yLW1vZGUgPT0gbGlnaHQgKSB7IC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj0ndWstY2FyZC1tZWRpYSddKSB7IEBleHRlbmQgLnVrLWxpZ2h0ICFvcHRpb25hbDt9IH1cbkBpZiAoICRjYXJkLXNlY29uZGFyeS1jb2xvci1tb2RlID09IGRhcmsgKSB7IC51ay1jYXJkLXNlY29uZGFyeS51ay1jYXJkLWJvZHkgeyBAZXh0ZW5kIC51ay1kYXJrICFvcHRpb25hbDt9IH1cbkBpZiAoICRjYXJkLXNlY29uZGFyeS1jb2xvci1tb2RlID09IGRhcmsgKSB7IC51ay1jYXJkLXNlY29uZGFyeSA+IDpub3QoW2NsYXNzKj0ndWstY2FyZC1tZWRpYSddKSB7IEBleHRlbmQgLnVrLWRhcmsgIW9wdGlvbmFsO30gfVxuXG5cbi8qIFNpemUgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogU21hbGxcbiAqL1xuXG4udWstY2FyZC1zbWFsbC51ay1jYXJkLWJvZHksXG4udWstY2FyZC1zbWFsbCAudWstY2FyZC1ib2R5IHsgcGFkZGluZzogJGNhcmQtc21hbGwtYm9keS1wYWRkaW5nLXZlcnRpY2FsICRjYXJkLXNtYWxsLWJvZHktcGFkZGluZy1ob3Jpem9udGFsOyB9XG5cbi51ay1jYXJkLXNtYWxsIC51ay1jYXJkLWhlYWRlciB7IHBhZGRpbmc6ICRjYXJkLXNtYWxsLWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsICRjYXJkLXNtYWxsLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWw7IH1cbi51ay1jYXJkLXNtYWxsIC51ay1jYXJkLWZvb3RlciB7IHBhZGRpbmc6ICRjYXJkLXNtYWxsLWZvb3Rlci1wYWRkaW5nLXZlcnRpY2FsICRjYXJkLXNtYWxsLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWw7IH1cblxuLypcbiAqIExhcmdlXG4gKi9cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1jYXJkLWxhcmdlLnVrLWNhcmQtYm9keSxcbiAgICAudWstY2FyZC1sYXJnZSAudWstY2FyZC1ib2R5IHsgcGFkZGluZzogJGNhcmQtbGFyZ2UtYm9keS1wYWRkaW5nLXZlcnRpY2FsLWwgJGNhcmQtbGFyZ2UtYm9keS1wYWRkaW5nLWhvcml6b250YWwtbDsgfVxuXG4gICAgLnVrLWNhcmQtbGFyZ2UgLnVrLWNhcmQtaGVhZGVyIHsgcGFkZGluZzogJGNhcmQtbGFyZ2UtaGVhZGVyLXBhZGRpbmctdmVydGljYWwtbCAkY2FyZC1sYXJnZS1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsLWw7IH1cbiAgICAudWstY2FyZC1sYXJnZSAudWstY2FyZC1mb290ZXIgeyBwYWRkaW5nOiAkY2FyZC1sYXJnZS1mb290ZXItcGFkZGluZy12ZXJ0aWNhbC1sICRjYXJkLWxhcmdlLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWwtbDsgfVxuXG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stY2FyZC1taXNjKSkge0BpbmNsdWRlIGhvb2stY2FyZC1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1jYXJkKCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1ib2R5KCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1oZWFkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1jYXJkLWZvb3Rlcigpe31cbi8vIEBtaXhpbiBob29rLWNhcmQtbWVkaWEoKXt9XG4vLyBAbWl4aW4gaG9vay1jYXJkLW1lZGlhLXRvcCgpe31cbi8vIEBtaXhpbiBob29rLWNhcmQtbWVkaWEtYm90dG9tKCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1tZWRpYS1sZWZ0KCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1tZWRpYS1yaWdodCgpe31cbi8vIEBtaXhpbiBob29rLWNhcmQtdGl0bGUoKXt9XG4vLyBAbWl4aW4gaG9vay1jYXJkLWJhZGdlKCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWNhcmQtZGVmYXVsdCgpe31cbi8vIEBtaXhpbiBob29rLWNhcmQtZGVmYXVsdC10aXRsZSgpe31cbi8vIEBtaXhpbiBob29rLWNhcmQtZGVmYXVsdC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWNhcmQtZGVmYXVsdC1oZWFkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1jYXJkLWRlZmF1bHQtZm9vdGVyKCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1wcmltYXJ5KCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1wcmltYXJ5LXRpdGxlKCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1wcmltYXJ5LWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1zZWNvbmRhcnkoKXt9XG4vLyBAbWl4aW4gaG9vay1jYXJkLXNlY29uZGFyeS10aXRsZSgpe31cbi8vIEBtaXhpbiBob29rLWNhcmQtc2Vjb25kYXJ5LWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stY2FyZC1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBDbG9zZVxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGEgY2xvc2UgYnV0dG9uXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstY2xvc2VgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kY2xvc2UtaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQ2xvc2VcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRvcHRzIGB1ay1pY29uYFxuICovXG5cbi51ay1jbG9zZSB7XG4gICAgY29sb3I6ICRjbG9zZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY2xvc2UpKSB7QGluY2x1ZGUgaG9vay1jbG9zZSgpO31cbn1cblxuLyogSG92ZXIgKyBGb2N1cyAqL1xuLnVrLWNsb3NlOmhvdmVyLFxuLnVrLWNsb3NlOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlLWhvdmVyLWNvbG9yO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNsb3NlLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stY2xvc2UtaG92ZXIoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stY2xvc2UtbWlzYykpIHtAaW5jbHVkZSBob29rLWNsb3NlLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWNsb3NlKCl7fVxuLy8gQG1peGluIGhvb2stY2xvc2UtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1jbG9zZS1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kaW52ZXJzZS1jbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtY2xvc2UtaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtY2xvc2UoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWNsb3NlLWhvdmVyKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBTcGlubmVyXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgYSBsb2FkaW5nIHNwaW5uZXJcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1zcGlubmVyYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRzcGlubmVyLXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJHNwaW5uZXItc3Ryb2tlLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgIDEgIWRlZmF1bHQ7XG4kc3Bpbm5lci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvb3IoKCRzcGlubmVyLXNpemUgLSAkc3Bpbm5lci1zdHJva2Utd2lkdGgpIC8gMikgIWRlZmF1bHQ7IC8vIE1pbnVzIHN0cm9rZSB3aWR0aCB0byBwcmV2ZW50IG92ZXJmbG93IGNsaXBwaW5nXG4kc3Bpbm5lci1jaXJjdW1mZXJlbmNlOiAgICAgICAgICAgICAgICAgICAgICAgICAgcm91bmQoMiAqIDMuMTQxICogJHNwaW5uZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRzcGlubmVyLWR1cmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjRzICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBTcGlubmVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkb3B0cyBgdWstaWNvbmBcbiAqL1xuXG4udWstc3Bpbm5lciB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNwaW5uZXIpKSB7QGluY2x1ZGUgaG9vay1zcGlubmVyKCk7fVxufVxuXG5cbi8qIFNWR1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1zcGlubmVyID4gKiB7IGFuaW1hdGlvbjogdWstc3Bpbm5lci1yb3RhdGUgJHNwaW5uZXItZHVyYXRpb24gbGluZWFyIGluZmluaXRlOyB9XG5cbkBrZXlmcmFtZXMgdWstc3Bpbm5lci1yb3RhdGUge1xuICAgIDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTsgfVxufVxuXG4vKlxuICogQ2lyY2xlXG4gKi9cblxuLnVrLXNwaW5uZXIgPiAqID4gKiB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogJHNwaW5uZXItY2lyY3VtZmVyZW5jZTtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgYW5pbWF0aW9uOiB1ay1zcGlubmVyLWRhc2ggJHNwaW5uZXItZHVyYXRpb24gZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gICAgc3Ryb2tlLXdpZHRoOiAkc3Bpbm5lci1zdHJva2Utd2lkdGg7XG4gICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xufVxuXG5Aa2V5ZnJhbWVzIHVrLXNwaW5uZXItZGFzaCB7XG4gICAgMCUgeyBzdHJva2UtZGFzaG9mZnNldDogJHNwaW5uZXItY2lyY3VtZmVyZW5jZTsgfVxuICAgIDUwJSB7XG4gICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAkc3Bpbm5lci1jaXJjdW1mZXJlbmNlLzQ7XG4gICAgICAgIHRyYW5zZm9ybTpyb3RhdGUoMTM1ZGVnKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAkc3Bpbm5lci1jaXJjdW1mZXJlbmNlO1xuICAgICAgICB0cmFuc2Zvcm06cm90YXRlKDQ1MGRlZyk7XG4gICAgfVxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLXNwaW5uZXItbWlzYykpIHtAaW5jbHVkZSBob29rLXNwaW5uZXItbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stc3Bpbm5lcigpe31cbi8vIEBtaXhpbiBob29rLXNwaW5uZXItbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgVG90b3Bcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBhbiBpY29uIHRvIHNjcm9sbCBiYWNrIHRvIHRvcFxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLXRvdG9wYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiR0b3RvcC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA1cHggIWRlZmF1bHQ7XG4kdG90b3AtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcblxuJHRvdG9wLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbiR0b3RvcC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBUb3RvcFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGRvcHRzIGB1ay1pY29uYFxuICovXG5cbi51ay10b3RvcCB7XG4gICAgcGFkZGluZzogJHRvdG9wLXBhZGRpbmc7XG4gICAgY29sb3I6ICR0b3RvcC1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdG90b3ApKSB7QGluY2x1ZGUgaG9vay10b3RvcCgpO31cbn1cblxuLyogSG92ZXIgKyBGb2N1cyAqL1xuLnVrLXRvdG9wOmhvdmVyLFxuLnVrLXRvdG9wOmZvY3VzIHtcbiAgICBjb2xvcjogJHRvdG9wLWhvdmVyLWNvbG9yO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRvdG9wLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stdG90b3AtaG92ZXIoKTt9XG59XG5cbi8qIE9uQ2xpY2sgKi9cbi51ay10b3RvcDphY3RpdmUge1xuICAgIGNvbG9yOiAkdG90b3AtYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10b3RvcC1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay10b3RvcC1hY3RpdmUoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stdG90b3AtbWlzYykpIHtAaW5jbHVkZSBob29rLXRvdG9wLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXRvdG9wKCl7fVxuLy8gQG1peGluIGhvb2stdG90b3AtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay10b3RvcC1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay10b3RvcC1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kaW52ZXJzZS10b3RvcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS10b3RvcC1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS10b3RvcC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRvdG9wKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS10b3RvcC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtdG90b3AtYWN0aXZlKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBNYXJrZXJcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBhIG1hcmtlciBpY29uXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstbWFya2VyYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRtYXJrZXItcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNXB4ICFkZWZhdWx0O1xuJG1hcmtlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNlY29uZGFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJG1hcmtlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG5cbiRtYXJrZXItaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBNYXJrZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkb3B0cyBgdWstaWNvbmBcbiAqL1xuXG4udWstbWFya2VyIHtcbiAgICBwYWRkaW5nOiAkbWFya2VyLXBhZGRpbmc7XG4gICAgYmFja2dyb3VuZDogJG1hcmtlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbWFya2VyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1tYXJrZXIpKSB7QGluY2x1ZGUgaG9vay1tYXJrZXIoKTt9XG59XG5cbi8qIEhvdmVyICsgRm9jdXMgKi9cbi51ay1tYXJrZXI6aG92ZXIsXG4udWstbWFya2VyOmZvY3VzIHtcbiAgICBjb2xvcjogJG1hcmtlci1ob3Zlci1jb2xvcjtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1tYXJrZXItaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1tYXJrZXItaG92ZXIoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stbWFya2VyLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1tYXJrZXItbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stbWFya2VyKCl7fVxuLy8gQG1peGluIGhvb2stbWFya2VyLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stbWFya2VyLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRpbnZlcnNlLW1hcmtlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1tYXJrZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW1hcmtlci1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1tYXJrZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW1hcmtlci1ob3Zlcigpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgQWxlcnRcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBhbGVydCBtZXNzYWdlc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWFsZXJ0YFxuLy9cbi8vIEFkb3B0ZWQ6ICAgICAgICAgYHVrLWFsZXJ0LWNsb3NlYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLWFsZXJ0LXByaW1hcnlgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbGVydC1zdWNjZXNzYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYWxlcnQtd2FybmluZ2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFsZXJ0LWRhbmdlcmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kYWxlcnQtbWFyZ2luLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zbWFsbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy1yaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGFsZXJ0LXBhZGRpbmcgKyAxNHB4ICFkZWZhdWx0O1xuJGFsZXJ0LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRhbGVydC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kYWxlcnQtY2xvc2UtdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGFsZXJ0LXBhZGRpbmcgKyA1cHggIWRlZmF1bHQ7XG4kYWxlcnQtY2xvc2UtcmlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGFsZXJ0LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbiRhbGVydC1wcmltYXJ5LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICBsaWdodGVuKG1peCh3aGl0ZSwgJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQsIDQwJSksIDIwJSkgIWRlZmF1bHQ7XG4kYWxlcnQtcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiRhbGVydC1zdWNjZXNzLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICBsaWdodGVuKG1peCh3aGl0ZSwgJGdsb2JhbC1zdWNjZXNzLWJhY2tncm91bmQsIDQwJSksIDI1JSkgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zdWNjZXNzLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiRhbGVydC13YXJuaW5nLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICBsaWdodGVuKG1peCh3aGl0ZSwgJGdsb2JhbC13YXJuaW5nLWJhY2tncm91bmQsIDQ1JSksIDE1JSkgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC13YXJuaW5nLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiRhbGVydC1kYW5nZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICBsaWdodGVuKG1peCh3aGl0ZSwgJGdsb2JhbC1kYW5nZXItYmFja2dyb3VuZCwgNDAlKSwgMjAlKSAhZGVmYXVsdDtcbiRhbGVydC1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWRhbmdlci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBBbGVydFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1hbGVydCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206ICRhbGVydC1tYXJnaW4tdmVydGljYWw7XG4gICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcgJGFsZXJ0LXBhZGRpbmctcmlnaHQgJGFsZXJ0LXBhZGRpbmcgJGFsZXJ0LXBhZGRpbmc7XG4gICAgYmFja2dyb3VuZDogJGFsZXJ0LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRhbGVydC1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYWxlcnQpKSB7QGluY2x1ZGUgaG9vay1hbGVydCgpO31cbn1cblxuLyogQWRkIG1hcmdpbiBpZiBhZGphY2VudCBlbGVtZW50ICovXG4qICsgLnVrLWFsZXJ0IHsgbWFyZ2luLXRvcDogJGFsZXJ0LW1hcmdpbi12ZXJ0aWNhbDsgfVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cblxuLnVrLWFsZXJ0ID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cblxuLyogQ2xvc2VcbiAqIEFkb3B0cyBgdWstY2xvc2VgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWFsZXJ0LWNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAkYWxlcnQtY2xvc2UtdG9wO1xuICAgIHJpZ2h0OiAkYWxlcnQtY2xvc2UtcmlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWFsZXJ0LWNsb3NlKSkge0BpbmNsdWRlIGhvb2stYWxlcnQtY2xvc2UoKTt9XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gYWRqYWNlbnQgZWxlbWVudFxuICovXG5cbi51ay1hbGVydC1jbG9zZTpmaXJzdC1jaGlsZCArICogeyBtYXJnaW4tdG9wOiAwOyB9XG5cbi8qXG4gKiBIb3ZlciArIEZvY3VzXG4gKi9cblxuLnVrLWFsZXJ0LWNsb3NlOmhvdmVyLFxuLnVrLWFsZXJ0LWNsb3NlOmZvY3VzIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYWxlcnQtY2xvc2UtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1hbGVydC1jbG9zZS1ob3ZlcigpO31cbn1cblxuXG4vKiBTdHlsZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUHJpbWFyeVxuICovXG5cbi51ay1hbGVydC1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAkYWxlcnQtcHJpbWFyeS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYWxlcnQtcHJpbWFyeS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYWxlcnQtcHJpbWFyeSkpIHtAaW5jbHVkZSBob29rLWFsZXJ0LXByaW1hcnkoKTt9XG59XG5cbi8qXG4gKiBTdWNjZXNzXG4gKi9cblxuLnVrLWFsZXJ0LXN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQ6ICRhbGVydC1zdWNjZXNzLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRhbGVydC1zdWNjZXNzLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1hbGVydC1zdWNjZXNzKSkge0BpbmNsdWRlIGhvb2stYWxlcnQtc3VjY2VzcygpO31cbn1cblxuLypcbiAqIFdhcm5pbmdcbiAqL1xuXG4udWstYWxlcnQtd2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogJGFsZXJ0LXdhcm5pbmctYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGFsZXJ0LXdhcm5pbmctY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWFsZXJ0LXdhcm5pbmcpKSB7QGluY2x1ZGUgaG9vay1hbGVydC13YXJuaW5nKCk7fVxufVxuXG4vKlxuICogRGFuZ2VyXG4gKi9cblxuLnVrLWFsZXJ0LWRhbmdlciB7XG4gICAgYmFja2dyb3VuZDogJGFsZXJ0LWRhbmdlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYWxlcnQtZGFuZ2VyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1hbGVydC1kYW5nZXIpKSB7QGluY2x1ZGUgaG9vay1hbGVydC1kYW5nZXIoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stYWxlcnQtbWlzYykpIHtAaW5jbHVkZSBob29rLWFsZXJ0LW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWFsZXJ0KCl7fVxuLy8gQG1peGluIGhvb2stYWxlcnQtY2xvc2UoKXt9XG4vLyBAbWl4aW4gaG9vay1hbGVydC1jbG9zZS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWFsZXJ0LXByaW1hcnkoKXt9XG4vLyBAbWl4aW4gaG9vay1hbGVydC1zdWNjZXNzKCl7fVxuLy8gQG1peGluIGhvb2stYWxlcnQtd2FybmluZygpe31cbi8vIEBtaXhpbiBob29rLWFsZXJ0LWRhbmdlcigpe31cbi8vIEBtaXhpbiBob29rLWFsZXJ0LW1pc2MoKXt9IiwiLy8gTmFtZTogICAgICAgICAgICBQbGFjZWhvbGRlclxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIHBsYWNlaG9sZGVyIGJveGVzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstcGxhY2Vob2xkZXJgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHBsYWNlaG9sZGVyLW1hcmdpbi12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJHBsYWNlaG9sZGVyLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJHBsYWNlaG9sZGVyLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJHBsYWNlaG9sZGVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogUGxhY2Vob2xkZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstcGxhY2Vob2xkZXIge1xuICAgIG1hcmdpbi1ib3R0b206ICRwbGFjZWhvbGRlci1tYXJnaW4tdmVydGljYWw7XG4gICAgcGFkZGluZzogJHBsYWNlaG9sZGVyLXBhZGRpbmctdmVydGljYWwgJHBsYWNlaG9sZGVyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBiYWNrZ3JvdW5kOiAkcGxhY2Vob2xkZXItYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stcGxhY2Vob2xkZXIpKSB7QGluY2x1ZGUgaG9vay1wbGFjZWhvbGRlcigpO31cbn1cblxuLyogQWRkIG1hcmdpbiBpZiBhZGphY2VudCBlbGVtZW50ICovXG4qICsgLnVrLXBsYWNlaG9sZGVyIHsgbWFyZ2luLXRvcDogJHBsYWNlaG9sZGVyLW1hcmdpbi12ZXJ0aWNhbDsgfVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cblxuLnVrLXBsYWNlaG9sZGVyID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stcGxhY2Vob2xkZXItbWlzYykpIHtAaW5jbHVkZSBob29rLXBsYWNlaG9sZGVyLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXBsYWNlaG9sZGVyKCl7fVxuLy8gQG1peGluIGhvb2stcGxhY2Vob2xkZXItbWlzYygpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIEJhZGdlXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgbm90aWZpY2F0aW9uIGJhZGdlc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWJhZGdlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRiYWRnZS1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMnB4ICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAgICAgNXB4ICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJGJhZGdlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJGJhZGdlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQmFkZ2VcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gU3R5bGVcbiAqIDIuIENlbnRlciBjaGlsZCB2ZXJ0aWNhbGx5IGFuZCBob3Jpem9udGFsbHlcbiAqL1xuXG4udWstYmFkZ2Uge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWluLXdpZHRoOiAkYmFkZ2Utc2l6ZTtcbiAgICBoZWlnaHQ6ICRiYWRnZS1zaXplO1xuICAgIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nLXZlcnRpY2FsICRiYWRnZS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgYm9yZGVyLXJhZGl1czogJGJhZGdlLWJvcmRlci1yYWRpdXM7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAvKiAxICovXG4gICAgYmFja2dyb3VuZDogJGJhZGdlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRiYWRnZS1jb2xvcjtcbiAgICBmb250LXNpemU6ICRiYWRnZS1mb250LXNpemU7XG4gICAgLyogMiAqL1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJhZGdlKSkge0BpbmNsdWRlIGhvb2stYmFkZ2UoKTt9XG59XG5cbi8qXG4gKiBSZXF1aXJlZCBmb3IgYGFgXG4gKi9cblxuLnVrLWJhZGdlOmhvdmVyLFxuLnVrLWJhZGdlOmZvY3VzIHtcbiAgICBjb2xvcjogJGJhZGdlLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1iYWRnZS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWJhZGdlLWhvdmVyKCk7fVxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWJhZGdlLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1iYWRnZS1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1iYWRnZSgpe31cbi8vIEBtaXhpbiBob29rLWJhZGdlLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stYmFkZ2UtbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGludmVyc2UtYmFkZ2UtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtYmFkZ2UtaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJhZGdlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYWRnZS1ob3Zlcigpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIExhYmVsXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBpbmRpY2F0ZSBpbXBvcnRhbnQgbm90ZXNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1sYWJlbGBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1sYWJlbC1zdWNjZXNzYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGFiZWwtd2FybmluZ2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxhYmVsLWRhbmdlcmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kbGFiZWwtcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRsYWJlbC1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLW1hcmdpbiAhZGVmYXVsdDtcbiRsYWJlbC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRsYWJlbC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGxhYmVsLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcblxuJGxhYmVsLXN1Y2Nlc3MtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc3VjY2Vzcy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGxhYmVsLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRsYWJlbC13YXJuaW5nLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXdhcm5pbmctYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRsYWJlbC13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kbGFiZWwtZGFuZ2VyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1kYW5nZXItYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRsYWJlbC1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IExhYmVsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogJGxhYmVsLXBhZGRpbmctdmVydGljYWwgJGxhYmVsLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBiYWNrZ3JvdW5kOiAkbGFiZWwtYmFja2dyb3VuZDtcbiAgICBsaW5lLWhlaWdodDogJGxhYmVsLWxpbmUtaGVpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJGxhYmVsLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGxhYmVsLWNvbG9yO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbGFiZWwpKSB7QGluY2x1ZGUgaG9vay1sYWJlbCgpO31cbn1cblxuXG4vKiBDb2xvciBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogU3VjY2Vzc1xuICovXG5cbi51ay1sYWJlbC1zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGFiZWwtc3VjY2Vzcy1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbGFiZWwtc3VjY2Vzcy1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbGFiZWwtc3VjY2VzcykpIHtAaW5jbHVkZSBob29rLWxhYmVsLXN1Y2Nlc3MoKTt9XG59XG5cbi8qXG4gKiBXYXJuaW5nXG4gKi9cblxuLnVrLWxhYmVsLXdhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsYWJlbC13YXJuaW5nLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRsYWJlbC13YXJuaW5nLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1sYWJlbC13YXJuaW5nKSkge0BpbmNsdWRlIGhvb2stbGFiZWwtd2FybmluZygpO31cbn1cblxuLypcbiAqIERhbmdlclxuICovXG5cbi51ay1sYWJlbC1kYW5nZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsYWJlbC1kYW5nZXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGxhYmVsLWRhbmdlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbGFiZWwtZGFuZ2VyKSkge0BpbmNsdWRlIGhvb2stbGFiZWwtZGFuZ2VyKCk7fVxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWxhYmVsLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1sYWJlbC1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1sYWJlbCgpe31cbi8vIEBtaXhpbiBob29rLWxhYmVsLXN1Y2Nlc3MoKXt9XG4vLyBAbWl4aW4gaG9vay1sYWJlbC13YXJuaW5nKCl7fVxuLy8gQG1peGluIGhvb2stbGFiZWwtZGFuZ2VyKCl7fVxuLy8gQG1peGluIGhvb2stbGFiZWwtbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGludmVyc2UtbGFiZWwtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1sYWJlbCgpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIE92ZXJsYXlcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBjb250ZW50IGFyZWFzIG92ZXJsYXlpbmcgYW4gaW1hZ2Vcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1vdmVybGF5YFxuLy9cbi8vIEFkb3B0ZWQ6ICAgICAgICAgYHVrLW92ZXJsYXktaWNvbmBcbi8vXG4vLyBNb2RpZmllcjogICAgICAgIGB1ay1vdmVybGF5LWRlZmF1bHRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vdmVybGF5LXByaW1hcnlgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJG92ZXJsYXktcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJG92ZXJsYXktcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuXG4kb3ZlcmxheS1kZWZhdWx0LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgcmdiYSgkZ2xvYmFsLWJhY2tncm91bmQsIDAuOCkgIWRlZmF1bHQ7XG5cbiRvdmVybGF5LXByaW1hcnktYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICByZ2JhKCRnbG9iYWwtc2Vjb25kYXJ5LWJhY2tncm91bmQsIDAuOCkgIWRlZmF1bHQ7XG4kb3ZlcmxheS1wcmltYXJ5LWNvbG9yLW1vZGU6ICAgICAgICAgICAgICAgICAgICAgbGlnaHQgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IE92ZXJsYXlcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstb3ZlcmxheSB7XG4gICAgcGFkZGluZzogJG92ZXJsYXktcGFkZGluZy12ZXJ0aWNhbCAkb3ZlcmxheS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW92ZXJsYXkpKSB7QGluY2x1ZGUgaG9vay1vdmVybGF5KCk7fVxufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cblxuLnVrLW92ZXJsYXkgPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuXG4vKiBJY29uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW92ZXJsYXktaWNvbiB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW92ZXJsYXktaWNvbikpIHtAaW5jbHVkZSBob29rLW92ZXJsYXktaWNvbigpO31cbn1cblxuXG4vKiBTdHlsZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogRGVmYXVsdFxuICovXG5cbi51ay1vdmVybGF5LWRlZmF1bHQge1xuICAgIGJhY2tncm91bmQ6ICRvdmVybGF5LWRlZmF1bHQtYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stb3ZlcmxheS1kZWZhdWx0KSkge0BpbmNsdWRlIGhvb2stb3ZlcmxheS1kZWZhdWx0KCk7fVxufVxuXG4vKlxuICogUHJpbWFyeVxuICovXG5cbi51ay1vdmVybGF5LXByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICRvdmVybGF5LXByaW1hcnktYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stb3ZlcmxheS1wcmltYXJ5KSkge0BpbmNsdWRlIGhvb2stb3ZlcmxheS1wcmltYXJ5KCk7fVxufVxuXG4vLyBDb2xvciBNb2RlXG5AaWYgKCAkb3ZlcmxheS1wcmltYXJ5LWNvbG9yLW1vZGUgPT0gbGlnaHQgKSB7IC51ay1vdmVybGF5LXByaW1hcnkgeyBAZXh0ZW5kIC51ay1saWdodCAhb3B0aW9uYWw7fSB9XG5AaWYgKCAkb3ZlcmxheS1wcmltYXJ5LWNvbG9yLW1vZGUgPT0gZGFyayApIHsgLnVrLW92ZXJsYXktcHJpbWFyeSB7IEBleHRlbmQgLnVrLWRhcmsgIW9wdGlvbmFsO30gfVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLW92ZXJsYXktbWlzYykpIHtAaW5jbHVkZSBob29rLW92ZXJsYXktbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stb3ZlcmxheSgpe31cbi8vIEBtaXhpbiBob29rLW92ZXJsYXktaWNvbigpe31cbi8vIEBtaXhpbiBob29rLW92ZXJsYXktZGVmYXVsdCgpe31cbi8vIEBtaXhpbiBob29rLW92ZXJsYXktcHJpbWFyeSgpe31cbi8vIEBtaXhpbiBob29rLW92ZXJsYXktbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgQXJ0aWNsZVxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGFydGljbGVzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstYXJ0aWNsZWBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1hcnRpY2xlLXRpdGxlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYXJ0aWNsZS1tZXRhYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRhcnRpY2xlLW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWxhcmdlLW1hcmdpbiAhZGVmYXVsdDtcblxuJGFydGljbGUtdGl0bGUtZm9udC1zaXplLW06ICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtMnhsYXJnZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kYXJ0aWNsZS10aXRsZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgJGFydGljbGUtdGl0bGUtZm9udC1zaXplLW0gKiAwLjg1ICFkZWZhdWx0O1xuJGFydGljbGUtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgIDEuMiAhZGVmYXVsdDtcblxuJGFydGljbGUtbWV0YS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGFydGljbGUtbWV0YS1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIDEuNCAhZGVmYXVsdDtcbiRhcnRpY2xlLW1ldGEtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBBcnRpY2xlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWFydGljbGUge1xuICAgIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYXJ0aWNsZSkpIHtAaW5jbHVkZSBob29rLWFydGljbGUoKTt9XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstYXJ0aWNsZSA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8qIEFkamFjZW50IHNpYmxpbmdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYXJ0aWNsZSArIC51ay1hcnRpY2xlIHtcbiAgICBtYXJnaW4tdG9wOiAkYXJ0aWNsZS1tYXJnaW4tdG9wO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1hcnRpY2xlLWFkamFjZW50KSkge0BpbmNsdWRlIGhvb2stYXJ0aWNsZS1hZGphY2VudCgpO31cbn1cblxuXG4vKiBUaXRsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1hcnRpY2xlLXRpdGxlIHtcbiAgICBmb250LXNpemU6ICRhcnRpY2xlLXRpdGxlLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGFydGljbGUtdGl0bGUtbGluZS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWFydGljbGUtdGl0bGUpKSB7QGluY2x1ZGUgaG9vay1hcnRpY2xlLXRpdGxlKCk7fVxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1hcnRpY2xlLXRpdGxlIHsgZm9udC1zaXplOiAkYXJ0aWNsZS10aXRsZS1mb250LXNpemUtbTsgfVxuXG59XG5cblxuLyogTWV0YVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1hcnRpY2xlLW1ldGEge1xuICAgIGZvbnQtc2l6ZTogJGFydGljbGUtbWV0YS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRhcnRpY2xlLW1ldGEtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRhcnRpY2xlLW1ldGEtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWFydGljbGUtbWV0YSkpIHtAaW5jbHVkZSBob29rLWFydGljbGUtbWV0YSgpO31cbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1hcnRpY2xlLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1hcnRpY2xlLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWFydGljbGUoKXt9XG4vLyBAbWl4aW4gaG9vay1hcnRpY2xlLWFkamFjZW50KCl7fVxuLy8gQG1peGluIGhvb2stYXJ0aWNsZS10aXRsZSgpe31cbi8vIEBtaXhpbiBob29rLWFydGljbGUtbWV0YSgpe31cbi8vIEBtaXhpbiBob29rLWFydGljbGUtbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGludmVyc2UtYXJ0aWNsZS1tZXRhLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1hcnRpY2xlLXRpdGxlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1hcnRpY2xlLW1ldGEoKXt9IiwiLy8gTmFtZTogICAgICAgICAgICBDb21tZW50XG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgbmVzdGVkIGNvbW1lbnRzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstY29tbWVudGBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1jb21tZW50LWJvZHlgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jb21tZW50LWhlYWRlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWNvbW1lbnQtdGl0bGVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jb21tZW50LW1ldGFgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jb21tZW50LWF2YXRhcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWNvbW1lbnQtbGlzdGBcbi8vXG4vLyBNb2RpZmllcjogICAgICAgIGB1ay1jb21tZW50LXByaW1hcnlgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGNvbW1lbnQtaGVhZGVyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4kY29tbWVudC10aXRsZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tZm9udC1zaXplICFkZWZhdWx0O1xuJGNvbW1lbnQtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgIDEuNCAhZGVmYXVsdDtcblxuJGNvbW1lbnQtbWV0YS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGNvbW1lbnQtbWV0YS1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIDEuNCAhZGVmYXVsdDtcbiRjb21tZW50LW1ldGEtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kY29tbWVudC1saXN0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1sYXJnZS1tYXJnaW4gIWRlZmF1bHQ7XG4kY29tbWVudC1saXN0LXBhZGRpbmctbGVmdDogICAgICAgICAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjb21tZW50LWxpc3QtcGFkZGluZy1sZWZ0LW06ICAgICAgICAgICAgICAgICAgICAxMDBweCAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQ29tbWVudFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb21tZW50IHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY29tbWVudCkpIHtAaW5jbHVkZSBob29rLWNvbW1lbnQoKTt9XG59XG5cblxuLyogU2VjdGlvbnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstY29tbWVudC1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbG93LXJvb3Q7XG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNvbW1lbnQtYm9keSkpIHtAaW5jbHVkZSBob29rLWNvbW1lbnQtYm9keSgpO31cbn1cblxuLnVrLWNvbW1lbnQtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbG93LXJvb3Q7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNvbW1lbnQtaGVhZGVyLW1hcmdpbi1ib3R0b207XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNvbW1lbnQtaGVhZGVyKSkge0BpbmNsdWRlIGhvb2stY29tbWVudC1oZWFkZXIoKTt9XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstY29tbWVudC1ib2R5ID4gOmxhc3QtY2hpbGQsXG4udWstY29tbWVudC1oZWFkZXIgPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuXG4vKiBUaXRsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb21tZW50LXRpdGxlIHtcbiAgICBmb250LXNpemU6ICRjb21tZW50LXRpdGxlLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGNvbW1lbnQtdGl0bGUtbGluZS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNvbW1lbnQtdGl0bGUpKSB7QGluY2x1ZGUgaG9vay1jb21tZW50LXRpdGxlKCk7fVxufVxuXG5cbi8qIE1ldGFcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstY29tbWVudC1tZXRhIHtcbiAgICBmb250LXNpemU6ICRjb21tZW50LW1ldGEtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkY29tbWVudC1tZXRhLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkY29tbWVudC1tZXRhLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jb21tZW50LW1ldGEpKSB7QGluY2x1ZGUgaG9vay1jb21tZW50LW1ldGEoKTt9XG59XG5cblxuLyogQXZhdGFyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWNvbW1lbnQtYXZhdGFyIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY29tbWVudC1hdmF0YXIpKSB7QGluY2x1ZGUgaG9vay1jb21tZW50LWF2YXRhcigpO31cbn1cblxuXG4vKiBMaXN0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWNvbW1lbnQtbGlzdCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vKiBBZGphY2VudCBzaWJsaW5ncyAqL1xuLnVrLWNvbW1lbnQtbGlzdCA+IDpudGgtY2hpbGQobisyKSB7XG4gICAgbWFyZ2luLXRvcDogJGNvbW1lbnQtbGlzdC1tYXJnaW4tdG9wO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jb21tZW50LWxpc3QtYWRqYWNlbnQpKSB7QGluY2x1ZGUgaG9vay1jb21tZW50LWxpc3QtYWRqYWNlbnQoKTt9XG59XG5cbi8qXG4gKiBTdWJsaXN0c1xuICogTm90ZTogR2VuZXJhbCBzaWJsaW5nIHNlbGVjdG9yIGFsbG93cyByZXBseSBibG9jayBiZXR3ZWVuIGNvbW1lbnQgYW5kIHN1Ymxpc3RcbiAqL1xuXG4udWstY29tbWVudC1saXN0IC51ay1jb21tZW50IH4gdWwge1xuICAgIG1hcmdpbjogJGNvbW1lbnQtbGlzdC1tYXJnaW4tdG9wIDAgMCAwO1xuICAgIHBhZGRpbmctbGVmdDogJGNvbW1lbnQtbGlzdC1wYWRkaW5nLWxlZnQ7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY29tbWVudC1saXN0LXN1YikpIHtAaW5jbHVkZSBob29rLWNvbW1lbnQtbGlzdC1zdWIoKTt9XG59XG5cbi8qIFRhYmxldCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstY29tbWVudC1saXN0IC51ay1jb21tZW50IH4gdWwgeyBwYWRkaW5nLWxlZnQ6ICRjb21tZW50LWxpc3QtcGFkZGluZy1sZWZ0LW07IH1cblxufVxuXG4vKiBBZGphY2VudCBzaWJsaW5ncyAqL1xuLnVrLWNvbW1lbnQtbGlzdCAudWstY29tbWVudCB+IHVsID4gOm50aC1jaGlsZChuKzIpIHtcbiAgICBtYXJnaW4tdG9wOiAkY29tbWVudC1saXN0LW1hcmdpbi10b3A7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNvbW1lbnQtbGlzdC1zdWItYWRqYWNlbnQpKSB7QGluY2x1ZGUgaG9vay1jb21tZW50LWxpc3Qtc3ViLWFkamFjZW50KCk7fVxufVxuXG5cbi8qIFN0eWxlIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWNvbW1lbnQtcHJpbWFyeSB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNvbW1lbnQtcHJpbWFyeSkpIHtAaW5jbHVkZSBob29rLWNvbW1lbnQtcHJpbWFyeSgpO31cbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1jb21tZW50LW1pc2MpKSB7QGluY2x1ZGUgaG9vay1jb21tZW50LW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWNvbW1lbnQoKXt9XG4vLyBAbWl4aW4gaG9vay1jb21tZW50LWJvZHkoKXt9XG4vLyBAbWl4aW4gaG9vay1jb21tZW50LWhlYWRlcigpe31cbi8vIEBtaXhpbiBob29rLWNvbW1lbnQtdGl0bGUoKXt9XG4vLyBAbWl4aW4gaG9vay1jb21tZW50LW1ldGEoKXt9XG4vLyBAbWl4aW4gaG9vay1jb21tZW50LWF2YXRhcigpe31cbi8vIEBtaXhpbiBob29rLWNvbW1lbnQtbGlzdC1hZGphY2VudCgpe31cbi8vIEBtaXhpbiBob29rLWNvbW1lbnQtbGlzdC1zdWIoKXt9XG4vLyBAbWl4aW4gaG9vay1jb21tZW50LWxpc3Qtc3ViLWFkamFjZW50KCl7fVxuLy8gQG1peGluIGhvb2stY29tbWVudC1wcmltYXJ5KCl7fVxuLy8gQG1peGluIGhvb2stY29tbWVudC1taXNjKCl7fSIsIi8vIE5hbWU6ICAgICAgICAgICAgU2VhcmNoXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgdGhlIHNlYXJjaFxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLXNlYXJjaGBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1zZWFyY2gtaW5wdXRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zZWFyY2gtdG9nZ2xlYFxuLy9cbi8vIEFkb3B0ZWQ6ICAgICAgICAgYHVrLXNlYXJjaC1pY29uYFxuLy9cbi8vIE1vZGlmaWVyOiAgICAgICAgYHVrLXNlYXJjaC1kZWZhdWx0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstc2VhcmNoLW5hdmJhcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNlYXJjaC1sYXJnZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kc2VhcmNoLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kc2VhcmNoLXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRzZWFyY2gtaWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcblxuJHNlYXJjaC1kZWZhdWx0LXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxODBweCAhZGVmYXVsdDtcbiRzZWFyY2gtZGVmYXVsdC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb250cm9sLWhlaWdodCAhZGVmYXVsdDtcbiRzZWFyY2gtZGVmYXVsdC1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgNnB4ICFkZWZhdWx0O1xuJHNlYXJjaC1kZWZhdWx0LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kc2VhcmNoLWRlZmF1bHQtZm9jdXMtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICRzZWFyY2gtZGVmYXVsdC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4kc2VhcmNoLWRlZmF1bHQtaWNvbi13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29udHJvbC1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRzZWFyY2gtbmF2YmFyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNDAwcHggIWRlZmF1bHQ7XG4kc2VhcmNoLW5hdmJhci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQwcHggIWRlZmF1bHQ7XG4kc2VhcmNoLW5hdmJhci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHNlYXJjaC1uYXZiYXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWxhcmdlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJHNlYXJjaC1uYXZiYXItaWNvbi13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICA0MHB4ICFkZWZhdWx0O1xuXG4kc2VhcmNoLWxhcmdlLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJHNlYXJjaC1sYXJnZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA4MHB4ICFkZWZhdWx0O1xuJHNlYXJjaC1sYXJnZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRzZWFyY2gtbGFyZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC0yeGxhcmdlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJHNlYXJjaC1sYXJnZS1pY29uLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICA4MHB4ICFkZWZhdWx0O1xuXG4kc2VhcmNoLXRvZ2dsZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kc2VhcmNoLXRvZ2dsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFNlYXJjaFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBDb250YWluZXIgZml0cyBpdHMgY29udGVudFxuICogMi4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHRcbiAqIDMuIFByZXZlbnQgY29udGVudCBvdmVyZmxvd1xuICogNC4gUmVzZXQgYGZvcm1gXG4gKi9cblxuLnVrLXNlYXJjaCB7XG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvKiAyICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8qIDMgKi9cbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLyogNCAqL1xuICAgIG1hcmdpbjogMDtcbn1cblxuXG4vKiBJbnB1dFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBvbiBPUyBYIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAqL1xuXG4udWstc2VhcmNoLWlucHV0Ojotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuLnVrLXNlYXJjaC1pbnB1dDo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7IC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKlxuICogUmVtb3ZlcyBwbGFjZWhvbGRlciB0cmFuc3BhcmVuY3kgaW4gRmlyZWZveC5cbiAqL1xuXG4udWstc2VhcmNoLWlucHV0OjotbW96LXBsYWNlaG9sZGVyIHsgb3BhY2l0eTogMTsgfVxuXG4vKlxuICogMS4gRGVmaW5lIGNvbnNpc3RlbnQgYm94IHNpemluZy5cbiAqIDIuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveC9JRSBhbmQgQ2hyb21lL1NhZmFyaS9PcGVyYS5cbiAqIDMuIFJlbW92ZSBgYm9yZGVyLXJhZGl1c2AgaW4gaU9TLlxuICogNC4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gYWxsIGJyb3dzZXJzXG4gKiA1LiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICogNi4gUmVtb3ZlIGRlZmF1bHQgc3R5bGUgaW4gaU9TLlxuICogNy4gVmVydGljYWwgYWxpZ25tZW50XG4gKiA4LiBUYWtlIHRoZSBmdWxsIGNvbnRhaW5lciB3aWR0aFxuICogOS4gU3R5bGVcbiAqL1xuXG4udWstc2VhcmNoLWlucHV0IHtcbiAgICAvKiAxICovXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAvKiAyICovXG4gICAgbWFyZ2luOiAwO1xuICAgIC8qIDMgKi9cbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIC8qIDQgKi9cbiAgICBmb250OiBpbmhlcml0O1xuICAgIC8qIDUgKi9cbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAvKiA2ICovXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC8qIDcgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIC8qIDggKi9cbiAgICB3aWR0aDogMTAwJTtcbiAgICAvKiA5ICovXG4gICAgYm9yZGVyOiBub25lO1xuICAgIGNvbG9yOiAkc2VhcmNoLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zZWFyY2gtaW5wdXQpKSB7QGluY2x1ZGUgaG9vay1zZWFyY2gtaW5wdXQoKTt9XG59XG5cbi51ay1zZWFyY2gtaW5wdXQ6Zm9jdXMgeyBvdXRsaW5lOiBub25lOyB9XG5cbi8qIFBsYWNlaG9sZGVyICovXG4udWstc2VhcmNoLWlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkc2VhcmNoLXBsYWNlaG9sZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi51ay1zZWFyY2gtaW5wdXQ6OnBsYWNlaG9sZGVyIHsgY29sb3I6ICRzZWFyY2gtcGxhY2Vob2xkZXItY29sb3I7IH1cblxuXG4vKiBJY29uIChBZG9wdHMgYHVrLWljb25gKVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBSZW1vdmUgZGVmYXVsdCBmb2N1cyBzdHlsZVxuICovXG5cbi51ay1zZWFyY2gtaWNvbjpmb2N1cyB7IG91dGxpbmU6IG5vbmU7IH1cblxuLypcbiAqIFBvc2l0aW9uIGFib3ZlIGlucHV0XG4gKiAxLiBTZXQgcG9zaXRpb25cbiAqIDIuIENlbnRlciBpY29uIHZlcnRpY2FsbHkgYW5kIGhvcml6b250YWxseVxuICogMy4gU3R5bGVcbiAqL1xuXG4udWstc2VhcmNoIC51ay1zZWFyY2gtaWNvbiB7XG4gICAgLyogMSAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgLyogMiAqL1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgLyogMyAqL1xuICAgIGNvbG9yOiAkc2VhcmNoLWljb24tY29sb3I7XG59XG5cbi8qXG4gKiBSZXF1aXJlZCBmb3IgYGFgLlxuICovXG5cbi51ay1zZWFyY2ggLnVrLXNlYXJjaC1pY29uOmhvdmVyIHsgY29sb3I6ICRzZWFyY2gtaWNvbi1jb2xvcjsgfVxuXG4vKlxuICogTWFrZSBgaW5wdXRgIGVsZW1lbnQgY2xpY2thYmxlIHRocm91Z2ggaWNvbiwgZS5nLiBpZiBpdCdzIGEgYHNwYW5gXG4gKi9cblxuLnVrLXNlYXJjaCAudWstc2VhcmNoLWljb246bm90KGEpOm5vdChidXR0b24pOm5vdChpbnB1dCkgeyBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4vKlxuICogUG9zaXRpb24gbW9kaWZpZXJcbiAqL1xuXG4udWstc2VhcmNoIC51ay1zZWFyY2gtaWNvbi1mbGlwIHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xufVxuXG5cbi8qIERlZmF1bHQgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstc2VhcmNoLWRlZmF1bHQgeyB3aWR0aDogJHNlYXJjaC1kZWZhdWx0LXdpZHRoOyB9XG5cbi8qXG4gKiBJbnB1dFxuICovXG5cbi51ay1zZWFyY2gtZGVmYXVsdCAudWstc2VhcmNoLWlucHV0IHtcbiAgICBoZWlnaHQ6ICRzZWFyY2gtZGVmYXVsdC1oZWlnaHQ7XG4gICAgcGFkZGluZy1sZWZ0OiAkc2VhcmNoLWRlZmF1bHQtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzZWFyY2gtZGVmYXVsdC1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgYmFja2dyb3VuZDogJHNlYXJjaC1kZWZhdWx0LWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNlYXJjaC1kZWZhdWx0LWlucHV0KSkge0BpbmNsdWRlIGhvb2stc2VhcmNoLWRlZmF1bHQtaW5wdXQoKTt9XG59XG5cbi8qIEZvY3VzICovXG4udWstc2VhcmNoLWRlZmF1bHQgLnVrLXNlYXJjaC1pbnB1dDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNlYXJjaC1kZWZhdWx0LWZvY3VzLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNlYXJjaC1kZWZhdWx0LWlucHV0LWZvY3VzKSkge0BpbmNsdWRlIGhvb2stc2VhcmNoLWRlZmF1bHQtaW5wdXQtZm9jdXMoKTt9XG59XG5cbi8qXG4gKiBJY29uXG4gKi9cblxuLnVrLXNlYXJjaC1kZWZhdWx0IC51ay1zZWFyY2gtaWNvbiB7IHdpZHRoOiAkc2VhcmNoLWRlZmF1bHQtaWNvbi13aWR0aDsgfVxuXG4udWstc2VhcmNoLWRlZmF1bHQgLnVrLXNlYXJjaC1pY29uOm5vdCgudWstc2VhcmNoLWljb24tZmxpcCkgfiAudWstc2VhcmNoLWlucHV0IHsgcGFkZGluZy1sZWZ0OiAoJHNlYXJjaC1kZWZhdWx0LWljb24td2lkdGgpOyB9XG4udWstc2VhcmNoLWRlZmF1bHQgLnVrLXNlYXJjaC1pY29uLWZsaXAgfiAudWstc2VhcmNoLWlucHV0IHsgcGFkZGluZy1yaWdodDogKCRzZWFyY2gtZGVmYXVsdC1pY29uLXdpZHRoKTsgfVxuXG5cbi8qIE5hdmJhciBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1zZWFyY2gtbmF2YmFyIHsgd2lkdGg6ICRzZWFyY2gtbmF2YmFyLXdpZHRoOyB9XG5cbi8qXG4gKiBJbnB1dFxuICovXG5cbi51ay1zZWFyY2gtbmF2YmFyIC51ay1zZWFyY2gtaW5wdXQge1xuICAgIGhlaWdodDogJHNlYXJjaC1uYXZiYXItaGVpZ2h0O1xuICAgIGJhY2tncm91bmQ6ICRzZWFyY2gtbmF2YmFyLWJhY2tncm91bmQ7XG4gICAgZm9udC1zaXplOiAkc2VhcmNoLW5hdmJhci1mb250LXNpemU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNlYXJjaC1uYXZiYXItaW5wdXQpKSB7QGluY2x1ZGUgaG9vay1zZWFyY2gtbmF2YmFyLWlucHV0KCk7fVxufVxuXG4vKlxuICogSWNvblxuICovXG5cbi51ay1zZWFyY2gtbmF2YmFyIC51ay1zZWFyY2gtaWNvbiB7IHdpZHRoOiAkc2VhcmNoLW5hdmJhci1pY29uLXdpZHRoOyB9XG5cbi51ay1zZWFyY2gtbmF2YmFyIC51ay1zZWFyY2gtaWNvbjpub3QoLnVrLXNlYXJjaC1pY29uLWZsaXApIH4gLnVrLXNlYXJjaC1pbnB1dCB7IHBhZGRpbmctbGVmdDogKCRzZWFyY2gtbmF2YmFyLWljb24td2lkdGgpOyB9XG4udWstc2VhcmNoLW5hdmJhciAudWstc2VhcmNoLWljb24tZmxpcCB+IC51ay1zZWFyY2gtaW5wdXQgeyBwYWRkaW5nLXJpZ2h0OiAoJHNlYXJjaC1uYXZiYXItaWNvbi13aWR0aCk7IH1cblxuXG4vKiBMYXJnZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1zZWFyY2gtbGFyZ2UgeyB3aWR0aDogJHNlYXJjaC1sYXJnZS13aWR0aDsgfVxuXG4vKlxuICogSW5wdXRcbiAqL1xuXG4udWstc2VhcmNoLWxhcmdlIC51ay1zZWFyY2gtaW5wdXQge1xuICAgIGhlaWdodDogJHNlYXJjaC1sYXJnZS1oZWlnaHQ7XG4gICAgYmFja2dyb3VuZDogJHNlYXJjaC1sYXJnZS1iYWNrZ3JvdW5kO1xuICAgIGZvbnQtc2l6ZTogJHNlYXJjaC1sYXJnZS1mb250LXNpemU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNlYXJjaC1sYXJnZS1pbnB1dCkpIHtAaW5jbHVkZSBob29rLXNlYXJjaC1sYXJnZS1pbnB1dCgpO31cbn1cblxuLypcbiAqIEljb25cbiAqL1xuXG4udWstc2VhcmNoLWxhcmdlIC51ay1zZWFyY2gtaWNvbiB7IHdpZHRoOiAkc2VhcmNoLWxhcmdlLWljb24td2lkdGg7IH1cblxuLnVrLXNlYXJjaC1sYXJnZSAudWstc2VhcmNoLWljb246bm90KC51ay1zZWFyY2gtaWNvbi1mbGlwKSB+IC51ay1zZWFyY2gtaW5wdXQgeyBwYWRkaW5nLWxlZnQ6ICgkc2VhcmNoLWxhcmdlLWljb24td2lkdGgpOyB9XG4udWstc2VhcmNoLWxhcmdlIC51ay1zZWFyY2gtaWNvbi1mbGlwIH4gLnVrLXNlYXJjaC1pbnB1dCB7IHBhZGRpbmctcmlnaHQ6ICgkc2VhcmNoLWxhcmdlLWljb24td2lkdGgpOyB9XG5cblxuLyogVG9nZ2xlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXNlYXJjaC10b2dnbGUge1xuICAgIGNvbG9yOiAkc2VhcmNoLXRvZ2dsZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2VhcmNoLXRvZ2dsZSkpIHtAaW5jbHVkZSBob29rLXNlYXJjaC10b2dnbGUoKTt9XG59XG5cbi8qIEhvdmVyICsgRm9jdXMgKi9cbi51ay1zZWFyY2gtdG9nZ2xlOmhvdmVyLFxuLnVrLXNlYXJjaC10b2dnbGU6Zm9jdXMge1xuICAgIGNvbG9yOiAkc2VhcmNoLXRvZ2dsZS1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2VhcmNoLXRvZ2dsZS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLXNlYXJjaC10b2dnbGUtaG92ZXIoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stc2VhcmNoLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1zZWFyY2gtbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stc2VhcmNoLWlucHV0KCl7fVxuLy8gQG1peGluIGhvb2stc2VhcmNoLWRlZmF1bHQtaW5wdXQoKXt9XG4vLyBAbWl4aW4gaG9vay1zZWFyY2gtZGVmYXVsdC1pbnB1dC1mb2N1cygpe31cbi8vIEBtaXhpbiBob29rLXNlYXJjaC1uYXZiYXItaW5wdXQoKXt9XG4vLyBAbWl4aW4gaG9vay1zZWFyY2gtbGFyZ2UtaW5wdXQoKXt9XG5cbi8vIEBtaXhpbiBob29rLXNlYXJjaC10b2dnbGUoKXt9XG4vLyBAbWl4aW4gaG9vay1zZWFyY2gtdG9nZ2xlLWhvdmVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1zZWFyY2gtbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGludmVyc2Utc2VhcmNoLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2Utc2VhcmNoLXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kaW52ZXJzZS1zZWFyY2gtaWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnZlcnNlLXNlYXJjaC1kZWZhdWx0LWJhY2tncm91bmQ6ICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2Utc2VhcmNoLWRlZmF1bHQtZm9jdXMtYmFja2dyb3VuZDogICAgICAgJGludmVyc2Utc2VhcmNoLWRlZmF1bHQtYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuJGludmVyc2Utc2VhcmNoLW5hdmJhci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiRpbnZlcnNlLXNlYXJjaC1sYXJnZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4kaW52ZXJzZS1zZWFyY2gtdG9nZ2xlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zZWFyY2gtdG9nZ2xlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC1kZWZhdWx0LWlucHV0KCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zZWFyY2gtZGVmYXVsdC1pbnB1dC1mb2N1cygpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2Utc2VhcmNoLW5hdmJhci1pbnB1dCgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2Utc2VhcmNoLWxhcmdlLWlucHV0KCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zZWFyY2gtdG9nZ2xlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zZWFyY2gtdG9nZ2xlLWhvdmVyKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBBY2NvcmRpb25cbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBhY2NvcmRpb25zXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstYWNjb3JkaW9uYFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLWFjY29yZGlvbi10aXRsZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFjY29yZGlvbi1jb250ZW50YFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLW9wZW5gXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGFjY29yZGlvbi1pdGVtLW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDEuNCAhZGVmYXVsdDtcbiRhY2NvcmRpb24tdGl0bGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXRpdGxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWNvbnRlbnQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQWNjb3JkaW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWFjY29yZGlvbiB7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1hY2NvcmRpb24pKSB7QGluY2x1ZGUgaG9vay1hY2NvcmRpb24oKTt9XG59XG5cblxuLyogSXRlbVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1hY2NvcmRpb24gPiA6bnRoLWNoaWxkKG4rMikge1xuICAgIG1hcmdpbi10b3A6ICRhY2NvcmRpb24taXRlbS1tYXJnaW4tdG9wO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1hY2NvcmRpb24taXRlbSkpIHtAaW5jbHVkZSBob29rLWFjY29yZGlvbi1pdGVtKCk7fVxufVxuXG5cbi8qIFRpdGxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWFjY29yZGlvbi10aXRsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGFjY29yZGlvbi10aXRsZS1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJGFjY29yZGlvbi10aXRsZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYWNjb3JkaW9uLXRpdGxlKSkge0BpbmNsdWRlIGhvb2stYWNjb3JkaW9uLXRpdGxlKCk7fVxufVxuXG4vKiBIb3ZlciArIEZvY3VzICovXG4udWstYWNjb3JkaW9uLXRpdGxlOmhvdmVyLFxuLnVrLWFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gICAgY29sb3I6ICRhY2NvcmRpb24tdGl0bGUtaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWFjY29yZGlvbi10aXRsZS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLWFjY29yZGlvbi10aXRsZS1ob3ZlcigpO31cbn1cblxuXG4vKiBDb250ZW50XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWFjY29yZGlvbi1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbG93LXJvb3Q7XG4gICAgbWFyZ2luLXRvcDogJGFjY29yZGlvbi1jb250ZW50LW1hcmdpbi10b3A7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWFjY29yZGlvbi1jb250ZW50KSkge0BpbmNsdWRlIGhvb2stYWNjb3JkaW9uLWNvbnRlbnQoKTt9XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4gLnVrLWFjY29yZGlvbi1jb250ZW50ID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stYWNjb3JkaW9uLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1hY2NvcmRpb24tbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stYWNjb3JkaW9uKCl7fVxuLy8gQG1peGluIGhvb2stYWNjb3JkaW9uLWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1hY2NvcmRpb24tdGl0bGUoKXt9XG4vLyBAbWl4aW4gaG9vay1hY2NvcmRpb24tdGl0bGUtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1hY2NvcmRpb24tY29udGVudCgpe31cbi8vIEBtaXhpbiBob29rLWFjY29yZGlvbi1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kaW52ZXJzZS1hY2NvcmRpb24tdGl0bGUtY29sb3I6ICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1hY2NvcmRpb24tdGl0bGUtaG92ZXItY29sb3I6ICAgICAgICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWFjY29yZGlvbi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1hY2NvcmRpb24tdGl0bGUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWFjY29yZGlvbi10aXRsZS1ob3Zlcigpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIERyb3Bcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIHBvc2l0aW9uIGFueSBlbGVtZW50IG5leHQgdG8gYW55IG90aGVyIGVsZW1lbnQuXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstZHJvcGBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1kcm9wLXRvcC0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZHJvcC1ib3R0b20tKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRyb3AtbGVmdC0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZHJvcC1yaWdodC0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZHJvcC1zdGFja2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRyb3AtZ3JpZGBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1vcGVuYFxuLy9cbi8vIFVzZXM6ICAgICAgICAgICAgQW5pbWF0aW9uXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGRyb3Atei1pbmRleDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC16LWluZGV4ICsgMjAgIWRlZmF1bHQ7XG4kZHJvcC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcbiRkcm9wLW1hcmdpbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBEcm9wXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIEhpZGUgYnkgZGVmYXVsdFxuICogMi4gU2V0IHBvc2l0aW9uXG4gKiAzLiBTZXQgYSBkZWZhdWx0IHdpZHRoXG4gKi9cblxuLnVrLWRyb3Age1xuICAgIC8qIDEgKi9cbiAgICBkaXNwbGF5OiBub25lO1xuICAgIC8qIDIgKi9cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogJGRyb3Atei1pbmRleDtcbiAgICAvKiAzICovXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogJGRyb3Atd2lkdGg7XG59XG5cbi8qIFNob3cgKi9cbi51ay1kcm9wLnVrLW9wZW4geyBkaXNwbGF5OiBibG9jazsgfVxuXG5cbi8qIERpcmVjdGlvbiAvIEFsaWdubWVudCBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBEaXJlY3Rpb24gKi9cbltjbGFzcyo9J3VrLWRyb3AtdG9wJ10geyBtYXJnaW4tdG9wOiAoLSRkcm9wLW1hcmdpbik7IH1cbltjbGFzcyo9J3VrLWRyb3AtYm90dG9tJ10geyBtYXJnaW4tdG9wOiAkZHJvcC1tYXJnaW47IH1cbltjbGFzcyo9J3VrLWRyb3AtbGVmdCddIHsgbWFyZ2luLWxlZnQ6ICgtJGRyb3AtbWFyZ2luKTsgfVxuW2NsYXNzKj0ndWstZHJvcC1yaWdodCddIHsgbWFyZ2luLWxlZnQ6ICRkcm9wLW1hcmdpbjsgfVxuXG5cbi8qIEdyaWQgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWRyb3Atc3RhY2sgLnVrLWRyb3AtZ3JpZCA+ICogeyB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stZHJvcC1taXNjKSkge0BpbmNsdWRlIGhvb2stZHJvcC1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1kcm9wLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIERyb3Bkb3duXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgZHJvcGRvd24gbWVudXNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1kcm9wZG93bmBcbi8vXG4vLyBBZG9wdGVkOiAgICAgICAgIGB1ay1kcm9wZG93bi1uYXZgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstZHJvcGRvd24tdG9wLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1kcm9wZG93bi1ib3R0b20tKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRyb3Bkb3duLWxlZnQtKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRyb3Bkb3duLXJpZ2h0LSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1kcm9wZG93bi1zdGFja2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRyb3Bkb3duLWdyaWRgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRkcm9wZG93bi16LWluZGV4OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXotaW5kZXggKyAyMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLW1hcmdpbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtbWFyZ2luICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbmF2LWl0ZW0tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1uYXYtaXRlbS1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLW5hdi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbmF2LWRpdmlkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZHJvcGRvd24tbmF2LWRpdmlkZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbmF2LXN1Ymxpc3QtaXRlbS1jb2xvcjogICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1uYXYtc3VibGlzdC1pdGVtLWhvdmVyLWNvbG9yOiAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBEcm9wZG93blxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBIaWRlIGJ5IGRlZmF1bHRcbiAqIDIuIFNldCBwb3NpdGlvblxuICogMy4gU2V0IGEgZGVmYXVsdCB3aWR0aFxuICogNC4gU3R5bGVcbiAqL1xuXG4udWstZHJvcGRvd24ge1xuICAgIC8qIDEgKi9cbiAgICBkaXNwbGF5OiBub25lO1xuICAgIC8qIDIgKi9cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogJGRyb3Bkb3duLXotaW5kZXg7XG4gICAgLyogMyAqL1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWluLXdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xuICAgIC8qIDQgKi9cbiAgICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd24tYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1kcm9wZG93bikpIHtAaW5jbHVkZSBob29rLWRyb3Bkb3duKCk7fVxufVxuXG4vKiBTaG93ICovXG4udWstZHJvcGRvd24udWstb3BlbiB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cblxuLyogTmF2XG4gKiBBZG9wdHMgYHVrLW5hdmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstZHJvcGRvd24tbmF2IHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1kcm9wZG93bi1uYXYpKSB7QGluY2x1ZGUgaG9vay1kcm9wZG93bi1uYXYoKTt9XG59XG5cbi8qXG4gKiBJdGVtc1xuICovXG5cbi51ay1kcm9wZG93bi1uYXYgPiBsaSA+IGEge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbmF2LWl0ZW0tY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRyb3Bkb3duLW5hdi1pdGVtKSkge0BpbmNsdWRlIGhvb2stZHJvcGRvd24tbmF2LWl0ZW0oKTt9XG59XG5cbi8qIEhvdmVyICsgRm9jdXMgKyBBY3RpdmUgKi9cbi51ay1kcm9wZG93bi1uYXYgPiBsaSA+IGE6aG92ZXIsXG4udWstZHJvcGRvd24tbmF2ID4gbGkgPiBhOmZvY3VzLFxuLnVrLWRyb3Bkb3duLW5hdiA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbmF2LWl0ZW0taG92ZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRyb3Bkb3duLW5hdi1pdGVtLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stZHJvcGRvd24tbmF2LWl0ZW0taG92ZXIoKTt9XG59XG5cbi8qXG4gKiBIZWFkZXJcbiAqL1xuXG4udWstZHJvcGRvd24tbmF2IC51ay1uYXYtaGVhZGVyIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLW5hdi1oZWFkZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRyb3Bkb3duLW5hdi1oZWFkZXIpKSB7QGluY2x1ZGUgaG9vay1kcm9wZG93bi1uYXYtaGVhZGVyKCk7fVxufVxuXG4vKlxuICogRGl2aWRlclxuICovXG5cbi51ay1kcm9wZG93bi1uYXYgLnVrLW5hdi1kaXZpZGVyIHtcbiAgICBib3JkZXItdG9wOiAkZHJvcGRvd24tbmF2LWRpdmlkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1uYXYtZGl2aWRlci1ib3JkZXI7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRyb3Bkb3duLW5hdi1kaXZpZGVyKSkge0BpbmNsdWRlIGhvb2stZHJvcGRvd24tbmF2LWRpdmlkZXIoKTt9XG59XG5cbi8qXG4gKiBTdWJsaXN0c1xuICovXG5cbi51ay1kcm9wZG93bi1uYXYgLnVrLW5hdi1zdWIgYSB7IGNvbG9yOiAkZHJvcGRvd24tbmF2LXN1Ymxpc3QtaXRlbS1jb2xvcjsgfVxuXG4udWstZHJvcGRvd24tbmF2IC51ay1uYXYtc3ViIGE6aG92ZXIsXG4udWstZHJvcGRvd24tbmF2IC51ay1uYXYtc3ViIGE6Zm9jdXMsXG4udWstZHJvcGRvd24tbmF2IC51ay1uYXYtc3ViIGxpLnVrLWFjdGl2ZSA+IGEgeyBjb2xvcjogJGRyb3Bkb3duLW5hdi1zdWJsaXN0LWl0ZW0taG92ZXItY29sb3I7IH1cblxuXG4vKiBEaXJlY3Rpb24gLyBBbGlnbm1lbnQgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogRGlyZWN0aW9uICovXG5bY2xhc3MqPSd1ay1kcm9wZG93bi10b3AnXSB7IG1hcmdpbi10b3A6ICgtJGRyb3Bkb3duLW1hcmdpbik7IH1cbltjbGFzcyo9J3VrLWRyb3Bkb3duLWJvdHRvbSddIHsgbWFyZ2luLXRvcDogJGRyb3Bkb3duLW1hcmdpbjsgfVxuW2NsYXNzKj0ndWstZHJvcGRvd24tbGVmdCddIHsgbWFyZ2luLWxlZnQ6ICgtJGRyb3Bkb3duLW1hcmdpbik7IH1cbltjbGFzcyo9J3VrLWRyb3Bkb3duLXJpZ2h0J10geyBtYXJnaW4tbGVmdDogJGRyb3Bkb3duLW1hcmdpbjsgfVxuXG5cbi8qIEdyaWQgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWRyb3Bkb3duLXN0YWNrIC51ay1kcm9wZG93bi1ncmlkID4gKiB7IHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWRyb3Bkb3duLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1kcm9wZG93bi1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1kcm9wZG93bigpe31cbi8vIEBtaXhpbiBob29rLWRyb3Bkb3duLW5hdigpe31cbi8vIEBtaXhpbiBob29rLWRyb3Bkb3duLW5hdi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2stZHJvcGRvd24tbmF2LWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1kcm9wZG93bi1uYXYtaGVhZGVyKCl7fVxuLy8gQG1peGluIGhvb2stZHJvcGRvd24tbmF2LWRpdmlkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1kcm9wZG93bi1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBNb2RhbFxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIG1vZGFsIGRpYWxvZ3Ncbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1tb2RhbGBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1tb2RhbC1wYWdlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbW9kYWwtZGlhbG9nYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbW9kYWwtaGVhZGVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbW9kYWwtYm9keWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW1vZGFsLWZvb3RlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW1vZGFsLXRpdGxlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbW9kYWwtY2xvc2VgXG4vL1xuLy8gQWRvcHRlZDogICAgICAgICBgdWstbW9kYWwtY2xvc2UtZGVmYXVsdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW1vZGFsLWNsb3NlLW91dHNpZGVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1tb2RhbC1jbG9zZS1mdWxsYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLW1vZGFsLWNvbnRhaW5lcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW1vZGFsLWZ1bGxgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstb3BlbmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kbW9kYWwtei1pbmRleDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC16LWluZGV4ICsgMTAgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwwLjYpICFkZWZhdWx0O1xuXG4kbW9kYWwtcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRtb2RhbC1wYWRkaW5nLWhvcml6b250YWwtczogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRtb2RhbC1wYWRkaW5nLWhvcml6b250YWwtbTogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XG4kbW9kYWwtcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICAgJG1vZGFsLXBhZGRpbmctaG9yaXpvbnRhbCAhZGVmYXVsdDtcbiRtb2RhbC1wYWRkaW5nLXZlcnRpY2FsLXM6ICAgICAgICAgICAgICAgICAgICAgICA1MHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNjAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGFpbmVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTIwMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtYm9keS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kbW9kYWwtYm9keS1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG5cbiRtb2RhbC1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAoJG1vZGFsLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWwgLyAyKSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiRtb2RhbC1mb290ZXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAoJG1vZGFsLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWwgLyAyKSAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXhsYXJnZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgMS4zICFkZWZhdWx0O1xuXG4kbW9kYWwtY2xvc2UtcG9zaXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zbWFsbC1tYXJnaW4gIWRlZmF1bHQ7XG4kbW9kYWwtY2xvc2UtcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgNXB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtY2xvc2Utb3V0c2lkZS1wb3NpdGlvbjogICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRtb2RhbC1jbG9zZS1vdXRzaWRlLXRyYW5zbGF0ZTogICAgICAgICAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJG1vZGFsLWNsb3NlLW91dHNpZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdsb2JhbC1pbnZlcnNlLWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuJG1vZGFsLWNsb3NlLW91dHNpZGUtaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICRnbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogTW9kYWxcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gSGlkZSBieSBkZWZhdWx0XG4gKiAyLiBTZXQgcG9zaXRpb25cbiAqIDMuIEFsbG93IHNjcm9sbGluZyBmb3IgdGhlIG1vZGFsIGRpYWxvZ1xuICogNC4gSG9yaXpvbnRhbCBwYWRkaW5nXG4gKiA1LiBNYXNrIHRoZSBiYWNrZ3JvdW5kIHBhZ2VcbiAqIDYuIEZhZGUtaW4gdHJhbnNpdGlvblxuICovXG5cbi51ay1tb2RhbCB7XG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgLyogMiAqL1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJG1vZGFsLXotaW5kZXg7XG4gICAgLyogMyAqL1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC8qIDQgKi9cbiAgICBwYWRkaW5nOiAkbW9kYWwtcGFkZGluZy12ZXJ0aWNhbCAkbW9kYWwtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIC8qIDUgKi9cbiAgICBiYWNrZ3JvdW5kOiAkbW9kYWwtYmFja2dyb3VuZDtcbiAgICAvKiA2ICovXG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGxpbmVhcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwpKSB7QGluY2x1ZGUgaG9vay1tb2RhbCgpO31cbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLW1vZGFsIHsgcGFkZGluZzogJG1vZGFsLXBhZGRpbmctdmVydGljYWwtcyAkbW9kYWwtcGFkZGluZy1ob3Jpem9udGFsLXM7IH1cblxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1tb2RhbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJG1vZGFsLXBhZGRpbmctaG9yaXpvbnRhbC1tO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbW9kYWwtcGFkZGluZy1ob3Jpem9udGFsLW07XG4gICAgfVxuXG59XG5cbi8qXG4gKiBPcGVuXG4gKi9cblxuLnVrLW1vZGFsLnVrLW9wZW4geyBvcGFjaXR5OiAxOyB9XG5cblxuLyogUGFnZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBQcmV2ZW50IHNjcm9sbGJhcnNcbiAqL1xuXG4udWstbW9kYWwtcGFnZSB7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuXG4vKiBEaWFsb2dcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHQgZm9yIHNwaW5uZXIgYW5kIGNsb3NlIGJ1dHRvblxuICogMi4gRGltZW5zaW9uc1xuICogMy4gRml4IGBtYXgtd2lkdGg6IDEwMCVgIG5vdCB3b3JraW5nIGluIGNvbWJpbmF0aW9uIHdpdGggZmxleCBhbmQgcmVzcG9uc2l2ZSBpbWFnZXMgaW4gSUUxMVxuICogICAgYCFpbXBvcnRhbnRgIG5lZWRlZCB0byBvdmVyd3JpdGUgYHVrLXdpZHRoLWF1dG9gLiBTZWUgYCNtb2RhbC1tZWRpYS1pbWFnZWAgaW4gdGVzdHNcbiAqIDQuIFN0eWxlXG4gKiA1LiBTbGlkZS1pbiB0cmFuc2l0aW9uXG4gKi9cblxuLnVrLW1vZGFsLWRpYWxvZyB7XG4gICAgLyogMSAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvKiAyICovXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogJG1vZGFsLWRpYWxvZy13aWR0aDtcbiAgICAvKiAzICovXG4gICAgbWF4LXdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgLSAwLjAxcHgpJykgIWltcG9ydGFudDtcbiAgICAvKiA0ICovXG4gICAgYmFja2dyb3VuZDogJG1vZGFsLWRpYWxvZy1iYWNrZ3JvdW5kO1xuICAgIC8qIDUgKi9cbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuICAgIHRyYW5zaXRpb246IDAuM3MgbGluZWFyO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtZGlhbG9nKSkge0BpbmNsdWRlIGhvb2stbW9kYWwtZGlhbG9nKCk7fVxufVxuXG4vKlxuICogT3BlblxuICovXG5cbi51ay1vcGVuID4gLnVrLW1vZGFsLWRpYWxvZyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cblxuLyogU2l6ZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBDb250YWluZXIgc2l6ZVxuICogVGFrZSB0aGUgc2FtZSBzaXplIGFzIHRoZSBDb250YWluZXIgY29tcG9uZW50XG4gKi9cblxuLnVrLW1vZGFsLWNvbnRhaW5lciAudWstbW9kYWwtZGlhbG9nIHsgd2lkdGg6ICRtb2RhbC1jb250YWluZXItd2lkdGg7IH1cblxuLypcbiAqIEZ1bGwgc2l6ZVxuICogMS4gUmVtb3ZlIHBhZGRpbmcgYW5kIGJhY2tncm91bmQgZnJvbSBtb2RhbFxuICogMi4gUmVzZXQgYWxsIGRlZmF1bHQgZGVjbGFyYXRpb25zIGZyb20gbW9kYWwgZGlhbG9nXG4gKi9cblxuLyogMSAqL1xuLnVrLW1vZGFsLWZ1bGwge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLyogMiAqL1xuLnVrLW1vZGFsLWZ1bGwgLnVrLW1vZGFsLWRpYWxvZyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW1vZGFsLWZ1bGwpKSB7QGluY2x1ZGUgaG9vay1tb2RhbC1mdWxsKCk7fVxufVxuXG5cbi8qIFNlY3Rpb25zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW1vZGFsLWJvZHkge1xuICAgIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgICBwYWRkaW5nOiAkbW9kYWwtYm9keS1wYWRkaW5nLXZlcnRpY2FsICRtb2RhbC1ib2R5LXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtYm9keSkpIHtAaW5jbHVkZSBob29rLW1vZGFsLWJvZHkoKTt9XG59XG5cbi51ay1tb2RhbC1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmctdmVydGljYWwgJG1vZGFsLWhlYWRlci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgYmFja2dyb3VuZDogJG1vZGFsLWhlYWRlci1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1tb2RhbC1oZWFkZXIpKSB7QGluY2x1ZGUgaG9vay1tb2RhbC1oZWFkZXIoKTt9XG59XG5cbi51ay1tb2RhbC1mb290ZXIge1xuICAgIGRpc3BsYXk6IGZsb3ctcm9vdDtcbiAgICBwYWRkaW5nOiAkbW9kYWwtZm9vdGVyLXBhZGRpbmctdmVydGljYWwgJG1vZGFsLWZvb3Rlci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgYmFja2dyb3VuZDogJG1vZGFsLWZvb3Rlci1iYWNrZ3JvdW5kO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1tb2RhbC1mb290ZXIpKSB7QGluY2x1ZGUgaG9vay1tb2RhbC1mb290ZXIoKTt9XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstbW9kYWwtYm9keSA+IDpsYXN0LWNoaWxkLFxuLnVrLW1vZGFsLWhlYWRlciA+IDpsYXN0LWNoaWxkLFxuLnVrLW1vZGFsLWZvb3RlciA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8qIFRpdGxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW1vZGFsLXRpdGxlIHtcbiAgICBmb250LXNpemU6ICRtb2RhbC10aXRsZS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtdGl0bGUpKSB7QGluY2x1ZGUgaG9vay1tb2RhbC10aXRsZSgpO31cbn1cblxuXG4vKiBDbG9zZVxuICogQWRvcHRzIGB1ay1jbG9zZWBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5bY2xhc3MqPSd1ay1tb2RhbC1jbG9zZS0nXSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6ICRtb2RhbC16LWluZGV4O1xuICAgIHRvcDogJG1vZGFsLWNsb3NlLXBvc2l0aW9uO1xuICAgIHJpZ2h0OiAkbW9kYWwtY2xvc2UtcG9zaXRpb247XG4gICAgcGFkZGluZzogJG1vZGFsLWNsb3NlLXBhZGRpbmc7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW1vZGFsLWNsb3NlKSkge0BpbmNsdWRlIGhvb2stbW9kYWwtY2xvc2UoKTt9XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gYWRqYWNlbnQgZWxlbWVudFxuICovXG5cbltjbGFzcyo9J3VrLW1vZGFsLWNsb3NlLSddOmZpcnN0LWNoaWxkICsgKiB7IG1hcmdpbi10b3A6IDA7IH1cblxuLypcbiAqIEhvdmVyXG4gKi9cblxuW2NsYXNzKj0ndWstbW9kYWwtY2xvc2UtJ106aG92ZXIge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1tb2RhbC1jbG9zZS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLW1vZGFsLWNsb3NlLWhvdmVyKCk7fVxufVxuXG4vKlxuICogRGVmYXVsdFxuICovXG5cbi51ay1tb2RhbC1jbG9zZS1kZWZhdWx0IHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtY2xvc2UtZGVmYXVsdCkpIHtAaW5jbHVkZSBob29rLW1vZGFsLWNsb3NlLWRlZmF1bHQoKTt9XG59XG5cbi51ay1tb2RhbC1jbG9zZS1kZWZhdWx0OmhvdmVyIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtY2xvc2UtZGVmYXVsdC1ob3ZlcikpIHtAaW5jbHVkZSBob29rLW1vZGFsLWNsb3NlLWRlZmF1bHQtaG92ZXIoKTt9XG59XG5cbi8qXG4gKiBPdXRzaWRlXG4gKiAxLiBQcmV2ZW50IHNjcm9sbGJhciBvbiBzbWFsbCBkZXZpY2VzXG4gKi9cblxuLnVrLW1vZGFsLWNsb3NlLW91dHNpZGUge1xuICAgIHRvcDogJG1vZGFsLWNsb3NlLW91dHNpZGUtcG9zaXRpb247XG4gICAgLyogMSAqL1xuICAgIHJpZ2h0OiAoLSRtb2RhbC1jbG9zZS1wYWRkaW5nKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtKCRtb2RhbC1jbG9zZS1vdXRzaWRlLXRyYW5zbGF0ZSkpO1xuICAgIGNvbG9yOiAkbW9kYWwtY2xvc2Utb3V0c2lkZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtY2xvc2Utb3V0c2lkZSkpIHtAaW5jbHVkZSBob29rLW1vZGFsLWNsb3NlLW91dHNpZGUoKTt9XG59XG5cbi51ay1tb2RhbC1jbG9zZS1vdXRzaWRlOmhvdmVyIHtcbiAgICBjb2xvcjogJG1vZGFsLWNsb3NlLW91dHNpZGUtaG92ZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW1vZGFsLWNsb3NlLW91dHNpZGUtaG92ZXIpKSB7QGluY2x1ZGUgaG9vay1tb2RhbC1jbG9zZS1vdXRzaWRlLWhvdmVyKCk7fVxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC8qIDEgKi9cbiAgICAudWstbW9kYWwtY2xvc2Utb3V0c2lkZSB7XG4gICAgICAgIHJpZ2h0OiAkbW9kYWwtY2xvc2Utb3V0c2lkZS1wb3NpdGlvbjtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJG1vZGFsLWNsb3NlLW91dHNpZGUtdHJhbnNsYXRlLCAtKCRtb2RhbC1jbG9zZS1vdXRzaWRlLXRyYW5zbGF0ZSkpO1xuICAgIH1cblxufVxuXG4vKlxuICogRnVsbFxuICovXG5cbi51ay1tb2RhbC1jbG9zZS1mdWxsIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtY2xvc2UtZnVsbCkpIHtAaW5jbHVkZSBob29rLW1vZGFsLWNsb3NlLWZ1bGwoKTt9XG59XG5cbi51ay1tb2RhbC1jbG9zZS1mdWxsOmhvdmVyIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtY2xvc2UtZnVsbC1ob3ZlcikpIHtAaW5jbHVkZSBob29rLW1vZGFsLWNsb3NlLWZ1bGwtaG92ZXIoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stbW9kYWwtbWlzYykpIHtAaW5jbHVkZSBob29rLW1vZGFsLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLW1vZGFsKCl7fVxuLy8gQG1peGluIGhvb2stbW9kYWwtZGlhbG9nKCl7fVxuLy8gQG1peGluIGhvb2stbW9kYWwtZnVsbCgpe31cbi8vIEBtaXhpbiBob29rLW1vZGFsLWhlYWRlcigpe31cbi8vIEBtaXhpbiBob29rLW1vZGFsLWJvZHkoKXt9XG4vLyBAbWl4aW4gaG9vay1tb2RhbC1mb290ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1tb2RhbC10aXRsZSgpe31cbi8vIEBtaXhpbiBob29rLW1vZGFsLWNsb3NlKCl7fVxuLy8gQG1peGluIGhvb2stbW9kYWwtY2xvc2UtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1tb2RhbC1jbG9zZS1kZWZhdWx0KCl7fVxuLy8gQG1peGluIGhvb2stbW9kYWwtY2xvc2UtZGVmYXVsdC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLW1vZGFsLWNsb3NlLW91dHNpZGUoKXt9XG4vLyBAbWl4aW4gaG9vay1tb2RhbC1jbG9zZS1vdXRzaWRlLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stbW9kYWwtY2xvc2UtZnVsbCgpe31cbi8vIEBtaXhpbiBob29rLW1vZGFsLWNsb3NlLWZ1bGwtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1tb2RhbC1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBTbGlkZXNob3dcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBzbGlkZXNob3dzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstc2xpZGVzaG93YFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLXNsaWRlc2hvdy1pdGVtc2Bcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1hY3RpdmVgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFNsaWRlc2hvd1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBQcmV2ZW50IHRhYiBoaWdobGlnaHRpbmcgb24gaU9TLlxuICovXG5cbi51ay1zbGlkZXNob3cge1xuICAgIC8qIDEgKi9cbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zbGlkZXNob3cpKSB7QGluY2x1ZGUgaG9vay1zbGlkZXNob3coKTt9XG59XG5cblxuLyogSXRlbXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQ3JlYXRlIHBvc2l0aW9uIGFuZCBzdGFja2luZyBjb250ZXh0XG4gKiAyLiBSZXNldCBsaXN0XG4gKiAzLiBDbGlwIGNoaWxkIGVsZW1lbnRzXG4gKiA0LiBQcmV2ZW50IGRpc3BsYXlpbmcgdGhlIGNhbGxvdXQgaW5mb3JtYXRpb24gb24gaU9TLlxuICovXG5cbi51ay1zbGlkZXNob3ctaXRlbXMge1xuICAgIC8qIDEgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMDtcbiAgICAvKiAyICovXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAvKiAzICovXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvKiA0ICovXG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xufVxuXG5cbi8qIEl0ZW1cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gUG9zaXRpb24gaXRlbXMgYWJvdmUgZWFjaCBvdGhlclxuICogMi4gVGFrZSB0aGUgZnVsbCB3aWR0aFxuICogMy4gQ2xpcCBjaGlsZCBlbGVtZW50cywgZS5nLiBmb3IgYHVrLWNvdmVyYFxuICogNC4gT3B0aW1pemUgYW5pbWF0aW9uXG4gKiA1LiBEaXNhYmxlIGhvcml6b250YWwgcGFubmluZyBnZXN0dXJlcyBpbiBJRTExIGFuZCBFZGdlXG4gKiA2LiBTdXBwcmVzcyBvdXRsaW5lIG9uIGZvY3VzXG4gKi9cblxuLnVrLXNsaWRlc2hvdy1pdGVtcyA+ICoge1xuICAgIC8qIDEgKi9cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgLyogMiAqL1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICAvKiAzICovXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvKiA0ICovXG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAvKiA1ICovXG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLyogNiAqL1xuLnVrLXNsaWRlc2hvdy1pdGVtcyA+IDpmb2N1cyB7IG91dGxpbmU6IG5vbmU7IH1cblxuLypcbiAqIEhpZGUgbm90IGFjdGl2ZSBpdGVtc1xuICovXG5cbi51ay1zbGlkZXNob3ctaXRlbXMgPiA6bm90KC51ay1hY3RpdmUpIHsgZGlzcGxheTogbm9uZTsgfVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLXNsaWRlc2hvdy1taXNjKSkge0BpbmNsdWRlIGhvb2stc2xpZGVzaG93LW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXNsaWRlc2hvdygpe31cbi8vIEBtaXhpbiBob29rLXNsaWRlc2hvdy1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBTbGlkZXJcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBob3Jpem9udGFsIHNsaWRlcnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1zbGlkZXJgXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstc2xpZGVyLWNvbnRhaW5lcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNsaWRlci1pdGVtc2Bcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1hY3RpdmVgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHNsaWRlci1jb250YWluZXItbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAgICAgICAtMTFweCAhZGVmYXVsdDtcbiRzbGlkZXItY29udGFpbmVyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgICAgICAgLTM5cHggIWRlZmF1bHQ7XG4kc2xpZGVyLWNvbnRhaW5lci1tYXJnaW4tbGVmdDogICAgICAgICAgICAgICAgICAgICAgIC0yNXB4ICFkZWZhdWx0O1xuJHNsaWRlci1jb250YWluZXItbWFyZ2luLXJpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAtMjVweCAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogU2xpZGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFByZXZlbnQgdGFiIGhpZ2hsaWdodGluZyBvbiBpT1MuXG4gKi9cblxuLnVrLXNsaWRlciB7XG4gICAgLyogMSAqL1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNsaWRlcikpIHtAaW5jbHVkZSBob29rLXNsaWRlcigpO31cbn1cblxuXG4vKiBDb250YWluZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQ2xpcCBjaGlsZCBlbGVtZW50c1xuICovXG5cbi51ay1zbGlkZXItY29udGFpbmVyIHsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKlxuICogV2lkZW4gY29udGFpbmVyIHRvIHByZXZlbnQgYm94LXNoYWRvd3MgZnJvbSBjbGlwcGluZywgYGxhcmdlLWJveC1zaGFkb3dgXG4gKi9cblxuLnVrLXNsaWRlci1jb250YWluZXItb2Zmc2V0IHtcbiAgICBtYXJnaW46ICRzbGlkZXItY29udGFpbmVyLW1hcmdpbi10b3AgJHNsaWRlci1jb250YWluZXItbWFyZ2luLXJpZ2h0ICRzbGlkZXItY29udGFpbmVyLW1hcmdpbi1ib3R0b20gJHNsaWRlci1jb250YWluZXItbWFyZ2luLWxlZnQ7XG4gICAgcGFkZGluZzogKCRzbGlkZXItY29udGFpbmVyLW1hcmdpbi10b3AgKiAtMSkgKCRzbGlkZXItY29udGFpbmVyLW1hcmdpbi1yaWdodCAqIC0xKSAoJHNsaWRlci1jb250YWluZXItbWFyZ2luLWJvdHRvbSAqIC0xKSAoJHNsaWRlci1jb250YWluZXItbWFyZ2luLWxlZnQgKiAtMSk7XG59XG5cbi8qIEl0ZW1zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIE9wdGltaXplIGFuaW1hdGlvblxuICogMi4gQ3JlYXRlIGEgY29udGFpbmluZyBibG9jay4gSW4gU2FmYXJpIGl0J3MgbmVpdGhlciBjcmVhdGVkIGJ5IGB0cmFuc2Zvcm1gIG5vciBgd2lsbC1jaGFuZ2VgLlxuICovXG5cbi51ay1zbGlkZXItaXRlbXMge1xuICAgIC8qIDEgKi9cbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAgIC8qIDIgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qXG4gKiAxLiBSZXNldCBsaXN0IHN0eWxlIHdpdGhvdXQgaW50ZXJmZXJpbmcgd2l0aCBncmlkXG4gKiAyLiBQcmV2ZW50IGRpc3BsYXlpbmcgdGhlIGNhbGxvdXQgaW5mb3JtYXRpb24gb24gaU9TLlxuICovXG5cbi51ay1zbGlkZXItaXRlbXM6bm90KC51ay1ncmlkKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAvKiAxICovXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAvKiAyICovXG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xufVxuXG4udWstc2xpZGVyLWl0ZW1zLnVrLWdyaWQgeyBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuXG5cbi8qIEl0ZW1cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gTGV0IGl0ZW1zIHRha2UgY29udGVudCBkaW1lbnNpb25zICgwIDAgYXV0bylcbiAqIDIuIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0XG4gKiAzLiBEaXNhYmxlIGhvcml6b250YWwgcGFubmluZyBnZXN0dXJlcyBpbiBJRTExIGFuZCBFZGdlXG4gKiA0LiBTdXBwcmVzcyBvdXRsaW5lIG9uIGZvY3VzXG4gKi9cblxuLnVrLXNsaWRlci1pdGVtcyA+ICoge1xuICAgIC8qIDEgKi9cbiAgICBmbGV4OiBub25lO1xuICAgIC8qIDIgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLyogMyAqL1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi8qIDQgKi9cbi51ay1zbGlkZXItaXRlbXMgPiA6Zm9jdXMgeyBvdXRsaW5lOiBub25lOyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stc2xpZGVyLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1zbGlkZXItbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stc2xpZGVyKCl7fVxuLy8gQG1peGluIGhvb2stc2xpZGVyLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIFN0aWNreVxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gbWFrZSBlbGVtZW50cyBzdGlja3kgaW4gdGhlIHZpZXdwb3J0XG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstc3RpY2t5YFxuLy9cbi8vIE1vZGlmaWVyOiAgICAgICAgYHVrLXN0aWNreS1maXhlZGBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1hY3RpdmVgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHN0aWNreS16LWluZGV4OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtei1pbmRleCAtIDIwICFkZWZhdWx0O1xuXG4kc3RpY2t5LWFuaW1hdGlvbi1kdXJhdGlvbjogICAgICAgICAgICAgICAgICAgICAgMC4ycyAhZGVmYXVsdDtcbiRzdGlja3ktcmV2ZXJzZS1hbmltYXRpb24tZHVyYXRpb246ICAgICAgICAgICAgICAwLjJzICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBTdGlja3lcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gUmVzb2x2ZSBmcmFtZSByYXRlIGlzc3VlcyBvbiBkZXZpY2VzIHdpdGggbG93ZXIgZnJhbWUgcmF0ZXMgYnkgZm9yY2luZyBoYXJkd2FyZSBhY2NlbGVyYXRpb25cbiAqL1xuXG4udWstc3RpY2t5LWZpeGVkIHtcbiAgICB6LWluZGV4OiAkc3RpY2t5LXotaW5kZXg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAvKiAxICovXG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKlxuICogRmFzdGVyIGFuaW1hdGlvbnNcbiAqL1xuXG4udWstc3RpY2t5W2NsYXNzKj0ndWstYW5pbWF0aW9uLSddIHsgYW5pbWF0aW9uLWR1cmF0aW9uOiAkc3RpY2t5LWFuaW1hdGlvbi1kdXJhdGlvbjsgfVxuXG4udWstc3RpY2t5LnVrLWFuaW1hdGlvbi1yZXZlcnNlIHsgYW5pbWF0aW9uLWR1cmF0aW9uOiAkc3RpY2t5LXJldmVyc2UtYW5pbWF0aW9uLWR1cmF0aW9uOyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stc3RpY2t5LW1pc2MpKSB7QGluY2x1ZGUgaG9vay1zdGlja3ktbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stc3RpY2t5LW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIE9mZi1jYW52YXNcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBhbiBvZmYtY2FudmFzIHNpZGViYXJcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1vZmZjYW52YXNgXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstb2ZmY2FudmFzLWJhcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW9mZmNhbnZhcy1jb250YWluZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vZmZjYW52YXMtcGFnZWBcbi8vXG4vLyBBZG9wdGVkOiAgICAgICAgIGB1ay1vZmZjYW52YXMtY2xvc2VgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstb2ZmY2FudmFzLWZsaXBgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vZmZjYW52YXMtYmFyLWFuaW1hdGlvbmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW9mZmNhbnZhcy1yZXZlYWxgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vZmZjYW52YXMtb3ZlcmxheWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW9mZmNhbnZhcy1jb250YWluZXItYW5pbWF0aW9uYFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLW9wZW5gXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJG9mZmNhbnZhcy16LWluZGV4OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtei1pbmRleCAhZGVmYXVsdDtcblxuJG9mZmNhbnZhcy1iYXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDI3MHB4ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc2Vjb25kYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhci1jb2xvci1tb2RlOiAgICAgICAgICAgICAgICAgICAgICAgbGlnaHQgIWRlZmF1bHQ7XG5cbiRvZmZjYW52YXMtYmFyLXdpZHRoLW06ICAgICAgICAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmFyLXBhZGRpbmctdmVydGljYWwtbTogICAgICAgICAgICAgICAkZ2xvYmFsLW1lZGl1bS1ndXR0ZXIgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhci1wYWRkaW5nLWhvcml6b250YWwtbTogICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuXG4kb2ZmY2FudmFzLWNsb3NlLXBvc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtY2xvc2UtcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICA1cHggIWRlZmF1bHQ7XG5cbiRvZmZjYW52YXMtb3ZlcmxheS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLDAuMSkgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IE9mZi1jYW52YXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gSGlkZSBieSBkZWZhdWx0XG4gKiAyLiBTZXQgcG9zaXRpb25cbiAqL1xuXG4udWstb2ZmY2FudmFzIHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAvKiAyICovXG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLXotaW5kZXg7XG59XG5cbi8qXG4gKiBGbGlwIG1vZGlmaWVyXG4gKi9cblxuLnVrLW9mZmNhbnZhcy1mbGlwIC51ay1vZmZjYW52YXMge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG59XG5cblxuLyogQmFyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFNldCBwb3NpdGlvblxuICogMi4gU2l6ZSBhbmQgc3R5bGVcbiAqIDMuIEFsbG93IHNjcm9sbGluZ1xuICovXG5cbi51ay1vZmZjYW52YXMtYmFyIHtcbiAgICAvKiAxICovXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogKC0kb2ZmY2FudmFzLWJhci13aWR0aCk7XG4gICAgLyogMiAqL1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6ICRvZmZjYW52YXMtYmFyLXdpZHRoO1xuICAgIHBhZGRpbmc6ICRvZmZjYW52YXMtYmFyLXBhZGRpbmctdmVydGljYWwgJG9mZmNhbnZhcy1iYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGJhY2tncm91bmQ6ICRvZmZjYW52YXMtYmFyLWJhY2tncm91bmQ7XG4gICAgLyogMyAqL1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1vZmZjYW52YXMtYmFyKSkge0BpbmNsdWRlIGhvb2stb2ZmY2FudmFzLWJhcigpO31cbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstb2ZmY2FudmFzLWJhciB7XG4gICAgICAgIGxlZnQ6ICgtJG9mZmNhbnZhcy1iYXItd2lkdGgtbSk7XG4gICAgICAgIHdpZHRoOiAkb2ZmY2FudmFzLWJhci13aWR0aC1tO1xuICAgICAgICBwYWRkaW5nOiAkb2ZmY2FudmFzLWJhci1wYWRkaW5nLXZlcnRpY2FsLW0gJG9mZmNhbnZhcy1iYXItcGFkZGluZy1ob3Jpem9udGFsLW07XG4gICAgfVxuXG59XG5cbi8vIENvbG9yIE1vZGVcbkBpZiAoICRvZmZjYW52YXMtYmFyLWNvbG9yLW1vZGUgPT0gbGlnaHQgKSB7IC51ay1vZmZjYW52YXMtYmFyIHsgQGV4dGVuZCAudWstbGlnaHQgIW9wdGlvbmFsO30gfVxuQGlmICggJG9mZmNhbnZhcy1iYXItY29sb3ItbW9kZSA9PSBkYXJrICkgeyAudWstb2ZmY2FudmFzLWJhciB7IEBleHRlbmQgLnVrLWRhcmsgIW9wdGlvbmFsO30gfVxuXG4vKiBGbGlwIG1vZGlmaWVyICovXG4udWstb2ZmY2FudmFzLWZsaXAgLnVrLW9mZmNhbnZhcy1iYXIge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6ICgtJG9mZmNhbnZhcy1iYXItd2lkdGgpO1xufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1vZmZjYW52YXMtZmxpcCAudWstb2ZmY2FudmFzLWJhciB7IHJpZ2h0OiAoLSRvZmZjYW52YXMtYmFyLXdpZHRoLW0pOyB9XG5cbn1cblxuLypcbiAqIE9wZW5cbiAqL1xuXG4udWstb3BlbiA+IC51ay1vZmZjYW52YXMtYmFyIHsgbGVmdDogMDsgfVxuLnVrLW9mZmNhbnZhcy1mbGlwIC51ay1vcGVuID4gLnVrLW9mZmNhbnZhcy1iYXIge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG59XG5cbi8qXG4gKiBTbGlkZSBBbmltYXRpb24gKFVzZWQgaW4gc2xpZGUgYW5kIHB1c2ggbW9kZSlcbiAqL1xuXG4udWstb2ZmY2FudmFzLWJhci1hbmltYXRpb24geyB0cmFuc2l0aW9uOiBsZWZ0IDAuM3MgZWFzZS1vdXQ7IH1cbi51ay1vZmZjYW52YXMtZmxpcCAudWstb2ZmY2FudmFzLWJhci1hbmltYXRpb24geyB0cmFuc2l0aW9uLXByb3BlcnR5OiByaWdodDsgfVxuXG4vKlxuICogUmV2ZWFsIEFuaW1hdGlvblxuICogMS4gU2V0IHBvc2l0aW9uXG4gKiAyLiBDbGlwIHRoZSBiYXJcbiAqIDMuIEFuaW1hdGlvblxuICogNC4gUmVzZXQgcG9zaXRpb25cbiAqL1xuXG4udWstb2ZmY2FudmFzLXJldmVhbCB7XG4gICAgLyogMSAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgLyogMiAqL1xuICAgIHdpZHRoOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLyogMyAqL1xuICAgIHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZS1vdXQ7XG59XG5cbi51ay1vZmZjYW52YXMtcmV2ZWFsIC51ay1vZmZjYW52YXMtYmFyIHtcbiAgICAvKiA0ICovXG4gICAgbGVmdDogMDtcbn1cblxuLnVrLW9mZmNhbnZhcy1mbGlwIC51ay1vZmZjYW52YXMtcmV2ZWFsIC51ay1vZmZjYW52YXMtYmFyIHtcbiAgICAvKiA0ICovXG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbn1cblxuLnVrLW9wZW4gPiAudWstb2ZmY2FudmFzLXJldmVhbCB7IHdpZHRoOiAkb2ZmY2FudmFzLWJhci13aWR0aDsgfVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1vcGVuID4gLnVrLW9mZmNhbnZhcy1yZXZlYWwgeyB3aWR0aDogJG9mZmNhbnZhcy1iYXItd2lkdGgtbTsgfVxuXG59XG5cbi8qXG4gKiBGbGlwIG1vZGlmaWVyXG4gKi9cblxuLnVrLW9mZmNhbnZhcy1mbGlwIC51ay1vZmZjYW52YXMtcmV2ZWFsIHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xufVxuXG5cbi8qIENsb3NlXG4gKiBBZG9wdHMgYHVrLWNsb3NlYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1vZmZjYW52YXMtY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLXotaW5kZXg7XG4gICAgdG9wOiAkb2ZmY2FudmFzLWNsb3NlLXBvc2l0aW9uO1xuICAgIHJpZ2h0OiAkb2ZmY2FudmFzLWNsb3NlLXBvc2l0aW9uO1xuICAgIHBhZGRpbmc6ICRvZmZjYW52YXMtY2xvc2UtcGFkZGluZztcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stb2ZmY2FudmFzLWNsb3NlKSkge0BpbmNsdWRlIGhvb2stb2ZmY2FudmFzLWNsb3NlKCk7fVxufVxuXG5cbi8qIE92ZXJsYXlcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogT3ZlcmxheSB0aGUgd2hvbGUgcGFnZS4gTmVlZGVkIGZvciB0aGUgYDo6YmVmb3JlYFxuICogMS4gVXNpbmcgYDEwMHZ3YCBzbyBubyBtb2RpZmljYXRpb24gaXMgbmVlZGVkIHdoZW4gb2ZmLWNhbnZhcyBpcyBmbGlwcGVkXG4gKiAyLiBBbGxvdyBmb3IgY2xvc2luZyB3aXRoIHN3aXBlIGdlc3R1cmUgb24gZGV2aWNlcyB3aXRoIHBvaW50ZXIgZXZlbnRzLlxuICovXG5cbi51ay1vZmZjYW52YXMtb3ZlcmxheSB7XG4gICAgLyogMSAqL1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICAvKiAyICovXG4gICAgdG91Y2gtYWN0aW9uOiBub25lO1xufVxuXG4vKlxuICogMS4gTWFzayB0aGUgd2hvbGUgcGFnZVxuICogMi4gRmFkZS1pbiB0cmFuc2l0aW9uXG4gKi9cblxuLnVrLW9mZmNhbnZhcy1vdmVybGF5OjpiZWZvcmUge1xuICAgIC8qIDEgKi9cbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZDogJG9mZmNhbnZhcy1vdmVybGF5LWJhY2tncm91bmQ7XG4gICAgLyogMiAqL1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBsaW5lYXI7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW9mZmNhbnZhcy1vdmVybGF5KSkge0BpbmNsdWRlIGhvb2stb2ZmY2FudmFzLW92ZXJsYXkoKTt9XG59XG5cbi51ay1vZmZjYW52YXMtb3ZlcmxheS51ay1vcGVuOjpiZWZvcmUgeyBvcGFjaXR5OiAxOyB9XG5cblxuLyogUHJldmVudCBzY3JvbGxpbmdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUHJldmVudCBob3Jpem9udGFsIHNjcm9sbGJhciB3aGVuIHRoZSBjb250ZW50IGlzIHNsaWRlLW91dFxuICogSGFzIHRvIGJlIG9uIHRoZSBgaHRtbGAgZWxlbWVudCB0b28gdG8gbWFrZSBpdCB3b3JrIG9uIHRoZSBgYm9keWBcbiAqL1xuXG4udWstb2ZmY2FudmFzLXBhZ2UsXG4udWstb2ZmY2FudmFzLWNvbnRhaW5lciB7IG92ZXJmbG93LXg6IGhpZGRlbjsgfVxuXG5cbi8qIENvbnRhaW5lclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBQcmVwYXJlIHNsaWRlLW91dCBhbmltYXRpb24gKFVzZWQgaW4gcmV2ZWFsIGFuZCBwdXNoIG1vZGUpXG4gKiBVc2luZyBgcG9zaXRpb246IGxlZnRgIGluc3RlYWQgb2YgYHRyYW5zZm9ybWAgYmVjYXVzZSBwb3NpdGlvbiBgZml4ZWRgIGVsZW1lbnRzIGxpa2Ugc3RpY2t5IG5hdmJhcnNcbiAqIGxvc2UgdGhlaXIgZml4ZWQgc3RhdGUgYW5kIGJlaGF2ZXMgbGlrZSBgYWJzb2x1dGVgIHdpdGhpbiBhIHRyYW5zZm9ybWVkIGNvbnRhaW5lclxuICogMS4gUHJvdmlkZSBhIGZpeGVkIHdpZHRoIGFuZCBwcmV2ZW50IHNocmlua2luZ1xuICovXG5cbi51ay1vZmZjYW52YXMtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2l0aW9uOiBsZWZ0IDAuM3MgZWFzZS1vdXQ7XG4gICAgLyogMSAqL1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi8qXG4gKiBBY3RpdmF0ZSBzbGlkZS1vdXQgYW5pbWF0aW9uXG4gKi9cblxuOm5vdCgudWstb2ZmY2FudmFzLWZsaXApLnVrLW9mZmNhbnZhcy1jb250YWluZXItYW5pbWF0aW9uIHsgbGVmdDogJG9mZmNhbnZhcy1iYXItd2lkdGg7IH1cblxuLnVrLW9mZmNhbnZhcy1mbGlwLnVrLW9mZmNhbnZhcy1jb250YWluZXItYW5pbWF0aW9uIHsgbGVmdDogKC0kb2ZmY2FudmFzLWJhci13aWR0aCk7IH1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICA6bm90KC51ay1vZmZjYW52YXMtZmxpcCkudWstb2ZmY2FudmFzLWNvbnRhaW5lci1hbmltYXRpb24geyBsZWZ0OiAkb2ZmY2FudmFzLWJhci13aWR0aC1tOyB9XG5cbiAgICAudWstb2ZmY2FudmFzLWZsaXAudWstb2ZmY2FudmFzLWNvbnRhaW5lci1hbmltYXRpb24geyBsZWZ0OiAoLSRvZmZjYW52YXMtYmFyLXdpZHRoLW0pOyB9XG5cbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1vZmZjYW52YXMtbWlzYykpIHtAaW5jbHVkZSBob29rLW9mZmNhbnZhcy1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1vZmZjYW52YXMtYmFyKCl7fVxuLy8gQG1peGluIGhvb2stb2ZmY2FudmFzLWNsb3NlKCl7fVxuLy8gQG1peGluIGhvb2stb2ZmY2FudmFzLW92ZXJsYXkoKXt9XG4vLyBAbWl4aW4gaG9vay1vZmZjYW52YXMtbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgU3dpdGNoZXJcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIG5hdmlnYXRlIHRocm91Z2ggZGlmZmVyZW50IGNvbnRlbnQgcGFuZXNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1zd2l0Y2hlcmBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1hY3RpdmVgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFN3aXRjaGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFJlc2V0IGxpc3RcbiAqL1xuXG4udWstc3dpdGNoZXIge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cblxuLyogSXRlbXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogSGlkZSBub3QgYWN0aXZlIGl0ZW1zXG4gKi9cblxuLnVrLXN3aXRjaGVyID4gOm5vdCgudWstYWN0aXZlKSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG5cbi51ay1zd2l0Y2hlciA+ICogPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1zd2l0Y2hlci1taXNjKSkge0BpbmNsdWRlIGhvb2stc3dpdGNoZXItbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stc3dpdGNoZXItbWlzYygpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIExlYWRlclxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGRvdCBsZWFkZXJzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstbGVhZGVyYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRsZWFkZXItZmlsbC1jb250ZW50OiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnF1b3RlKCcuJykgIWRlZmF1bHQ7XG4kbGVhZGVyLWZpbGwtbWFyZ2luLWxlZnQ6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zbWFsbC1ndXR0ZXIgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IExlYWRlclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1sZWFkZXIgeyBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qXG4gKiAxLiBQbGFjZSBlbGVtZW50IGluIHRleHQgZmxvd1xuICogMi4gTmV2ZXIgYnJlYWsgaW50byBhIG5ldyBsaW5lXG4gKiAzLiBHZXQgYSBzdHJpbmcgYmFjayB3aXRoIGFzIG1hbnkgcmVwZWF0aW5nIGNoYXJhY3RlcnMgdG8gZmlsbCB0aGUgY29udGFpbmVyXG4gKiA0LiBQcmV2ZW50IHdyYXBwaW5nLiBPdmVyZmxvd2luZyBjaGFyYWN0ZXJzIHdpbGwgYmUgY2xpcHBlZCBieSB0aGUgY29udGFpbmVyXG4gKi9cblxuLnVrLWxlYWRlci1maWxsOjphZnRlciB7XG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogJGxlYWRlci1maWxsLW1hcmdpbi1sZWZ0O1xuICAgIC8qIDIgKi9cbiAgICB3aWR0aDogMDtcbiAgICAvKiAzICovXG4gICAgY29udGVudDogYXR0cihkYXRhLWZpbGwpO1xuICAgIC8qIDQgKi9cbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1sZWFkZXIpKSB7QGluY2x1ZGUgaG9vay1sZWFkZXIoKTt9XG59XG5cbi8qXG4gKiBIaWRlIGlmIG1lZGlhIGRvZXMgbm90IG1hdGNoXG4gKi9cblxuLnVrLWxlYWRlci1maWxsLnVrLWxlYWRlci1oaWRlOjphZnRlciB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLypcbiAqIFBhc3MgZmlsbCBjaGFyYWN0ZXIgdG8gSlNcbiAqL1xuXG4udWstbGVhZGVyLWZpbGwtY29udGVudDo6YmVmb3JlIHsgY29udGVudDogJyN7JGxlYWRlci1maWxsLWNvbnRlbnR9JzsgfVxuOnJvb3QgeyAtLXVrLWxlYWRlci1maWxsLWNvbnRlbnQ6ICN7JGxlYWRlci1maWxsLWNvbnRlbnR9OyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stbGVhZGVyLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1sZWFkZXItbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stbGVhZGVyKCl7fVxuLy8gQG1peGluIGhvb2stbGVhZGVyLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWxlYWRlcigpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgTm90aWZpY2F0aW9uXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgbm90aWZpY2F0aW9uIG1lc3NhZ2VzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstbm90aWZpY2F0aW9uYFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLW5vdGlmaWNhdGlvbi1tZXNzYWdlYFxuLy9cbi8vIEFkb3B0ZWQ6ICAgICAgICAgYHVrLW5vdGlmaWNhdGlvbi1jbG9zZWBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1ub3RpZmljYXRpb24tdG9wLWNlbnRlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5vdGlmaWNhdGlvbi10b3AtcmlnaHRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ub3RpZmljYXRpb24tYm90dG9tLWxlZnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ub3RpZmljYXRpb24tYm90dG9tLWNlbnRlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5vdGlmaWNhdGlvbi1ib3R0b20tcmlnaHRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ub3RpZmljYXRpb24tbWVzc2FnZS1wcmltYXJ5YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbm90aWZpY2F0aW9uLW1lc3NhZ2Utc3VjY2Vzc2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5vdGlmaWNhdGlvbi1tZXNzYWdlLXdhcm5pbmdgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ub3RpZmljYXRpb24tbWVzc2FnZS1kYW5nZXJgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJG5vdGlmaWNhdGlvbi1wb3NpdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLXotaW5kZXg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC16LWluZGV4ICsgNDAgIWRlZmF1bHQ7XG4kbm90aWZpY2F0aW9uLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG5cbiRub3RpZmljYXRpb24tbWVzc2FnZS1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1tZXNzYWdlLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZ3V0dGVyICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1tZXNzYWdlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRub3RpZmljYXRpb24tbWVzc2FnZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1tZXNzYWdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRub3RpZmljYXRpb24tbWVzc2FnZS1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAxLjQgIWRlZmF1bHQ7XG5cbiRub3RpZmljYXRpb24tY2xvc2UtdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkbm90aWZpY2F0aW9uLW1lc3NhZ2UtcGFkZGluZyArIDVweCAhZGVmYXVsdDtcbiRub3RpZmljYXRpb24tY2xvc2UtcmlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkbm90aWZpY2F0aW9uLW1lc3NhZ2UtcGFkZGluZyAhZGVmYXVsdDtcblxuJG5vdGlmaWNhdGlvbi1tZXNzYWdlLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAgICAgICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1tZXNzYWdlLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc3VjY2Vzcy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1tZXNzYWdlLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAgICAgICRnbG9iYWwtd2FybmluZy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJG5vdGlmaWNhdGlvbi1tZXNzYWdlLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZGFuZ2VyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IE5vdGlmaWNhdGlvblxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBTZXQgcG9zaXRpb25cbiAqIDIuIERpbWVuc2lvbnNcbiAqL1xuXG4udWstbm90aWZpY2F0aW9uIHtcbiAgICAvKiAxICovXG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogJG5vdGlmaWNhdGlvbi1wb3NpdGlvbjtcbiAgICBsZWZ0OiAkbm90aWZpY2F0aW9uLXBvc2l0aW9uO1xuICAgIHotaW5kZXg6ICRub3RpZmljYXRpb24tei1pbmRleDtcbiAgICAvKiAyICovXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogJG5vdGlmaWNhdGlvbi13aWR0aDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbm90aWZpY2F0aW9uKSkge0BpbmNsdWRlIGhvb2stbm90aWZpY2F0aW9uKCk7fVxufVxuXG5cbi8qIFBvc2l0aW9uIG1vZGlmaWVyc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW5vdGlmaWNhdGlvbi10b3AtcmlnaHQsXG4udWstbm90aWZpY2F0aW9uLWJvdHRvbS1yaWdodCB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogJG5vdGlmaWNhdGlvbi1wb3NpdGlvbjtcbn1cblxuLnVrLW5vdGlmaWNhdGlvbi10b3AtY2VudGVyLFxuLnVrLW5vdGlmaWNhdGlvbi1ib3R0b20tY2VudGVyIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6ICgkbm90aWZpY2F0aW9uLXdpZHRoIC8gLTIpO1xufVxuXG4udWstbm90aWZpY2F0aW9uLWJvdHRvbS1sZWZ0LFxuLnVrLW5vdGlmaWNhdGlvbi1ib3R0b20tcmlnaHQsXG4udWstbm90aWZpY2F0aW9uLWJvdHRvbS1jZW50ZXIge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206ICRub3RpZmljYXRpb24tcG9zaXRpb247XG59XG5cblxuLyogUmVzcG9uc2l2ZW5lc3Ncbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIFBob25lcyBwb3J0cmFpdCBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXhzbWFsbC1tYXgpIHtcblxuICAgIC51ay1ub3RpZmljYXRpb24ge1xuICAgICAgICBsZWZ0OiAkbm90aWZpY2F0aW9uLXBvc2l0aW9uO1xuICAgICAgICByaWdodDogJG5vdGlmaWNhdGlvbi1wb3NpdGlvbjtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbn1cblxuXG4vKiBNZXNzYWdlXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbm90aWZpY2F0aW9uLW1lc3NhZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAkbm90aWZpY2F0aW9uLW1lc3NhZ2UtcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kOiAkbm90aWZpY2F0aW9uLW1lc3NhZ2UtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJG5vdGlmaWNhdGlvbi1tZXNzYWdlLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJG5vdGlmaWNhdGlvbi1tZXNzYWdlLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJG5vdGlmaWNhdGlvbi1tZXNzYWdlLWxpbmUtaGVpZ2h0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2UpKSB7QGluY2x1ZGUgaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZSgpO31cbn1cblxuKiArIC51ay1ub3RpZmljYXRpb24tbWVzc2FnZSB7IG1hcmdpbi10b3A6ICRub3RpZmljYXRpb24tbWVzc2FnZS1tYXJnaW4tdG9wOyB9XG5cblxuLyogQ2xvc2VcbiAqIEFkb3B0cyBgdWstY2xvc2VgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW5vdGlmaWNhdGlvbi1jbG9zZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAkbm90aWZpY2F0aW9uLWNsb3NlLXRvcDtcbiAgICByaWdodDogJG5vdGlmaWNhdGlvbi1jbG9zZS1yaWdodDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbm90aWZpY2F0aW9uLWNsb3NlKSkge0BpbmNsdWRlIGhvb2stbm90aWZpY2F0aW9uLWNsb3NlKCk7fVxufVxuXG4udWstbm90aWZpY2F0aW9uLW1lc3NhZ2U6aG92ZXIgLnVrLW5vdGlmaWNhdGlvbi1jbG9zZSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cblxuLyogU3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFByaW1hcnlcbiAqL1xuXG4udWstbm90aWZpY2F0aW9uLW1lc3NhZ2UtcHJpbWFyeSB7XG4gICAgY29sb3I6ICRub3RpZmljYXRpb24tbWVzc2FnZS1wcmltYXJ5LWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZS1wcmltYXJ5KSkge0BpbmNsdWRlIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2UtcHJpbWFyeSgpO31cbn1cblxuLypcbiAqIFN1Y2Nlc3NcbiAqL1xuXG4udWstbm90aWZpY2F0aW9uLW1lc3NhZ2Utc3VjY2VzcyB7XG4gICAgY29sb3I6ICRub3RpZmljYXRpb24tbWVzc2FnZS1zdWNjZXNzLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZS1zdWNjZXNzKSkge0BpbmNsdWRlIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2Utc3VjY2VzcygpO31cbn1cblxuLypcbiAqIFdhcm5pbmdcbiAqL1xuXG4udWstbm90aWZpY2F0aW9uLW1lc3NhZ2Utd2FybmluZyB7XG4gICAgY29sb3I6ICRub3RpZmljYXRpb24tbWVzc2FnZS13YXJuaW5nLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZS13YXJuaW5nKSkge0BpbmNsdWRlIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2Utd2FybmluZygpO31cbn1cblxuLypcbiAqIERhbmdlclxuICovXG5cbi51ay1ub3RpZmljYXRpb24tbWVzc2FnZS1kYW5nZXIge1xuICAgIGNvbG9yOiAkbm90aWZpY2F0aW9uLW1lc3NhZ2UtZGFuZ2VyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZS1kYW5nZXIpKSB7QGluY2x1ZGUgaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZS1kYW5nZXIoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stbm90aWZpY2F0aW9uLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1ub3RpZmljYXRpb24tbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stbm90aWZpY2F0aW9uKCl7fVxuLy8gQG1peGluIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2UoKXt9XG4vLyBAbWl4aW4gaG9vay1ub3RpZmljYXRpb24tY2xvc2UoKXt9XG4vLyBAbWl4aW4gaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZS1wcmltYXJ5KCl7fVxuLy8gQG1peGluIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2Utc3VjY2Vzcygpe31cbi8vIEBtaXhpbiBob29rLW5vdGlmaWNhdGlvbi1tZXNzYWdlLXdhcm5pbmcoKXt9XG4vLyBAbWl4aW4gaG9vay1ub3RpZmljYXRpb24tbWVzc2FnZS1kYW5nZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1ub3RpZmljYXRpb24tbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgVG9vbHRpcFxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIHRvb2x0aXBzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstdG9vbHRpcGBcbi8vXG4vLyBNb2RpZmllcnMgICAgICAgIGB1ay10b29sdGlwLXRvcGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRvb2x0aXAtdG9wLWxlZnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10b29sdGlwLXRvcC1yaWdodGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRvb2x0aXAtYm90dG9tYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdG9vbHRpcC1ib3R0b20tbGVmdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRvb2x0aXAtYm90dG9tLXJpZ2h0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstdG9vbHRpcC1sZWZ0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstdG9vbHRpcC1yaWdodGBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1hY3RpdmVgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHRvb2x0aXAtei1pbmRleDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtei1pbmRleCArIDMwICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgICAgICA2cHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzY2NiAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICAgICAgICAycHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEycHggIWRlZmF1bHQ7XG5cbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBUb29sdGlwXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIEhpZGUgYnkgZGVmYXVsdFxuICogMi4gUG9zaXRpb25cbiAqIDMuIFJlbW92ZSB0b29sdGlwIGZyb20gZG9jdW1lbnQgZmxvdyB0byBrZWVwIHRoZSBVSWtpdCBjb250YWluZXIgZnJvbSBjaGFuZ2luZyBpdHMgc2l6ZSB3aGVuIGluamVjdGVkIGludG8gdGhlIGRvY3VtZW50IGluaXRpYWxseVxuICogNC4gRGltZW5zaW9uc1xuICogNS4gU3R5bGVcbiAqL1xuXG4udWstdG9vbHRpcCB7XG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgLyogMiAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAkdG9vbHRpcC16LWluZGV4O1xuICAgIC8qIDMgKi9cbiAgICB0b3A6IDA7XG4gICAgLyogNCAqL1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG4gICAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy12ZXJ0aWNhbCAkdG9vbHRpcC1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgLyogNSAqL1xuICAgIGJhY2tncm91bmQ6ICR0b29sdGlwLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cztcbiAgICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gICAgZm9udC1zaXplOiAkdG9vbHRpcC1mb250LXNpemU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRvb2x0aXApKSB7QGluY2x1ZGUgaG9vay10b29sdGlwKCk7fVxufVxuXG4vKiBTaG93ICovXG4udWstdG9vbHRpcC51ay1hY3RpdmUgeyBkaXNwbGF5OiBibG9jazsgfVxuXG5cbi8qIERpcmVjdGlvbiAvIEFsaWdubWVudCBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBEaXJlY3Rpb24gKi9cbltjbGFzcyo9J3VrLXRvb2x0aXAtdG9wJ10geyBtYXJnaW4tdG9wOiAoLSR0b29sdGlwLW1hcmdpbik7IH1cbltjbGFzcyo9J3VrLXRvb2x0aXAtYm90dG9tJ10geyBtYXJnaW4tdG9wOiAkdG9vbHRpcC1tYXJnaW47IH1cbltjbGFzcyo9J3VrLXRvb2x0aXAtbGVmdCddIHsgbWFyZ2luLWxlZnQ6ICgtJHRvb2x0aXAtbWFyZ2luKTsgfVxuW2NsYXNzKj0ndWstdG9vbHRpcC1yaWdodCddIHsgbWFyZ2luLWxlZnQ6ICR0b29sdGlwLW1hcmdpbjsgfVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLXRvb2x0aXAtbWlzYykpIHtAaW5jbHVkZSBob29rLXRvb2x0aXAtbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stdG9vbHRpcCgpe31cbi8vIEBtaXhpbiBob29rLXRvb2x0aXAtbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgU29ydGFibGVcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBzb3J0YWJsZSBncmlkcyBhbmQgbGlzdHNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1zb3J0YWJsZWBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1zb3J0YWJsZS1kcmFnYFxuLy8gICAgICAgICAgICAgICAgICBgdWstc29ydGFibGUtcGxhY2Vob2xkZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zb3J0YWJsZS1oYW5kbGVgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstc29ydGFibGUtZW1wdHlgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstZHJhZ2Bcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kc29ydGFibGUtZHJhZ2dlZC16LWluZGV4OiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC16LWluZGV4ICsgNTAgIWRlZmF1bHQ7XG5cbiRzb3J0YWJsZS1wbGFjZWhvbGRlci1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kc29ydGFibGUtZW1wdHktaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogU29ydGFibGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstc29ydGFibGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc29ydGFibGUpKSB7QGluY2x1ZGUgaG9vay1zb3J0YWJsZSgpO31cbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG5cbi51ay1zb3J0YWJsZSA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8qIERyYWdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstc29ydGFibGUtZHJhZyB7XG4gICAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG4gICAgei1pbmRleDogJHNvcnRhYmxlLWRyYWdnZWQtei1pbmRleCAhaW1wb3J0YW50O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zb3J0YWJsZS1kcmFnKSkge0BpbmNsdWRlIGhvb2stc29ydGFibGUtZHJhZygpO31cbn1cblxuXG4vKiBQbGFjZWhvbGRlclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1zb3J0YWJsZS1wbGFjZWhvbGRlciB7XG4gICAgb3BhY2l0eTogJHNvcnRhYmxlLXBsYWNlaG9sZGVyLW9wYWNpdHk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNvcnRhYmxlLXBsYWNlaG9sZGVyKSkge0BpbmNsdWRlIGhvb2stc29ydGFibGUtcGxhY2Vob2xkZXIoKTt9XG59XG5cblxuLyogRW1wdHkgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstc29ydGFibGUtZW1wdHkge1xuICAgIG1pbi1oZWlnaHQ6ICRzb3J0YWJsZS1lbXB0eS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNvcnRhYmxlLWVtcHR5KSkge0BpbmNsdWRlIGhvb2stc29ydGFibGUtZW1wdHkoKTt9XG59XG5cblxuLyogSGFuZGxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogSG92ZXIgKi9cbi51ay1zb3J0YWJsZS1oYW5kbGU6aG92ZXIgeyBjdXJzb3I6IG1vdmU7IH1cblxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLXNvcnRhYmxlLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1zb3J0YWJsZS1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1zb3J0YWJsZSgpe31cbi8vIEBtaXhpbiBob29rLXNvcnRhYmxlLWRyYWcoKXt9XG4vLyBAbWl4aW4gaG9vay1zb3J0YWJsZS1wbGFjZWhvbGRlcigpe31cbi8vIEBtaXhpbiBob29rLXNvcnRhYmxlLWVtcHR5KCl7fVxuLy8gQG1peGluIGhvb2stc29ydGFibGUtbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgQ291bnRkb3duXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgY291bnRkb3duIHRpbWVyc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWNvdW50ZG93bmBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1jb3VudGRvd24tbnVtYmVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstY291bnRkb3duLXNlcGFyYXRvcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWNvdW50ZG93bi1sYWJlbGBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kY291bnRkb3duLW51bWJlci1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgMC44ICFkZWZhdWx0O1xuJGNvdW50ZG93bi1udW1iZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7IC8vIDMycHhcbiRjb3VudGRvd24tbnVtYmVyLWZvbnQtc2l6ZS1zOiAgICAgICAgICAgICAgICAgICA0cmVtICFkZWZhdWx0OyAvLyA2NHB4XG4kY291bnRkb3duLW51bWJlci1mb250LXNpemUtbTogICAgICAgICAgICAgICAgICAgNnJlbSAhZGVmYXVsdDsgLy8gOTZweFxuXG4kY291bnRkb3duLXNlcGFyYXRvci1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgMS42ICFkZWZhdWx0O1xuJGNvdW50ZG93bi1zZXBhcmF0b3ItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIDE2cHhcbiRjb3VudGRvd24tc2VwYXJhdG9yLWZvbnQtc2l6ZS1zOiAgICAgICAgICAgICAgICAycmVtICFkZWZhdWx0OyAvLyAzMnB4XG4kY291bnRkb3duLXNlcGFyYXRvci1mb250LXNpemUtbTogICAgICAgICAgICAgICAgM3JlbSAhZGVmYXVsdDsgLy8gNDhweFxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBDb3VudGRvd25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstY291bnRkb3duIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY291bnRkb3duKSkge0BpbmNsdWRlIGhvb2stY291bnRkb3duKCk7fVxufVxuXG5cbi8qIEl0ZW1cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstY291bnRkb3duLW51bWJlcixcbi51ay1jb3VudGRvd24tc2VwYXJhdG9yIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY291bnRkb3duLWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1jb3VudGRvd24taXRlbSgpO31cbn1cblxuXG4vKiBOdW1iZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qXG4gKiAxLiBNYWtlIG51bWJlcnMgYWxsIG9mIHRoZSBzYW1lIHNpemUgdG8gcHJldmVudCBqdW1waW5nLiBNdXN0IGJlIHN1cHBvcnRlZCBieSB0aGUgZm9udC5cbiAqIDIuIFN0eWxlXG4gKi9cblxuLnVrLWNvdW50ZG93bi1udW1iZXIge1xuICAgIC8qIDEgKi9cbiAgICBmb250LXZhcmlhbnQtbnVtZXJpYzogdGFidWxhci1udW1zO1xuICAgIC8qIDIgKi9cbiAgICBmb250LXNpemU6ICRjb3VudGRvd24tbnVtYmVyLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGNvdW50ZG93bi1udW1iZXItbGluZS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWNvdW50ZG93bi1udW1iZXIpKSB7QGluY2x1ZGUgaG9vay1jb3VudGRvd24tbnVtYmVyKCk7fVxufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG5cbiAgICAudWstY291bnRkb3duLW51bWJlciB7IGZvbnQtc2l6ZTogJGNvdW50ZG93bi1udW1iZXItZm9udC1zaXplLXM7IH1cblxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1jb3VudGRvd24tbnVtYmVyIHsgZm9udC1zaXplOiAkY291bnRkb3duLW51bWJlci1mb250LXNpemUtbTsgfVxuXG59XG5cblxuLyogU2VwYXJhdG9yXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWNvdW50ZG93bi1zZXBhcmF0b3Ige1xuICAgIGZvbnQtc2l6ZTogJGNvdW50ZG93bi1zZXBhcmF0b3ItZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkY291bnRkb3duLXNlcGFyYXRvci1saW5lLWhlaWdodDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stY291bnRkb3duLXNlcGFyYXRvcikpIHtAaW5jbHVkZSBob29rLWNvdW50ZG93bi1zZXBhcmF0b3IoKTt9XG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcblxuICAgIC51ay1jb3VudGRvd24tc2VwYXJhdG9yIHsgZm9udC1zaXplOiAkY291bnRkb3duLXNlcGFyYXRvci1mb250LXNpemUtczsgfVxuXG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLWNvdW50ZG93bi1zZXBhcmF0b3IgeyBmb250LXNpemU6ICRjb3VudGRvd24tc2VwYXJhdG9yLWZvbnQtc2l6ZS1tOyB9XG5cbn1cblxuXG4vKiBMYWJlbFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb3VudGRvd24tbGFiZWwge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1jb3VudGRvd24tbGFiZWwpKSB7QGluY2x1ZGUgaG9vay1jb3VudGRvd24tbGFiZWwoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stY291bnRkb3duLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1jb3VudGRvd24tbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stY291bnRkb3duKCl7fVxuLy8gQG1peGluIGhvb2stY291bnRkb3duLWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1jb3VudGRvd24tbnVtYmVyKCl7fVxuLy8gQG1peGluIGhvb2stY291bnRkb3duLXNlcGFyYXRvcigpe31cbi8vIEBtaXhpbiBob29rLWNvdW50ZG93bi1sYWJlbCgpe31cbi8vIEBtaXhpbiBob29rLWNvdW50ZG93bi1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1jb3VudGRvd24taXRlbSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtY291bnRkb3duLW51bWJlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtY291bnRkb3duLXNlcGFyYXRvcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtY291bnRkb3duLWxhYmVsKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBHcmlkXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBjcmVhdGUgcmVzcG9uc2l2ZSwgZmx1aWQgYW5kIG5lc3RhYmxlIGdyaWRzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstZ3JpZGBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1ncmlkLXNtYWxsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZ3JpZC1tZWRpdW1gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ncmlkLWxhcmdlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZ3JpZC1jb2xsYXBzZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWdyaWQtZGl2aWRlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWdyaWQtbWF0Y2hgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ncmlkLXN0YWNrYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZ3JpZC1tYXJnaW5gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ncmlkLW1hcmdpbi1zbWFsbGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWdyaWQtbWFyZ2luLW1lZGl1bWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWdyaWQtbWFyZ2luLWxhcmdlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZ3JpZC1tYXJnaW4tY29sbGFwc2VgXG4vL1xuLy8gU3ViLW1vZGlmaWVyOiAgICBgdWstZ3JpZC1pdGVtLW1hdGNoYFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLWZpcnN0LWNvbHVtbmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyaWQtZ3V0dGVyLWhvcml6b250YWwgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbC1sOiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXZlcnRpY2FsLWw6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci1ob3Jpem9udGFsLWwgIWRlZmF1bHQ7XG5cbiRncmlkLXNtYWxsLWd1dHRlci1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWd1dHRlciAhZGVmYXVsdDtcbiRncmlkLXNtYWxsLWd1dHRlci12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAkZ3JpZC1zbWFsbC1ndXR0ZXItaG9yaXpvbnRhbCAhZGVmYXVsdDtcblxuJGdyaWQtbWVkaXVtLWd1dHRlci1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGdyaWQtbWVkaXVtLWd1dHRlci12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICRncmlkLW1lZGl1bS1ndXR0ZXItaG9yaXpvbnRhbCAhZGVmYXVsdDtcblxuJGdyaWQtbGFyZ2UtZ3V0dGVyLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLWd1dHRlciAhZGVmYXVsdDtcbiRncmlkLWxhcmdlLWd1dHRlci12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAkZ3JpZC1sYXJnZS1ndXR0ZXItaG9yaXpvbnRhbCAhZGVmYXVsdDtcbiRncmlkLWxhcmdlLWd1dHRlci1ob3Jpem9udGFsLWw6ICAgICAgICAgICAgICAgICAkZ2xvYmFsLWxhcmdlLWd1dHRlciAhZGVmYXVsdDtcbiRncmlkLWxhcmdlLWd1dHRlci12ZXJ0aWNhbC1sOiAgICAgICAgICAgICAgICAgICAkZ3JpZC1sYXJnZS1ndXR0ZXItaG9yaXpvbnRhbC1sICFkZWZhdWx0O1xuXG4kZ3JpZC1kaXZpZGVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZ3JpZC1kaXZpZGVyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IEdyaWRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQWxsb3cgY2VsbHMgdG8gd3JhcCBpbnRvIHRoZSBuZXh0IGxpbmVcbiAqIDIuIFJlc2V0IGxpc3RcbiAqL1xuXG4udWstZ3JpZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAvKiAxICovXG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIC8qIDIgKi9cbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vKlxuICogR3JpZCBjZWxsXG4gKiBOb3RlOiBTcGFjZSBpcyBhbGxvY2F0ZWQgc29sZWx5IGJhc2VkIG9uIGNvbnRlbnQgZGltZW5zaW9ucywgYnV0IHNocmlua3M6IDAgMSBhdXRvXG4gKiBSZXNldCBtYXJnaW4gZm9yIGUuZy4gcGFyYWdyYXBoc1xuICovXG5cbi51ay1ncmlkID4gKiB7IG1hcmdpbjogMDsgfVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cblxuLnVrLWdyaWQgPiAqID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cblxuLyogR3V0dGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIERlZmF1bHRcbiAqL1xuXG4vKiBIb3Jpem9udGFsICovXG4udWstZ3JpZCB7IG1hcmdpbi1sZWZ0OiAoLSRncmlkLWd1dHRlci1ob3Jpem9udGFsKTsgfVxuLnVrLWdyaWQgPiAqIHsgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbDsgfVxuXG4vKiBWZXJ0aWNhbCAqL1xuLnVrLWdyaWQgKyAudWstZ3JpZCxcbi51ay1ncmlkID4gLnVrLWdyaWQtbWFyZ2luLFxuKiArIC51ay1ncmlkLW1hcmdpbiB7IG1hcmdpbi10b3A6ICRncmlkLWd1dHRlci12ZXJ0aWNhbDsgfVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgLyogSG9yaXpvbnRhbCAqL1xuICAgIC51ay1ncmlkIHsgbWFyZ2luLWxlZnQ6ICgtJGdyaWQtZ3V0dGVyLWhvcml6b250YWwtbCk7IH1cbiAgICAudWstZ3JpZCA+ICogeyBwYWRkaW5nLWxlZnQ6ICRncmlkLWd1dHRlci1ob3Jpem9udGFsLWw7IH1cblxuICAgIC8qIFZlcnRpY2FsICovXG4gICAgLnVrLWdyaWQgKyAudWstZ3JpZCxcbiAgICAudWstZ3JpZCA+IC51ay1ncmlkLW1hcmdpbixcbiAgICAqICsgLnVrLWdyaWQtbWFyZ2luIHsgbWFyZ2luLXRvcDogJGdyaWQtZ3V0dGVyLXZlcnRpY2FsLWw7IH1cblxufVxuXG4vKlxuICogU21hbGxcbiAqL1xuXG4vKiBIb3Jpem9udGFsICovXG4udWstZ3JpZC1zbWFsbCxcbi51ay1ncmlkLWNvbHVtbi1zbWFsbCB7IG1hcmdpbi1sZWZ0OiAoLSRncmlkLXNtYWxsLWd1dHRlci1ob3Jpem9udGFsKTsgfVxuLnVrLWdyaWQtc21hbGwgPiAqLFxuLnVrLWdyaWQtY29sdW1uLXNtYWxsID4gKiAgeyBwYWRkaW5nLWxlZnQ6ICRncmlkLXNtYWxsLWd1dHRlci1ob3Jpem9udGFsOyB9XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZCArIC51ay1ncmlkLXNtYWxsLFxuLnVrLWdyaWQgKyAudWstZ3JpZC1yb3ctc21hbGwsXG4udWstZ3JpZC1zbWFsbCA+IC51ay1ncmlkLW1hcmdpbixcbi51ay1ncmlkLXJvdy1zbWFsbCA+IC51ay1ncmlkLW1hcmdpbixcbiogKyAudWstZ3JpZC1tYXJnaW4tc21hbGwgeyBtYXJnaW4tdG9wOiAkZ3JpZC1zbWFsbC1ndXR0ZXItdmVydGljYWw7IH1cblxuLypcbiAqIE1lZGl1bVxuICovXG5cbi8qIEhvcml6b250YWwgKi9cbi51ay1ncmlkLW1lZGl1bSxcbi51ay1ncmlkLWNvbHVtbi1tZWRpdW0geyBtYXJnaW4tbGVmdDogKC0kZ3JpZC1tZWRpdW0tZ3V0dGVyLWhvcml6b250YWwpOyB9XG4udWstZ3JpZC1tZWRpdW0gPiAqLFxuLnVrLWdyaWQtY29sdW1uLW1lZGl1bSA+ICogeyBwYWRkaW5nLWxlZnQ6ICRncmlkLW1lZGl1bS1ndXR0ZXItaG9yaXpvbnRhbDsgfVxuXG4vKiBWZXJ0aWNhbCAqL1xuLnVrLWdyaWQgKyAudWstZ3JpZC1tZWRpdW0sXG4udWstZ3JpZCArIC51ay1ncmlkLXJvdy1tZWRpdW0sXG4udWstZ3JpZC1tZWRpdW0gPiAudWstZ3JpZC1tYXJnaW4sXG4udWstZ3JpZC1yb3ctbWVkaXVtID4gLnVrLWdyaWQtbWFyZ2luLFxuKiArIC51ay1ncmlkLW1hcmdpbi1tZWRpdW0geyBtYXJnaW4tdG9wOiAkZ3JpZC1tZWRpdW0tZ3V0dGVyLXZlcnRpY2FsOyB9XG5cbi8qXG4gKiBMYXJnZVxuICovXG5cbi8qIEhvcml6b250YWwgKi9cbi51ay1ncmlkLWxhcmdlLFxuLnVrLWdyaWQtY29sdW1uLWxhcmdlIHsgbWFyZ2luLWxlZnQ6ICgtJGdyaWQtbGFyZ2UtZ3V0dGVyLWhvcml6b250YWwpOyB9XG4udWstZ3JpZC1sYXJnZSA+ICosXG4udWstZ3JpZC1jb2x1bW4tbGFyZ2UgPiAqIHsgcGFkZGluZy1sZWZ0OiAkZ3JpZC1sYXJnZS1ndXR0ZXItaG9yaXpvbnRhbDsgfVxuXG4vKiBWZXJ0aWNhbCAqL1xuLnVrLWdyaWQgKyAudWstZ3JpZC1sYXJnZSxcbi51ay1ncmlkICsgLnVrLWdyaWQtcm93LWxhcmdlLFxuLnVrLWdyaWQtbGFyZ2UgPiAudWstZ3JpZC1tYXJnaW4sXG4udWstZ3JpZC1yb3ctbGFyZ2UgPiAudWstZ3JpZC1tYXJnaW4sXG4qICsgLnVrLWdyaWQtbWFyZ2luLWxhcmdlIHsgbWFyZ2luLXRvcDogJGdyaWQtbGFyZ2UtZ3V0dGVyLXZlcnRpY2FsOyB9XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAvKiBIb3Jpem9udGFsICovXG4gICAgLnVrLWdyaWQtbGFyZ2UsXG4gICAgLnVrLWdyaWQtY29sdW1uLWxhcmdlIHsgbWFyZ2luLWxlZnQ6ICgtJGdyaWQtbGFyZ2UtZ3V0dGVyLWhvcml6b250YWwtbCk7IH1cbiAgICAudWstZ3JpZC1sYXJnZSA+ICosXG4gICAgLnVrLWdyaWQtY29sdW1uLWxhcmdlID4gKiB7IHBhZGRpbmctbGVmdDogJGdyaWQtbGFyZ2UtZ3V0dGVyLWhvcml6b250YWwtbDsgfVxuXG4gICAgLyogVmVydGljYWwgKi9cbiAgICAudWstZ3JpZCArIC51ay1ncmlkLWxhcmdlLFxuICAgIC51ay1ncmlkICsgLnVrLWdyaWQtcm93LWxhcmdlLFxuICAgIC51ay1ncmlkLWxhcmdlID4gLnVrLWdyaWQtbWFyZ2luLFxuICAgIC51ay1ncmlkLXJvdy1sYXJnZSA+IC51ay1ncmlkLW1hcmdpbixcbiAgICAqICsgLnVrLWdyaWQtbWFyZ2luLWxhcmdlIHsgbWFyZ2luLXRvcDogJGdyaWQtbGFyZ2UtZ3V0dGVyLXZlcnRpY2FsLWw7IH1cblxufVxuXG4vKlxuICogQ29sbGFwc2VcbiAqL1xuXG4vKiBIb3Jpem9udGFsICovXG4udWstZ3JpZC1jb2xsYXBzZSxcbi51ay1ncmlkLWNvbHVtbi1jb2xsYXBzZSB7IG1hcmdpbi1sZWZ0OiAwOyB9XG4udWstZ3JpZC1jb2xsYXBzZSA+ICosXG4udWstZ3JpZC1jb2x1bW4tY29sbGFwc2UgPiAqIHsgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZCArIC51ay1ncmlkLWNvbGxhcHNlLFxuLnVrLWdyaWQgKyAudWstZ3JpZC1yb3ctY29sbGFwc2UsXG4udWstZ3JpZC1jb2xsYXBzZSA+IC51ay1ncmlkLW1hcmdpbixcbi51ay1ncmlkLXJvdy1jb2xsYXBzZSA+IC51ay1ncmlkLW1hcmdpbiB7IG1hcmdpbi10b3A6IDA7IH1cblxuXG4vKiBEaXZpZGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWdyaWQtZGl2aWRlciA+ICogeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnVrLWdyaWQtZGl2aWRlciA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBib3JkZXItbGVmdDogJGdyaWQtZGl2aWRlci1ib3JkZXItd2lkdGggc29saWQgJGdyaWQtZGl2aWRlci1ib3JkZXI7XG59XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3JkZXItdG9wOiAkZ3JpZC1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkZ3JpZC1kaXZpZGVyLWJvcmRlcjtcbn1cblxuLypcbiAqIERlZmF1bHRcbiAqL1xuXG4vKiBIb3Jpem9udGFsICovXG4udWstZ3JpZC1kaXZpZGVyIHsgbWFyZ2luLWxlZnQ6IC0oJGdyaWQtZ3V0dGVyLWhvcml6b250YWwgKiAyKTsgfVxuLnVrLWdyaWQtZGl2aWRlciA+ICogeyBwYWRkaW5nLWxlZnQ6ICgkZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbCAqIDIpOyB9XG5cbi51ay1ncmlkLWRpdmlkZXIgPiA6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUgeyBsZWZ0OiAkZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbDsgfVxuXG4vKiBWZXJ0aWNhbCAqL1xuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luIHsgbWFyZ2luLXRvcDogKCRncmlkLWd1dHRlci12ZXJ0aWNhbCAqIDIpOyB9XG5cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlIHtcbiAgICB0b3A6ICgtJGdyaWQtZ3V0dGVyLXZlcnRpY2FsKTtcbiAgICBsZWZ0OiAoJGdyaWQtZ3V0dGVyLWhvcml6b250YWwgKiAyKTtcbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC8qIEhvcml6b250YWwgKi9cbiAgICAudWstZ3JpZC1kaXZpZGVyIHsgbWFyZ2luLWxlZnQ6IC0oJGdyaWQtZ3V0dGVyLWhvcml6b250YWwtbCAqIDIpOyB9XG4gICAgLnVrLWdyaWQtZGl2aWRlciA+ICogeyBwYWRkaW5nLWxlZnQ6ICgkZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbC1sICogMik7IH1cblxuICAgIC51ay1ncmlkLWRpdmlkZXIgPiA6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUgeyBsZWZ0OiAkZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbC1sOyB9XG5cbiAgICAvKiBWZXJ0aWNhbCAqL1xuICAgIC51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbiB7IG1hcmdpbi10b3A6ICgkZ3JpZC1ndXR0ZXItdmVydGljYWwtbCAqIDIpOyB9XG5cbiAgICAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7XG4gICAgICAgIHRvcDogKC0kZ3JpZC1ndXR0ZXItdmVydGljYWwtbCk7XG4gICAgICAgIGxlZnQ6ICgkZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbC1sICogMik7XG4gICAgfVxuXG59XG5cbi8qXG4gKiBTbWFsbFxuICovXG5cbi8qIEhvcml6b250YWwgKi9cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1zbWFsbCxcbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1jb2x1bW4tc21hbGwgeyBtYXJnaW4tbGVmdDogLSgkZ3JpZC1zbWFsbC1ndXR0ZXItaG9yaXpvbnRhbCAqIDIpOyB9XG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtc21hbGwgPiAqLFxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWNvbHVtbi1zbWFsbCA+ICogeyBwYWRkaW5nLWxlZnQ6ICgkZ3JpZC1zbWFsbC1ndXR0ZXItaG9yaXpvbnRhbCAqIDIpOyB9XG5cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1zbWFsbCA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSxcbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1jb2x1bW4tc21hbGwgPiA6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUgeyBsZWZ0OiAkZ3JpZC1zbWFsbC1ndXR0ZXItaG9yaXpvbnRhbDsgfVxuXG4vKiBWZXJ0aWNhbCAqL1xuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXNtYWxsLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW4sXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtcm93LXNtYWxsLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW4geyBtYXJnaW4tdG9wOiAoJGdyaWQtc21hbGwtZ3V0dGVyLXZlcnRpY2FsICogMik7IH1cblxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXNtYWxsLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7XG4gICAgdG9wOiAoLSRncmlkLXNtYWxsLWd1dHRlci12ZXJ0aWNhbCk7XG4gICAgbGVmdDogKCRncmlkLXNtYWxsLWd1dHRlci1ob3Jpem9udGFsICogMik7XG59XG5cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1yb3ctc21hbGwudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlIHsgdG9wOiAoLSRncmlkLXNtYWxsLWd1dHRlci12ZXJ0aWNhbCk7IH1cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1jb2x1bW4tc21hbGwudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlIHsgbGVmdDogKCRncmlkLXNtYWxsLWd1dHRlci1ob3Jpem9udGFsICogMik7IH1cblxuLypcbiAqIE1lZGl1bVxuICovXG5cbi8qIEhvcml6b250YWwgKi9cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1tZWRpdW0sXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtY29sdW1uLW1lZGl1bSB7IG1hcmdpbi1sZWZ0OiAtKCRncmlkLW1lZGl1bS1ndXR0ZXItaG9yaXpvbnRhbCAqIDIpOyB9XG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtbWVkaXVtID4gKixcbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1jb2x1bW4tbWVkaXVtID4gKiB7IHBhZGRpbmctbGVmdDogKCRncmlkLW1lZGl1bS1ndXR0ZXItaG9yaXpvbnRhbCAqIDIpOyB9XG5cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1tZWRpdW0gPiA6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUsXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtY29sdW1uLW1lZGl1bSA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSB7IGxlZnQ6ICRncmlkLW1lZGl1bS1ndXR0ZXItaG9yaXpvbnRhbDsgfVxuXG4vKiBWZXJ0aWNhbCAqL1xuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLW1lZGl1bS51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luLFxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXJvdy1tZWRpdW0udWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbiB7IG1hcmdpbi10b3A6ICgkZ3JpZC1tZWRpdW0tZ3V0dGVyLXZlcnRpY2FsICogMik7IH1cblxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLW1lZGl1bS51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luOjpiZWZvcmUge1xuICAgIHRvcDogKC0kZ3JpZC1tZWRpdW0tZ3V0dGVyLXZlcnRpY2FsKTtcbiAgICBsZWZ0OiAoJGdyaWQtbWVkaXVtLWd1dHRlci1ob3Jpem9udGFsICogMik7XG59XG5cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1yb3ctbWVkaXVtLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7IHRvcDogKC0kZ3JpZC1tZWRpdW0tZ3V0dGVyLXZlcnRpY2FsKTsgfVxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWNvbHVtbi1tZWRpdW0udWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlIHsgbGVmdDogKCRncmlkLW1lZGl1bS1ndXR0ZXItaG9yaXpvbnRhbCAqIDIpOyB9XG5cbi8qXG4gKiBMYXJnZVxuICovXG5cbi8qIEhvcml6b250YWwgKi9cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1sYXJnZSxcbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1jb2x1bW4tbGFyZ2UgeyBtYXJnaW4tbGVmdDogLSgkZ3JpZC1sYXJnZS1ndXR0ZXItaG9yaXpvbnRhbCAqIDIpOyB9XG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtbGFyZ2UgPiAqLFxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWNvbHVtbi1sYXJnZSA+ICogeyBwYWRkaW5nLWxlZnQ6ICgkZ3JpZC1sYXJnZS1ndXR0ZXItaG9yaXpvbnRhbCAqIDIpOyB9XG5cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1sYXJnZSA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSxcbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1jb2x1bW4tbGFyZ2UgPiA6bm90KC51ay1maXJzdC1jb2x1bW4pOjpiZWZvcmUgeyBsZWZ0OiAkZ3JpZC1sYXJnZS1ndXR0ZXItaG9yaXpvbnRhbDsgfVxuXG4vKiBWZXJ0aWNhbCAqL1xuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWxhcmdlLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW4sXG4udWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtcm93LWxhcmdlLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW4geyBtYXJnaW4tdG9wOiAoJGdyaWQtbGFyZ2UtZ3V0dGVyLXZlcnRpY2FsICogMik7IH1cblxuLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWxhcmdlLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7XG4gICAgdG9wOiAoLSRncmlkLWxhcmdlLWd1dHRlci12ZXJ0aWNhbCk7XG4gICAgbGVmdDogKCRncmlkLWxhcmdlLWd1dHRlci1ob3Jpem9udGFsICogMik7XG59XG5cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1yb3ctbGFyZ2UudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlIHsgdG9wOiAoLSRncmlkLWxhcmdlLWd1dHRlci12ZXJ0aWNhbCk7IH1cbi51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1jb2x1bW4tbGFyZ2UudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbjo6YmVmb3JlIHsgbGVmdDogKCRncmlkLWxhcmdlLWd1dHRlci1ob3Jpem9udGFsICogMik7IH1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC8qIEhvcml6b250YWwgKi9cbiAgICAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtbGFyZ2UsXG4gICAgLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWNvbHVtbi1sYXJnZSB7IG1hcmdpbi1sZWZ0OiAtKCRncmlkLWxhcmdlLWd1dHRlci1ob3Jpem9udGFsLWwgKiAyKTsgfVxuICAgIC51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1sYXJnZSA+ICosXG4gICAgLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWNvbHVtbi1sYXJnZSA+ICogeyBwYWRkaW5nLWxlZnQ6ICgkZ3JpZC1sYXJnZS1ndXR0ZXItaG9yaXpvbnRhbC1sICogMik7IH1cblxuICAgIC51ay1ncmlkLWRpdmlkZXIudWstZ3JpZC1sYXJnZSA+IDpub3QoLnVrLWZpcnN0LWNvbHVtbik6OmJlZm9yZSxcbiAgICAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtY29sdW1uLWxhcmdlID4gOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlIHsgbGVmdDogJGdyaWQtbGFyZ2UtZ3V0dGVyLWhvcml6b250YWwtbDsgfVxuXG4gICAgLyogVmVydGljYWwgKi9cbiAgICAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtbGFyZ2UudWstZ3JpZC1zdGFjayA+IC51ay1ncmlkLW1hcmdpbixcbiAgICAudWstZ3JpZC1kaXZpZGVyLnVrLWdyaWQtcm93LWxhcmdlLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW4geyBtYXJnaW4tdG9wOiAoJGdyaWQtbGFyZ2UtZ3V0dGVyLXZlcnRpY2FsLWwgKiAyKTsgfVxuXG4gICAgLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWxhcmdlLnVrLWdyaWQtc3RhY2sgPiAudWstZ3JpZC1tYXJnaW46OmJlZm9yZSB7XG4gICAgICAgIHRvcDogKC0kZ3JpZC1sYXJnZS1ndXR0ZXItdmVydGljYWwtbCk7XG4gICAgICAgIGxlZnQ6ICgkZ3JpZC1sYXJnZS1ndXR0ZXItaG9yaXpvbnRhbC1sICogMik7XG4gICAgfVxuXG4gICAgLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLXJvdy1sYXJnZS51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luOjpiZWZvcmUgeyB0b3A6ICgtJGdyaWQtbGFyZ2UtZ3V0dGVyLXZlcnRpY2FsLWwpOyB9XG4gICAgLnVrLWdyaWQtZGl2aWRlci51ay1ncmlkLWNvbHVtbi1sYXJnZS51ay1ncmlkLXN0YWNrID4gLnVrLWdyaWQtbWFyZ2luOjpiZWZvcmUgeyBsZWZ0OiAoJGdyaWQtbGFyZ2UtZ3V0dGVyLWhvcml6b250YWwtbCAqIDIpOyB9XG5cbn1cblxuXG4vKiBNYXRjaCBjaGlsZCBvZiBhIGdyaWQgY2VsbFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBCZWhhdmUgbGlrZSBhIGJsb2NrIGVsZW1lbnRcbiAqIDEuIFdyYXAgaW50byB0aGUgbmV4dCBsaW5lXG4gKiAyLiBUYWtlIHRoZSBmdWxsIHdpZHRoLCBhdCBsZWFzdCAxMDAlLiBPbmx5IGlmIG5vIGNsYXNzIGZyb20gdGhlIFdpZHRoIGNvbXBvbmVudCBpcyBzZXQuXG4gKiAzLiBFeHBhbmQgd2lkdGggZXZlbiBpZiBsYXJnZXIgdGhhbiAxMDAlLCBlLmcuIGJlY2F1c2Ugb2YgbmVnYXRpdmUgbWFyZ2luIChOZWVkZWQgZm9yIG5lc3RlZCBncmlkcylcbiAqL1xuXG4udWstZ3JpZC1tYXRjaCA+ICosXG4udWstZ3JpZC1pdGVtLW1hdGNoIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC8qIDEgKi9cbiAgICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi51ay1ncmlkLW1hdGNoID4gKiA+IDpub3QoW2NsYXNzKj0ndWstd2lkdGgnXSksXG4udWstZ3JpZC1pdGVtLW1hdGNoID4gOm5vdChbY2xhc3MqPSd1ay13aWR0aCddKSB7XG4gICAgLyogMiAqL1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLyogMyAqL1xuICAgIGZsZXg6IGF1dG87XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stZ3JpZC1taXNjKSkge0BpbmNsdWRlIGhvb2stZ3JpZC1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1ncmlkLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRpbnZlcnNlLWdyaWQtZGl2aWRlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuIiwiLy8gTmFtZTogICAgICAgICAgICBOYXZcbi8vIERlc2NyaXB0aW9uOiAgICAgRGVmaW5lcyBzdHlsZXMgZm9yIGxpc3QgbmF2aWdhdGlvbnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1uYXZgXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstbmF2LWhlYWRlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdi1kaXZpZGVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2LXN1YmBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1uYXYtcGFyZW50LWljb25gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXYtZGVmYXVsdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdi1wcmltYXJ5YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2LWNlbnRlcmBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1hY3RpdmVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wYXJlbnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vcGVuYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdG91Y2hgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJG5hdi1pdGVtLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAgIDVweCAhZGVmYXVsdDtcbiRuYXYtaXRlbS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kbmF2LXN1Ymxpc3QtcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgNXB4ICFkZWZhdWx0O1xuJG5hdi1zdWJsaXN0LXBhZGRpbmctbGVmdDogICAgICAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kbmF2LXN1Ymxpc3QtZGVlcGVyLXBhZGRpbmctbGVmdDogICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRuYXYtc3VibGlzdC1pdGVtLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAycHggIWRlZmF1bHQ7XG5cbiRuYXYtcGFyZW50LWljb24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAoJGdsb2JhbC1saW5lLWhlaWdodCAqIDFlbSkgIWRlZmF1bHQ7XG4kbmF2LXBhcmVudC1pY29uLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgJG5hdi1wYXJlbnQtaWNvbi13aWR0aCAhZGVmYXVsdDtcbiRuYXYtcGFyZW50LWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kbmF2LWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgJG5hdi1pdGVtLXBhZGRpbmctdmVydGljYWwgIWRlZmF1bHQ7XG4kbmF2LWhlYWRlci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgJG5hdi1pdGVtLXBhZGRpbmctaG9yaXpvbnRhbCAhZGVmYXVsdDtcbiRuYXYtaGVhZGVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRuYXYtaGVhZGVyLXRleHQtdHJhbnNmb3JtOiAgICAgICAgICAgICAgICAgICAgICB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kbmF2LWhlYWRlci1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRuYXYtZGl2aWRlci1tYXJnaW4tdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICA1cHggIWRlZmF1bHQ7XG4kbmF2LWRpdmlkZXItbWFyZ2luLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcblxuJG5hdi1kZWZhdWx0LWl0ZW0tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LWRlZmF1bHQtaXRlbS1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRuYXYtZGVmYXVsdC1pdGVtLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1kZWZhdWx0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LWRlZmF1bHQtZGl2aWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LWRlZmF1bHQtZGl2aWRlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kbmF2LWRlZmF1bHQtc3VibGlzdC1pdGVtLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRuYXYtZGVmYXVsdC1zdWJsaXN0LWl0ZW0taG92ZXItY29sb3I6ICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1kZWZhdWx0LXN1Ymxpc3QtaXRlbS1hY3RpdmUtY29sb3I6ICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRuYXYtcHJpbWFyeS1pdGVtLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWxhcmdlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRuYXYtcHJpbWFyeS1pdGVtLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJG5hdi1wcmltYXJ5LWl0ZW0tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXByaW1hcnktaXRlbS1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcHJpbWFyeS1pdGVtLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1wcmltYXJ5LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXByaW1hcnktZGl2aWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXByaW1hcnktZGl2aWRlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kbmF2LXByaW1hcnktc3VibGlzdC1pdGVtLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcHJpbWFyeS1zdWJsaXN0LWl0ZW0taG92ZXItY29sb3I6ICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1wcmltYXJ5LXN1Ymxpc3QtaXRlbS1hY3RpdmUtY29sb3I6ICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnRlcm5hbC1uYXYtcGFyZW50LWNsb3NlLWltYWdlOiBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTQlMjIlMjBoZWlnaHQlM0QlMjIxNCUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDE0JTIwMTQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3BvbHlsaW5lJTIwZmlsbCUzRCUyMm5vbmUlMjIlMjBzdHJva2UlM0QlMjIjMDAwJTIyJTIwc3Ryb2tlLXdpZHRoJTNEJTIyMS4xJTIyJTIwcG9pbnRzJTNEJTIyMTAlMjAxJTIwNCUyMDclMjAxMCUyMDEzJTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFXCIgIWRlZmF1bHQ7XG4kaW50ZXJuYWwtbmF2LXBhcmVudC1vcGVuLWltYWdlOiBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTQlMjIlMjBoZWlnaHQlM0QlMjIxNCUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDE0JTIwMTQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3BvbHlsaW5lJTIwZmlsbCUzRCUyMm5vbmUlMjIlMjBzdHJva2UlM0QlMjIjMDAwJTIyJTIwc3Ryb2tlLXdpZHRoJTNEJTIyMS4xJTIyJTIwcG9pbnRzJTNEJTIyMSUyMDQlMjA3JTIwMTAlMjAxMyUyMDQlMjIlMjAlMkYlM0UlMEElM0MlMkZzdmclM0VcIiAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogTmF2XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFJlc2V0XG4gKiAxLiBQcmVwYXJlIGxpc3RzXG4gKiAyLiBQcmVwYXJlIGxpbmtzXG4gKiAzLiBSZW1vdmUgZGVmYXVsdCBmb2N1cyBzdHlsZVxuICovXG5cbi8qIDEgKi9cbi51ay1uYXYsXG4udWstbmF2IHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vKiAyICovXG4udWstbmF2IGxpID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKiAzICovXG4udWstbmF2IGxpID4gYTpmb2N1cyB7IG91dGxpbmU6IG5vbmU7IH1cblxuLypcbiAqIEl0ZW1zXG4gKiBNdXN0IHRhcmdldCBgYWAgZWxlbWVudHMgdG8gZXhjbHVkZSBvdGhlciBlbGVtZW50cyAoZS5nLiBsaXN0cylcbiAqL1xuXG4udWstbmF2ID4gbGkgPiBhIHsgcGFkZGluZzogJG5hdi1pdGVtLXBhZGRpbmctdmVydGljYWwgJG5hdi1pdGVtLXBhZGRpbmctaG9yaXpvbnRhbDsgfVxuXG5cbi8qIFN1Ymxpc3RzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIExldmVsIDJcbiAqIGB1bGAgbmVlZGVkIGZvciBoaWdoZXIgc3BlY2lmaWNpdHkgdG8gb3ZlcnJpZGUgcGFkZGluZ1xuICovXG5cbnVsLnVrLW5hdi1zdWIge1xuICAgIHBhZGRpbmc6ICRuYXYtc3VibGlzdC1wYWRkaW5nLXZlcnRpY2FsIDAgJG5hdi1zdWJsaXN0LXBhZGRpbmctdmVydGljYWwgJG5hdi1zdWJsaXN0LXBhZGRpbmctbGVmdDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2LXN1YikpIHtAaW5jbHVkZSBob29rLW5hdi1zdWIoKTt9XG59XG5cbi8qXG4gKiBMZXZlbCAzIGFuZCBkZWVwZXJcbiAqL1xuXG4udWstbmF2LXN1YiB1bCB7IHBhZGRpbmctbGVmdDogJG5hdi1zdWJsaXN0LWRlZXBlci1wYWRkaW5nLWxlZnQ7IH1cblxuLypcbiAqIEl0ZW1zXG4gKi9cblxuLnVrLW5hdi1zdWIgYSB7IHBhZGRpbmc6ICRuYXYtc3VibGlzdC1pdGVtLXBhZGRpbmctdmVydGljYWwgMDsgfVxuXG5cbi8qIFBhcmVudCBpY29uIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW5hdi1wYXJlbnQtaWNvbiA+IC51ay1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogJG5hdi1wYXJlbnQtaWNvbi13aWR0aDtcbiAgICBoZWlnaHQ6ICRuYXYtcGFyZW50LWljb24taGVpZ2h0O1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtbmF2LXBhcmVudC1jbG9zZS1pbWFnZSwgXCIjMDAwXCIsICRuYXYtcGFyZW50LWljb24tY29sb3IpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2LXBhcmVudC1pY29uKSkge0BpbmNsdWRlIGhvb2stbmF2LXBhcmVudC1pY29uKCk7fVxufVxuXG4udWstbmF2LXBhcmVudC1pY29uID4gLnVrLXBhcmVudC51ay1vcGVuID4gYTo6YWZ0ZXIgeyBAaW5jbHVkZSBzdmctZmlsbCgkaW50ZXJuYWwtbmF2LXBhcmVudC1vcGVuLWltYWdlLCBcIiMwMDBcIiwgJG5hdi1wYXJlbnQtaWNvbi1jb2xvcik7IH1cblxuXG4vKiBIZWFkZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbmF2LWhlYWRlciB7XG4gICAgcGFkZGluZzogJG5hdi1oZWFkZXItcGFkZGluZy12ZXJ0aWNhbCAkbmF2LWhlYWRlci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgdGV4dC10cmFuc2Zvcm06ICRuYXYtaGVhZGVyLXRleHQtdHJhbnNmb3JtO1xuICAgIGZvbnQtc2l6ZTogJG5hdi1oZWFkZXItZm9udC1zaXplO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtaGVhZGVyKSkge0BpbmNsdWRlIGhvb2stbmF2LWhlYWRlcigpO31cbn1cblxuLnVrLW5hdi1oZWFkZXI6bm90KDpmaXJzdC1jaGlsZCkgeyBtYXJnaW4tdG9wOiAkbmF2LWhlYWRlci1tYXJnaW4tdG9wOyB9XG5cblxuLyogRGl2aWRlclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1uYXYtZGl2aWRlciB7XG4gICAgbWFyZ2luOiAkbmF2LWRpdmlkZXItbWFyZ2luLXZlcnRpY2FsICRuYXYtZGl2aWRlci1tYXJnaW4taG9yaXpvbnRhbDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2LWRpdmlkZXIpKSB7QGluY2x1ZGUgaG9vay1uYXYtZGl2aWRlcigpO31cbn1cblxuXG4vKiBEZWZhdWx0IG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW5hdi1kZWZhdWx0IHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2LWRlZmF1bHQpKSB7QGluY2x1ZGUgaG9vay1uYXYtZGVmYXVsdCgpO31cbn1cblxuLypcbiAqIEl0ZW1zXG4gKi9cblxuLnVrLW5hdi1kZWZhdWx0ID4gbGkgPiBhIHtcbiAgICBjb2xvcjogJG5hdi1kZWZhdWx0LWl0ZW0tY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdi1kZWZhdWx0LWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1uYXYtZGVmYXVsdC1pdGVtKCk7fVxufVxuXG4vKiBIb3ZlciArIEZvY3VzICovXG4udWstbmF2LWRlZmF1bHQgPiBsaSA+IGE6aG92ZXIsXG4udWstbmF2LWRlZmF1bHQgPiBsaSA+IGE6Zm9jdXMge1xuICAgIGNvbG9yOiAkbmF2LWRlZmF1bHQtaXRlbS1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2LWRlZmF1bHQtaXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLW5hdi1kZWZhdWx0LWl0ZW0taG92ZXIoKTt9XG59XG5cbi8qIEFjdGl2ZSAqL1xuLnVrLW5hdi1kZWZhdWx0ID4gbGkudWstYWN0aXZlID4gYSB7XG4gICAgY29sb3I6ICRuYXYtZGVmYXVsdC1pdGVtLWFjdGl2ZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2LWRlZmF1bHQtaXRlbS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1uYXYtZGVmYXVsdC1pdGVtLWFjdGl2ZSgpO31cbn1cblxuLypcbiAqIEhlYWRlclxuICovXG5cbi51ay1uYXYtZGVmYXVsdCAudWstbmF2LWhlYWRlciB7XG4gICAgY29sb3I6ICRuYXYtZGVmYXVsdC1oZWFkZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdi1kZWZhdWx0LWhlYWRlcikpIHtAaW5jbHVkZSBob29rLW5hdi1kZWZhdWx0LWhlYWRlcigpO31cbn1cblxuLypcbiAqIERpdmlkZXJcbiAqL1xuXG4udWstbmF2LWRlZmF1bHQgLnVrLW5hdi1kaXZpZGVyIHtcbiAgICBib3JkZXItdG9wOiAkbmF2LWRlZmF1bHQtZGl2aWRlci1ib3JkZXItd2lkdGggc29saWQgJG5hdi1kZWZhdWx0LWRpdmlkZXItYm9yZGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtZGVmYXVsdC1kaXZpZGVyKSkge0BpbmNsdWRlIGhvb2stbmF2LWRlZmF1bHQtZGl2aWRlcigpO31cbn1cblxuLypcbiAqIFN1Ymxpc3RzXG4gKi9cblxuLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIGEgeyBjb2xvcjogJG5hdi1kZWZhdWx0LXN1Ymxpc3QtaXRlbS1jb2xvcjsgfVxuXG4udWstbmF2LWRlZmF1bHQgLnVrLW5hdi1zdWIgYTpob3Zlcixcbi51ay1uYXYtZGVmYXVsdCAudWstbmF2LXN1YiBhOmZvY3VzIHsgY29sb3I6ICRuYXYtZGVmYXVsdC1zdWJsaXN0LWl0ZW0taG92ZXItY29sb3I7IH1cblxuLnVrLW5hdi1kZWZhdWx0IC51ay1uYXYtc3ViIGxpLnVrLWFjdGl2ZSA+IGEgeyBjb2xvcjogJG5hdi1kZWZhdWx0LXN1Ymxpc3QtaXRlbS1hY3RpdmUtY29sb3I7IH1cblxuXG4vKiBQcmltYXJ5IG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW5hdi1wcmltYXJ5IHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2LXByaW1hcnkpKSB7QGluY2x1ZGUgaG9vay1uYXYtcHJpbWFyeSgpO31cbn1cblxuLypcbiAqIEl0ZW1zXG4gKi9cblxuLnVrLW5hdi1wcmltYXJ5ID4gbGkgPiBhIHtcbiAgICBmb250LXNpemU6ICRuYXYtcHJpbWFyeS1pdGVtLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJG5hdi1wcmltYXJ5LWl0ZW0tbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRuYXYtcHJpbWFyeS1pdGVtLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtcHJpbWFyeS1pdGVtKSkge0BpbmNsdWRlIGhvb2stbmF2LXByaW1hcnktaXRlbSgpO31cbn1cblxuLyogSG92ZXIgKyBGb2N1cyAqL1xuLnVrLW5hdi1wcmltYXJ5ID4gbGkgPiBhOmhvdmVyLFxuLnVrLW5hdi1wcmltYXJ5ID4gbGkgPiBhOmZvY3VzIHtcbiAgICBjb2xvcjogJG5hdi1wcmltYXJ5LWl0ZW0taG92ZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdi1wcmltYXJ5LWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1uYXYtcHJpbWFyeS1pdGVtLWhvdmVyKCk7fVxufVxuXG4vKiBBY3RpdmUgKi9cbi51ay1uYXYtcHJpbWFyeSA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICAgIGNvbG9yOiAkbmF2LXByaW1hcnktaXRlbS1hY3RpdmUtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdi1wcmltYXJ5LWl0ZW0tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stbmF2LXByaW1hcnktaXRlbS1hY3RpdmUoKTt9XG59XG5cbi8qXG4gKiBIZWFkZXJcbiAqL1xuXG4udWstbmF2LXByaW1hcnkgLnVrLW5hdi1oZWFkZXIge1xuICAgIGNvbG9yOiAkbmF2LXByaW1hcnktaGVhZGVyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtcHJpbWFyeS1oZWFkZXIpKSB7QGluY2x1ZGUgaG9vay1uYXYtcHJpbWFyeS1oZWFkZXIoKTt9XG59XG5cbi8qXG4gKiBEaXZpZGVyXG4gKi9cblxuLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtZGl2aWRlciB7XG4gICAgYm9yZGVyLXRvcDogJG5hdi1wcmltYXJ5LWRpdmlkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRuYXYtcHJpbWFyeS1kaXZpZGVyLWJvcmRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2LXByaW1hcnktZGl2aWRlcikpIHtAaW5jbHVkZSBob29rLW5hdi1wcmltYXJ5LWRpdmlkZXIoKTt9XG59XG5cbi8qXG4gKiBTdWJsaXN0c1xuICovXG5cbi51ay1uYXYtcHJpbWFyeSAudWstbmF2LXN1YiBhIHsgY29sb3I6ICRuYXYtcHJpbWFyeS1zdWJsaXN0LWl0ZW0tY29sb3I7IH1cblxuLnVrLW5hdi1wcmltYXJ5IC51ay1uYXYtc3ViIGE6aG92ZXIsXG4udWstbmF2LXByaW1hcnkgLnVrLW5hdi1zdWIgYTpmb2N1cyB7IGNvbG9yOiAkbmF2LXByaW1hcnktc3VibGlzdC1pdGVtLWhvdmVyLWNvbG9yOyB9XG5cbi51ay1uYXYtcHJpbWFyeSAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhIHsgY29sb3I6ICRuYXYtcHJpbWFyeS1zdWJsaXN0LWl0ZW0tYWN0aXZlLWNvbG9yOyB9XG5cblxuLyogQWxpZ25tZW50IG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW5hdi1jZW50ZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLyogU3VibGlzdHMgKi9cbi51ay1uYXYtY2VudGVyIC51ay1uYXYtc3ViLFxuLnVrLW5hdi1jZW50ZXIgLnVrLW5hdi1zdWIgdWwgeyBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLyogUGFyZW50IGljb24gbW9kaWZpZXIgICovXG4udWstbmF2LWNlbnRlci51ay1uYXYtcGFyZW50LWljb24gPiAudWstcGFyZW50ID4gYTo6YWZ0ZXIgeyBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1uYXYtbWlzYykpIHtAaW5jbHVkZSBob29rLW5hdi1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1uYXYtc3ViKCl7fVxuLy8gQG1peGluIGhvb2stbmF2LXBhcmVudC1pY29uKCl7fVxuLy8gQG1peGluIGhvb2stbmF2LWhlYWRlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdi1kaXZpZGVyKCl7fVxuLy8gQG1peGluIGhvb2stbmF2LWRlZmF1bHQoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXYtZGVmYXVsdC1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2stbmF2LWRlZmF1bHQtaXRlbS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdi1kZWZhdWx0LWl0ZW0tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stbmF2LWRlZmF1bHQtaGVhZGVyKCl7fVxuLy8gQG1peGluIGhvb2stbmF2LWRlZmF1bHQtZGl2aWRlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdi1wcmltYXJ5KCl7fVxuLy8gQG1peGluIGhvb2stbmF2LXByaW1hcnktaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLW5hdi1wcmltYXJ5LWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXYtcHJpbWFyeS1pdGVtLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLW5hdi1wcmltYXJ5LWhlYWRlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdi1wcmltYXJ5LWRpdmlkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXYtbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGludmVyc2UtbmF2LXBhcmVudC1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0tY29sb3I6ICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtZGVmYXVsdC1pdGVtLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbmF2LWRlZmF1bHQtaXRlbS1hY3RpdmUtY29sb3I6ICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1kZWZhdWx0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtZGVmYXVsdC1kaXZpZGVyLWJvcmRlcjogICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1kZWZhdWx0LXN1Ymxpc3QtaXRlbS1jb2xvcjogICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtZGVmYXVsdC1zdWJsaXN0LWl0ZW0taG92ZXItY29sb3I6ICAgJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbmF2LWRlZmF1bHQtc3VibGlzdC1pdGVtLWFjdGl2ZS1jb2xvcjogICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcblxuJGludmVyc2UtbmF2LXByaW1hcnktaXRlbS1jb2xvcjogICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0taG92ZXItY29sb3I6ICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtcHJpbWFyeS1pdGVtLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbmF2LXByaW1hcnktaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1wcmltYXJ5LWRpdmlkZXItYm9yZGVyOiAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGludmVyc2UtbmF2LXByaW1hcnktc3VibGlzdC1pdGVtLWNvbG9yOiAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLW5hdi1wcmltYXJ5LXN1Ymxpc3QtaXRlbS1ob3Zlci1jb2xvcjogICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1uYXYtcHJpbWFyeS1zdWJsaXN0LWl0ZW0tYWN0aXZlLWNvbG9yOiAgJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXYtcGFyZW50LWljb24oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXYtZGVmYXVsdC1oZWFkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWRpdmlkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWl0ZW0tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXYtcHJpbWFyeS1oZWFkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWRpdmlkZXIoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIE5hdmJhclxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGhvcml6b250YWwgbmF2aWdhdGlvbiBiYXJzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstbmF2YmFyYFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLW5hdmJhci1jb250YWluZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXZiYXItbGVmdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdmJhci1yaWdodGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdmJhci1jZW50ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXZiYXItY2VudGVyLWxlZnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXZiYXItY2VudGVyLXJpZ2h0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2YmFyLW5hdmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdmJhci1pdGVtYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2YmFyLXRvZ2dsZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdmJhci1zdWJ0aXRsZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdmJhci1kcm9wYmFyYFxuLy9cbi8vIEFkb3B0ZWQ6ICAgICAgICAgYHVrLW5hdmJhci1kcm9wZG93bmAgKyBNb2RpZmllcnNcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdmJhci1kcm9wZG93bi1uYXZgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXZiYXItZHJvcGRvd24tZ3JpZGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdmJhci10b2dnbGUtaWNvbmBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1uYXZiYXItcHJpbWFyeWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdmJhci10cmFuc3BhcmVudGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdmJhci1zdGlja3lgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXZiYXItZHJvcGRvd24tc3RhY2tgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcGFyZW50YFxuLy8gICAgICAgICAgICAgICAgICBgdWstb3BlbmBcbi8vXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJG5hdmJhci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRuYXZiYXItY29sb3ItbW9kZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1pdGVtLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgODBweCAhZGVmYXVsdDtcbiRuYXZiYXItbmF2LWl0ZW0tcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJG5hdmJhci1uYXYtaXRlbS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLW5hdi1pdGVtLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kbmF2YmFyLW5hdi1pdGVtLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRuYXZiYXItbmF2LWl0ZW0taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1uYXYtaXRlbS1vbmNsaWNrLWNvbG9yOiAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLW5hdi1pdGVtLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcblxuJG5hdmJhci1pdGVtLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGUtaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbiRuYXZiYXItc3VidGl0bGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJG5hdmJhci1kcm9wZG93bi16LWluZGV4OiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtei1pbmRleCArIDIwICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbDogICAgICAgICAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tZ3JpZC1ndXR0ZXItdmVydGljYWw6ICAgICAgICAgICAkbmF2YmFyLWRyb3Bkb3duLWdyaWQtZ3V0dGVyLWhvcml6b250YWwgIWRlZmF1bHQ7XG5cbiRuYXZiYXItZHJvcGRvd24tZHJvcGJhci1tYXJnaW4tdG9wOiAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1kcm9wYmFyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICRuYXZiYXItZHJvcGRvd24tZHJvcGJhci1tYXJnaW4tdG9wICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRyb3Bkb3duLW5hdi1pdGVtLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbmF2LWl0ZW0taG92ZXItY29sb3I6ICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1uYXYtaXRlbS1hY3RpdmUtY29sb3I6ICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLW5hdi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbmF2LWRpdmlkZXItYm9yZGVyLXdpZHRoOiAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbmF2LWRpdmlkZXItYm9yZGVyOiAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tbmF2LXN1Ymxpc3QtaXRlbS1jb2xvcjogICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1uYXYtc3VibGlzdC1pdGVtLWhvdmVyLWNvbG9yOiAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLW5hdi1zdWJsaXN0LWl0ZW0tYWN0aXZlLWNvbG9yOiAgJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcblxuJG5hdmJhci1kcm9wYmFyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICRuYXZiYXItZHJvcGRvd24tYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGJhci16LWluZGV4OiAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXotaW5kZXggLSAyMCAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogTmF2YmFyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0IHRvIGNlbnRlciBuYXZiYXIgZ3JvdXBcbiAqL1xuXG4udWstbmF2YmFyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC8qIDEgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhcikpIHtAaW5jbHVkZSBob29rLW5hdmJhcigpO31cbn1cblxuXG4vKiBDb250YWluZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbmF2YmFyLWNvbnRhaW5lcjpub3QoLnVrLW5hdmJhci10cmFuc3BhcmVudCkge1xuICAgIGJhY2tncm91bmQ6ICRuYXZiYXItYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLWNvbnRhaW5lcikpIHtAaW5jbHVkZSBob29rLW5hdmJhci1jb250YWluZXIoKTt9XG59XG5cbi8vIENvbG9yIE1vZGVcbkBpZiAoICRuYXZiYXItY29sb3ItbW9kZSA9PSBsaWdodCApIHsgLnVrLW5hdmJhci1jb250YWluZXI6bm90KC51ay1uYXZiYXItdHJhbnNwYXJlbnQpIHsgQGV4dGVuZCAudWstbGlnaHQgIW9wdGlvbmFsO30gfVxuQGlmICggJG5hdmJhci1jb2xvci1tb2RlID09IGRhcmsgKSB7IC51ay1uYXZiYXItY29udGFpbmVyOm5vdCgudWstbmF2YmFyLXRyYW5zcGFyZW50KSB7IEBleHRlbmQgLnVrLWRhcmsgIW9wdGlvbmFsO30gfVxuXG4vKlxuICogUmVtb3ZlIHBzZXVkbyBlbGVtZW50cyBjcmVhdGVkIGJ5IG1pY3JvIGNsZWFyZml4IGFzIHByZWNhdXRpb24gKGlmIENvbnRhaW5lciBjb21wb25lbnQgaXMgdXNlZClcbiAqL1xuXG4udWstbmF2YmFyLWNvbnRhaW5lciA+IDo6YmVmb3JlLFxuLnVrLW5hdmJhci1jb250YWluZXIgPiA6OmFmdGVyIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cblxuLyogR3JvdXBzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIEFsaWduIG5hdnMgYW5kIGl0ZW1zIHZlcnRpY2FsbHkgaWYgdGhleSBoYXZlIGEgZGlmZmVyZW50IGhlaWdodFxuICogMi4gTm90ZTogSUUgMTEgcmVxdWlyZXMgYW4gZXh0cmEgYGRpdmAgd2hpY2ggYWZmZWN0cyB0aGUgY2VudGVyIHNlbGVjdG9yXG4gKi9cblxuLnVrLW5hdmJhci1sZWZ0LFxuLnVrLW5hdmJhci1yaWdodCxcbi8vIDIuIFtjbGFzcyo9J3VrLW5hdmJhci1jZW50ZXInXSxcbi51ay1uYXZiYXItY2VudGVyLFxuLnVrLW5hdmJhci1jZW50ZXItbGVmdCA+ICosXG4udWstbmF2YmFyLWNlbnRlci1yaWdodCA+ICoge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLyogMSAqL1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi8qXG4gKiBIb3Jpem9udGFsIGFsaWdubWVudFxuICogMS4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHQgZm9yIGNlbnRlcmVkIG5hdmJhciB3aXRoIHN1YiBncm91cHMgKGxlZnQvcmlnaHQpXG4gKiAyLiBGaXggdGV4dCB3cmFwcGluZyBpZiBjb250ZW50IGlzIGxhcmdlciB0aGFuIDUwJSBvZiB0aGUgY29udGFpbmVyLlxuICogMy4gTmVlZGVkIGZvciBkcm9wZG93bnMgYmVjYXVzZSBhIG5ldyBwb3NpdGlvbiBjb250ZXh0IGlzIGNyZWF0ZWRcbiAqICAgIGB6LWluZGV4YCBtdXN0IGJlIHNtYWxsZXIgdGhhbiBvZmYtY2FudmFzXG4gKiA0LiBBbGlnbiBzdWIgZ3JvdXBzIGZvciBjZW50ZXJlZCBuYXZiYXJcbiAqL1xuXG4udWstbmF2YmFyLXJpZ2h0IHsgbWFyZ2luLWxlZnQ6IGF1dG87IH1cblxuLnVrLW5hdmJhci1jZW50ZXI6b25seS1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIC8qIDEgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi51ay1uYXZiYXItY2VudGVyOm5vdCg6b25seS1jaGlsZCkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgICAvKiAyICovXG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLyogMyAqL1xuICAgIHotaW5kZXg6ICRnbG9iYWwtei1pbmRleCAtIDEwO1xufVxuXG4vKiA0ICovXG4udWstbmF2YmFyLWNlbnRlci1sZWZ0LFxuLnVrLW5hdmJhci1jZW50ZXItcmlnaHQge1xuICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgdG9wOiAwO1xufVxuXG4udWstbmF2YmFyLWNlbnRlci1sZWZ0IHsgcmlnaHQ6IDEwMCU7IH1cbi51ay1uYXZiYXItY2VudGVyLXJpZ2h0IHsgbGVmdDogMTAwJTsgfVxuXG5bY2xhc3MqPSd1ay1uYXZiYXItY2VudGVyLSddIHtcbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuXG4vKiBOYXZcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gUmVzZXQgbGlzdFxuICovXG5cbi51ay1uYXZiYXItbmF2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC8qIDEgKi9cbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vKlxuICogQWxsb3cgaXRlbXMgdG8gd3JhcCBpbnRvIHRoZSBuZXh0IGxpbmVcbiAqIE9ubHkgbm90IGBhYnNvbHV0ZWAgcG9zaXRpb25lZCBncm91cHNcbiAqL1xuXG4udWstbmF2YmFyLWxlZnQsXG4udWstbmF2YmFyLXJpZ2h0LFxuLnVrLW5hdmJhci1jZW50ZXI6b25seS1jaGlsZCB7IGZsZXgtd3JhcDogd3JhcDsgfVxuXG4vKlxuICogSXRlbXNcbiAqIDEuIENlbnRlciBjb250ZW50IHZlcnRpY2FsbHkgYW5kIGhvcml6b250YWxseVxuICogMi4gRGltZW5zaW9uc1xuICogMy4gU3R5bGVcbiAqIDQuIFJlcXVpcmVkIGZvciBgYWBcbiAqL1xuXG4udWstbmF2YmFyLW5hdiA+IGxpID4gYSwgICAgLy8gTmF2IGl0ZW1cbi51ay1uYXZiYXItaXRlbSwgICAgICAgICAgICAvLyBDb250ZW50IGl0ZW1cbi51ay1uYXZiYXItdG9nZ2xlIHsgICAgICAgICAvLyBDbGlja2FibGUgaXRlbVxuICAgIC8qIDEgKi9cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgLyogMiAqL1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWluLWhlaWdodDogJG5hdmJhci1uYXYtaXRlbS1oZWlnaHQ7XG4gICAgcGFkZGluZzogMCAkbmF2YmFyLW5hdi1pdGVtLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICAvKiAzICovXG4gICAgZm9udC1zaXplOiAkbmF2YmFyLW5hdi1pdGVtLWZvbnQtc2l6ZTtcbiAgICBmb250LWZhbWlseTogJG5hdmJhci1uYXYtaXRlbS1mb250LWZhbWlseTtcbiAgICAvKiA0ICovXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKlxuICogTmF2IGl0ZW1zXG4gKi9cblxuLnVrLW5hdmJhci1uYXYgPiBsaSA+IGEge1xuICAgIGNvbG9yOiAkbmF2YmFyLW5hdi1pdGVtLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItbmF2LWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItbmF2LWl0ZW0oKTt9XG59XG5cbi8qXG4gKiBIb3ZlclxuICogQXBwbHkgaG92ZXIgc3R5bGUgYWxzbyB0byBmb2N1cyBzdGF0ZSBhbmQgaWYgZHJvcGRvd24gaXMgb3BlbmVkXG4gKi9cblxuLnVrLW5hdmJhci1uYXYgPiBsaTpob3ZlciA+IGEsXG4udWstbmF2YmFyLW5hdiA+IGxpID4gYTpmb2N1cyxcbi51ay1uYXZiYXItbmF2ID4gbGkgPiBhLnVrLW9wZW4ge1xuICAgIGNvbG9yOiAkbmF2YmFyLW5hdi1pdGVtLWhvdmVyLWNvbG9yO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci1uYXYtaXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLW5hdmJhci1uYXYtaXRlbS1ob3ZlcigpO31cbn1cblxuLyogT25DbGljayAqL1xuLnVrLW5hdmJhci1uYXYgPiBsaSA+IGE6YWN0aXZlIHtcbiAgICBjb2xvcjogJG5hdmJhci1uYXYtaXRlbS1vbmNsaWNrLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItbmF2LWl0ZW0tb25jbGljaykpIHtAaW5jbHVkZSBob29rLW5hdmJhci1uYXYtaXRlbS1vbmNsaWNrKCk7fVxufVxuXG4vKiBBY3RpdmUgKi9cbi51ay1uYXZiYXItbmF2ID4gbGkudWstYWN0aXZlID4gYSB7XG4gICAgY29sb3I6ICRuYXZiYXItbmF2LWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItbmF2LWl0ZW0tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLW5hdi1pdGVtLWFjdGl2ZSgpO31cbn1cblxuXG4vKiBJdGVtXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW5hdmJhci1pdGVtIHtcbiAgICBjb2xvcjogJG5hdmJhci1pdGVtLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItaXRlbSkpIHtAaW5jbHVkZSBob29rLW5hdmJhci1pdGVtKCk7fVxufVxuXG5cbi8qIFRvZ2dsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1uYXZiYXItdG9nZ2xlIHtcbiAgICBjb2xvcjogJG5hdmJhci10b2dnbGUtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci10b2dnbGUpKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItdG9nZ2xlKCk7fVxufVxuXG4udWstbmF2YmFyLXRvZ2dsZTpob3Zlcixcbi51ay1uYXZiYXItdG9nZ2xlOmZvY3VzLFxuLnVrLW5hdmJhci10b2dnbGUudWstb3BlbiB7XG4gICAgY29sb3I6ICRuYXZiYXItdG9nZ2xlLWhvdmVyLWNvbG9yO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItdG9nZ2xlLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLXRvZ2dsZS1ob3ZlcigpO31cbn1cblxuLypcbiAqIEljb25cbiAqIEFkb3B0cyBgdWstaWNvbmBcbiAqL1xuXG4udWstbmF2YmFyLXRvZ2dsZS1pY29uIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLXRvZ2dsZS1pY29uKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLXRvZ2dsZS1pY29uKCk7fVxufVxuXG4vKiBIb3ZlciArIEZvY3VzICovXG46aG92ZXIgPiAudWstbmF2YmFyLXRvZ2dsZS1pY29uLFxuOmZvY3VzID4gLnVrLW5hdmJhci10b2dnbGUtaWNvbiB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci10b2dnbGUtaWNvbi1ob3ZlcikpIHtAaW5jbHVkZSBob29rLW5hdmJhci10b2dnbGUtaWNvbi1ob3ZlcigpO31cbn1cblxuXG4vKiBTdWJ0aXRsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1uYXZiYXItc3VidGl0bGUge1xuICAgIGZvbnQtc2l6ZTogJG5hdmJhci1zdWJ0aXRsZS1mb250LXNpemU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci1zdWJ0aXRsZSkpIHtAaW5jbHVkZSBob29rLW5hdmJhci1zdWJ0aXRsZSgpO31cbn1cblxuXG4vKiBTdHlsZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbmF2YmFyLXByaW1hcnkge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItcHJpbWFyeSkpIHtAaW5jbHVkZSBob29rLW5hdmJhci1wcmltYXJ5KCk7fVxufVxuXG4udWstbmF2YmFyLXRyYW5zcGFyZW50IHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLXRyYW5zcGFyZW50KSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLXRyYW5zcGFyZW50KCk7fVxufVxuXG4udWstbmF2YmFyLXN0aWNreSB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci1zdGlja3kpKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItc3RpY2t5KCk7fVxufVxuXG5cbi8qIERyb3Bkb3duXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkb3B0cyBgdWstZHJvcGRvd25gXG4gKiAxLiBIaWRlIGJ5IGRlZmF1bHRcbiAqIDIuIFNldCBwb3NpdGlvblxuICogMy4gU2V0IGEgZGVmYXVsdCB3aWR0aFxuICogNC4gU3R5bGVcbiAqL1xuXG4udWstbmF2YmFyLWRyb3Bkb3duIHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAvKiAyICovXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6ICRuYXZiYXItZHJvcGRvd24tei1pbmRleDtcbiAgICAvKiAzICovXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogJG5hdmJhci1kcm9wZG93bi13aWR0aDtcbiAgICAvKiA0ICovXG4gICAgcGFkZGluZzogJG5hdmJhci1kcm9wZG93bi1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQ6ICRuYXZiYXItZHJvcGRvd24tYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJG5hdmJhci1kcm9wZG93bi1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLWRyb3Bkb3duKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLWRyb3Bkb3duKCk7fVxufVxuXG4vKiBTaG93ICovXG4udWstbmF2YmFyLWRyb3Bkb3duLnVrLW9wZW4geyBkaXNwbGF5OiBibG9jazsgfVxuXG4vKlxuICogRGlyZWN0aW9uIC8gQWxpZ25tZW50IG1vZGlmaWVyc1xuICovXG5cbi8qIERpcmVjdGlvbiAqL1xuW2NsYXNzKj0ndWstbmF2YmFyLWRyb3Bkb3duLXRvcCddIHsgbWFyZ2luLXRvcDogKC0kbmF2YmFyLWRyb3Bkb3duLW1hcmdpbik7IH1cbltjbGFzcyo9J3VrLW5hdmJhci1kcm9wZG93bi1ib3R0b20nXSB7IG1hcmdpbi10b3A6ICRuYXZiYXItZHJvcGRvd24tbWFyZ2luOyB9XG5bY2xhc3MqPSd1ay1uYXZiYXItZHJvcGRvd24tbGVmdCddIHsgbWFyZ2luLWxlZnQ6ICgtJG5hdmJhci1kcm9wZG93bi1tYXJnaW4pOyB9XG5bY2xhc3MqPSd1ay1uYXZiYXItZHJvcGRvd24tcmlnaHQnXSB7IG1hcmdpbi1sZWZ0OiAkbmF2YmFyLWRyb3Bkb3duLW1hcmdpbjsgfVxuXG4vKlxuICogR3JpZFxuICogQWRvcHRzIGB1ay1ncmlkYFxuICovXG5cbi8qIEd1dHRlciBIb3Jpem9udGFsICovXG4udWstbmF2YmFyLWRyb3Bkb3duLWdyaWQgeyBtYXJnaW4tbGVmdDogKC0kbmF2YmFyLWRyb3Bkb3duLWdyaWQtZ3V0dGVyLWhvcml6b250YWwpOyB9XG4udWstbmF2YmFyLWRyb3Bkb3duLWdyaWQgPiAqIHsgcGFkZGluZy1sZWZ0OiAkbmF2YmFyLWRyb3Bkb3duLWdyaWQtZ3V0dGVyLWhvcml6b250YWw7IH1cblxuLyogR3V0dGVyIFZlcnRpY2FsICovXG4udWstbmF2YmFyLWRyb3Bkb3duLWdyaWQgPiAudWstZ3JpZC1tYXJnaW4geyBtYXJnaW4tdG9wOiAkbmF2YmFyLWRyb3Bkb3duLWdyaWQtZ3V0dGVyLXZlcnRpY2FsOyB9XG5cbi8qIFN0YWNrICovXG4udWstbmF2YmFyLWRyb3Bkb3duLXN0YWNrIC51ay1uYXZiYXItZHJvcGRvd24tZ3JpZCA+ICogeyB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8qXG4gKiBXaWR0aCBtb2RpZmllclxuICovXG5cbi51ay1uYXZiYXItZHJvcGRvd24td2lkdGgtMjpub3QoLnVrLW5hdmJhci1kcm9wZG93bi1zdGFjaykgeyB3aWR0aDogKCRuYXZiYXItZHJvcGRvd24td2lkdGggKiAyKTsgfVxuLnVrLW5hdmJhci1kcm9wZG93bi13aWR0aC0zOm5vdCgudWstbmF2YmFyLWRyb3Bkb3duLXN0YWNrKSB7IHdpZHRoOiAoJG5hdmJhci1kcm9wZG93bi13aWR0aCAqIDMpOyB9XG4udWstbmF2YmFyLWRyb3Bkb3duLXdpZHRoLTQ6bm90KC51ay1uYXZiYXItZHJvcGRvd24tc3RhY2spIHsgd2lkdGg6ICgkbmF2YmFyLWRyb3Bkb3duLXdpZHRoICogNCk7IH1cbi51ay1uYXZiYXItZHJvcGRvd24td2lkdGgtNTpub3QoLnVrLW5hdmJhci1kcm9wZG93bi1zdGFjaykgeyB3aWR0aDogKCRuYXZiYXItZHJvcGRvd24td2lkdGggKiA1KTsgfVxuXG4vKlxuICogRHJvcGJhciBtb2RpZmllclxuICovXG5cbi51ay1uYXZiYXItZHJvcGRvd24tZHJvcGJhciB7XG4gICAgbWFyZ2luLXRvcDogJG5hdmJhci1kcm9wZG93bi1kcm9wYmFyLW1hcmdpbi10b3A7XG4gICAgbWFyZ2luLWJvdHRvbTogJG5hdmJhci1kcm9wZG93bi1kcm9wYmFyLW1hcmdpbi1ib3R0b207XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci1kcm9wZG93bi1kcm9wYmFyKSkge0BpbmNsdWRlIGhvb2stbmF2YmFyLWRyb3Bkb3duLWRyb3BiYXIoKTt9XG59XG5cblxuLyogRHJvcGRvd24gTmF2XG4gKiBBZG9wdHMgYHVrLW5hdmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbmF2YmFyLWRyb3Bkb3duLW5hdiB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci1kcm9wZG93bi1uYXYpKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItZHJvcGRvd24tbmF2KCk7fVxufVxuXG4vKlxuICogSXRlbXNcbiAqL1xuXG4udWstbmF2YmFyLWRyb3Bkb3duLW5hdiA+IGxpID4gYSB7XG4gICAgY29sb3I6ICRuYXZiYXItZHJvcGRvd24tbmF2LWl0ZW0tY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci1kcm9wZG93bi1uYXYtaXRlbSkpIHtAaW5jbHVkZSBob29rLW5hdmJhci1kcm9wZG93bi1uYXYtaXRlbSgpO31cbn1cblxuLyogSG92ZXIgKyBGb2N1cyAqL1xuLnVrLW5hdmJhci1kcm9wZG93bi1uYXYgPiBsaSA+IGE6aG92ZXIsXG4udWstbmF2YmFyLWRyb3Bkb3duLW5hdiA+IGxpID4gYTpmb2N1cyB7XG4gICAgY29sb3I6ICRuYXZiYXItZHJvcGRvd24tbmF2LWl0ZW0taG92ZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLW5hdmJhci1kcm9wZG93bi1uYXYtaXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLW5hdmJhci1kcm9wZG93bi1uYXYtaXRlbS1ob3ZlcigpO31cbn1cblxuLyogQWN0aXZlICovXG4udWstbmF2YmFyLWRyb3Bkb3duLW5hdiA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRyb3Bkb3duLW5hdi1pdGVtLWFjdGl2ZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLWRyb3Bkb3duLW5hdi1pdGVtLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLW5hdmJhci1kcm9wZG93bi1uYXYtaXRlbS1hY3RpdmUoKTt9XG59XG5cbi8qXG4gKiBIZWFkZXJcbiAqL1xuXG4udWstbmF2YmFyLWRyb3Bkb3duLW5hdiAudWstbmF2LWhlYWRlciB7XG4gICAgY29sb3I6ICRuYXZiYXItZHJvcGRvd24tbmF2LWhlYWRlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLWRyb3Bkb3duLW5hdi1oZWFkZXIpKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItZHJvcGRvd24tbmF2LWhlYWRlcigpO31cbn1cblxuLypcbiAqIERpdmlkZXJcbiAqL1xuXG4udWstbmF2YmFyLWRyb3Bkb3duLW5hdiAudWstbmF2LWRpdmlkZXIge1xuICAgIGJvcmRlci10b3A6ICRuYXZiYXItZHJvcGRvd24tbmF2LWRpdmlkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRuYXZiYXItZHJvcGRvd24tbmF2LWRpdmlkZXItYm9yZGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItZHJvcGRvd24tbmF2LWRpdmlkZXIpKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItZHJvcGRvd24tbmF2LWRpdmlkZXIoKTt9XG59XG5cbi8qXG4gKiBTdWJsaXN0c1xuICovXG5cbi51ay1uYXZiYXItZHJvcGRvd24tbmF2IC51ay1uYXYtc3ViIGEgeyBjb2xvcjogJG5hdmJhci1kcm9wZG93bi1uYXYtc3VibGlzdC1pdGVtLWNvbG9yOyB9XG5cbi51ay1uYXZiYXItZHJvcGRvd24tbmF2IC51ay1uYXYtc3ViIGE6aG92ZXIsXG4udWstbmF2YmFyLWRyb3Bkb3duLW5hdiAudWstbmF2LXN1YiBhOmZvY3VzIHsgY29sb3I6ICRuYXZiYXItZHJvcGRvd24tbmF2LXN1Ymxpc3QtaXRlbS1ob3Zlci1jb2xvcjsgfVxuXG4udWstbmF2YmFyLWRyb3Bkb3duLW5hdiAudWstbmF2LXN1YiBsaS51ay1hY3RpdmUgPiBhIHsgY29sb3I6ICRuYXZiYXItZHJvcGRvd24tbmF2LXN1Ymxpc3QtaXRlbS1hY3RpdmUtY29sb3I7IH1cblxuXG4vKiBEcm9wYmFyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW5hdmJhci1kcm9wYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiAkbmF2YmFyLWRyb3BiYXItYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLWRyb3BiYXIpKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItZHJvcGJhcigpO31cbn1cblxuLypcbiAqIFNsaWRlIG1vZGlmaWVyXG4gKi9cblxuLnVrLW5hdmJhci1kcm9wYmFyLXNsaWRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogJG5hdmJhci1kcm9wYmFyLXotaW5kZXg7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbmF2YmFyLWRyb3BiYXItc2xpZGUpKSB7QGluY2x1ZGUgaG9vay1uYXZiYXItZHJvcGJhci1zbGlkZSgpO31cbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1uYXZiYXItbWlzYykpIHtAaW5jbHVkZSBob29rLW5hdmJhci1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1uYXZiYXIoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItY29udGFpbmVyKCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLW5hdi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLW5hdi1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLW5hdi1pdGVtLW9uY2xpY2soKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItbmF2LWl0ZW0tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItdG9nZ2xlKCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLXRvZ2dsZS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci10b2dnbGUtaWNvbigpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci10b2dnbGUtaWNvbi1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1zdWJ0aXRsZSgpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1wcmltYXJ5KCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLXRyYW5zcGFyZW50KCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLXN0aWNreSgpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1kcm9wZG93bigpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1kcm9wZG93bi1kcm9wYmFyKCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLWRyb3Bkb3duLW5hdigpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1kcm9wZG93bi1uYXYtaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1kcm9wZG93bi1uYXYtaXRlbS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1kcm9wZG93bi1uYXYtaXRlbS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24tbmF2LWhlYWRlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1kcm9wZG93bi1uYXYtZGl2aWRlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1kcm9wYmFyKCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLWRyb3BiYXItc2xpZGUoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGludmVyc2UtbmF2YmFyLW5hdi1pdGVtLWNvbG9yOiAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbmF2YmFyLW5hdi1pdGVtLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbmF2YmFyLW5hdi1pdGVtLW9uY2xpY2stY29sb3I6ICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbmF2YmFyLW5hdi1pdGVtLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbmF2YmFyLWl0ZW0tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbmF2YmFyLXRvZ2dsZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbmF2YmFyLXRvZ2dsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdmJhci1uYXYtaXRlbS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbmF2YmFyLW5hdi1pdGVtLW9uY2xpY2soKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdmJhci1uYXYtaXRlbS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdmJhci1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXZiYXItdG9nZ2xlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXZiYXItdG9nZ2xlLWhvdmVyKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBTdWJuYXZcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBhIHN1YiBuYXZpZ2F0aW9uXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstc3VibmF2YFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLXN1Ym5hdi1kaXZpZGVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstc3VibmF2LXBpbGxgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZmlyc3QtY29sdW1uYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRzdWJuYXYtbWFyZ2luLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kc3VibmF2LWl0ZW0tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRzdWJuYXYtaXRlbS1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJHN1Ym5hdi1pdGVtLWhvdmVyLXRleHQtZGVjb3JhdGlvbjogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kc3VibmF2LWl0ZW0tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcblxuJHN1Ym5hdi1kaXZpZGVyLW1hcmdpbi1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICRzdWJuYXYtbWFyZ2luLWhvcml6b250YWwgIWRlZmF1bHQ7XG4kc3VibmF2LWRpdmlkZXItYm9yZGVyLWhlaWdodDogICAgICAgICAgICAgICAgICAgMS41ZW0gIWRlZmF1bHQ7XG4kc3VibmF2LWRpdmlkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kc3VibmF2LWRpdmlkZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRzdWJuYXYtcGlsbC1pdGVtLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICA1cHggIWRlZmF1bHQ7XG4kc3VibmF2LXBpbGwtaXRlbS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRzdWJuYXYtcGlsbC1pdGVtLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRzdWJuYXYtcGlsbC1pdGVtLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkc3VibmF2LWl0ZW0tY29sb3IgIWRlZmF1bHQ7XG4kc3VibmF2LXBpbGwtaXRlbS1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJHN1Ym5hdi1waWxsLWl0ZW0taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kc3VibmF2LXBpbGwtaXRlbS1vbmNsaWNrLWJhY2tncm91bmQ6ICAgICAgICAgICAgJHN1Ym5hdi1waWxsLWl0ZW0taG92ZXItYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRzdWJuYXYtcGlsbC1pdGVtLW9uY2xpY2stY29sb3I6ICAgICAgICAgICAgICAgICAkc3VibmF2LXBpbGwtaXRlbS1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRzdWJuYXYtcGlsbC1pdGVtLWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRzdWJuYXYtcGlsbC1pdGVtLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG5cbiRzdWJuYXYtaXRlbS1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBTdWJuYXZcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQWxsb3cgaXRlbXMgdG8gd3JhcCBpbnRvIHRoZSBuZXh0IGxpbmVcbiAqIDIuIEd1dHRlclxuICogMy4gUmVzZXQgbGlzdFxuICovXG5cbi51ay1zdWJuYXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLyogMSAqL1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAvKiAyICovXG4gICAgbWFyZ2luLWxlZnQ6ICgtJHN1Ym5hdi1tYXJnaW4taG9yaXpvbnRhbCk7XG4gICAgLyogMyAqL1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc3VibmF2KSkge0BpbmNsdWRlIGhvb2stc3VibmF2KCk7fVxufVxuXG4vKlxuICogMS4gU3BhY2UgaXMgYWxsb2NhdGVkIHNvbGVseSBiYXNlZCBvbiBjb250ZW50IGRpbWVuc2lvbnM6IDAgMCBhdXRvXG4gKiAyLiBHdXR0ZXJcbiAqIDMuIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0IGZvciBkcm9wZG93bnNcbiAqL1xuXG4udWstc3VibmF2ID4gKiB7XG4gICAgLyogMSAqL1xuICAgIGZsZXg6IG5vbmU7XG4gICAgLyogMiAqL1xuICAgIHBhZGRpbmctbGVmdDogJHN1Ym5hdi1tYXJnaW4taG9yaXpvbnRhbDtcbiAgICAvKiAzICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5cbi8qIEl0ZW1zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEl0ZW1zIG11c3QgdGFyZ2V0IGBhYCBlbGVtZW50cyB0byBleGNsdWRlIG90aGVyIGVsZW1lbnRzIChlLmcuIGRyb3Bkb3ducylcbiAqIFVzaW5nIGA6Zmlyc3QtY2hpbGRgIGluc3RlYWQgb2YgYGFgIHRvIHN1cHBvcnQgYHNwYW5gIGVsZW1lbnRzIGZvciB0ZXh0XG4gKiAxLiBQcmV2ZW50IGdhcCBpZiBjaGlsZCBlbGVtZW50IGlzIGBpbmxpbmUtYmxvY2tgLCBlLmcuIGFuIGljb25cbiAqIDIuIFN0eWxlXG4gKi9cblxuLnVrLXN1Ym5hdiA+ICogPiA6Zmlyc3QtY2hpbGQge1xuICAgIC8qIDEgKi9cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAvKiAyICovXG4gICAgY29sb3I6ICRzdWJuYXYtaXRlbS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc3VibmF2LWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1zdWJuYXYtaXRlbSgpO31cbn1cblxuLyogSG92ZXIgKyBGb2N1cyAqL1xuLnVrLXN1Ym5hdiA+ICogPiBhOmhvdmVyLFxuLnVrLXN1Ym5hdiA+ICogPiBhOmZvY3VzIHtcbiAgICBjb2xvcjogJHN1Ym5hdi1pdGVtLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJHN1Ym5hdi1pdGVtLWhvdmVyLXRleHQtZGVjb3JhdGlvbjtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zdWJuYXYtaXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLXN1Ym5hdi1pdGVtLWhvdmVyKCk7fVxufVxuXG4vKiBBY3RpdmUgKi9cbi51ay1zdWJuYXYgPiAudWstYWN0aXZlID4gYSB7XG4gICAgY29sb3I6ICRzdWJuYXYtaXRlbS1hY3RpdmUtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXN1Ym5hdi1pdGVtLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLXN1Ym5hdi1pdGVtLWFjdGl2ZSgpO31cbn1cblxuXG4vKiBEaXZpZGVyIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFNldCBndXR0ZXIgXG4gKi9cblxuLnVrLXN1Ym5hdi1kaXZpZGVyIHsgbWFyZ2luLWxlZnQ6IC0oKCRzdWJuYXYtZGl2aWRlci1tYXJnaW4taG9yaXpvbnRhbCAqIDIpICsgJHN1Ym5hdi1kaXZpZGVyLWJvcmRlci13aWR0aCk7IH1cblxuLypcbiAqIEFsaWduIGl0ZW1zIGFuZCBkaXZpZGVyIHZlcnRpY2FsbHlcbiAqL1xuXG4udWstc3VibmF2LWRpdmlkZXIgPiAqIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi8qXG4gKiBEaXZpZGVyXG4gKiAxLiBgbnRoLWNoaWxkYCBtYWtlcyBpdCBhbHNvIHdvcmsgd2l0aG91dCBKUyBpZiBpdCdzIG9ubHkgb25lIHJvd1xuICovXG5cbi51ay1zdWJuYXYtZGl2aWRlciA+IDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogJHN1Ym5hdi1kaXZpZGVyLWJvcmRlci1oZWlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6ICgkc3VibmF2LWRpdmlkZXItbWFyZ2luLWhvcml6b250YWwgLSAkc3VibmF2LW1hcmdpbi1ob3Jpem9udGFsKTtcbiAgICBtYXJnaW4tcmlnaHQ6ICRzdWJuYXYtZGl2aWRlci1tYXJnaW4taG9yaXpvbnRhbDtcbiAgICBib3JkZXItbGVmdDogJHN1Ym5hdi1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLyogMSAqL1xuLnVrLXN1Ym5hdi1kaXZpZGVyID4gOm50aC1jaGlsZChuKzIpOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJHN1Ym5hdi1kaXZpZGVyLWJvcmRlcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc3VibmF2LWRpdmlkZXIpKSB7QGluY2x1ZGUgaG9vay1zdWJuYXYtZGl2aWRlcigpO31cbn1cblxuXG4vKiBQaWxsIG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXN1Ym5hdi1waWxsID4gKiA+IDpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZzogJHN1Ym5hdi1waWxsLWl0ZW0tcGFkZGluZy12ZXJ0aWNhbCAkc3VibmF2LXBpbGwtaXRlbS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgYmFja2dyb3VuZDogJHN1Ym5hdi1waWxsLWl0ZW0tYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHN1Ym5hdi1waWxsLWl0ZW0tY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXN1Ym5hdi1waWxsLWl0ZW0pKSB7QGluY2x1ZGUgaG9vay1zdWJuYXYtcGlsbC1pdGVtKCk7fVxufVxuXG4vKiBIb3ZlciArIEZvY3VzICovXG4udWstc3VibmF2LXBpbGwgPiAqID4gYTpob3Zlcixcbi51ay1zdWJuYXYtcGlsbCA+ICogPiBhOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3VibmF2LXBpbGwtaXRlbS1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkc3VibmF2LXBpbGwtaXRlbS1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc3VibmF2LXBpbGwtaXRlbS1ob3ZlcikpIHtAaW5jbHVkZSBob29rLXN1Ym5hdi1waWxsLWl0ZW0taG92ZXIoKTt9XG59XG5cbi8qIE9uQ2xpY2sgKi9cbi51ay1zdWJuYXYtcGlsbCA+ICogPiBhOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHN1Ym5hdi1waWxsLWl0ZW0tb25jbGljay1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkc3VibmF2LXBpbGwtaXRlbS1vbmNsaWNrLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zdWJuYXYtcGlsbC1pdGVtLW9uY2xpY2spKSB7QGluY2x1ZGUgaG9vay1zdWJuYXYtcGlsbC1pdGVtLW9uY2xpY2soKTt9XG59XG5cbi8qIEFjdGl2ZSAqL1xuLnVrLXN1Ym5hdi1waWxsID4gLnVrLWFjdGl2ZSA+IGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzdWJuYXYtcGlsbC1pdGVtLWFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkc3VibmF2LXBpbGwtaXRlbS1hY3RpdmUtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXN1Ym5hdi1waWxsLWl0ZW0tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stc3VibmF2LXBpbGwtaXRlbS1hY3RpdmUoKTt9XG59XG5cblxuLyogRGlzYWJsZWRcbiAqIFRoZSBzYW1lIGZvciBhbGwgc3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXN1Ym5hdiA+IC51ay1kaXNhYmxlZCA+IGEge1xuICAgIGNvbG9yOiAkc3VibmF2LWl0ZW0tZGlzYWJsZWQtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXN1Ym5hdi1pdGVtLWRpc2FibGVkKSkge0BpbmNsdWRlIGhvb2stc3VibmF2LWl0ZW0tZGlzYWJsZWQoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stc3VibmF2LW1pc2MpKSB7QGluY2x1ZGUgaG9vay1zdWJuYXYtbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stc3VibmF2KCl7fVxuLy8gQG1peGluIGhvb2stc3VibmF2LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1zdWJuYXYtaXRlbS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLXN1Ym5hdi1pdGVtLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLXN1Ym5hdi1kaXZpZGVyKCl7fVxuLy8gQG1peGluIGhvb2stc3VibmF2LXBpbGwtaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLXN1Ym5hdi1waWxsLWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1zdWJuYXYtcGlsbC1pdGVtLW9uY2xpY2soKXt9XG4vLyBAbWl4aW4gaG9vay1zdWJuYXYtcGlsbC1pdGVtLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLXN1Ym5hdi1pdGVtLWRpc2FibGVkKCl7fVxuLy8gQG1peGluIGhvb2stc3VibmF2LW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRpbnZlcnNlLXN1Ym5hdi1pdGVtLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXN1Ym5hdi1pdGVtLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXN1Ym5hdi1pdGVtLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXN1Ym5hdi1kaXZpZGVyLWJvcmRlcjogICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLWJhY2tncm91bmQ6ICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRpbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0tY29sb3I6ICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0taG92ZXItYmFja2dyb3VuZDogICAgICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1ob3Zlci1jb2xvcjogICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1vbmNsaWNrLWJhY2tncm91bmQ6ICAgJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1ob3Zlci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1vbmNsaWNrLWNvbG9yOiAgICAgICAgJGludmVyc2Utc3VibmF2LXBpbGwtaXRlbS1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0tYWN0aXZlLWJhY2tncm91bmQ6ICAgICRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLWFjdGl2ZS1jb2xvcjogICAgICAgICAkaW52ZXJzZS1nbG9iYWwtaW52ZXJzZS1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLXN1Ym5hdi1pdGVtLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2Utc3VibmF2LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXN1Ym5hdi1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtaXRlbS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXN1Ym5hdi1kaXZpZGVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLW9uY2xpY2soKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtaXRlbS1kaXNhYmxlZCgpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgQnJlYWRjcnVtYlxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGEgYnJlYWRjcnVtYiBuYXZpZ2F0aW9uXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstYnJlYWRjcnVtYmBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1kaXNhYmxlZGBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kYnJlYWRjcnVtYi1pdGVtLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1ob3Zlci10ZXh0LWRlY29yYXRpb246ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiL1wiICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1tYXJnaW4taG9yaXpvbnRhbDogICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAkYnJlYWRjcnVtYi1pdGVtLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQnJlYWRjcnVtYlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBSZXNldCBsaXN0XG4gKi9cblxuLnVrLWJyZWFkY3J1bWIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stYnJlYWRjcnVtYikpIHtAaW5jbHVkZSBob29rLWJyZWFkY3J1bWIoKTt9XG59XG5cbi8qXG4gKiAxLiBEb2Vzbid0IGdlbmVyYXRlIGFueSBib3ggYW5kIHJlcGxhY2VkIGJ5IGNoaWxkIGJveGVzXG4gKi9cblxuLnVrLWJyZWFkY3J1bWIgPiAqIHsgZGlzcGxheTogY29udGVudHM7IH1cblxuXG4vKiBJdGVtc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1icmVhZGNydW1iID4gKiA+ICoge1xuICAgIGZvbnQtc2l6ZTogJGJyZWFkY3J1bWItaXRlbS1mb250LXNpemU7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWl0ZW0tY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJyZWFkY3J1bWItaXRlbSkpIHtAaW5jbHVkZSBob29rLWJyZWFkY3J1bWItaXRlbSgpO31cbn1cblxuLyogSG92ZXIgKyBGb2N1cyAqL1xuLnVrLWJyZWFkY3J1bWIgPiAqID4gOmhvdmVyLFxuLnVrLWJyZWFkY3J1bWIgPiAqID4gOmZvY3VzIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWItaXRlbS1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRicmVhZGNydW1iLWl0ZW0taG92ZXItdGV4dC1kZWNvcmF0aW9uO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1icmVhZGNydW1iLWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1icmVhZGNydW1iLWl0ZW0taG92ZXIoKTt9XG59XG5cbi8qIERpc2FibGVkICovXG4udWstYnJlYWRjcnVtYiA+IC51ay1kaXNhYmxlZCA+ICoge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1icmVhZGNydW1iLWl0ZW0tZGlzYWJsZWQpKSB7QGluY2x1ZGUgaG9vay1icmVhZGNydW1iLWl0ZW0tZGlzYWJsZWQoKTt9XG59XG5cbi8qIEFjdGl2ZSAqL1xuLnVrLWJyZWFkY3J1bWIgPiA6bGFzdC1jaGlsZCA+IHNwYW4sXG4udWstYnJlYWRjcnVtYiA+IDpsYXN0LWNoaWxkID4gYTpub3QoW2hyZWZdKSB7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1icmVhZGNydW1iLWl0ZW0tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stYnJlYWRjcnVtYi1pdGVtLWFjdGl2ZSgpO31cbn1cblxuLypcbiAqIERpdmlkZXJcbiAqIGBudGgtY2hpbGRgIG1ha2VzIGl0IGFsc28gd29yayB3aXRob3V0IEpTIGlmIGl0J3Mgb25seSBvbmUgcm93XG4gKiAxLiBSZW1vdmUgc3BhY2UgYmV0d2VlbiBpbmxpbmUgYmxvY2sgZWxlbWVudHMuXG4gKiAyLiBTdHlsZVxuICovXG5cbi51ay1icmVhZGNydW1iID4gOm50aC1jaGlsZChuKzIpOm5vdCgudWstZmlyc3QtY29sdW1uKTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkYnJlYWRjcnVtYi1kaXZpZGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvKiAxICovXG4gICAgbWFyZ2luOiAwICRicmVhZGNydW1iLWRpdmlkZXItbWFyZ2luLWhvcml6b250YWwgMCB1bnF1b3RlKCdjYWxjKCN7JGJyZWFkY3J1bWItZGl2aWRlci1tYXJnaW4taG9yaXpvbnRhbH0gLSA0cHgpJyk7XG4gICAgLyogMiAqL1xuICAgIGZvbnQtc2l6ZTogJGJyZWFkY3J1bWItZGl2aWRlci1mb250LXNpemU7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWRpdmlkZXItY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWJyZWFkY3J1bWItZGl2aWRlcikpIHtAaW5jbHVkZSBob29rLWJyZWFkY3J1bWItZGl2aWRlcigpO31cbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1icmVhZGNydW1iLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1icmVhZGNydW1iLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWJyZWFkY3J1bWIoKXt9XG4vLyBAbWl4aW4gaG9vay1icmVhZGNydW1iLWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1icmVhZGNydW1iLWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1icmVhZGNydW1iLWl0ZW0tZGlzYWJsZWQoKXt9XG4vLyBAbWl4aW4gaG9vay1icmVhZGNydW1iLWl0ZW0tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stYnJlYWRjcnVtYi1kaXZpZGVyKCl7fVxuLy8gQG1peGluIGhvb2stYnJlYWRjcnVtYi1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kaW52ZXJzZS1icmVhZGNydW1iLWl0ZW0tY29sb3I6ICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1icmVhZGNydW1iLWl0ZW0taG92ZXItY29sb3I6ICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1icmVhZGNydW1iLWl0ZW0tYWN0aXZlLWNvbG9yOiAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1icmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYnJlYWRjcnVtYi1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1icmVhZGNydW1iLWl0ZW0tZGlzYWJsZWQoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItZGl2aWRlcigpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgUGFnaW5hdGlvblxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGEgcGFnZSBuYXZpZ2F0aW9uXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstcGFnaW5hdGlvbmBcbi8vXG4vLyBBZG9wdGVkOiAgICAgICAgIGB1ay1wYWdpbmF0aW9uLW5leHRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wYWdpbmF0aW9uLXByZXZpb3VzYFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLWFjdGl2ZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRpc2FibGVkYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRwYWdpbmF0aW9uLW1hcmdpbi1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgNXB4ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWl0ZW0taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taXRlbS1ob3Zlci10ZXh0LWRlY29yYXRpb246ICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1pdGVtLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBQYWdpbmF0aW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIEFsbG93IGl0ZW1zIHRvIHdyYXAgaW50byB0aGUgbmV4dCBsaW5lXG4gKiAyLiBHdXR0ZXJcbiAqIDMuIFJlc2V0IGxpc3RcbiAqL1xuXG4udWstcGFnaW5hdGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAvKiAxICovXG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIC8qIDIgKi9cbiAgICBtYXJnaW4tbGVmdDogKC0kcGFnaW5hdGlvbi1tYXJnaW4taG9yaXpvbnRhbCk7XG4gICAgLyogMyAqL1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stcGFnaW5hdGlvbikpIHtAaW5jbHVkZSBob29rLXBhZ2luYXRpb24oKTt9XG59XG5cbi8qXG4gKiAxLiBTcGFjZSBpcyBhbGxvY2F0ZWQgc29sZWx5IGJhc2VkIG9uIGNvbnRlbnQgZGltZW5zaW9uczogMCAwIGF1dG9cbiAqIDIuIEd1dHRlclxuICogMy4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHQgZm9yIGRyb3Bkb3duc1xuICovXG5cbi51ay1wYWdpbmF0aW9uID4gKiB7XG4gICAgLyogMSAqL1xuICAgIGZsZXg6IG5vbmU7XG4gICAgLyogMiAqL1xuICAgIHBhZGRpbmctbGVmdDogJHBhZ2luYXRpb24tbWFyZ2luLWhvcml6b250YWw7XG4gICAgLyogMyAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuXG4vKiBJdGVtc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBQcmV2ZW50IGdhcCBpZiBjaGlsZCBlbGVtZW50IGlzIGBpbmxpbmUtYmxvY2tgLCBlLmcuIGFuIGljb25cbiAqIDIuIFN0eWxlXG4gKi9cblxuLnVrLXBhZ2luYXRpb24gPiAqID4gKiB7XG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC8qIDIgKi9cbiAgICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmctdmVydGljYWwgJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXBhZ2luYXRpb24taXRlbSkpIHtAaW5jbHVkZSBob29rLXBhZ2luYXRpb24taXRlbSgpO31cbn1cblxuLyogSG92ZXIgKyBGb2N1cyAqL1xuLnVrLXBhZ2luYXRpb24gPiAqID4gOmhvdmVyLFxuLnVrLXBhZ2luYXRpb24gPiAqID4gOmZvY3VzIHtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24taXRlbS1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRwYWdpbmF0aW9uLWl0ZW0taG92ZXItdGV4dC1kZWNvcmF0aW9uO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1wYWdpbmF0aW9uLWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1wYWdpbmF0aW9uLWl0ZW0taG92ZXIoKTt9XG59XG5cbi8qIEFjdGl2ZSAqL1xuLnVrLXBhZ2luYXRpb24gPiAudWstYWN0aXZlID4gKiB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1wYWdpbmF0aW9uLWl0ZW0tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stcGFnaW5hdGlvbi1pdGVtLWFjdGl2ZSgpO31cbn1cblxuLyogRGlzYWJsZWQgKi9cbi51ay1wYWdpbmF0aW9uID4gLnVrLWRpc2FibGVkID4gKiB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCkpIHtAaW5jbHVkZSBob29rLXBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCgpO31cbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1wYWdpbmF0aW9uLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1wYWdpbmF0aW9uLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXBhZ2luYXRpb24oKXt9XG4vLyBAbWl4aW4gaG9vay1wYWdpbmF0aW9uLWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1wYWdpbmF0aW9uLWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1wYWdpbmF0aW9uLWl0ZW0tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkKCl7fVxuLy8gQG1peGluIGhvb2stcGFnaW5hdGlvbi1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kaW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0taG92ZXItY29sb3I6ICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0tYWN0aXZlLWNvbG9yOiAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQtY29sb3I6ICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXBhZ2luYXRpb24taXRlbSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtcGFnaW5hdGlvbi1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIFRhYlxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIGEgdGFiYmVkIG5hdmlnYXRpb25cbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay10YWJgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstdGFiLWJvdHRvbWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRhYi1sZWZ0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstdGFiLXJpZ2h0YFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLWFjdGl2ZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRpc2FibGVkYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiR0YWItbWFyZ2luLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiR0YWItaXRlbS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kdGFiLWl0ZW0tcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICA1cHggIWRlZmF1bHQ7XG4kdGFiLWl0ZW0tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJHRhYi1pdGVtLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiR0YWItaXRlbS1ob3Zlci10ZXh0LWRlY29yYXRpb246ICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kdGFiLWl0ZW0tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJHRhYi1pdGVtLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogVGFiXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIEFsbG93IGl0ZW1zIHRvIHdyYXAgaW50byB0aGUgbmV4dCBsaW5lXG4gKiAyLiBHdXR0ZXJcbiAqIDMuIFJlc2V0IGxpc3RcbiAqL1xuXG4udWstdGFiIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC8qIDEgKi9cbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgLyogMiAqL1xuICAgIG1hcmdpbi1sZWZ0OiAoLSR0YWItbWFyZ2luLWhvcml6b250YWwpO1xuICAgIC8qIDMgKi9cbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRhYikpIHtAaW5jbHVkZSBob29rLXRhYigpO31cbn1cblxuLypcbiAqIDEuIFNwYWNlIGlzIGFsbG9jYXRlZCBzb2xlbHkgYmFzZWQgb24gY29udGVudCBkaW1lbnNpb25zOiAwIDAgYXV0b1xuICogMi4gR3V0dGVyXG4gKiAzLiBDcmVhdGUgcG9zaXRpb24gY29udGV4dCBmb3IgZHJvcGRvd25zXG4gKi9cblxuLnVrLXRhYiA+ICoge1xuICAgIC8qIDEgKi9cbiAgICBmbGV4OiBub25lO1xuICAgIC8qIDIgKi9cbiAgICBwYWRkaW5nLWxlZnQ6ICR0YWItbWFyZ2luLWhvcml6b250YWw7XG4gICAgLyogMyAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuXG4vKiBJdGVtc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBJdGVtcyBtdXN0IHRhcmdldCBgYWAgZWxlbWVudHMgdG8gZXhjbHVkZSBvdGhlciBlbGVtZW50cyAoZS5nLiBkcm9wZG93bnMpXG4gKiAxLiBDZW50ZXIgdGV4dCBpZiBhIHdpZHRoIGlzIHNldFxuICogMi4gU3R5bGVcbiAqL1xuXG4udWstdGFiID4gKiA+IGEge1xuICAgIC8qIDEgKi9cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgLyogMiAqL1xuICAgIHBhZGRpbmc6ICR0YWItaXRlbS1wYWRkaW5nLXZlcnRpY2FsICR0YWItaXRlbS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgY29sb3I6ICR0YWItaXRlbS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFiLWl0ZW0pKSB7QGluY2x1ZGUgaG9vay10YWItaXRlbSgpO31cbn1cblxuLyogSG92ZXIgKyBGb2N1cyAqL1xuLnVrLXRhYiA+ICogPiBhOmhvdmVyLFxuLnVrLXRhYiA+ICogPiBhOmZvY3VzIHtcbiAgICBjb2xvcjogJHRhYi1pdGVtLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJHRhYi1pdGVtLWhvdmVyLXRleHQtZGVjb3JhdGlvbjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFiLWl0ZW0taG92ZXIpKSB7QGluY2x1ZGUgaG9vay10YWItaXRlbS1ob3ZlcigpO31cbn1cblxuLyogQWN0aXZlICovXG4udWstdGFiID4gLnVrLWFjdGl2ZSA+IGEge1xuICAgIGNvbG9yOiAkdGFiLWl0ZW0tYWN0aXZlLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10YWItaXRlbS1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay10YWItaXRlbS1hY3RpdmUoKTt9XG59XG5cbi8qIERpc2FibGVkICovXG4udWstdGFiID4gLnVrLWRpc2FibGVkID4gYSB7XG4gICAgY29sb3I6ICR0YWItaXRlbS1kaXNhYmxlZC1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFiLWl0ZW0tZGlzYWJsZWQpKSB7QGluY2x1ZGUgaG9vay10YWItaXRlbS1kaXNhYmxlZCgpO31cbn1cblxuXG4vKiBQb3NpdGlvbiBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBCb3R0b21cbiAqL1xuXG4udWstdGFiLWJvdHRvbSB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRhYi1ib3R0b20pKSB7QGluY2x1ZGUgaG9vay10YWItYm90dG9tKCk7fVxufVxuXG4udWstdGFiLWJvdHRvbSA+ICogPiBhIHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGFiLWJvdHRvbS1pdGVtKSkge0BpbmNsdWRlIGhvb2stdGFiLWJvdHRvbS1pdGVtKCk7fVxufVxuXG4vKlxuICogTGVmdCArIFJpZ2h0XG4gKiAxLiBSZXNldCBHdXR0ZXJcbiAqL1xuXG4udWstdGFiLWxlZnQsXG4udWstdGFiLXJpZ2h0IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIC8qIDEgKi9cbiAgICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLyogMSAqL1xuLnVrLXRhYi1sZWZ0ID4gKixcbi51ay10YWItcmlnaHQgPiAqIHsgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi51ay10YWItbGVmdCB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRhYi1sZWZ0KSkge0BpbmNsdWRlIGhvb2stdGFiLWxlZnQoKTt9XG59XG5cbi51ay10YWItcmlnaHQge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10YWItcmlnaHQpKSB7QGluY2x1ZGUgaG9vay10YWItcmlnaHQoKTt9XG59XG5cbi51ay10YWItbGVmdCA+ICogPiBhIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10YWItbGVmdC1pdGVtKSkge0BpbmNsdWRlIGhvb2stdGFiLWxlZnQtaXRlbSgpO31cbn1cblxuLnVrLXRhYi1yaWdodCA+ICogPiBhIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10YWItcmlnaHQtaXRlbSkpIHtAaW5jbHVkZSBob29rLXRhYi1yaWdodC1pdGVtKCk7fVxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLXRhYi1taXNjKSkge0BpbmNsdWRlIGhvb2stdGFiLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXRhYigpe31cbi8vIEBtaXhpbiBob29rLXRhYi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2stdGFiLWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay10YWItaXRlbS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay10YWItaXRlbS1kaXNhYmxlZCgpe31cbi8vIEBtaXhpbiBob29rLXRhYi1ib3R0b20oKXt9XG4vLyBAbWl4aW4gaG9vay10YWItYm90dG9tLWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay10YWItbGVmdCgpe31cbi8vIEBtaXhpbiBob29rLXRhYi1sZWZ0LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay10YWItcmlnaHQoKXt9XG4vLyBAbWl4aW4gaG9vay10YWItcmlnaHQtaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLXRhYi1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kaW52ZXJzZS10YWItaXRlbS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS10YWItaXRlbS1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS10YWItaXRlbS1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS10YWItaXRlbS1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRhYigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtdGFiLWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRhYi1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS10YWItaXRlbS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRhYi1pdGVtLWRpc2FibGVkKCl7fSIsIi8vIE5hbWU6ICAgICAgICAgICAgU2xpZGVuYXZcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBwcmV2aW91cy9uZXh0IGljb24gbmF2aWdhdGlvbnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1zbGlkZW5hdmBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1zbGlkZW5hdi1jb250YWluZXJgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstc2xpZGVuYXYtcHJldmlvdXNgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zbGlkZW5hdi1uZXh0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstc2xpZGVuYXYtbGFyZ2VgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHNsaWRlbmF2LXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAgIDVweCAhZGVmYXVsdDtcbiRzbGlkZW5hdi1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuXG4kc2xpZGVuYXYtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkZ2xvYmFsLWNvbG9yLCAwLjUpICFkZWZhdWx0O1xuJHNsaWRlbmF2LWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGdsb2JhbC1jb2xvciwgMC45KSAhZGVmYXVsdDtcbiRzbGlkZW5hdi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRnbG9iYWwtY29sb3IsIDAuNSkgIWRlZmF1bHQ7XG5cbiRzbGlkZW5hdi1sYXJnZS1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJHNsaWRlbmF2LWxhcmdlLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICRzbGlkZW5hdi1sYXJnZS1wYWRkaW5nLXZlcnRpY2FsICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBTbGlkZW5hdlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZG9wdHMgYHVrLWljb25gXG4gKi9cblxuLnVrLXNsaWRlbmF2IHtcbiAgICBwYWRkaW5nOiAkc2xpZGVuYXYtcGFkZGluZy12ZXJ0aWNhbCAkc2xpZGVuYXYtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGNvbG9yOiAkc2xpZGVuYXYtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXNsaWRlbmF2KSkge0BpbmNsdWRlIGhvb2stc2xpZGVuYXYoKTt9XG59XG5cbi8qIEhvdmVyICsgRm9jdXMgKi9cbi51ay1zbGlkZW5hdjpob3Zlcixcbi51ay1zbGlkZW5hdjpmb2N1cyB7XG4gICAgY29sb3I6ICRzbGlkZW5hdi1ob3Zlci1jb2xvcjtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zbGlkZW5hdi1ob3ZlcikpIHtAaW5jbHVkZSBob29rLXNsaWRlbmF2LWhvdmVyKCk7fVxufVxuXG4vKiBPbkNsaWNrICovXG4udWstc2xpZGVuYXY6YWN0aXZlIHtcbiAgICBjb2xvcjogJHNsaWRlbmF2LWFjdGl2ZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2xpZGVuYXYtYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stc2xpZGVuYXYtYWN0aXZlKCk7fVxufVxuXG5cbi8qIEljb24gbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUHJldmlvdXNcbiAqL1xuXG4udWstc2xpZGVuYXYtcHJldmlvdXMge1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zbGlkZW5hdi1wcmV2aW91cykpIHtAaW5jbHVkZSBob29rLXNsaWRlbmF2LXByZXZpb3VzKCk7fVxufVxuXG4vKlxuICogTmV4dFxuICovXG5cbi51ay1zbGlkZW5hdi1uZXh0IHtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2xpZGVuYXYtbmV4dCkpIHtAaW5jbHVkZSBob29rLXNsaWRlbmF2LW5leHQoKTt9XG59XG5cblxuLyogU2l6ZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1zbGlkZW5hdi1sYXJnZSB7XG4gICAgcGFkZGluZzogJHNsaWRlbmF2LWxhcmdlLXBhZGRpbmctdmVydGljYWwgJHNsaWRlbmF2LWxhcmdlLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stc2xpZGVuYXYtbGFyZ2UpKSB7QGluY2x1ZGUgaG9vay1zbGlkZW5hdi1sYXJnZSgpO31cbn1cblxuXG4vKiBDb250YWluZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstc2xpZGVuYXYtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1zbGlkZW5hdi1jb250YWluZXIpKSB7QGluY2x1ZGUgaG9vay1zbGlkZW5hdi1jb250YWluZXIoKTt9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stc2xpZGVuYXYtbWlzYykpIHtAaW5jbHVkZSBob29rLXNsaWRlbmF2LW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXNsaWRlbmF2KCl7fVxuLy8gQG1peGluIGhvb2stc2xpZGVuYXYtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1zbGlkZW5hdi1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1zbGlkZW5hdi1wcmV2aW91cygpe31cbi8vIEBtaXhpbiBob29rLXNsaWRlbmF2LW5leHQoKXt9XG4vLyBAbWl4aW4gaG9vay1zbGlkZW5hdi1sYXJnZSgpe31cbi8vIEBtaXhpbiBob29rLXNsaWRlbmF2LWNvbnRhaW5lcigpe31cbi8vIEBtaXhpbiBob29rLXNsaWRlbmF2LW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRpbnZlcnNlLXNsaWRlbmF2LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGludmVyc2UtZ2xvYmFsLWNvbG9yLCAwLjcpICFkZWZhdWx0O1xuJGludmVyc2Utc2xpZGVuYXYtaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgcmdiYSgkaW52ZXJzZS1nbG9iYWwtY29sb3IsIDAuOTUpICFkZWZhdWx0O1xuJGludmVyc2Utc2xpZGVuYXYtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkaW52ZXJzZS1nbG9iYWwtY29sb3IsIDAuNykgIWRlZmF1bHQ7XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXNsaWRlbmF2KCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zbGlkZW5hdi1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2Utc2xpZGVuYXYtYWN0aXZlKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBEb3RuYXZcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBkb3QgbmF2aWdhdGlvbnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1kb3RuYXZgXG4vL1xuLy8gTW9kaWZpZXI6ICAgICAgICBgdWstZG90bmF2LXZlcnRpY2FsYFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLWFjdGl2ZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kZG90bmF2LW1hcmdpbi1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAgICAgMTJweCAhZGVmYXVsdDtcbiRkb3RuYXYtbWFyZ2luLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgICAgICAkZG90bmF2LW1hcmdpbi1ob3Jpem9udGFsICFkZWZhdWx0O1xuXG4kZG90bmF2LWl0ZW0td2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRkb3RuYXYtaXRlbS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZG90bmF2LWl0ZW0td2lkdGggIWRlZmF1bHQ7XG4kZG90bmF2LWl0ZW0tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgICAgNTAlICFkZWZhdWx0O1xuXG4kZG90bmF2LWl0ZW0tYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkZ2xvYmFsLWNvbG9yLCAwLjIpICFkZWZhdWx0O1xuJGRvdG5hdi1pdGVtLWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgIHJnYmEoJGdsb2JhbC1jb2xvciwgMC42KSAhZGVmYXVsdDtcbiRkb3RuYXYtaXRlbS1vbmNsaWNrLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICByZ2JhKCRnbG9iYWwtY29sb3IsIDAuMikgIWRlZmF1bHQ7XG4kZG90bmF2LWl0ZW0tYWN0aXZlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgcmdiYSgkZ2xvYmFsLWNvbG9yLCAwLjYpICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBEb3RuYXZcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQWxsb3cgaXRlbXMgdG8gd3JhcCBpbnRvIHRoZSBuZXh0IGxpbmVcbiAqIDIuIFJlc2V0IGxpc3RcbiAqIDMuIEd1dHRlclxuICovXG5cbi51ay1kb3RuYXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLyogMSAqL1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAvKiAyICovXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAvKiAzICovXG4gICAgbWFyZ2luLWxlZnQ6ICgtJGRvdG5hdi1tYXJnaW4taG9yaXpvbnRhbCk7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRvdG5hdikpIHtAaW5jbHVkZSBob29rLWRvdG5hdigpO31cbn1cblxuLypcbiAqIDEuIFNwYWNlIGlzIGFsbG9jYXRlZCBzb2xlbHkgYmFzZWQgb24gY29udGVudCBkaW1lbnNpb25zOiAwIDAgYXV0b1xuICogMi4gR3V0dGVyXG4gKi9cblxuLnVrLWRvdG5hdiA+ICoge1xuICAgIC8qIDEgKi9cbiAgICBmbGV4OiBub25lO1xuICAgIC8qIDIgKi9cbiAgICBwYWRkaW5nLWxlZnQ6ICRkb3RuYXYtbWFyZ2luLWhvcml6b250YWw7XG59XG5cblxuLyogSXRlbXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogSXRlbXNcbiAqIDEuIEhpZGUgdGV4dCBpZiBwcmVzZW50XG4gKi9cblxuLnVrLWRvdG5hdiA+ICogPiAqIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAkZG90bmF2LWl0ZW0td2lkdGg7XG4gICAgaGVpZ2h0OiAkZG90bmF2LWl0ZW0taGVpZ2h0O1xuICAgIGJvcmRlci1yYWRpdXM6ICRkb3RuYXYtaXRlbS1ib3JkZXItcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6ICRkb3RuYXYtaXRlbS1iYWNrZ3JvdW5kO1xuICAgIC8qIDEgKi9cbiAgICB0ZXh0LWluZGVudDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRvdG5hdi1pdGVtKSkge0BpbmNsdWRlIGhvb2stZG90bmF2LWl0ZW0oKTt9XG59XG5cbi8qIEhvdmVyICsgRm9jdXMgKi9cbi51ay1kb3RuYXYgPiAqID4gOmhvdmVyLFxuLnVrLWRvdG5hdiA+ICogPiA6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkb3RuYXYtaXRlbS1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRvdG5hdi1pdGVtLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stZG90bmF2LWl0ZW0taG92ZXIoKTt9XG59XG5cbi8qIE9uQ2xpY2sgKi9cbi51ay1kb3RuYXYgPiAqID4gOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRvdG5hdi1pdGVtLW9uY2xpY2stYmFja2dyb3VuZDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZG90bmF2LWl0ZW0tb25jbGljaykpIHtAaW5jbHVkZSBob29rLWRvdG5hdi1pdGVtLW9uY2xpY2soKTt9XG59XG5cbi8qIEFjdGl2ZSAqL1xuLnVrLWRvdG5hdiA+IC51ay1hY3RpdmUgPiAqIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZG90bmF2LWl0ZW0tYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWRvdG5hdi1pdGVtLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWRvdG5hdi1pdGVtLWFjdGl2ZSgpO31cbn1cblxuXG4vKiBNb2RpZmllcjogJ3VrLWRvdG5hdi12ZXJ0aWNhbCdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQ2hhbmdlIGRpcmVjdGlvblxuICogMi4gR3V0dGVyXG4gKi9cblxuLnVrLWRvdG5hdi12ZXJ0aWNhbCB7XG4gICAgLyogMSAqL1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgLyogMiAqL1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6ICgtJGRvdG5hdi1tYXJnaW4tdmVydGljYWwpO1xufVxuXG4vKiAyICovXG4udWstZG90bmF2LXZlcnRpY2FsID4gKiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctdG9wOiAkZG90bmF2LW1hcmdpbi12ZXJ0aWNhbDtcbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1kb3RuYXYtbWlzYykpIHtAaW5jbHVkZSBob29rLWRvdG5hdi1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1kb3RuYXYoKXt9XG4vLyBAbWl4aW4gaG9vay1kb3RuYXYtaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLWRvdG5hdi1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stZG90bmF2LWl0ZW0tb25jbGljaygpe31cbi8vIEBtaXhpbiBob29rLWRvdG5hdi1pdGVtLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLWRvdG5hdi1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kaW52ZXJzZS1kb3RuYXYtaXRlbS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICByZ2JhKCRpbnZlcnNlLWdsb2JhbC1jb2xvciwgMC41KSAhZGVmYXVsdDtcbiRpbnZlcnNlLWRvdG5hdi1pdGVtLWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgIHJnYmEoJGludmVyc2UtZ2xvYmFsLWNvbG9yLCAwLjkpICFkZWZhdWx0O1xuJGludmVyc2UtZG90bmF2LWl0ZW0tb25jbGljay1iYWNrZ3JvdW5kOiAgICAgICAgcmdiYSgkaW52ZXJzZS1nbG9iYWwtY29sb3IsIDAuNSkgIWRlZmF1bHQ7XG4kaW52ZXJzZS1kb3RuYXYtaXRlbS1hY3RpdmUtYmFja2dyb3VuZDogICAgICAgICByZ2JhKCRpbnZlcnNlLWdsb2JhbC1jb2xvciwgMC45KSAhZGVmYXVsdDtcblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtZG90bmF2LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWRvdG5hdi1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1kb3RuYXYtaXRlbS1vbmNsaWNrKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1kb3RuYXYtaXRlbS1hY3RpdmUoKXt9IiwiLy8gTmFtZTogICAgICAgICAgICBUaHVtYm5hdlxuLy8gRGVzY3JpcHRpb246ICAgICBDb21wb25lbnQgdG8gY3JlYXRlIHRodW1ibmFpbCBuYXZpZ2F0aW9uc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLXRodW1ibmF2YFxuLy9cbi8vIE1vZGlmaWVyOiAgICAgICAgYHVrLXRodW1ibmF2LXZlcnRpY2FsYFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLWFjdGl2ZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kdGh1bWJuYXYtbWFyZ2luLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiR0aHVtYm5hdi1tYXJnaW4tdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAgICAkdGh1bWJuYXYtbWFyZ2luLWhvcml6b250YWwgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFRodW1ibmF2XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIEFsbG93IGl0ZW1zIHRvIHdyYXAgaW50byB0aGUgbmV4dCBsaW5lXG4gKiAyLiBSZXNldCBsaXN0XG4gKiAzLiBHdXR0ZXJcbiAqL1xuXG4udWstdGh1bWJuYXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLyogMSAqL1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAvKiAyICovXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAvKiAzICovXG4gICAgbWFyZ2luLWxlZnQ6ICgtJHRodW1ibmF2LW1hcmdpbi1ob3Jpem9udGFsKTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGh1bWJuYXYpKSB7QGluY2x1ZGUgaG9vay10aHVtYm5hdigpO31cbn1cblxuLypcbiAqIFNwYWNlIGlzIGFsbG9jYXRlZCBiYXNlZCBvbiBjb250ZW50IGRpbWVuc2lvbnMsIGJ1dCBzaHJpbmtzOiAwIDEgYXV0b1xuICogMS4gR3V0dGVyXG4gKi9cblxuLnVrLXRodW1ibmF2ID4gKiB7XG4gICAgLyogMSAqL1xuICAgIHBhZGRpbmctbGVmdDogJHRodW1ibmF2LW1hcmdpbi1ob3Jpem9udGFsO1xufVxuXG5cbi8qIEl0ZW1zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEl0ZW1zXG4gKi9cblxuLnVrLXRodW1ibmF2ID4gKiA+ICoge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGh1bWJuYXYtaXRlbSkpIHtAaW5jbHVkZSBob29rLXRodW1ibmF2LWl0ZW0oKTt9XG59XG5cbi8qIEhvdmVyICsgRm9jdXMgKi9cbi51ay10aHVtYm5hdiA+ICogPiA6aG92ZXIsXG4udWstdGh1bWJuYXYgPiAqID4gOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay10aHVtYm5hdi1pdGVtLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stdGh1bWJuYXYtaXRlbS1ob3ZlcigpO31cbn1cblxuLyogQWN0aXZlICovXG4udWstdGh1bWJuYXYgPiAudWstYWN0aXZlID4gKiB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRodW1ibmF2LWl0ZW0tYWN0aXZlKSkge0BpbmNsdWRlIGhvb2stdGh1bWJuYXYtaXRlbS1hY3RpdmUoKTt9XG59XG5cblxuLyogTW9kaWZpZXI6ICd1ay10aHVtYm5hdi12ZXJ0aWNhbCdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQ2hhbmdlIGRpcmVjdGlvblxuICogMi4gR3V0dGVyXG4gKi9cblxuLnVrLXRodW1ibmF2LXZlcnRpY2FsIHtcbiAgICAvKiAxICovXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAvKiAyICovXG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogKC0kdGh1bWJuYXYtbWFyZ2luLXZlcnRpY2FsKTtcbn1cblxuLyogMiAqL1xuLnVrLXRodW1ibmF2LXZlcnRpY2FsID4gKiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctdG9wOiAkdGh1bWJuYXYtbWFyZ2luLXZlcnRpY2FsO1xufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLXRodW1ibmF2LW1pc2MpKSB7QGluY2x1ZGUgaG9vay10aHVtYm5hdi1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay10aHVtYm5hdigpe31cbi8vIEBtaXhpbiBob29rLXRodW1ibmF2LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay10aHVtYm5hdi1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stdGh1bWJuYXYtaXRlbS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay10aHVtYm5hdi1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS10aHVtYm5hdi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS10aHVtYm5hdi1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS10aHVtYm5hdi1pdGVtLWFjdGl2ZSgpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIEljb25uYXZcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBpY29uIG5hdmlnYXRpb25zXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstaWNvbm5hdmBcbi8vXG4vLyBNb2RpZmllcjogICAgICAgIGB1ay1pY29ubmF2LXZlcnRpY2FsYFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLWFjdGl2ZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kaWNvbm5hdi1tYXJnaW4taG9yaXpvbnRhbDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtbWFyZ2luICFkZWZhdWx0O1xuJGljb25uYXYtbWFyZ2luLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgICAgICAkaWNvbm5hdi1tYXJnaW4taG9yaXpvbnRhbCAhZGVmYXVsdDtcblxuJGljb25uYXYtaXRlbS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kaWNvbm5hdi1pdGVtLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbiRpY29ubmF2LWl0ZW0tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogSWNvbm5hdlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBBbGxvdyBpdGVtcyB0byB3cmFwIGludG8gdGhlIG5leHQgbGluZVxuICogMi4gUmVzZXQgbGlzdFxuICogMy4gR3V0dGVyXG4gKi9cblxuLnVrLWljb25uYXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLyogMSAqL1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAvKiAyICovXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAvKiAzICovXG4gICAgbWFyZ2luLWxlZnQ6ICgtJGljb25uYXYtbWFyZ2luLWhvcml6b250YWwpO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1pY29ubmF2KSkge0BpbmNsdWRlIGhvb2staWNvbm5hdigpO31cbn1cblxuLypcbiAqIFNwYWNlIGlzIGFsbG9jYXRlZCBiYXNlZCBvbiBjb250ZW50IGRpbWVuc2lvbnMsIGJ1dCBzaHJpbmtzOiAwIDEgYXV0b1xuICogMS4gR3V0dGVyXG4gKi9cblxuLnVrLWljb25uYXYgPiAqIHtcbiAgICAvKiAxICovXG4gICAgcGFkZGluZy1sZWZ0OiAkaWNvbm5hdi1tYXJnaW4taG9yaXpvbnRhbDtcbn1cblxuXG4vKiBJdGVtc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBJdGVtcyBtdXN0IHRhcmdldCBgYWAgZWxlbWVudHMgdG8gZXhjbHVkZSBvdGhlciBlbGVtZW50cyAoZS5nLiBkcm9wZG93bnMpXG4gKiAxLiBQcmV2ZW50IGdhcCBpZiBjaGlsZCBlbGVtZW50IGlzIGBpbmxpbmUtYmxvY2tgLCBlLmcuIGFuIGljb25cbiAqIDIuIFN0eWxlXG4gKi9cblxuLnVrLWljb25uYXYgPiAqID4gYSB7XG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC8qIDIgKi9cbiAgICBjb2xvcjogJGljb25uYXYtaXRlbS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staWNvbm5hdi1pdGVtKSkge0BpbmNsdWRlIGhvb2staWNvbm5hdi1pdGVtKCk7fVxufVxuXG4vKiBIb3ZlciArIEZvY3VzICovXG4udWstaWNvbm5hdiA+ICogPiBhOmhvdmVyLFxuLnVrLWljb25uYXYgPiAqID4gYTpmb2N1cyB7XG4gICAgY29sb3I6ICRpY29ubmF2LWl0ZW0taG92ZXItY29sb3I7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staWNvbm5hdi1pdGVtLWhvdmVyKSkge0BpbmNsdWRlIGhvb2staWNvbm5hdi1pdGVtLWhvdmVyKCk7fVxufVxuXG4vKiBBY3RpdmUgKi9cbi51ay1pY29ubmF2ID4gLnVrLWFjdGl2ZSA+IGEge1xuICAgIGNvbG9yOiAkaWNvbm5hdi1pdGVtLWFjdGl2ZS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2staWNvbm5hdi1pdGVtLWFjdGl2ZSkpIHtAaW5jbHVkZSBob29rLWljb25uYXYtaXRlbS1hY3RpdmUoKTt9XG59XG5cblxuLyogTW9kaWZpZXI6ICd1ay1pY29ubmF2LXZlcnRpY2FsJ1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBDaGFuZ2UgZGlyZWN0aW9uXG4gKiAyLiBHdXR0ZXJcbiAqL1xuXG4udWstaWNvbm5hdi12ZXJ0aWNhbCB7XG4gICAgLyogMSAqL1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgLyogMiAqL1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6ICgtJGljb25uYXYtbWFyZ2luLXZlcnRpY2FsKTtcbn1cblxuLyogMiAqL1xuLnVrLWljb25uYXYtdmVydGljYWwgPiAqIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy10b3A6ICRpY29ubmF2LW1hcmdpbi12ZXJ0aWNhbDtcbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1pY29ubmF2LW1pc2MpKSB7QGluY2x1ZGUgaG9vay1pY29ubmF2LW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWljb25uYXYoKXt9XG4vLyBAbWl4aW4gaG9vay1pY29ubmF2LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1pY29ubmF2LWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pY29ubmF2LWl0ZW0tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2staWNvbm5hdi1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kaW52ZXJzZS1pY29ubmF2LWl0ZW0tY29sb3I6ICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWljb25uYXYtaXRlbS1ob3Zlci1jb2xvcjogICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtaWNvbm5hdi1pdGVtLWFjdGl2ZS1jb2xvcjogICAgICAgICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWljb25uYXYtaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtaWNvbm5hdi1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1pY29ubmF2LWl0ZW0tYWN0aXZlKCl7fSIsIi8vIE5hbWU6ICAgICAgICAgICAgTGlnaHRib3hcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29tcG9uZW50IHRvIGNyZWF0ZSBhbiBsaWdodGJveCBpbWFnZSBnYWxsZXJ5XG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstbGlnaHRib3hgXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstbGlnaHRib3gtcGFnZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxpZ2h0Ym94LWl0ZW1zYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGlnaHRib3gtdG9vbGJhcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxpZ2h0Ym94LXRvb2xiYXItaWNvbmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxpZ2h0Ym94LWJ1dHRvbmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWxpZ2h0Ym94LWNhcHRpb25gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saWdodGJveC1pZnJhbWVgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstb3BlbmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kbGlnaHRib3gtei1pbmRleDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC16LWluZGV4ICsgMTAgIWRlZmF1bHQ7XG4kbGlnaHRib3gtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcblxuJGxpZ2h0Ym94LWl0ZW0tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEoMjU1LDI1NSwyNTUsMC43KSAhZGVmYXVsdDtcbiRsaWdodGJveC1pdGVtLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAxMDB2dyAhZGVmYXVsdDtcbiRsaWdodGJveC1pdGVtLW1heC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAxMDB2aCAhZGVmYXVsdDtcblxuJGxpZ2h0Ym94LXRvb2xiYXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kbGlnaHRib3gtdG9vbGJhci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRsaWdodGJveC10b29sYmFyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLDAuMykgIWRlZmF1bHQ7XG4kbGlnaHRib3gtdG9vbGJhci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgyNTUsMjU1LDI1NSwwLjcpICFkZWZhdWx0O1xuXG4kbGlnaHRib3gtdG9vbGJhci1pY29uLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgNXB4ICFkZWZhdWx0O1xuJGxpZ2h0Ym94LXRvb2xiYXItaWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgIHJnYmEoMjU1LDI1NSwyNTUsMC43KSAhZGVmYXVsdDtcblxuJGxpZ2h0Ym94LXRvb2xiYXItaWNvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRsaWdodGJveC1idXR0b24tc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICA1MHB4ICFkZWZhdWx0O1xuJGxpZ2h0Ym94LWJ1dHRvbi1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICRsaWdodGJveC10b29sYmFyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbGlnaHRib3gtYnV0dG9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgyNTUsMjU1LDI1NSwwLjcpICFkZWZhdWx0O1xuXG4kbGlnaHRib3gtYnV0dG9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogTGlnaHRib3hcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gSGlkZSBieSBkZWZhdWx0XG4gKiAyLiBTZXQgcG9zaXRpb25cbiAqIDMuIEFsbG93IHNjcm9sbGluZyBmb3IgdGhlIG1vZGFsIGRpYWxvZ1xuICogNC4gSG9yaXpvbnRhbCBwYWRkaW5nXG4gKiA1LiBNYXNrIHRoZSBiYWNrZ3JvdW5kIHBhZ2VcbiAqIDYuIEZhZGUtaW4gdHJhbnNpdGlvblxuICogNy4gUHJldmVudCBjYW5jZWxsYXRpb24gb2YgcG9pbnRlciBldmVudHMgd2hpbGUgZHJhZ2dpbmdcbiAqL1xuXG4udWstbGlnaHRib3gge1xuICAgIC8qIDEgKi9cbiAgICBkaXNwbGF5OiBub25lO1xuICAgIC8qIDIgKi9cbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICRsaWdodGJveC16LWluZGV4O1xuICAgIC8qIDUgKi9cbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHRib3gtYmFja2dyb3VuZDtcbiAgICAvKiA2ICovXG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGxpbmVhcjtcbiAgICAvKiA3ICovXG4gICAgdG91Y2gtYWN0aW9uOiBwaW5jaC16b29tO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1saWdodGJveCkpIHtAaW5jbHVkZSBob29rLWxpZ2h0Ym94KCk7fVxufVxuXG4vKlxuICogT3BlblxuICogMS4gQ2VudGVyIGNoaWxkXG4gKiAyLiBGYWRlLWluXG4gKi9cblxuLnVrLWxpZ2h0Ym94LnVrLW9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC8qIDIgKi9cbiAgICBvcGFjaXR5OiAxO1xufVxuXG5cbi8qIFBhZ2VcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUHJldmVudCBzY3JvbGxiYXJzXG4gKi9cblxuLnVrLWxpZ2h0Ym94LXBhZ2UgeyBvdmVyZmxvdzogaGlkZGVuOyB9XG5cblxuLyogSXRlbVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBDZW50ZXIgY2hpbGQgd2l0aGluIHRoZSB2aWV3cG9ydFxuICogMi4gTm90IHZpc2libGUgYnkgZGVmYXVsdFxuICogMy4gQ29sb3IgbmVlZGVkIGZvciBzcGlubmVyIGljb25cbiAqIDQuIE9wdGltaXplIGFuaW1hdGlvblxuICogNS4gUmVzcG9uc2l2ZW5lc3NcbiAqICAgIFVzaW5nIGB2aGAgZm9yIGBtYXgtaGVpZ2h0YCB0byBmaXggaW1hZ2UgcHJvcG9ydGlvbnMgYWZ0ZXIgcmVzaXplIGluIFNhZmFyaSBhbmQgT3BlcmFcbiAqICAgIFVzaW5nIGB2aGAgYW5kIGB2d2AgdG8gbWFrZSByZXNwb25zaXZlIGltYWdlIHdvcmsgaW4gSUUxMVxuICogNi4gU3VwcHJlc3Mgb3V0bGluZSBvbiBmb2N1c1xuICovXG5cbi51ay1saWdodGJveC1pdGVtcyA+ICoge1xuICAgIC8qIDEgKi9cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIC8qIDIgKi9cbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgLyogMyAqL1xuICAgIGNvbG9yOiAkbGlnaHRib3gtaXRlbS1jb2xvcjtcbiAgICAvKiA0ICovXG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbGlnaHRib3gtaXRlbSkpIHtAaW5jbHVkZSBob29rLWxpZ2h0Ym94LWl0ZW0oKTt9XG59XG5cbi8qIDUgKi9cbi51ay1saWdodGJveC1pdGVtcyA+ICogPiAqIHtcbiAgICBtYXgtd2lkdGg6ICRsaWdodGJveC1pdGVtLW1heC13aWR0aDtcbiAgICBtYXgtaGVpZ2h0OiAkbGlnaHRib3gtaXRlbS1tYXgtaGVpZ2h0O1xufVxuXG4vKiA2ICovXG4udWstbGlnaHRib3gtaXRlbXMgPiA6Zm9jdXMgeyBvdXRsaW5lOiBub25lOyB9XG5cbi51ay1saWdodGJveC1pdGVtcyA+ICogPiA6bm90KGlmcmFtZSkge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLnVrLWxpZ2h0Ym94LWl0ZW1zID4gLnVrLWFjdGl2ZSB7IGRpc3BsYXk6IGZsZXg7IH1cblxuLyogVG9vbGJhclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1saWdodGJveC10b29sYmFyIHtcbiAgICBwYWRkaW5nOiAkbGlnaHRib3gtdG9vbGJhci1wYWRkaW5nLXZlcnRpY2FsICRsaWdodGJveC10b29sYmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHRib3gtdG9vbGJhci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbGlnaHRib3gtdG9vbGJhci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbGlnaHRib3gtdG9vbGJhcikpIHtAaW5jbHVkZSBob29rLWxpZ2h0Ym94LXRvb2xiYXIoKTt9XG59XG5cbi51ay1saWdodGJveC10b29sYmFyID4gKiB7IGNvbG9yOiAkbGlnaHRib3gtdG9vbGJhci1jb2xvcjsgfVxuXG5cbi8qIFRvb2xiYXIgSWNvbiAoQ2xvc2UpXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWxpZ2h0Ym94LXRvb2xiYXItaWNvbiB7XG4gICAgcGFkZGluZzogJGxpZ2h0Ym94LXRvb2xiYXItaWNvbi1wYWRkaW5nO1xuICAgIGNvbG9yOiAkbGlnaHRib3gtdG9vbGJhci1pY29uLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1saWdodGJveC10b29sYmFyLWljb24pKSB7QGluY2x1ZGUgaG9vay1saWdodGJveC10b29sYmFyLWljb24oKTt9XG59XG5cbi8qXG4gKiBIb3ZlclxuICovXG5cbi51ay1saWdodGJveC10b29sYmFyLWljb246aG92ZXIge1xuICAgIGNvbG9yOiAkbGlnaHRib3gtdG9vbGJhci1pY29uLWhvdmVyLWNvbG9yO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1saWdodGJveC10b29sYmFyLWljb24taG92ZXIpKSB7QGluY2x1ZGUgaG9vay1saWdodGJveC10b29sYmFyLWljb24taG92ZXIoKTt9XG59XG5cblxuXG4vKiBCdXR0b24gKFNsaWRlbmF2KVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBDZW50ZXIgaWNvbiB2ZXJ0aWNhbGx5IGFuZCBob3Jpem9udGFsbHlcbiAqL1xuXG4udWstbGlnaHRib3gtYnV0dG9uIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAkbGlnaHRib3gtYnV0dG9uLXNpemU7XG4gICAgaGVpZ2h0OiAkbGlnaHRib3gtYnV0dG9uLXNpemU7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0Ym94LWJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbGlnaHRib3gtYnV0dG9uLWNvbG9yO1xuICAgIC8qIDEgKi9cbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1saWdodGJveC1idXR0b24pKSB7QGluY2x1ZGUgaG9vay1saWdodGJveC1idXR0b24oKTt9XG59XG5cbi8qIEhvdmVyICsgRm9jdXMgKi9cbi51ay1saWdodGJveC1idXR0b246aG92ZXIsXG4udWstbGlnaHRib3gtYnV0dG9uOmZvY3VzIHtcbiAgICBjb2xvcjogJGxpZ2h0Ym94LWJ1dHRvbi1ob3Zlci1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stbGlnaHRib3gtYnV0dG9uLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stbGlnaHRib3gtYnV0dG9uLWhvdmVyKCk7fVxufVxuXG4vKiBPbkNsaWNrICovXG4udWstbGlnaHRib3gtYnV0dG9uOmFjdGl2ZSB7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWxpZ2h0Ym94LWJ1dHRvbi1hY3RpdmUpKSB7QGluY2x1ZGUgaG9vay1saWdodGJveC1idXR0b24tYWN0aXZlKCk7fVxufVxuXG5cbi8qIENhcHRpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbGlnaHRib3gtY2FwdGlvbjplbXB0eSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuXG4vKiBJZnJhbWVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbGlnaHRib3gtaWZyYW1lIHtcbiAgICB3aWR0aDogODAlO1xuICAgIGhlaWdodDogODAlO1xufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWxpZ2h0Ym94LW1pc2MpKSB7QGluY2x1ZGUgaG9vay1saWdodGJveC1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1saWdodGJveCgpe31cbi8vIEBtaXhpbiBob29rLWxpZ2h0Ym94LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1saWdodGJveC10b29sYmFyKCl7fVxuLy8gQG1peGluIGhvb2stbGlnaHRib3gtdG9vbGJhci1pY29uKCl7fVxuLy8gQG1peGluIGhvb2stbGlnaHRib3gtdG9vbGJhci1pY29uLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stbGlnaHRib3gtYnV0dG9uKCl7fVxuLy8gQG1peGluIGhvb2stbGlnaHRib3gtYnV0dG9uLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stbGlnaHRib3gtYnV0dG9uLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLWxpZ2h0Ym94LW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIEFuaW1hdGlvblxuLy8gRGVzY3JpcHRpb246ICAgICBVdGlsaXRpZXMgZm9yIGtleWZyYW1lIGFuaW1hdGlvbnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1hbmltYXRpb24tKmBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1hbmltYXRpb24tZmFkZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFuaW1hdGlvbi1zY2FsZS11cGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFuaW1hdGlvbi1zY2FsZS1kb3duYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYW5pbWF0aW9uLXNsaWRlLXRvcC0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYW5pbWF0aW9uLXNsaWRlLWJvdHRvbS0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYW5pbWF0aW9uLXNsaWRlLWxlZnQtKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFuaW1hdGlvbi1zbGlkZS1yaWdodC0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYW5pbWF0aW9uLWtlbmJ1cm5zYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYW5pbWF0aW9uLXNoYWtlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYW5pbWF0aW9uLXN0cm9rZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFuaW1hdGlvbi1yZXZlcnNlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYW5pbWF0aW9uLWZhc3RgXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstYW5pbWF0aW9uLXRvZ2dsZWBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1hY3RpdmVgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGFuaW1hdGlvbi1kdXJhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuNXMgIWRlZmF1bHQ7XG4kYW5pbWF0aW9uLWZhZGUtZHVyYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgMC44cyAhZGVmYXVsdDtcbiRhbmltYXRpb24tc3Ryb2tlLWR1cmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAycyAhZGVmYXVsdDtcbiRhbmltYXRpb24ta2VuYnVybnMtZHVyYXRpb246ICAgICAgICAgICAgICAgICAgICAxNXMgIWRlZmF1bHQ7XG4kYW5pbWF0aW9uLWZhc3QtZHVyYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgMC4xcyAhZGVmYXVsdDtcblxuJGFuaW1hdGlvbi1zbGlkZS1zbWFsbC10cmFuc2xhdGU6ICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kYW5pbWF0aW9uLXNsaWRlLW1lZGl1bS10cmFuc2xhdGU6ICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQW5pbWF0aW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuW2NsYXNzKj0ndWstYW5pbWF0aW9uLSddIHtcbiAgICBhbmltYXRpb24tZHVyYXRpb246ICRhbmltYXRpb24tZHVyYXRpb247XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbn1cblxuXG4vKiBBbmltYXRpb25zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEZhZGVcbiAqL1xuXG4udWstYW5pbWF0aW9uLWZhZGUge1xuICAgIGFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGFuaW1hdGlvbi1mYWRlLWR1cmF0aW9uO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbn1cblxuLypcbiAqIFNjYWxlXG4gKi9cblxuLnVrLWFuaW1hdGlvbi1zY2FsZS11cCB7IGFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLXNjYWxlLTAyOyB9XG4udWstYW5pbWF0aW9uLXNjYWxlLWRvd24geyBhbmltYXRpb24tbmFtZTogdWstZmFkZS1zY2FsZS0xODsgfVxuXG4vKlxuICogU2xpZGVcbiAqL1xuXG4udWstYW5pbWF0aW9uLXNsaWRlLXRvcCB7IGFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLXRvcDsgfVxuLnVrLWFuaW1hdGlvbi1zbGlkZS1ib3R0b20geyBhbmltYXRpb24tbmFtZTogdWstZmFkZS1ib3R0b207IH1cbi51ay1hbmltYXRpb24tc2xpZGUtbGVmdCB7IGFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLWxlZnQ7IH1cbi51ay1hbmltYXRpb24tc2xpZGUtcmlnaHQgeyBhbmltYXRpb24tbmFtZTogdWstZmFkZS1yaWdodDsgfVxuXG4vKlxuICogU2xpZGUgU21hbGxcbiAqL1xuXG4udWstYW5pbWF0aW9uLXNsaWRlLXRvcC1zbWFsbCB7IGFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLXRvcC1zbWFsbDsgfVxuLnVrLWFuaW1hdGlvbi1zbGlkZS1ib3R0b20tc21hbGwgeyBhbmltYXRpb24tbmFtZTogdWstZmFkZS1ib3R0b20tc21hbGw7IH1cbi51ay1hbmltYXRpb24tc2xpZGUtbGVmdC1zbWFsbCB7IGFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLWxlZnQtc21hbGw7IH1cbi51ay1hbmltYXRpb24tc2xpZGUtcmlnaHQtc21hbGwgeyBhbmltYXRpb24tbmFtZTogdWstZmFkZS1yaWdodC1zbWFsbDsgfVxuXG4vKlxuICogU2xpZGUgTWVkaXVtXG4gKi9cblxuLnVrLWFuaW1hdGlvbi1zbGlkZS10b3AtbWVkaXVtIHsgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUtdG9wLW1lZGl1bTsgfVxuLnVrLWFuaW1hdGlvbi1zbGlkZS1ib3R0b20tbWVkaXVtIHsgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUtYm90dG9tLW1lZGl1bTsgfVxuLnVrLWFuaW1hdGlvbi1zbGlkZS1sZWZ0LW1lZGl1bSB7IGFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLWxlZnQtbWVkaXVtOyB9XG4udWstYW5pbWF0aW9uLXNsaWRlLXJpZ2h0LW1lZGl1bSB7IGFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLXJpZ2h0LW1lZGl1bTsgfVxuXG4vKlxuICogS2VuYnVybnNcbiAqL1xuXG4udWstYW5pbWF0aW9uLWtlbmJ1cm5zIHtcbiAgICBhbmltYXRpb24tbmFtZTogdWstc2NhbGUta2VuYnVybnM7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkYW5pbWF0aW9uLWtlbmJ1cm5zLWR1cmF0aW9uO1xufVxuXG4vKlxuICogU2hha2VcbiAqL1xuXG4udWstYW5pbWF0aW9uLXNoYWtlIHsgYW5pbWF0aW9uLW5hbWU6IHVrLXNoYWtlOyB9XG5cbi8qXG4gKiBTVkcgU3Ryb2tlXG4gKiBUaGUgYC0tdWstYW5pbWF0aW9uLXN0cm9rZWAgY3VzdG9tIHByb3BlcnR5IGNvbnRhaW5zIHRoZSBsb25nZXN0IHBhdGggbGVuZ3RoLlxuICogU2V0IGl0IG1hbnVhbGx5IG9yIHVzZSBgdWstc3ZnPVwic3Ryb2tlLWFuaW1hdGlvbjogdHJ1ZVwiYCB0byBzZXQgaXQgYXV0b21hdGljYWxseS5cbiAqIEFsbCBzdHJva2VzIGFyZSBhbmltYXRlZCBieSB0aGUgc2FtZSBwYWNlIGFuZCBkb2Vzbid0IGVuZCBzaW11bHRhbmVvdXNseS5cbiAqIFRvIGVuZCBzaW11bHRhbmVvdXNseSwgYHBhdGhMZW5ndGg9XCIxXCJgIGNvdWxkIGJlIHVzZWQsIGJ1dCBpdCdzIG5vdCB3b3JraW5nIGluIFNhZmFyaSB5ZXQuXG4gKi9cblxuLnVrLWFuaW1hdGlvbi1zdHJva2Uge1xuICAgIGFuaW1hdGlvbi1uYW1lOiB1ay1zdHJva2U7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogdmFyKC0tdWstYW5pbWF0aW9uLXN0cm9rZSk7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkYW5pbWF0aW9uLXN0cm9rZS1kdXJhdGlvbjtcbn1cblxuXG4vKiBEaXJlY3Rpb24gbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gLnVrLWFuaW1hdGlvbi1yZXZlcnNlIHtcbiAgICBhbmltYXRpb24tZGlyZWN0aW9uOiByZXZlcnNlO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG59XG5cblxuLyogRHVyYXRpb24gbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gLnVrLWFuaW1hdGlvbi1mYXN0IHsgYW5pbWF0aW9uLWR1cmF0aW9uOiAkYW5pbWF0aW9uLWZhc3QtZHVyYXRpb247IH1cblxuXG4vKiBUb2dnbGUgKEhvdmVyICsgRm9jdXMpXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogVGhlIHRvZ2dsZSBpcyB0cmlnZ2VyZWQgb24gdG91Y2ggZGV2aWNlcyB1c2luZyBgOmZvY3VzYCBhbmQgdGFiaW5kZXhcbiAqL1xuXG4udWstYW5pbWF0aW9uLXRvZ2dsZTpub3QoOmhvdmVyKTpub3QoOmZvY3VzKSBbY2xhc3MqPSd1ay1hbmltYXRpb24tJ10geyBhbmltYXRpb24tbmFtZTogbm9uZTsgfVxuXG4vKlxuICogMS4gUHJldmVudCB0YWIgaGlnaGxpZ2h0aW5nIG9uIGlPUy5cbiAqL1xuXG4udWstYW5pbWF0aW9uLXRvZ2dsZSB7XG4gICAgLyogMSAqL1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qXG4gKiBSZW1vdmUgb3V0bGluZSBmb3IgYHRhYmluZGV4YFxuICovXG5cbi51ay1hbmltYXRpb24tdG9nZ2xlOmZvY3VzIHsgb3V0bGluZTogbm9uZTsgfVxuXG5cbi8qIEtleWZyYW1lcyB1c2VkIGJ5IGFuaW1hdGlvbiBjbGFzc2VzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEZhZGVcbiAqL1xuXG5Aa2V5ZnJhbWVzIHVrLWZhZGUge1xuICAgIDAlIHsgb3BhY2l0eTogMDsgfVxuICAgIDEwMCUgeyBvcGFjaXR5OiAxOyB9XG59XG5cbi8qXG4gKiBTbGlkZSBUb3BcbiAqL1xuXG5Aa2V5ZnJhbWVzIHVrLWZhZGUtdG9wIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxufVxuXG4vKlxuICogU2xpZGUgQm90dG9tXG4gKi9cblxuQGtleWZyYW1lcyB1ay1mYWRlLWJvdHRvbSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxufVxuXG4vKlxuICogU2xpZGUgTGVmdFxuICovXG5cbkBrZXlmcmFtZXMgdWstZmFkZS1sZWZ0IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxufVxuXG4vKlxuICogU2xpZGUgUmlnaHRcbiAqL1xuXG5Aa2V5ZnJhbWVzIHVrLWZhZGUtcmlnaHQge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cbn1cblxuLypcbiAqIFNsaWRlIFRvcCBTbWFsbFxuICovXG5cbkBrZXlmcmFtZXMgdWstZmFkZS10b3Atc21hbGwge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kYW5pbWF0aW9uLXNsaWRlLXNtYWxsLXRyYW5zbGF0ZSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxufVxuXG4vKlxuICogU2xpZGUgQm90dG9tIFNtYWxsXG4gKi9cblxuQGtleWZyYW1lcyB1ay1mYWRlLWJvdHRvbS1zbWFsbCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJGFuaW1hdGlvbi1zbGlkZS1zbWFsbC10cmFuc2xhdGUpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbn1cblxuLypcbiAqIFNsaWRlIExlZnQgU21hbGxcbiAqL1xuXG5Aa2V5ZnJhbWVzIHVrLWZhZGUtbGVmdC1zbWFsbCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRhbmltYXRpb24tc2xpZGUtc21hbGwtdHJhbnNsYXRlKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG59XG5cbi8qXG4gKiBTbGlkZSBSaWdodCBTbWFsbFxuICovXG5cbkBrZXlmcmFtZXMgdWstZmFkZS1yaWdodC1zbWFsbCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJGFuaW1hdGlvbi1zbGlkZS1zbWFsbC10cmFuc2xhdGUpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cbn1cblxuLypcbiAqIFNsaWRlIFRvcCBNZWRpdW1cbiAqL1xuXG5Aa2V5ZnJhbWVzIHVrLWZhZGUtdG9wLW1lZGl1bSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRhbmltYXRpb24tc2xpZGUtbWVkaXVtLXRyYW5zbGF0ZSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxufVxuXG4vKlxuICogU2xpZGUgQm90dG9tIE1lZGl1bVxuICovXG5cbkBrZXlmcmFtZXMgdWstZmFkZS1ib3R0b20tbWVkaXVtIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkYW5pbWF0aW9uLXNsaWRlLW1lZGl1bS10cmFuc2xhdGUpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbn1cblxuLypcbiAqIFNsaWRlIExlZnQgTWVkaXVtXG4gKi9cblxuQGtleWZyYW1lcyB1ay1mYWRlLWxlZnQtbWVkaXVtIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJGFuaW1hdGlvbi1zbGlkZS1tZWRpdW0tdHJhbnNsYXRlKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG59XG5cbi8qXG4gKiBTbGlkZSBSaWdodCBNZWRpdW1cbiAqL1xuXG5Aa2V5ZnJhbWVzIHVrLWZhZGUtcmlnaHQtbWVkaXVtIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkYW5pbWF0aW9uLXNsaWRlLW1lZGl1bS10cmFuc2xhdGUpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cbn1cblxuLypcbiAqIFNjYWxlIFVwXG4gKi9cblxuQGtleWZyYW1lcyB1ay1mYWRlLXNjYWxlLTAyIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC4yKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxufVxuXG4vKlxuICogU2NhbGUgRG93blxuICovXG5cbkBrZXlmcmFtZXMgdWstZmFkZS1zY2FsZS0xOCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuOCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbn1cblxuLypcbiAqIEtlbmJ1cm5zXG4gKi9cblxuQGtleWZyYW1lcyB1ay1zY2FsZS1rZW5idXJucyB7XG4gICAgMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMS4yKTsgfVxufVxuXG4vKlxuICogU2hha2VcbiAqL1xuXG5Aa2V5ZnJhbWVzIHVrLXNoYWtlIHtcbiAgICAwJSwgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuICAgIDEwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtOXB4KTsgfVxuICAgIDIwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCg4cHgpOyB9XG4gICAgMzAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC03cHgpOyB9XG4gICAgNDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDZweCk7IH1cbiAgICA1MCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7IH1cbiAgICA2MCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTsgfVxuICAgIDcwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KTsgfVxuICAgIDgwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpOyB9XG4gICAgOTAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xcHgpOyB9XG59XG5cbi8qXG4gKiBTdHJva2VcbiAqL1xuXG4gQGtleWZyYW1lcyB1ay1zdHJva2Uge1xuICAgIDAlIHsgc3Ryb2tlLWRhc2hvZmZzZXQ6IHZhcigtLXVrLWFuaW1hdGlvbi1zdHJva2UpOyB9XG4gICAgMTAwJSB7IHN0cm9rZS1kYXNob2Zmc2V0OiAwOyB9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stYW5pbWF0aW9uLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1hbmltYXRpb24tbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stYW5pbWF0aW9uLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIFdpZHRoXG4vLyBEZXNjcmlwdGlvbjogICAgIFV0aWxpdGllcyBmb3Igd2lkdGhzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstY2hpbGQtd2lkdGgtKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXdpZHRoLSpgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHdpZHRoLXNtYWxsLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE1MHB4ICFkZWZhdWx0O1xuJHdpZHRoLW1lZGl1bS13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuJHdpZHRoLWxhcmdlLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQ1MHB4ICFkZWZhdWx0O1xuJHdpZHRoLXhsYXJnZS13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDYwMHB4ICFkZWZhdWx0O1xuJHdpZHRoLTJ4bGFyZ2Utd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDc1MHB4ICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBXaWR0aFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuLyogRXF1YWwgY2hpbGQgd2lkdGhzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuW2NsYXNzKj0ndWstY2hpbGQtd2lkdGgnXSA+ICoge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi51ay1jaGlsZC13aWR0aC0xLTIgPiAqIHsgd2lkdGg6IDUwJTsgfVxuLnVrLWNoaWxkLXdpZHRoLTEtMyA+ICogeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlICogMSAvIDMuMDAxKScpOyB9XG4udWstY2hpbGQtd2lkdGgtMS00ID4gKiB7IHdpZHRoOiAyNSU7IH1cbi51ay1jaGlsZC13aWR0aC0xLTUgPiAqIHsgd2lkdGg6IDIwJTsgfVxuLnVrLWNoaWxkLXdpZHRoLTEtNiA+ICogeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlICogMSAvIDYuMDAxKScpOyB9XG5cbi51ay1jaGlsZC13aWR0aC1hdXRvID4gKiB7IHdpZHRoOiBhdXRvOyB9XG5cbi8qXG4gKiAxLiBSZXNldCB0aGUgYG1pbi13aWR0aGAsIHdoaWNoIGlzIHNldCB0byBhdXRvIGJ5IGRlZmF1bHQsIGJlY2F1c2VcbiAqICAgIGZsZXggaXRlbXMgd29uJ3Qgc2hyaW5rIGJlbG93IHRoZWlyIG1pbmltdW0gaW50cmluc2ljIGNvbnRlbnQgc2l6ZS5cbiAqICAgIFVzaW5nIGAxcHhgIGluc3RlYWQgb2YgYDBgLCBzbyBpdGVtcyBzdGlsbCB3cmFwIGludG8gdGhlIG5leHQgbGluZSxcbiAqICAgIGlmIHRoZXkgaGF2ZSB6ZXJvIHdpZHRoIGFuZCBwYWRkaW5nIGFuZCB0aGUgcHJlZGVjZXNzb3IgaXMgMTAwJSB3aWRlLlxuICovXG5cbi51ay1jaGlsZC13aWR0aC1leHBhbmQgPiA6bm90KFtjbGFzcyo9J3VrLXdpZHRoJ10pIHtcbiAgICBmbGV4OiAxO1xuICAgIC8qIDEgKi9cbiAgICBtaW4td2lkdGg6IDFweDtcbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtMVxcQHMgPiAqIHsgd2lkdGg6IDEwMCU7IH1cbiAgICAudWstY2hpbGQtd2lkdGgtMS0yXFxAcyA+ICogeyB3aWR0aDogNTAlOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtM1xcQHMgPiAqIHsgd2lkdGg6IHVucXVvdGUoJ2NhbGMoMTAwJSAqIDEgLyAzLjAwMSknKTsgfVxuICAgIC51ay1jaGlsZC13aWR0aC0xLTRcXEBzID4gKiB7IHdpZHRoOiAyNSU7IH1cbiAgICAudWstY2hpbGQtd2lkdGgtMS01XFxAcyA+ICogeyB3aWR0aDogMjAlOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtNlxcQHMgPiAqIHsgd2lkdGg6IHVucXVvdGUoJ2NhbGMoMTAwJSAqIDEgLyA2LjAwMSknKTsgfVxuXG4gICAgLnVrLWNoaWxkLXdpZHRoLWF1dG9cXEBzID4gKiB7IHdpZHRoOiBhdXRvOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLWV4cGFuZFxcQHMgPiA6bm90KFtjbGFzcyo9J3VrLXdpZHRoJ10pIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgbWluLXdpZHRoOiAxcHg7XG4gICAgfVxuXG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtMVxcQG0gPiAqIHsgd2lkdGg6IDEwMCU7IH1cbiAgICAudWstY2hpbGQtd2lkdGgtMS0yXFxAbSA+ICogeyB3aWR0aDogNTAlOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtM1xcQG0gPiAqIHsgd2lkdGg6IHVucXVvdGUoJ2NhbGMoMTAwJSAqIDEgLyAzLjAwMSknKTsgfVxuICAgIC51ay1jaGlsZC13aWR0aC0xLTRcXEBtID4gKiB7IHdpZHRoOiAyNSU7IH1cbiAgICAudWstY2hpbGQtd2lkdGgtMS01XFxAbSA+ICogeyB3aWR0aDogMjAlOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtNlxcQG0gPiAqIHsgd2lkdGg6IHVucXVvdGUoJ2NhbGMoMTAwJSAqIDEgLyA2LjAwMSknKTsgfVxuXG4gICAgLnVrLWNoaWxkLXdpZHRoLWF1dG9cXEBtID4gKiB7IHdpZHRoOiBhdXRvOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLWV4cGFuZFxcQG0gPiA6bm90KFtjbGFzcyo9J3VrLXdpZHRoJ10pIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgbWluLXdpZHRoOiAxcHg7XG4gICAgfVxuXG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAudWstY2hpbGQtd2lkdGgtMS0xXFxAbCA+ICogeyB3aWR0aDogMTAwJTsgfVxuICAgIC51ay1jaGlsZC13aWR0aC0xLTJcXEBsID4gKiB7IHdpZHRoOiA1MCU7IH1cbiAgICAudWstY2hpbGQtd2lkdGgtMS0zXFxAbCA+ICogeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlICogMSAvIDMuMDAxKScpOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtNFxcQGwgPiAqIHsgd2lkdGg6IDI1JTsgfVxuICAgIC51ay1jaGlsZC13aWR0aC0xLTVcXEBsID4gKiB7IHdpZHRoOiAyMCU7IH1cbiAgICAudWstY2hpbGQtd2lkdGgtMS02XFxAbCA+ICogeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlICogMSAvIDYuMDAxKScpOyB9XG5cbiAgICAudWstY2hpbGQtd2lkdGgtYXV0b1xcQGwgPiAqIHsgd2lkdGg6IGF1dG87IH1cbiAgICAudWstY2hpbGQtd2lkdGgtZXhwYW5kXFxAbCA+IDpub3QoW2NsYXNzKj0ndWstd2lkdGgnXSkge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBtaW4td2lkdGg6IDFweDtcbiAgICB9XG5cbn1cblxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bGFyZ2UpIHtcblxuICAgIC51ay1jaGlsZC13aWR0aC0xLTFcXEB4bCA+ICogeyB3aWR0aDogMTAwJTsgfVxuICAgIC51ay1jaGlsZC13aWR0aC0xLTJcXEB4bCA+ICogeyB3aWR0aDogNTAlOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtM1xcQHhsID4gKiB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgKiAxIC8gMy4wMDEpJyk7IH1cbiAgICAudWstY2hpbGQtd2lkdGgtMS00XFxAeGwgPiAqIHsgd2lkdGg6IDI1JTsgfVxuICAgIC51ay1jaGlsZC13aWR0aC0xLTVcXEB4bCA+ICogeyB3aWR0aDogMjAlOyB9XG4gICAgLnVrLWNoaWxkLXdpZHRoLTEtNlxcQHhsID4gKiB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgKiAxIC8gNi4wMDEpJyk7IH1cblxuICAgIC51ay1jaGlsZC13aWR0aC1hdXRvXFxAeGwgPiAqIHsgd2lkdGg6IGF1dG87IH1cbiAgICAudWstY2hpbGQtd2lkdGgtZXhwYW5kXFxAeGwgPiA6bm90KFtjbGFzcyo9J3VrLXdpZHRoJ10pIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgbWluLXdpZHRoOiAxcHg7XG4gICAgfVxuXG59XG5cblxuLyogU2luZ2xlIFdpZHRoc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBgbWF4LXdpZHRoYCBpcyBuZWVkZWQgZm9yIHRoZSBwaXhlbC1iYXNlZCBjbGFzc2VzXG4gKi9cblxuW2NsYXNzKj0ndWstd2lkdGgnXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAvKiAxICovXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4vKiBIYWx2ZXMgKi9cbi51ay13aWR0aC0xLTIgeyB3aWR0aDogNTAlOyB9XG5cbi8qIFRoaXJkcyAqL1xuLnVrLXdpZHRoLTEtMyB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgKiAxIC8gMy4wMDEpJyk7IH1cbi51ay13aWR0aC0yLTMgeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlICogMiAvIDMuMDAxKScpOyB9XG5cbi8qIFF1YXJ0ZXJzICovXG4udWstd2lkdGgtMS00IHsgd2lkdGg6IDI1JTsgfVxuLnVrLXdpZHRoLTMtNCB7IHdpZHRoOiA3NSU7IH1cblxuLyogRmlmdGhzICovXG4udWstd2lkdGgtMS01IHsgd2lkdGg6IDIwJTsgfVxuLnVrLXdpZHRoLTItNSB7IHdpZHRoOiA0MCU7IH1cbi51ay13aWR0aC0zLTUgeyB3aWR0aDogNjAlOyB9XG4udWstd2lkdGgtNC01IHsgd2lkdGg6IDgwJTsgfVxuXG4vKiBTaXh0aHMgKi9cbi51ay13aWR0aC0xLTYgeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlICogMSAvIDYuMDAxKScpOyB9XG4udWstd2lkdGgtNS02IHsgd2lkdGg6IHVucXVvdGUoJ2NhbGMoMTAwJSAqIDUgLyA2LjAwMSknKTsgfVxuXG4vKiBQaXhlbCAqL1xuLnVrLXdpZHRoLXNtYWxsIHsgd2lkdGg6ICR3aWR0aC1zbWFsbC13aWR0aDsgfVxuLnVrLXdpZHRoLW1lZGl1bSB7IHdpZHRoOiAkd2lkdGgtbWVkaXVtLXdpZHRoOyB9XG4udWstd2lkdGgtbGFyZ2UgeyB3aWR0aDogJHdpZHRoLWxhcmdlLXdpZHRoOyB9XG4udWstd2lkdGgteGxhcmdlIHsgd2lkdGg6ICR3aWR0aC14bGFyZ2Utd2lkdGg7IH1cbi51ay13aWR0aC0yeGxhcmdlIHsgd2lkdGg6ICR3aWR0aC0yeGxhcmdlLXdpZHRoOyB9XG5AaWYgKCRkZXByZWNhdGVkID09IHRydWUpIHtcbi51ay13aWR0aC14eGxhcmdlIHsgd2lkdGg6ICR3aWR0aC0yeGxhcmdlLXdpZHRoOyB9XG59XG5cbi8qIEF1dG8gKi9cbi51ay13aWR0aC1hdXRvIHsgd2lkdGg6IGF1dG87IH1cblxuLyogRXhwYW5kICovXG4udWstd2lkdGgtZXhwYW5kIHtcbiAgICBmbGV4OiAxO1xuICAgIG1pbi13aWR0aDogMXB4O1xufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG5cbiAgICAvKiBXaG9sZSAqL1xuICAgIC51ay13aWR0aC0xLTFcXEBzIHsgd2lkdGg6IDEwMCU7IH1cblxuICAgIC8qIEhhbHZlcyAqL1xuICAgIC51ay13aWR0aC0xLTJcXEBzIHsgd2lkdGg6IDUwJTsgfVxuXG4gICAgLyogVGhpcmRzICovXG4gICAgLnVrLXdpZHRoLTEtM1xcQHMgeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlICogMSAvIDMuMDAxKScpOyB9XG4gICAgLnVrLXdpZHRoLTItM1xcQHMgeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlICogMiAvIDMuMDAxKScpOyB9XG5cbiAgICAvKiBRdWFydGVycyAqL1xuICAgIC51ay13aWR0aC0xLTRcXEBzIHsgd2lkdGg6IDI1JTsgfVxuICAgIC51ay13aWR0aC0zLTRcXEBzIHsgd2lkdGg6IDc1JTsgfVxuXG4gICAgLyogRmlmdGhzICovXG4gICAgLnVrLXdpZHRoLTEtNVxcQHMgeyB3aWR0aDogMjAlOyB9XG4gICAgLnVrLXdpZHRoLTItNVxcQHMgeyB3aWR0aDogNDAlOyB9XG4gICAgLnVrLXdpZHRoLTMtNVxcQHMgeyB3aWR0aDogNjAlOyB9XG4gICAgLnVrLXdpZHRoLTQtNVxcQHMgeyB3aWR0aDogODAlOyB9XG5cbiAgICAvKiBTaXh0aHMgKi9cbiAgICAudWstd2lkdGgtMS02XFxAcyB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgKiAxIC8gNi4wMDEpJyk7IH1cbiAgICAudWstd2lkdGgtNS02XFxAcyB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgKiA1IC8gNi4wMDEpJyk7IH1cblxuICAgIC8qIFBpeGVsICovXG4gICAgLnVrLXdpZHRoLXNtYWxsXFxAcyB7IHdpZHRoOiAkd2lkdGgtc21hbGwtd2lkdGg7IH1cbiAgICAudWstd2lkdGgtbWVkaXVtXFxAcyB7IHdpZHRoOiAkd2lkdGgtbWVkaXVtLXdpZHRoOyB9XG4gICAgLnVrLXdpZHRoLWxhcmdlXFxAcyB7IHdpZHRoOiAkd2lkdGgtbGFyZ2Utd2lkdGg7IH1cbiAgICAudWstd2lkdGgteGxhcmdlXFxAcyB7IHdpZHRoOiAkd2lkdGgteGxhcmdlLXdpZHRoOyB9XG4gICAgLnVrLXdpZHRoLTJ4bGFyZ2VcXEBzIHsgd2lkdGg6ICR3aWR0aC0yeGxhcmdlLXdpZHRoOyB9XG4gICAgQGlmICgkZGVwcmVjYXRlZCA9PSB0cnVlKSB7XG4udWstd2lkdGgteHhsYXJnZVxcQHMgeyB3aWR0aDogJHdpZHRoLTJ4bGFyZ2Utd2lkdGg7IH1cbn1cblxuICAgIC8qIEF1dG8gKi9cbiAgICAudWstd2lkdGgtYXV0b1xcQHMgeyB3aWR0aDogYXV0bzsgfVxuXG4gICAgLyogRXhwYW5kICovXG4gICAgLnVrLXdpZHRoLWV4cGFuZFxcQHMge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBtaW4td2lkdGg6IDFweDtcbiAgICB9XG5cbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAvKiBXaG9sZSAqL1xuICAgIC51ay13aWR0aC0xLTFcXEBtIHsgd2lkdGg6IDEwMCU7IH1cblxuICAgIC8qIEhhbHZlcyAqL1xuICAgIC51ay13aWR0aC0xLTJcXEBtIHsgd2lkdGg6IDUwJTsgfVxuXG4gICAgLyogVGhpcmRzICovXG4gICAgLnVrLXdpZHRoLTEtM1xcQG0geyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlICogMSAvIDMuMDAxKScpOyB9XG4gICAgLnVrLXdpZHRoLTItM1xcQG0geyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlICogMiAvIDMuMDAxKScpOyB9XG5cbiAgICAvKiBRdWFydGVycyAqL1xuICAgIC51ay13aWR0aC0xLTRcXEBtIHsgd2lkdGg6IDI1JTsgfVxuICAgIC51ay13aWR0aC0zLTRcXEBtIHsgd2lkdGg6IDc1JTsgfVxuXG4gICAgLyogRmlmdGhzICovXG4gICAgLnVrLXdpZHRoLTEtNVxcQG0geyB3aWR0aDogMjAlOyB9XG4gICAgLnVrLXdpZHRoLTItNVxcQG0geyB3aWR0aDogNDAlOyB9XG4gICAgLnVrLXdpZHRoLTMtNVxcQG0geyB3aWR0aDogNjAlOyB9XG4gICAgLnVrLXdpZHRoLTQtNVxcQG0geyB3aWR0aDogODAlOyB9XG5cbiAgICAvKiBTaXh0aHMgKi9cbiAgICAudWstd2lkdGgtMS02XFxAbSB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgKiAxIC8gNi4wMDEpJyk7IH1cbiAgICAudWstd2lkdGgtNS02XFxAbSB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgKiA1IC8gNi4wMDEpJyk7IH1cblxuICAgIC8qIFBpeGVsICovXG4gICAgLnVrLXdpZHRoLXNtYWxsXFxAbSB7IHdpZHRoOiAkd2lkdGgtc21hbGwtd2lkdGg7IH1cbiAgICAudWstd2lkdGgtbWVkaXVtXFxAbSB7IHdpZHRoOiAkd2lkdGgtbWVkaXVtLXdpZHRoOyB9XG4gICAgLnVrLXdpZHRoLWxhcmdlXFxAbSB7IHdpZHRoOiAkd2lkdGgtbGFyZ2Utd2lkdGg7IH1cbiAgICAudWstd2lkdGgteGxhcmdlXFxAbSB7IHdpZHRoOiAkd2lkdGgteGxhcmdlLXdpZHRoOyB9XG4gICAgLnVrLXdpZHRoLTJ4bGFyZ2VcXEBtIHsgd2lkdGg6ICR3aWR0aC0yeGxhcmdlLXdpZHRoOyB9XG4gICAgQGlmICgkZGVwcmVjYXRlZCA9PSB0cnVlKSB7XG4udWstd2lkdGgteHhsYXJnZVxcQG0geyB3aWR0aDogJHdpZHRoLTJ4bGFyZ2Utd2lkdGg7IH1cbn1cblxuICAgICAvKiBBdXRvICovXG4gICAgLnVrLXdpZHRoLWF1dG9cXEBtIHsgd2lkdGg6IGF1dG87IH1cblxuICAgIC8qIEV4cGFuZCAqL1xuICAgIC51ay13aWR0aC1leHBhbmRcXEBtIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgbWluLXdpZHRoOiAxcHg7XG4gICAgfVxuXG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAvKiBXaG9sZSAqL1xuICAgIC51ay13aWR0aC0xLTFcXEBsIHsgd2lkdGg6IDEwMCU7IH1cblxuICAgIC8qIEhhbHZlcyAqL1xuICAgIC51ay13aWR0aC0xLTJcXEBsIHsgd2lkdGg6IDUwJTsgfVxuXG4gICAgLyogVGhpcmRzICovXG4gICAgLnVrLXdpZHRoLTEtM1xcQGwgeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlICogMSAvIDMuMDAxKScpOyB9XG4gICAgLnVrLXdpZHRoLTItM1xcQGwgeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlICogMiAvIDMuMDAxKScpOyB9XG5cbiAgICAvKiBRdWFydGVycyAqL1xuICAgIC51ay13aWR0aC0xLTRcXEBsIHsgd2lkdGg6IDI1JTsgfVxuICAgIC51ay13aWR0aC0zLTRcXEBsIHsgd2lkdGg6IDc1JTsgfVxuXG4gICAgLyogRmlmdGhzICovXG4gICAgLnVrLXdpZHRoLTEtNVxcQGwgeyB3aWR0aDogMjAlOyB9XG4gICAgLnVrLXdpZHRoLTItNVxcQGwgeyB3aWR0aDogNDAlOyB9XG4gICAgLnVrLXdpZHRoLTMtNVxcQGwgeyB3aWR0aDogNjAlOyB9XG4gICAgLnVrLXdpZHRoLTQtNVxcQGwgeyB3aWR0aDogODAlOyB9XG5cbiAgICAvKiBTaXh0aHMgKi9cbiAgICAudWstd2lkdGgtMS02XFxAbCB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgKiAxIC8gNi4wMDEpJyk7IH1cbiAgICAudWstd2lkdGgtNS02XFxAbCB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgKiA1IC8gNi4wMDEpJyk7IH1cblxuICAgIC8qIFBpeGVsICovXG4gICAgLnVrLXdpZHRoLXNtYWxsXFxAbCB7IHdpZHRoOiAkd2lkdGgtc21hbGwtd2lkdGg7IH1cbiAgICAudWstd2lkdGgtbWVkaXVtXFxAbCB7IHdpZHRoOiAkd2lkdGgtbWVkaXVtLXdpZHRoOyB9XG4gICAgLnVrLXdpZHRoLWxhcmdlXFxAbCB7IHdpZHRoOiAkd2lkdGgtbGFyZ2Utd2lkdGg7IH1cbiAgICAudWstd2lkdGgteGxhcmdlXFxAbCB7IHdpZHRoOiAkd2lkdGgteGxhcmdlLXdpZHRoOyB9XG4gICAgLnVrLXdpZHRoLTJ4bGFyZ2VcXEBsIHsgd2lkdGg6ICR3aWR0aC0yeGxhcmdlLXdpZHRoOyB9XG4gICAgQGlmICgkZGVwcmVjYXRlZCA9PSB0cnVlKSB7XG4udWstd2lkdGgteHhsYXJnZVxcQGwgeyB3aWR0aDogJHdpZHRoLTJ4bGFyZ2Utd2lkdGg7IH1cbn1cblxuICAgIC8qIEF1dG8gKi9cbiAgICAudWstd2lkdGgtYXV0b1xcQGwgeyB3aWR0aDogYXV0bzsgfVxuXG4gICAgLyogRXhwYW5kICovXG4gICAgLnVrLXdpZHRoLWV4cGFuZFxcQGwge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBtaW4td2lkdGg6IDFweDtcbiAgICB9XG5cbn1cblxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bGFyZ2UpIHtcblxuICAgIC8qIFdob2xlICovXG4gICAgLnVrLXdpZHRoLTEtMVxcQHhsIHsgd2lkdGg6IDEwMCU7IH1cblxuICAgIC8qIEhhbHZlcyAqL1xuICAgIC51ay13aWR0aC0xLTJcXEB4bCB7IHdpZHRoOiA1MCU7IH1cblxuICAgIC8qIFRoaXJkcyAqL1xuICAgIC51ay13aWR0aC0xLTNcXEB4bCB7IHdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgKiAxIC8gMy4wMDEpJyk7IH1cbiAgICAudWstd2lkdGgtMi0zXFxAeGwgeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlICogMiAvIDMuMDAxKScpOyB9XG5cbiAgICAvKiBRdWFydGVycyAqL1xuICAgIC51ay13aWR0aC0xLTRcXEB4bCB7IHdpZHRoOiAyNSU7IH1cbiAgICAudWstd2lkdGgtMy00XFxAeGwgeyB3aWR0aDogNzUlOyB9XG5cbiAgICAvKiBGaWZ0aHMgKi9cbiAgICAudWstd2lkdGgtMS01XFxAeGwgeyB3aWR0aDogMjAlOyB9XG4gICAgLnVrLXdpZHRoLTItNVxcQHhsIHsgd2lkdGg6IDQwJTsgfVxuICAgIC51ay13aWR0aC0zLTVcXEB4bCB7IHdpZHRoOiA2MCU7IH1cbiAgICAudWstd2lkdGgtNC01XFxAeGwgeyB3aWR0aDogODAlOyB9XG5cbiAgICAvKiBTaXh0aHMgKi9cbiAgICAudWstd2lkdGgtMS02XFxAeGwgeyB3aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlICogMSAvIDYuMDAxKScpOyB9XG4gICAgLnVrLXdpZHRoLTUtNlxcQHhsIHsgd2lkdGg6IHVucXVvdGUoJ2NhbGMoMTAwJSAqIDUgLyA2LjAwMSknKTsgfVxuXG4gICAgLyogUGl4ZWwgKi9cbiAgICAudWstd2lkdGgtc21hbGxcXEB4bCB7IHdpZHRoOiAkd2lkdGgtc21hbGwtd2lkdGg7IH1cbiAgICAudWstd2lkdGgtbWVkaXVtXFxAeGwgeyB3aWR0aDogJHdpZHRoLW1lZGl1bS13aWR0aDsgfVxuICAgIC51ay13aWR0aC1sYXJnZVxcQHhsIHsgd2lkdGg6ICR3aWR0aC1sYXJnZS13aWR0aDsgfVxuICAgIC51ay13aWR0aC14bGFyZ2VcXEB4bCB7IHdpZHRoOiAkd2lkdGgteGxhcmdlLXdpZHRoOyB9XG4gICAgLnVrLXdpZHRoLTJ4bGFyZ2VcXEB4bCB7IHdpZHRoOiAkd2lkdGgtMnhsYXJnZS13aWR0aDsgfVxuICAgIEBpZiAoJGRlcHJlY2F0ZWQgPT0gdHJ1ZSkge1xuLnVrLXdpZHRoLXh4bGFyZ2VcXEB4bCB7IHdpZHRoOiAkd2lkdGgtMnhsYXJnZS13aWR0aDsgfVxufVxuXG4gICAgLyogQXV0byAqL1xuICAgIC51ay13aWR0aC1hdXRvXFxAeGwgeyB3aWR0aDogYXV0bzsgfVxuXG4gICAgLyogRXhwYW5kICovXG4gICAgLnVrLXdpZHRoLWV4cGFuZFxcQHhsIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgbWluLXdpZHRoOiAxcHg7XG4gICAgfVxuXG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2std2lkdGgtbWlzYykpIHtAaW5jbHVkZSBob29rLXdpZHRoLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXdpZHRoLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIEhlaWdodFxuLy8gRGVzY3JpcHRpb246ICAgICBVdGlsaXRpZXMgZm9yIGhlaWdodHNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1oZWlnaHQtKmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kaGVpZ2h0LXNtYWxsLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgMTUwcHggIWRlZmF1bHQ7XG4kaGVpZ2h0LW1lZGl1bS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG4kaGVpZ2h0LWxhcmdlLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgNDUwcHggIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IEhlaWdodFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbltjbGFzcyo9J3VrLWhlaWdodCddIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4vKlxuICogT25seSB3b3JrcyBpZiBwYXJlbnQgZWxlbWVudCBoYXMgYSBoZWlnaHQgc2V0XG4gKi9cblxuLnVrLWhlaWdodC0xLTEgeyBoZWlnaHQ6IDEwMCU7IH1cblxuLypcbiAqIFVzZWZ1bCB0byBjcmVhdGUgaW1hZ2UgdGVhc2Vyc1xuICovXG5cbi51ay1oZWlnaHQtdmlld3BvcnQgeyBtaW4taGVpZ2h0OiAxMDB2aDsgfVxuXG4vKlxuICogUGl4ZWxcbiAqIFVzZWZ1bCBmb3IgYG92ZXJmbG93OiBhdXRvYFxuICovXG5cbi51ay1oZWlnaHQtc21hbGwgeyBoZWlnaHQ6ICRoZWlnaHQtc21hbGwtaGVpZ2h0OyB9XG4udWstaGVpZ2h0LW1lZGl1bSB7IGhlaWdodDogJGhlaWdodC1tZWRpdW0taGVpZ2h0OyB9XG4udWstaGVpZ2h0LWxhcmdlIHsgaGVpZ2h0OiAkaGVpZ2h0LWxhcmdlLWhlaWdodDsgfVxuXG4udWstaGVpZ2h0LW1heC1zbWFsbCB7IG1heC1oZWlnaHQ6ICRoZWlnaHQtc21hbGwtaGVpZ2h0OyB9XG4udWstaGVpZ2h0LW1heC1tZWRpdW0geyBtYXgtaGVpZ2h0OiAkaGVpZ2h0LW1lZGl1bS1oZWlnaHQ7IH1cbi51ay1oZWlnaHQtbWF4LWxhcmdlIHsgbWF4LWhlaWdodDogJGhlaWdodC1sYXJnZS1oZWlnaHQ7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1oZWlnaHQtbWlzYykpIHtAaW5jbHVkZSBob29rLWhlaWdodC1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1oZWlnaHQtbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgVGV4dFxuLy8gRGVzY3JpcHRpb246ICAgICBVdGlsaXRpZXMgZm9yIHRleHRcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay10ZXh0LSpgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHRleHQtbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbGFyZ2UtZm9udC1zaXplICFkZWZhdWx0O1xuJHRleHQtbGVhZC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiR0ZXh0LWxlYWQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuXG4kdGV4dC1tZXRhLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kdGV4dC1tZXRhLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgMS40ICFkZWZhdWx0O1xuJHRleHQtbWV0YS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiR0ZXh0LXNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiR0ZXh0LXNtYWxsLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiR0ZXh0LWxhcmdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWxhcmdlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiR0ZXh0LWxhcmdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiR0ZXh0LW11dGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJHRleHQtZW1waGFzaXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kdGV4dC1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kdGV4dC1zZWNvbmRhcnktY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zZWNvbmRhcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiR0ZXh0LXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXN1Y2Nlc3MtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiR0ZXh0LXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXdhcm5pbmctYmFja2dyb3VuZCAhZGVmYXVsdDtcbiR0ZXh0LWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWRhbmdlci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4kdGV4dC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFRleHRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qIFN0eWxlIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay10ZXh0LWxlYWQge1xuICAgIGZvbnQtc2l6ZTogJHRleHQtbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICR0ZXh0LWxlYWQtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICR0ZXh0LWxlYWQtY29sb3I7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRleHQtbGVhZCkpIHtAaW5jbHVkZSBob29rLXRleHQtbGVhZCgpO31cbn1cblxuLnVrLXRleHQtbWV0YSB7XG4gICAgZm9udC1zaXplOiAkdGV4dC1tZXRhLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJHRleHQtbWV0YS1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJHRleHQtbWV0YS1jb2xvcjtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGV4dC1tZXRhKSkge0BpbmNsdWRlIGhvb2stdGV4dC1tZXRhKCk7fVxufVxuXG5cbi8qIFNpemUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRleHQtc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHRleHQtc21hbGwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkdGV4dC1zbWFsbC1saW5lLWhlaWdodDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stdGV4dC1zbWFsbCkpIHtAaW5jbHVkZSBob29rLXRleHQtc21hbGwoKTt9XG59XG5cbi51ay10ZXh0LWxhcmdlIHtcbiAgICBmb250LXNpemU6ICR0ZXh0LWxhcmdlLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJHRleHQtbGFyZ2UtbGluZS1oZWlnaHQ7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRleHQtbGFyZ2UpKSB7QGluY2x1ZGUgaG9vay10ZXh0LWxhcmdlKCk7fVxufVxuXG4udWstdGV4dC1kZWZhdWx0IHtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmUtaGVpZ2h0O1xufVxuXG5cbi8qIFdlaWdodCBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay10ZXh0LWxpZ2h0IHsgZm9udC13ZWlnaHQ6IDMwMDsgfVxuLnVrLXRleHQtbm9ybWFsIHsgZm9udC13ZWlnaHQ6IDQwMDsgfVxuLnVrLXRleHQtYm9sZCB7IGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiBcbi51ay10ZXh0LWxpZ2h0ZXIgeyBmb250LXdlaWdodDogbGlnaHRlcjsgfVxuLnVrLXRleHQtYm9sZGVyIHsgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG4gXG4vKiBTdHlsZSBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4gXG4udWstdGV4dC1pdGFsaWMgeyBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuXG4vKiBUcmFuc2Zvcm0gbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuLnVrLXRleHQtdXBwZXJjYXNlIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udWstdGV4dC1sb3dlcmNhc2UgeyB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7IH1cblxuXG4vKiBDb2xvciBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdGV4dC1tdXRlZCB7IGNvbG9yOiAkdGV4dC1tdXRlZC1jb2xvciAhaW1wb3J0YW50OyB9XG4udWstdGV4dC1lbXBoYXNpcyB7IGNvbG9yOiAkdGV4dC1lbXBoYXNpcy1jb2xvciAhaW1wb3J0YW50OyB9XG4udWstdGV4dC1wcmltYXJ5IHsgY29sb3I6ICR0ZXh0LXByaW1hcnktY29sb3IgIWltcG9ydGFudDsgfVxuLnVrLXRleHQtc2Vjb25kYXJ5IHsgY29sb3I6ICR0ZXh0LXNlY29uZGFyeS1jb2xvciAhaW1wb3J0YW50OyB9XG4udWstdGV4dC1zdWNjZXNzIHsgY29sb3I6ICR0ZXh0LXN1Y2Nlc3MtY29sb3IgIWltcG9ydGFudDsgfVxuLnVrLXRleHQtd2FybmluZyB7IGNvbG9yOiAkdGV4dC13YXJuaW5nLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi51ay10ZXh0LWRhbmdlciB7IGNvbG9yOiAkdGV4dC1kYW5nZXItY29sb3IgIWltcG9ydGFudDsgfVxuXG5cbi8qIEJhY2tncm91bmQgbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gVGhlIGJhY2tncm91bmQgY2xpcHMgdG8gdGhlIGZvcmVncm91bmQgdGV4dC4gV29ya3MgaW4gQ2hyb21lLCBGaXJlZm94LCBTYWZhcmksIEVkZ2UgYW5kIE9wZXJhXG4gKiAgICBEZWZhdWx0IGNvbG9yIGlzIHNldCB0byB0cmFuc3BhcmVudFxuICogMi4gQ29udGFpbmVyIGZpdHMgdGhlIHRleHRcbiAqIDMuIEZhbGxiYWNrIGNvbG9yIGZvciBJRTExXG4gKi9cblxuLnVrLXRleHQtYmFja2dyb3VuZCB7XG4gICAgLyogMSAqL1xuICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAgIC8qIDIgKi9cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgLyogMyAqL1xuICAgIGNvbG9yOiAkdGV4dC1iYWNrZ3JvdW5kLWNvbG9yICFpbXBvcnRhbnQ7XG59XG5cbkBzdXBwb3J0cyAoLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQpIHtcblxuICAgIC51ay10ZXh0LWJhY2tncm91bmQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGV4dC1iYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgQGlmKG1peGluLWV4aXN0cyhob29rLXRleHQtYmFja2dyb3VuZCkpIHtAaW5jbHVkZSBob29rLXRleHQtYmFja2dyb3VuZCgpO31cbiAgICB9XG5cbn1cblxuXG4vKiBBbGlnbm1lbnQgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRleHQtbGVmdCB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuLnVrLXRleHQtcmlnaHQgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4udWstdGV4dC1jZW50ZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuLnVrLXRleHQtanVzdGlmeSB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG5cbiAgICAudWstdGV4dC1sZWZ0XFxAcyB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC51ay10ZXh0LXJpZ2h0XFxAcyB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAudWstdGV4dC1jZW50ZXJcXEBzIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cblxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay10ZXh0LWxlZnRcXEBtIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnVrLXRleHQtcmlnaHRcXEBtIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC51ay10ZXh0LWNlbnRlclxcQG0geyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuXG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAudWstdGV4dC1sZWZ0XFxAbCB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC51ay10ZXh0LXJpZ2h0XFxAbCB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAudWstdGV4dC1jZW50ZXJcXEBsIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cblxufVxuXG4vKiBMYXJnZSBzY3JlZW4gYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXhsYXJnZSkge1xuXG4gICAgLnVrLXRleHQtbGVmdFxcQHhsIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnVrLXRleHQtcmlnaHRcXEB4bCB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAudWstdGV4dC1jZW50ZXJcXEB4bCB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG5cbn1cblxuLypcbiAqIFZlcnRpY2FsXG4gKi9cblxuLnVrLXRleHQtdG9wIHsgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50OyB9XG4udWstdGV4dC1taWRkbGUgeyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7IH1cbi51ay10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDsgfVxuLnVrLXRleHQtYmFzZWxpbmUgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuXG5cbi8qIFdyYXAgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFByZXZlbnQgdGV4dCBmcm9tIHdyYXBwaW5nIG9udG8gbXVsdGlwbGUgbGluZXNcbiAqL1xuXG4udWstdGV4dC1ub3dyYXAgeyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi8qXG4gKiAxLiBNYWtlIHN1cmUgYSBtYXgtd2lkdGggaXMgc2V0IGFmdGVyIHdoaWNoIHRydW5jYXRpb24gY2FuIG9jY3VyXG4gKiAyLiBQcmV2ZW50IHRleHQgZnJvbSB3cmFwcGluZyBvbnRvIG11bHRpcGxlIGxpbmVzLCBhbmQgdHJ1bmNhdGUgd2l0aCBhbiBlbGxpcHNpc1xuICogMy4gRml4IGZvciB0YWJsZSBjZWxsc1xuICovXG5cbi51ay10ZXh0LXRydW5jYXRlIHtcbiAgICAvKiAxICovXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC8qIDIgKi9cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8qIDIgKi9cbnRoLnVrLXRleHQtdHJ1bmNhdGUsXG50ZC51ay10ZXh0LXRydW5jYXRlIHsgbWF4LXdpZHRoOiAwOyB9XG5cblxuLypcbiAqIDEuIFdyYXAgbG9uZyB3b3JkcyBvbnRvIHRoZSBuZXh0IGxpbmUgYW5kIGJyZWFrIHRoZW0gaWYgdGhleSBhcmUgdG9vIGxvbmcgdG8gZml0XG4gKiAyLiBMZWdhY3kgYHdvcmQtd3JhcGAgYXMgZmFsbGJhY2sgZm9yIGBvdmVyZmxvdy13cmFwYFxuICogMy4gRml4IGBvdmVyZmxvdy13cmFwYCB3aGljaCBkb2Vzbid0IHdvcmsgd2l0aCB0YWJsZSBjZWxscyBpbiBDaHJvbWUsIE9wZXJhLCBJRTExIGFuZCBFZGdlXG4gKiAgICBNdXN0IHVzZSBgYnJlYWstYWxsYCB0byBzdXBwb3J0IElFMTEgYW5kIEVkZ2VcbiAqIE5vdGU6IE5vdCB1c2luZyBgaHlwaGVuczogYXV0bztgIGJlY2F1c2UgaXQgaHlwaGVuYXRlcyB0ZXh0IGV2ZW4gaWYgbm90IG5lZWRlZFxuICovXG5cbi51ay10ZXh0LWJyZWFrIHtcbiAgICAvKiAxICovXG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgICAvKiAyICovXG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4vKiAzICovXG50aC51ay10ZXh0LWJyZWFrLFxudGQudWstdGV4dC1icmVhayB7IHdvcmQtYnJlYWs6IGJyZWFrLWFsbDsgfVxuXG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stdGV4dC1taXNjKSkge0BpbmNsdWRlIGhvb2stdGV4dC1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay10ZXh0LWxlYWQoKXt9XG4vLyBAbWl4aW4gaG9vay10ZXh0LW1ldGEoKXt9XG4vLyBAbWl4aW4gaG9vay10ZXh0LXNtYWxsKCl7fVxuLy8gQG1peGluIGhvb2stdGV4dC1sYXJnZSgpe31cbi8vIEBtaXhpbiBob29rLXRleHQtYmFja2dyb3VuZCgpe31cbi8vIEBtaXhpbiBob29rLXRleHQtbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGludmVyc2UtdGV4dC1sZWFkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtdGV4dC1tZXRhLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtdGV4dC1tdXRlZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtdGV4dC1lbXBoYXNpcy1jb2xvcjogICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtdGV4dC1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRpbnZlcnNlLXRleHQtc2Vjb25kYXJ5LWNvbG9yOiAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRleHQtbGVhZCgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtdGV4dC1tZXRhKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBDb2x1bW5cbi8vIERlc2NyaXB0aW9uOiAgICAgVXRpbGl0aWVzIGZvciB0ZXh0IGNvbHVtbnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1jb2x1bW4tKmBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1jb2x1bW4tc3BhbmBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1jb2x1bW4tZGl2aWRlcmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kY29sdW1uLWd1dHRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kY29sdW1uLWd1dHRlci1sOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuXG4kY29sdW1uLWRpdmlkZXItcnVsZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG4kY29sdW1uLWRpdmlkZXItcnVsZS13aWR0aDogICAgICAgICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBDb2x1bW5cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5bY2xhc3MqPSd1ay1jb2x1bW4tJ10geyBjb2x1bW4tZ2FwOiAkY29sdW1uLWd1dHRlcjsgfVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgW2NsYXNzKj0ndWstY29sdW1uLSddIHsgY29sdW1uLWdhcDogJGNvbHVtbi1ndXR0ZXItbDsgfVxuXG59XG5cbi8qXG4gKiBGaXggaW1hZ2UgMXB4IGxpbmUgd3JhcHBpbmcgaW50byB0aGUgbmV4dCBjb2x1bW4gaW4gQ2hyb21lXG4gKi9cblxuW2NsYXNzKj0ndWstY29sdW1uLSddIGltZyB7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApOyB9XG5cblxuLyogRGl2aWRlclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBEb3VibGUgdGhlIGNvbHVtbiBnYXBcbiAqL1xuXG4udWstY29sdW1uLWRpdmlkZXIge1xuICAgIGNvbHVtbi1ydWxlOiAkY29sdW1uLWRpdmlkZXItcnVsZS13aWR0aCBzb2xpZCAkY29sdW1uLWRpdmlkZXItcnVsZS1jb2xvcjtcbiAgICAvKiAxICovXG4gICAgY29sdW1uLWdhcDogKCRjb2x1bW4tZ3V0dGVyICogMik7XG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAudWstY29sdW1uLWRpdmlkZXIge1xuICAgICAgICBjb2x1bW4tZ2FwOiAoJGNvbHVtbi1ndXR0ZXItbCAqIDIpO1xuICAgIH1cblxufVxuXG5cbi8qIFdpZHRoIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb2x1bW4tMS0yIHsgY29sdW1uLWNvdW50OiAyO31cbi51ay1jb2x1bW4tMS0zIHsgY29sdW1uLWNvdW50OiAzOyB9XG4udWstY29sdW1uLTEtNCB7IGNvbHVtbi1jb3VudDogNDsgfVxuLnVrLWNvbHVtbi0xLTUgeyBjb2x1bW4tY291bnQ6IDU7IH1cbi51ay1jb2x1bW4tMS02IHsgY29sdW1uLWNvdW50OiA2OyB9XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcblxuICAgIC51ay1jb2x1bW4tMS0yXFxAcyB7IGNvbHVtbi1jb3VudDogMjsgfVxuICAgIC51ay1jb2x1bW4tMS0zXFxAcyB7IGNvbHVtbi1jb3VudDogMzsgfVxuICAgIC51ay1jb2x1bW4tMS00XFxAcyB7IGNvbHVtbi1jb3VudDogNDsgfVxuICAgIC51ay1jb2x1bW4tMS01XFxAcyB7IGNvbHVtbi1jb3VudDogNTsgfVxuICAgIC51ay1jb2x1bW4tMS02XFxAcyB7IGNvbHVtbi1jb3VudDogNjsgfVxuXG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLWNvbHVtbi0xLTJcXEBtIHsgY29sdW1uLWNvdW50OiAyOyB9XG4gICAgLnVrLWNvbHVtbi0xLTNcXEBtIHsgY29sdW1uLWNvdW50OiAzOyB9XG4gICAgLnVrLWNvbHVtbi0xLTRcXEBtIHsgY29sdW1uLWNvdW50OiA0OyB9XG4gICAgLnVrLWNvbHVtbi0xLTVcXEBtIHsgY29sdW1uLWNvdW50OiA1OyB9XG4gICAgLnVrLWNvbHVtbi0xLTZcXEBtIHsgY29sdW1uLWNvdW50OiA2OyB9XG5cbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1jb2x1bW4tMS0yXFxAbCB7IGNvbHVtbi1jb3VudDogMjsgfVxuICAgIC51ay1jb2x1bW4tMS0zXFxAbCB7IGNvbHVtbi1jb3VudDogMzsgfVxuICAgIC51ay1jb2x1bW4tMS00XFxAbCB7IGNvbHVtbi1jb3VudDogNDsgfVxuICAgIC51ay1jb2x1bW4tMS01XFxAbCB7IGNvbHVtbi1jb3VudDogNTsgfVxuICAgIC51ay1jb2x1bW4tMS02XFxAbCB7IGNvbHVtbi1jb3VudDogNjsgfVxuXG59XG5cbi8qIExhcmdlIHNjcmVlbiBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQteGxhcmdlKSB7XG5cbiAgICAudWstY29sdW1uLTEtMlxcQHhsIHsgY29sdW1uLWNvdW50OiAyOyB9XG4gICAgLnVrLWNvbHVtbi0xLTNcXEB4bCB7IGNvbHVtbi1jb3VudDogMzsgfVxuICAgIC51ay1jb2x1bW4tMS00XFxAeGwgeyBjb2x1bW4tY291bnQ6IDQ7IH1cbiAgICAudWstY29sdW1uLTEtNVxcQHhsIHsgY29sdW1uLWNvdW50OiA1OyB9XG4gICAgLnVrLWNvbHVtbi0xLTZcXEB4bCB7IGNvbHVtbi1jb3VudDogNjsgfVxuXG59XG5cbi8qIE1ha2UgZWxlbWVudCBzcGFuIGFjcm9zcyBhbGwgY29sdW1uc1xuICogRG9lcyBub3Qgd29yayBpbiBGaXJlZm94IHlldFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb2x1bW4tc3BhbiB7IGNvbHVtbi1zcGFuOiBhbGw7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1jb2x1bW4tbWlzYykpIHtAaW5jbHVkZSBob29rLWNvbHVtbi1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1jb2x1bW4tbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGludmVyc2UtY29sdW1uLWRpdmlkZXItcnVsZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuXG4iLCIvLyBOYW1lOiAgICAgICAgICAgIENvdmVyXG4vLyBEZXNjcmlwdGlvbjogICAgIFV0aWxpdGllcyB0byBsZXQgZW1iZWRkZWQgY29udGVudCBjb3ZlciB0aGVpciBjb250YWluZXIgaW4gYSBjZW50ZXJlZCBwb3NpdGlvblxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWNvdmVyYFxuLy9cbi8vIFN1Yi1vYmplY3Q6ICAgICAgYHVrLWNvdmVyLWNvbnRhaW5lcmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQ292ZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogV29ya3Mgd2l0aCBpZnJhbWVzIGFuZCBlbWJlZGRlZCBjb250ZW50XG4gKiAxLiBSZXNldCByZXNwb25zaXZlbmVzcyBmb3IgZW1iZWRkZWQgY29udGVudFxuICogMi4gQ2VudGVyIG9iamVjdFxuICogTm90ZTogUGVyY2VudCB2YWx1ZXMgb24gdGhlIGB0b3BgIHByb3BlcnR5IG9ubHkgd29ya3MgaWYgdGhpcyBlbGVtZW50XG4gKiAgICAgICBpcyBhYnNvbHV0ZSBwb3NpdGlvbmVkIG9yIGlmIHRoZSBjb250YWluZXIgaGFzIGEgaGVpZ2h0XG4gKi9cblxuLnVrLWNvdmVyIHtcbiAgICAvKiAxICovXG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIC8qIDIgKi9cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG59XG5cbmlmcmFtZS51ay1jb3ZlciB7IHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cblxuLyogQ29udGFpbmVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFBhcmVudCBjb250YWluZXIgd2hpY2ggY2xpcHMgcmVzaXplZCBvYmplY3RcbiAqIDIuIE5lZWRlZCBpZiB0aGUgY2hpbGQgaXMgcG9zaXRpb25lZCBhYnNvbHV0ZS4gU2VlIG5vdGUgYWJvdmVcbiAqL1xuXG4udWstY292ZXItY29udGFpbmVyIHtcbiAgICAvKiAxICovXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvKiAyICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWNvdmVyLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1jb3Zlci1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1jb3Zlci1taXNjKCl7fSIsIi8vIE5hbWU6ICAgICAgICAgICAgQmFja2dyb3VuZFxuLy8gRGVzY3JpcHRpb246ICAgICBVdGlsaXRpZXMgZm9yIGJhY2tncm91bmRzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstYmFja2dyb3VuZC0qYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRiYWNrZ3JvdW5kLWRlZmF1bHQtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kYmFja2dyb3VuZC1tdXRlZC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJhY2tncm91bmQtcHJpbWFyeS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGJhY2tncm91bmQtc2Vjb25kYXJ5LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICRnbG9iYWwtc2Vjb25kYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IEJhY2tncm91bmRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qIENvbG9yXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWJhY2tncm91bmQtZGVmYXVsdCB7IGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWRlZmF1bHQtYmFja2dyb3VuZDsgfVxuLnVrLWJhY2tncm91bmQtbXV0ZWQgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1tdXRlZC1iYWNrZ3JvdW5kOyB9XG4udWstYmFja2dyb3VuZC1wcmltYXJ5IHsgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtcHJpbWFyeS1iYWNrZ3JvdW5kOyB9XG4udWstYmFja2dyb3VuZC1zZWNvbmRhcnkgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1zZWNvbmRhcnktYmFja2dyb3VuZDsgfVxuXG5cbi8qIFNpemVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYmFja2dyb3VuZC1jb3Zlcixcbi51ay1iYWNrZ3JvdW5kLWNvbnRhaW4ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLnVrLWJhY2tncm91bmQtY292ZXIgeyBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG4udWstYmFja2dyb3VuZC1jb250YWluIHsgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9XG5cblxuLyogUG9zaXRpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYmFja2dyb3VuZC10b3AtbGVmdCB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxuLnVrLWJhY2tncm91bmQtdG9wLWNlbnRlciB7IGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAwOyB9XG4udWstYmFja2dyb3VuZC10b3AtcmlnaHQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDA7IH1cbi51ay1iYWNrZ3JvdW5kLWNlbnRlci1sZWZ0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCA1MCU7IH1cbi51ay1iYWNrZ3JvdW5kLWNlbnRlci1jZW50ZXIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlOyB9XG4udWstYmFja2dyb3VuZC1jZW50ZXItcmlnaHQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTsgfVxuLnVrLWJhY2tncm91bmQtYm90dG9tLWxlZnQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDEwMCU7IH1cbi51ay1iYWNrZ3JvdW5kLWJvdHRvbS1jZW50ZXIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMTAwJTsgfVxuLnVrLWJhY2tncm91bmQtYm90dG9tLXJpZ2h0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAxMDAlOyB9XG5cblxuLyogUmVwZWF0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWJhY2tncm91bmQtbm9yZXBlYXQgeyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG5cblxuLyogQXR0YWNobWVudFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBGaXggYnVnIGludHJvZHVjZWQgaW4gQ2hyb21lIDY3OiB0aGUgYmFja2dyb3VuZCBpbWFnZSBpcyBub3QgdmlzaWJsZSBpZiBhbnkgZWxlbWVudCBvbiB0aGUgcGFnZSB1c2VzIGB0cmFuc2xhdGUzZGBcbiAqL1xuXG4udWstYmFja2dyb3VuZC1maXhlZCB7XG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICAvKiAxICovXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKlxuICogRXhjbHVkZSB0b3VjaCBkZXZpY2VzIGJlY2F1c2UgYGZpeGVkYCBkb2Vzbid0IHdvcmsgb24gaU9TIGFuZCBBbmRyb2lkXG4gKi9cblxuQG1lZGlhIChwb2ludGVyOiBjb2Fyc2UpIHtcbiAgICAudWstYmFja2dyb3VuZC1maXhlZCB7IGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsOyB9XG59XG5cblxuLyogSW1hZ2VcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBQaG9uZSBwb3J0cmFpdCBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXhzbWFsbC1tYXgpIHtcblxuICAgIC51ay1iYWNrZ3JvdW5kLWltYWdlXFxAcyB7IGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDsgfVxuXG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXNtYWxsLW1heCkge1xuXG4gICAgLnVrLWJhY2tncm91bmQtaW1hZ2VcXEBtIHsgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRicmVha3BvaW50LW1lZGl1bS1tYXgpIHtcblxuICAgIC51ay1iYWNrZ3JvdW5kLWltYWdlXFxAbCB7IGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDsgfVxuXG59XG5cbi8qIERlc2t0b3AgYW5kIHNtYWxsZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZS1tYXgpIHtcblxuICAgIC51ay1iYWNrZ3JvdW5kLWltYWdlXFxAeGwge2JhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDsgfVxuXG59XG5cblxuLyogQmxlbmQgbW9kZXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYmFja2dyb3VuZC1ibGVuZC1tdWx0aXBseSB7IGJhY2tncm91bmQtYmxlbmQtbW9kZTogbXVsdGlwbHk7IH1cbi51ay1iYWNrZ3JvdW5kLWJsZW5kLXNjcmVlbiB7IGJhY2tncm91bmQtYmxlbmQtbW9kZTogc2NyZWVuOyB9XG4udWstYmFja2dyb3VuZC1ibGVuZC1vdmVybGF5IHsgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBvdmVybGF5OyB9XG4udWstYmFja2dyb3VuZC1ibGVuZC1kYXJrZW4geyBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IGRhcmtlbjsgfVxuLnVrLWJhY2tncm91bmQtYmxlbmQtbGlnaHRlbiB7IGJhY2tncm91bmQtYmxlbmQtbW9kZTogbGlnaHRlbjsgfVxuLnVrLWJhY2tncm91bmQtYmxlbmQtY29sb3ItZG9kZ2UgeyBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IGNvbG9yLWRvZGdlOyB9XG4udWstYmFja2dyb3VuZC1ibGVuZC1jb2xvci1idXJuIHsgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBjb2xvci1idXJuOyB9XG4udWstYmFja2dyb3VuZC1ibGVuZC1oYXJkLWxpZ2h0IHsgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBoYXJkLWxpZ2h0OyB9XG4udWstYmFja2dyb3VuZC1ibGVuZC1zb2Z0LWxpZ2h0IHsgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBzb2Z0LWxpZ2h0OyB9XG4udWstYmFja2dyb3VuZC1ibGVuZC1kaWZmZXJlbmNlIHsgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBkaWZmZXJlbmNlOyB9XG4udWstYmFja2dyb3VuZC1ibGVuZC1leGNsdXNpb24geyBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IGV4Y2x1c2lvbjsgfVxuLnVrLWJhY2tncm91bmQtYmxlbmQtaHVlIHsgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBodWU7IH1cbi51ay1iYWNrZ3JvdW5kLWJsZW5kLXNhdHVyYXRpb24geyBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IHNhdHVyYXRpb247IH1cbi51ay1iYWNrZ3JvdW5kLWJsZW5kLWNvbG9yIHsgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBjb2xvcjsgfVxuLnVrLWJhY2tncm91bmQtYmxlbmQtbHVtaW5vc2l0eSB7IGJhY2tncm91bmQtYmxlbmQtbW9kZTogbHVtaW5vc2l0eTsgfVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWJhY2tncm91bmQtbWlzYykpIHtAaW5jbHVkZSBob29rLWJhY2tncm91bmQtbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stYmFja2dyb3VuZC1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBBbGlnblxuLy8gRGVzY3JpcHRpb246ICAgICBVdGlsaXRpZXMgdG8gYWxpZ24gZW1iZWRkZWQgY29udGVudFxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWFsaWduLWxlZnQtKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFsaWduLXJpZ2h0LSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbGlnbi1jZW50ZXJgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGFsaWduLW1hcmdpbi1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGFsaWduLW1hcmdpbi12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuXG4kYWxpZ24tbWFyZ2luLWhvcml6b250YWwtbDogICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBBbGlnblxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBEZWZhdWx0XG4gKi9cblxuW2NsYXNzKj0ndWstYWxpZ24nXSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogJGFsaWduLW1hcmdpbi12ZXJ0aWNhbDtcbn1cblxuKiArIFtjbGFzcyo9J3VrLWFsaWduJ10geyBtYXJnaW4tdG9wOiAkYWxpZ24tbWFyZ2luLXZlcnRpY2FsOyB9XG5cbi8qXG4gKiBDZW50ZXJcbiAqL1xuXG4udWstYWxpZ24tY2VudGVyIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi8qXG4gKiBMZWZ0L1JpZ2h0XG4gKi9cblxuLnVrLWFsaWduLWxlZnQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkYWxpZ24tbWFyZ2luLWhvcml6b250YWw7XG4gICAgZmxvYXQ6IGxlZnQ7XG59XG5cbi51ay1hbGlnbi1yaWdodCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogJGFsaWduLW1hcmdpbi1ob3Jpem9udGFsO1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWFsaWduLWxlZnRcXEBzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkYWxpZ24tbWFyZ2luLWhvcml6b250YWw7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIC51ay1hbGlnbi1yaWdodFxcQHMge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogJGFsaWduLW1hcmdpbi1ob3Jpem9udGFsO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuXG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLWFsaWduLWxlZnRcXEBtIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkYWxpZ24tbWFyZ2luLWhvcml6b250YWw7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIC51ay1hbGlnbi1yaWdodFxcQG0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogJGFsaWduLW1hcmdpbi1ob3Jpem9udGFsO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuXG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAudWstYWxpZ24tbGVmdFxcQGwge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudWstYWxpZ24tcmlnaHRcXEBsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cblxuICAgIC51ay1hbGlnbi1sZWZ0LFxuICAgIC51ay1hbGlnbi1sZWZ0XFxAcyxcbiAgICAudWstYWxpZ24tbGVmdFxcQG0sXG4gICAgLnVrLWFsaWduLWxlZnRcXEBsIHsgbWFyZ2luLXJpZ2h0OiAkYWxpZ24tbWFyZ2luLWhvcml6b250YWwtbDsgfVxuXG4gICAgLnVrLWFsaWduLXJpZ2h0LFxuICAgIC51ay1hbGlnbi1yaWdodFxcQHMsXG4gICAgLnVrLWFsaWduLXJpZ2h0XFxAbSxcbiAgICAudWstYWxpZ24tcmlnaHRcXEBsIHsgbWFyZ2luLWxlZnQ6ICRhbGlnbi1tYXJnaW4taG9yaXpvbnRhbC1sOyB9XG5cbn1cblxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bGFyZ2UpIHtcblxuICAgIC51ay1hbGlnbi1sZWZ0XFxAeGwge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRhbGlnbi1tYXJnaW4taG9yaXpvbnRhbC1sO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudWstYWxpZ24tcmlnaHRcXEB4bCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkYWxpZ24tbWFyZ2luLWhvcml6b250YWwtbDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cblxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLWFsaWduLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1hbGlnbi1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay1hbGlnbi1taXNjKCl7fSIsIi8vIE5hbWU6ICAgICAgICAgICAgU1ZHXG4vLyBEZXNjcmlwdGlvbjogICAgIENvbXBvbmVudCB0byBzdHlsZSBTVkdzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstc3ZnYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBTVkdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gRmlsbCBhbGwgU1ZHIGVsZW1lbnRzIHdpdGggdGhlIGN1cnJlbnQgdGV4dCBjb2xvciBpZiBubyBgZmlsbGAgYXR0cmlidXRlIGlzIHNldFxuICogMi4gU2V0IHRoZSBmaWxsIGFuZCBzdHJva2UgY29sb3Igb2YgYWxsIFNWRyBlbGVtZW50cyB0byB0aGUgY3VycmVudCB0ZXh0IGNvbG9yXG4gKi9cblxuLyogMSAqL1xuLnVrLXN2Zyxcbi8qIDIgKi9cbi51ay1zdmc6bm90KC51ay1wcmVzZXJ2ZSkgW2ZpbGwqPScjJ106bm90KC51ay1wcmVzZXJ2ZSkgeyBmaWxsOiBjdXJyZW50Y29sb3I7IH1cbi51ay1zdmc6bm90KC51ay1wcmVzZXJ2ZSkgW3N0cm9rZSo9JyMnXTpub3QoLnVrLXByZXNlcnZlKSB7IHN0cm9rZTogY3VycmVudGNvbG9yOyB9XG5cbi8qXG4gKiBGaXggRmlyZWZveCBibHVycnkgU1ZHIHJlbmRlcmluZzogaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA0NjgzNVxuICovXG5cbi51ay1zdmcgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLDApOyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stc3ZnLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1zdmctbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stc3ZnLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIFV0aWxpdHlcbi8vIERlc2NyaXB0aW9uOiAgICAgVXRpbGl0aWVzIGNvbGxlY3Rpb25cbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1wYW5lbC0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstY2xlYXJmaXhgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1mbG9hdC0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstb3ZlcmZsb3ctKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXJlc2l6ZS0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZGlzcGxheS0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstaW5saW5lLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1yZXNwb25zaXZlLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wcmVzZXJ2ZS13aWR0aGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWJvcmRlci0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYm94LXNoYWRvdy0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYm94LXNoYWRvdy1ib3R0b21gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1kcm9wY2FwYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbG9nb2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWJsZW5kLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10cmFuc2Zvcm0tKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRyYW5zZm9ybS1vcmlnaW4tKmBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1kaXNhYmxlZGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRyYWdgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1kcmFnb3ZlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXByZXNlcnZlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRwYW5lbC1zY3JvbGxhYmxlLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAxNzBweCAhZGVmYXVsdDtcbiRwYW5lbC1zY3JvbGxhYmxlLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJHBhbmVsLXNjcm9sbGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhbmVsLXNjcm9sbGFibGUtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJvdW5kZWQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgNXB4ICFkZWZhdWx0O1xuXG4kYm94LXNoYWRvdy1kdXJhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4xcyAhZGVmYXVsdDtcblxuJGJveC1zaGFkb3ctYm90dG9tLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1ib3R0b20tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWJvdHRvbS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctYm90dG9tLWJsdXI6ICAgICAgICAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRkcm9wY2FwLW1hcmdpbi1yaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJGRyb3BjYXAtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoJGdsb2JhbC1saW5lLWhlaWdodCAqIDMpICogMWVtKSAhZGVmYXVsdDtcblxuJGxvZ28tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbGFyZ2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGxvZ28tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kbG9nby1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcbiRsb2dvLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG4kZHJhZ292ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAgICAgMCAwIDIwcHggcmdiYSgxMDAsMTAwLDEwMCwwLjMpICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBVdGlsaXR5XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4vKiBQYW5lbFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1wYW5lbCB7XG4gICAgZGlzcGxheTogZmxvdy1yb290O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cblxuLnVrLXBhbmVsID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cblxuLypcbiAqIFNjcm9sbGFibGVcbiAqL1xuXG4udWstcGFuZWwtc2Nyb2xsYWJsZSB7XG4gICAgaGVpZ2h0OiAkcGFuZWwtc2Nyb2xsYWJsZS1oZWlnaHQ7XG4gICAgcGFkZGluZzogJHBhbmVsLXNjcm9sbGFibGUtcGFkZGluZztcbiAgICBib3JkZXI6ICRwYW5lbC1zY3JvbGxhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkcGFuZWwtc2Nyb2xsYWJsZS1ib3JkZXI7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIHJlc2l6ZTogYm90aDtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stcGFuZWwtc2Nyb2xsYWJsZSkpIHtAaW5jbHVkZSBob29rLXBhbmVsLXNjcm9sbGFibGUoKTt9XG59XG5cblxuLyogQ2xlYXJmaXhcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gYHRhYmxlLWNlbGxgIGlzIHVzZWQgd2l0aCBgOjpiZWZvcmVgIGJlY2F1c2UgYHRhYmxlYCBjcmVhdGVzIGEgMXB4IGdhcCB3aGVuIGl0IGJlY29tZXMgYSBmbGV4IGl0ZW0sIG9ubHkgaW4gV2Via2l0XG4gKiAyLiBgdGFibGVgIGlzIHVzZWQgYWdhaW4gd2l0aCBgOjphZnRlcmAgYmVjYXVzZSBgY2xlYXJgIG9ubHkgd29ya3Mgd2l0aCBibG9jayBlbGVtZW50cy5cbiAqIE5vdGU6IGBkaXNwbGF5OiBibG9ja2Agd2l0aCBgb3ZlcmZsb3c6IGhpZGRlbmAgaXMgY3VycmVudGx5IG5vdCB3b3JraW5nIGluIHRoZSBsYXRlc3QgU2FmYXJpXG4gKi9cblxuLyogMSAqL1xuLnVrLWNsZWFyZml4OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbn1cblxuLyogMiAqL1xuLnVrLWNsZWFyZml4OjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbn1cblxuXG4vKiBGbG9hdFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBQcmV2ZW50IGNvbnRlbnQgb3ZlcmZsb3dcbiAqL1xuXG4udWstZmxvYXQtbGVmdCB7IGZsb2F0OiBsZWZ0OyB9XG4udWstZmxvYXQtcmlnaHQgeyBmbG9hdDogcmlnaHQ7IH1cblxuLyogMSAqL1xuW2NsYXNzKj0ndWstZmxvYXQtJ10geyBtYXgtd2lkdGg6IDEwMCU7IH1cblxuXG4vKiBPdmVyZm93XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW92ZXJmbG93LWhpZGRlbiB7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuLypcbiAqIEVuYWJsZSBzY3JvbGxiYXJzIGlmIGNvbnRlbnQgaXMgY2xpcHBlZFxuICogTm90ZTogRmlyZWZveCBpZ25vcmVzIGBwYWRkaW5nLWJvdHRvbWAgZm9yIHRoZSBzY3JvbGxhYmxlIG92ZXJmbG93IGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTc0ODUxOFxuICovXG5cbi51ay1vdmVyZmxvdy1hdXRvIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi51ay1vdmVyZmxvdy1hdXRvID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cblxuLyogUmVzaXplXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXJlc2l6ZSB7IHJlc2l6ZTogYm90aDsgfVxuLnVrLXJlc2l6ZS12ZXJ0aWNhbCB7IHJlc2l6ZTogdmVydGljYWw7IH1cblxuXG4vKiBEaXNwbGF5XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWRpc3BsYXktYmxvY2sgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4udWstZGlzcGxheS1pbmxpbmUgeyBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfVxuLnVrLWRpc3BsYXktaW5saW5lLWJsb2NrIHsgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH1cblxuXG4vKiBJbmxpbmVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQ29udGFpbmVyIGZpdHMgaXRzIGNvbnRlbnRcbiAqIDIuIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0XG4gKiAzLiBQcmV2ZW50IGNvbnRlbnQgb3ZlcmZsb3dcbiAqIDQuIEJlaGF2ZSBsaWtlIG1vc3QgaW5saW5lLWJsb2NrIGVsZW1lbnRzXG4gKiA1LiBGb3JjZSBoYXJkd2FyZSBhY2NlbGVyYXRpb24gd2l0aG91dCBjcmVhdGluZyBhIG5ldyBzdGFja2luZyBjb250ZXh0XG4gKiAgICB0byBmaXggMXB4IGdsaXRjaCB3aGVuIGNvbWJpbmVkIHdpdGggb3ZlcmxheXMgYW5kIHRyYW5zaXRpb25zIGluIFdlYmtpdFxuICogNi4gQ2xpcCBjaGlsZCBlbGVtZW50c1xuICovXG5cbltjbGFzcyo9J3VrLWlubGluZSddIHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC8qIDIgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLyogMyAqL1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAvKiA0ICovXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAvKiA1ICovXG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi51ay1pbmxpbmUtY2xpcCB7XG4gICAgLyogNiAqL1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cblxuLyogUmVzcG9uc2l2ZSBvYmplY3RzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFByZXNlcnZlIG9yaWdpbmFsIGRpbWVuc2lvbnNcbiAqIEJlY2F1c2UgYGltZywgYHZpZGVvYCwgYGNhbnZhc2AgYW5kICBgYXVkaW9gIGFyZSBhbHJlYWR5IHJlc3BvbnNpdmUgYnkgZGVmYXVsdCwgc2VlIEJhc2UgY29tcG9uZW50XG4gKi9cblxuLnVrLXByZXNlcnZlLXdpZHRoLFxuLnVrLXByZXNlcnZlLXdpZHRoIGNhbnZhcyxcbi51ay1wcmVzZXJ2ZS13aWR0aCBpbWcsXG4udWstcHJlc2VydmUtd2lkdGggc3ZnLFxuLnVrLXByZXNlcnZlLXdpZHRoIHZpZGVvIHsgbWF4LXdpZHRoOiBub25lOyB9XG5cbi8qXG4gKiBSZXNwb25zaXZlbmVzc1xuICogQ29ycmVjdHMgYG1heC13aWR0aGAgYW5kIGBtYXgtaGVpZ2h0YCBiZWhhdmlvciBpZiBwYWRkaW5nIGFuZCBib3JkZXIgYXJlIHVzZWRcbiAqL1xuXG4udWstcmVzcG9uc2l2ZS13aWR0aCxcbi51ay1yZXNwb25zaXZlLWhlaWdodCB7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuLypcbiAqIDEuIFNldCBhIG1heGltdW0gd2lkdGguIGBpbXBvcnRhbnRgIG5lZWRlZCB0byBvdmVycmlkZSBgdWstcHJlc2VydmUtd2lkdGggaW1nYFxuICogMi4gQXV0byBzY2FsZSB0aGUgaGVpZ2h0LiBPbmx5IG5lZWRlZCBpZiBgaGVpZ2h0YCBhdHRyaWJ1dGUgaXMgcHJlc2VudFxuICovXG5cbi51ay1yZXNwb25zaXZlLXdpZHRoIHtcbiAgICAvKiAxICovXG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgLyogMiAqL1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLypcbiAqIDEuIFNldCBhIG1heGltdW0gaGVpZ2h0LiBPbmx5IHdvcmtzIGlmIHRoZSBwYXJlbnQgZWxlbWVudCBoYXMgYSBmaXhlZCBoZWlnaHRcbiAqIDIuIEF1dG8gc2NhbGUgdGhlIHdpZHRoLiBPbmx5IG5lZWRlZCBpZiBgd2lkdGhgIGF0dHJpYnV0ZSBpcyBwcmVzZW50XG4gKiAzLiBSZXNldCBtYXgtd2lkdGgsIHdoaWNoIGBpbWcsIGB2aWRlb2AsIGBjYW52YXNgIGFuZCAgYGF1ZGlvYCBhbHJlYWR5IGhhdmUgYnkgZGVmYXVsdFxuICovXG5cbi51ay1yZXNwb25zaXZlLWhlaWdodCB7XG4gICAgLyogMSAqL1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgLyogMiAqL1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIC8qIDMgKi9cbiAgICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cblxuLyogQm9yZGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWJvcmRlci1jaXJjbGUgeyBib3JkZXItcmFkaXVzOiA1MCU7IH1cbi51ay1ib3JkZXItcGlsbCB7IGJvcmRlci1yYWRpdXM6IDUwMHB4OyB9XG4udWstYm9yZGVyLXJvdW5kZWQgeyBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJvdW5kZWQtYm9yZGVyLXJhZGl1czsgfVxuXG4vKlxuICogRml4IGBvdmVyZmxvdzogaGlkZGVuYCB0byBiZSBpZ25vcmVkIHdpdGggYm9yZGVyLXJhZGl1cyBhbmQgQ1NTIHRyYW5zZm9ybXMgaW4gV2Via2l0XG4gKi9cblxuLnVrLWlubGluZS1jbGlwW2NsYXNzKj0ndWstYm9yZGVyLSddIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7IH1cblxuXG4vKiBCb3gtc2hhZG93XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWJveC1zaGFkb3ctc21hbGwgeyBib3gtc2hhZG93OiAkZ2xvYmFsLXNtYWxsLWJveC1zaGFkb3c7IH1cbi51ay1ib3gtc2hhZG93LW1lZGl1bSB7IGJveC1zaGFkb3c6ICRnbG9iYWwtbWVkaXVtLWJveC1zaGFkb3c7IH1cbi51ay1ib3gtc2hhZG93LWxhcmdlIHsgYm94LXNoYWRvdzogJGdsb2JhbC1sYXJnZS1ib3gtc2hhZG93OyB9XG4udWstYm94LXNoYWRvdy14bGFyZ2UgeyBib3gtc2hhZG93OiAkZ2xvYmFsLXhsYXJnZS1ib3gtc2hhZG93OyB9XG5cbi8qXG4gKiBIb3ZlclxuICovXG5cbltjbGFzcyo9J3VrLWJveC1zaGFkb3ctaG92ZXInXSB7IHRyYW5zaXRpb246IGJveC1zaGFkb3cgJGJveC1zaGFkb3ctZHVyYXRpb24gZWFzZS1pbi1vdXQ7IH1cblxuLnVrLWJveC1zaGFkb3ctaG92ZXItc21hbGw6aG92ZXIgeyBib3gtc2hhZG93OiAkZ2xvYmFsLXNtYWxsLWJveC1zaGFkb3c7IH1cbi51ay1ib3gtc2hhZG93LWhvdmVyLW1lZGl1bTpob3ZlciB7IGJveC1zaGFkb3c6ICRnbG9iYWwtbWVkaXVtLWJveC1zaGFkb3c7IH1cbi51ay1ib3gtc2hhZG93LWhvdmVyLWxhcmdlOmhvdmVyIHsgYm94LXNoYWRvdzogJGdsb2JhbC1sYXJnZS1ib3gtc2hhZG93OyB9XG4udWstYm94LXNoYWRvdy1ob3Zlci14bGFyZ2U6aG92ZXIgeyBib3gtc2hhZG93OiAkZ2xvYmFsLXhsYXJnZS1ib3gtc2hhZG93OyB9XG5cblxuLyogQm94LXNoYWRvdyBib3R0b21cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gU2V0IHBvc2l0aW9uLlxuICogMi4gU2V0IHN0eWxlXG4gKiAzLiBCbHVyIGRvZXNuJ3Qgd29yayBvbiBwc2V1ZG8gZWxlbWVudHMgd2l0aCBuZWdhdGl2ZSBgei1pbmRleGAgaW4gRWRnZS5cbiAqICAgIFNvbHZlZCBieSB1c2luZyBgYmVmb3JlYCBhbmQgYWRkIHBvc2l0aW9uIGNvbnRleHQgdG8gY2hpbGQgZWxlbWVudHMuXG4gKi9cblxuQHN1cHBvcnRzIChmaWx0ZXI6IGJsdXIoMCkpIHtcblxuICAgIC51ay1ib3gtc2hhZG93LWJvdHRvbSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLnVrLWJveC1zaGFkb3ctYm90dG9tOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgLyogMSAqL1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogKC0kYm94LXNoYWRvdy1ib3R0b20taGVpZ2h0KTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIC8qIDIgKi9cbiAgICAgICAgaGVpZ2h0OiAkYm94LXNoYWRvdy1ib3R0b20taGVpZ2h0O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYm94LXNoYWRvdy1ib3R0b20tYm9yZGVyLXJhZGl1cztcbiAgICAgICAgYmFja2dyb3VuZDogJGJveC1zaGFkb3ctYm90dG9tLWJhY2tncm91bmQ7XG4gICAgICAgIGZpbHRlcjogYmx1cigkYm94LXNoYWRvdy1ib3R0b20tYmx1cik7XG4gICAgICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1ib3gtc2hhZG93LWJvdHRvbSkpIHtAaW5jbHVkZSBob29rLWJveC1zaGFkb3ctYm90dG9tKCk7fVxuICAgIH1cblxuICAgIC8qIDMgKi9cbiAgICAudWstYm94LXNoYWRvdy1ib3R0b20gPiAqIHsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbn1cblxuXG4vKiBEcm9wIGNhcFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBGaXJlZm94IGRvZXNuJ3QgYXBwbHkgYDo6Zmlyc3QtbGV0dGVyYCBpZiB0aGUgZmlyc3QgbGV0dGVyIGlzIGluc2lkZSBjaGlsZCBlbGVtZW50c1xuICogICAgaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0MDA0XG4gKiAyLiBJbiBGaXJlZm94LCBhIGZsb2F0aW5nIGA6OmZpcnN0LWxldHRlcmAgZG9lc24ndCBoYXZlIGEgbGluZSBib3ggYW5kIHRoZXJlIGZvciBubyBgbGluZS1oZWlnaHRgXG4gKiAgICBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0zMTc5MzNcbiAqIDMuIENhdXNlZCBieSAxLjogRWRnZSBjcmVhdGVzIHR3byBuZXN0ZWQgYDo6Zmlyc3QtbGV0dGVyYCBjb250YWluZXJzLCBvbmUgZm9yIGVhY2ggc2VsZWN0b3JcbiAqICAgIFRoaXMgZG91YmxlcyB0aGUgYGZvbnQtc2l6ZWAgZXhwb25lbnRpYWwgd2hlbiB1c2luZyB0aGUgYGVtYCB1bml0LlxuICovXG5cbi51ay1kcm9wY2FwOjpmaXJzdC1sZXR0ZXIsXG4vKiAxICovXG4udWstZHJvcGNhcCA+IHA6Zmlyc3Qtb2YtdHlwZTo6Zmlyc3QtbGV0dGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wY2FwLW1hcmdpbi1yaWdodDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXNpemU6ICRkcm9wY2FwLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBAaWYobWl4aW4tZXhpc3RzKGhvb2stZHJvcGNhcCkpIHtAaW5jbHVkZSBob29rLWRyb3BjYXAoKTt9XG59XG5cbi8qIDIgKi9cbkAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKSB7XG5cbiAgLnVrLWRyb3BjYXA6OmZpcnN0LWxldHRlcixcbiAgLnVrLWRyb3BjYXAgPiBwOmZpcnN0LW9mLXR5cGU6OmZpcnN0LWxldHRlciB7IG1hcmdpbi10b3A6IDEuMSU7IH1cblxufVxuXG4vKiAzICovXG5Ac3VwcG9ydHMgKC1tcy1pbWUtYWxpZ246IGF1dG8pIHtcblxuICAudWstZHJvcGNhcCA+IHA6Zmlyc3Qtb2YtdHlwZTo6Zmlyc3QtbGV0dGVyIHsgZm9udC1zaXplOiAxZW07IH1cblxufVxuXG5cbi8qIExvZ29cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gUmVxdWlyZWQgZm9yIGBhYFxuICovXG5cbi51ay1sb2dvIHtcbiAgICBmb250LXNpemU6ICRsb2dvLWZvbnQtc2l6ZTtcbiAgICBmb250LWZhbWlseTogJGxvZ28tZm9udC1mYW1pbHk7XG4gICAgY29sb3I6ICRsb2dvLWNvbG9yO1xuICAgIC8qIDEgKi9cbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGlmKG1peGluLWV4aXN0cyhob29rLWxvZ28pKSB7QGluY2x1ZGUgaG9vay1sb2dvKCk7fVxufVxuXG4vKiBIb3ZlciArIEZvY3VzICovXG4udWstbG9nbzpob3Zlcixcbi51ay1sb2dvOmZvY3VzIHtcbiAgICBjb2xvcjogJGxvZ28taG92ZXItY29sb3I7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICAvKiAxICovXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpZihtaXhpbi1leGlzdHMoaG9vay1sb2dvLWhvdmVyKSkge0BpbmNsdWRlIGhvb2stbG9nby1ob3ZlcigpO31cbn1cblxuLnVrLWxvZ28taW52ZXJzZSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuXG4vKiBEaXNhYmxlZCBTdGF0ZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1kaXNhYmxlZCB7IHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cblxuLyogRHJhZyBTdGF0ZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBOZWVkZWQgaWYgbW92aW5nIG92ZXIgZWxlbWVudHMgd2l0aCBoYXZlIHRoZWlyIG93biBjdXJzb3Igb24gaG92ZXIsIGUuZy4gbGlua3Mgb3IgYnV0dG9uc1xuICogMi4gRml4IGRyYWdnaW5nIG92ZXIgaWZyYW1lc1xuICovXG5cbi51ay1kcmFnLFxuLyogMSAqL1xuLnVrLWRyYWcgKiB7IGN1cnNvcjogbW92ZTsgfVxuXG4vKiAyICovXG4udWstZHJhZyBpZnJhbWUgeyBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG5cbi8qIERyYWdvdmVyIFN0YXRlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIENyZWF0ZSBhIGJveC1zaGFkb3cgd2hlbiBkcmFnZ2luZyBhIGZpbGUgb3ZlciB0aGUgdXBsb2FkIGFyZWFcbiAqL1xuXG4udWstZHJhZ292ZXIgeyBib3gtc2hhZG93OiAkZHJhZ292ZXItYm94LXNoYWRvdzsgfVxuXG5cbi8qIEJsZW5kIG1vZGVzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWJsZW5kLW11bHRpcGx5IHsgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5OyB9XG4udWstYmxlbmQtc2NyZWVuIHsgbWl4LWJsZW5kLW1vZGU6IHNjcmVlbjsgfVxuLnVrLWJsZW5kLW92ZXJsYXkgeyBtaXgtYmxlbmQtbW9kZTogb3ZlcmxheTsgfVxuLnVrLWJsZW5kLWRhcmtlbiB7IG1peC1ibGVuZC1tb2RlOiBkYXJrZW47IH1cbi51ay1ibGVuZC1saWdodGVuIHsgbWl4LWJsZW5kLW1vZGU6IGxpZ2h0ZW47IH1cbi51ay1ibGVuZC1jb2xvci1kb2RnZSB7IG1peC1ibGVuZC1tb2RlOiBjb2xvci1kb2RnZTsgfVxuLnVrLWJsZW5kLWNvbG9yLWJ1cm4geyBtaXgtYmxlbmQtbW9kZTogY29sb3ItYnVybjsgfVxuLnVrLWJsZW5kLWhhcmQtbGlnaHQgeyBtaXgtYmxlbmQtbW9kZTogaGFyZC1saWdodDsgfVxuLnVrLWJsZW5kLXNvZnQtbGlnaHQgeyBtaXgtYmxlbmQtbW9kZTogc29mdC1saWdodDsgfVxuLnVrLWJsZW5kLWRpZmZlcmVuY2UgeyBtaXgtYmxlbmQtbW9kZTogZGlmZmVyZW5jZTsgfVxuLnVrLWJsZW5kLWV4Y2x1c2lvbiB7IG1peC1ibGVuZC1tb2RlOiBleGNsdXNpb247IH1cbi51ay1ibGVuZC1odWUgeyBtaXgtYmxlbmQtbW9kZTogaHVlOyB9XG4udWstYmxlbmQtc2F0dXJhdGlvbiB7IG1peC1ibGVuZC1tb2RlOiBzYXR1cmF0aW9uOyB9XG4udWstYmxlbmQtY29sb3IgeyBtaXgtYmxlbmQtbW9kZTogY29sb3I7IH1cbi51ay1ibGVuZC1sdW1pbm9zaXR5IHsgbWl4LWJsZW5kLW1vZGU6IGx1bWlub3NpdHk7IH1cblxuXG4vKiBUcmFuc2Zvcm1cbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay10cmFuc2Zvcm0tY2VudGVyIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IH1cblxuXG4vKiBUcmFuc2Zvcm0gT3JpZ2luXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdHJhbnNmb3JtLW9yaWdpbi10b3AtbGVmdCB7IHRyYW5zZm9ybS1vcmlnaW46IDAgMDsgfVxuLnVrLXRyYW5zZm9ybS1vcmlnaW4tdG9wLWNlbnRlciB7IHRyYW5zZm9ybS1vcmlnaW46IDUwJSAwOyB9XG4udWstdHJhbnNmb3JtLW9yaWdpbi10b3AtcmlnaHQgeyB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7IH1cbi51ay10cmFuc2Zvcm0tb3JpZ2luLWNlbnRlci1sZWZ0IHsgdHJhbnNmb3JtLW9yaWdpbjogMCA1MCU7IH1cbi51ay10cmFuc2Zvcm0tb3JpZ2luLWNlbnRlci1yaWdodCB7IHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgNTAlOyB9XG4udWstdHJhbnNmb3JtLW9yaWdpbi1ib3R0b20tbGVmdCB7IHRyYW5zZm9ybS1vcmlnaW46IDAgMTAwJTsgfVxuLnVrLXRyYW5zZm9ybS1vcmlnaW4tYm90dG9tLWNlbnRlciB7IHRyYW5zZm9ybS1vcmlnaW46IDUwJSAxMDAlOyB9XG4udWstdHJhbnNmb3JtLW9yaWdpbi1ib3R0b20tcmlnaHQgeyB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay11dGlsaXR5LW1pc2MpKSB7QGluY2x1ZGUgaG9vay11dGlsaXR5LW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXBhbmVsLXNjcm9sbGFibGUoKXt9XG4vLyBAbWl4aW4gaG9vay1ib3gtc2hhZG93LWJvdHRvbSgpe31cbi8vIEBtaXhpbiBob29rLWRyb3BjYXAoKXt9XG4vLyBAbWl4aW4gaG9vay1sb2dvKCl7fVxuLy8gQG1peGluIGhvb2stbG9nby1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLXV0aWxpdHktbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGludmVyc2UtbG9nby1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtbG9nby1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1kcm9wY2FwKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1sb2dvKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1sb2dvLWhvdmVyKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBGbGV4XG4vLyBEZXNjcmlwdGlvbjogICAgIFV0aWxpdGllcyBmb3IgbGF5b3V0cyBiYXNlZCBvbiBmbGV4Ym94XG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstZmxleC0qYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBGbGV4XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWZsZXggeyBkaXNwbGF5OiBmbGV4OyB9XG4udWstZmxleC1pbmxpbmUgeyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfVxuXG4vKlxuICogUmVtb3ZlIHBzZXVkbyBlbGVtZW50cyBjcmVhdGVkIGJ5IG1pY3JvIGNsZWFyZml4IGFzIHByZWNhdXRpb25cbiAqL1xuXG4udWstZmxleDo6YmVmb3JlLFxuLnVrLWZsZXg6OmFmdGVyLFxuLnVrLWZsZXgtaW5saW5lOjpiZWZvcmUsXG4udWstZmxleC1pbmxpbmU6OmFmdGVyIHsgZGlzcGxheTogbm9uZTsgfVxuXG5cbi8qIEFsaWdubWVudFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBbGlnbiBpdGVtcyBhbG9uZyB0aGUgbWFpbiBheGlzIG9mIHRoZSBjdXJyZW50IGxpbmUgb2YgdGhlIGZsZXggY29udGFpbmVyXG4gKiBSb3c6IEhvcml6b250YWxcbiAqL1xuXG4vLyBEZWZhdWx0XG4udWstZmxleC1sZWZ0IHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4udWstZmxleC1jZW50ZXIgeyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuLnVrLWZsZXgtcmlnaHQgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4udWstZmxleC1iZXR3ZWVuIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4udWstZmxleC1hcm91bmQgeyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuXG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcblxuICAgIC51ay1mbGV4LWxlZnRcXEBzIHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gICAgLnVrLWZsZXgtY2VudGVyXFxAcyB7IGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLnVrLWZsZXgtcmlnaHRcXEBzIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAgIC51ay1mbGV4LWJldHdlZW5cXEBzIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgLnVrLWZsZXgtYXJvdW5kXFxAcyB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG5cbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstZmxleC1sZWZ0XFxAbSB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgIC51ay1mbGV4LWNlbnRlclxcQG0geyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC51ay1mbGV4LXJpZ2h0XFxAbSB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgICAudWstZmxleC1iZXR3ZWVuXFxAbSB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgIC51ay1mbGV4LWFyb3VuZFxcQG0geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuXG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAudWstZmxleC1sZWZ0XFxAbCB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgIC51ay1mbGV4LWNlbnRlclxcQGwgeyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC51ay1mbGV4LXJpZ2h0XFxAbCB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgICAudWstZmxleC1iZXR3ZWVuXFxAbCB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgIC51ay1mbGV4LWFyb3VuZFxcQGwgeyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuXG59XG5cbi8qIExhcmdlIHNjcmVlbiBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQteGxhcmdlKSB7XG5cbiAgICAudWstZmxleC1sZWZ0XFxAeGwgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgICAudWstZmxleC1jZW50ZXJcXEB4bCB7IGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLnVrLWZsZXgtcmlnaHRcXEB4bCB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgICAudWstZmxleC1iZXR3ZWVuXFxAeGwgeyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAudWstZmxleC1hcm91bmRcXEB4bCB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG5cbn1cblxuLypcbiAqIEFsaWduIGl0ZW1zIGluIHRoZSBjcm9zcyBheGlzIG9mIHRoZSBjdXJyZW50IGxpbmUgb2YgdGhlIGZsZXggY29udGFpbmVyXG4gKiBSb3c6IFZlcnRpY2FsXG4gKi9cblxuLy8gRGVmYXVsdFxuLnVrLWZsZXgtc3RyZXRjaCB7IGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4udWstZmxleC10b3AgeyBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuLnVrLWZsZXgtbWlkZGxlIHsgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuLnVrLWZsZXgtYm90dG9tIHsgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cblxuLyogRGlyZWN0aW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLy8gRGVmYXVsdFxuLnVrLWZsZXgtcm93IHsgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuLnVrLWZsZXgtcm93LXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbi51ay1mbGV4LWNvbHVtbiB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbi51ay1mbGV4LWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG5cblxuLyogV3JhcFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8vIERlZmF1bHRcbi51ay1mbGV4LW5vd3JhcCB7IGZsZXgtd3JhcDogbm93cmFwOyB9XG4udWstZmxleC13cmFwIHsgZmxleC13cmFwOiB3cmFwOyB9XG4udWstZmxleC13cmFwLXJldmVyc2UgeyBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZTsgfVxuXG4vKlxuICogQWxpZ25zIGl0ZW1zIHdpdGhpbiB0aGUgZmxleCBjb250YWluZXIgd2hlbiB0aGVyZSBpcyBleHRyYSBzcGFjZSBpbiB0aGUgY3Jvc3MtYXhpc1xuICogT25seSB3b3JrcyBpZiB0aGVyZSBpcyBtb3JlIHRoYW4gb25lIGxpbmUgb2YgZmxleCBpdGVtc1xuICovXG5cbi8vIERlZmF1bHRcbi51ay1mbGV4LXdyYXAtc3RyZXRjaCB7IGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2g7IH1cbi51ay1mbGV4LXdyYXAtdG9wIHsgYWxpZ24tY29udGVudDogZmxleC1zdGFydDsgfVxuLnVrLWZsZXgtd3JhcC1taWRkbGUgeyBhbGlnbi1jb250ZW50OiBjZW50ZXI7IH1cbi51ay1mbGV4LXdyYXAtYm90dG9tIHsgYWxpZ24tY29udGVudDogZmxleC1lbmQ7IH1cbi51ay1mbGV4LXdyYXAtYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbi51ay1mbGV4LXdyYXAtYXJvdW5kIHsgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG5cblxuLyogSXRlbSBvcmRlcmluZ1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBEZWZhdWx0IGlzIDBcbiAqL1xuXG4udWstZmxleC1maXJzdCB7IG9yZGVyOiAtMTt9XG4udWstZmxleC1sYXN0IHsgb3JkZXI6IDk5O31cblxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG5cbiAgICAudWstZmxleC1maXJzdFxcQHMgeyBvcmRlcjogLTE7IH1cbiAgICAudWstZmxleC1sYXN0XFxAcyB7IG9yZGVyOiA5OTsgfVxuXG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLWZsZXgtZmlyc3RcXEBtIHsgb3JkZXI6IC0xOyB9XG4gICAgLnVrLWZsZXgtbGFzdFxcQG0geyBvcmRlcjogOTk7IH1cblxufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgLnVrLWZsZXgtZmlyc3RcXEBsIHsgb3JkZXI6IC0xOyB9XG4gICAgLnVrLWZsZXgtbGFzdFxcQGwgeyBvcmRlcjogOTk7IH1cblxufVxuXG4vKiBMYXJnZSBzY3JlZW4gYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXhsYXJnZSkge1xuXG4gICAgLnVrLWZsZXgtZmlyc3RcXEB4bCB7IG9yZGVyOiAtMTsgfVxuICAgIC51ay1mbGV4LWxhc3RcXEB4bCB7IG9yZGVyOiA5OTsgfVxuXG59XG5cblxuLyogSXRlbSBkaW1lbnNpb25zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEluaXRpYWw6IDAgMSBhdXRvXG4gKiBDb250ZW50IGRpbWVuc2lvbnMsIGJ1dCBzaHJpbmtzXG4gKi9cblxuLypcbiAqIE5vIEZsZXg6IDAgMCBhdXRvXG4gKiBDb250ZW50IGRpbWVuc2lvbnNcbiAqL1xuXG4udWstZmxleC1ub25lIHsgZmxleDogbm9uZTsgfVxuXG4vKlxuICogUmVsYXRpdmUgRmxleDogMSAxIGF1dG9cbiAqIFNwYWNlIGlzIGFsbG9jYXRlZCBjb25zaWRlcmluZyBjb250ZW50XG4gKi9cblxuLnVrLWZsZXgtYXV0byB7IGZsZXg6IGF1dG87IH1cblxuLypcbiAqIEFic29sdXRlIEZsZXg6IDEgMSAwJVxuICogU3BhY2UgaXMgYWxsb2NhdGVkIHNvbGVseSBiYXNlZCBvbiBmbGV4XG4gKi9cblxuLnVrLWZsZXgtMSB7IGZsZXg6IDE7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpZihtaXhpbi1leGlzdHMoaG9vay1mbGV4LW1pc2MpKSB7QGluY2x1ZGUgaG9vay1mbGV4LW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLWZsZXgtbWlzYygpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIE1hcmdpblxuLy8gRGVzY3JpcHRpb246ICAgICBVdGlsaXRpZXMgZm9yIG1hcmdpbnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1tYXJnaW4tKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW1hcmdpbi1zbWFsbC0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbWFyZ2luLW1lZGl1bS0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbWFyZ2luLWxhcmdlLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1tYXJnaW4teGxhcmdlLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1tYXJnaW4tcmVtb3ZlLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1tYXJnaW4tYXV0by0qYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRtYXJnaW4tbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRtYXJnaW4tc21hbGwtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zbWFsbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRtYXJnaW4tbWVkaXVtLW1hcmdpbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tbWFyZ2luICFkZWZhdWx0O1xuXG4kbWFyZ2luLWxhcmdlLW1hcmdpbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLW1hcmdpbiAhZGVmYXVsdDtcbiRtYXJnaW4tbGFyZ2UtbWFyZ2luLWw6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1sYXJnZS1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRtYXJnaW4teGxhcmdlLW1hcmdpbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1sYXJnZS1tYXJnaW4gIWRlZmF1bHQ7XG4kbWFyZ2luLXhsYXJnZS1tYXJnaW4tbDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwteGxhcmdlLW1hcmdpbiAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogTWFyZ2luXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIERlZmF1bHRcbiAqL1xuXG4udWstbWFyZ2luIHsgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1tYXJnaW47IH1cbiogKyAudWstbWFyZ2luIHsgbWFyZ2luLXRvcDogJG1hcmdpbi1tYXJnaW4gIWltcG9ydGFudDsgfVxuXG4udWstbWFyZ2luLXRvcCB7IG1hcmdpbi10b3A6ICRtYXJnaW4tbWFyZ2luICFpbXBvcnRhbnQ7IH1cbi51ay1tYXJnaW4tYm90dG9tIHsgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1tYXJnaW4gIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi1sZWZ0IHsgbWFyZ2luLWxlZnQ6ICRtYXJnaW4tbWFyZ2luICFpbXBvcnRhbnQ7IH1cbi51ay1tYXJnaW4tcmlnaHQgeyBtYXJnaW4tcmlnaHQ6ICRtYXJnaW4tbWFyZ2luICFpbXBvcnRhbnQ7IH1cblxuXG4vKiBTbWFsbFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1tYXJnaW4tc21hbGwgeyBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLXNtYWxsLW1hcmdpbjsgfVxuKiArIC51ay1tYXJnaW4tc21hbGwgeyBtYXJnaW4tdG9wOiAkbWFyZ2luLXNtYWxsLW1hcmdpbiAhaW1wb3J0YW50OyB9XG5cbi51ay1tYXJnaW4tc21hbGwtdG9wIHsgbWFyZ2luLXRvcDogJG1hcmdpbi1zbWFsbC1tYXJnaW4gIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi1zbWFsbC1ib3R0b20geyBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLXNtYWxsLW1hcmdpbiAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLXNtYWxsLWxlZnQgeyBtYXJnaW4tbGVmdDogJG1hcmdpbi1zbWFsbC1tYXJnaW4gIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi1zbWFsbC1yaWdodCB7IG1hcmdpbi1yaWdodDogJG1hcmdpbi1zbWFsbC1tYXJnaW4gIWltcG9ydGFudDsgfVxuXG5cbi8qIE1lZGl1bVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1tYXJnaW4tbWVkaXVtIHsgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1tZWRpdW0tbWFyZ2luOyB9XG4qICsgLnVrLW1hcmdpbi1tZWRpdW0geyBtYXJnaW4tdG9wOiAkbWFyZ2luLW1lZGl1bS1tYXJnaW4gIWltcG9ydGFudDsgfVxuXG4udWstbWFyZ2luLW1lZGl1bS10b3AgeyBtYXJnaW4tdG9wOiAkbWFyZ2luLW1lZGl1bS1tYXJnaW4gIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi1tZWRpdW0tYm90dG9tIHsgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1tZWRpdW0tbWFyZ2luICFpbXBvcnRhbnQ7IH1cbi51ay1tYXJnaW4tbWVkaXVtLWxlZnQgeyBtYXJnaW4tbGVmdDogJG1hcmdpbi1tZWRpdW0tbWFyZ2luICFpbXBvcnRhbnQ7IH1cbi51ay1tYXJnaW4tbWVkaXVtLXJpZ2h0IHsgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luLW1lZGl1bS1tYXJnaW4gIWltcG9ydGFudDsgfVxuXG5cbi8qIExhcmdlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW1hcmdpbi1sYXJnZSB7IG1hcmdpbi1ib3R0b206ICRtYXJnaW4tbGFyZ2UtbWFyZ2luOyB9XG4qICsgLnVrLW1hcmdpbi1sYXJnZSB7IG1hcmdpbi10b3A6ICRtYXJnaW4tbGFyZ2UtbWFyZ2luICFpbXBvcnRhbnQ7IH1cblxuLnVrLW1hcmdpbi1sYXJnZS10b3AgeyBtYXJnaW4tdG9wOiAkbWFyZ2luLWxhcmdlLW1hcmdpbiAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLWxhcmdlLWJvdHRvbSB7IG1hcmdpbi1ib3R0b206ICRtYXJnaW4tbGFyZ2UtbWFyZ2luICFpbXBvcnRhbnQ7IH1cbi51ay1tYXJnaW4tbGFyZ2UtbGVmdCB7IG1hcmdpbi1sZWZ0OiAkbWFyZ2luLWxhcmdlLW1hcmdpbiAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLWxhcmdlLXJpZ2h0IHsgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luLWxhcmdlLW1hcmdpbiAhaW1wb3J0YW50OyB9XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAudWstbWFyZ2luLWxhcmdlIHsgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1sYXJnZS1tYXJnaW4tbDsgfVxuICAgICogKyAudWstbWFyZ2luLWxhcmdlIHsgbWFyZ2luLXRvcDogJG1hcmdpbi1sYXJnZS1tYXJnaW4tbCAhaW1wb3J0YW50OyB9XG5cbiAgICAudWstbWFyZ2luLWxhcmdlLXRvcCB7IG1hcmdpbi10b3A6ICRtYXJnaW4tbGFyZ2UtbWFyZ2luLWwgIWltcG9ydGFudDsgfVxuICAgIC51ay1tYXJnaW4tbGFyZ2UtYm90dG9tIHsgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1sYXJnZS1tYXJnaW4tbCAhaW1wb3J0YW50OyB9XG4gICAgLnVrLW1hcmdpbi1sYXJnZS1sZWZ0IHsgbWFyZ2luLWxlZnQ6ICRtYXJnaW4tbGFyZ2UtbWFyZ2luLWwgIWltcG9ydGFudDsgfVxuICAgIC51ay1tYXJnaW4tbGFyZ2UtcmlnaHQgeyBtYXJnaW4tcmlnaHQ6ICRtYXJnaW4tbGFyZ2UtbWFyZ2luLWwgIWltcG9ydGFudDsgfVxuXG59XG5cblxuLyogWExhcmdlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW1hcmdpbi14bGFyZ2UgeyBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLXhsYXJnZS1tYXJnaW47IH1cbiogKyAudWstbWFyZ2luLXhsYXJnZSB7IG1hcmdpbi10b3A6ICRtYXJnaW4teGxhcmdlLW1hcmdpbiAhaW1wb3J0YW50OyB9XG5cbi51ay1tYXJnaW4teGxhcmdlLXRvcCB7IG1hcmdpbi10b3A6ICRtYXJnaW4teGxhcmdlLW1hcmdpbiAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLXhsYXJnZS1ib3R0b20geyBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLXhsYXJnZS1tYXJnaW4gIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi14bGFyZ2UtbGVmdCB7IG1hcmdpbi1sZWZ0OiAkbWFyZ2luLXhsYXJnZS1tYXJnaW4gIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi14bGFyZ2UtcmlnaHQgeyBtYXJnaW4tcmlnaHQ6ICRtYXJnaW4teGxhcmdlLW1hcmdpbiAhaW1wb3J0YW50OyB9XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAudWstbWFyZ2luLXhsYXJnZSB7IG1hcmdpbi1ib3R0b206ICRtYXJnaW4teGxhcmdlLW1hcmdpbi1sOyB9XG4gICAgKiArIC51ay1tYXJnaW4teGxhcmdlIHsgbWFyZ2luLXRvcDogJG1hcmdpbi14bGFyZ2UtbWFyZ2luLWwgIWltcG9ydGFudDsgfVxuXG4gICAgLnVrLW1hcmdpbi14bGFyZ2UtdG9wIHsgbWFyZ2luLXRvcDogJG1hcmdpbi14bGFyZ2UtbWFyZ2luLWwgIWltcG9ydGFudDsgfVxuICAgIC51ay1tYXJnaW4teGxhcmdlLWJvdHRvbSB7IG1hcmdpbi1ib3R0b206ICRtYXJnaW4teGxhcmdlLW1hcmdpbi1sICFpbXBvcnRhbnQ7IH1cbiAgICAudWstbWFyZ2luLXhsYXJnZS1sZWZ0IHsgbWFyZ2luLWxlZnQ6ICRtYXJnaW4teGxhcmdlLW1hcmdpbi1sICFpbXBvcnRhbnQ7IH1cbiAgICAudWstbWFyZ2luLXhsYXJnZS1yaWdodCB7IG1hcmdpbi1yaWdodDogJG1hcmdpbi14bGFyZ2UtbWFyZ2luLWwgIWltcG9ydGFudDsgfVxuXG59XG5cblxuLyogQXV0b1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1tYXJnaW4tYXV0byB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLnVrLW1hcmdpbi1hdXRvLXRvcCB7IG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi1hdXRvLWJvdHRvbSB7IG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi1hdXRvLWxlZnQgeyBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLWF1dG8tcmlnaHQgeyBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuXG4udWstbWFyZ2luLWF1dG8tdmVydGljYWwge1xuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcblxuICAgIC51ay1tYXJnaW4tYXV0b1xcQHMge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAudWstbWFyZ2luLWF1dG8tbGVmdFxcQHMgeyBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLnVrLW1hcmdpbi1hdXRvLXJpZ2h0XFxAcyB7IG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50OyB9XG5cbn1cblxuLyogVGFibGV0IGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstbWFyZ2luLWF1dG9cXEBtIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnVrLW1hcmdpbi1hdXRvLWxlZnRcXEBtIHsgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC51ay1tYXJnaW4tYXV0by1yaWdodFxcQG0geyBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuXG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAudWstbWFyZ2luLWF1dG9cXEBsIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnVrLW1hcmdpbi1hdXRvLWxlZnRcXEBsIHsgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC51ay1tYXJnaW4tYXV0by1yaWdodFxcQGwgeyBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuXG59XG5cbi8qIExhcmdlIHNjcmVlbiBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQteGxhcmdlKSB7XG5cbiAgICAudWstbWFyZ2luLWF1dG9cXEB4bCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC51ay1tYXJnaW4tYXV0by1sZWZ0XFxAeGwgeyBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLnVrLW1hcmdpbi1hdXRvLXJpZ2h0XFxAeGwgeyBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuXG59XG5cblxuLyogUmVtb3ZlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuIC51ay1tYXJnaW4tcmVtb3ZlIHsgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbiAudWstbWFyZ2luLXJlbW92ZS10b3AgeyBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAudWstbWFyZ2luLXJlbW92ZS1ib3R0b20geyBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAudWstbWFyZ2luLXJlbW92ZS1sZWZ0IHsgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuIC51ay1tYXJnaW4tcmVtb3ZlLXJpZ2h0IHsgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiBcbiAudWstbWFyZ2luLXJlbW92ZS12ZXJ0aWNhbCB7XG4gICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuIH1cbiBcbiAudWstbWFyZ2luLXJlbW92ZS1hZGphY2VudCArICosXG4gLnVrLW1hcmdpbi1yZW1vdmUtZmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQgeyBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAudWstbWFyZ2luLXJlbW92ZS1sYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLW1hcmdpbi1yZW1vdmUtbGVmdFxcQHMgeyBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gICAgLnVrLW1hcmdpbi1yZW1vdmUtcmlnaHRcXEBzIHsgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1tYXJnaW4tcmVtb3ZlLWxlZnRcXEBtIHsgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAgIC51ay1tYXJnaW4tcmVtb3ZlLXJpZ2h0XFxAbSB7IG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1tYXJnaW4tcmVtb3ZlLWxlZnRcXEBsIHsgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAgIC51ay1tYXJnaW4tcmVtb3ZlLXJpZ2h0XFxAbCB7IG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbn1cblxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bGFyZ2UpIHtcblxuICAgIC51ay1tYXJnaW4tcmVtb3ZlLWxlZnRcXEB4bCB7IG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAudWstbWFyZ2luLXJlbW92ZS1yaWdodFxcQHhsIHsgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxufVxuXG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stbWFyZ2luLW1pc2MpKSB7QGluY2x1ZGUgaG9vay1tYXJnaW4tbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stbWFyZ2luLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIFBhZGRpbmdcbi8vIERlc2NyaXB0aW9uOiAgICAgVXRpbGl0aWVzIGZvciBwYWRkaW5nXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstcGFkZGluZ2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBhZGRpbmctbGFyZ2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wYWRkaW5nLXJlbW92ZS0qYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRwYWRkaW5nLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJHBhZGRpbmctcGFkZGluZy1sOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tZWRpdW0tZ3V0dGVyICFkZWZhdWx0O1xuXG4kcGFkZGluZy1zbWFsbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWd1dHRlciAhZGVmYXVsdDtcblxuJHBhZGRpbmctbGFyZ2UtcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kcGFkZGluZy1sYXJnZS1wYWRkaW5nLWw6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWxhcmdlLWd1dHRlciAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogUGFkZGluZ1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1wYWRkaW5nIHsgcGFkZGluZzogJHBhZGRpbmctcGFkZGluZzsgfVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgLnVrLXBhZGRpbmcgeyBwYWRkaW5nOiAkcGFkZGluZy1wYWRkaW5nLWw7IH1cblxufVxuXG5cbi8qIFNtYWxsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXBhZGRpbmctc21hbGwgeyBwYWRkaW5nOiAkcGFkZGluZy1zbWFsbC1wYWRkaW5nOyB9XG5cblxuLyogTGFyZ2VcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstcGFkZGluZy1sYXJnZSB7IHBhZGRpbmc6ICRwYWRkaW5nLWxhcmdlLXBhZGRpbmc7IH1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1wYWRkaW5nLWxhcmdlIHsgcGFkZGluZzogJHBhZGRpbmctbGFyZ2UtcGFkZGluZy1sOyB9XG5cbn1cblxuXG4vKiBSZW1vdmVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstcGFkZGluZy1yZW1vdmUgeyBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbi51ay1wYWRkaW5nLXJlbW92ZS10b3AgeyBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyB9XG4udWstcGFkZGluZy1yZW1vdmUtYm90dG9tIHsgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLnVrLXBhZGRpbmctcmVtb3ZlLWxlZnQgeyBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuLnVrLXBhZGRpbmctcmVtb3ZlLXJpZ2h0IHsgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbi51ay1wYWRkaW5nLXJlbW92ZS12ZXJ0aWNhbCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4udWstcGFkZGluZy1yZW1vdmUtaG9yaXpvbnRhbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGlmKG1peGluLWV4aXN0cyhob29rLXBhZGRpbmctbWlzYykpIHtAaW5jbHVkZSBob29rLXBhZGRpbmctbWlzYygpO31cblxuLy8gQG1peGluIGhvb2stcGFkZGluZy1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBQb3NpdGlvblxuLy8gRGVzY3JpcHRpb246ICAgICBVdGlsaXRpZXMgdG8gcG9zaXRpb24gY29udGVudFxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLXBvc2l0aW9uLWFic29sdXRlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcG9zaXRpb24tcmVsYXRpdmVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wb3NpdGlvbi16LWluZGV4YFxuLy8gICAgICAgICAgICAgICAgICBgdWstcG9zaXRpb24tdG9wYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcG9zaXRpb24tYm90dG9tYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcG9zaXRpb24tbGVmdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBvc2l0aW9uLXJpZ2h0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstcG9zaXRpb24tdG9wLWxlZnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wb3NpdGlvbi10b3AtY2VudGVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcG9zaXRpb24tdG9wLXJpZ2h0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstcG9zaXRpb24tYm90dG9tLWxlZnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wb3NpdGlvbi1ib3R0b20tY2VudGVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcG9zaXRpb24tYm90dG9tLXJpZ2h0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstcG9zaXRpb24tY2VudGVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcG9zaXRpb24tY2VudGVyLWxlZnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wb3NpdGlvbi1jZW50ZXItcmlnaHRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wb3NpdGlvbi1jb3ZlcmBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1wb3NpdGlvbi1zbWFsbGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBvc2l0aW9uLW1lZGl1bWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBvc2l0aW9uLWxhcmdlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRwb3NpdGlvbi1zbWFsbC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zbWFsbC1ndXR0ZXIgIWRlZmF1bHQ7XG4kcG9zaXRpb24tbWVkaXVtLW1hcmdpbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJHBvc2l0aW9uLWxhcmdlLW1hcmdpbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWd1dHRlciAhZGVmYXVsdDtcbiRwb3NpdGlvbi1sYXJnZS1tYXJnaW4tbDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogUG9zaXRpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qIERpcmVjdGlvbnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gUHJldmVudCBjb250ZW50IG92ZXJmbG93IGlmIGBtYXgtd2lkdGg6IDEwMCVgIGlzIHVzZWQgaW5zaWRlIHBvc2l0aW9uIGNvbnRhaW5lci5cbiAqL1xuXG5bY2xhc3MqPSd1ay1wb3NpdGlvbi10b3AnXSxcbltjbGFzcyo9J3VrLXBvc2l0aW9uLWJvdHRvbSddLFxuW2NsYXNzKj0ndWstcG9zaXRpb24tbGVmdCddLFxuW2NsYXNzKj0ndWstcG9zaXRpb24tcmlnaHQnXSxcbltjbGFzcyo9J3VrLXBvc2l0aW9uLWNlbnRlciddIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICAvKiAxICovXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG5cbi8qIEVkZ2VzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogRG9uJ3QgdXNlIGB3aWR0aDogMTAwJWAgYmVjYXVzZSBpdCBpcyB3cm9uZyBpZiB0aGUgcGFyZW50IGhhcyBwYWRkaW5nLiAqL1xuLnVrLXBvc2l0aW9uLXRvcCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi51ay1wb3NpdGlvbi1ib3R0b20ge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG4udWstcG9zaXRpb24tbGVmdCB7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xufVxuXG4udWstcG9zaXRpb24tcmlnaHQge1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG59XG5cblxuLyogQ29ybmVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1wb3NpdGlvbi10b3AtbGVmdCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG59XG5cbi51ay1wb3NpdGlvbi10b3AtcmlnaHQge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbn1cblxuLnVrLXBvc2l0aW9uLWJvdHRvbS1sZWZ0IHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbn1cblxuLnVrLXBvc2l0aW9uLWJvdHRvbS1yaWdodCB7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG4vKlxuICogQ2VudGVyXG4gKiAxLiBGaXggdGV4dCB3cmFwcGluZyBpZiBjb250ZW50IGlzIGxhcmdlciB0aGFuIDUwJSBvZiB0aGUgY29udGFpbmVyLlxuICovXG5cbi51ay1wb3NpdGlvbi1jZW50ZXIge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xuICAgIC8qIDEgKi9cbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8qIFZlcnRpY2FsICovXG5bY2xhc3MqPSd1ay1wb3NpdGlvbi1jZW50ZXItbGVmdCddLFxuW2NsYXNzKj0ndWstcG9zaXRpb24tY2VudGVyLXJpZ2h0J10ge1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLnVrLXBvc2l0aW9uLWNlbnRlci1sZWZ0IHsgbGVmdDogMDsgfVxuLnVrLXBvc2l0aW9uLWNlbnRlci1yaWdodCB7IHJpZ2h0OiAwOyB9XG5cbi51ay1wb3NpdGlvbi1jZW50ZXItbGVmdC1vdXQge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiBtYXgtY29udGVudDtcbn1cblxuLnVrLXBvc2l0aW9uLWNlbnRlci1yaWdodC1vdXQge1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xufVxuXG4vKiBIb3Jpem9udGFsICovXG4udWstcG9zaXRpb24tdG9wLWNlbnRlcixcbi51ay1wb3NpdGlvbi1ib3R0b20tY2VudGVyIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIC8qIDEgKi9cbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi51ay1wb3NpdGlvbi10b3AtY2VudGVyIHsgdG9wOiAwOyB9XG4udWstcG9zaXRpb24tYm90dG9tLWNlbnRlciB7IGJvdHRvbTogMDsgfVxuXG5cbi8qIENvdmVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXBvc2l0aW9uLWNvdmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG5cbi8qIFV0aWxpdHlcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstcG9zaXRpb24tcmVsYXRpdmUgeyBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDsgfVxuXG4udWstcG9zaXRpb24tYWJzb2x1dGUgeyBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDsgfVxuXG4udWstcG9zaXRpb24tZml4ZWQgeyBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDsgfVxuXG4udWstcG9zaXRpb24tei1pbmRleCB7IHotaW5kZXg6IDE7IH1cblxuXG4vKiBNYXJnaW4gbW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogU21hbGxcbiAqL1xuXG4udWstcG9zaXRpb24tc21hbGwge1xuICAgIG1heC13aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlIC0gKCN7JHBvc2l0aW9uLXNtYWxsLW1hcmdpbn0gKiAyKSknKTtcbiAgICBtYXJnaW46ICRwb3NpdGlvbi1zbWFsbC1tYXJnaW47XG59XG5cbi51ay1wb3NpdGlvbi1zbWFsbC51ay1wb3NpdGlvbi1jZW50ZXIgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSB0cmFuc2xhdGUoLSRwb3NpdGlvbi1zbWFsbC1tYXJnaW4sICgtJHBvc2l0aW9uLXNtYWxsLW1hcmdpbikpOyB9XG5cbi51ay1wb3NpdGlvbi1zbWFsbFtjbGFzcyo9J3VrLXBvc2l0aW9uLWNlbnRlci1sZWZ0J10sXG4udWstcG9zaXRpb24tc21hbGxbY2xhc3MqPSd1ay1wb3NpdGlvbi1jZW50ZXItcmlnaHQnXSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVZKC0kcG9zaXRpb24tc21hbGwtbWFyZ2luKTsgfVxuXG4udWstcG9zaXRpb24tc21hbGwudWstcG9zaXRpb24tdG9wLWNlbnRlcixcbi51ay1wb3NpdGlvbi1zbWFsbC51ay1wb3NpdGlvbi1ib3R0b20tY2VudGVyIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVgoLSRwb3NpdGlvbi1zbWFsbC1tYXJnaW4pOyB9XG5cbi8qXG4gKiBNZWRpdW1cbiAqL1xuXG4udWstcG9zaXRpb24tbWVkaXVtIHtcbiAgICBtYXgtd2lkdGg6IHVucXVvdGUoJ2NhbGMoMTAwJSAtICgjeyRwb3NpdGlvbi1tZWRpdW0tbWFyZ2lufSAqIDIpKScpO1xuICAgIG1hcmdpbjogJHBvc2l0aW9uLW1lZGl1bS1tYXJnaW47XG59XG5cbi51ay1wb3NpdGlvbi1tZWRpdW0udWstcG9zaXRpb24tY2VudGVyIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgdHJhbnNsYXRlKC0kcG9zaXRpb24tbWVkaXVtLW1hcmdpbiwgKC0kcG9zaXRpb24tbWVkaXVtLW1hcmdpbikpOyB9XG5cbi51ay1wb3NpdGlvbi1tZWRpdW1bY2xhc3MqPSd1ay1wb3NpdGlvbi1jZW50ZXItbGVmdCddLFxuLnVrLXBvc2l0aW9uLW1lZGl1bVtjbGFzcyo9J3VrLXBvc2l0aW9uLWNlbnRlci1yaWdodCddIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVkoLSRwb3NpdGlvbi1tZWRpdW0tbWFyZ2luKTsgfVxuXG4udWstcG9zaXRpb24tbWVkaXVtLnVrLXBvc2l0aW9uLXRvcC1jZW50ZXIsXG4udWstcG9zaXRpb24tbWVkaXVtLnVrLXBvc2l0aW9uLWJvdHRvbS1jZW50ZXIgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWCgtJHBvc2l0aW9uLW1lZGl1bS1tYXJnaW4pOyB9XG5cbi8qXG4gKiBMYXJnZVxuICovXG5cbi51ay1wb3NpdGlvbi1sYXJnZSB7XG4gICAgbWF4LXdpZHRoOiB1bnF1b3RlKCdjYWxjKDEwMCUgLSAoI3skcG9zaXRpb24tbGFyZ2UtbWFyZ2lufSAqIDIpKScpO1xuICAgIG1hcmdpbjogJHBvc2l0aW9uLWxhcmdlLW1hcmdpbjtcbn1cblxuLnVrLXBvc2l0aW9uLWxhcmdlLnVrLXBvc2l0aW9uLWNlbnRlciB7IHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHRyYW5zbGF0ZSgtJHBvc2l0aW9uLWxhcmdlLW1hcmdpbiwgKC0kcG9zaXRpb24tbGFyZ2UtbWFyZ2luKSk7IH1cblxuLnVrLXBvc2l0aW9uLWxhcmdlW2NsYXNzKj0ndWstcG9zaXRpb24tY2VudGVyLWxlZnQnXSxcbi51ay1wb3NpdGlvbi1sYXJnZVtjbGFzcyo9J3VrLXBvc2l0aW9uLWNlbnRlci1yaWdodCddIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVkoLSRwb3NpdGlvbi1sYXJnZS1tYXJnaW4pOyB9XG5cbi51ay1wb3NpdGlvbi1sYXJnZS51ay1wb3NpdGlvbi10b3AtY2VudGVyLFxuLnVrLXBvc2l0aW9uLWxhcmdlLnVrLXBvc2l0aW9uLWJvdHRvbS1jZW50ZXIgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWCgtJHBvc2l0aW9uLWxhcmdlLW1hcmdpbik7IH1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1wb3NpdGlvbi1sYXJnZSB7XG4gICAgICAgIG1heC13aWR0aDogdW5xdW90ZSgnY2FsYygxMDAlIC0gKCN7JHBvc2l0aW9uLWxhcmdlLW1hcmdpbi1sfSAqIDIpKScpO1xuICAgICAgICBtYXJnaW46ICRwb3NpdGlvbi1sYXJnZS1tYXJnaW4tbDtcbiAgICB9XG5cbiAgICAudWstcG9zaXRpb24tbGFyZ2UudWstcG9zaXRpb24tY2VudGVyIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgdHJhbnNsYXRlKC0kcG9zaXRpb24tbGFyZ2UtbWFyZ2luLWwsICgtJHBvc2l0aW9uLWxhcmdlLW1hcmdpbi1sKSk7IH1cblxuICAgIC51ay1wb3NpdGlvbi1sYXJnZVtjbGFzcyo9J3VrLXBvc2l0aW9uLWNlbnRlci1sZWZ0J10sXG4gICAgLnVrLXBvc2l0aW9uLWxhcmdlW2NsYXNzKj0ndWstcG9zaXRpb24tY2VudGVyLXJpZ2h0J10geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWSgtJHBvc2l0aW9uLWxhcmdlLW1hcmdpbi1sKTsgfVxuXG4gICAgLnVrLXBvc2l0aW9uLWxhcmdlLnVrLXBvc2l0aW9uLXRvcC1jZW50ZXIsXG4gICAgLnVrLXBvc2l0aW9uLWxhcmdlLnVrLXBvc2l0aW9uLWJvdHRvbS1jZW50ZXIgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWCgtJHBvc2l0aW9uLWxhcmdlLW1hcmdpbi1sKTsgfVxuXG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stcG9zaXRpb24tbWlzYykpIHtAaW5jbHVkZSBob29rLXBvc2l0aW9uLW1pc2MoKTt9XG5cbi8vIEBtaXhpbiBob29rLXBvc2l0aW9uLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIFRyYW5zaXRpb25cbi8vIERlc2NyaXB0aW9uOiAgICAgVXRpbGl0aWVzIGZvciB0cmFuc2l0aW9uc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLXRyYW5zaXRpb24tKmBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay10cmFuc2l0aW9uLWZhZGVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10cmFuc2l0aW9uLXNjYWxlLXVwYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdHJhbnNpdGlvbi1zY2FsZS1kb3duYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdHJhbnNpdGlvbi1zbGlkZS10b3AtKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRyYW5zaXRpb24tc2xpZGUtYm90dG9tLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10cmFuc2l0aW9uLXNsaWRlLWxlZnQtKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRyYW5zaXRpb24tc2xpZGUtcmlnaHQtKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRyYW5zaXRpb24tb3BhcXVlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdHJhbnNpdGlvbi1zbG93YFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLXRyYW5zaXRpb24tdG9nZ2xlYCxcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRyYW5zaXRpb24tYWN0aXZlYFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLWFjdGl2ZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4zcyAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tc2NhbGU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEuMSAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tc2xpZGUtc21hbGwtdHJhbnNsYXRlOiAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1zbGlkZS1tZWRpdW0tdHJhbnNsYXRlOiAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tc2xvdy1kdXJhdGlvbjogICAgICAgICAgICAgICAgICAgICAgIDAuN3MgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFRyYW5zaXRpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qIFRvZ2dsZSAoSG92ZXIgKyBGb2N1cylcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gUHJldmVudCB0YWIgaGlnaGxpZ2h0aW5nIG9uIGlPUy5cbiAqL1xuXG4udWstdHJhbnNpdGlvbi10b2dnbGUge1xuICAgIC8qIDEgKi9cbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKlxuICogUmVtb3ZlIG91dGxpbmUgZm9yIGB0YWJpbmRleGBcbiAqL1xuXG4udWstdHJhbnNpdGlvbi10b2dnbGU6Zm9jdXMgeyBvdXRsaW5lOiBub25lOyB9XG5cblxuLyogVHJhbnNpdGlvbnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogVGhlIHRvZ2dsZSBpcyB0cmlnZ2VyZWQgb24gdG91Y2ggZGV2aWNlcyBieSB0d28gbWV0aG9kczpcbiAqIDEuIFVzaW5nIGA6Zm9jdXNgIGFuZCB0YWJpbmRleFxuICogMi4gVXNpbmcgYDpob3ZlcmAgYW5kIGEgYHRvdWNoc3RhcnRgIGV2ZW50IGxpc3RlbmVyIHJlZ2lzdGVyZWQgb24gdGhlIGRvY3VtZW50XG4gKiAgICAoRG9lc24ndCB3b3JrIG9uIFN1cmZhY2UgdG91Y2ggZGV2aWNlcylcbiAqXG4gKiBOb3RlOiBUcmFuc2l0aW9ucyBkb24ndCB3b3JrIHdpdGggYHVrLXBvc3Rpb24tY2VudGVyLSpgIGNsYXNzZXMgYmVjYXVzZSB0aGV5IGFsc28gdXNlIGB0cmFuc2Zvcm1gLFxuICogICAgICAgdGhlcmVmb3JlIGl0J3MgcmVjb21tZW5kZWQgdG8gdXNlIGFuIGV4dHJhIGBkaXZgIGZvciB0aGUgdHJhbnNpdGlvbi5cbiAqL1xuXG4udWstdHJhbnNpdGlvbi1mYWRlLFxuW2NsYXNzKj0ndWstdHJhbnNpdGlvbi1zY2FsZSddLFxuW2NsYXNzKj0ndWstdHJhbnNpdGlvbi1zbGlkZSddIHtcbiAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm0sIGZpbHRlcjtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4vKlxuICogRmFkZVxuICovXG5cbi51ay10cmFuc2l0aW9uLXRvZ2dsZTpob3ZlciAudWstdHJhbnNpdGlvbi1mYWRlLFxuLnVrLXRyYW5zaXRpb24tdG9nZ2xlOmZvY3VzIC51ay10cmFuc2l0aW9uLWZhZGUsXG4udWstdHJhbnNpdGlvbi1hY3RpdmUudWstYWN0aXZlIC51ay10cmFuc2l0aW9uLWZhZGUgeyBvcGFjaXR5OiAxOyB9XG5cbi8qXG4gKiBTY2FsZVxuICovXG5cbi51ay10cmFuc2l0aW9uLXNjYWxlLXVwIHsgdHJhbnNmb3JtOiBzY2FsZSgxLDEpOyB9XG4udWstdHJhbnNpdGlvbi1zY2FsZS1kb3duIHsgdHJhbnNmb3JtOiBzY2FsZSgkdHJhbnNpdGlvbi1zY2FsZSwkdHJhbnNpdGlvbi1zY2FsZSk7IH1cblxuLyogU2hvdyAqL1xuLnVrLXRyYW5zaXRpb24tdG9nZ2xlOmhvdmVyIC51ay10cmFuc2l0aW9uLXNjYWxlLXVwLFxuLnVrLXRyYW5zaXRpb24tdG9nZ2xlOmZvY3VzIC51ay10cmFuc2l0aW9uLXNjYWxlLXVwLFxuLnVrLXRyYW5zaXRpb24tYWN0aXZlLnVrLWFjdGl2ZSAudWstdHJhbnNpdGlvbi1zY2FsZS11cCB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKCR0cmFuc2l0aW9uLXNjYWxlLCR0cmFuc2l0aW9uLXNjYWxlKTtcbn1cblxuLnVrLXRyYW5zaXRpb24tdG9nZ2xlOmhvdmVyIC51ay10cmFuc2l0aW9uLXNjYWxlLWRvd24sXG4udWstdHJhbnNpdGlvbi10b2dnbGU6Zm9jdXMgLnVrLXRyYW5zaXRpb24tc2NhbGUtZG93bixcbi51ay10cmFuc2l0aW9uLWFjdGl2ZS51ay1hY3RpdmUgLnVrLXRyYW5zaXRpb24tc2NhbGUtZG93biB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEsMSk7XG59XG5cbi8qXG4gKiBTbGlkZVxuICovXG5cbi51ay10cmFuc2l0aW9uLXNsaWRlLXRvcCB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7IH1cbi51ay10cmFuc2l0aW9uLXNsaWRlLWJvdHRvbSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTsgfVxuLnVrLXRyYW5zaXRpb24tc2xpZGUtbGVmdCB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cbi51ay10cmFuc2l0aW9uLXNsaWRlLXJpZ2h0IHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOyB9XG5cbi51ay10cmFuc2l0aW9uLXNsaWRlLXRvcC1zbWFsbCB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHRyYW5zaXRpb24tc2xpZGUtc21hbGwtdHJhbnNsYXRlKTsgfVxuLnVrLXRyYW5zaXRpb24tc2xpZGUtYm90dG9tLXNtYWxsIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCR0cmFuc2l0aW9uLXNsaWRlLXNtYWxsLXRyYW5zbGF0ZSk7IH1cbi51ay10cmFuc2l0aW9uLXNsaWRlLWxlZnQtc21hbGwgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSR0cmFuc2l0aW9uLXNsaWRlLXNtYWxsLXRyYW5zbGF0ZSk7IH1cbi51ay10cmFuc2l0aW9uLXNsaWRlLXJpZ2h0LXNtYWxsIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCR0cmFuc2l0aW9uLXNsaWRlLXNtYWxsLXRyYW5zbGF0ZSk7IH1cblxuLnVrLXRyYW5zaXRpb24tc2xpZGUtdG9wLW1lZGl1bSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHRyYW5zaXRpb24tc2xpZGUtbWVkaXVtLXRyYW5zbGF0ZSk7IH1cbi51ay10cmFuc2l0aW9uLXNsaWRlLWJvdHRvbS1tZWRpdW0geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHRyYW5zaXRpb24tc2xpZGUtbWVkaXVtLXRyYW5zbGF0ZSk7IH1cbi51ay10cmFuc2l0aW9uLXNsaWRlLWxlZnQtbWVkaXVtIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kdHJhbnNpdGlvbi1zbGlkZS1tZWRpdW0tdHJhbnNsYXRlKTsgfVxuLnVrLXRyYW5zaXRpb24tc2xpZGUtcmlnaHQtbWVkaXVtIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCR0cmFuc2l0aW9uLXNsaWRlLW1lZGl1bS10cmFuc2xhdGUpOyB9XG5cbi8qIFNob3cgKi9cbi51ay10cmFuc2l0aW9uLXRvZ2dsZTpob3ZlciBbY2xhc3MqPSd1ay10cmFuc2l0aW9uLXNsaWRlJ10sXG4udWstdHJhbnNpdGlvbi10b2dnbGU6Zm9jdXMgW2NsYXNzKj0ndWstdHJhbnNpdGlvbi1zbGlkZSddLFxuLnVrLXRyYW5zaXRpb24tYWN0aXZlLnVrLWFjdGl2ZSBbY2xhc3MqPSd1ay10cmFuc2l0aW9uLXNsaWRlJ10ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwwKTtcbn1cblxuXG4vKiBPcGFjaXR5IG1vZGlmaWVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRyYW5zaXRpb24tb3BhcXVlIHsgb3BhY2l0eTogMTsgfVxuXG5cbi8qIER1cmF0aW9uIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay10cmFuc2l0aW9uLXNsb3cgeyB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1zbG93LWR1cmF0aW9uOyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stdHJhbnNpdGlvbi1taXNjKSkge0BpbmNsdWRlIGhvb2stdHJhbnNpdGlvbi1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay10cmFuc2l0aW9uLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIFZpc2liaWxpdHlcbi8vIERlc2NyaXB0aW9uOiAgICAgVXRpbGl0aWVzIHRvIHNob3cgb3IgaGlkZSBjb250ZW50IG9uIGJyZWFrcG9pbnRzLCBob3ZlciBvciB0b3VjaFxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWhpZGRlbi0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdmlzaWJsZS0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstaW52aXNpYmxlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdmlzaWJsZS10b2dnbGVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1oaWRkZW4taG92ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1pbnZpc2libGUtaG92ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1oaWRkZW4tdG91Y2hgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1oaWRkZW4tbm90b3VjaGBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogVmlzaWJpbGl0eVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBIaWRkZW5cbiAqIGBoaWRkZW5gIGF0dHJpYnV0ZSBhbHNvIHNldCBoZXJlIHRvIG1ha2UgaXQgc3Ryb25nZXJcbiAqL1xuXG5baGlkZGVuXSxcbi51ay1oaWRkZW4geyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWhpZGRlblxcQHMgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxufVxuXG4vKiBUYWJsZXQgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1oaWRkZW5cXEBtIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1oaWRkZW5cXEBsIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbn1cblxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bGFyZ2UpIHtcblxuICAgIC51ay1oaWRkZW5cXEB4bCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG59XG5cbi8qXG4gKiBWaXNpYmxlXG4gKi9cblxuLyogUGhvbmUgcG9ydHJhaXQgYW5kIHNtYWxsZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC14c21hbGwtbWF4KSB7XG5cbiAgICAudWstdmlzaWJsZVxcQHMgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIHNtYWxsZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbC1tYXgpIHtcblxuICAgIC51ay12aXNpYmxlXFxAbSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG59XG5cbi8qIFRhYmxldCBsYW5kc2NhcGUgYW5kIHNtYWxsZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0tbWF4KSB7XG5cbiAgICAudWstdmlzaWJsZVxcQGwgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxufVxuXG4vKiBEZXNrdG9wIGFuZCBzbWFsbGVyICovXG5AbWVkaWEgKG1heC13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UtbWF4KSB7XG5cbiAgICAudWstdmlzaWJsZVxcQHhsIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbn1cblxuXG4vKiBWaXNpYmlsaXR5XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWludmlzaWJsZSB7IHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50OyB9XG5cblxuLyogVG9nZ2xlIChIb3ZlciArIEZvY3VzKVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBIaWRkZW5cbiAqIDEuIFRoZSB0b2dnbGUgaXMgdHJpZ2dlcmVkIG9uIHRvdWNoIGRldmljZXMgdXNpbmcgYDpmb2N1c2AgYW5kIHRhYmluZGV4XG4gKiAyLiBUaGUgdGFyZ2V0IHN0YXlzIHZpc2libGUgaWYgYW55IGVsZW1lbnQgd2l0aGluIHJlY2VpdmVzIGZvY3VzIHRocm91Z2gga2V5Ym9hcmRcbiAqICAgIERvZXNuJ3Qgd29yayBpbiBFZGdlLCB5ZXQuXG4gKiAzLiBDYW4ndCB1c2UgYGRpc3BsYXk6IG5vbmVgIG5vciBgdmlzaWJpbGl0eTogaGlkZGVuYCBiZWNhdXNlIGJvdGggYXJlIG5vdCBmb2N1c2FibGUuXG4gKlxuICovXG5cbi8qIDEgKyAyICovXG4udWstdmlzaWJsZS10b2dnbGU6bm90KDpob3Zlcik6bm90KDpmb2N1cykgLnVrLWhpZGRlbi1ob3Zlcjpub3QoOmZvY3VzLXdpdGhpbikge1xuICAgIC8qIDMgKi9cbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi8qXG4gKiBJbnZpc2libGVcbiAqL1xuXG4vKiAxICsgMiAqL1xuLnVrLXZpc2libGUtdG9nZ2xlOm5vdCg6aG92ZXIpOm5vdCg6Zm9jdXMpIC51ay1pbnZpc2libGUtaG92ZXI6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgICAvKiAzICovXG4gICAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xufVxuXG4vKlxuICogMS4gUHJldmVudCB0YWIgaGlnaGxpZ2h0aW5nIG9uIGlPUy5cbiAqL1xuXG4udWstdmlzaWJsZS10b2dnbGUge1xuICAgIC8qIDEgKi9cbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKlxuICogUmVtb3ZlIG91dGxpbmUgZm9yIGB0YWJpbmRleGBcbiAqL1xuXG4udWstdmlzaWJsZS10b2dnbGU6Zm9jdXMgeyBvdXRsaW5lOiBub25lOyB9XG5cblxuLyogVG91Y2hcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogSGlkZSBpZiBwcmltYXJ5IHBvaW50aW5nIGRldmljZSBoYXMgbGltaXRlZCBhY2N1cmFjeSwgZS5nLiBhIHRvdWNoIHNjcmVlbi5cbiAqIFdvcmtzIG9uIG1vYmlsZSBicm93c2VyczogU2FmYXJpLCBDaHJvbWUgYW5kIEFuZHJvaWQgYnJvd3NlclxuICovXG5cbkBtZWRpYSAocG9pbnRlcjogY29hcnNlKSB7XG4gICAgLnVrLWhpZGRlbi10b3VjaCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxufVxuXG4vKlxuICogSGlkZSBpZiBwcmltYXJ5IHBvaW50aW5nIGRldmljZSBpcyBhY2N1cmF0ZSwgZS5nLiBtb3VzZS5cbiAqIDEuIEZhbGxiYWNrIGZvciBJRTExIGFuZCBGaXJlZm94LCBiZWNhdXNlIGBwb2ludGVyYCBpcyBub3Qgc3VwcG9ydGVkXG4gKiAyLiBSZXNldCBpZiBzdXBwb3J0ZWRcbiAqL1xuXG4vKiAxICovXG4udWstaGlkZGVuLW5vdG91Y2ggeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIChwb2ludGVyOiBjb2Fyc2UpIHtcbiAgICAudWstaGlkZGVuLW5vdG91Y2ggeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYobWl4aW4tZXhpc3RzKGhvb2stdmlzaWJpbGl0eS1taXNjKSkge0BpbmNsdWRlIGhvb2stdmlzaWJpbGl0eS1taXNjKCk7fVxuXG4vLyBAbWl4aW4gaG9vay12aXNpYmlsaXR5LW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIEludmVyc2Vcbi8vIERlc2NyaXB0aW9uOiAgICAgSW52ZXJzZSBjb21wb25lbnQgc3R5bGUgZm9yIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZHNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1saWdodGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRhcmtgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGludmVyc2UtZ2xvYmFsLWNvbG9yLW1vZGU6ICAgICAgICAgICAgICAgICAgICAgIGxpZ2h0ICFkZWZhdWx0O1xuXG4kaW52ZXJzZS1nbG9iYWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkZ2xvYmFsLWludmVyc2UtY29sb3IsIDAuNykgIWRlZmF1bHQ7XG4kaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3I6ICAgICAgICAgICAgICAgICAgJGdsb2JhbC1pbnZlcnNlLWNvbG9yICFkZWZhdWx0O1xuJGludmVyc2UtZ2xvYmFsLW11dGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGdsb2JhbC1pbnZlcnNlLWNvbG9yLCAwLjUpICFkZWZhdWx0O1xuJGludmVyc2UtZ2xvYmFsLWludmVyc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnZlcnNlLWdsb2JhbC1wcmltYXJ5LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAkZ2xvYmFsLWludmVyc2UtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1nbG9iYWwtbXV0ZWQtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgcmdiYSgkZ2xvYmFsLWludmVyc2UtY29sb3IsIDAuMSkgIWRlZmF1bHQ7XG5cbiRpbnZlcnNlLWdsb2JhbC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRnbG9iYWwtaW52ZXJzZS1jb2xvciwgMC4yKSAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogSW52ZXJzZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuXG4vKlxuICogSW1wbGVtZW50ZWQgY2xhc3MgZGVwZW5kcyBvbiB0aGUgZ2VuZXJhbCB0aGVtZSBjb2xvclxuICogYHVrLWxpZ2h0YCBpcyBmb3IgbGlnaHQgY29sb3JzIG9uIGRhcmsgYmFja2dyb3VuZHNcbiAqIGB1ay1kYXJrYCBpcyBvciBkYXJrIGNvbG9ycyBvbiBsaWdodCBiYWNrZ3JvdW5kc1xuICovXG5cbkBpZiAoJGludmVyc2UtZ2xvYmFsLWNvbG9yLW1vZGUgPT0gbGlnaHQpIHsgLnVrLWxpZ2h0IHsgQGlmIChtaXhpbi1leGlzdHMoaG9vay1pbnZlcnNlKSkge0BpbmNsdWRlIGhvb2staW52ZXJzZSgpO319fVxuXG5AaWYgKCRpbnZlcnNlLWdsb2JhbC1jb2xvci1tb2RlID09IGRhcmspIHsgLnVrLWRhcmsgeyBAaWYgKG1peGluLWV4aXN0cyhob29rLWludmVyc2UpKSB7QGluY2x1ZGUgaG9vay1pbnZlcnNlKCk7fX19XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlKCl7fSIsIi8vIE5hbWU6ICAgICAgICAgICAgUHJpbnRcbi8vIERlc2NyaXB0aW9uOiAgICAgT3B0aW1pemUgcGFnZSBmb3IgcHJpbnRpbmdcbi8vXG4vLyBBZGFwdGVkIGZyb20gaHR0cDovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZVxuLy9cbi8vIE1vZGlmaWNhdGlvbnM6ICAgUmVtb3ZlZCBsaW5rIGBocmVmYCBhbmQgYHRpdGxlYCByZWxhdGVkIHJ1bGVzXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFByaW50XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQG1lZGlhIHByaW50IHtcblxuICAgICosXG4gICAgKjo6YmVmb3JlLFxuICAgICo6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgb3JwaGFuczogMztcbiAgICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHsgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cblxuICAgQGlmKG1peGluLWV4aXN0cyhob29rLXByaW50KSkge0BpbmNsdWRlIGhvb2stcHJpbnQoKTt9XG5cbn1cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1wcmludCgpe31cbiIsIi8vIEJhc2VcbkBpbXBvcnQgXCJ2YXJpYWJsZXMuc2Nzc1wiO1xuQGltcG9ydCBcImJhc2Uuc2Nzc1wiO1xuXG4vLyBFbGVtZW50c1xuQGltcG9ydCBcImxpbmsuc2Nzc1wiO1xuQGltcG9ydCBcImhlYWRpbmcuc2Nzc1wiO1xuQGltcG9ydCBcImRpdmlkZXIuc2Nzc1wiO1xuQGltcG9ydCBcImxpc3Quc2Nzc1wiO1xuQGltcG9ydCBcImRlc2NyaXB0aW9uLWxpc3Quc2Nzc1wiO1xuQGltcG9ydCBcInRhYmxlLnNjc3NcIjtcbkBpbXBvcnQgXCJpY29uLnNjc3NcIjtcbkBpbXBvcnQgXCJmb3JtLXJhbmdlLnNjc3NcIjtcbkBpbXBvcnQgXCJmb3JtLnNjc3NcIjtcbkBpbXBvcnQgXCJidXR0b24uc2Nzc1wiO1xuQGltcG9ydCBcInByb2dyZXNzLnNjc3NcIjtcblxuLy8gTGF5b3V0XG5AaW1wb3J0IFwic2VjdGlvbi5zY3NzXCI7XG5AaW1wb3J0IFwiY29udGFpbmVyLnNjc3NcIjtcbkBpbXBvcnQgXCJ0aWxlLnNjc3NcIjtcbkBpbXBvcnQgXCJjYXJkLnNjc3NcIjtcblxuLy8gQ29tbW9uXG5AaW1wb3J0IFwiY2xvc2Uuc2Nzc1wiO1xuQGltcG9ydCBcInNwaW5uZXIuc2Nzc1wiO1xuQGltcG9ydCBcIm1hcmtlci5zY3NzXCI7XG5AaW1wb3J0IFwidG90b3Auc2Nzc1wiO1xuQGltcG9ydCBcImFsZXJ0LnNjc3NcIjtcbkBpbXBvcnQgXCJwbGFjZWhvbGRlci5zY3NzXCI7XG5AaW1wb3J0IFwiYmFkZ2Uuc2Nzc1wiO1xuQGltcG9ydCBcImxhYmVsLnNjc3NcIjtcbkBpbXBvcnQgXCJvdmVybGF5LnNjc3NcIjtcbkBpbXBvcnQgXCJhcnRpY2xlLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21tZW50LnNjc3NcIjtcbkBpbXBvcnQgXCJzZWFyY2guc2Nzc1wiO1xuXG4vLyBKYXZhU2NyaXB0XG5AaW1wb3J0IFwiYWNjb3JkaW9uLnNjc3NcIjtcbkBpbXBvcnQgXCJkcm9wLnNjc3NcIjtcbkBpbXBvcnQgXCJkcm9wZG93bi5zY3NzXCI7XG5AaW1wb3J0IFwibW9kYWwuc2Nzc1wiO1xuQGltcG9ydCBcInNsaWRlci5zY3NzXCI7XG5AaW1wb3J0IFwic3RpY2t5LnNjc3NcIjtcbkBpbXBvcnQgXCJvZmZjYW52YXMuc2Nzc1wiO1xuQGltcG9ydCBcImxlYWRlci5zY3NzXCI7XG5AaW1wb3J0IFwibm90aWZpY2F0aW9uLnNjc3NcIjtcbkBpbXBvcnQgXCJ0b29sdGlwLnNjc3NcIjtcbkBpbXBvcnQgXCJzb3J0YWJsZS5zY3NzXCI7XG5AaW1wb3J0IFwiY291bnRkb3duLnNjc3NcIjtcblxuQGltcG9ydCBcImdyaWQuc2Nzc1wiO1xuXG4vLyBOYXZzXG5AaW1wb3J0IFwibmF2LnNjc3NcIjtcbkBpbXBvcnQgXCJuYXZiYXIuc2Nzc1wiO1xuQGltcG9ydCBcInN1Ym5hdi5zY3NzXCI7XG5AaW1wb3J0IFwiYnJlYWRjcnVtYi5zY3NzXCI7XG5AaW1wb3J0IFwicGFnaW5hdGlvbi5zY3NzXCI7XG5AaW1wb3J0IFwidGFiLnNjc3NcIjtcbkBpbXBvcnQgXCJzbGlkZW5hdi5zY3NzXCI7XG5AaW1wb3J0IFwiZG90bmF2LnNjc3NcIjtcbkBpbXBvcnQgXCJ0aHVtYm5hdi5zY3NzXCI7XG5AaW1wb3J0IFwiaWNvbm5hdi5zY3NzXCI7XG5cbkBpbXBvcnQgXCJsaWdodGJveC5zY3NzXCI7XG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcImFuaW1hdGlvbi5zY3NzXCI7XG5AaW1wb3J0IFwid2lkdGguc2Nzc1wiO1xuQGltcG9ydCBcImhlaWdodC5zY3NzXCI7XG5AaW1wb3J0IFwidGV4dC5zY3NzXCI7XG5AaW1wb3J0IFwiY29sdW1uLnNjc3NcIjtcbkBpbXBvcnQgXCJiYWNrZ3JvdW5kLnNjc3NcIjtcbkBpbXBvcnQgXCJhbGlnbi5zY3NzXCI7XG5AaW1wb3J0IFwidXRpbGl0eS5zY3NzXCI7XG5AaW1wb3J0IFwibWFyZ2luLnNjc3NcIjtcbkBpbXBvcnQgXCJwYWRkaW5nLnNjc3NcIjtcbkBpbXBvcnQgXCJwb3NpdGlvbi5zY3NzXCI7XG5AaW1wb3J0IFwidHJhbnNpdGlvbi5zY3NzXCI7XG5AaW1wb3J0IFwiaW52ZXJzZS5zY3NzXCI7XG4iLCIvL1xuLy8gQ29tcG9uZW50OiBWYXJpYWJsZXNcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBHbG9iYWwgdmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFR5cG9ncmFwaHlcbi8vXG5cbi8vXG4vLyBDb2xvcnNcbi8vXG5cbi8vXG4vLyBCYWNrZ3JvdW5kc1xuLy9cblxuLy9cbi8vIEJvcmRlcnNcbi8vXG5cbi8vXG4vLyBTcGFjaW5nc1xuLy9cblxuLy9cbi8vIENvbnRyb2xzXG4vL1xuXG4vL1xuLy8gWi1pbmRleFxuLy8iLCIvL1xuLy8gQ29tcG9uZW50OiBCYXNlXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIE5ld1xuLy9cblxuJGJhc2UtY29kZS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgIDZweCAhZGVmYXVsdDtcbiRiYXNlLWNvZGUtcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAycHggIWRlZmF1bHQ7XG4kYmFzZS1jb2RlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4kYmFzZS1ibG9ja3F1b3RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcblxuJGJhc2UtYmxvY2txdW90ZS1mb290ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbiRiYXNlLXByZS1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJGJhc2UtcHJlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRiYXNlLXByZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRiYXNlLXByZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcbiRiYXNlLXByZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAgICAgICAzcHggIWRlZmF1bHQ7XG5cblxuLy8gQm9keVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWJhc2UtYm9keSgpe31cblxuXG4vLyBMaW5rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWJhc2UtbGluaygpe31cblxuLy8gQG1peGluIGhvb2stYmFzZS1saW5rLWhvdmVyKCl7fVxuXG5cbi8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuLy8gSGVhZGluZ3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1iYXNlLWhlYWRpbmcoKXt9XG5cbi8vIEBtaXhpbiBob29rLWJhc2UtaDEoKXt9XG5cbi8vIEBtaXhpbiBob29rLWJhc2UtaDIoKXt9XG5cbi8vIEBtaXhpbiBob29rLWJhc2UtaDMoKXt9XG5cbi8vIEBtaXhpbiBob29rLWJhc2UtaDQoKXt9XG5cbi8vIEBtaXhpbiBob29rLWJhc2UtaDUoKXt9XG5cbi8vIEBtaXhpbiBob29rLWJhc2UtaDYoKXt9XG5cblxuLy8gSG9yaXpvbnRhbCBydWxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWJhc2UtaHIoKXt9XG5cblxuLy8gQmxvY2txdW90ZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG5cblxuLy8gUHJlZm9ybWF0dGVkIHRleHRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stYmFzZS1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kaW52ZXJzZS1iYXNlLWJsb2NrcXVvdGUtY29sb3I6ICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1iYXNlLWJsb2NrcXVvdGUtZm9vdGVyLWNvbG9yOiAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYmFzZS1saW5rKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWxpbmstaG92ZXIoKXt9XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtaGVhZGluZygpe31cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWgxKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWgyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWgzKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWg0KCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWg1KCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYXNlLWg2KCl7fVxuXG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJhc2UtaHIoKXt9IiwiLy9cbi8vIENvbXBvbmVudDogTGlua1xuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gTXV0ZWRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1saW5rLW11dGVkKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1saW5rLW11dGVkLWhvdmVyKCl7fVxuXG5cbi8vIFRleHRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1saW5rLXRleHQoKXt9XG5cbi8vIEBtaXhpbiBob29rLWxpbmstdGV4dC1ob3Zlcigpe31cblxuXG4vLyBIZWFkaW5nXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stbGluay1oZWFkaW5nKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1saW5rLWhlYWRpbmctaG92ZXIoKXt9XG5cblxuLy8gUmVzZXRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1saW5rLXJlc2V0KCl7fVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1saW5rLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbGluay1tdXRlZCgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbGluay1tdXRlZC1ob3Zlcigpe31cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1saW5rLXRleHQtaG92ZXIoKXt9XG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbGluay1oZWFkaW5nLWhvdmVyKCl7fVxuIiwiLy9cbi8vIENvbXBvbmVudDogSGVhZGluZ1xuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gQ29tcG9uZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2staGVhZGluZy1zbWFsbCgpe31cblxuLy8gQG1peGluIGhvb2staGVhZGluZy1tZWRpdW0oKXt9XG5cbi8vIEBtaXhpbiBob29rLWhlYWRpbmctbGFyZ2UoKXt9XG5cbi8vIEBtaXhpbiBob29rLWhlYWRpbmcteGxhcmdlKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1oZWFkaW5nLTJ4bGFyZ2UoKXt9XG5cblxuLy8gRGl2aWRlclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWhlYWRpbmctZGl2aWRlcigpe31cblxuXG4vLyBCdWxsZXRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1oZWFkaW5nLWJ1bGxldCgpe31cblxuXG4vLyBMaW5lXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2staGVhZGluZy1saW5lKCl7fVxuXG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWhlYWRpbmctbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLXNtYWxsKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWhlYWRpbmctbWVkaXVtKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWhlYWRpbmctbGFyZ2UoKXt9XG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtaGVhZGluZy14bGFyZ2UoKXt9XG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtaGVhZGluZy0yeGxhcmdlKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWhlYWRpbmctZGl2aWRlcigpe31cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLWJ1bGxldCgpe31cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1oZWFkaW5nLWxpbmUoKXt9XG4iLCIvL1xuLy8gQ29tcG9uZW50OiBEaXZpZGVyXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBJY29uXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stZGl2aWRlci1pY29uKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1kaXZpZGVyLWljb24tbGluZSgpe31cblxuLy8gQG1peGluIGhvb2stZGl2aWRlci1pY29uLWxpbmUtbGVmdCgpe31cblxuLy8gQG1peGluIGhvb2stZGl2aWRlci1pY29uLWxpbmUtcmlnaHQoKXt9XG5cblxuLy8gU21hbGxcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1kaXZpZGVyLXNtYWxsKCl7fVxuXG5cbi8vIFZlcnRpY2FsXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stZGl2aWRlci12ZXJ0aWNhbCgpe31cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stZGl2aWRlci1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWRpdmlkZXItaWNvbigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtZGl2aWRlci1pY29uLWxpbmUoKXt9XG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtZGl2aWRlci1zbWFsbCgpe31cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1kaXZpZGVyLXZlcnRpY2FsKCl7fSIsIi8vXG4vLyBDb21wb25lbnQ6IExpc3Rcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gTmV3XG4vL1xuXG4kbGlzdC1zdHJpcGVkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1zdHJpcGVkLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLy8gU3R5bGUgbW9kaWZpZXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stbGlzdC1kaXZpZGVyKCl7fVxuXG5cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stbGlzdC1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWxpc3QtZGl2aWRlcigpe31cblxuIiwiLy9cbi8vIENvbXBvbmVudDogRGVzY3JpcHRpb24gbGlzdFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRkZXNjcmlwdGlvbi1saXN0LXRlcm0tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZGVzY3JpcHRpb24tbGlzdC10ZXJtLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgIG5vcm1hbCAhZGVmYXVsdDtcbiRkZXNjcmlwdGlvbi1saXN0LXRlcm0tdGV4dC10cmFuc2Zvcm06ICAgICAgICAgICAgICAgICAgdXBwZXJjYXNlICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG4vLyBAbWl4aW4gaG9vay1kZXNjcmlwdGlvbi1saXN0LWRlc2NyaXB0aW9uKCl7fVxuXG5cbi8vIFN0eWxlIG1vZGlmaWVyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stZGVzY3JpcHRpb24tbGlzdC1kaXZpZGVyLXRlcm0oKXt9XG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWRlc2NyaXB0aW9uLWxpc3QtbWlzYygpe30iLCIvL1xuLy8gQ29tcG9uZW50OiBUYWJsZVxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiR0YWJsZS1oZWFkZXItY2VsbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkZXItY2VsbC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZGVyLWNlbGwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1tdXRlZC1jb2xvciAhZGVmYXVsdDtcblxuLy9cbi8vIE5ld1xuLy9cblxuJHRhYmxlLXN0cmlwZWQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG4vLyBAbWl4aW4gaG9vay10YWJsZS1jZWxsKCl7fVxuXG4vLyBAbWl4aW4gaG9vay10YWJsZS1mb290ZXIoKXt9XG5cbi8vIEBtaXhpbiBob29rLXRhYmxlLWNhcHRpb24oKXt9XG5cbi8vIEBtaXhpbiBob29rLXRhYmxlLXJvdy1hY3RpdmUoKXt9XG5cblxuLy8gU3R5bGUgbW9kaWZpZXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stdGFibGUtZGl2aWRlcigpe31cblxuXG5cbi8vIEBtaXhpbiBob29rLXRhYmxlLWhvdmVyKCl7fVxuXG5cbi8vIFNpemUgbW9kaWZpZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay10YWJsZS1zbWFsbCgpe31cblxuLy8gQG1peGluIGhvb2stdGFibGUtbGFyZ2UoKXt9XG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLWhlYWRlci1jZWxsKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS10YWJsZS1jYXB0aW9uKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS10YWJsZS1yb3ctYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS10YWJsZS1kaXZpZGVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRhYmxlLWhvdmVyKCl7fSIsIi8vXG4vLyBDb21wb25lbnQ6IEljb25cbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFN0eWxlIG1vZGlmaWVyc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBMaW5rXG4vL1xuXG4vLyBAbWl4aW4gaG9vay1pY29uLWxpbmsoKXt9XG5cbi8vIEBtaXhpbiBob29rLWljb24tbGluay1ob3Zlcigpe31cblxuLy8gQG1peGluIGhvb2staWNvbi1saW5rLWFjdGl2ZSgpe31cblxuLy9cbi8vIEJ1dHRvblxuLy9cblxuXG5cbi8vIEBtaXhpbiBob29rLWljb24tYnV0dG9uLWhvdmVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1pY29uLWJ1dHRvbi1hY3RpdmUoKXt9XG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWljb24tbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1pY29uLWxpbmsoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWljb24tbGluay1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtaWNvbi1saW5rLWFjdGl2ZSgpe31cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1pY29uLWJ1dHRvbigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtaWNvbi1idXR0b24taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWljb24tYnV0dG9uLWFjdGl2ZSgpe30iLCIvL1xuLy8gQ29tcG9uZW50OiBGb3JtIFJhbmdlXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGZvcm0tcmFuZ2UtdGh1bWItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy9cbi8vIE5ld1xuLy9cblxuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkZ2xvYmFsLWJvcmRlciwgMTAlKSAhZGVmYXVsdDtcblxuJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWZvcm0tcmFuZ2UoKXt9XG5cblxuLy8gVGh1bWJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vLyBUcmFja1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG4vLyBAbWl4aW4gaG9vay1mb3JtLXJhbmdlLXRyYWNrLWZvY3VzKCl7fVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1mb3JtLXJhbmdlLW1pc2MoKXt9IiwiLy9cbi8vIENvbXBvbmVudDogRm9ybVxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRmb3JtLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZm9ybS1oZWlnaHQgLSAoMiogJGZvcm0tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcblxuJGZvcm0tYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRmb3JtLWZvY3VzLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiRmb3JtLXNtYWxsLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAkZm9ybS1zbWFsbC1oZWlnaHQgLSAoMiogJGZvcm0tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRmb3JtLWxhcmdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAkZm9ybS1sYXJnZS1oZWlnaHQgLSAoMiogJGZvcm0tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcblxuJGZvcm0tcmFkaW8tYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4kZm9ybS1zdGFja2VkLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgICAgICAgNXB4ICFkZWZhdWx0O1xuXG4vL1xuLy8gTmV3XG4vL1xuXG4kZm9ybS1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRmb3JtLWZvY3VzLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXByaW1hcnktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuJGZvcm0tZGlzYWJsZWQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuXG4kZm9ybS1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1kYW5nZXItYmFja2dyb3VuZCAhZGVmYXVsdDtcbiRmb3JtLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXN1Y2Nlc3MtYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuJGZvcm0tYmxhbmstZm9jdXMtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGZvcm0tYmxhbmstZm9jdXMtYm9yZGVyLXN0eWxlOiAgICAgICAgICAgICAgICAgIGRhc2hlZCAhZGVmYXVsdDtcblxuJGZvcm0tcmFkaW8tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tcmFkaW8tYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkZ2xvYmFsLWJvcmRlciwgMTAlKSAhZGVmYXVsdDtcblxuJGZvcm0tcmFkaW8tZm9jdXMtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4kZm9ybS1yYWRpby1jaGVja2VkLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiRmb3JtLXJhZGlvLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcblxuJGZvcm0tbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cbi8vIEBtaXhpbiBob29rLWZvcm0tc2luZ2xlLWxpbmUoKXt9XG5cbi8vIEBtaXhpbiBob29rLWZvcm0tbXVsdGktbGluZSgpe31cblxuXG5cblxuXG5cbi8vIFN0eWxlIG1vZGlmaWVyc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuXG5cblxuXG5cbi8vIFJhZGlvIGFuZCBjaGVja2JveFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuXG5cbi8vIEBtaXhpbiBob29rLWZvcm0tcmFkaW8tY2hlY2tlZC1mb2N1cygpe31cblxuXG5cblxuLy8gTGVnZW5kXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stZm9ybS1sZWdlbmQoKXt9XG5cblxuLy8gTGFiZWxcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vLyBMYXlvdXRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1mb3JtLXN0YWNrZWQtbGFiZWwoKXt9XG5cbi8vIEBtaXhpbiBob29rLWZvcm0taG9yaXpvbnRhbC1sYWJlbCgpe31cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stZm9ybS1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kaW52ZXJzZS1mb3JtLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuXG5cblxuXG5cblxuXG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtZm9ybS1yYWRpby1jaGVja2VkLWZvY3VzKCl7fVxuXG4iLCIvL1xuLy8gQ29tcG9uZW50OiBCdXR0b25cbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kYnV0dG9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb250cm9sLWhlaWdodCAtICgkYnV0dG9uLWJvcmRlci13aWR0aCAqIDIpICFkZWZhdWx0O1xuJGJ1dHRvbi1zbWFsbC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29udHJvbC1zbWFsbC1oZWlnaHQgLSAoJGJ1dHRvbi1ib3JkZXItd2lkdGggKiAyKSAhZGVmYXVsdDtcbiRidXR0b24tbGFyZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbnRyb2wtbGFyZ2UtaGVpZ2h0IC0gKCRidXR0b24tYm9yZGVyLXdpZHRoICogMikgIWRlZmF1bHQ7XG5cbiRidXR0b24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidXR0b24tbGFyZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJGJ1dHRvbi1kZWZhdWx0LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4kYnV0dG9uLWRpc2FibGVkLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiRidXR0b24tdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi10ZXh0LWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG5cbi8vXG4vLyBOZXdcbi8vXG5cbiRidXR0b24tdGV4dC10cmFuc2Zvcm06ICAgICAgICAgICAgICAgICAgICAgICAgICB1cHBlcmNhc2UgIWRlZmF1bHQ7XG5cbiRidXR0b24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ1dHRvbi1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuJGJ1dHRvbi1kZWZhdWx0LWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgIGRhcmtlbigkZ2xvYmFsLWJvcmRlciwgMjAlKSAhZGVmYXVsdDtcbiRidXR0b24tZGVmYXVsdC1hY3RpdmUtYm9yZGVyOiAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGdsb2JhbC1ib3JkZXIsIDMwJSkgIWRlZmF1bHQ7XG5cbiRidXR0b24tZGlzYWJsZWQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcblxuJGJ1dHRvbi10ZXh0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGJ1dHRvbi10ZXh0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRidXR0b24tdGV4dC1ob3Zlci1jb2xvciAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLy8gQG1peGluIGhvb2stYnV0dG9uLWhvdmVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1idXR0b24tZm9jdXMoKXt9XG5cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1hY3RpdmUoKXt9XG5cblxuLy8gU3R5bGUgbW9kaWZpZXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG5cblxuLy9cbi8vIFByaW1hcnlcbi8vXG5cblxuXG4vLyBAbWl4aW4gaG9vay1idXR0b24tcHJpbWFyeS1ob3Zlcigpe31cblxuLy8gQG1peGluIGhvb2stYnV0dG9uLXByaW1hcnktYWN0aXZlKCl7fVxuXG4vL1xuLy8gU2Vjb25kYXJ5XG4vL1xuXG5cblxuLy8gQG1peGluIGhvb2stYnV0dG9uLXNlY29uZGFyeS1ob3Zlcigpe31cblxuLy8gQG1peGluIGhvb2stYnV0dG9uLXNlY29uZGFyeS1hY3RpdmUoKXt9XG5cbi8vXG4vLyBEYW5nZXJcbi8vXG5cblxuXG4vLyBAbWl4aW4gaG9vay1idXR0b24tZGFuZ2VyLWhvdmVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1idXR0b24tZGFuZ2VyLWFjdGl2ZSgpe31cblxuXG4vLyBEaXNhYmxlZFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIFNpemUgbW9kaWZpZXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stYnV0dG9uLXNtYWxsKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1idXR0b24tbGFyZ2UoKXt9XG5cblxuLy8gVGV4dCBtb2RpZmllclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuXG5cblxuLy8gTGluayBtb2RpZmllclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1saW5rKCl7fVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGludmVyc2UtYnV0dG9uLWRlZmF1bHQtYmFja2dyb3VuZDogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tZGVmYXVsdC1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1lbXBoYXNpcy1jb2xvciAhZGVmYXVsdDtcbiRpbnZlcnNlLWJ1dHRvbi1kZWZhdWx0LWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGludmVyc2UtYnV0dG9uLWRlZmF1bHQtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGludmVyc2UtZ2xvYmFsLWVtcGhhc2lzLWNvbG9yICFkZWZhdWx0O1xuXG4kaW52ZXJzZS1idXR0b24tdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG4kaW52ZXJzZS1idXR0b24tdGV4dC1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAkaW52ZXJzZS1nbG9iYWwtZW1waGFzaXMtY29sb3IgIWRlZmF1bHQ7XG5cblxuXG5cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tcHJpbWFyeSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYnV0dG9uLXByaW1hcnktaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJ1dHRvbi1wcmltYXJ5LWFjdGl2ZSgpe31cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5KCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tc2Vjb25kYXJ5LWFjdGl2ZSgpe31cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJ1dHRvbi10ZXh0LWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tdGV4dC1kaXNhYmxlZCgpe31cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1idXR0b24tbGluaygpe30iLCIvL1xuLy8gQ29tcG9uZW50OiBQcm9ncmVzc1xuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLy8gQG1peGluIGhvb2stcHJvZ3Jlc3MtYmFyKCl7fVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1wcm9ncmVzcy1taXNjKCl7fVxuIiwiLy9cbi8vIENvbXBvbmVudDogU2VjdGlvblxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gQ29tcG9uZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stc2VjdGlvbigpe31cblxuXG4vLyBTdHlsZSBtb2RpZmllcnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1zZWN0aW9uLWRlZmF1bHQoKXt9XG5cbi8vIEBtaXhpbiBob29rLXNlY3Rpb24tbXV0ZWQoKXt9XG5cbi8vIEBtaXhpbiBob29rLXNlY3Rpb24tcHJpbWFyeSgpe31cblxuLy8gQG1peGluIGhvb2stc2VjdGlvbi1zZWNvbmRhcnkoKXt9XG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLXNlY3Rpb24tbWlzYygpe31cbiIsIi8vXG4vLyBDb21wb25lbnQ6IENvbnRhaW5lclxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWNvbnRhaW5lci1taXNjKCl7fSIsIi8vXG4vLyBDb21wb25lbnQ6IFRpbGVcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIENvbXBvbmVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLXRpbGUoKXt9XG5cblxuLy8gU3R5bGUgbW9kaWZpZXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stdGlsZS1kZWZhdWx0KCl7fVxuXG4vLyBAbWl4aW4gaG9vay10aWxlLW11dGVkKCl7fVxuXG4vLyBAbWl4aW4gaG9vay10aWxlLXByaW1hcnkoKXt9XG5cbi8vIEBtaXhpbiBob29rLXRpbGUtc2Vjb25kYXJ5KCl7fVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay10aWxlLW1pc2MoKXt9IiwiLy9cbi8vIENvbXBvbmVudDogQ2FyZFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRjYXJkLWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuJGNhcmQtZGVmYXVsdC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJGNhcmQtZGVmYXVsdC1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgJGNhcmQtZGVmYXVsdC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4kY2FyZC1wcmltYXJ5LWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAkY2FyZC1wcmltYXJ5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbiRjYXJkLXNlY29uZGFyeS1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICRjYXJkLXNlY29uZGFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vL1xuLy8gTmV3XG4vL1xuXG4kY2FyZC1ob3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWxhcmdlLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRjYXJkLWRlZmF1bHQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY2FyZC1kZWZhdWx0LWhvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAkZ2xvYmFsLWxhcmdlLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRjYXJkLWRlZmF1bHQtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtZGVmYXVsdC1oZWFkZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRjYXJkLWRlZmF1bHQtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtZGVmYXVsdC1mb290ZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRjYXJkLXByaW1hcnktYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY2FyZC1wcmltYXJ5LWhvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAkZ2xvYmFsLWxhcmdlLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRjYXJkLXNlY29uZGFyeS1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbWVkaXVtLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY2FyZC1zZWNvbmRhcnktaG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAkZ2xvYmFsLWxhcmdlLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuLy8gU2VjdGlvbnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1jYXJkLWJvZHkoKXt9XG5cbi8vIEBtaXhpbiBob29rLWNhcmQtaGVhZGVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1jYXJkLWZvb3Rlcigpe31cblxuXG4vLyBNZWRpYVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWNhcmQtbWVkaWEoKXt9XG5cbi8vIEBtaXhpbiBob29rLWNhcmQtbWVkaWEtdG9wKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1jYXJkLW1lZGlhLWJvdHRvbSgpe31cblxuLy8gQG1peGluIGhvb2stY2FyZC1tZWRpYS1sZWZ0KCl7fVxuXG4vLyBAbWl4aW4gaG9vay1jYXJkLW1lZGlhLXJpZ2h0KCl7fVxuXG5cbi8vIFRpdGxlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stY2FyZC10aXRsZSgpe31cblxuXG4vLyBCYWRnZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWNhcmQtYmFkZ2UoKXt9XG5cblxuLy8gSG92ZXIgbW9kaWZpZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vLyBTdHlsZSBtb2RpZmllcnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLy8gQG1peGluIGhvb2stY2FyZC1kZWZhdWx0LXRpdGxlKCl7fVxuXG5cblxuXG5cblxuXG4vL1xuLy8gUHJpbWFyeVxuLy9cblxuXG5cbi8vIEBtaXhpbiBob29rLWNhcmQtcHJpbWFyeS10aXRsZSgpe31cblxuXG5cbi8vXG4vLyBTZWNvbmRhcnlcbi8vXG5cblxuXG4vLyBAbWl4aW4gaG9vay1jYXJkLXNlY29uZGFyeS10aXRsZSgpe31cblxuXG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiIsIi8vXG4vLyBDb21wb25lbnQ6IENsb3NlXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBDb21wb25lbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLy8gQG1peGluIGhvb2stY2xvc2UtaG92ZXIoKXt9XG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWNsb3NlLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtY2xvc2UoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWNsb3NlLWhvdmVyKCl7fSIsIi8vXG4vLyBDb21wb25lbnQ6IFNwaW5uZXJcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1zcGlubmVyLW1pc2MoKXt9IiwiLy9cbi8vIENvbXBvbmVudDogTWFya2VyXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBDb21wb25lbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLy8gQG1peGluIGhvb2stbWFya2VyLWhvdmVyKCl7fVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1tYXJrZXItbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1tYXJrZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW1hcmtlci1ob3Zlcigpe31cbiIsIi8vXG4vLyBDb21wb25lbnQ6IFRvdG9wXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBDb21wb25lbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLy8gQG1peGluIGhvb2stdG90b3AtaG92ZXIoKXt9XG5cbi8vIEBtaXhpbiBob29rLXRvdG9wLWFjdGl2ZSgpe31cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2staWNvbi1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRvdG9wKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS10b3RvcC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtdG90b3AtYWN0aXZlKCl7fSIsIi8vXG4vLyBDb21wb25lbnQ6IEFsZXJ0XG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIE5ld1xuLy9cblxuJGFsZXJ0LWNsb3NlLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuNCAhZGVmYXVsdDtcbiRhbGVydC1jbG9zZS1ob3Zlci1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgICAwLjggIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stYWxlcnQoKXt9XG5cblxuLy8gQ2xvc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG5cblxuLy8gU3R5bGUgbW9kaWZpZXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stYWxlcnQtcHJpbWFyeSgpe31cblxuLy8gQG1peGluIGhvb2stYWxlcnQtc3VjY2Vzcygpe31cblxuLy8gQG1peGluIGhvb2stYWxlcnQtd2FybmluZygpe31cblxuLy8gQG1peGluIGhvb2stYWxlcnQtZGFuZ2VyKCl7fVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4iLCIvL1xuLy8gQ29tcG9uZW50OiBQbGFjZWhvbGRlclxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRwbGFjZWhvbGRlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy9cbi8vIE5ld1xuLy9cblxuJHBsYWNlaG9sZGVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBsYWNlaG9sZGVyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1wbGFjZWhvbGRlci1taXNjKCl7fVxuIiwiLy9cbi8vIENvbXBvbmVudDogQmFkZ2Vcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIENvbXBvbmVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWJhZGdlKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1iYWRnZS1ob3Zlcigpe31cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stYmFkZ2UtbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1iYWRnZSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYmFkZ2UtaG92ZXIoKXt9IiwiLy9cbi8vIENvbXBvbmVudDogTGFiZWxcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gTmV3XG4vL1xuXG4kbGFiZWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgICAgICAgICAgMnB4ICFkZWZhdWx0O1xuJGxhYmVsLXRleHQtdHJhbnNmb3JtOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVwcGVyY2FzZSAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vLyBDb2xvciBtb2RpZmllcnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1sYWJlbC1zdWNjZXNzKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1sYWJlbC13YXJuaW5nKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1sYWJlbC1kYW5nZXIoKXt9XG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWxhYmVsLW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbGFiZWwoKXt9IiwiLy9cbi8vIENvbXBvbmVudDogT3ZlcmxheVxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gQ29tcG9uZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stb3ZlcmxheSgpe31cblxuLy8gSWNvblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLW92ZXJsYXktaWNvbigpe31cblxuXG4vLyBTdHlsZSBtb2RpZmllcnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1vdmVybGF5LWRlZmF1bHQoKXt9XG5cbi8vIEBtaXhpbiBob29rLW92ZXJsYXktcHJpbWFyeSgpe31cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stb3ZlcmxheS1taXNjKCl7fSIsIi8vXG4vLyBDb21wb25lbnQ6IEFydGljbGVcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gTmV3XG4vL1xuXG4kYXJ0aWNsZS1tZXRhLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJGFydGljbGUtbWV0YS1jb2xvciAhZGVmYXVsdDtcbiRhcnRpY2xlLW1ldGEtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAkZ2xvYmFsLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWFydGljbGUoKXt9XG5cblxuLy8gQWRqYWNlbnQgc2libGluZ1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWFydGljbGUtYWRqYWNlbnQoKXt9XG5cblxuLy8gVGl0bGVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1hcnRpY2xlLXRpdGxlKCl7fVxuXG5cbi8vIE1ldGFcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stYXJ0aWNsZS1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWFydGljbGUtbWV0YSgpe30iLCIvL1xuLy8gQ29tcG9uZW50OiBDb21tZW50XG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIE5ld1xuLy9cblxuJGNvbW1lbnQtcHJpbWFyeS1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtZ3V0dGVyICFkZWZhdWx0O1xuJGNvbW1lbnQtcHJpbWFyeS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtbXV0ZWQtYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1jb21tZW50KCl7fVxuXG5cbi8vIFNlY3Rpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stY29tbWVudC1ib2R5KCl7fVxuXG4vLyBAbWl4aW4gaG9vay1jb21tZW50LWhlYWRlcigpe31cblxuXG4vLyBUaXRsZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWNvbW1lbnQtdGl0bGUoKXt9XG5cblxuLy8gTWV0YVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWNvbW1lbnQtbWV0YSgpe31cblxuXG4vLyBBdmF0YXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1jb21tZW50LWF2YXRhcigpe31cblxuXG4vLyBMaXN0XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stY29tbWVudC1saXN0LWFkamFjZW50KCl7fVxuXG4vLyBAbWl4aW4gaG9vay1jb21tZW50LWxpc3Qtc3ViKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1jb21tZW50LWxpc3Qtc3ViLWFkamFjZW50KCl7fVxuXG5cbi8vIFN0eWxlIG1vZGlmaWVyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWNvbW1lbnQtbWlzYygpe30iLCIvL1xuLy8gQ29tcG9uZW50OiBTZWFyY2hcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kc2VhcmNoLWRlZmF1bHQtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vL1xuLy8gTmV3XG4vL1xuXG4kc2VhcmNoLWRlZmF1bHQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHNlYXJjaC1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1zZWFyY2gtaW5wdXQoKXt9XG5cblxuLy8gRGVmYXVsdCBtb2RpZmllcnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vLyBOYXZiYXIgbW9kaWZpZXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stc2VhcmNoLW5hdmJhci1pbnB1dCgpe31cblxuLy8gQG1peGluIGhvb2stc2VhcmNoLWRlZmF1bHQtaW5wdXQtZm9jdXMoKXt9XG5cblxuLy8gTGFyZ2UgbW9kaWZpZXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stc2VhcmNoLWxhcmdlLWlucHV0KCl7fVxuXG5cbi8vIFRvZ2dsZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLXNlYXJjaC10b2dnbGUoKXt9XG5cbi8vIEBtaXhpbiBob29rLXNlYXJjaC10b2dnbGUtaG92ZXIoKXt9XG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLXNlYXJjaC1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kaW52ZXJzZS1zZWFyY2gtZGVmYXVsdC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC1kZWZhdWx0LWlucHV0LWZvY3VzKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC1uYXZiYXItaW5wdXQoKXt9XG5cbi8vIEBtaXhpbiBob29rLWludmVyc2Utc2VhcmNoLWxhcmdlLWlucHV0KCl7fVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC10b2dnbGUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXNlYXJjaC10b2dnbGUtaG92ZXIoKXt9IiwiLy9cbi8vIENvbXBvbmVudDogQWNjb3JkaW9uXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIE5ld1xuLy9cblxuJGFjY29yZGlvbi1pY29uLW1hcmdpbi1sZWZ0OiAgICAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtY29sb3IgIWRlZmF1bHQ7XG4kaW50ZXJuYWwtYWNjb3JkaW9uLW9wZW4taW1hZ2U6IFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNDc3ZnJTIwd2lkdGglM0QlMjIxMyUyMiUyMGhlaWdodCUzRCUyMjEzJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTMlMjAxMyUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTBBJTIwJTIwJTIwJTIwJTNDcmVjdCUyMGZpbGwlM0QlMjIjMDAwJTIyJTIwd2lkdGglM0QlMjIxMyUyMiUyMGhlaWdodCUzRCUyMjElMjIlMjB4JTNEJTIyMCUyMiUyMHklM0QlMjI2JTIyJTIwJTJGJTNFJTBBJTNDJTJGc3ZnJTNFXCIgIWRlZmF1bHQ7XG4kaW50ZXJuYWwtYWNjb3JkaW9uLWNsb3NlLWltYWdlOiBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTMlMjIlMjBoZWlnaHQlM0QlMjIxMyUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDEzJTIwMTMlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3JlY3QlMjBmaWxsJTNEJTIyIzAwMCUyMiUyMHdpZHRoJTNEJTIyMTMlMjIlMjBoZWlnaHQlM0QlMjIxJTIyJTIweCUzRCUyMjAlMjIlMjB5JTNEJTIyNiUyMiUyMCUyRiUzRSUwQSUyMCUyMCUyMCUyMCUzQ3JlY3QlMjBmaWxsJTNEJTIyIzAwMCUyMiUyMHdpZHRoJTNEJTIyMSUyMiUyMGhlaWdodCUzRCUyMjEzJTIyJTIweCUzRCUyMjYlMjIlMjB5JTNEJTIyMCUyMiUyMCUyRiUzRSUwQSUzQyUyRnN2ZyUzRVwiICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWFjY29yZGlvbigpe31cblxuXG4vLyBJdGVtXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stYWNjb3JkaW9uLWl0ZW0oKXt9XG5cblxuLy8gVGl0bGVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLy8gQG1peGluIGhvb2stYWNjb3JkaW9uLXRpdGxlLWhvdmVyKCl7fVxuXG5cbi8vIENvbnRlbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1hY2NvcmRpb24tY29udGVudCgpe31cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stYWNjb3JkaW9uLW1pc2MoKXt9XG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWFjY29yZGlvbi1pdGVtKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWFjY29yZGlvbi10aXRsZSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYWNjb3JkaW9uLXRpdGxlLWhvdmVyKCl7fVxuXG5cbiIsIi8vXG4vLyBDb21wb25lbnQ6IERyb3Bcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1kcm9wLW1pc2MoKXt9IiwiLy9cbi8vIENvbXBvbmVudDogRHJvcGRvd25cbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kZHJvcGRvd24tcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjVweCAhZGVmYXVsdDtcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vXG4vLyBOZXdcbi8vXG5cbiRkcm9wZG93bi1uYXYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAgNXB4IDEycHggcmdiYSgwLDAsMCwwLjE1KSAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuXG4vLyBOYXZcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLy8gQG1peGluIGhvb2stZHJvcGRvd24tbmF2LWl0ZW0oKXt9XG5cbi8vIEBtaXhpbiBob29rLWRyb3Bkb3duLW5hdi1pdGVtLWhvdmVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1kcm9wZG93bi1uYXYtaGVhZGVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1kcm9wZG93bi1uYXYtZGl2aWRlcigpe31cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stZHJvcGRvd24tbWlzYygpe30iLCIvL1xuLy8gQ29tcG9uZW50OiBNb2RhbFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRtb2RhbC1oZWFkZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAkbW9kYWwtZGlhbG9nLWJhY2tncm91bmQgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgJG1vZGFsLWRpYWxvZy1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vL1xuLy8gTmV3XG4vL1xuXG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuXG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyICFkZWZhdWx0O1xuXG4kbW9kYWwtY2xvc2UtZnVsbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbiRtb2RhbC1jbG9zZS1mdWxsLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICRtb2RhbC1kaWFsb2ctYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1tb2RhbCgpe31cblxuXG4vLyBEaWFsb2dcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1tb2RhbC1kaWFsb2coKXt9XG5cblxuLy8gRnVsbFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLW1vZGFsLWZ1bGwoKXt9XG5cblxuLy8gU2VjdGlvbnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLy8gQG1peGluIGhvb2stbW9kYWwtYm9keSgpe31cblxuXG5cblxuLy8gVGl0bGVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1tb2RhbC10aXRsZSgpe31cblxuXG4vLyBDbG9zZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLW1vZGFsLWNsb3NlKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1tb2RhbC1jbG9zZS1ob3Zlcigpe31cblxuLy8gQG1peGluIGhvb2stbW9kYWwtY2xvc2UtZGVmYXVsdCgpe31cblxuLy8gQG1peGluIGhvb2stbW9kYWwtY2xvc2UtZGVmYXVsdC1ob3Zlcigpe31cblxuLy8gQG1peGluIGhvb2stbW9kYWwtY2xvc2Utb3V0c2lkZSgpe31cblxuLy8gQG1peGluIGhvb2stbW9kYWwtY2xvc2Utb3V0c2lkZS1ob3Zlcigpe31cblxuXG5cbi8vIEBtaXhpbiBob29rLW1vZGFsLWNsb3NlLWZ1bGwtaG92ZXIoKXt9XG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLW1vZGFsLW1pc2MoKXt9IiwiLy9cbi8vIENvbXBvbmVudDogU2xpZGVyXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stc2xpZGVyLW1pc2MoKXt9XG4iLCIvL1xuLy8gQ29tcG9uZW50OiBTdGlja3lcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1zdGlja3ktbWlzYygpe30iLCIvL1xuLy8gQ29tcG9uZW50OiBPZmYtY2FudmFzXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBCYXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1vZmZjYW52YXMtYmFyKCl7fVxuXG5cbi8vIENsb3NlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stb2ZmY2FudmFzLWNsb3NlKCl7fVxuXG5cbi8vIE92ZXJsYXlcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1vZmZjYW52YXMtb3ZlcmxheSgpe31cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stb2ZmY2FudmFzLW1pc2MoKXt9IiwiLy9cbi8vIENvbXBvbmVudDogTGVhZGVyXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBDb21wb25lbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1sZWFkZXIoKXt9XG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWxlYWRlci1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWxlYWRlcigpe30iLCIvL1xuLy8gQ29tcG9uZW50OiBOb3RpZmljYXRpb25cbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIENvbXBvbmVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLW5vdGlmaWNhdGlvbigpe31cblxuXG4vLyBNZXNzYWdlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2UoKXt9XG5cblxuLy8gQ2xvc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1ub3RpZmljYXRpb24tY2xvc2UoKXt9XG5cblxuLy8gU3R5bGUgbW9kaWZpZXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2UtcHJpbWFyeSgpe31cblxuLy8gQG1peGluIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2Utc3VjY2Vzcygpe31cblxuLy8gQG1peGluIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2Utd2FybmluZygpe31cblxuLy8gQG1peGluIGhvb2stbm90aWZpY2F0aW9uLW1lc3NhZ2UtZGFuZ2VyKCl7fVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1ub3RpZmljYXRpb24tbWlzYygpe30iLCIvL1xuLy8gQ29tcG9uZW50OiBUb29sdGlwXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBDb21wb25lbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay10b29sdGlwKCl7fVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay10b29sdGlwLW1pc2MoKXt9IiwiLy9cbi8vIENvbXBvbmVudDogU29ydGFibGVcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIENvbXBvbmVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLXNvcnRhYmxlKCl7fVxuXG5cbi8vIERyYWdcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1zb3J0YWJsZS1kcmFnKCl7fVxuXG5cbi8vIFBsYWNlaG9sZGVyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stc29ydGFibGUtcGxhY2Vob2xkZXIoKXt9XG5cblxuLy8gRW1wdHlcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1zb3J0YWJsZS1lbXB0eSgpe31cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stc29ydGFibGUtbWlzYygpe31cbiIsIi8vXG4vLyBDb21wb25lbnQ6IENvdW50ZG93blxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gQ29tcG9uZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stY291bnRkb3duKCl7fVxuXG5cbi8vIEl0ZW1cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1jb3VudGRvd24taXRlbSgpe31cblxuXG4vLyBOdW1iZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1jb3VudGRvd24tbnVtYmVyKCl7fVxuXG5cbi8vIFNlcGFyYXRvclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWNvdW50ZG93bi1zZXBhcmF0b3IoKXt9XG5cblxuLy8gTGFiZWxcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1jb3VudGRvd24tbGFiZWwoKXt9XG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWNvdW50ZG93bi1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWNvdW50ZG93bi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1jb3VudGRvd24tbnVtYmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1jb3VudGRvd24tc2VwYXJhdG9yKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1jb3VudGRvd24tbGFiZWwoKXt9XG4iLCIvL1xuLy8gQ29tcG9uZW50OiBHcmlkXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stZ3JpZC1taXNjKCl7fSIsIi8vXG4vLyBDb21wb25lbnQ6IE5hdlxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBOZXdcbi8vXG5cbiRuYXYtZGVmYXVsdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLXNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuXG4vLyBTdWJsaXN0c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLW5hdi1zdWIoKXt9XG5cblxuLy8gUGFyZW50IGljb24gbW9kaWZpZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1uYXYtcGFyZW50LWljb24oKXt9XG5cblxuLy8gSGVhZGVyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stbmF2LWhlYWRlcigpe31cblxuXG4vLyBEaXZpZGVyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stbmF2LWRpdmlkZXIoKXt9XG5cblxuLy8gRGVmYXVsdCBzdHlsZSBtb2RpZmllclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG4vLyBAbWl4aW4gaG9vay1uYXYtZGVmYXVsdC1pdGVtKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1uYXYtZGVmYXVsdC1pdGVtLWhvdmVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1uYXYtZGVmYXVsdC1pdGVtLWFjdGl2ZSgpe31cblxuLy8gQG1peGluIGhvb2stbmF2LWRlZmF1bHQtaGVhZGVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1uYXYtZGVmYXVsdC1kaXZpZGVyKCl7fVxuXG5cbi8vIFByaW1hcnkgc3R5bGUgbW9kaWZpZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1uYXYtcHJpbWFyeSgpe31cblxuLy8gQG1peGluIGhvb2stbmF2LXByaW1hcnktaXRlbSgpe31cblxuLy8gQG1peGluIGhvb2stbmF2LXByaW1hcnktaXRlbS1ob3Zlcigpe31cblxuLy8gQG1peGluIGhvb2stbmF2LXByaW1hcnktaXRlbS1hY3RpdmUoKXt9XG5cbi8vIEBtaXhpbiBob29rLW5hdi1wcmltYXJ5LWhlYWRlcigpe31cblxuLy8gQG1peGluIGhvb2stbmF2LXByaW1hcnktZGl2aWRlcigpe31cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stbmF2LW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbmF2LXBhcmVudC1pY29uKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWl0ZW0tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXYtZGVmYXVsdC1oZWFkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1kZWZhdWx0LWRpdmlkZXIoKXt9XG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbmF2LXByaW1hcnktaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbmF2LXByaW1hcnktaXRlbS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbmF2LXByaW1hcnktaXRlbS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdi1wcmltYXJ5LWhlYWRlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbmF2LXByaW1hcnktZGl2aWRlcigpe30iLCIvL1xuLy8gQ29tcG9uZW50OiBOYXZiYXJcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kbmF2YmFyLW5hdi1pdGVtLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1zbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRuYXZiYXItZHJvcGRvd24tbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgIDI1cHggIWRlZmF1bHQ7XG4kbmF2YmFyLWRyb3Bkb3duLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuJG5hdmJhci1kcm9wZG93bi1ncmlkLWd1dHRlci1ob3Jpem9udGFsOiAgICAgICAgICgkbmF2YmFyLWRyb3Bkb3duLXBhZGRpbmcgKiAyKSAhZGVmYXVsdDtcblxuLy9cbi8vIE5ld1xuLy9cblxuJG5hdmJhci1uYXYtaXRlbS10ZXh0LXRyYW5zZm9ybTogICAgICAgICAgICAgICAgIHVwcGVyY2FzZSAhZGVmYXVsdDtcblxuJG5hdmJhci1kcm9wZG93bi1uYXYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgMCA1cHggMTJweCByZ2JhKDAsMCwwLDAuMTUpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRyb3BiYXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgMCA1cHggN3B4IHJnYmEoMCwgMCwgMCwgMC4wNSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItZHJvcGRvd24tZ3JpZC1kaXZpZGVyLWJvcmRlci13aWR0aDogICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXZiYXItZHJvcGRvd24tZ3JpZC1kaXZpZGVyLWJvcmRlcjogICAgICAgICAgICAkbmF2YmFyLWRyb3Bkb3duLW5hdi1kaXZpZGVyLWJvcmRlciAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1uYXZiYXIoKXt9XG5cblxuLy8gQ29udGFpbmVyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stbmF2YmFyLWNvbnRhaW5lcigpe31cblxuXG4vLyBOYXZcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLy8gQG1peGluIGhvb2stbmF2YmFyLW5hdi1pdGVtLWhvdmVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1uYXZiYXItbmF2LWl0ZW0tb25jbGljaygpe31cblxuLy8gQG1peGluIGhvb2stbmF2YmFyLW5hdi1pdGVtLWFjdGl2ZSgpe31cblxuXG4vLyBJdGVtXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stbmF2YmFyLWl0ZW0oKXt9XG5cblxuLy8gVG9nZ2xlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stbmF2YmFyLXRvZ2dsZSgpe31cblxuLy8gQG1peGluIGhvb2stbmF2YmFyLXRvZ2dsZS1ob3Zlcigpe31cblxuLy8gQG1peGluIGhvb2stbmF2YmFyLXRvZ2dsZS1pY29uKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1uYXZiYXItdG9nZ2xlLWljb24taG92ZXIoKXt9XG5cblxuLy8gU3VidGl0bGVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1uYXZiYXItc3VidGl0bGUoKXt9XG5cblxuLy8gU3R5bGUgbW9kaWZpZXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stbmF2YmFyLXByaW1hcnkoKXt9XG5cbi8vIEBtaXhpbiBob29rLW5hdmJhci10cmFuc3BhcmVudCgpe31cblxuLy8gQG1peGluIGhvb2stbmF2YmFyLXN0aWNreSgpe31cblxuXG4vLyBEcm9wZG93blxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cblxuXG4vLyBEcm9wZG93biBuYXZcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLy8gQG1peGluIGhvb2stbmF2YmFyLWRyb3Bkb3duLW5hdi1pdGVtKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24tbmF2LWl0ZW0taG92ZXIoKXt9XG5cbi8vIEBtaXhpbiBob29rLW5hdmJhci1kcm9wZG93bi1uYXYtaGVhZGVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1uYXZiYXItZHJvcGRvd24tbmF2LWRpdmlkZXIoKXt9XG5cblxuLy8gRHJvcGJhclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLW5hdmJhci1kcm9wYmFyKCl7fVxuXG5cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtbmF2YmFyLW5hdi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdmJhci1uYXYtaXRlbS1vbmNsaWNrKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1uYXZiYXItbmF2LWl0ZW0tYWN0aXZlKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdmJhci1pdGVtKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdmJhci10b2dnbGUoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLW5hdmJhci10b2dnbGUtaG92ZXIoKXt9IiwiLy9cbi8vIENvbXBvbmVudDogU3VibmF2XG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIE5ld1xuLy9cblxuJHN1Ym5hdi1pdGVtLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJHN1Ym5hdi1pdGVtLXRleHQtdHJhbnNmb3JtOiAgICAgICAgICAgICAgICAgICAgIHVwcGVyY2FzZSAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1zdWJuYXYoKXt9XG5cblxuXG4vLyBAbWl4aW4gaG9vay1zdWJuYXYtaXRlbS1ob3Zlcigpe31cblxuLy8gQG1peGluIGhvb2stc3VibmF2LWl0ZW0tYWN0aXZlKCl7fVxuXG5cbi8vIERpdmlkZXIgbW9kaWZpZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1zdWJuYXYtZGl2aWRlcigpe31cblxuXG4vLyBQaWxsIG1vZGlmaWVyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stc3VibmF2LXBpbGwtaXRlbSgpe31cblxuLy8gQG1peGluIGhvb2stc3VibmF2LXBpbGwtaXRlbS1ob3Zlcigpe31cblxuLy8gQG1peGluIGhvb2stc3VibmF2LXBpbGwtaXRlbS1vbmNsaWNrKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1zdWJuYXYtcGlsbC1pdGVtLWFjdGl2ZSgpe31cblxuXG4vLyBEaXNhYmxlZFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLXN1Ym5hdi1pdGVtLWRpc2FibGVkKCl7fVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1zdWJuYXYtbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2Utc3VibmF2LWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXN1Ym5hdi1pdGVtLWFjdGl2ZSgpe31cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtZGl2aWRlcigpe31cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zdWJuYXYtcGlsbC1pdGVtLW9uY2xpY2soKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXN1Ym5hdi1waWxsLWl0ZW0tYWN0aXZlKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXN1Ym5hdi1pdGVtLWRpc2FibGVkKCl7fVxuIiwiLy9cbi8vIENvbXBvbmVudDogQnJlYWRjcnVtYlxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gQ29tcG9uZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stYnJlYWRjcnVtYigpe31cblxuXG4vLyBJdGVtc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWJyZWFkY3J1bWItaXRlbSgpe31cblxuLy8gQG1peGluIGhvb2stYnJlYWRjcnVtYi1pdGVtLWhvdmVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1icmVhZGNydW1iLWl0ZW0tZGlzYWJsZWQoKXt9XG5cbi8vIEBtaXhpbiBob29rLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUoKXt9XG5cbi8vIEBtaXhpbiBob29rLWJyZWFkY3J1bWItZGl2aWRlcigpe31cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stYnJlYWRjcnVtYi1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYnJlYWRjcnVtYi1pdGVtLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1icmVhZGNydW1iLWl0ZW0tZGlzYWJsZWQoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWJyZWFkY3J1bWItaXRlbS1hY3RpdmUoKXt9XG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtYnJlYWRjcnVtYi1kaXZpZGVyKCl7fSIsIi8vXG4vLyBDb21wb25lbnQ6IFBhZ2luYXRpb25cbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIENvbXBvbmVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLXBhZ2luYXRpb24oKXt9XG5cblxuLy8gSXRlbXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cblxuLy8gQG1peGluIGhvb2stcGFnaW5hdGlvbi1pdGVtLWhvdmVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1wYWdpbmF0aW9uLWl0ZW0tYWN0aXZlKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1wYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQoKXt9XG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLXBhZ2luYXRpb24tbWlzYygpe31cblxuXG4vLyBJbnZlcnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1wYWdpbmF0aW9uLWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXBhZ2luYXRpb24taXRlbS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtcGFnaW5hdGlvbi1pdGVtLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLWludmVyc2UtcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkKCl7fSIsIi8vXG4vLyBDb21wb25lbnQ6IFRhYlxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBOZXdcbi8vXG5cbiR0YWItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ2xvYmFsLWJvcmRlciAhZGVmYXVsdDtcblxuJHRhYi1pdGVtLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYi1pdGVtLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJHRhYi1pdGVtLXRleHQtdHJhbnNmb3JtOiAgICAgICAgICAgICAgICAgICAgICAgIHVwcGVyY2FzZSAhZGVmYXVsdDtcblxuJHRhYi1pdGVtLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICRnbG9iYWwtcHJpbWFyeS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIEl0ZW1zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cbi8vIEBtaXhpbiBob29rLXRhYi1pdGVtLWhvdmVyKCl7fVxuXG5cblxuLy8gQG1peGluIGhvb2stdGFiLWl0ZW0tZGlzYWJsZWQoKXt9XG5cblxuLy8gUG9zaXRpb24gbW9kaWZpZXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRpbnZlcnNlLXRhYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICRpbnZlcnNlLWdsb2JhbC1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRhYi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS10YWItaXRlbS1ob3Zlcigpe31cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS10YWItaXRlbS1kaXNhYmxlZCgpe30iLCIvL1xuLy8gQ29tcG9uZW50OiBTbGlkZW5hdlxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gQ29tcG9uZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG5cbi8vIEBtaXhpbiBob29rLXNsaWRlbmF2LWhvdmVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1zbGlkZW5hdi1hY3RpdmUoKXt9XG5cblxuLy8gSWNvbiBtb2RpZmllclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLXNsaWRlbmF2LXByZXZpb3VzKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1zbGlkZW5hdi1uZXh0KCl7fVxuXG5cbi8vIFNpemUgbW9kaWZpZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1zbGlkZW5hdi1sYXJnZSgpe31cblxuXG4vLyBDb250YWluZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1zbGlkZW5hdi1jb250YWluZXIoKXt9XG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLXNsaWRlbmF2LW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWludmVyc2Utc2xpZGVuYXYoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXNsaWRlbmF2LWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1zbGlkZW5hdi1hY3RpdmUoKXt9XG4iLCIvL1xuLy8gQ29tcG9uZW50OiBEb3RuYXZcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kZG90bmF2LWl0ZW0tYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy9cbi8vIE5ld1xuLy9cblxuJGRvdG5hdi1pdGVtLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuXG4kZG90bmF2LWl0ZW0tYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRnbG9iYWwtY29sb3IsIDAuNCkgIWRlZmF1bHQ7XG4kZG90bmF2LWl0ZW0taG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRkb3RuYXYtaXRlbS1vbmNsaWNrLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGRvdG5hdi1pdGVtLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stZG90bmF2KCl7fVxuXG5cblxuXG5cblxuXG5cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stZG90bmF2LW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRpbnZlcnNlLWRvdG5hdi1pdGVtLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWRvdG5hdigpe31cblxuXG5cbiIsIi8vXG4vLyBDb21wb25lbnQ6IFRodW1ibmF2XG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIE5ld1xuLy9cblxuJHRodW1ibmF2LWl0ZW0tYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGdsb2JhbC1iYWNrZ3JvdW5kLCAwLjQpICFkZWZhdWx0O1xuJHRodW1ibmF2LWl0ZW0taG92ZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHRodW1ibmF2LWl0ZW0tYWN0aXZlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLXRodW1ibmF2KCl7fVxuXG5cblxuXG5cblxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay10aHVtYm5hdi1taXNjKCl7fVxuXG5cbi8vIEludmVyc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRodW1ibmF2LWl0ZW0oKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRodW1ibmF2LWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLXRodW1ibmF2LWl0ZW0tYWN0aXZlKCl7fSIsIi8vXG4vLyBDb21wb25lbnQ6IEljb25uYXZcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIENvbXBvbmVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWljb25uYXYoKXt9XG5cbi8vIEBtaXhpbiBob29rLWljb25uYXYtaXRlbSgpe31cblxuLy8gQG1peGluIGhvb2staWNvbm5hdi1pdGVtLWhvdmVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1pY29ubmF2LWl0ZW0tYWN0aXZlKCl7fVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1pY29ubmF2LW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtaWNvbm5hdi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1pY29ubmF2LWl0ZW0taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pbnZlcnNlLWljb25uYXYtaXRlbS1hY3RpdmUoKXt9IiwiLy9cbi8vIENvbXBvbmVudDogTGlnaHRib3hcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIENvbXBvbmVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWxpZ2h0Ym94KCl7fVxuXG5cbi8vIEl0ZW1cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1saWdodGJveC1pdGVtKCl7fVxuXG5cbi8vIFRvb2xiYXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1saWdodGJveC10b29sYmFyKCl7fVxuXG5cbi8vIFRvb2xiYXIgSWNvblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWxpZ2h0Ym94LXRvb2xiYXItaWNvbigpe31cblxuLy8gQG1peGluIGhvb2stbGlnaHRib3gtdG9vbGJhci1pY29uLWhvdmVyKCl7fVxuXG5cbi8vIEJ1dHRvblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWxpZ2h0Ym94LWJ1dHRvbigpe31cblxuLy8gQG1peGluIGhvb2stbGlnaHRib3gtYnV0dG9uLWhvdmVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1saWdodGJveC1idXR0b24tYWN0aXZlKCl7fVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1saWdodGJveC1taXNjKCl7fSIsIi8vXG4vLyBDb21wb25lbnQ6IEFuaW1hdGlvblxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWFuaW1hdGlvbi1taXNjKCl7fSIsIi8vXG4vLyBDb21wb25lbnQ6IFdpZHRoXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2std2lkdGgtbWlzYygpe30iLCIvL1xuLy8gQ29tcG9uZW50OiBIZWlnaHRcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1oZWlnaHQtbWlzYygpe30iLCIvL1xuLy8gQ29tcG9uZW50OiBUZXh0XG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIE5ld1xuLy9cblxuJHRleHQtbWV0YS1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICR0ZXh0LW1ldGEtY29sb3IgIWRlZmF1bHQ7XG4kdGV4dC1tZXRhLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGdsb2JhbC1jb2xvciAhZGVmYXVsdDtcblxuXG4vLyBTdHlsZSBtb2RpZmllcnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay10ZXh0LWxlYWQoKXt9XG5cblxuXG5cbi8vIFNpemUgbW9kaWZpZXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stdGV4dC1zbWFsbCgpe31cblxuLy8gQG1peGluIGhvb2stdGV4dC1sYXJnZSgpe31cblxuXG4vLyBCYWNrZ3JvdW5kIG1vZGlmaWVyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stdGV4dC1iYWNrZ3JvdW5kKCl7fVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay10ZXh0LW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtdGV4dC1sZWFkKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS10ZXh0LW1ldGEoKXt9XG4iLCIvL1xuLy8gQ29tcG9uZW50OiBDb2x1bW5cbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1jb2x1bW4tbWlzYygpe30iLCIvL1xuLy8gQ29tcG9uZW50OiBCYWNrZ3JvdW5kXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stYmFja2dyb3VuZC1taXNjKCl7fSIsIi8vXG4vLyBDb21wb25lbnQ6IEFsaWduXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBNaXNjZWxsYW5lb3VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2stYWxpZ24tbWlzYygpe30iLCIvL1xuLy8gQ29tcG9uZW50OiBVdGlsaXR5XG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBQYW5lbFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLXBhbmVsLXNjcm9sbGFibGUoKXt9XG5cblxuLy8gQm94LXNoYWRvdyBib3R0b21cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1ib3gtc2hhZG93LWJvdHRvbSgpe31cblxuXG4vLyBEcm9wIGNhcFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuXG5cbi8vIExvZ29cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1sb2dvKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1sb2dvLWhvdmVyKCl7fVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay11dGlsaXR5LW1pc2MoKXt9XG5cblxuLy8gSW52ZXJzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLWludmVyc2UtZHJvcGNhcCgpe31cblxuLy8gQG1peGluIGhvb2staW52ZXJzZS1sb2dvKCl7fVxuLy8gQG1peGluIGhvb2staW52ZXJzZS1sb2dvLWhvdmVyKCl7fSIsIi8vXG4vLyBDb21wb25lbnQ6IE1hcmdpblxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gTWlzY2VsbGFuZW91c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLW1hcmdpbi1taXNjKCl7fSIsIi8vXG4vLyBDb21wb25lbnQ6IFBhZGRpbmdcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1wYWRkaW5nLW1pc2MoKXt9IiwiLy9cbi8vIENvbXBvbmVudDogUG9zaXRpb25cbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1wb3NpdGlvbi1taXNjKCl7fSIsIi8vXG4vLyBDb21wb25lbnQ6IFRyYW5zaXRpb25cbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIE1pc2NlbGxhbmVvdXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay10cmFuc2l0aW9uLW1pc2MoKXt9IiwiLy9cbi8vIENvbXBvbmVudDogSW52ZXJzZVxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gQ29tcG9uZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQG1peGluIGhvb2staW52ZXJzZSgpe30iLCJAaW1wb3J0IFwiLi4vLi4vY29tbW9uL3ZhclwiO1xuXG4vLyBIZWFkZGluZ1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5oMSwgLnVrLWgxLCBoMiwgLnVrLWgyLCBoMywgLnVrLWgzLCBoNCwgLnVrLWg0LCBoNSwgLnVrLWg1LCBoNiwgLnVrLWg2LCAudWstaGVhZGluZy1zbWFsbCwgLnVrLWhlYWRpbmctbWVkaXVtLCAudWstaGVhZGluZy1sYXJnZSwgLnVrLWhlYWRpbmcteGxhcmdlLCAudWstaGVhZGluZy0yeGxhcmdlIHtcblx0Zm9udC1mYW1pbHk6ICdOb3RvIFNhbnMgSmFwYW5lc2UnO1xuXHRjb2xvcjogaW5oZXJpdDtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmgxLCAudWstaDEge1xuXHRtYXJnaW46IC0xNXB4IC0xNXB4IDIwcHg7XG5cdHBhZGRpbmc6IDEwcHg7XG5cdGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkY29sb3ItYm9yZGVyLWRlZmF1bHQ7XG5cdGZvbnQtc2l6ZTogMS43MTQyODU3MXJlbTtcblx0bGluZS1oZWlnaHQ6IDI2cHg7XG59XG5cbmgyLCAudWstaDIge1xuXHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRmb250LXNpemU6IDEuNTcxNDI4NTdyZW07XG59XG5cbmgzLCAudWstaDMge1xuXHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRtYXJnaW4tYm90dG9tOiAxNXB4O1xuXHRmb250LXNpemU6IDEuNDI4NTcxNDNyZW07XG59XG5cbmg0LCAudWstaDQge1xuXHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRmb250LXNpemU6IDEuMjg1NzE0MjlyZW07XG59XG5cbmg1LCAudWstaDUge1xuXHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRtYXJnaW4tYm90dG9tOiA1cHg7XG5cdGZvbnQtc2l6ZTogMS4xNDI4NTcxNHJlbTtcbn1cblxuaDYsIC51ay1oNiB7XG5cdG1hcmdpbi10b3A6IDIwcHg7XG5cdG1hcmdpbi1ib3R0b206IDJweDtcblx0Zm9udC1zaXplOiAxcmVtO1xufVxuXG5ocixcbi51ay1ociB7XG5cdGJvcmRlci1jb2xvcjogJGNvbG9yLWJvcmRlci1kZWZhdWx0O1xufVxuXG4vLyBtYXJnaW5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLnVrLW1hcmdpbiB7XG5cdCYteHNtYWxsIHtcblx0XHRtYXJnaW4tYm90dG9tOiA1cHg7XG5cblx0XHQqICsgJiB7XG5cdFx0XHRtYXJnaW4tdG9wOiA1cHggIWltcG9ydGFudDtcblx0XHR9XG5cblx0XHQmLXRvcCB7XG5cdFx0XHRtYXJnaW4tdG9wOiA1cHggIWltcG9ydGFudDtcblx0XHR9XG5cblx0XHQmLWJvdHRvbSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiA1cHggIWltcG9ydGFudDtcblx0XHR9XG5cblx0XHQmLWxlZnQge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDVweCAhaW1wb3J0YW50O1xuXHRcdH1cblxuXHRcdCYtcmlnaHQge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiA1cHggIWltcG9ydGFudDtcblx0XHR9XG5cdH1cblxuXHQmLXYge1xuXHRcdG1hcmdpbjoge1xuXHRcdFx0dG9wOiAyMHB4O1xuXHRcdFx0Ym90dG9tOiAyMHB4O1xuXHRcdH1cblxuXHRcdCYtc21hbGwge1xuXHRcdFx0bWFyZ2luOiB7XG5cdFx0XHRcdHRvcDogMTBweDtcblx0XHRcdFx0Ym90dG9tOiAxMHB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYteHNtYWxsIHtcblx0XHRcdG1hcmdpbjoge1xuXHRcdFx0XHR0b3A6IDVweDtcblx0XHRcdFx0Ym90dG9tOiA1cHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji1tZWRpdW0ge1xuXHRcdFx0bWFyZ2luOiB7XG5cdFx0XHRcdHRvcDogNDBweDtcblx0XHRcdFx0Ym90dG9tOiA0MHB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYtbGFyZ2Uge1xuXHRcdFx0bWFyZ2luOiB7XG5cdFx0XHRcdHRvcDogNDBweDtcblx0XHRcdFx0Ym90dG9tOiA0MHB4O1xuXHRcdFx0fVxuXG5cdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG5cdFx0XHRcdG1hcmdpbjoge1xuXHRcdFx0XHRcdHRvcDogNzBweDtcblx0XHRcdFx0XHRib3R0b206IDcwcHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLXhsYXJnZSB7XG5cdFx0XHRtYXJnaW46IHtcblx0XHRcdFx0dG9wOiA3MHB4O1xuXHRcdFx0XHRib3R0b206IDcwcHg7XG5cdFx0XHR9XG5cblx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcblx0XHRcdFx0bWFyZ2luOiB7XG5cdFx0XHRcdFx0dG9wOiAxNDBweDtcblx0XHRcdFx0XHRib3R0b206IDE0MHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ji1oIHtcblx0XHRtYXJnaW46IHtcblx0XHRcdGxlZnQ6IDIwcHg7XG5cdFx0XHRyaWdodDogMjBweDtcblx0XHR9XG5cblx0XHQmLXNtYWxsIHtcblx0XHRcdG1hcmdpbjoge1xuXHRcdFx0XHRsZWZ0OiAxMHB4O1xuXHRcdFx0XHRyaWdodDogMTBweDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLXhzbWFsbCB7XG5cdFx0XHRtYXJnaW46IHtcblx0XHRcdFx0bGVmdDogNXB4O1xuXHRcdFx0XHRyaWdodDogNXB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYtbWVkaXVtIHtcblx0XHRcdG1hcmdpbjoge1xuXHRcdFx0XHRsZWZ0OiA0MHB4O1xuXHRcdFx0XHRyaWdodDogNDBweDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLWxhcmdlIHtcblx0XHRcdG1hcmdpbjoge1xuXHRcdFx0XHRsZWZ0OiA0MHB4O1xuXHRcdFx0XHRyaWdodDogNDBweDtcblx0XHRcdH1cblxuXHRcdFx0QG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuXHRcdFx0XHRtYXJnaW46IHtcblx0XHRcdFx0XHRsZWZ0OiA3MHB4O1xuXHRcdFx0XHRcdHJpZ2h0OiA3MHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji14bGFyZ2Uge1xuXHRcdFx0bWFyZ2luOiB7XG5cdFx0XHRcdGxlZnQ6IDcwcHg7XG5cdFx0XHRcdHJpZ2h0OiA3MHB4O1xuXHRcdFx0fVxuXG5cdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG5cdFx0XHRcdG1hcmdpbjoge1xuXHRcdFx0XHRcdGxlZnQ6IDE0MHB4O1xuXHRcdFx0XHRcdHJpZ2h0OiAxNDBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cblxuLy8gcGFkZGluZ1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4udWstcGFkZGluZyB7XG5cdCYtdG9wIHtcblx0XHRwYWRkaW5nLXRvcDogMzBweCAhaW1wb3J0YW50O1xuXHR9XG5cblx0Ji1ib3R0b20ge1xuXHRcdHBhZGRpbmctYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQmLWxlZnQge1xuXHRcdHBhZGRpbmctbGVmdDogMzBweCAhaW1wb3J0YW50O1xuXHR9XG5cblx0Ji1yaWdodCB7XG5cdFx0cGFkZGluZy1yaWdodDogMzBweCAhaW1wb3J0YW50O1xuXHR9XG5cblx0QG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuXHRcdCYtdG9wIHtcblx0XHRcdHBhZGRpbmctdG9wOiA0MHB4ICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHRcblx0XHQmLWJvdHRvbSB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogNDBweCAhaW1wb3J0YW50O1xuXHRcdH1cblx0XG5cdFx0Ji1sZWZ0IHtcblx0XHRcdHBhZGRpbmctbGVmdDogNDBweCAhaW1wb3J0YW50O1xuXHRcdH1cblx0XG5cdFx0Ji1yaWdodCB7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiA0MHB4ICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0Ji14eHNtYWxsIHtcblx0XHRwYWRkaW5nOiA1cHggIWltcG9ydGFudDtcblx0XHRcblx0XHQmLXRvcCB7XG5cdFx0XHRwYWRkaW5nLXRvcDogNXB4ICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHRcblx0XHQmLWJvdHRvbSB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogNXB4ICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHRcblx0XHQmLWxlZnQge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiA1cHggIWltcG9ydGFudDtcblx0XHR9XG5cdFxuXHRcdCYtcmlnaHQge1xuXHRcdFx0cGFkZGluZy1yaWdodDogNXB4ICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0Ji14c21hbGwge1xuXHRcdHBhZGRpbmc6IDEwcHggIWltcG9ydGFudDtcblxuXHRcdCYtdG9wIHtcblx0XHRcdHBhZGRpbmctdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHRcblx0XHQmLWJvdHRvbSB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xuXHRcdH1cblx0XG5cdFx0Ji1sZWZ0IHtcblx0XHRcdHBhZGRpbmctbGVmdDogMTBweCAhaW1wb3J0YW50O1xuXHRcdH1cblx0XG5cdFx0Ji1yaWdodCB7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0Ji1zbWFsbCB7XG5cdFx0Ji10b3Age1xuXHRcdFx0cGFkZGluZy10b3A6IDE1cHggIWltcG9ydGFudDtcblx0XHR9XG5cdFxuXHRcdCYtYm90dG9tIHtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHRcblx0XHQmLWxlZnQge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAxNXB4ICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHRcblx0XHQmLXJpZ2h0IHtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDE1cHggIWltcG9ydGFudDtcblx0XHR9XG5cdH1cblxuXHQmLWxhcmdlIHtcblx0XHQmLXRvcCB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMzBweCAhaW1wb3J0YW50O1xuXHRcdH1cblx0XG5cdFx0Ji1ib3R0b20ge1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDMwcHggIWltcG9ydGFudDtcblx0XHR9XG5cdFxuXHRcdCYtbGVmdCB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDMwcHggIWltcG9ydGFudDtcblx0XHR9XG5cdFxuXHRcdCYtcmlnaHQge1xuXHRcdFx0cGFkZGluZy1yaWdodDogMzBweCAhaW1wb3J0YW50O1xuXHRcdH1cblxuXHRcdEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcblx0XHRcdCYtdG9wIHtcblx0XHRcdFx0cGFkZGluZy10b3A6IDcwcHggIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHRcblx0XHRcdCYtYm90dG9tIHtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDcwcHggIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHRcblx0XHRcdCYtbGVmdCB7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogNzBweCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdFxuXHRcdFx0Ji1yaWdodCB7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDcwcHggIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG5cbi8vIFRhYmxlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi51ay10YWJsZSB7XG5cdC8vJi1ob3ZlciA+IHRyOmhvdmVyLFxuXHQvLyYtaG92ZXIgdGJvZHkgdHI6aG92ZXJcblxuXHQmLWhvdmVyIHtcblx0XHQmID4sXG5cdFx0dGJvZHkge1xuXHRcdFx0dHIge1xuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItaG92ZXI7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0dGhlYWQge1xuXHRcdFx0XHR0ciB7XG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxufVxuXG5cblxuLy8gRm9ybVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4udWstZmllbGRzZXQge1xuXHQmLmJvcmRlciB7XG5cdFx0bGVnZW5kLFxuXHRcdC51ay1sZWdlbmQge1xuXHRcdFx0cGFkZGluZzogMCAuNWVtO1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0fVxuXHR9XG59XG5cbi51ay1sZWdlbmQge1xuXHRmb250LXNpemU6IDEuMnJlbTtcbn1cblxuLnVrLWZvcm0ge1xuXHQmLXNtYWxsIHtcblx0XHQmOm5vdCh0ZXh0YXJlYSk6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pIHtcblx0XHRcdGhlaWdodDogMjRweDtcblx0XHR9XG5cblx0XHQmLnVrLXNlbGVjdCB7XG5cdFx0XHQmOm5vdCh0ZXh0YXJlYSk6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pIHtcblx0XHRcdFx0cGFkZGluZy1yaWdodDogMjBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG5cbi8vIGlucHV0XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLnVrLWZvcm0tbGFiZWwsXG5sYWJlbCB7XG5cdGlucHV0IHtcblx0XHRmb250LXNpemU6IDFyZW07XG5cdH1cbn1cblxuLnVrLWlucHV0LFxuLnVrLXNlbGVjdDpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSksXG4udWstc2VhcmNoLWRlZmF1bHQgLnVrLXNlYXJjaC1pbnB1dCB7XG5cdGhlaWdodDogMzBweDtcbn1cblxuLnVrLWlucHV0LFxuLnVrLXNlbGVjdCxcbi51ay10ZXh0YXJlYSB7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0Ym9yZGVyLWNvbG9yOiAjNTA2ZDkwO1xuXG5cdCY6ZGlzYWJsZWQge1xuXHRcdGJvcmRlci1jb2xvcjogI2FhZDRlZjtcblx0fVxufVxuXG4udWstaW5wdXQge1xuXHQmW3R5cGU9XCJudW1iZXJcIl0ge1xuXHRcdHBhZGRpbmctcmlnaHQ6IDFweDtcblxuXHRcdCY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDVweDtcblx0XHR9XG5cdH1cbn1cblxuLnVrLXNlbGVjdDpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSkge1xuXHQmLnNtYWxsIHtcblx0XHRoZWlnaHQ6IDIycHg7XG5cdFx0Zm9udC1zaXplOiAwLjg3NXJlbTtcblx0fVxufVxuXG4udWstc2VhcmNoLWlucHV0IHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nLWxlZnQ6IDZweDtcblx0cGFkZGluZy1yaWdodDogNnB4O1xuXHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItbGluaztcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMzBweDtcblx0b3ZlcmZsb3c6IHZpc2libGU7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0Y29sb3I6ICM2NjY7XG5cdGZvbnQ6IGluaGVyaXQ7XG5cblx0Jjo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiB7XG5cdFx0LXdlYmtpdC1hcHBlYXJhbmNlOiBhdXRvO1xuXHR9XG59XG5cblxuXG5cbi8vIFJhZGlvIGFuZCBjaGVja2JveFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4udWstcmFkaW8sXG4udWstY2hlY2tib3gge1xuXHRtYXJnaW46IHtcblx0XHR0b3A6IC0zcHg7XG5cdFx0bGVmdDogNXB4O1xuXHRcdHJpZ2h0OiA1cHg7XG5cdH1cblx0Ym9yZGVyLWNvbG9yOiAkY29sb3ItbGluaztcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0d2lkdGg6IDE4cHg7XG5cdGhlaWdodDogMThweDtcblxuXHQmOmNoZWNrZWQge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0Ym9yZGVyLWNvbG9yOiAkY29sb3ItbGluaztcblxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0XHR9XG5cdH1cblxuXHQmOmRpc2FibGVkIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZTJlMmUyO1xuXHRcdGJvcmRlci1jb2xvcjogIzdjYWVjZTtcblxuXHRcdH4gc3BhbiB7XG5cdFx0XHRvcGFjaXR5OiAuNjtcblx0XHR9XG5cdH1cblxufVxuXG4udWstY2hlY2tib3gge1xuXHRib3JkZXItcmFkaXVzOiAzcHg7XG5cblx0JjpjaGVja2VkIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7IGNoYXJzZXQ9VVRGLTgsICUzY3N2ZyUyMHdpZHRoJTNkJTIyMTglMjIlMjBoZWlnaHQlM2QlMjIxOCUyMiUyMHZpZXdCb3glM2QlMjIwJTIwMCUyMDE4JTIwMTglMjIlMjB4bWxucyUzZCUyMmh0dHAlM2ElMmYlMmZ3d3cudzMub3JnJTJmMjAwMCUyZnN2ZyUyMiUzZSUzY3BvbHlnb24lMjBmaWxsJTNkJTIyJTIzZWI2ZDQ1JTIyJTIwcG9pbnRzJTNkJTIyMTQuNCUyYzIuOSUyMDYuNyUyYzEwLjMlMjAzLjYlMmM3LjIlMjAxLjMlMmM5LjglMjA2LjclMmMxNS4xJTIwMTYuNyUyYzUuMSUyMiUyZiUzZSUzYyUyZnN2ZyUzZVwiKTtcblx0XHRib3JkZXItY29sb3I6ICRjb2xvci1saW5rO1xuXG5cdFx0JjpkaXNhYmxlZCB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7IGNoYXJzZXQ9VVRGLTgsICUzY3N2ZyUyMHdpZHRoJTNkJTIyMTglMjIlMjBoZWlnaHQlM2QlMjIxOCUyMiUyMHZpZXdCb3glM2QlMjIwJTIwMCUyMDE4JTIwMTglMjIlMjB4bWxucyUzZCUyMmh0dHAlM2ElMmYlMmZ3d3cudzMub3JnJTJmMjAwMCUyZnN2ZyUyMiUzZSUzY3BvbHlnb24lMjBmaWxsJTNkJTIyJTIzZjA5MTc1JTIyJTIwcG9pbnRzJTNkJTIyMTQuNCUyYzIuOSUyMDYuNyUyYzEwLjMlMjAzLjYlMmM3LjIlMjAxLjMlMmM5LjglMjA2LjclMmMxNS4xJTIwMTYuNyUyYzUuMSUyMiUyZiUzZSUzYyUyZnN2ZyUzZVwiKTtcblx0XHR9XG5cdH1cblxuXHQmOmluZGV0ZXJtaW5hdGUge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sOyBjaGFyc2V0PVVURi04LCAlM2NzdmclMjB3aWR0aCUzZCUyMjE2JTIyJTIwaGVpZ2h0JTNkJTIyMTYlMjIlMjB2aWV3Qm94JTNkJTIyMCUyMDAlMjAxNiUyMDE2JTIyJTIweG1sbnMlM2QlMjJodHRwJTNhJTJmJTJmd3d3LnczLm9yZyUyZjIwMDAlMmZzdmclMjIlM2UlM2NyZWN0JTIwZmlsbCUzZCUyMiUyM2ViNmQ0NSUyMiUyMHglM2QlMjIzJTIyJTIweSUzZCUyMjclMjIlMjB3aWR0aCUzZCUyMjEwJTIyJTIwaGVpZ2h0JTNkJTIyMyUyMiUyMCUyZiUzZSUzYyUyZnN2ZyUzZVwiKTtcblx0XHRib3JkZXItY29sb3I6ICRjb2xvci1saW5rO1xuXHR9XG59XG5cbi51ay1yYWRpbyB7XG5cdCY6Y2hlY2tlZCB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sOyBjaGFyc2V0PVVURi04LCAlM2NzdmclMjB3aWR0aCUzZCUyMjE4JTIyJTIwaGVpZ2h0JTNkJTIyMTglMjIlMjB2aWV3Qm94JTNkJTIyMCUyMDAlMjAxOCUyMDE4JTIyJTIweG1sbnMlM2QlMjJodHRwJTNhJTJmJTJmd3d3LnczLm9yZyUyZjIwMDAlMmZzdmclMjIlM2UlM2NjaXJjbGUlMjBmaWxsJTNkJTIyJTIzZWI2ZDQ1JTIyJTIwY3glM2QlMjI5JTIyJTIwY3klM2QlMjI5JTIyJTIwciUzZCUyMjYlMjIlMjAlMmYlM2UlM2MlMmZzdmclM2VcIik7XG5cdH1cblxuXHQmOmRpc2FibGVkOmNoZWNrZWQge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCUzY3N2ZyUyMHdpZHRoJTNkJTIyMTglMjIlMjBoZWlnaHQlM2QlMjIxOCUyMiUyMHZpZXdCb3glM2QlMjIwJTIwMCUyMDE4JTIwMTglMjIlMjB4bWxucyUzZCUyMmh0dHAlM2ElMmYlMmZ3d3cudzMub3JnJTJmMjAwMCUyZnN2ZyUyMiUzZSUzY2NpcmNsZSUyMGZpbGwlM2QlMjIlMjM5OTklMjIlMjBjeCUzZCUyMjklMjIlMjBjeSUzZCUyMjklMjIlMjByJTNkJTIyNiUyMiUyMCUyZiUzZSUzYyUyZnN2ZyUzZVwiKTtcblx0fVxuXHRcbn1cblxuLy8gLnVrLWNoZWNrYm94OmNoZWNrZWQsXG4vLyAudWstY2hlY2tib3g6aW5kZXRlcm1pbmF0ZSB7XG4vLyBcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuLy8gXHRib3JkZXItY29sb3I6ICRjb2xvci1saW5rO1xuLy9cbi8vIFx0Jjpmb2N1cyB7XG4vLyBcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4vLyBcdH1cbi8vIH1cblxuXG4vLyBTZWxlY3Rcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4udWstc2VsZWN0IHtcblx0Jjpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSkge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LCAlM2NzdmclMjB3aWR0aCUzZCUyMjI0JTIyJTIwaGVpZ2h0JTNkJTIyMTYlMjIlMjB2aWV3Qm94JTNkJTIyMCUyMDAlMjAyNCUyMDE2JTIyJTIweG1sbnMlM2QlMjJodHRwJTNhJTJmJTJmd3d3LnczLm9yZyUyZjIwMDAlMmZzdmclMjIlM2UlM2Nwb2x5Z29uJTIwZmlsbCUzZCUyMiUyMzM5NmU5MCUyMiUyMHBvaW50cyUzZCUyMjEyJTJjMTEuMyUyMDYuMyUyYzUuMyUyMDE3LjclMmM1LjMlMjIlMjAlMmYlM2UlM2MlMmZzdmclM2VcIik7XG5cdH1cbn1cblxuXG5cbi8vIHRhYlxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4udWstdGFiIHtcblx0Jjo6YmVmb3JlIHtcblx0XHRib3JkZXItY29sb3I6ICNlNWU1ZTU7XG5cdH1cblxuXHQ+ICoge1xuXHRcdD4gYSB7XG5cdFx0XHRib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG5cdFx0fVxuXHR9XG5cblx0PiAudWstYWN0aXZlIHtcblx0XHQ+IGEge1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiAkY29sb3ItYWN0aXZlO1xuXHRcdH1cblx0fVxuXG5cdCYuay10YWItMSB7XG5cdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0bWFyZ2luLWJvdHRvbTogLTFweDtcblxuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiBub25lO1xuXHRcdH1cblxuXHRcdD4gKiB7XG5cdFx0XHRwYWRkaW5nOiAwIDIwcHg7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDhweCA4cHggMCAwO1xuXG5cdFx0XHRhIHtcblx0XHRcdFx0Zm9udC1zaXplOiAxLjI4NTcxNDI5cmVtO1xuXHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0XHRjb2xvcjogaW5oZXJpdDtcblx0XHRcdH1cblxuXHRcdFx0Ji51ay1hY3RpdmUge1xuXHRcdFx0XHRib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRcdFx0Y29sb3I6IGluaGVyaXQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0KyAqIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IC0xcHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0KyAudWstc3dpdGNoZXIge1xuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgI2RkZDtcblx0XHR9XG5cdH1cblxuXHQmLmstdGFiLTIge1xuXHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdG1hcmdpbi1ib3R0b206IC0xcHg7XG5cdFx0cGFkZGluZzogMCAxcmVtO1xuXG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6IG5vbmU7XG5cdFx0fVxuXG5cdFx0PiAqIHtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDhweCA4cHggMCAwO1xuXG5cdFx0XHRhIHtcblx0XHRcdFx0cGFkZGluZzogM3B4IDE1cHg7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRcdFx0Y29sb3I6IGluaGVyaXQ7XG5cdFx0XHR9XG5cblx0XHRcdCYudWstYWN0aXZlIHtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cblx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0XHRcdGNvbG9yOiBpbmhlcml0O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCsgKiB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAtMXB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCsgKiB7XG5cdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDtcblx0XHR9XG5cdH1cblxufVxuXG5cblxuLy8gYnV0dG9uXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi51ay1idXR0b24ge1xuXHRwYWRkaW5nOiA1cHggMTVweDtcblx0Ym9yZGVyLXJhZGl1czogNXB4O1xuXHRib3JkZXItY29sb3I6ICRjb2xvci1saW5rO1xuXHRtaW4td2lkdGg6IDEwOXB4O1xuXHRtaW4taGVpZ2h0OiAzMHB4O1xuXHRsaW5lLWhlaWdodDogMTtcblx0Y29sb3I6ICRjb2xvci1saW5rO1xuXHRmb250LXNpemU6IDFyZW07XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdC8vZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdC8vYWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Ly9qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0Ly9mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuXHQrIC51ay1idXR0b24ge1xuXHRcdG1hcmdpbi1sZWZ0OiAuMmVtO1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2Y0ZjdmOTtcblx0XHRib3JkZXItY29sb3I6ICRjb2xvci1saW5rO1xuXHRcdGNvbG9yOiAkY29sb3ItbGluaztcblx0fVxuXG5cdCYuZGlzYWJsZWQsXG5cdCZbZGlzYWJsZWRdIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjYThiMmI5O1xuXHRcdGJvcmRlci1jb2xvcjogI2E4YjJiOTtcblx0XHRjb2xvcjogI2ZmZjtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0fVxuXG5cdHNtYWxsIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRmb250LXNpemU6IDEwcHg7XG5cdFx0Zm9udC13ZWlnaHQ6IDMwMDtcblx0XHRsaW5lLWhlaWdodDogMXJlbTtcblx0fVxuXG5cdCYucjIge1xuXHRcdG1pbi1oZWlnaHQ6IDM5cHg7XG5cdH1cblxuXHRcblx0Ji1zbWFsbCB7XG5cdFx0cGFkZGluZzogM3B4IDEwcHg7XG5cdFx0bGluZS1oZWlnaHQ6IDE2cHg7XG5cdFx0bWluLWhlaWdodDogMjJweDtcblx0XHRtaW4td2lkdGg6IGF1dG87XG5cdFx0Zm9udC1zaXplOiAwLjg1NzE0Mjg2cmVtO1xuXHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cblx0XHQrIC51ay1idXR0b24tc21hbGwge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IC4yZW07XG5cdFx0fVxuXHR9XG5cblx0Ji14c21hbGwge1xuXHRcdHBhZGRpbmc6IDNweCA2cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDExcHg7XG5cdFx0bWluLWhlaWdodDogMThweDtcblx0XHRtaW4td2lkdGg6IGF1dG87XG5cdFx0Zm9udC1zaXplOiAwLjc4NTcxNDI5cmVtO1xuXHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cblx0XHQrIC51ay1idXR0b24teHNtYWxsIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAuMmVtO1xuXHRcdH1cblx0fVxuXG5cdCYtbGFyZ2Uge1xuXHRcdHBhZGRpbmc6IDcgNDBweDtcblx0XHRsaW5lLWhlaWdodDogMzRweDtcblx0fVxuXG5cdCYtZ3JvdXAge1xuXHRcdG1hcmdpbi1sZWZ0OiAxcHg7XG5cblx0XHRbY2xhc3MqPVwidWstYnV0dG9uLVwiXSB7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAwO1xuXG5cdFx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4O1xuXHRcdFx0XHRib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA1cHg7XG5cdFx0XHR9XG5cblx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA1cHg7XG5cdFx0XHRcdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA1cHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0bGFiZWwuYnV0dG9uLWRlZmF1bHQge1xuXHRcdFx0bWFyZ2luOiAwIDAgMCAtMXB4O1xuXG5cdFx0XHRbdHlwZT1cInJhZGlvXCJdLFxuXHRcdFx0W3R5cGU9XCJjaGVja2JveFwiXSB7XG5cdFx0XHRcdCsgc3BhbiB7XG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0PiBzcGFuIHtcblx0XHRcdFx0XHRib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA1cHg7XG5cdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNXB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdD4gc3BhbiB7XG5cdFx0XHRcdFx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDVweDtcblx0XHRcdFx0XHRib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNXB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCsgbGFiZWwuYnV0dG9uLWRlZmF1bHQge1xuXHRcdFx0XHRbdHlwZT1cInJhZGlvXCJdLFxuXHRcdFx0XHRbdHlwZT1cImNoZWNrYm94XCJdIHtcblx0XHRcdFx0XHQmOmNoZWNrZWQge1xuXHRcdFx0XHRcdFx0KyBzcGFuIHtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLWxlZnQtY29sb3I6ICNmZmY7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0PiAqICsgKiB7XG5cdFx0XHRtYXJnaW4tbGVmdDogLTFweDtcblx0XHR9XG5cblx0XHQudWstYnV0dG9uOm5vdCgudWstYnV0dG9uLWRlZmF1bHQpIHtcblx0XHRcdCsgLnVrLWJ1dHRvbjpub3QoLnVrLWJ1dHRvbi1kZWZhdWx0KSB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAxcHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5zbWFsbCB7XG5cdFx0XHQudWstYnV0dG9uLFxuXHRcdFx0LmJ1dHRvbi1kZWZhdWx0ID4gc3BhbiB7XG5cdFx0XHRcdHBhZGRpbmc6IDNweCAxMHB4O1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMTZweDtcblx0XHRcdFx0bWluLWhlaWdodDogMjJweDtcblx0XHRcdFx0bWluLXdpZHRoOiBhdXRvO1xuXHRcdFx0XHRmb250LXNpemU6IDAuODU3MTQyODZyZW07XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji54c21hbGwge1xuXHRcdFx0LnVrLWJ1dHRvbixcblx0XHRcdC5idXR0b24tZGVmYXVsdCA+IHNwYW4ge1xuXHRcdFx0XHRwYWRkaW5nOiAzcHggNnB4O1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMTFweDtcblx0XHRcdFx0bWluLWhlaWdodDogMThweDtcblx0XHRcdFx0bWluLXdpZHRoOiBhdXRvO1xuXHRcdFx0XHRmb250LXNpemU6IDAuNzg1NzE0MjlyZW07XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ji1iYXNpYyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWxpbms7XG5cdFx0Y29sb3I6ICNmZmY7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLWxpbmssIDUlKTtcblx0XHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRjb2xvcjogI2ZmZjtcblx0XHR9XG5cdH1cblxuXHQmLXByaW1hcnkge1xuXHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0Y29sb3I6ICNmZmY7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oIzFlODdmMCwgNSUpO1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdH1cblx0fVxuXG5cdCYtc2Vjb25kYXJ5IHtcblx0XHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdGNvbG9yOiAjZmZmO1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCMyMjIsIDUlKTtcblx0XHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRjb2xvcjogI2ZmZjtcblx0XHR9XG5cdH1cblxuXHQmLWRhbmdlciB7XG5cdFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRjb2xvcjogI2ZmZjtcblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigjZjA1MDZlLCA1JSk7XG5cdFx0XHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0fVxuXHR9XG5cblx0Ji1zdWNjZXNzIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMzJkMjk2O1xuXHRcdGNvbG9yOiAjZmZmO1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCMzMmQyOTYsIDUlKTtcblx0XHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRjb2xvcjogI2ZmZjtcblx0XHR9XG5cdH1cblxuXHQmLXdhcm5pbmcge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmYWEwNWE7XG5cdFx0Y29sb3I6ICNmZmY7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oI2ZhYTA1YSwgNSUpO1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdH1cblx0fVxuXG5cdCYtZ3JheSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2E4YjJiOTtcblx0XHRjb2xvcjogI2ZmZjtcblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigjYThiMmI5LCA1JSk7XG5cdFx0XHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0fVxuXHR9XG5cblx0Ji1vcmFuZ2Uge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1hY3RpdmU7XG5cdFx0Y29sb3I6ICNmZmY7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLWFjdGl2ZSwgNSUpO1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdH1cblx0fVxuXG5cblxufVxuYS51ay1idXR0b24ge1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuXG4vLyBtb2RhbFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4udWstbW9kYWwge1xuXHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuXHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG5cdCYtcGFnZSB7XG5cdFx0Ym9keSB7XG5cdFx0XHRvdmVyZmxvdy15OiBpbml0aWFsICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0W2NsYXNzKj0ndWstbW9kYWwtY2xvc2UtJ10ge1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHR0b3A6IDE4cHg7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6ICdcXGUwMGQnO1xuXHRcdFx0Zm9udC1mYW1pbHk6IGljb24taXNoYXJlO1xuXHRcdFx0Zm9udC1zaXplOiAxLjVyZW07XG5cdFx0XHRjb2xvcjogJGNvbG9yLWxpbms7XG5cdFx0fVxuXHR9XG5cblx0LnVrLW1vZGFsLWRpYWxvZyB7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDE1cHggN3B4IHJnYmEoMCwgMCwgMCwgMC4xKTtcblx0fVxuXHRcblx0LnVrLW1vZGFsLWhlYWRlciB7XG5cdFx0bWFyZ2luOiAxNXB4IDE1cHggMDtcblx0XHRwYWRkaW5nOiA4cHggMCAxOXB4O1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICNjOGQwZDg7XG5cblx0XHRoMiB7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0Zm9udC1zaXplOiAxLjE0Mjg1NzE0cmVtO1xuXHRcdH1cblx0fVxuXG5cdC51ay1tb2RhbC1ib2R5IHtcblx0XHRwYWRkaW5nOiAyMHB4O1xuXHR9XG5cblx0LnVrLW1vZGFsLWZvb3RlciB7XG5cdFx0cGFkZGluZzogMjBweCAxNXB4O1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRib3gtc2hhZG93OiAwIC0xMnB4IDEycHggLTdweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR9XG5cblx0JltjbGFzc149XCJoZWlnaHQtXCJdLFxuXHQmW2NsYXNzKj1cIiBoZWlnaHQtXCJdIHtcblx0XHQudWstbW9kYWwtZGlhbG9nIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG5cdFx0XHQ+IC51ay1tb2RhbC1ib2R5IHtcblx0XHRcdFx0bWluLWhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuXHRcdFx0XHRtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGZsZXg6IDEgMCBhdXRvO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYudy1hdXRvIHtcblx0XHQudWstbW9kYWwtZGlhbG9nIHtcblx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdH1cblx0fVxuXG5cdC8vd2lkdGggMjUwIC0gMTIwMHB4IChzdGVwIDUwcHgpXG5cdCR0ZW1wOiAyNTA7XG5cdEB3aGlsZSAkdGVtcCA8PSAxNjAwIHtcblx0XHQmLncjeyR0ZW1wfSB7XG5cdFx0XHQudWstbW9kYWwtZGlhbG9nIHtcblx0XHRcdFx0d2lkdGg6ICN7JHRlbXB9cHg7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCR0ZW1wOiAkdGVtcCArIDUwO1xuXHR9XG5cdFxuXHQvL3dpZHRoIDI1IC0gMTAwJSAoc3RlcCA1JSlcblx0JHRlbXA6IDI1O1xuXHRAd2hpbGUgJHRlbXAgPD0gMTAwIHtcblx0XHQmLnAjeyR0ZW1wfSB7XG5cdFx0XHQudWstbW9kYWwtZGlhbG9nIHtcblx0XHRcdFx0d2lkdGg6ICN7JHRlbXAgKiAxJX07XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCR0ZW1wOiAkdGVtcCArIDU7XG5cdH1cblxuXHQvL2hlaWdodCAxMDAgLSAxMDAwcHggKHN0ZXAgMjVweClcblx0JHRlbXA6IDEwMDtcblx0QHdoaWxlICR0ZW1wIDw9IDEwMDAge1xuXHRcdCYuaGVpZ2h0LSN7JHRlbXB9IHtcblx0XHRcdC51ay1tb2RhbC1kaWFsb2cge1xuXHRcdFx0XHRoZWlnaHQ6ICN7JHRlbXB9cHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5tYXhoZWlnaHQtI3skdGVtcH0ge1xuXHRcdFx0LnVrLW1vZGFsLWRpYWxvZyB7XG5cdFx0XHRcdG1heC1oZWlnaHQ6ICN7JHRlbXB9cHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5taW5oZWlnaHQtI3skdGVtcH0ge1xuXHRcdFx0LnVrLW1vZGFsLWRpYWxvZyB7XG5cdFx0XHRcdG1pbi1oZWlnaHQ6ICN7JHRlbXB9cHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0JHRlbXA6ICR0ZW1wICsgMjU7XG5cdH1cbn1cblxuXG5cbi8vIGxhYmVsXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi51ay1sYWJlbCB7XG5cdG1hcmdpbjogMCAycHg7XG5cdHBhZGRpbmc6IDFweCAxMHB4O1xuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuXHQmLmluLWlucHV0IHtcblx0XHRwYWRkaW5nLWxlZnQ6IDdweDtcblx0XHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXG5cdFx0LnVrLXJhZGlvLFxuXHRcdC51ay1jaGVja2JveCB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdG1hcmdpbi10b3A6IC0xcHg7XG5cdFx0XHR3aWR0aDogMTZweDtcblx0XHRcdGhlaWdodDogMTZweDtcblx0XHR9XG5cdH1cblxuXHQmLWJhc2ljIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbGluaztcblx0fVxuXG5cdCYtZ3JheSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2E4YjJiOTtcblx0fVxuXG5cdCYtZGFya2dyYXkge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICM1ZDY1NmE7XG5cdH1cblxuXHQmLXBpbmsge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZWU7XG5cdFx0Y29sb3I6ICRjb2xvci10ZXh0LWJhc2U7XG5cdH1cblxuXHQmLW9yYW5nZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWFjdGl2ZTtcblx0fVxuXG5cdCYtcmVkIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjAwO1xuXHR9XG5cblx0Ji1kYXJrYmx1ZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwNzliOTtcblx0fVxufVxuXG5cblxuLy8gdGFibGVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLnVrLXRhYmxlIHtcblx0dGgge1xuXHRcdGNvbG9yOiBpbmhlcml0O1xuXHRcdGZvbnQtc2l6ZTogaW5oZXJpdDtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHRcdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHR9XG5cblx0dGhlYWQge1xuXHRcdHRoIHtcblx0XHRcdHZlcnRpY2FsLWFsaWduOiBib3R0b207XG5cdFx0fVxuXHR9XG5cblx0Ji14c21hbGwge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cblx0XHR0aCxcblx0XHR0ZCB7XG5cdFx0XHRwYWRkaW5nOiA1cHggN3B4O1xuXHRcdH1cblxuXHRcdC51ay10YWJsZS1saW5rID4gYSB7XG5cdFx0XHRwYWRkaW5nOiA1cHggN3B4O1xuXHRcdH1cblx0fVxuXG5cdCYteHhzbWFsbCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblxuXHRcdHRoLFxuXHRcdHRkIHtcblx0XHRcdHBhZGRpbmc6IDFweCAzcHg7XG5cdFx0fVxuXG5cdFx0LnVrLXRhYmxlLWxpbmsgPiBhIHtcblx0XHRcdHBhZGRpbmc6IDFweCAzcHg7XG5cdFx0fVxuXHR9XG5cblx0Ji1taWRkbGUge1xuXHRcdHRib2R5IHtcblx0XHRcdHRoIHtcblx0XHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cblxuLy8gbGlzdFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4udWstbGlzdCB7XG5cdCYudWstZmxleCB7XG5cdFx0PiA6bnRoLWNoaWxkKG4rMikge1xuXHRcdFx0bWFyZ2luLXRvcDogYXV0bztcblx0XHR9XG5cdH1cbn1cblxuXG5cbi8vIG5hdmJhclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4udWstbmF2YmFyIHtcblxuXHQmLW5hdiA+IGxpID4gc3BhbiB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0bWluLWhlaWdodDogODBweDtcblx0XHRwYWRkaW5nOiAwIDE1cHg7XG5cdFx0Ly9mb250LXNpemU6IDAuODc1cmVtO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRjb2xvcjogIzk5OTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdHRyYW5zaXRpb246IDAuMXMgZWFzZS1pbi1vdXQ7XG5cdFx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3IsIGJhY2tncm91bmQtY29sb3I7XG5cdH1cblxuXHQmLW5hdiA+IGxpID4gYSxcblx0Ji1pdGVtLFxuXHQmLXRvZ2dsZSB7XG5cdFx0Zm9udC1zaXplOiAxcmVtO1xuXHRcdFxuXHRcdC51ay1kcm9wZG93biB7XG5cdFx0XHRmb250LXNpemU6IDFyZW07XG5cdFx0fVxuXHR9XG5cblx0Ji1zbWFsbCB7XG5cdFx0bWluLWhlaWdodDogNDBweDtcblxuXHRcdC51ay1uYXZiYXItbmF2ID4gbGkgPiBhLFxuXHRcdC51ay1uYXZiYXItbmF2ID4gbGkgPiBzcGFuLFxuXHRcdC51ay1uYXZiYXItaXRlbSxcblx0XHQudWstbmF2YmFyLXRvZ2dsZSB7XG5cdFx0XHRtaW4taGVpZ2h0OiA0MHB4O1xuXHRcdH1cblx0fVxuXG5cdCYtdmVydGljYWwge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cblx0XHQudWstbmF2YmFyLXRvcCB7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0fVxuXG5cdFx0LnVrLW5hdmJhci1ib3R0b20ge1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0XHR9XG5cblx0XHQudWstbmF2YmFyLW5hdiB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHR9XG5cblxuXHRcdC51ay1uYXZiYXItbmF2ID4gbGkgPiBhLFxuXHRcdC51ay1uYXZiYXItbmF2ID4gbGkgPiBzcGFuLFxuXHRcdC51ay1uYXZiYXItaXRlbSxcblx0XHQudWstbmF2YmFyLXRvZ2dsZSB7XG5cdFx0XHRtaW4taGVpZ2h0OiA0MHB4O1xuXHRcdH1cblx0fVxuXG5cdFxufVxuXG5cbi8vQ2FyZFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4udWstY2FyZCB7XG5cdCYtdGl0bGUge1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdH1cblxuXHQmLXNtYWxsIHtcblx0XHQudWstY2FyZC1oZWFkZXIge1xuXHRcdFx0cGFkZGluZzogMjBweDtcblx0XHR9XG5cblx0XHQudWstY2FyZC1ib2R5IHtcblx0XHRcdHBhZGRpbmc6IDAgMjBweDtcblx0XHR9XG5cdH1cbn1cblxuXG5cbi8vc29ydGFibGVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLnVrLXNvcnRhYmxlIHtcblx0Ji1lbXB0eXtcblx0XHRtaW4taGVpZ2h0OiAxLjVyZW07XG5cdH1cblxuXHQmLXBsYWNlaG9sZGVyLWJvcmRlciB7XG5cdFx0LnVrLXNvcnRhYmxlLXBsYWNlaG9sZGVyIHtcblx0XHRcdG91dGxpbmU6IDFweCBkYXNoZWQgcmdiYSgyNTUsMCwwLCAuNSk7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXG5cdFx0XHQ+ICoge1xuXHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cblxuLy9wcm9ncmVzc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4udWstcHJvZ3Jlc3Mge1xuXHQmLnhzbWFsbCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogNXB4O1xuXHRcdGhlaWdodDogM3B4O1xuXHR9XG5cblx0Ji5zbWFsbCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0XHRoZWlnaHQ6IDZweDtcblx0fVxuXG5cdCYubWVkaXVtIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxNXB4O1xuXHRcdGhlaWdodDogMTBweDtcblx0fVxufVxuXG5cblxuLy9hY2NvcmRpb25cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLnVrLWFjY29yZGlvbiB7XG5cdCYtdGl0bGUge1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblxuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0d2lkdGg6IDFlbTtcblx0XHRcdGhlaWdodDogMWVtO1xuXHRcdFx0bWFyZ2luOiAwIDVweCAwIDA7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM2NzdmclMjB3aWR0aCUzZCUyMjEzJTIyJTIwaGVpZ2h0JTNkJTIyMTMlMjIlMjB2aWV3Qm94JTNkJTIyMCUyMDAlMjAxMyUyMDEzJTIyJTIweG1sbnMlM2QlMjJodHRwJTNhJTJmJTJmd3d3LnczLm9yZyUyZjIwMDAlMmZzdmclMjIlM2UlM2Nwb2x5Z29uJTIwc3R5bGUlM2QlMjJmaWxsJTNhJTIzNjY2NjY2JTNiJTIyJTIwcG9pbnRzJTNkJTIyMTAuMSUyYzYuNSUyMDMuNiUyYzEzJTIwMy42JTJjMCUyMCUyMiUyZiUzZSUzYyUyZnN2ZyUzZSk7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcblx0XHRcdFxuXG5cdFx0XHQudWstb3BlbiA+ICYge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNjc3ZnJTIwd2lkdGglM2QlMjIxMyUyMiUyMGhlaWdodCUzZCUyMjEzJTIyJTIwdmlld0JveCUzZCUyMjAlMjAwJTIwMTMlMjAxMyUyMiUyMHhtbG5zJTNkJTIyaHR0cCUzYSUyZiUyZnd3dy53My5vcmclMmYyMDAwJTJmc3ZnJTIyJTNlJTNjcG9seWdvbiUyMHN0eWxlJTNkJTIyZmlsbCUzYSUyMzY2NjY2NiUzYiUyMiUyMHBvaW50cyUzZCUyMjEwLjYlMmMxMSUyMDEuNCUyYzEwLjklMjAxMC43JTJjMS44JTIyJTJmJTNlJTNjJTJmc3ZnJTNlKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxufVxuXG5cblxuLy9hbGVydFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4udWstYWxlcnQge1xuXHQmLXNtYWxsIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRcdHBhZGRpbmc6IDdweCAyOXB4IDdweCAxMHB4O1xuXG5cdFx0KiArICYge1xuXHRcdFx0bWFyZ2luLXRvcDogMTBweDtcblx0XHR9XG5cdH1cbn1cblxuXG4udWstdGV4dCB7XG5cdCYtZGlzYWJsZWQge1xuXHRcdGNvbG9yOiAjYzVjNWM1ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQmLWJhc2ljIHtcblx0XHRjb2xvcjogJGNvbG9yLXRleHQtYmFzZTtcblx0fVxuXG5cdCYtbWVkaXVtIHtcblx0XHRmb250LXNpemU6IDEuMnJlbTtcblx0fVxuXG5cdCYtZGVmYXVsdCB7XG5cdFx0Zm9udC1zaXplOiAxcmVtO1xuXHR9XG59XG5cblxuLnVrLWJhZGdlIHtcblx0Ji5zbWFsbCB7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDAgNHB4O1xuXHRcdGhlaWdodDogMThweDtcblx0XHRtaW4td2lkdGg6IDIwcHg7XG5cdFx0Zm9udC1zaXplOiAxMXB4O1xuXHR9XG5cblx0Ji5ncmF5IHtcblx0XHRiYWNrZ3JvdW5kOiAjZWVlO1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG5cdFx0Y29sb3I6ICM3Nzc7XG5cdH1cblxuXHQmOjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IGF0dHIoZGF0YS1xdWEpO1xuXHR9XG59XG5cbi8vbm90aWZpY2F0aW9uXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi51ay1ub3RpZmljYXRpb24ge1xuXHR3aWR0aDogYXV0bztcblxuXHQmLWNlbnRlciB7XG5cdFx0bWFyZ2luLWxlZnQ6IC0xNzVweDtcblx0XHRsZWZ0OiA1MCU7XG5cdFx0dG9wOiAyMDBweDtcblx0fVxuXG5cdCYtdG9wLW1pZGRsZS1yaWdodCB7XG5cdFx0bGVmdDogYXV0bztcblx0XHRyaWdodDogNDBweDtcblx0XHR0b3A6IDEwMHB4O1xuXHR9XG5cblx0Ji1tZXNzYWdlIHtcblx0XHRwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDE1cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuXHRcdGZvbnQtc2l6ZTogMC44NzVyZW07XG5cdFx0d2lkdGg6IDM1MHB4O1xuXG5cdFx0PiBkaXYge1xuXHRcdFx0cCB7XG5cdFx0XHRcdG1hcmdpbjogMDtcblxuXHRcdFx0XHQrIHAge1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDFlbTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYtaW5mbyB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDQ1cHg7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAjMzlmO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZjZmZlYjsvLyNlYmViZmY7XG5cdFx0XHR3aWR0aDogMzgwcHg7XG5cblx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTWpBaUlHaGxhV2RvZEQwaU1qQWlJSFpwWlhkQ2IzZzlJakFnTUNBeU1DQXlNQ0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4WTJseVkyeGxJR040UFNJeE1DSWdZM2s5SWpFMElpQnlQU0l4SWo0OEwyTnBjbU5zWlQ0OFkybHlZMnhsSUdacGJHdzlJbTV2Ym1VaUlITjBjbTlyWlQwaUl6QXdNQ0lnYzNSeWIydGxMWGRwWkhSb1BTSXhMakVpSUdONFBTSXhNQ0lnWTNrOUlqRXdJaUJ5UFNJNUlqNDhMMk5wY21Oc1pUNDhjR0YwYUNCa1BTSk5NVEF1T1Rjc055NDNNaUJETVRBdU9EVXNPUzQxTkNBeE1DNDFOaXd4TVM0eU9TQXhNQzQxTml3eE1TNHlPU0JETVRBdU5URXNNVEV1T0RjZ01UQXVNamNzTVRJZ09TNDVPU3d4TWlCRE9TNDJPU3d4TWlBNUxqUTVMREV4TGpnM0lEa3VORE1zTVRFdU1qa2dRemt1TkRNc01URXVNamtnT1M0eE5pdzVMalUwSURrdU1ETXNOeTQzTWlCRE9DNDVOaXcyTGpVMElEa3VNRE1zTmlBNUxqQXpMRFlnUXprdU1ETXNOUzQwTlNBNUxqUTJMRFV1TURJZ09TNDVPU3cxSUVNeE1DNDFNeXcxTGpBeElERXdMamszTERVdU5EUWdNVEF1T1Rjc05pQkRNVEF1T1Rjc05pQXhNUzR3TkN3MkxqVTBJREV3TGprM0xEY3VOeklnVERFd0xqazNMRGN1TnpJZ1dpSStQQzl3WVhSb1Bqd3ZjM1puUGc9PScpO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdGxlZnQ6IDE1cHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ji1jbG9zZSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cblxuXG4vL3dpZHRoXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi51ay13aWR0aCB7XG5cdCYteHNtYWxsIHtcblx0XHR3aWR0aDogMTAwcHg7XG5cdH1cblxuXHQmLXh4c21hbGwge1xuXHRcdHdpZHRoOiA3NXB4O1xuXHR9XG59XG5cblxuLy9kcm9wZG93blxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4udWstZHJvcGRvd24ge1xuXHRib3JkZXI6IDFweCBzb2xpZCBsaWdodGVuKCRjb2xvci1ib3JkZXItZGVmYXVsdCwgMTAlKTtcbn1cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbiIsIkBjaGFyc2V0IFwidXRmLThcIjtcbi8vXG4vL1x0dmFyXG4vL1xuXG5cbiRmb250LXNpemU6IDE0cHg7XG4kZm9udC1mYW1pbHk6IFwi5ri444K044K344OD44Kv5L2TXCIsIFwiWXVHb3RoaWNcIiwgXCLmuLjjgrTjgrfjg4Pjgq8gTWVkaXVtXCIsIFwiWXUgR290aGljIE1lZGl1bVwiLCBcIua4uOOCtOOCt+ODg+OCr1wiLCBcIll1IEdvdGhpY1wiLCBcIuODoeOCpOODquOCqlwiLCBcIkhpcmFnaW5vIEtha3UgR290aGljIFByb05cIiwgXCJIaXJhZ2lubyBTYW5zXCIsIHNhbnMtc2VyaWY7XG4kZm9udC13ZWlnaHQ6IDQwMDtcblxuXG4vL2NvbG9yXG4kY29sb3ItYmctYmFzZTogI2YyZjRmMztcbiRjb2xvci1iZy1uYXY6ICM2ZTZlNmU7XG4kY29sb3ItYmctbmF2LWhvdmVyOiAjODc2ZTY2O1xuJGNvbG9yLWJnLW1hc3RlcjogIzNkODdhMztcbiRjb2xvci1iZy1tYXN0ZXItZGFyazogIzE4NmM4NztcbiRjb2xvci1iZy1zbGF2ZTogI2JlNjM2ZjtcbiRjb2xvci1iZy1zbGF2ZS1kYXJrOiAjYTA0ODU1O1xuXG4kY29sb3ItdGV4dDogIzY2NjtcbiRjb2xvci10ZXh0LWJhc2U6ICM0NTUyNjc7XG4kY29sb3ItdGV4dC1oZWFkZXI6ICAjZmZmO1xuJGNvbG9yLXRleHQtbmF2OiAjZmZmO1xuJGNvbG9yLXRleHQtbmF2LWFjdGl2ZTogI2ZmZjtcbiRjb2xvci10ZXh0LW5hdi1kcm9wZG93bjojMzk2ZTkwO1xuJGNvbG9yLXRleHQtZGlzYWJsZWQ6ICM4OThlOTY7XG4kY29sb3ItbGluazogIzM5NmU5MDtcblxuJGNvbG9yLWxpbmstbmF2OiAjZmZmO1xuXG4kY29sb3ItYWN0aXZlOiAjZWI2ZDQ1O1xuJGNvbG9yLWZvY3VzOiAjZWI2ZDQ1O1xuJGNvbG9yLWhvdmVyOiAjZjFkYmQ2O1xuJGNvbG9yLXNlbGVjdGVkOiAjZjVjY2MzO1xuJGNvbG9yLXNlbGVjdGVkLWJvcmRlcjogI2RhOWY5MTtcbiRjb2xvci1kaXNhYmxlZDogIzg4ODg4ODtcblxuJGNvbG9yLWNoa2J0bi1kZWZhdWx0OiAkY29sb3ItdGV4dC1iYXNlO1xuJGNvbG9yLWNoa2J0bi1kZWZhdWx0LWJnOiAjZmZmO1xuJGNvbG9yLWNoa2J0bi1ob3ZlcjogJGNvbG9yLWxpbms7XG4kY29sb3ItY2hrYnRuLWhvdmVyLWJnOiAjZjRmN2Y5O1xuJGNvbG9yLWNoa2J0bi1jaGVja2VkOiAjZmZmO1xuJGNvbG9yLWNoa2J0bi1jaGVja2VkLWJnOiAkY29sb3ItYWN0aXZlO1xuJGNvbG9yLWNoa2J0bi1kaXNhYmxlZDogI2ZmZjtcbiRjb2xvci1jaGtidG4tZGlzYWJsZWQtYmc6ICNhOGIyYjk7XG4kY29sb3ItY2hrYnRuLWRpc2FibGVkLWNoZWNrZWQ6ICNmNWY1ZjU7XG4kY29sb3ItY2hrYnRuLWRpc2FibGVkLWNoZWNrZWQtYmc6ICNiZTk4NzU7Ly8jYzU4ZjVjXG5cbiRjb2xvci1ib3JkZXItZGVmYXVsdDogI2M0ZDBkODtcbiRib3JkZXItYmFzZTogMXB4IHNvbGlkICRjb2xvci1ib3JkZXItZGVmYXVsdDtcblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FDQUE7O0dBRUc7QUtnRkg7OzhFQUU4RTtBQUU5RTs7Ozs7R0FLRztBQUVILEFBQUEsSUFBSSxDQUFDO0NBQ0QsT0FBTztDQUNQLFdBQVcsRUxYTSxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxrQkFBa0I7Q0tZdE0sU0FBUyxFTFRNLElBQUk7Q0tVbkIsV0FBVyxFTFhTLE1BQU07Q0tZMUIsV0FBVyxFTFRNLEdBQUc7Q0tVcEIsT0FBTztDQUNQLHdCQUF3QixFQUFFLElBQUk7Q0FDOUIsT0FBTztDQUNQLFVBQVUsRUx0Q00sSUFBSTtDS3VDcEIsS0FBSyxFTDdGTSxJQUFJO0NLK0ZsQjs7QUFFRDs7R0FFRztBQUVILEFBQUEsSUFBSSxDQUFDO0NBQUUsTUFBTSxFQUFFLENBQUM7Q0FBSTs7QUFHcEI7OEVBQzhFO0FBRTlFOztHQUVHO0FBRUgsQUFBQSxDQUFDLEFBQUEsT0FBTztBQUNSLENBQUMsQUFBQSxNQUFNLENBQUM7Q0FBRSxPQUFPLEVBQUUsSUFBSTtDQUFJOztBQUUzQjs7R0FFRztBQUVILEFBQUEsQ0FBQztBQUNELFFBQVEsQ0FBQztDQUNMLEtBQUssRUx0Q1csT0FBTztDS3VDdkIsZUFBZSxFTHJDUyxJQUFJO0NLc0M1QixNQUFNLEVBQUUsT0FBTztDQUVsQjs7QUFFRCxBQUFB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 */
